Object

ap.theories.ADT

CtorIdRewriter

Related Doc: package ADT

Permalink

object CtorIdRewriter extends CollectingVisitor[Unit, IExpression]

The preprocessor can sometimes cause solution formulas that are illegal according to SMT-LIB because they contain the ADT.CtorId functions in wrong places. This class rewrites such formulas to only use CtorId functions in equations ctorId(t) = num.

Linear Supertypes
CollectingVisitor[Unit, IExpression], AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. CtorIdRewriter
  2. CollectingVisitor
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. abstract class PreVisitResult extends AnyRef

    Permalink
    Definition Classes
    CollectingVisitor
  2. case class ShortCutResult(res: R) extends PreVisitResult with Product with Serializable

    Permalink

    Skip the call to postVisit and do not visit any of the sub-expressions.

    Skip the call to postVisit and do not visit any of the sub-expressions. Instead, directly return res as result

    Definition Classes
    CollectingVisitor
  3. case class SubArgs(args: Seq[A]) extends PreVisitResult with Product with Serializable

    Permalink

    Specify the arguments to use for the individual sub-expressions

    Specify the arguments to use for the individual sub-expressions

    Definition Classes
    CollectingVisitor
  4. case class TryAgain(newT: IExpression, newArg: A) extends PreVisitResult with Product with Serializable

    Permalink

    Call preVisit again with a different expression and argument

    Call preVisit again with a different expression and argument

    Definition Classes
    CollectingVisitor
  5. case class UniSubArgs(arg: A) extends PreVisitResult with Product with Serializable

    Permalink

    Use arg for each of the direct sub-expressions

    Use arg for each of the direct sub-expressions

    Definition Classes
    CollectingVisitor

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. object KeepArg extends PreVisitResult with Product with Serializable

    Permalink

    Use the same argument for the direct sub-expressions as for this expression

    Use the same argument for the direct sub-expressions as for this expression

    Definition Classes
    CollectingVisitor
  5. def apply(f: IFormula): IFormula

    Permalink
  6. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  7. def clone(): AnyRef

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  10. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
    Annotations
    @HotSpotIntrinsicCandidate()
  11. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
    Annotations
    @HotSpotIntrinsicCandidate()
  12. final def isInstanceOf[T0]: Boolean

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate()
  15. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate()
  16. def postVisit(t: IExpression, arg: Unit, subres: Seq[IExpression]): IExpression

    Permalink
    Definition Classes
    CtorIdRewriterCollectingVisitor
  17. def preVisit(t: IExpression, arg: Unit): PreVisitResult

    Permalink
    Definition Classes
    CtorIdRewriterCollectingVisitor
  18. final def synchronized[T0](arg0: ⇒ T0): T0

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

    Permalink
    Definition Classes
    AnyRef → Any
  20. def visit(expr: IExpression, arg: Unit): IExpression

    Permalink
    Definition Classes
    CollectingVisitor
  21. def visitWithoutResult(expr: IExpression, arg: Unit): Unit

    Permalink
    Definition Classes
    CollectingVisitor
  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( ... )
  24. final def wait(): Unit

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

Deprecated Value Members

  1. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @Deprecated @deprecated @throws( classOf[java.lang.Throwable] )
    Deprecated

    (Since version ) see corresponding Javadoc for more information.

Inherited from CollectingVisitor[Unit, IExpression]

Inherited from AnyRef

Inherited from Any

Ungrouped