Translates JML quantified expressions into Java source code to evaluate them at runtime. All three forms of JML quantified expressions are supported in translation. This package provides a framework for translating quantified expressions using various translation approaches such as static analysis and type extension. Currently, however, the package supports only the static analysis approach. To use translate a quantified expression, one has to create an object of class TransQuantifiedExpression by passing appropriate arguments and invoke the method translate.

The classes in the package are organized as follows.

Translator {abstract} <---- TransQuantifiedExpression
  StaticAnalysis {abstract}
     EnumerationBased
     IntervalBased ----> QInterval --1,2--> 1. Bound
     SetBased ----> QSet <------+
                      Top       |
                      Leaf      |
                      Composite-+
                        Union
                        Intersection
AbstractExpressionVisitor {abstract}
   2. CheckRecursion

Related Documentation

For syntax, semantics, and examples of JML quantified expressions, please refer to: