Modifier and Type | Method and Description |
---|---|
Type |
Satisfies.getStringType()
Get the string type of this judgement processor
|
Modifier and Type | Method and Description |
---|---|
static Formula |
ExpressionLogic.notNullFormula(Term term,
Type booleanType)
Create formula that term of object/array type is not null.
|
static Formula |
ExpressionLogic.nullFormula(Term term,
Type booleanType)
Create formula that term of object/array type is null.
|
Modifier and Type | Method and Description |
---|---|
Type |
SpecLangParser.typeExp() |
Type |
SpecLangParser.typeExpBase() |
Constructor and Description |
---|
StateProblem(Declaration[] decls,
Formula goal,
java.util.Map<Symbol,Symbol> map,
StateType stateType,
Type stringType,
java.util.Collection<VariableSymbol> variables,
java.util.Collection<ClassSymbol> exceptions,
ErrorStream out)
Construct a proving problem.
|
Modifier and Type | Method and Description |
---|---|
Type |
MethodSymbol.getLogicReturnType()
Get logic return type of the method.
|
Type |
VariableSymbolBase.getLogicType()
Get logic type of symbol.
|
Type |
VariableSymbol.getLogicType()
Get logic type of symbol.
|
Type |
TypeTranslator.getStringType()
Get the current string type.
|
Type |
TypeSymbol.getType()
Get type.
|
Type |
ValueSymbol.getType()
Get type.
|
Type |
TypeTranslator.logicType(TypeExpression exp)
Translate a program's type expression to a logical type.
|
Type |
LogicChecking.process(Term term)
Type-check term in current theory and, as a side effect,
annotate the term with the type.
|
Type |
LogicChecking.process(Type type)
Process type expression in current theory.
|
Type |
LogicTypeTable.process(Type type)
Return (if possible) canonical version of the type
|
Type |
LogicChecking.processTermCore(Term term)
Type-check term in current theory and, as a side effect,
annotate the term with the type.
|
Type |
LogicChecking.subType(Type type0,
Type type1)
Returns greatest lower bound of type0 and type1 (null, if none exists);
does not generate tccs.
|
Modifier and Type | Method and Description |
---|---|
static ValueSymbol |
ValueSymbol.construct(Identifier name,
Type type,
Declaration decl)
Construct value symbol.
|
static TypeSymbol |
TypeSymbol.construct(Identifier name,
Type type,
TypeDeclaration decl)
Construct type symbol.
|
boolean |
LogicChecking.hasIntType(Term term,
Type type,
boolean gen)
Checks if term has type INT, may generate type checking condition.
|
boolean |
LogicChecking.hasNatType(Term term,
Type type,
boolean gen)
Checks if term has type NAT, may generate type checking condition.
|
static boolean |
LogicChecking.isBooleanType(Type type)
Check whether type denotes a boolean.
|
static boolean |
LogicChecking.isIntegerType(Type type)
Determine whether type is (a subtype of) the integer type.
|
Type |
LogicChecking.process(Type type)
Process type expression in current theory.
|
Type |
LogicTypeTable.process(Type type)
Return (if possible) canonical version of the type
|
TypeSymbol |
LogicEnvironment.putType(Identifier name,
Type type,
TypeDeclaration decl)
Attempts to put type into type table.
|
ValueSymbol |
LogicEnvironment.putValue(Identifier name,
Type type,
Declaration decl)
Attempts to put value into value table
|
void |
VariableSymbolBase.setLogicType(Type type)
Set logic type of symbol.
|
void |
VariableSymbol.setLogicType(Type type)
Set logic type of symbol.
|
Type |
LogicChecking.subType(Type type0,
Type type1)
Returns greatest lower bound of type0 and type1 (null, if none exists);
does not generate tccs.
|
static boolean |
LogicChecking.validDefinitionType(Type type)
decide whether definition type is first order, i.e.,
- a function type is only allowed at the top level
- the type BOOLEAN is only allowed at the top level
or as the range of the function type
|
static boolean |
LogicChecking.validTermType(Type type)
decide whether type does not contain a function type or BOOLEAN.
|
Modifier and Type | Class and Description |
---|---|
class |
ArrayType
An array type.
|
class |
AtomicType
An atomic type.
|
class |
BitType
The type of bit values.
|
class |
BooleanType
The type of truth values.
|
class |
FunctionType
A function type.
|
class |
IntType
The type of integers.
|
class |
NatType
The type of natural numbers.
|
class |
Real0Type
The type of reals including the results of divisions by zero (intenally used).
|
class |
RealType
The type of reals.
|
class |
RecordType
A record type.
|
class |
Reference
A reference to a logical variable (or constant).
|
class |
StateType
The type of state values.
|
class |
StringType
The type of character strings.
|
class |
SubrangeType
An subrange type.
|
class |
SubType
An subtype.
|
class |
TupleType
A tuple type.
|
class |
TypeBase
Base class of a type (term).
|
Modifier and Type | Method and Description |
---|---|
Type |
SubType.getBase()
Returns (non-subtype) base type.
|
Type[] |
TupleType.getBase()
Get base types.
|
Type |
ArrayType.getBase()
Get base type.
|
Type[] |
FunctionType.getDomain()
Get domain types.
|
Type |
ArrayType.getIndex()
Get index type.
|
Type |
FunctionType.getRange()
Get range type.
|
Type |
StateType.getReturn()
Get return type.
|
Type |
PostfixTerm.getType()
Set type annotation of term.
|
Type |
ValueDeclarationClass.getType()
Get type of the declaration.
|
Type |
ValueDeclaration.getType()
Get type of value.
|
Type |
Term.getType()
Get type annotation of term.
|
Type |
QuantifiedTerm.getType()
Set type annotation of term.
|
Type |
TermBase.getType()
Set type annotation of term.
|
Type |
TypedIdentifier.getType()
Get type.
|
Type |
UnaryTerm.getType()
Set type annotation of term.
|
Type |
Constant.getType()
Set type annotation of term.
|
Type |
Reference.getType()
Get type annotation of term.
|
Type |
BinaryTerm.getType()
Set type annotation of term.
|
Type |
IfThenElseTerm.getType()
Set type annotation of term.
|
Type |
LetTerm.getType()
Set type annotation of term.
|
Type |
FunctionApplication.getType()
Set type annotation of term.
|
Type |
TypeDefinition.getValue()
Get the type value.
|
Modifier and Type | Method and Description |
---|---|
static ValueDeclarationClass |
ValueDeclarationClass.construct(Identifier name,
Type type)
Create new declaration of a constant denoting a value.
|
static TypeDefinition |
TypeDefinition.construct(Identifier name,
Type type)
Create new declaration of a constant denoting a type.
|
static TypedIdentifier |
TypedIdentifier.construct(Identifier name,
Type type)
Construct an identifier with a type.
|
static ValueDeclarationFormula |
ValueDeclarationFormula.construct(Identifier name,
Type type,
Formula value)
Create new declaration of a constant denoting a predicate.
|
static ValueDeclarationInitialized |
ValueDeclarationInitialized.construct(Identifier name,
Type type,
Term value)
Create new declaration of a constant denoting a value.
|
static StateType |
StateType.construct(Type ret)
Construct a state type.
|
static TupleType |
TupleType.construct(Type[] base)
Construct tuple type.
|
static FunctionType |
FunctionType.construct(Type[] domain,
Type range)
Construct array type.
|
static FunctionType |
FunctionType.construct(Type[] domain,
Type range)
Construct array type.
|
static ArrayType |
ArrayType.construct(Type index,
Type base)
Construct array type.
|
void |
SubType.setBase(Type base)
Set (non-subtype) base type.
|
void |
PostfixTerm.setType(Type type)
Set type annotation of term.
|
void |
Term.setType(Type type)
Set type annotation of term.
|
void |
QuantifiedTerm.setType(Type type)
Set type annotation of term.
|
void |
TermBase.setType(Type type)
Set type annotation of term.
|
void |
UnaryTerm.setType(Type type)
Set type annotation of term.
|
void |
Constant.setType(Type type)
Set type annotation of term.
|
void |
Reference.setType(Type type)
Set type annotation of term.
|
void |
BinaryTerm.setType(Type type)
Set type annotation of term.
|
void |
IfThenElseTerm.setType(Type type)
Set type annotation of term.
|
void |
LetTerm.setType(Type type)
Set type annotation of term.
|
void |
FunctionApplication.setType(Type type)
Set type annotation of term.
|
Modifier and Type | Method and Description |
---|---|
Type |
Selector.getLogicBaseType()
get logic type of expression to which selector is applied
|
Type |
SelectorBase.getLogicBaseType()
get type of expression to which selector is applied
|
Modifier and Type | Method and Description |
---|---|
void |
Selector.setLogicBaseType(Type type)
set logic type of expression to which selector is applied
|
void |
SelectorBase.setLogicBaseType(Type type)
set type of expression to which selector is applied
|