Trait/Object

ap.types

Sort

Related Docs: object Sort | package types

Permalink

trait Sort extends AnyRef

Trait representing sorts of individuals in the logic.

Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Sort
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def augmentModelTermSet(model: Conjunction, assignment: Map[(IdealInt, Sort), ITerm], allTerms: Set[(IdealInt, Sort)], definedTerms: Set[(IdealInt, Sort)]): Unit

    Permalink

    Extract terms from a model.

    Extract terms from a model. Such terms will always be encoded as integers, and integers can have different meaning depending on the considered sort.

  2. abstract val cardinality: Option[IdealInt]

    Permalink

    The cardinality of sorts with fixed-size, finite domain.

  3. abstract def individuals: Stream[ITerm]

    Permalink

    Terms representing elements of the sort.

  4. abstract def membershipConstraint(t: Term)(implicit order: TermOrder): Formula

    Permalink

    Constraints defining the range of the sort.

  5. abstract def membershipConstraint(t: ITerm): IFormula

    Permalink

    Constraints defining the range of the sort.

  6. abstract val name: String

    Permalink

Concrete 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. def all(f: (ITerm, ITerm, ITerm, ITerm, ITerm) ⇒ IFormula): IFormula

    Permalink

    Higher-order syntax for universal quantifiers.

    Higher-order syntax for universal quantifiers. This makes it possible to write a quantifier as Sort.all((a, b, c, d, e) => phi(a, b, c, d, e)).

  5. def all(f: (ITerm, ITerm, ITerm, ITerm) ⇒ IFormula): IFormula

    Permalink

    Higher-order syntax for universal quantifiers.

    Higher-order syntax for universal quantifiers. This makes it possible to write a quantifier as Sort.all((a, b, c, d) => phi(a, b, c, d)).

  6. def all(f: (ITerm, ITerm, ITerm) ⇒ IFormula): IFormula

    Permalink

    Higher-order syntax for universal quantifiers.

    Higher-order syntax for universal quantifiers. This makes it possible to write a quantifier as Sort.all((a, b, c) => phi(a, b, c)).

  7. def all(f: (ITerm, ITerm) ⇒ IFormula): IFormula

    Permalink

    Higher-order syntax for universal quantifiers.

    Higher-order syntax for universal quantifiers. This makes it possible to write a quantifier as Sort.all((a, b) => phi(a, b)).

  8. def all(f: (ITerm) ⇒ IFormula): IFormula

    Permalink

    Higher-order syntax for universal quantifiers.

    Higher-order syntax for universal quantifiers. This makes it possible to write a quantifier as Sort.all(a => phi(a)).

  9. def all(f: IFormula): IQuantified

    Permalink

    Add an existential quantifier for the variable with de Bruijn index 0, together with a guard representing this sort.

  10. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  11. val asTerm: Decoder[Option[ITerm]]

    Permalink

    Extract a term representation of some value in the sort.

  12. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  13. def decodeToTerm(d: IdealInt, assignment: Map[(IdealInt, Sort), ITerm]): Option[ITerm]

    Permalink

    Extract a term representation of some value in the sort.

    Extract a term representation of some value in the sort. This method can be overwritten in sub-classes to decode in a sort-specific way

  14. def eps(f: (ITerm) ⇒ IFormula): IEpsilon

    Permalink

    Higher-order syntax for epsilon-expressions.

    Higher-order syntax for epsilon-expressions. This makes it possible to write things like Sort.eps(a => phi(a)).

  15. def eps(f: IFormula): IEpsilon

    Permalink

    Generate an epsilon-expression.

  16. final def eq(arg0: AnyRef): Boolean

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

    Permalink
    Definition Classes
    AnyRef → Any
  18. def ex(f: (ITerm, ITerm, ITerm, ITerm, ITerm) ⇒ IFormula): IFormula

    Permalink

    Higher-order syntax for existential quantifiers.

    Higher-order syntax for existential quantifiers. This makes it possible to write a quantifier as Sort.ex((a, b, c, d, e) => phi(a, b, c, d, e)).

  19. def ex(f: (ITerm, ITerm, ITerm, ITerm) ⇒ IFormula): IFormula

    Permalink

    Higher-order syntax for existential quantifiers.

    Higher-order syntax for existential quantifiers. This makes it possible to write a quantifier as Sort.ex((a, b, c, d) => phi(a, b, c, d)).

  20. def ex(f: (ITerm, ITerm, ITerm) ⇒ IFormula): IFormula

    Permalink

    Higher-order syntax for existential quantifiers.

    Higher-order syntax for existential quantifiers. This makes it possible to write a quantifier as Sort.ex((a, b, c) => phi(a, b, c)).

  21. def ex(f: (ITerm, ITerm) ⇒ IFormula): IFormula

    Permalink

    Higher-order syntax for existential quantifiers.

    Higher-order syntax for existential quantifiers. This makes it possible to write a quantifier as Sort.ex((a, b) => phi(a, b)).

  22. def ex(f: (ITerm) ⇒ IFormula): IFormula

    Permalink

    Higher-order syntax for existential quantifiers.

    Higher-order syntax for existential quantifiers. This makes it possible to write a quantifier as Sort.ex(a => phi(a)).

  23. def ex(f: IFormula): IQuantified

    Permalink

    Add an existential quantifier for the variable with de Bruijn index 0, together with a guard representing this sort.

  24. def finalize(): Unit

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

    Permalink
    Definition Classes
    AnyRef → Any
  26. def getSubTerms(ids: Seq[Term], sorts: Seq[Sort], terms: Map[(IdealInt, Sort), ITerm]): Either[Seq[ITerm], Seq[(IdealInt, Sort)]]

    Permalink
    Attributes
    protected
  27. def hashCode(): Int

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

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

    Permalink
    Definition Classes
    AnyRef
  30. def newConstant(name: String): ConstantTerm

    Permalink

    Allocation of a new constant with this sort.

    Allocation of a new constant with this sort.

  31. final def notify(): Unit

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

    Permalink
    Definition Classes
    AnyRef
  33. final def synchronized[T0](arg0: ⇒ T0): T0

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

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

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  38. def witness: Option[ITerm]

    Permalink

    A witness term proving that the sort is inhabited.

Inherited from AnyRef

Inherited from Any

Ungrouped