Class/Object

smtlib.drivers

SemanticsDriver

Related Docs: object SemanticsDriver | package drivers

Permalink

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
Visibility
  1. Public
  2. All

Instance Constructors

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

    Permalink

Value Members

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

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

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

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

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

    Permalink
  6. def clone(): AnyRef

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

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

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

    Permalink
  10. def finalize(): Unit

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

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

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

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

    Permalink
    Definition Classes
    AnyRef
  15. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  16. final def notifyAll(): Unit

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

    Permalink
    Attributes
    protected
  18. def processSetOption(option: SMTOption): Unit

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

    Permalink
    Definition Classes
    AnyRef
  20. def toString(): String

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

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped