Package org.smtlib.impl


package org.smtlib.impl
This package is an implementation of the interfaces defined in org.smtlib. This implementation uses the conventional concrete syntax. In particular, there are implementations of ISort, IPos (and ISource), ICommand, IResponse, IExpr and its subtypes, along with factories for all of these concrete classes.
  • Classes
    Class
    Description
    This abstract class is the base class for all commands within this implementation.
    Implements a factory for SMT-LIB expressions using the standard concrete syntax.
    Represents a range of characters in a source - used to indicate the location of errors
    A Printable that also implements IExpr, additionally holding the sort computed for the expression by the type checker (null if not yet, or never, computed).
    An implementation of IPosable, holding an instance of Pos, that can be used as a base class if necessary
    A Posable that also implements INode, with toString() delegating to Printer.
    An implementation of the ISource interface
    This class holds subclasses that are implementations of the various IResponse interfaces.
    Implements the IResponse.IAssertionsResponse interface
    Implements the IResponse.IAssignmentResponse interface
    Implements the IResponse.IError interface
    Implements the IResponse.IFactory interface
    Implements the IResponse.IPair interface
    Implements the IResponse.IProofResponse interface
    Implementation of IAttributeList: a list of attributes returned by get-info.
    Implements the IResponse.IUnsatAssumptionsResponse interface
    Implements the IResponse.IUnsatCoreResponse interface
    Implements the IResponse.IValueResponse interface
    This class implements the IScript interface, representing SMT-LIB command scripts
    This class defines a number of subclasses that implement the SMT-LIB abstract AST; they are used by commands and expressions.
    This class represents an SMT as-identifier AST
    Represents an SMT-LIB attribute: a keyword optionally paired with a value.
    Represents an SMT-LIB attributed expression ((! expr attrs...)).
    Represents an SMT-LIB binary literal (e.g.
    Represents a let-binding: a symbol bound to an expression.
    Represents a constructor declaration within a datatype, consisting of a name and a list of selectors.
    Represents a datatype body: a list of constructors and (for parametric forms) a list of sort parameter symbols.
    This class represents an SMT Decimal literal expression or syntax token
    Represents a sorted variable declaration (parameter name and its sort), used in forall/exists/define-fun.
    Represents an expression-level error node inserted during parsing to allow error recovery.
    Represents an SMT-LIB existential quantifier expression.
    Represents a function-application expression: a qualified identifier applied to a list of argument expressions.
    Represents an SMT-LIB universal quantifier expression.
    Represents a function declaration header (name, sorted parameters, result sort), used in define-funs-rec.
    Represents an SMT-LIB hex literal (e.g.
    This class represents an SMT Keyword syntax token
    Represents an SMT-LIB lambda expression (SMT-LIB 2.7ff, HO-Core theory).
    Represents an SMT-LIB let expression: a list of bindings and a body expression.
    Abstract base class for all literal value AST nodes; holds the typed value and provides a shared implementation.
     
    Represents an SMT-LIB 2.7 match expression: an expression matched against a list of cases.
    Represents a single case in a match expression: a pattern and its result body.
    This class represents an SMT Numeral expression or syntax token
    This class represents an SMT parameterized-identifier AST (e.g.
    Represents a match pattern: a constructor name applied to zero or more variable symbols.
    Represents the value of a :pattern attribute: a list of trigger terms.
    Represents a selector declaration within a datatype constructor.
    Represents a sort declaration (symbol and arity) used in declare-datatype and declare-datatypes.
    This class represents an SMT String literal expression or syntax token
    This class represents an SMT Symbol
     
    This class implements the abstract ISort interface
    Implements a Sort abbreviation (parameterized definition, possibly with no parameters)
    Represents a sort expression consisting of a sort symbol or sort abbreviation symbol applied to a corresponding number of sort arguments
    A placeholder sort definition used when a sort declaration is ill-formed, to suppress cascading errors.
    Represents a new sort symbol, with a given identifier and arity
    Represents the class of the sort of a function symbol.
    Represents a Sort parameter, such as in either the parameter list or the expression of a Sort abbreviation