Packages

trait AbsPair[+U <: Term with Subs[U], +V <: Term with Subs[V]] extends Term with Subs[AbsPair[U, V]]

Abstract pair, parametrized by scala types of components, generally a (dependent) pair object or a product type.

Linear Supertypes
Term, Subs[AbsPair[U, V]], AnyRef, Any
Known Subclasses
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. AbsPair
  2. Term
  3. Subs
  4. AnyRef
  5. Any
Implicitly
  1. by RichTerm
  2. by any2stringadd
  3. by StringFormat
  4. by Ensuring
  5. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Abstract Value Members

  1. abstract val first: U
  2. abstract def newobj: AbsPair[U, V] with Subs[AbsPair[U, V]]

    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
    Subs
  3. abstract val second: V
  4. abstract def subs(x: Term, y: Term): AbsPair[U, V] with Subs[AbsPair[U, V]]

    substitute x by y recursively in this.

    substitute x by y recursively in this.

    Definition Classes
    Subs
  5. abstract val typ: Typ[U] forSome {type U >: AbsPair.this.type <: Term with Subs[U]}

    the HoTT-type of the term

    the HoTT-type of the term

    Definition Classes
    Term

Concrete Value Members

  1. def :->[V <: Term with Subs[V]](that: V): Func[AbsPair[U, V], V]

    constructor for (pure) lambda functions, see lmbda

    constructor for (pure) lambda functions, see lmbda

    Implicit
    This member is added by an implicit conversion from AbsPair[U, V] toRichTerm[AbsPair[U, V]] performed by method RichTerm in provingground.HoTT.
    Definition Classes
    RichTerm
  2. def :~>[V <: Term with Subs[V]](that: V): FuncLike[AbsPair[U, V], V]

    constructor for (in general dependent) lambda functions, see lambda

    constructor for (in general dependent) lambda functions, see lambda

    Implicit
    This member is added by an implicit conversion from AbsPair[U, V] toRichTerm[AbsPair[U, V]] performed by method RichTerm in provingground.HoTT.
    Definition Classes
    RichTerm
  3. def =:=(rhs: AbsPair[U, V]): IdentityTyp[AbsPair[U, V]]

    equality type 'term = rhs'

    equality type 'term = rhs'

    Implicit
    This member is added by an implicit conversion from AbsPair[U, V] toRichTerm[AbsPair[U, V]] performed by method RichTerm in provingground.HoTT.
    Definition Classes
    RichTerm
  4. def dependsOn(that: Term): Boolean

    returns whether this depends on that

    returns whether this depends on that

    Definition Classes
    Term
  5. def indepOf(that: Term): Boolean

    returns whether this is independent of that.

    returns whether this is independent of that.

    Definition Classes
    Term
  6. def refl: Refl[AbsPair[U, V]]

    reflexivity term refl : term = term

    reflexivity term refl : term = term

    Implicit
    This member is added by an implicit conversion from AbsPair[U, V] toRichTerm[AbsPair[U, V]] performed by method RichTerm in provingground.HoTT.
    Definition Classes
    RichTerm
  7. def replace(x: Term, y: Term): AbsPair[U, V] with Subs[AbsPair[U, V]]

    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
  8. def toString(): String
    Definition Classes
    AbsPair → AnyRef → Any
  9. 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