Uses of Interface
fmrisc.Syntax.Expression

Packages that use Expression
fmrisc.Communication   
fmrisc.ProofNavigator   
fmrisc.ProofNavigator.Commands   
fmrisc.Proving   
fmrisc.Proving.CVCL   
fmrisc.Semantics   
fmrisc.Syntax   
 

Uses of Expression in fmrisc.Communication
 

Methods in fmrisc.Communication that return Expression
static Expression Store.toExpression(org.w3c.dom.Node node)
          Convert DOM node to expression.
static Expression OpenMath.toExpression(nl.tue.win.riaca.openmath.lang.OMObject om)
          Convert OpenMath expression to AST.
 

Methods in fmrisc.Communication with parameters of type Expression
 void MathML.appendExp(org.w3c.dom.Node parent, Expression exp)
          Convert expression to DOM representation of HTML/MathML markup.
 void PrettyMathML.appendExp(org.w3c.dom.Node parent, Expression exp)
          Convert expression to DOM representation of HTML/MathML markup.
 void PrettyPrinter.print(Expression exp)
          Pretty-print expression.
 

Uses of Expression in fmrisc.ProofNavigator
 

Methods in fmrisc.ProofNavigator that return Expression
static Expression State.getLastTCC()
          get last type checking condition
 Expression PNParser.valueExp()
           
 Expression PNParser.valueExp0()
           
 Expression PNParser.valueExp10()
           
 Expression PNParser.valueExp3()
           
 Expression PNParser.valueExp30()
           
 Expression PNParser.valueExp40()
           
 Expression PNParser.valueExp43()
           
 Expression PNParser.valueExp45()
           
 Expression PNParser.valueExp5()
           
 Expression PNParser.valueExp50()
           
 Expression PNParser.valueExp6()
           
 Expression PNParser.valueExp60()
           
 Expression PNParser.valueExp70()
           
 Expression PNParser.valueExp8()
           
 Expression PNParser.valueExp9()
           
 Expression PNParser.valueExp90()
           
 

Methods in fmrisc.ProofNavigator with parameters of type Expression
static void State.setLastTCC(Expression tcc)
          set last type checking condition
 

Uses of Expression in fmrisc.ProofNavigator.Commands
 

Constructors in fmrisc.ProofNavigator.Commands with parameters of type Expression
Assume(Expression formula)
          Create an "assume" command.
Case(Expression[] formulas)
          Create a "case" command.
Instantiate(java.lang.String label, Expression[] values)
          Create an "instantiate" command.
TypeAxiom(Expression exp, Expression[] values)
          Create an "typeaxiom" command.
TypeAxiom(Expression exp, Expression[] values)
          Create an "typeaxiom" command.
 

Uses of Expression in fmrisc.Proving
 

Methods in fmrisc.Proving that return Expression
static Expression ProofUtil.bind(ValueDeclIdentifier ident, Expression value, Expression body)
          Construct expression that binds ident to value in body.
 Expression[] ProofState.getCounterExample()
          Get counterexample for state.
 Expression[] InvalidAnswer.getCounterExample()
          Interpret justification as a counterexample.
 Expression Formula.getExpression()
          Get formula expression.
static Expression ProofUtil.negate(Expression formula)
          return negated version of formula where negation is drawn innermost (to atomic formulas)
static Expression Rewriting.rewrite(Expression exp)
          Rewrite expression to more human-friendly form.
 Expression Prover.simplifyExpression(Expression exp)
          simplify expression
static Expression Substitute.substitute(Expression exp, ValueDeclIdentifier[] ident, Expression[] subst, boolean repeat)
          Return expression with simultaneous variable substitutions performed.
 

Methods in fmrisc.Proving with parameters of type Expression
 void Prover.assertAxiom(Expression axiom)
          assert axiom about previously asserted declarations.
 void Prover.assertFormula(Expression formula)
          assert truth of formula.
