Interface SymbolicConstant

All Superinterfaces:
SymbolicExpression, SymbolicObject
All Known Subinterfaces:
BooleanSymbolicConstant, NumericSymbolicConstant
All Known Implementing Classes:
CnfSymbolicConstant, CommonSymbolicConstant, HerbrandSymbolicConstant, IdealSymbolicConstant

public interface SymbolicConstant extends SymbolicExpression

A "symbolic constant" is a symbol used in symbolic execution to represent an input value. It is "constant" in the sense that its value does not change in the course of an execution of the program. A symbolic constant is determined by two things: a name (which is a String), and a type (instance of SymbolicType). Two distinct symbolic constants may have the same name, but different types. Two symbolic constants are considered equal iff their names are equal and their types are equal.

Symbolic constants are SymbolicExpressions, which are SymbolicObjects, and like all symbolic objects are immutable.

  • Method Details