Packages

trait ExprLang[E] extends AnyRef

Abstraction (as a type class) of a language for mathematical expressions, i.e., of

* methods for forming expressions, * some basic expressions such as true, false, numbers etc.

Expression include functions and propositions. However, expressions here need not include sophisticated, and foundation specific, constructions such as inductive types; these should be abstracted separately.

While the design is based on homotopy type theory, implementations can be with a range of logics or functional languages, for instance HOL or the Wolfram language. All methods are optional, so anything outside a language is just not built.

This is integrated with and used by many components.

* As a target for natural language and latex translation. * Bidirectional integration with HoTT implementations: * * terms have such a structure, * * terms can be translated to a language with this structure. * Allows pickling of terms by implementing a formal expression language. * _Goal:_ Bidirectional integration with lean expressions.

Linear Supertypes
AnyRef, Any
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ExprLang
  2. AnyRef
  3. 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

Abstract Value Members

  1. abstract def anonVar(typ: E): Option[E]

    anonymous variable

  2. abstract def appln(func: E, arg: E): Option[E]
  3. abstract def equality(lhs: E, rhs: E): Option[E]
  4. abstract def ff: Option[E]

    false type

  5. abstract def incl1(typ: E): Option[E]
  6. abstract def incl2(typ: E): Option[E]
  7. abstract def lambda(variable: E, value: E): Option[E]
  8. abstract def metaVar(typ: E): Option[E]

    meta-variable of a given type, i.e., whose value must be inferred (elaborated in lean's terminology).

  9. abstract def numeral(n: Int): Option[E]
  10. abstract def or(first: E, second: E): Option[E]
  11. abstract def orCases(first: E, second: E): Option[E]
  12. abstract def pair(x: E, y: E): Option[E]
  13. abstract def pi(variable: E, typ: E): Option[E]
  14. abstract def proj1(xy: E): Option[E]
  15. abstract def proj2(xy: E): Option[E]
  16. abstract def qed: Option[E]

    element of true type

  17. abstract def sigma(variable: E, typFamily: E): Option[E]
  18. abstract def tt: Option[E]

    true type

  19. abstract def typVariable[S](name: S, level: Int): Option[E]
  20. abstract def variable[S](name: S, typ: E): Option[E]

Concrete 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 ExprLang[E] toany2stringadd[ExprLang[E]] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (ExprLang[E], B)
    Implicit
    This member is added by an implicit conversion from ExprLang[E] toArrowAssoc[ExprLang[E]] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  6. def applyAll(funcOpt: Option[E], args: Vector[E]): Option[E]
  7. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  8. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
  9. def ensuring(cond: (ExprLang[E]) => Boolean, msg: => Any): ExprLang[E]
    Implicit
    This member is added by an implicit conversion from ExprLang[E] toEnsuring[ExprLang[E]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  10. def ensuring(cond: (ExprLang[E]) => Boolean): ExprLang[E]
    Implicit
    This member is added by an implicit conversion from ExprLang[E] toEnsuring[ExprLang[E]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  11. def ensuring(cond: Boolean, msg: => Any): ExprLang[E]
    Implicit
    This member is added by an implicit conversion from ExprLang[E] toEnsuring[ExprLang[E]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  12. def ensuring(cond: Boolean): ExprLang[E]
    Implicit
    This member is added by an implicit conversion from ExprLang[E] toEnsuring[ExprLang[E]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  13. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  14. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  15. def formatted(fmtstr: String): String
    Implicit
    This member is added by an implicit conversion from ExprLang[E] toStringFormat[ExprLang[E]] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  16. def funcTyp(dom: E, codom: E): Option[E]
  17. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  18. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  19. def i1(typ: E, value: E): Option[E]
  20. def i2(typ: E, value: E): Option[E]
  21. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  22. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  23. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  24. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  25. def pairTyp(first: E, second: E): Option[E]

    non-dependent pair built from abstract methods.

  26. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  27. def toString(): String
    Definition Classes
    AnyRef → Any
  28. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  29. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  30. 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
  2. def [B](y: B): (ExprLang[E], B)
    Implicit
    This member is added by an implicit conversion from ExprLang[E] toArrowAssoc[ExprLang[E]] 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 AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd fromExprLang[E] to any2stringadd[ExprLang[E]]

Inherited by implicit conversion StringFormat fromExprLang[E] to StringFormat[ExprLang[E]]

Inherited by implicit conversion Ensuring fromExprLang[E] to Ensuring[ExprLang[E]]

Inherited by implicit conversion ArrowAssoc fromExprLang[E] to ArrowAssoc[ExprLang[E]]

Ungrouped