static Expression ProofUtil.bind(ValueDeclIdentifier ident, Expression value, Expression body)
          Construct expression that binds ident to value in body.
static GroundExpressions GroundExpressions.compute(Expression exp)
          Compute collection of all ground subexpressions of an expression.
 boolean GroundExpressions.has(Expression exp)
          Check whether collection contains expression.
static Expression ProofUtil.negate(Expression formula)
          return negated version of formula where negation is drawn innermost (to atomic formulas)
 Answer Prover.queryFormula(Expression formula)
          query truth of formula.
static Expression Rewriting.rewrite(Expression exp)
          Rewrite expression to more human-friendly form.
 void ProofState.setCounterExample(Expression[] formulas)
          Set counterexample for state.
 void Formula.setExpression(Expression formula)
          Set formula expression.
 Expression Prover.simplifyExpression(Expression exp)
          simplify expression
static Expression Substitute.substitute(Expression exp, ValueDeclIdentifier[] ident, Expression[] subst, boolean repeat)
          Return expression with simultaneous variable substitutions performed.
static Expression Substitute.substitute(Expression exp, ValueDeclIdentifier[] ident, Expression[] subst, boolean repeat)
          Return expression with simultaneous variable substitutions performed.
 

Constructors in fmrisc.Proving with parameters of type Expression
Formula(ProofState state, Expression formula, boolean isGoal)
          construct a formula from an expression
ProofState(Proof proof, Environment env, Expression goal, boolean autoSimplify)
          construct a root state from a single goal and without assumptions
 

Uses of Expression in fmrisc.Proving.CVCL
 

Methods in fmrisc.Proving.CVCL that return Expression
 Expression[] InvalidAnswerCVCL.getCounterExample()
          Interpret justification as a counterexample.
 Expression CVCLFormulaMask.getFormula(Identifier mask)
          Get formula associated to mask identifier
 Expression CVCLFormulaMask.getMask(Expression f)
          Mask a formula.
 Expression CVCL.parseExpression(java.lang.String string)
          Parse CVCL String as an expression.
 Expression CVCL.simplifyExpression(Expression exp)
          Simplify expression.
 Expression CVCLParser.valueExp()
           
 Expression CVCLParser.valueExp0()
           
 Expression CVCLParser.valueExp10()
           
 Expression CVCLParser.valueExp3()
           
 Expression CVCLParser.valueExp30()
           
 Expression CVCLParser.valueExp40()
           
 Expression CVCLParser.valueExp43()
           
 Expression CVCLParser.valueExp45()
           
 Expression CVCLParser.valueExp5()
           
 Expression CVCLParser.valueExp50()
           
 Expression CVCLParser.valueExp6()
           
 Expression CVCLParser.valueExp60()
           
 Expression CVCLParser.valueExp70()
           
 Expression CVCLParser.valueExp8()
           
 Expression CVCLParser.valueExp9()
           
 Expression CVCLParser.valueExp90()
           
 

Methods in fmrisc.Proving.CVCL with parameters of type Expression
 void CVCL.assertAxiom(Expression axiom)
          assert axiom about previously asserted declarations.
 void CVCL.assertFormula(Expression formula)
          Assert truth of formula.
 Expression CVCLFormulaMask.getMask(Expression f)
          Mask a formula.
 Answer CVCL.queryFormula(Expression formula)
          Query truth of formula.
 Expression CVCL.simplifyExpression(Expression exp)
          Simplify expression.
 java.lang.String CVCL.toCVCL(Expression exp)
          return CVCL representation of expression
 

Uses of Expression in fmrisc.Semantics
 

Methods in fmrisc.Semantics that return Expression
 Expression TypeExpression.getExpression()
          get exp
 Expression FormulaSymbol.getFormula()
          Return formula of symbol.
 Expression Context.getFormula()
          return the formula currently on the top of the stack
 Expression FormulaTable.getFormula(Identifier key)
          returns formula associated to key
 Expression[] Environment.getTCCs()
          Get type checking conditions of current scope (not of all scopes).
 Expression ValueSymbol.getValue()
          Return value of symbol
 

