High Level Expression Constructors
MakePlaceHolder: PROC[] RETURNS[EXPR];
MakeInt:
PROC[n:
ROPE]
RETURNS[
EXPR];
effects: Constructs and returns an integer expression for n.
SIGNALS badFormat if n is not a legal integer.
MakeReal:
PROC[r:
REAL]
RETURNS[
EXPR];
effects: Constructs and returns a real expression for n.
MakeVariable:
PROC[var:
ROPE]
RETURNS[
EXPR];
effects: Constructs and returns a variable expression for var.
SIGNALS badFormat if n is not a legal variable (e.g. invalid chars).
MakeNot: PROC[a: EXPR] RETURNS[EXPR];
MakeNegation: PROC[a: EXPR] RETURNS[EXPR];
MakeAnd:
PROC[a, b:
EXPR]
RETURNS[
EXPR];
MakeOr: PROC[a, b: EXPR] RETURNS[EXPR];
MakeSum: PROC[addend, augend: EXPR] RETURNS[EXPR];
MakeComplex: PROC[a, b: EXPR] RETURNS[EXPR];
MakeDifference: PROC[subtrahend, minuend: EXPR] RETURNS[EXPR];
MakeProduct: PROC[multiplier, multiplicand: EXPR] RETURNS[EXPR];
MakeFraction: PROC[numerator, denominator: EXPR] RETURNS[EXPR];
MakeParen: PROC[a: EXPR] RETURNS[EXPR];
MakePow: PROC[base, exponent: EXPR] RETURNS[EXPR];
MakeRadical: PROC[radicand, n: EXPR] RETURNS[EXPR];
MakeSummation: PROC[lb, ub, summand: EXPR] RETURNS[EXPR];
MakeIntegral: PROC[llim, ulim, integrand, wrt: EXPR] RETURNS[EXPR];
MakeMatrix: PROC[nRows, nCols: NAT, rows: LIST OF LIST OF EXPR] RETURNS[EXPR];
MakeEqFormula:
PROC[lhs, rhs:
EXPR]
RETURNS[
EXPR];
MakeLtFormula:
PROC[lhs, rhs:
EXPR]
RETURNS[
EXPR];
MakeLeFormula:
PROC[lhs, rhs:
EXPR]
RETURNS[
EXPR];
MakeGtFormula:
PROC[lhs, rhs:
EXPR]
RETURNS[
EXPR];
MakeGeFormula: PROC[lhs, rhs: EXPR] RETURNS[EXPR];