Inductive L_ind (P : pcp Sigma') : list Sigma -> pcp Sigma' -> Prop :=
| L_ind_stop x y : (x,y) el P -> L_ind P (embed_string x ++ [#] ++ embed_string (rev y)) [(x,y)]
| L_ind_start : L_ind P [Start] []
| L_ind_step x y z A : (x, y) el P -> L_ind P z A -> L_ind P (embed_string x ++ z ++ embed_string (rev y)) ((x,y)::A).
Hint Constructors L_ind.

(* Specifications: *)
Lemma L_ind_to x A :
L_ind P x A -> rewt (f P) [Start] x.
Lemma Start_embed_string x :
~ Start el embed_string x.