OAI/Computability/SpaceSimulation/Stack/PortIO.lean
11 declarations, 0 contain sorry, 0 declared as axioms
I/O adaptors. Scan the extra read-only tape into a stack; return the heads home. Terminal values of fixed bit bound can be returned directly in finite control.
- def
OAI.Fifths.SM.inputSeekline 14 - def
OAI.Fifths.SM.endStepline 17 - def
OAI.Fifths.SM.readStepline 23 - def
OAI.Fifths.SM.loaderline 30 - def
OAI.Fifths.SM.justline 33 - theorem
OAI.Fifths.SM.just_okline 36 - theorem
OAI.Fifths.SM.loader_endline 41 - theorem
OAI.Fifths.SM.loader_startline 84 - theorem
OAI.Fifths.SM.exec_loaderline 138 - def
OAI.Fifths.SM.understandline 151Source documentation
The (fixed) program is specialized to a maximum length.
def understand (k : K) : ℕ → (List Bool → Y) → SM X J K Y | 0,d => pure (d []) | n+1,d => (pop k).bind fun | none => pure (d []) | some b => understand k n (fun l => d (b :: l)) -- Zero length when trivial case, get empty; also restore to empty.Mentions: OAI.Fifths.SM, OAI.Fifths.SM.pure, OAI.Fifths.SM.pop, OAI.Fifths.SM.bind
- theorem
OAI.Fifths.SM.exec_understandline 158Source comment
Zero length when trivial case, get empty; also restore to empty.theorem exec_understand {i : Inputs X J} {s : Store J K} {B} (k : K) (n : ℕ) (d : List Bool → Y) (o : s.ok B) (h : (s.st k).length ≤ n) : (understand k n d).Exec i B s (s.set k []) (d (s.st k)) := by …Mentions: OAI.Fifths.Inputs, OAI.Fifths.Store, OAI.Fifths.SM.understand, OAI.Fifths.SM.Exec