proposition: Lemma one_eq_app : one x ++ xs = ys ++ zs -> (exists qs, ys = x :: qs /\ xs = qs ++ zs) \/ (ys = nil /\ zs = x :: xs).
proof: Proof. clear. auto using CoqListFacts.cons_eq_app. Qed.
imports: Coq.FSets.FSets Coq.Lists.List Coq.Logic.Decidable Coq.Strings.String String Metalib.CoqFSetDecide Metalib.CoqListFacts Metalib.LibTactics Metalib.CoqFSetInterface Coq.Classes.Equivalence Coq.Classes.EquivDec Metalib.CoqEqDec