Hint Rewrite mapo_app : list.
Section TrivialLift.
Variable Gamma' : finType.
Variable Gamma : finType.
Variable f : Gamma' -> Gamma.
Variable g : Gamma -> option Gamma'.
Hypothesis inv : forall x, g (f x) = Some x.
Hypothesis tight : forall x y, g x = Some y -> f y = x.
Definition up (G : cfg Gamma') : cfg Gamma :=
(f (startsym G), map (fun '(x,A) => (f x, map f A) ) (rules G)).

Lemma up_char2 G x y :
rewt (up G) x y -> rewt G (mapo g x) (mapo g y).