Notation Power := (Pow A leA).Notation Lex_Exp := (lex_exp A leA).Notation ltl := (Ltl A leA).Notation Descl := (Desc A leA).Notation List := (list A).Notation "<< x , y >>" := (exist Descl x y) (at level 0, x, y at level 100).

Lemma right_prefix : forall x y z : List, ltl x (y ++ z) -> ltl x y \/ (exists y' : List, x = y ++ y' /\ ltl y' z).