Line: 1 to 1 | |||||||||
---|---|---|---|---|---|---|---|---|---|

| |||||||||

Added: | |||||||||

> > | <-- Ready to Review --> | ||||||||

## Logic in AMPL
| |||||||||

Deleted: | |||||||||

< < | |||||||||

Added: | |||||||||

> > | |||||||||

Added: | |||||||||

> > | |||||||||

## Relational Operators | |||||||||

Line: 24 to 26 | |||||||||

Return to top | |||||||||

Added: | |||||||||

> > | ## Logical Operators
Logical operators are used to combine logical expressions. They are most commonly used in conditional statements, conditional structures and conditional loops. The logical operators are
| ||||||||

## Logical ExpressionsLogical expressions are expressions that will evaluate to either true or false. Logical expressions are | |||||||||

Changed: | |||||||||

< < | usually defined in terms of the relational operators: | ||||||||

> > | usually defined in terms of the relational operators: | ||||||||

Lower[r] <= sum {i in INGREDIENTS} Contributes[r, i] * Amount[i] | |||||||||

Line: 48 to 61 | |||||||||

Return to top | |||||||||

Added: | |||||||||

> > | ## Conditional Expressions
A conditional expression is very much like the param ifvalue := if <some logical expression> then <a value> [else <another value>];
If the logical expression is true then
## Conditional Structures
A conditional structure is the same as the classical if <logical expression> then <a statement>; [else <another statement>;]
Note here that even if the if <logical expression> then { <some statements> } [else { <some other statements> }] | ||||||||

## Binary Parameters | |||||||||

Changed: | |||||||||

< < | In AMPL we can create binary parameters by using the {\tt binary} keyword in the parameter declaration:
\begin{verbatim} | ||||||||

> > | In AMPL we can create binary parameters by using the `binary` keyword in the parameter declaration:
| ||||||||

param stillSearching binary; | |||||||||

Changed: | |||||||||

< < | \end{verbatim} Binary parameters are used in a similar way to boolean variables (in Matlab, C, etc) and logical variables (Fortran). If a binary parameter has the value 0 this is equivalent to false, and 1 is equivalent to true. Binary parameters can be used with conditional expressions to hold a true/false result from a logical expression: \begin{verbatim} | ||||||||

> > |
Binary parameters are used in a similar way to boolean variables (in Matlab, C, etc) and logical variables (Fortran). If a binary parameter has the value 0 this is equivalent to false, and 1 is equivalent to true. Binary parameters can be used with conditional expressions to hold a true/false result from a logical expression: | ||||||||

param isGreater binary;
let isGreater := if 4 > 5 then 1 else 0; # isGreater = 0 (false) let isGreater := if 6 > 5 then 1; # else 0 is the default, isGreater = 1 (true) | |||||||||

Changed: | |||||||||

< < | \end{verbatim} | ||||||||

> > | |||||||||

so the syntax is | |||||||||

Changed: | |||||||||

< < | \begin{verbatim} \end{verbatim} or as the condition in a conditional statement or conditional structure. They are very useful for building complex conditional statements or structures: \begin{verbatim} Some example from depth first searching or column generation \end{verbatim} and controlling loops. ## Logical Operators<\tt not} {\tt and} {\tt or} ## Conditional Expressions
A conditional expression is very much like the IF function in Excel:
param ifvalue := if | ||||||||

> > | let <binary parameter> := if <expression> then 1; | ||||||||

Changed: | |||||||||

< < | If the logical expression is true then ifvalue will be set to , otherwise it is set to 0 (by default) or, if the else part of the expression is present, | ||||||||

> > | You can also set binary parameters within conditional structures
binary <binary parameter>; | ||||||||

Changed: | |||||||||

< < | ## Conditional Structures | ||||||||

> > | if <expression> then let <binary parameter> := 1; else let <binary parameter> := 0; | ||||||||

Changed: | |||||||||

< < | A conditional structure is the same as the classical if-then-else statement in programming languages like MATLAB, Fortran, Visual Basic and C++:
if | ||||||||

> > | Binary parameters may be used in logical expressions or as the condition in a conditional statement or conditional structure. They are very useful for building complex conditional statements or structures:
Some example from depth first searching or column generationand controlling conditional loops: Some example from depth first searching or column generation | ||||||||

Added: | |||||||||

> > | Return to top | ||||||||

-- TWikiAdminGroup - 18 Mar 2008 \ No newline at end of file |

View topic | History: r7 < r6 < r5 < r4 | More topic actions...

Copyright © 2008-2023 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.

Ideas, requests, problems regarding TWiki? Send feedback

Ideas, requests, problems regarding TWiki? Send feedback