Packages

c

provingground.HoTT

SymbEquality

case class SymbEquality[U <: Term with Subs[U]](name: AnySym, typ: IdentityTyp[U]) extends Equality[U] with Symbolic with Product with Serializable

Linear Supertypes
Serializable, Product, Equals, Symbolic, Equality[U], Term, Subs[Equality[U]], AnyRef, Any
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SymbEquality
  2. Serializable
  3. Product
  4. Equals
  5. Symbolic
  6. Equality
  7. Term
  8. Subs
  9. AnyRef
  10. 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 SymbEquality(name: AnySym, typ: IdentityTyp[U])

Value Members

  1. def &&(that: Equality[U]): Equality[U]
    Definition Classes
    Equality
  2. def &&&(that: Equality[U]): Equality[U]
    Definition Classes
    Equality
  3. def **:[V <: Term with Subs[V]](f: Func[U, V]): Equality[V]
    Definition Classes
    Equality
  4. def *:[V <: Term with Subs[V]](f: Func[U, V]): Equality[V]
    Definition Classes
    Equality
  5. def dependsOn(that: Term): Boolean

    returns whether this depends on that

    returns whether this depends on that

    Definition Classes
    Term
  6. def equals(that: Any): Boolean
    Definition Classes
    Symbolic → AnyRef → Any
  7. lazy val hashCode: Int
    Definition Classes
    Symbolic → AnyRef → Any
  8. def indepOf(that: Term): Boolean

    returns whether this is independent of that.

    returns whether this is independent of that.

    Definition Classes
    Term
  9. val lhs: U
    Definition Classes
    Equality
  10. def lift[V <: Term with Subs[V]](f: Func[U, Typ[V]]): Func[V, V]
    Definition Classes
    Equality
  11. def liftWit[V <: Term with Subs[V]](f: Func[U, Typ[V]]): Func[V, V]
    Definition Classes
    Equality
  12. val name: AnySym
    Definition Classes
    SymbEqualitySymbolic
  13. def newobj: SymbEquality[U]

    A new object with the same type, to be used in place of a variable to avoid name clashes.

    A new object with the same type, to be used in place of a variable to avoid name clashes. Should throw exception when invoked for constants.

    Definition Classes
    SymbEqualitySubs
  14. def productElementNames: Iterator[String]
    Definition Classes
    Product
  15. def replace(x: Term, y: Term): Equality[U] with Subs[Equality[U]]

    refine substitution so if x and y are both of certain forms such as pairs or formal applications, components are substituted.

    refine substitution so if x and y are both of certain forms such as pairs or formal applications, components are substituted.

    Definition Classes
    Subs
  16. val rhs: U
    Definition Classes
    Equality
  17. def subs(x: Term, y: Term): Equality[U]

    substitute x by y recursively in this.

    substitute x by y recursively in this.

    Definition Classes
    SymbEqualitySubs
  18. lazy val sym: Equality[U]
    Definition Classes
    Equality
  19. lazy val symWit: Equality[U]
    Definition Classes
    Equality
  20. def toString(): String
    Definition Classes
    SymbEqualitySymbolic → AnyRef → Any
  21. val typ: IdentityTyp[U]

    the HoTT-type of the term

    the HoTT-type of the term

    Definition Classes
    SymbEqualityEqualityTerm
  22. def usesVar(t: Term): Boolean

    returns whether the variable t is used as a variable in a lambda definition.

    returns whether the variable t is used as a variable in a lambda definition.

    Definition Classes
    Term