Class/Object

info.hupel.isabelle

System

Related Docs: object System | package isabelle

Permalink

final class System extends AnyRef

A running instance of a prover.

This class is thread-safe, that is, running multiple operations at the same time is expected and safe.

See also

info.hupel.isabelle.setup.Setup

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. System
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

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 clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. def dispose: Future[Unit]

    Permalink

    Instruct the prover to shutdown.

    Instruct the prover to shutdown.

    Includes orderly cancellation of all running operations. Pending futures will be marked as failed.

    It is guaranteed that when the returned future succeeds, the prover has been shut down propertly.

    Calling anything after dispose is undefined. The object should not be used afterwards.

  7. val env: Environment

    Permalink
  8. final def eq(arg0: AnyRef): Boolean

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

    Permalink
    Definition Classes
    AnyRef → Any
  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. def invoke[I, O](operation: Operation[I, O])(arg: I): CancelableFuture[ProverResult[O]]

    Permalink

    Invoke an operation on the prover, that is, encode the input argument, send it to the prover and stream the results to the observer of the operation.

    Invoke an operation on the prover, that is, encode the input argument, send it to the prover and stream the results to the observer of the operation.

    The returned future gets fulfilled when the observer transitions into either Success or Failure state.

    In addition to that, the transaction can be cancelled via the cancel method of the CancelableFuture. Cancellation entails marking the future as failed and signalling the prover that the operation should be interrupted.

    Any well-formed response, even if it is an "error", is treated as a success. Only ill-formed responses, e.g. due to decoding errors, will mark the future as failed. Custom observers may deviate from this, but it is generally safe to assume that a failed future represents an internal error (e.g. due to a wrong codec), whereas a successful future may contain expected errors (e.g. due to a wrong input argument or a failing proof).

  14. final def isInstanceOf[T0]: Boolean

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

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

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

    Permalink
    Definition Classes
    AnyRef
  18. def rawEval(ml: String): Unit

    Permalink
  19. def run[A](prog: Program[A], thyName: String): CancelableFuture[A]

    Permalink
  20. implicit val scheduler: Scheduler

    Permalink

    The scheduler used internally for bi-directional communication with the prover.

    The scheduler used internally for bi-directional communication with the prover.

    Guaranteed to be the same scheduler as the one of the environment used to create this system.

    It is fine to use this scheduler for other purposes, for example to transform the futures produced by invoking operations (note that Scheduler is a subtype of ExecutionContext).

    Since it is marked as implicit, it can be readily imported and used.

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

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

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

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

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

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

Inherited from AnyRef

Inherited from Any

Ungrouped