Class

at.logic.gapt.proofs.lk

InductionCase

Related Doc: package lk

Permalink

case class InductionCase(proof: LKProof, constructor: Const, hypotheses: Seq[SequentIndex], eigenVars: Seq[Var], conclusion: SequentIndex) extends Product with Serializable

Proof that a given data type constructor c preserves a formula F:

                                 (π)
F(x,,1,,), F(x,,2,,), ..., F(x,,n,,), Γ :- Δ, F(c(x,,1,,,...,x,,n,,,y,,1,,,...,y,,n,,))

The variables xi and yi are eigenvariables; xi are the eigenvariables of the same type as the inductive data type, yi are the other arguments of the constructor c. They can come in any order in the constructor.

proof

The LKProof ending in the sequent of this case.

constructor

The constructor c of the inductive data type that we're considering.

hypotheses

Indices of F(x1), ..., F(xn)

eigenVars

The eigenvariables of this case: x1, ..., xn, y1, ..., yn (these need to correspond to the order in c)

conclusion

Index of F(c(x1,...,xn,y1,...,yn))

Source
lk.scala
Linear Supertypes
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. InductionCase
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. AnyRef
  7. 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 InductionCase(proof: LKProof, constructor: Const, hypotheses: Seq[SequentIndex], eigenVars: Seq[Var], conclusion: SequentIndex)

    Permalink

    proof

    The LKProof ending in the sequent of this case.

    constructor

    The constructor c of the inductive data type that we're considering.

    hypotheses

    Indices of F(x1), ..., F(xn)

    eigenVars

    The eigenvariables of this case: x1, ..., xn, y1, ..., yn (these need to correspond to the order in c)

    conclusion

    Index of F(c(x1,...,xn,y1,...,yn))

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 InductionCase to any2stringadd[InductionCase] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (InductionCase, B)

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

    Permalink
    Definition Classes
    AnyRef → Any
  6. final def asInstanceOf[T0]: T0

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. val conclusion: SequentIndex

    Permalink

    Index of F(c(x1,...,xn,y1,...,yn))

  9. val constructor: Const

    Permalink

    The constructor c of the inductive data type that we're considering.

  10. val eigenVars: Seq[Var]

    Permalink

    The eigenvariables of this case: x1, ..., xn, y1, ..., yn (these need to correspond to the order in c)

  11. def ensuring(cond: (InductionCase) ⇒ Boolean, msg: ⇒ Any): InductionCase

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

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

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

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

    Permalink
    Definition Classes
    AnyRef
  16. val fieldTypes: List[Ty]

    Permalink
  17. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  18. def formatted(fmtstr: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from InductionCase to StringFormat[InductionCase] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  19. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  20. val hypVars: Seq[Var]

    Permalink
  21. val hypotheses: Seq[SequentIndex]

    Permalink

    Indices of F(x1), ..., F(xn)

  22. val indTy: Ty

    Permalink
  23. final def isInstanceOf[T0]: Boolean

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

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

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

    Permalink
    Definition Classes
    AnyRef
  27. val proof: LKProof

    Permalink

    The LKProof ending in the sequent of this case.

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

    Permalink
    Definition Classes
    AnyRef
  29. val term: LambdaExpression

    Permalink
  30. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  33. def [B](y: B): (InductionCase, B)

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

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

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

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

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

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

Ungrouped