Inductive and_sp (A : Set) (B : Prop) : Set :=
        conj_sp : A -> B -> and_sp A B.Inductive and_sp (A : Set) (B : Prop) : Set :=
        conj_sp : A -> B -> and_sp A B.

Lemma CG_path_app_4 : forall (l1 l2 : list ad) (last x : ad) (d : D), CG_path last d (l1 ++ x :: l2) -> {d1 : D & {d2 : D & and_sp (CG_path x d1 (l1 ++ x :: nil) * CG_path last d2 (x :: l2)) (d = Dplus d2 d1)}}.