Section CFGs.
Global Instance rewtTrans R :
PreOrder (rewt R).
Global Instance rewrite_proper R :
Proper (rewt R ==> rewt R ==> rewt R) (@app sig).
Global Instance subrel R :
subrelation (rew_cfg R) (rewt R).
Definition sym_G (G : cfg) :=
startsym G :: flat_map (fun '(a, x) => a :: x) (rules G).

Lemma sym_G_rewt x G y :
x <<= sym_G G -> rewt G x y -> y <<= sym_G G.