Methods in fmrisc.Semantics with parameters of type Expression
 void Environment.addTCC(Expression formula)
          Add type checking condition to environment.
static void FreeVariables.append(Expression exp, java.util.Vector result)
          Compute free variables of expression.
 void Context.assume(Expression formula)
          add an assumption to the current (sub)context
static TypeExpression Checking.clearSubtypes(Type type, Expression exp)
          return version of type where subtypes and subranges (including NAT) are replaced by their base types; the corresponding constraints are returned as a formula which a corresponding expression exp has to fulfill
static java.util.Vector FreeVariables.compute(Expression exp)
          Compute free variables of expression.
static java.util.Vector BoundVariables.compute(Expression exp)
          Compute variables bound some quantifier within an expression.
static boolean Checking.hasType(Expression exp, Type etype, Type type, boolean tcc)
          returns true iff expr of type etype matches type.
 void Context.implies(Expression formula)
          conjoin formula to the current formula on the top of the stack
static Type Checking.process(Expression value)
          type check value
 FormulaSymbol FormulaTable.put(FormulaDeclIdentifier key, Expression formula, boolean axiom, Environment env)
          put formula in formula table
 ValueSymbol ValueTable.put(ValueDeclIdentifier name, Type type, Expression value, int depth)
          put named value in value table
 FormulaSymbol Environment.putFormula(FormulaDeclIdentifier name, Expression formula, boolean axiom)
          put formula in environment
 ValueSymbol Environment.putValue(ValueDeclIdentifier name, Type type, Expression value)
          put named value in value table
 void TypeExpression.setExpression(Expression exp)
          set exp
 void FormulaSymbol.setFormula(Expression formula)
          Set formula of symbol.
 void ValueSymbol.setValue(Expression value)
          Set value of symbol.
static void Checking.simplifyNames(TypedIdentifier[] vars, Environment env, Expression exp)
          Simplify names of local variables to their base names if no name capture can occur.
 

Constructors in fmrisc.Semantics with parameters of type Expression
TypeExpression(Type type, Expression exp)
          Construct pair of type and exp
 

Uses of Expression in fmrisc.Syntax
 

Classes in fmrisc.Syntax that implement Expression
 class AndFormula
          Handling of conjunctions.
 class ApplicationExpression
          Handling of function and predicate applications.
 class ArrayTerm
          Handling of array terms.
 class BinaryExpression
          Abstract base class of binary expressions
 class DividesTerm
          Handling of quotients.
 class EqualsFormula
          Handling of equalities.
 class EquivalentFormula
          Handling of equivalences.
 class ExistsFormula
          Handling of universally quantified formulas.
 class ExpressionBase
          Base class of all expressions (terms and formulas)
 class ForallFormula
          Handling of universally quantified formulas.
 class GreaterEqualFormula
          Handling of greater-than-or-equal formulas.
 class GreaterFormula
          Handling of greater-than formulas.
 class IfThenElseExpression
          Handling of if-then-else expressions.
 class ImpliesFormula
          Handling of implications
 class LambdaTerm
          Handling of lambda terms.
 class LessEqualFormula
          Handling of less-than-or-equal formulas.
 class LessFormula
          Handling of less-than formulas.
 class LetExpression
          Handling of terms with local bindings.
 class Logical
          Logical constants.
 class MinusTerm
          Handling of differences.
 class NegationTerm
          Handling of negated (minus) terms
 class NotEqualsFormula
          Handling of conjunctions
 class NotEquivalentFormula
          Handling of conjunctions
 class NotFormula
          Handling of negations
 class Number
          Handling of numbers.
 class OrFormula
          Handling of disjunctions.
 class PlusTerm
          Handling of binary sums.
 class PowerTerm
          Handling of power terms.
 class QuantifiedExpression
          Abstract base class of quantified expressions.
 class RecordTerm
          Handling of record terms.
 class Reference
          Handling of identifiers used in declarations
 class SelectionTerm
          Handling of component access by index selections.
 class TimesTerm
          Handling of conjunctions
 class TupleTerm
          Handling of tuple terms.
 class UnaryExpression
          Abstract base class of unary expressions
 class UpdateTerm
          Handling of component updates by index selection.
 

