fact: Fixpoint knowsFirstSymbols {n' : nat} (readSymbols : Vector.t (option sig) n') (tps : list (tape sig)) {struct readSymbols} : Prop := match readSymbols, tps with | Vector.nil _, nil => True /\ True /\ True | Vector.nil _, _::_ => True /\ True | x ::: readSymbols, nil => True | x ::: readSymbols', tp :: tps' => current tp = x /\ knowsFirstSymbols readSymbols' tps' end.
imports: Undecidability.TM.Basic.Mono Undecidability.TM.Combinators.Combinators Undecidability.TM.Code.Code Undecidability.TM.Single.EncodeTapes Undecidability.TM.Compound(TMTac MoveToSymbol Multi Shift)