OAI/Computability/TypeSystem/Evaluation.lean
80 declarations, 0 contain sorry, 0 declared as axioms
Total observation operations. The minus lambda pack is provisional off the representable behaviors; the finite-bound theorem proves that the evaluator never takes that provisional branch.
- theorem
OAI.PureTypeSystem.ActualPlain.Node.extline 14 - abbrev
OAI.PureTypeSystem.ObservationValues.ActiveType.plainNodeline 25 - theorem
OAI.PureTypeSystem.ObservationValues.ActiveType.extline 28 - def
OAI.PureTypeSystem.ObservationValues.Value.plainline 34 - theorem
OAI.PureTypeSystem.ObservationValues.Value.plain_existsline 37 - def
OAI.PureTypeSystem.ObservationValues.Value.asPlainline 50 - theorem
OAI.PureTypeSystem.ObservationValues.Value.plain_asPlainline 53 - theorem
OAI.PureTypeSystem.ObservationValues.Value.asPlain_plainline 56 - theorem
OAI.PureTypeSystem.ObservationValues.Value.plus_existsline 61 - theorem
OAI.PureTypeSystem.ObservationValues.Value.minus_existsline 69 - def
OAI.PureTypeSystem.ObservationValues.Value.asPlusline 77 - def
OAI.PureTypeSystem.ObservationValues.Value.asMinusline 79 - theorem
OAI.PureTypeSystem.ObservationValues.Value.asPlus_specline 82 - theorem
OAI.PureTypeSystem.ObservationValues.Value.asMinus_specline 84 - def
OAI.PureTypeSystem.ObservationValues.ActualPlainKey.frameline 90 - def
OAI.PureTypeSystem.ObservationValues.ActualPlainKey.payloadline 95Source documentation
Decode a plain frame's unique optional domain coordinate.
noncomputable def payload {n : ActualPlain.Node Ω C} (a : ActualPlain.Key Ω C n) (p : (ActualPlain.schema hw).FrameParameters (ActualPlain.Space (hw := hw) hno (Base Ω)) a) : …Mentions: OAI.PureTypeSystem.ActualPlain.Node, OAI.PureTypeSystem.ActualPlain.Key, OAI.PureTypeSystem.ActualPlain.schema, OAI.PureTypeSystem.ActualPlain.Space, OAI.PureTypeSystem.ObservationValues.Base
- theorem
OAI.PureTypeSystem.ObservationValues.ActualPlainKey.payload_fitsline 102 - def
OAI.PureTypeSystem.ObservationValues.ActualPlainKey.parametersline 111Source documentation
Encode the matching typed plain payload without changing its tag.
noncomputable def parameters {n : ActualPlain.Node Ω C} (a : ActualPlain.Key Ω C n) (p : Option (RawValue (hw := hw) Ω C hno)) (hp : PayloadFits Ω C hno a.domain p) : …Mentions: OAI.PureTypeSystem.ActualPlain.Node, OAI.PureTypeSystem.ActualPlain.Key, OAI.PureTypeSystem.ObservationValues.RawValue, OAI.PureTypeSystem.ObservationValues.PayloadFits
- theorem
OAI.PureTypeSystem.ObservationValues.ActualPlainKey.payload_parametersline 125 - theorem
OAI.PureTypeSystem.ObservationValues.ActualPlainKey.payload_injectiveline 141 - theorem
OAI.PureTypeSystem.ObservationValues.ActualPlainKey.parameters_payloadline 149 - theorem
OAI.PureTypeSystem.ObservationValues.FrameKey.extline 159 - abbrev
OAI.PureTypeSystem.ObservationValues.FrameKey.plainKeyline 169 - theorem
OAI.PureTypeSystem.ObservationValues.FrameKey.free_targetline 174 - def
OAI.PureTypeSystem.ObservationValues.packMinusline 185Source documentation
A represented minus behavior is packed without changing any observation.
noncomputable def packMinus (t : FreeObservations.Table (Expr S) (PlainValue (hw := hw) Ω C hno) (Base Ω) …Mentions: OAI.PureTypeSystem.FreeObservations.Table, OAI.PureTypeSystem.Expr, OAI.PureTypeSystem.ObservationValues.PlainValue, OAI.PureTypeSystem.ObservationValues.Base
- theorem
OAI.PureTypeSystem.ObservationValues.packMinus_specline 191 - theorem
OAI.PureTypeSystem.ObservationValues.packMinus_stageline 199 - def
OAI.PureTypeSystem.ObservationValues.Gate.frameline 222 - theorem
OAI.PureTypeSystem.ObservationValues.Gate.argumentline 224 - theorem
OAI.PureTypeSystem.ObservationValues.Gate.payloadline 225 - theorem
OAI.PureTypeSystem.ObservationValues.Gate.plainline 227 - theorem
OAI.PureTypeSystem.ObservationValues.Gate.not_plainline 230 - theorem
OAI.PureTypeSystem.ObservationValues.Gate.uniqueline 233 - abbrev
OAI.PureTypeSystem.ObservationValues.LambdaActionline 237 - def
OAI.PureTypeSystem.ObservationValues.tagPlainline 241 - theorem
OAI.PureTypeSystem.ObservationValues.tagPlain_specline 245 - def
OAI.PureTypeSystem.ObservationValues.plainLambdaline 250Source documentation
The actual plain prefix operation, with the unique optional payload.
noncomputable def plainLambda (T : ActiveType Ω C) (hp : PlainLayer P C (Ω.profile T.type)) (act : LambdaAction (hw := hw) Ω C hno T) : Value (hw := hw) Ω C hno T.type := by …Mentions: OAI.PureTypeSystem.ObservationValues.ActiveType, OAI.PureTypeSystem.PlainLayer, OAI.PureTypeSystem.ObservationValues.LambdaAction, OAI.PureTypeSystem.ObservationValues.Value
- def
OAI.PureTypeSystem.ObservationValues.lambdaExitline 261Source documentation
The same gate is used for plus and minus exits; the opposite payload space differs, but the exact plain target tag is always retained.
noncomputable def lambdaExit {X : Type u} (decode : FreeObservations.Payload (PlainValue (hw := hw) Ω C hno) X → …Mentions: OAI.PureTypeSystem.FreeObservations.Payload, OAI.PureTypeSystem.ObservationValues.PlainValue
- def
OAI.PureTypeSystem.ObservationValues.plusContinueline 271 - def
OAI.PureTypeSystem.ObservationValues.minusContinueline 278 - def
OAI.PureTypeSystem.ObservationValues.plusLambdaline 285 - def
OAI.PureTypeSystem.ObservationValues.minusLambdaBehaviorline 295 - def
OAI.PureTypeSystem.ObservationValues.lambdaValueline 300 - def
OAI.PureTypeSystem.ObservationValues.FrameKey.plusParameterline 316 - def
OAI.PureTypeSystem.ObservationValues.FrameKey.minusParameterline 327 - theorem
OAI.PureTypeSystem.ObservationValues.FrameKey.plusPayload_parameterline 338 - theorem
OAI.PureTypeSystem.ObservationValues.FrameKey.minusPayload_parameterline 349 - def
OAI.PureTypeSystem.ObservationValues.exitValueline 361 - def
OAI.PureTypeSystem.ObservationValues.plainApplyline 368Source documentation
Plain application, separated to keep dependent prefix casts abstract.
noncomputable def plainApply (T : ActiveType Ω C) (hT : PlainLayer P C (Ω.profile T.type)) (v : Value (hw := hw) Ω C hno T.type) (a : FrameKey Ω C T) …Mentions: OAI.PureTypeSystem.ObservationValues.ActiveType, OAI.PureTypeSystem.PlainLayer, OAI.PureTypeSystem.ObservationValues.Value, OAI.PureTypeSystem.ObservationValues.FrameKey
- def
OAI.PureTypeSystem.ObservationValues.applyValueline 379Source documentation
Exact application: plain next, free continue slice, or checked exit.
noncomputable def applyValue (T : ActiveType Ω C) (v : Value (hw := hw) Ω C hno T.type) …
Mentions: OAI.PureTypeSystem.ObservationValues.ActiveType, OAI.PureTypeSystem.ObservationValues.Value
- abbrev
OAI.PureTypeSystem.ObservationValues.Environment.actualTypeline 414 - abbrev
OAI.PureTypeSystem.ObservationValues.Environment.activeTypeline 417 - abbrev
OAI.PureTypeSystem.ObservationValues.Environment.actualExpressionline 421 - theorem
OAI.PureTypeSystem.ObservationValues.Environment.type_convert_eqline 424 - theorem
OAI.PureTypeSystem.ObservationValues.Environment.expression_convert_eqline 430 - def
OAI.PureTypeSystem.ObservationValues.ProductInstance.ofFormationline 439 - def
OAI.PureTypeSystem.ObservationValues.ProductInstance.ofFunctionline 454 - theorem
OAI.PureTypeSystem.ObservationValues.ProductInstance.frame_domainline 461 - theorem
OAI.PureTypeSystem.ObservationValues.ProductInstance.frame_bodyline 464 - def
OAI.PureTypeSystem.ObservationValues.ProductInstance.frameEnvironmentline 467 - theorem
OAI.PureTypeSystem.ObservationValues.ProductInstance.frame_typeline 472 - def
OAI.PureTypeSystem.ObservationValues.ProductInstance.argumentFrameline 481Source documentation
A function's normalized argument frame, formed at the exact stored product, not at an independently chosen derivation of that product.
noncomputable def argumentFrame {T : ActiveType Ω C} (he : T.type = .pi t.domainNF t.bodyNF) {n : Expr S} (hn : Ω.HasType n t.domainNF) (ha : ActiveLayer P C (Ω.profile (t.targetNF n))) : FrameKey Ω C T where …Mentions: OAI.PureTypeSystem.ObservationValues.ActiveType, OAI.PureTypeSystem.Expr, OAI.PureTypeSystem.ActiveLayer, OAI.PureTypeSystem.ObservationValues.FrameKey
- theorem
OAI.PureTypeSystem.ObservationValues.ProductInstance.argumentFrame_typeline 504 - def
OAI.PureTypeSystem.ObservationValues.PayloadFits.valueline 530 - theorem
OAI.PureTypeSystem.ObservationValues.PayloadFits.value_specline 536 - structure
OAI.PureTypeSystem.ObservationValues.PreResultline 543 - def
OAI.PureTypeSystem.ObservationValues.PreResult.parameterline 550 - theorem
OAI.PureTypeSystem.ObservationValues.PreResult.parameter_fitsline 553 - def
OAI.PureTypeSystem.ObservationValues.PreResult.baseReadline 562Source documentation
The source base Read clause. For nonliteral expected types this extra coordinate is unused; no additional semantic assertion is made about it.
noncomputable def baseRead (h : HasType P Γ M T) (v : ActiveLayer P C (Ω.profile (T.subst e.images).normalForm) → Value (hw := hw) Ω C hno (T.subst e.images).normalForm) : …Mentions: OAI.PureTypeSystem.HasType, OAI.PureTypeSystem.ActiveLayer, OAI.PureTypeSystem.ObservationValues.Value
- def
OAI.PureTypeSystem.ObservationValues.PreResult.baseResultline 574 - def
OAI.PureTypeSystem.ObservationValues.PreResult.lookupline 579 - def
OAI.PureTypeSystem.ObservationValues.PreResult.sortline 590 - abbrev
OAI.PureTypeSystem.ObservationValues.PreResult.productDataline 596 - def
OAI.PureTypeSystem.ObservationValues.PreResult.productCandidateline 601 - def
OAI.PureTypeSystem.ObservationValues.PreResult.productline 611 - def
OAI.PureTypeSystem.ObservationValues.PreResult.abstractionActionline 627 - def
OAI.PureTypeSystem.ObservationValues.PreResult.abstractionline 643 - def
OAI.PureTypeSystem.ObservationValues.PreResult.applicationValueline 649 - def
OAI.PureTypeSystem.ObservationValues.PreResult.applicationline 674 - def
OAI.PureTypeSystem.ObservationValues.preEvaluateline 686Source documentation
Structural recursion retaining every stored role choice. The annotation child at a lambda is immaterial to its observation value, but is retained in the input tree for the fundamental normalization lemma. Representability follows from the uniform finite-bound theorem.
noncomputable def preEvaluate {Γ : List (Expr S)} {M T : Expr S} (t : TypingTree P Γ M T) : ∀ e : Environment (hw := hw) Ω C hno Γ, PreResult Ω C hno M T e := by …Mentions: OAI.PureTypeSystem.Expr, OAI.PureTypeSystem.TypingTree, OAI.PureTypeSystem.ObservationValues.Environment, OAI.PureTypeSystem.ObservationValues.PreResult