Methods in fmrisc.Syntax that return Expression
 Expression[] ApplicationExpression.getArguments()
          get arguments
 Expression UpdateTerm.getBase()
          get the base expression
 Expression[] TupleTerm.getBase()
          get base expressions
 Expression QuantifiedExpression.getBase()
          get base expression
 Expression LetExpression.getBase()
          get base expression
 Expression UnaryExpression.getBase()
          Returns base expression
 Expression SelectionTerm.getBase()
          get base expression
 Expression IfThenElseExpression.getCondition()
          get condition of expression
 Expression IfThenElseExpression.getElseBranch()
          get else branch of expression
 Expression BinaryExpression.getFirst()
          Returns first subexpression
 Expression FormulaDeclaration.getFormula()
          returns declaration formula
 Expression SubrangeType.getFrom()
          returns lower bound
 Expression ApplicationExpression.getFunction()
          get function/predicate
 Expression SelectorIndex.getIndex()
          get index expression
 Expression SubType.getPredicate()
          returns predicate
 Expression BinaryExpression.getSecond()
          Returns second subexpression
 Expression IfThenElseExpression.getThenBranch()
          get then branch of expression
 Expression SubrangeType.getTo()
          returns to bound
 Expression UpdateTerm.getUpdate()
          get the update value
 Expression ValueDeclaration.getValue()
          returns declaration value
 Expression ValuedIdentifier.getValue()
          returns identifier value
 Expression Logical.instantiate()
          return copy of AST with value references instantiated by the substitutions set in the corresponding declaration identifiers
 Expression UpdateTerm.instantiate()
          return copy of AST with value references instantiated by the substitutions set in the corresponding declaration identifiers
 Expression Reference.instantiate()
          return copy of AST with value references instantiated by the substitutions set in the corresponding declaration identifiers
 Expression RecordTerm.instantiate()
          return copy of AST with value references instantiated by the substitutions set in the corresponding declaration identifiers
 Expression TupleTerm.instantiate()
          return copy of AST with value references instantiated by the substitutions set in the corresponding declaration identifiers
 Expression BinaryExpression.instantiate()
          return copy of AST with value references instantiated by the substitutions set in the corresponding declaration identifiers
 Expression QuantifiedExpression.instantiate()
          return copy of AST with value references instantiated by the substitutions set in the corresponding declaration identifiers
 Expression Number.instantiate()
          return copy of AST with value references instantiated by the substitutions set in the corresponding declaration identifiers
 Expression ApplicationExpression.instantiate()
          return copy of AST with value references instantiated by the substitutions set in the corresponding declaration identifiers
 Expression Expression.instantiate()
          return copy of AST with value references instantiated by the substitutions set in the corresponding declaration identifiers
 Expression LetExpression.instantiate()
          return copy of AST with value references instantiated by the substitutions set in the corresponding declaration identifiers
 Expression IfThenElseExpression.instantiate()
          return copy of AST with value references instantiated by the substitutions set in the corresponding declaration identifiers
 Expression UnaryExpression.instantiate()
          return copy of AST with value references instantiated by the substitutions set in the corresponding declaration identifiers
 Expression SelectionTerm.instantiate()
          return copy of AST with value references instantiated by the substitutions set in the corresponding declaration identifiers
static Expression ASTUtil.toConjunction(Expression[] formulas)
          Construct conjunction of sequence of formulas.
static Expression ASTUtil.toDisjunction(Expression[] formulas)
          Construct disjunction of sequence of formulas.
static Expression[] ASTUtil.toExpressionArray(java.util.Vector v)
          converts vector v of Expression objects to Expression array
 

Methods in fmrisc.Syntax with parameters of type Expression
static AndFormula Construct.andFormula(Expression base1, Expression base2)
          construct conjunction with components base1 and base2
static ApplicationExpression Construct.applicationExpression(Expression base1, Expression[] base2)
          construct application of base1 to base2
static ApplicationExpression Construct.applicationExpression(Expression base1, Expression[] base2)
          construct application of base1 to base2
static ArrayTerm Construct.arrayTerm(TypedIdentifier[] variables, Expression base)
          construct array term of variables and base term
static AxiomDeclaration Construct.axiomDeclaration(FormulaDeclIdentifier name, Expression formula)
          construct axiom declaration with denoted name and formula
 BinaryExpression LessFormula.construct(Expression first, Expression second)
          Construct binary expression of the same kind as this expression.
 BinaryExpression NotEqualsFormula.construct(Expression first, Expression second)
          Construct binary expression of the same kind as this expression.
 BinaryExpression PlusTerm.construct(Expression first, Expression second)
          Construct binary expression of the same kind as this expression.
 BinaryExpression GreaterEqualFormula.construct(Expression first, Expression second)
          Construct binary expression of the same kind as this expression.
 BinaryExpression GreaterFormula.construct(Expression first, Expression second)
          Construct binary expression of the same kind as this expression.
 BinaryExpression PowerTerm.construct(Expression first, Expression second)
          Construct binary expression of the same kind as this expression.
 BinaryExpression EquivalentFormula.construct(Expression first, Expression second)
          Construct binary expression of the same kind as this expression.
 BinaryExpression DividesTerm.construct(Expression first, Expression second)
          Construct binary expression of the same kind as this expression.
 BinaryExpression TimesTerm.construct(Expression first, Expression second)
          Construct binary expression of the same kind as this expression.
 BinaryExpression EqualsFormula.construct(Expression first, Expression second)
          Construct binary expression of the same kind as this expression.
 BinaryExpression OrFormula.construct(Expression first, Expression second)
          Construct binary expression of the same kind as this expression.
abstract  BinaryExpression BinaryExpression.construct(Expression first, Expression second)
          Construct binary expression of the same kind as this expression.
 BinaryExpression NotEquivalentFormula.construct(Expression first, Expression second)
          Construct binary expression of the same kind as this expression.
 BinaryExpression LessEqualFormula.construct(Expression first, Expression second)
          Construct binary expression of the same kind as this expression.
 BinaryExpression AndFormula.construct(Expression first, Expression second)
          Construct binary expression of the same kind as this expression.
 BinaryExpression MinusTerm.construct(Expression first, Expression second)
          Construct binary expression of the same kind as this expression.
 BinaryExpression ImpliesFormula.construct(Expression first, Expression second)
          Construct binary expression of the same kind as this expression.
 QuantifiedExpression ExistsFormula.construct(TypedIdentifier[] variables, Expression base)
          Construct quantified expression.
 QuantifiedExpression LambdaTerm.construct(TypedIdentifier[] variables, Expression base)
          Construct quantified expression.
abstract  QuantifiedExpression QuantifiedExpression.construct(TypedIdentifier[] variables, Expression base)
          Construct quantified expression.
 QuantifiedExpression ForallFormula.construct(TypedIdentifier[] variables, Expression base)
          Construct quantified expression.
 QuantifiedExpression ArrayTerm.construct(TypedIdentifier[] variables, Expression base)
          Construct quantified expression.
static DividesTerm Construct.dividesTerm(Expression base1, Expression base2)
          construct quotient with components base1 and base2
static EqualsFormula Construct.equalsFormula(Expression base1, Expression base2)
          construct equality with components base1 and base2
