smtlib.drivers

SemanticsDriver

class SemanticsDriver extends AnyRef

Provide standard complient behaviour for a sequence of commands.

This driver will properly understand the whole SMT-LIB 2.5 language, maintaining proper state and forwarding work to an underlying solver. The behaviour of this driver is to perfectly follow the standard, and properly abstract the peculiarities of the black box solvers so that they can be used with SMT-LIB 2.5 language.

One difficult in implementing the SMT-LIB standard is that the standard is designed for process interaction, relying on both a standard output and standard error channel. Standard output and error are part of the interface of the driver, and by default will be available on the driver. If one sets the :diagnostic-output-channel or :regular-output-channel options, that will redirect this behaviour and send the outputs to files. Basically: stdout and stderr are the iterator attached to this driver.

TODO: this is work in progress, not usable yet.

Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. SemanticsDriver
  2. AnyRef
  3. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new SemanticsDriver(rawSolver: Interpreter, onRegularOutput: (CommandResponse) ⇒ Unit, onDiagnosticOutput: (String) ⇒ Unit)

Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  7. def checkSort(sort: Sort, params: Seq[SSymbol]): Unit

  8. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  9. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  10. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  11. def eval(command: Command): Unit

  12. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  13. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  14. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  15. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  16. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  17. final def notify(): Unit

    Definition Classes
    AnyRef
  18. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  19. def processGetInfo(infoFlag: InfoFlag): Unit

    Attributes
    protected
  20. def processSetOption(option: SMTOption): Unit

    Attributes
    protected
  21. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  22. def toString(): String

    Definition Classes
    AnyRef → Any
  23. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  24. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  25. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped