OAI/Combinatorics/TwoWayAutomata/TransitionBridge.lean
16 declarations, 0 contain sorry, 0 declared as axioms
- def
OAI.TwoWayComplementation.CompanionBridge.encodeSymbolline 12Source documentation
The encodings have the same two distinct endmarkers.
def encodeSymbol {Alpha : Type*} : Symbol Alpha → Fin 2 ⊕ Alpha | .left => .inl 0 | .letter a => .inr a | .right => .inl 1 - theorem
OAI.TwoWayComplementation.CompanionBridge.encode_scannedline 17 - def
OAI.TwoWayComplementation.CompanionBridge.encodeMoveline 22 - def
OAI.TwoWayComplementation.CompanionBridge.decodeMoveline 27 - theorem
OAI.TwoWayComplementation.CompanionBridge.encode_decodeline 30 - theorem
OAI.TwoWayComplementation.CompanionBridge.encodeMove_injectiveline 33 - theorem
OAI.TwoWayComplementation.CompanionBridge.move_rel_iffline 37 - def
OAI.TwoWayComplementation.CompanionBridge.Guardline 42Source documentation
A marker-outward transition is never usable on this bounded tape.
def Guard {Alpha : Type*} (a : Symbol Alpha) (m : Move) : Prop := … - theorem
OAI.TwoWayComplementation.CompanionBridge.guard_of_legal_moveline 45 - def
OAI.TwoWayComplementation.CompanionBridge.selectline 63Source documentation
Option-valued form of a partial transition. Only the single allowed element is selected.
noncomputable def select {X : Type*} (S : Set X) : Option X := by … - theorem
OAI.TwoWayComplementation.CompanionBridge.select_eq_some_iffline 67 - def
OAI.TwoWayComplementation.CompanionBridge.convertedTransitionsline 78Source documentation
Recode moves and remove only impossible outward marker transitions.
def convertedTransitions {Alpha : Type*} {s : ℕ} (A : TwoNFA Alpha (Fin s)) (q : Fin s) (a : Symbol Alpha) : Set (Fin s × Move) := …Mentions: OAI.TwoWayComplementation.TwoNFA
- theorem
OAI.TwoWayComplementation.CompanionBridge.convertedTransitions_subsingletonline 82 - def
OAI.TwoWayComplementation.CompanionBridge.toDMachineline 93Source documentation
A deterministic machine with exactly the same states and finite accepting runs. No halting or totality condition is introduced.
noncomputable def toDMachine {Alpha : Type*} {s : ℕ} (A : TwoNFA Alpha (Fin s)) (hA : A.Deterministic) : DMachine Alpha s where …Mentions: OAI.TwoWayComplementation.TwoNFA
- theorem
OAI.TwoWayComplementation.CompanionBridge.toDMachine_stepline 105 - theorem
OAI.TwoWayComplementation.CompanionBridge.toDMachine_acceptsline 123