static EquivalentFormula Construct.equivalentFormula(Expression base1, Expression base2)
          construct equivalence with components base1 and base2
static ExistsFormula Construct.existsFormula(TypedIdentifier[] variables, Expression base)
          construct existentially quantifed formula of variables and base formula
static ForallFormula Construct.forallFormula(TypedIdentifier[] variables, Expression base)
          construct universally quantifed formula of variables and base formula
static FormulaDeclaration Construct.formulaDeclaration(FormulaDeclIdentifier name, Expression formula)
          construct formula declaration with denoted name and formula.
static GreaterEqualFormula Construct.greaterEqualFormula(Expression base1, Expression base2)
          construct greater-than-or-equal formula with components base1 and base2
static GreaterFormula Construct.greaterFormula(Expression base1, Expression base2)
          construct greater-than formula with components base1 and base2
static IfThenElseExpression Construct.ifThenElseExpression(Expression condition, Expression thenbranch, Expression elsebranch)
          construct if-then-else expressions from condition, thenbranch, elsebranch.
static ImpliesFormula Construct.impliesFormula(Expression base1, Expression base2)
          construct implication with components base1 and base2
static LambdaTerm Construct.lambdaTerm(TypedIdentifier[] variables, Expression base)
          construct lambda term of variables and base term
static LessEqualFormula Construct.lessEqualFormula(Expression base1, Expression base2)
          construct less-than-or-equal formula with components base1 and base2
static LessFormula Construct.lessFormula(Expression base1, Expression base2)
          construct less-than formula with components base1 and base2
static LetExpression Construct.letExpression(ValueDeclaration[] declarations, Expression base)
          construct let expressions of declarations and base expressions
static MinusTerm Construct.minusTerm(Expression base1, Expression base2)
          construct difference with components base1 and base2
static NegationTerm Construct.negationTerm(Expression base)
          construct negation (minus term) of base term
static NotEqualsFormula Construct.notEqualsFormula(Expression base1, Expression base2)
          construct inequality with components base1 and base2
static NotEquivalentFormula Construct.notEquivalentFormula(Expression base1, Expression base2)
          construct exclusive disjunction with components base1 and base2
static NotFormula Construct.notFormula(Expression base)
          construct negation (not formula) of base formula
static OrFormula Construct.orFormula(Expression base1, Expression base2)
          construct disjunction with components base1 and base2
static PlusTerm Construct.plusTerm(Expression base1, Expression base2)
          construct binary sum with components base1 and base2
static PowerTerm Construct.powerTerm(Expression base1, Expression base2)
          construct power term with components base1 and base2
static SelectionTerm Construct.selectionTerm(Expression base1, Selector base2)
          construct component selection from base1 and base2
static SelectorIndex Construct.selectorIndex(Expression base)
          make selector from index expression base
static SubrangeType Construct.subrangeType(Expression from, Expression to)
          construct subrangetype with denoted bounds.
static SubType Construct.subType(Expression predicate)
          construct subtype with denoted predicate.
static TimesTerm Construct.timesTerm(Expression base1, Expression base2)
          construct binary product with components base1 and base2
static Expression ASTUtil.toConjunction(Expression[] formulas)
          Construct conjunction of sequence of formulas.
static Expression ASTUtil.toDisjunction(Expression[] formulas)
          Construct disjunction of sequence of formulas.
static TupleTerm Construct.tupleTerm(Expression[] base)
          construct tuple term of base terms
static UpdateTerm Construct.updateTerm(Expression base1, Selector[] base2, Expression value)
          construct component update by index selection from base, base2, and base3
static ValueDeclaration Construct.valueDeclaration(ValueDeclIdentifier name, Type type, Expression value)
          construct value declaration with denoted name, type and value.
static ValuedIdentifier Construct.valuedIdentifier(Reference identifier, Expression value)
          construct identifier with value from identifier and value.
 

