OAI/Computability/FiniteCompiler/Control.lean
127 declarations, 0 contain sorry, 0 declared as axioms
Finite control and bounded compiler orbit normalization.
- inductive
OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.Headline 13 - instance
OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.(instance at line 17)line 17 - abbrev
OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.Sectorline 19 - def
OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.emitline 23Source documentation
Exactly the cleanup letter prescribed in the finite compiler. Output marks on nonanchors are deliberately ignored even on dirty configurations.
def emit (c : Base S × Tag S Γ) : Option S := …
Mentions: OAI.FiniteAlgebraicEnvelopes.Compiler.Base, OAI.FiniteAlgebraicEnvelopes.Compiler.Tag
- def
OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.letterline 28 - def
OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.outputline 30 - def
OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.stepline 35Source documentation
The left sweep deletes every consumed tagged cell, and only marks on anchors produce a clean right-hand anchor. The boundary test is literal.
def step (blank : Γ) (v : Sector S Γ) : Option (Sector S Γ) := …
Mentions: OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.Sector
- def
OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.Stepline 42 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.deterministicline 44 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.output_nilline 48 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.output_appendline 50 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.output_singletonline 54 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.sweepline 60Source documentation
Each consumed cell is emitted before all previously emitted cells. This proves the leftward cleanup's order on arbitrary—not only clean—data.
theorem sweep (blank : Γ) (l r : List (Base S × Tag S Γ)) (a b : Bool) : ReflTransGen (Step blank) ⟨l,.cleanup,r,a,b⟩ ⟨[],.cleanup,output blank l.reverse ++ r,a,b⟩ := by …Mentions: OAI.FiniteAlgebraicEnvelopes.Compiler.Base, OAI.FiniteAlgebraicEnvelopes.Compiler.Tag, OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.Step, OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.output
- def
OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.normalline 72Source documentation
Normalization of a cleanup head, with or without a left boundary.
def normal (blank : Γ) (v : Sector S Γ) : Sector S Γ := …
Mentions: OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.Sector
- theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.normal_reachedline 78 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.normal_terminalline 89 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.normal_invariantline 96Source documentation
Cleanup normal forms are invariant under either direction of any local cleanup equation, including in dirty sectors with missing boundaries.
theorem normal_invariant (blank : Γ) {v w : Sector S Γ} (h : EqvGen (Step blank) v w) : normal blank v = normal blank w := by …Mentions: OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.Sector, OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.Step, OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.normal
- theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.emit_anchorViewline 114Source documentation
Cleanup forgets empty marks, not anchor order.
theorem emit_anchorView (l : List (Base S × Tag S Γ)) : l.filterMap emit = (Simulator.anchorView l).filterMap id := by …Mentions: OAI.FiniteAlgebraicEnvelopes.Compiler.Base, OAI.FiniteAlgebraicEnvelopes.Compiler.Tag, OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.emit, OAI.FiniteAlgebraicEnvelopes.Compiler.Simulator.anchorView
- theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.emit_returnedline 122 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.successline 129Source documentation
Exact successful cleanup, including empty returned strings.
theorem success (blank : Γ) (l : List (Base S × Tag S Γ)) (out : List S) (n : ℕ) (h : Simulator.anchorView l = out.map some ++ List.replicate n none) : ReflTransGen (Step blank) ⟨l.reverse,.cleanup,[],true,true⟩ ⟨[],.raw,out.map (letter blank),true,true⟩ := by …Mentions: OAI.FiniteAlgebraicEnvelopes.Compiler.Base, OAI.FiniteAlgebraicEnvelopes.Compiler.Tag, OAI.FiniteAlgebraicEnvelopes.Compiler.Simulator.anchorView, OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.Step, OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.letter
- def
OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.gradeline 136 - def
OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.cellsGradeline 141 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.cellsGrade_appendline 143 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.cellsGrade_reverseline 146 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.output_grade_leline 151Source documentation
Grade is nonincreasing for EVERY tagged cleanup cell. Workspace marks do not emit letters, so grade-zero workspace can never create positive grade.
theorem output_grade_le (blank : Γ) (l : List (Base S × Tag S Γ)) : cellsGrade (output blank l) ≤ cellsGrade l := by …Mentions: OAI.FiniteAlgebraicEnvelopes.Compiler.Base, OAI.FiniteAlgebraicEnvelopes.Compiler.Tag, OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.cellsGrade, OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.output
- def
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.boundedListsline 171Source documentation
An explicit bounded list enumeration, used only for finite internal search. This bound counts cells, not grade, and thus never admits quota insertion.
def boundedLists (α : Type*) [Fintype α] [DecidableEq α] : ℕ → Finset (List α) | 0 => {[]} | n+1 => {[]} ∪ ((Finset.univ : Finset α) ×ˢ boundedLists α n).image (fun p => p.1::p.2) - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.mem_boundedListsline 175 - def
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.boundedSectorsline 188Source documentation
The finite search universe consists of actual list-zipper sectors.
def boundedSectors (k : ℕ) : Finset (Sector H B T) := …
- theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.mem_boundedSectorsline 193 - def
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.searchUniverseline 200Source documentation
Filtering by bases and boundary flags gives exactly the source's fixed internal-search state space. This is computable from the literal sector.
def searchUniverse (v : Sector H B T) : Finset (Sector H B T) := …
- theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.skeleton_lengthline 205 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.mem_universeline 210 - abbrev
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.Fixedline 217 - instance
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.fixedFintypeline 219 - def
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.fixedSelfline 222 - def
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.fixedStepline 224 - instance
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.fixedStepDecidableline 227 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.connected_skeletonline 231 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.fixedConnected_iffline 241Source documentation
A weak path with fixed baselines lifts to the finite search universe.
theorem fixedConnected_iff (table : Table H B T) (v : Sector H B T) (a b : Fixed v) : EqvGen (fixedStep table v) a b ↔ EqvGen (Step table) a.val b.val := by …Mentions: OAI.FiniteAlgebraicEnvelopes.Compiler.Table, OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.Sector, OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.Fixed, OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.fixedStep, OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.Step
- def
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.connectedDecisionline 276Source documentation
Operational component equality has a finite decision procedure. Its only primitives are the finite table, tagged cells, and bounded finite search.
def connectedDecision (table : Table H B T) (v : Sector H B T) (w : Fixed v) : Bool := …
Mentions: OAI.FiniteAlgebraicEnvelopes.Compiler.Table, OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.Sector, OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.Fixed
- theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.connectedDecision_eq_trueline 279 - abbrev
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.MachineSectorline 292 - abbrev
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.Cfgline 293 - def
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.embedline 296Source documentation
The fresh handoff is one state, not two copies joined by an artificial edge.
def embed (v : MachineSector S Γ Q) : Cfg S Γ Q := …
Mentions: OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.MachineSector, OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.Cfg
- def
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.projectline 301 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.project_embedline 305 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.embed_injectiveline 309 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.embed_activeline 313 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.embed_projectline 317 - def
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.MachineRelline 327 - def
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.Stepline 330 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.machine_deterministicline 333 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.deterministicline 338 - abbrev
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.basesline 341 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.embed_basesline 345 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.machine_basesline 349 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.entries_uniqueline 355Source documentation
The manuscript's uniqueness of entries, now for the concrete copy/run/read table, not for an unspecified simulated relation.
theorem entries_unique {a b : Validator.Sector S Γ} (ha : Validator.Entry A.blank a) (hb : Validator.Entry A.blank b) (h : EqvGen (Step A M) (.inl a) (.inl b)) : a = b := …Mentions: OAI.FiniteAlgebraicEnvelopes.Compiler.Validator.Sector, OAI.FiniteAlgebraicEnvelopes.Compiler.Validator.Entry, OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.Step
- theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.embed_stepline 361 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.embed_runline 365 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.validator_runline 372 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.active_stepline 379 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.path_decompositionline 387Source documentation
A path retains its actual simulator suffix after the unique validation handoff. This rules out a dirty intermediate state being treated as input.
theorem path_decomposition {a : Validator.Sector S Γ} {b : Cfg S Γ Q} (h : ReflTransGen (Step A M) (.inl a) b) : (∃ v, b = .inl v ∧ ReflTransGen (Validator.Step A.blank) a v) ∨ ∃ v u, ReflTransGen (Validator.Step A.blank) a v ∧ v.head = .start ∧ b = embed u ∧ ReflTransGen (Scan.Step (Simulator.table A M)) (project (.inl v)) u := by …Mentions: OAI.FiniteAlgebraicEnvelopes.Compiler.Validator.Sector, OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.Cfg, OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.Step, OAI.FiniteAlgebraicEnvelopes.Compiler.Validator.Step, OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.embed, OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.Step, OAI.FiniteAlgebraicEnvelopes.Compiler.Simulator.table, OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.project
- theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.ok_terminalline 406 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.ok_uniqueline 420Source documentation
Arbitrary dirty accepting sectors are unique within a weak component.
theorem ok_unique {u v : MachineSector S Γ Q} (hu : u.head = .ok) (hv : v.head = .ok) (h : EqvGen (Step A M) (embed u) (embed v)) : u = v := …Mentions: OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.MachineSector, OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.Step, OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.embed
- def
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.cleanEntryline 430Source documentation
The literal entry and handoff of compiler-clean-entry.
def cleanEntry (blank : Γ) (x y : List S) (s : ℕ) : Validator.Sector S Γ := …
Mentions: OAI.FiniteAlgebraicEnvelopes.Compiler.Validator.Sector
- def
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.handoffline 435 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.cleanEntry_entryline 441 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.cleanEntry_reachesline 444 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.validator_start_terminalline 448 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.handoff_uniqueline 453 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.project_handoffline 465 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.accepting_entry_runsline 474Source documentation
Clean entries that meet an accepting internal sector really passed the validator and then ran this very machine. No cleanliness is assumed of the sector used for finding its weak component.
theorem accepting_entry_runs {a : Validator.Sector S Γ} {b : MachineSector S Γ Q} (ha : Validator.Entry A.blank a) (hb : b.head = .ok) (h : EqvGen (Step A M) (.inl a) (embed b)) : ∃ x y s, a = cleanEntry A.blank x y s ∧ ReflTransGen (Scan.Step (Simulator.table A M)) ⟨(Simulator.body A [] x [] y [] s).reverse,.start,[],true,true⟩ b := by …Mentions: OAI.FiniteAlgebraicEnvelopes.Compiler.Validator.Sector, OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.MachineSector, OAI.FiniteAlgebraicEnvelopes.Compiler.Validator.Entry, OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.Step, OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.embed, OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.cleanEntry, OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.Step, OAI.FiniteAlgebraicEnvelopes.Compiler.Simulator.table, OAI.FiniteAlgebraicEnvelopes.Compiler.Simulator.body
- theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.accepting_entry_soundline 495Source documentation
Concrete soundness part of Lemma compiler-components: true halted output, the exact length bound, AND the mandated literal cleanup word. Quota insufficiency is ruled out by the previously proved rejection theorem.
theorem accepting_entry_sound (hdecode : ∀ g a, A.output g = some a → g = A.input a) {a : Validator.Sector S Γ} {b : MachineSector S Γ Q} (ha : Validator.Entry A.blank a) (hb : b.head = .ok) (h : EqvGen (Step A M) (.inl a) (embed b)) : ∃ x y s n c out, ∃ (result : List (Base S × Tag S Γ)), a = cleanEntry A.blank x y s ∧ s = x.length+y.length+n+1 ∧ ReflTransGen (Simulator.TapeStep M) (Simulator.pad A (Simulator.initialTape A M (x++y)) (n+1)) c ∧ Simulator.Halted A M c ∧ Simulator.Returns A c out ∧ out.length ≤ x.length+y.length ∧ b = ⟨result.reverse,.ok,[],true,true⟩ ∧ ReflTransGen (Cleanup.Step A.blank) ⟨result.reverse,.cleanup,[],true,true⟩ …Mentions: OAI.FiniteAlgebraicEnvelopes.Compiler.Validator.Sector, OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.MachineSector, OAI.FiniteAlgebraicEnvelopes.Compiler.Validator.Entry, OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.Step, OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.embed, OAI.FiniteAlgebraicEnvelopes.Compiler.Base, OAI.FiniteAlgebraicEnvelopes.Compiler.Tag, OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.cleanEntry, OAI.FiniteAlgebraicEnvelopes.Compiler.Simulator.TapeStep, OAI.FiniteAlgebraicEnvelopes.Compiler.Simulator.pad, OAI.FiniteAlgebraicEnvelopes.Compiler.Simulator.initialTape, OAI.FiniteAlgebraicEnvelopes.Compiler.Simulator.Halted, OAI.FiniteAlgebraicEnvelopes.Compiler.Simulator.Returns, OAI.FiniteAlgebraicEnvelopes.Compiler.Cleanup.Step
- theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Compiled.clean_successline 516Source documentation
Conversely an actual finite halted computation with the required output bound has some quota and gives entry-to-ok reachability and exact cleanup.
theorem clean_success (x y out : List S) (c : Simulator.Tape (S := S) (Γ := Γ) (Q := Q)) …Mentions: OAI.FiniteAlgebraicEnvelopes.Compiler.Simulator.Tape
- instance
OAI.FiniteAlgebraicEnvelopes.Compiler.Validator.(instance at line 540)line 540 - def
OAI.FiniteAlgebraicEnvelopes.Compiler.Validator.toScanline 543 - def
OAI.FiniteAlgebraicEnvelopes.Compiler.Validator.ofScanline 546 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Validator.toScan_ofScanline 549 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Validator.ofScan_toScanline 551 - def
OAI.FiniteAlgebraicEnvelopes.Compiler.Validator.tableline 556Source documentation
The displayed validator equations as an executable finite scan table.
def table : Table Head (Base S) (Tag S Γ) where …
Mentions: OAI.FiniteAlgebraicEnvelopes.Compiler.Table, OAI.FiniteAlgebraicEnvelopes.Compiler.Validator.Head, OAI.FiniteAlgebraicEnvelopes.Compiler.Base, OAI.FiniteAlgebraicEnvelopes.Compiler.Tag
- theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Validator.step_toScanline 577 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Validator.step_ofScanline 581 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Validator.step_iff_scanline 646 - instance
OAI.FiniteAlgebraicEnvelopes.Compiler.Validator.stepDecidableline 650 - def
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.mapHeadline 660 - def
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.mapInstructionline 663 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.skeleton_mapHeadline 666 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.mapHead_injectiveline 669 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.step_mapHeadline 680Source documentation
A literal relabeling of finite control commutes with one scan step. Only agreement at the current head is needed, permitting fused control tables.
theorem step_mapHead (f : H → H') (t : Table H B T) (t' : Table H' B T) (v : Sector H B T) (hd : t'.direction (f v.head) = t.direction v.head) (hc : ∀ b a, t'.cell (f v.head) b a = (t.cell v.head b a).map (mapInstruction f)) (hb : t'.boundary (f v.head) = (t.boundary v.head).map f) : step t' (mapHead f v) = (step t v).map (mapHead f) := by …Mentions: OAI.FiniteAlgebraicEnvelopes.Compiler.Table, OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.Sector, OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.mapInstruction, OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.step, OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.mapHead
- inductive
OAI.FiniteAlgebraicEnvelopes.Compiler.Control.Headline 719Source documentation
Finite internal-head alphabet, with a single fresh handoff/start state.
inductive Head (S Q : Type*) | initial | left | right | workspace | suffix | machine : Simulator.Head S Q → Head S Q deriving DecidableEq, Fintype
Mentions: OAI.FiniteAlgebraicEnvelopes.Compiler.Control.machine, OAI.FiniteAlgebraicEnvelopes.Compiler.Simulator.Head
- def
OAI.FiniteAlgebraicEnvelopes.Compiler.Control.validatorHeadline 724 - def
OAI.FiniteAlgebraicEnvelopes.Compiler.Control.toValidatorline 732 - abbrev
OAI.FiniteAlgebraicEnvelopes.Compiler.Control.Sectorline 740 - def
OAI.FiniteAlgebraicEnvelopes.Compiler.Control.validatorline 742 - def
OAI.FiniteAlgebraicEnvelopes.Compiler.Control.machineline 745 - def
OAI.FiniteAlgebraicEnvelopes.Compiler.Control.toCfgline 748 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Control.cfg_validatorline 757 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Control.cfg_machineline 760 - def
OAI.FiniteAlgebraicEnvelopes.Compiler.Control.tableline 767Source documentation
The literal finite union of validation and simulation equations.
def table : Table (Head S Q) (Base S) (Tag S Γ) where …
Mentions: OAI.FiniteAlgebraicEnvelopes.Compiler.Table, OAI.FiniteAlgebraicEnvelopes.Compiler.Control.Head, OAI.FiniteAlgebraicEnvelopes.Compiler.Base, OAI.FiniteAlgebraicEnvelopes.Compiler.Tag
- theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Control.step_machineline 784 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Control.step_validatorline 791 - def
OAI.FiniteAlgebraicEnvelopes.Compiler.Control.ofCfgline 805 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Control.ofCfg_embedline 809 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Control.ofCfg_toCfgline 814 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Control.cfg_injectiveline 818 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Control.sector_casesline 821 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Control.validator_stepline 836 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Control.machine_stepline 842 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Control.cfg_stepline 848 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Control.ofCfg_stepline 862 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Control.cfg_connectedline 871 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Control.ofCfg_runsline 879 - def
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.literalComponentline 894Source documentation
Literal configurations, rather than an oracle for connectivity, returned by exhaustive search on the fixed finite base skeleton.
def literalComponent (table : Table H B T) (v : Sector H B T) : Finset (Sector H B T) := …
Mentions: OAI.FiniteAlgebraicEnvelopes.Compiler.Table, OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.Sector
- theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.mem_literalComponentline 897 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.literalComponent_nonemptyline 909 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.literalComponent_eqline 913 - def
OAI.FiniteAlgebraicEnvelopes.Compiler.prioritySetline 926Source documentation
The priority order in source compiler-normalization: entry first, success second, and arbitrary component member only when neither is present.
def prioritySet (P Q : α → Prop) [DecidablePred P] [DecidablePred Q] (s : Finset α) : Finset α := …
- theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.prioritySet_subsetline 930 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.prioritySet_nonemptyline 938 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.prioritySet_firstline 945 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.prioritySet_secondline 953 - def
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.representativeline 973 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.representative_memline 977 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.representative_connectedline 981 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.representative_eqline 986 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.representative_firstline 991 - theorem
OAI.FiniteAlgebraicEnvelopes.Compiler.Scan.representative_secondline 996