proposition: Lemma mm2_step_sim x y : mm2_step M x y -> mm2_step M' (shift_state x) (shift_state y).
proof: Proof. move=> > [] instr [Hinstr Hxy]. case: Hxy Hinstr. all: move=> > /= /[dup] /mm2_instr_at_pos -> /instr_at' H'instr; (eexists; by split; [eassumption|constructor]). Qed.
imports: List PeanoNat Lia Relations.Relation_Operators Relations.Operators_Properties Undecidability.MinskyMachines.MM2 Undecidability.MinskyMachines.Util.MM2_facts ssreflect ssrbool ssrfun