java.lang.Object
java.lang.Record
org.aya.core.term.CoeTerm
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.aya.guest0x0.cubical.Restr.TermLike
org.aya.guest0x0.cubical.Restr.TermLike.Factory<T>Nested classes/interfaces inherited from interface org.aya.core.term.Term
Term.Matching, Term.Param -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic @NotNull LamTermcover(LamTerm.Param x, Term.Param A, Term B, Term arg, Term r) For parameter and variable names, see Carlo Angiuli's PhD thesis, page 160.@NotNull CoeTermdescent(@NotNull UnaryOperator<Term> f, @NotNull UnaryOperator<Pat> g) Descending an operation to the term AST.final booleanIndicates whether some other object is "equal to" this one.@NotNull Termfamily()final inthashCode()Returns a hash code value for this object.@NotNull CoeTerm@NotNull Termr()Returns the value of therrecord component.@NotNull CoeTerm@NotNull Terms()Returns the value of thesrecord component.final StringtoString()Returns a string representation of this record class.@NotNull Termtype()Returns the value of thetyperecord component.@NotNull CoeTermMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.aya.generic.AyaDocile
debuggerOnlyToDocMethods inherited from interface org.aya.guest0x0.cubical.Restr.TermLike
asFormulaMethods inherited from interface org.aya.core.term.Term
computeType, findUsages, freezeHoles, lift, normalize, rename, scopeCheck, subst, subst, subst, subst, toDoc
-
Constructor Details
-
CoeTerm
Creates an instance of aCoeTermrecord class.- Parameters:
type- the value for thetyperecord componentr- the value for therrecord components- the value for thesrecord component
-
-
Method Details
-
update
-
descent
@NotNull public @NotNull CoeTerm descent(@NotNull @NotNull UnaryOperator<Term> f, @NotNull @NotNull UnaryOperator<Pat> g) Description copied from interface:TermDescending an operation to the term AST. NOTE: Currently we require the operation `f` to preserve:,invalid @link
StructCallDataCall,SortTerm,Shaped.Applicable. -
inverse
-
cover
@NotNull public static @NotNull LamTerm cover(LamTerm.Param x, Term.Param A, Term B, Term arg, Term r) For parameter and variable names, see Carlo Angiuli's PhD thesis, page 160.- x ∈ FV(A.type()), x ∈ FV(B)
- A.ref() ∈ FV(B)
- Returns:
\x : A.type() => B[coe(r, x, A, arg) / A.ref()]
-
recoe
-
family
-
toString
Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components. -
hashCode
public final int hashCode()Returns a hash code value for this object. The value is derived from the hash code of each of the record components. -
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared withObjects::equals(Object,Object). -
type
Returns the value of thetyperecord component.- Returns:
- the value of the
typerecord component
-
r
Returns the value of therrecord component.- Returns:
- the value of the
rrecord component
-
s
Returns the value of thesrecord component.- Returns:
- the value of the
srecord component
-