Constructors in fmrisc.Syntax with parameters of type Expression
AndFormula(Expression base1, Expression base2)
          construct conjunction with components base1 and base2
ApplicationExpression(Expression fun, Expression[] args)
          construct application of fun to args
ApplicationExpression(Expression fun, Expression[] args)
          construct application of fun to args
ArrayTerm(TypedIdentifier[] variables, Expression base)
          construct array term of variables and base term
AxiomDeclaration(FormulaDeclIdentifier name, Expression formula)
          Construct axiom declaration with denoted name and formula.
BinaryExpression(java.lang.String op, Expression first, Expression second)
          constructs binary expression from op, first, and second
DividesTerm(Expression base1, Expression base2)
          construct quotient with components base1 and base2
EqualsFormula(Expression base1, Expression base2)
          construct equality with components base1 and base2
EquivalentFormula(Expression base1, Expression base2)
          construct equivalence with components base1 and base2
ExistsFormula(TypedIdentifier[] variables, Expression base)
          construct exists formula of variables and base formula
ForallFormula(TypedIdentifier[] variables, Expression base)
          construct forall formula of variables and base formula
FormulaDeclaration(FormulaDeclIdentifier name, Expression formula)
          construct formula declaration with denoted name and formula
GreaterEqualFormula(Expression base1, Expression base2)
          construct greater-than-or-equal formula with components base1 and base2
GreaterFormula(Expression base1, Expression base2)
          construct greater-than formula with components base1 and base2
IfThenElseExpression(Expression condition, Expression thenbranch, Expression elsebranch)
          construct if-then-else expressions from condition, thenbranch, elsebranch.
ImpliesFormula(Expression base1, Expression base2)
          construct conjunction with components base1 and base2
LambdaTerm(TypedIdentifier[] variables, Expression base)
          construct lambda term of variables and base term
LessEqualFormula(Expression base1, Expression base2)
          construct less-than-or-equal formula with components base1 and base2
LessFormula(Expression base1, Expression base2)
          construct less-than formula with components base1 and base2
LetExpression(ValueDeclaration[] declarations, Expression base)
          construct let expressions of declarations and base expressions
MinusTerm(Expression base1, Expression base2)
          construct difference with components base1 and base2
NegationTerm(Expression base)
          construct negation (minus term) of base term
NotEqualsFormula(Expression base1, Expression base2)
          construct inequality with components base1 and base2
NotEquivalentFormula(Expression base1, Expression base2)
          construct exclusive disjunction with components base1 and base2
NotFormula(Expression base)
          construct negation (not formula) of base formula
OrFormula(Expression base1, Expression base2)
          construct disjunction with components base1 and base2
PlusTerm(Expression base1, Expression base2)
          construct binary sum with components base1 and base2
PowerTerm(Expression base1, Expression base2)
          construct power term with components base1 and base2
QuantifiedExpression(java.lang.String quantifier, TypedIdentifier[] variables, Expression base)
          constructs quantified expression from quantifier, variables, and base
SelectionTerm(Expression base1, Selector base2)
          construct component selection from base1 and base2
SelectorIndex(Expression base)
          make selector from general index expression
SubrangeType(Expression from, Expression to)
          construct subrangetype with denoted bounds
SubType(Expression predicate)
          construct subtype with denoted predicate.
TimesTerm(Expression base1, Expression base2)
          construct binary product with components base1 and base2
TupleTerm(Expression[] base)
          construct tuple term of base terms
UnaryExpression(java.lang.String op, Expression base)
          constructs binary expression from op and base
UpdateTerm(Expression base1, Selector[] base2, Expression value)
          construct component update by index selection from base, base2, and base3
ValueDeclaration(ValueDeclIdentifier name, Type type, Expression value)
          construct value declaration with denoted name, type and value.
ValuedIdentifier(Reference identifier, Expression value)
          construct identifier with value from identifier and value.