Consider the following simple condition, where a and b are scalars. If the condition is not satisfied, no assignment is made. To make it clear, this conditional assignment may be read as: ' given that b is greater than 1. Logical conditions may take various forms, they are introduced in the next section. Conditional expressions may be used in the context of assignments, indexed operations and equations. These topics are covered in later sections of this chapter. Logical conditions may be numerical expressions and numerical relations, they may refer to set membership and they may also contain acronyms.

In the following subsections this is shown in the context of simple conditional assignments with the dollar operator on the left-hand side compare section Dollar on the Left. In this section we use many examples to illustrate the concepts that are being introduced. In all these examples a and b are scalars, s , t , u and v are parameters, and i and j are sets. Numerical expressions may serve as logical conditions: a result of zero is treated as the logical value FALSE and a non-zero result is treated as the logical value TRUE.

The following example illustrates this point. The numerical expression is zero if a equals 2, and non-zero otherwise. The assignment is only made if the numerical expression evaluates to TRUE , otherwise no assignment is made. Observe that functions are also allowed in logical conditions. Consider the following example:. Numerical relational operators compare two numerical expressions and return a logical value. For completeness, all numerical relational operators are listed in Table 1. The assignment is only made if this expression is TRUE , that is, if the scalar a is negative.

The logical condition in the second line is a bit more complex. For all other values of a , it evaluates to TRUE. In addition, the logical condition in the second line will be TRUE , so b will change to The logical condition in the third line evaluates to TRUE if the sum of all values of the parameter s is strictly positive. Then a is assigned the value of 7. The assignment in the last line depends on whether a is non-zero.

If a is zero no assignment is made, otherwise all entries of the parameter t are updated. Note that acronyms may also be used with relational operators to build logical conditions. For an example, see section Acronym Usage. GAMS offers standard logical operators that may combine two or more logical conditions to build complex logical expressions. For example, if several expressions are required to be TRUE simultaneously, they may be connected with the operator and.

Another way to construct complex logical conditions is by nesting them. For details, see subsection Nested Dollar Conditions below. Note that there are three conditional assignments for the parameter u. In the first assignment the logical condition is not s i.

This condition holds for all entries of s that are not specified and therefore zero by default: s 'i3' and s 'i5'. Hence u 'i3' and u 'i5' are assigned the values of v 'i3' and v 'i5' respectively. The value of v 'i3' is 2 and the value of v 'i5' is zero by default.

Note that the logical condition failed for u 'i2' and therefore its value remained unchanged. The logical condition in the second assignment is TRUE for those labels of the set i that have non-zero entries in the parameters s , u and t simultaneously. This condition holds only for i2. The logical condition in the last assignment evaluates to TRUE for all labels of the set i that have at least one non-zero entry in the parameters s , v and t. This holds for all labels except for i5.

## REDUCE Documentation

Therefore u 'i5' stays zero and all other values of u are changed to 4. These examples demonstrate the power of the dollar operator combined with logical operators. Even more complex logical conditions are possible; see subsection Mixed Logical Conditions below for details. Apart from numerical and relational expressions, set membership and functions referencing set elements may be used as a logical condition.

Consider the following example as illustration for set membership as logical condition. Note that the set j is a subset of the set i and that the parameter t is declared but not defined.

### Table of Contents

The values for t 'i4' and t 'i5' remain unchanged. In this case this means that they are zero by default. Note that there is an alternative formulation for this type of conditional assignment; for details see subsection Filtering Sets in Assignments below. The use of set membership as a logical condition is an extremely powerful feature of GAMS, see section Conditional Equations below for more examples. Logical conditions may contain functions that return particular values depending on the position of elements in sets, the size of sets or the comparison of set elements to each other or text strings.

## A User's Guide to Operator Algebras / Edition 1

These functions are presented in Table 4. In the following example we have two sets of cities and we want to know how many of them feature in both sets. Note that in the assignment statement we sum over both sets and we use the function sameAs to restrict the domain of the indexed operation to those label combinations i,j where the function sameAs evaluates as TRUE. Thus only identical elements are counted.

Note that in this example the function diag could have been used with the same result. The functions ord and card are frequently used to single out the fist or last element of an ordered set. For example, we may want to fix a variable for the first and last elements of a set:. In the first assignment the variable x is fixed for the first element of the set i and in the second assignment x is fixed for the final element of i. We have seen that logical conditions may take the form of numerical expressions, expressions with relational operators, complex expressions using logical operators, set membership and set functions.

The expression to the right of the assignment evaluates to 2 since both logical conditions within parentheses are TRUE and therefore assume a value of 1. Note that this is different from the assignment below:. The building blocks introduced in the subsections above may be combined to generate more complex logical conditions. These may contain standard arithmetic operations , numerical relational operations and logical operations.

All operations, their symbols and their order of precedence are given in Table 5. Note that 1 denotes the highest order of precedence and 7 denotes the lowest order of precedence. As usual, the default order of precedence holds only in the absence of parentheses and operators symbols on the same level are evaluated from left to right.

These two complex logical conditions are equivalent. However, the parentheses make the second expression easier to understand. Some simple examples of complex logical conditions, their numerical values and their logical values are given in Table 6. Note that in nested dollar conditions all succeeding expressions after the dollar operator must be enclosed in parentheses.

The nested expression is equivalent to the following conditional expression that uses the logical operator and instead of the nesting:. Consider the following example. Note that i , j i and k i are sets, and u i and v i are parameters. The assignment will be made only for those members of the set i that are members of both sets j and k. Note the position of the parentheses in the dollar condition. The assignment statement above can be rewritten in the following way.

A conditional assignment is an assignment statement with a dollar condition on the left-hand side or on the right-hand side. Most examples until now were conditional assignments with the dollar operator on the left. The next two subsections describe the use of the dollar condition on each side of the assignment. Note that in many cases it may be possible to use either of the two forms of the dollar condition to describe an assignment. We recommend to choose the clearer formulation. Note that if the logical condition in an assignment statement refers to set membership, then under certain conditions the restriction may be expressed without the use of the dollar operator.

For details, see section Filtering Sets in Assignments below. If the dollar condition is on the left-hand side of an assignment, an assignment is made only in case the logical condition is satisfied. Our goal is to test these methods on a variety of problems, most of which are classic theorems in some field. Classifying existing mathematics according to what is required to discover it is an extremely valuable gauge of these symbolic techniques. However, some of the results described here are new, and a few contain open questions. It is available via anonymous ftp in either dvi or PostScript formats.

Add on package to NCAlgbera Symbolic calculations of unitary transfomations in quantum dynamics. Nguyen, T. Back to Top. Format Hardcover. Condition Brand New.

enter Description The subject of operator algebras has experienced tremendous growth in recent years with significant applications to areas within algebraic mathematics as well as allied areas such as single operator theory, non-self-adjoint operator algegras, K-theory, knot theory, ergodic theory, and mathematical physics. This book makes recent developments in operator algebras accessible to the non-specialist.

The subject of operator algebras has experienced tremendous growth in recent years with significant applications to areas within algebraic mathematics as well as allied areas such as single operator theory, non-self-adjoint operator algegras, K-theory, knot theory, ergodic theory, and mathematical physics. Grand Eagle Retail is the ideal place for all your shopping needs! With fast shipping, low prices, friendly service and over 1,, in stock items - you're bound to find what you want, at a price you'll love!