 
ARITHMETIC OPERATIONS:
.nf
			\fI-a\fR
			\fI+a\fR
			\fIa && b\fR	(logical AND; not audio-rate)
			\fIa || b\fR	(logical OR; not audio-rate)
			\fIa + b\fR
			\fIa - b\fR
			\fIa * b\fR
			\fIa / b\fR

.fi
where the arguments \fIa\fR and \fIb\fR may be further expressions.

Arithmetic operators perform operations of change-sign (negate),
don't-change-sign, logical AND, logical OR, add, subtract, multiply and divide.
Note that a value or an expression may fall between two of these operators,
either of which could take it as its left or right argument, as
in
.br
.nf
			\fIa + b * c\fR.

.fi
In such cases three rules apply:
.in +2
.br
1) * and / bind to their neighbors more strongly than + and -.
.in +1
Thus the above expression is taken as
.br
		\fIa + (b * c)\fR,
.br
with * taking \fIb\fR and \fIc\fR and then + taking \fIa\fR and \fIb*c\fR.
.in -1
.br
2) + and - bind more strongly than &&, which in turn is stronger than ||:
.in +1
.br
		\fIa && b - c || d\fR    is taken as    \fI(a && (b - c)) || d\fR
.br
.in -1
3) When both operators bind equally strongly,
.in +1
the operations are done left to right:
.br
		\fIa - b - c\fR    is taken as   \fI(a - b) - c\fR.
.in -3
.br
.sp .5
Parentheses may be used as above to force particular groupings.


CONDITIONAL VALUES:
.nf
			(\fIa\fR >  \fIb\fR ? v1 : v2)
			(\fIa\fR <  \fIb\fR ? v1 : v2)
			(\fIa\fR >= \fIb\fR ? v1 : v2)
			(\fIa\fR <= \fIb\fR ? v1 : v2)
			(\fIa\fR ==  \fIb\fR ? v1 : v2)
			(\fIa\fR != \fIb\fR ? v1 : v2)
.fi
.sp .5
where \fIa\fR, \fIb\fR, v1 and v2 may be expressions, but \fIa\fR, \fIb\fR
not audio-rate.

In the above conditionals, \fIa\fR and \fIb\fR are first compared.  If the
indicated relation is true (\fIa\fR greater than \fIb\fR, \fIa\fR less than
\fIb\fR, \fIa\fR greater than or equal to \fIb\fR, \fIa\fR less than or
equal to \fIb\fR, \fIa\fR equal to \fIb\fR, \fIa\fR not equal to \fIb\fR),
then the conditional expression has the value of v1;
if the relation is false, the expression has the value of v2.
(For convenience, a sole '=' will function as '=='.)
.br
\fBN.B.:\fR If v1 or v2 are expressions, these will be evaluated \fIbefore\fR
the conditional is determined.

In terms of binding strength, all conditional operators
(i.e., the relational operators (>, <, etc.), and ? and :)
are weaker than the arithmetic and logical operators (+ , - , *, /, && and ||).

Example:
.br
		(k1 < p5/2 + p6 ?  k1 : p7)

binds the terms p5/2 and p6.  It will return the value k1 below this threshold,
else the value p7.
.bp
