Documentation

Acmoi.Exercise1_14

axiom u :
def α :
Equations
def q0 :
Fin 2
Equations
def q1 :
Fin 2
Equations
noncomputable def TwoState (z : α) :
DFA α (Fin 2)
Equations
def uniquely_accepts {τ : Type} (M : DFA α τ) (s : List α) :
Equations
theorem TwoState_stay_q0 {a : α} {z : α} (h : (TwoState z).eval [a] = q0) :
a = z
theorem TwoState_stay_q1 (z : α) (x : List α) :
(TwoState z).evalFrom q1 x = q1
theorem TwoState_accepts_repeat {z : α} {n : } :
(TwoState z).eval (List.replicate n z) = q0
theorem either_or {a : Fin 2} (h : a 1) :
a = 0
theorem either_or_strong {a : Fin 2} (not_zero : a q0) :
a = q1
theorem TwoState_no_return_to_q0 {q : Fin 2} {z : α} {x : List α} (h : (TwoState z).evalFrom q x = q0) :
q = q0
theorem TwoState_accepts_only_starts_z {a : α} {z : α} {y : List α} (hq0 : (TwoState z).eval (a :: y) = q0) :
a = z
theorem TwoState_accepts_only_repeat {z : α} {x : List α} :
(TwoState z).eval x = q0x = List.replicate x.length z