Term model: tensors are ITerms; extensional equality is IRed-joinability
(confluence is IRed_confluence). Combinators B/C/W are SKI encodings so
dup/swap/comp β-laws are theorems, not axioms.
@[reducible, inline]
Equations
Instances For
Instances For
Equations
Instances For
W = S S (K I).
Equations
Instances For
C = S (S (K B) S) (K K).
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- ISAR.denot (ISAR.ITerm.var n) = ISAR.t_var n
- ISAR.denot ISAR.ITerm.norm = ISAR.t_norm
- ISAR.denot ISAR.ITerm.konst = ISAR.t_konst
- ISAR.denot ISAR.ITerm.dup = ISAR.t_dup
- ISAR.denot ISAR.ITerm.swap = ISAR.t_swap
- ISAR.denot ISAR.ITerm.comp = ISAR.t_comp
- ISAR.denot ISAR.ITerm.sₛ = ISAR.t_sₛ
- ISAR.denot (f · x_1) = ISAR.t_app (ISAR.denot f) (ISAR.denot x_1)
Instances For
@[implicit_reducible]
Equations
- ISAR.tensorSetoid = { r := ISAR.ExtEq, iseqv := ISAR.tensorSetoid._proof_1 }
Equations
Instances For
The final semantic map from Invariant Layer quotient classes into extensional tensors.
Equations
- ISAR.InvariantLayer.toExtTensor = Quotient.lift (fun (t : ISAR.ISKSubtype) => ISAR.denot_ext t.val) ⋯
Instances For
@[implicit_reducible]
Equations
- ISAR.lambdaSetoid = { r := ISAR.LEq, iseqv := ISAR.lambdaSetoid._proof_1 }
The operational quotient of lambda terms.
Equations
Instances For
Equations
Instances For
The semantic map from the operational quotient of lambda terms into extensional tensors.
Equations
- ISAR.LambdaQuotient.toExtTensor = Quotient.lift (fun (t : ISAR.LTerm) => ISAR.lambda_denot_ext t) ⋯
Instances For
Application of quotient classes in LambdaQuotient.
Equations
- t.app u = Quotient.lift₂ (fun (t u : ISAR.LTerm) => Quotient.mk ISAR.lambdaSetoid (ISAR.lapp_raw t u)) ISAR.LambdaQuotient.app._proof_1 t u
Instances For
Lifted application in ExtTensor.
Equations
- ISAR.t_app_ext t u = Quotient.lift₂ (fun (t u : ISAR.TensorSpace) => Quotient.mk ISAR.tensorSetoid (ISAR.t_app t u)) ISAR.t_app_ext._proof_1 t u
Instances For
Compilation is a homomorphism for application up to tensor extensional equivalence.
theorem
ISAR.separation_lemma
{A B : TensorSpace}
(x y : TensorSpace)
(h_neq : ¬ExtEq (t_app (t_app A x) y) (t_app (t_app B x) y))
: