case class ChainTactic(hyp: String, target: TacticApplyMode = UniqueFormula, substitution: Map[Var, Expr] = Map()) extends Tactical1[Unit] with Product with Serializable

Performs backwards chaining: A goal of the form ∀x (P(x) → Q(x)), Γ :- Δ, Q(t) is replaced by the goal ∀x (P(x) → Q(x)), Γ :- Δ, P(t).

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

Instance Constructors

  1. new ChainTactic(hyp: String, target: TacticApplyMode = UniqueFormula, substitution: Map[Var, Expr] = Map())

Type Members

  1. class FindFormula extends AnyRef
    Attributes
    protected
    Definition Classes
    Tactical1

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. def +(other: String): String
    Implicit
    This member is added by an implicit conversion from ChainTactic toany2stringadd[ChainTactic] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (ChainTactic, B)
    Implicit
    This member is added by an implicit conversion from ChainTactic toArrowAssoc[ChainTactic] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  6. def aka(newName: => String): Tactic[Unit]
    Definition Classes
    Tactic
  7. def andThen[S](t2: => Tactic[S]): Tactic[S]
    Definition Classes
    Tactic
  8. def apply(goal: OpenAssumption): Tactic[Unit]
    Definition Classes
    ChainTacticTactical1
  9. def apply(proofState: ProofState): Either[TacticFailure, (Unit, ProofState)]
    Definition Classes
    Tactical1Tactic
  10. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  11. def at(target: String): ChainTactic
  12. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
  13. def cut(errorMessage: String): Tactic[Unit]
    Definition Classes
    Tactic
  14. def ensuring(cond: (ChainTactic) => Boolean, msg: => Any): ChainTactic
    Implicit
    This member is added by an implicit conversion from ChainTactic toEnsuring[ChainTactic] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  15. def ensuring(cond: (ChainTactic) => Boolean): ChainTactic
    Implicit
    This member is added by an implicit conversion from ChainTactic toEnsuring[ChainTactic] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  16. def ensuring(cond: Boolean, msg: => Any): ChainTactic
    Implicit
    This member is added by an implicit conversion from ChainTactic toEnsuring[ChainTactic] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  17. def ensuring(cond: Boolean): ChainTactic
    Implicit
    This member is added by an implicit conversion from ChainTactic toEnsuring[ChainTactic] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  18. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  19. def findFormula(goal: OpenAssumption, mode: TacticApplyMode): FindFormula
    Attributes
    protected
    Definition Classes
    Tactical1
  20. def flatMap[S](f: (Unit) => Tactic[S])(implicit file: File, line: Line): Tactic[S]
    Definition Classes
    Tactic
  21. def focused: Tactic[Unit]
    Definition Classes
    Tactic
  22. def formatted(fmtstr: String): String
    Implicit
    This member is added by an implicit conversion from ChainTactic toStringFormat[ChainTactic] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  23. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  24. val hyp: String
  25. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  26. def map[S](f: (Unit) => S)(implicit file: File, line: Line): Tactic[S]
    Definition Classes
    Tactic
  27. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  28. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  29. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  30. def onAll[S](t2: => Tactic[S]): Tactic[Unit]
    Definition Classes
    Tactic
  31. def onAllSubGoals: Tactic[Unit]
    Definition Classes
    Tactic
  32. def onCurrentSubGoal: Tactic[Unit]
    Definition Classes
    Tactic
  33. def orElse[S >: Unit](t2: => Tactic[S]): Tactic[S]

    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
    Tactic
  34. def productElementNames: Iterator[String]
    Definition Classes
    Product
  35. def quiet: Tactic[Unit]
    Definition Classes
    Tactic
  36. def quietOnly(loggers: Logger*): Tactic[Unit]
    Definition Classes
    Tactic
  37. def replace(proof: LKProof): Tactic[Unit]
    Attributes
    protected
    Definition Classes
    Tactical1
  38. def subst(map: (Var, Expr)*): ChainTactic
  39. val substitution: Map[Var, Expr]
  40. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  41. val target: TacticApplyMode
  42. def verbose: Tactic[Unit]
    Definition Classes
    Tactic
  43. def verboseOnly(loggers: Logger*): Tactic[Unit]
    Definition Classes
    Tactic
  44. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  45. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  46. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated @deprecated
    Deprecated

    (Since version ) see corresponding Javadoc for more information.

  2. def [B](y: B): (ChainTactic, B)
    Implicit
    This member is added by an implicit conversion from ChainTactic toArrowAssoc[ChainTactic] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @deprecated
    Deprecated

    (Since version 2.13.0) Use -> instead. If you still wish to display it as one character, consider using a font with programming ligatures such as Fira Code.

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from Tactical1[Unit]

Inherited from Tactic[Unit]

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd fromChainTactic to any2stringadd[ChainTactic]

Inherited by implicit conversion StringFormat fromChainTactic to StringFormat[ChainTactic]

Inherited by implicit conversion Ensuring fromChainTactic to Ensuring[ChainTactic]

Inherited by implicit conversion ArrowAssoc fromChainTactic to ArrowAssoc[ChainTactic]

Ungrouped