Class

at.logic.gapt.proofs.gaptic.tactics

EqualityTactic

Related Doc: package tactics

Permalink

case class EqualityTactic(equationLabel: String, formulaLabel: String, leftToRight: Option[Boolean] = None, targetFormula: Option[HOLFormula] = None) extends Tactic[Unit] with Product with Serializable

Applies an equation in a goal.

equationLabel

The label of the equation.

formulaLabel

The label of the formula the equation is to be used on.

leftToRight

If Some(true), the equation s = t will be used to rewrite s to t, and the other way around for Some(false). If None, the tactic will attempt to decide the direction automatically.

targetFormula

If Some(f), the tactic will attempt to produce f through application of the equality. Otherwise it will replace as many occurrences as possible according to leftToRight.

Source
lkTactics.scala
Linear Supertypes
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. EqualityTactic
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. Tactic
  7. Tactical
  8. AnyRef
  9. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new EqualityTactic(equationLabel: String, formulaLabel: String, leftToRight: Option[Boolean] = None, targetFormula: Option[HOLFormula] = None)

    Permalink

    equationLabel

    The label of the equation.

    formulaLabel

    The label of the formula the equation is to be used on.

    leftToRight

    If Some(true), the equation s = t will be used to rewrite s to t, and the other way around for Some(false). If None, the tactic will attempt to decide the direction automatically.

    targetFormula

    If Some(f), the tactic will attempt to produce f through application of the equality. Otherwise it will replace as many occurrences as possible according to leftToRight.

Type Members

  1. class FindFormula extends AnyRef

    Permalink
    Attributes
    protected
    Definition Classes
    Tactic

Value Members

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  3. def +(other: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from EqualityTactic to any2stringadd[EqualityTactic] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (EqualityTactic, B)

    Permalink
    Implicit information
    This member is added by an implicit conversion from EqualityTactic to ArrowAssoc[EqualityTactic] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  6. def andThen[S](t2: Tactical[S]): Tactical[S]

    Permalink
    Definition Classes
    Tactical
  7. def apply(goal: OpenAssumption): ValidationNel[TacticalFailure, (Unit, LKProof)]

    Permalink
    Definition Classes
    EqualityTacticTactic
  8. def apply(proofState: ProofState): ValidationNel[TacticalFailure, (Unit, ProofState)]

    Permalink
    Definition Classes
    TacticTactical
  9. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  10. def asTactic: Tactic[Unit]

    Permalink
    Definition Classes
    Tactical
  11. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  12. def ensuring(cond: (EqualityTactic) ⇒ Boolean, msg: ⇒ Any): EqualityTactic

    Permalink
    Implicit information
    This member is added by an implicit conversion from EqualityTactic to Ensuring[EqualityTactic] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  13. def ensuring(cond: (EqualityTactic) ⇒ Boolean): EqualityTactic

    Permalink
    Implicit information
    This member is added by an implicit conversion from EqualityTactic to Ensuring[EqualityTactic] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  14. def ensuring(cond: Boolean, msg: ⇒ Any): EqualityTactic

    Permalink
    Implicit information
    This member is added by an implicit conversion from EqualityTactic to Ensuring[EqualityTactic] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  15. def ensuring(cond: Boolean): EqualityTactic

    Permalink
    Implicit information
    This member is added by an implicit conversion from EqualityTactic to Ensuring[EqualityTactic] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  16. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  17. val equationLabel: String

    Permalink

    The label of the equation.

  18. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  19. def findFormula(goal: OpenAssumption, mode: TacticApplyMode): FindFormula

    Permalink
    Attributes
    protected
    Definition Classes
    Tactic
  20. def flatMap[S](f: (Unit) ⇒ Tactical[S]): Tactical[S]

    Permalink
    Definition Classes
    Tactical
  21. def formatted(fmtstr: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from EqualityTactic to StringFormat[EqualityTactic] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  22. val formulaLabel: String

    Permalink

    The label of the formula the equation is to be used on.

  23. def fromLeftToRight: EqualityTactic

    Permalink
  24. def fromRightToLeft: EqualityTactic

    Permalink
  25. final def getClass(): Class[_]

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

    Permalink
    Definition Classes
    Any
  27. val leftToRight: Option[Boolean]

    Permalink

    If Some(true), the equation s = t will be used to rewrite s to t, and the other way around for Some(false).

    If Some(true), the equation s = t will be used to rewrite s to t, and the other way around for Some(false). If None, the tactic will attempt to decide the direction automatically.

  28. def map[S](f: (Unit) ⇒ S): Tactical[S]

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

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

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

    Permalink
    Definition Classes
    AnyRef
  32. def onAll[S](t2: Tactical[S]): Tactical[Unit]

    Permalink
    Definition Classes
    Tactic
  33. def onAllSubGoals: Tactical[Unit]

    Permalink
    Definition Classes
    Tactical
  34. def orElse[S >: Unit](t2: Tactic[S]): Tactic[S]

    Permalink

    Returns result of first tactic, if there is any, else it returns the result of the second tactic, with the possibility of no result from either.

    Returns result of first tactic, if there is any, else it returns the result of the second tactic, with the possibility of no result from either.

    Definition Classes
    Tactic
  35. def orElse[S >: Unit](t2: Tactical[S]): Tactical[S]

    Permalink

    Returns result of first tactical, if there is any, else it returns the result of the second tactical, with the possibility of no result from either.

    Returns result of first tactical, if there is any, else it returns the result of the second tactical, with the possibility of no result from either.

    Definition Classes
    Tactical
  36. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  37. val targetFormula: Option[HOLFormula]

    Permalink

    If Some(f), the tactic will attempt to produce f through application of the equality.

    If Some(f), the tactic will attempt to produce f through application of the equality. Otherwise it will replace as many occurrences as possible according to leftToRight.

  38. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  41. def yielding(targetFormula: HOLFormula): EqualityTactic

    Permalink
  42. def [B](y: B): (EqualityTactic, B)

    Permalink
    Implicit information
    This member is added by an implicit conversion from EqualityTactic to ArrowAssoc[EqualityTactic] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from Tactic[Unit]

Inherited from Tactical[Unit]

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd from EqualityTactic to any2stringadd[EqualityTactic]

Inherited by implicit conversion StringFormat from EqualityTactic to StringFormat[EqualityTactic]

Inherited by implicit conversion Ensuring from EqualityTactic to Ensuring[EqualityTactic]

Inherited by implicit conversion ArrowAssoc from EqualityTactic to ArrowAssoc[EqualityTactic]

Ungrouped