Packages

  • package root
    Definition Classes
    root
  • package provingground

    This is work towards automated theorem proving based on learning, using homotopy type theory (HoTT) as foundations and natural language processing.

    This is work towards automated theorem proving based on learning, using homotopy type theory (HoTT) as foundations and natural language processing.

    The implementation of homotopy type theory is split into:

    • the object HoTT with terms, types, functions and dependent functions, pairs etc
    • the package induction with general inductive types and recursion/induction on these.

    The learning package has the code for learning.

    Scala code, including the spire library, is integrated with homotopy type theory in the scalahott package

    We have implemented a functor based approach to translation in the translation package, used for nlp as well as serialization and parsing.

    The library package is contains basic structures implemented in HoTT.

    Definition Classes
    root
  • object HoTT

    Core of Homotopy Type Theory (HoTT) implementation.

    Core of Homotopy Type Theory (HoTT) implementation. Includes: - terms : Term, - types : Typ - universes - functions and dependent functions (see [FuncLike], [Func]) - function types FuncTyp and pi-types PiDefn, - lambda definitions LambdaLike, - pairs PairTerm and dependent pairs DepPair - product types ProdTyp and sigma types SigmaTyp - Coproduct types PlusTyp, the Unit type Unit and the empty type Zero - recursion and induction functions for products, coproducts

    General inductive types are not implemented here, but in the induction package.

    Definition Classes
    provingground
  • trait Typ[+U <: Term with Subs[U]] extends Term with Subs[Typ[U]]

    HoTT Type; The compiler knows that objects have scala-type extending U.

    HoTT Type; The compiler knows that objects have scala-type extending U. In particular, we can specify that the objects are types, functions, dependent functions etc.

    U

    bound on scala type of objects with this as type. in practice, it is symbolic objects of the type whose scala type is bounded.

    Definition Classes
    HoTT
  • Elem
  • Obj

object Elem

Pattern for element of the given type.

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Elem
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Value Members

  1. def apply(u: Term): Term
  2. def unapply(term: Term): Option[U]