fact: Definition trans : Fin.t (S num_states) * option bool -> option (Fin.t (S num_states) * option bool * KOSBTM.move) := fun '(q, o) => Fin.caseS' q (fun _ => _) (Some (conv_state (TM.start M), None, KOSBTM.Nmove)) (fun q => if TM.halt (g q) then None else let '(q', vec) := TM.trans M (g q, [| o |]) in let '(w, m) := Vector.hd vec in Some (conv_state q', w, conv_move m) ).
imports: Undecidability.Shared.Libs.PSL.FiniteTypes.FinTypes Undecidability.Shared.Libs.PSL.Vectors.Vectors