(** ** TM to SRH' *)

(* Specifications: *)
Lemma mk_srconf_state:
forall (sig : finType) (M : sTM sig) (x : conf M) (x0 : states M), state x0 el mk_srconf x -> x0 = cstate x.
Lemma halt_SRH' : Halt ⪯ SRH'.
(** ** SRH' to SRH *)
Lemma rewt_R_fresh (R : SRS) (x : string) (A l : list symbol) :
rewt (R ++ map (fun a : symbol => [a] / [fresh (sym R ++ x)]) A) x l -> ~ fresh (sym R ++ x) el l -> rewt R x l.
Lemma SRH'_SRH : SRH' ⪯ SRH.
Lemma Halt_SRH : Halt ⪯ SRH.