Definition pl_path_rec_equiv_1_def (plp : pl_path)
(pl : prec_list) :=
pl_path_incl plp pl ->
forall (d : preDTA) (tl : term_list) (n : nat),
pl_path_recon d tl plp -> pl_tl_length pl n -> liste_reconnait d pl tl.

(* Specifications: *)
Lemma pl_path_rec_equiv_1_0 : pl_path_rec_equiv_1_def pl_path_nil prec_empty.
Lemma pl_path_rec_equiv_1_1 :
forall (plp : pl_path) (a : ad) (la ls : prec_list),
pl_path_incl plp la ->
pl_path_rec_equiv_1_def plp la ->
pl_path_rec_equiv_1_def (pl_path_cons a plp) (prec_cons a la ls).
Lemma pl_path_rec_equiv_1_2 :
forall (plp : pl_path) (a : ad) (la ls : prec_list),
pl_path_incl plp ls ->
pl_path_rec_equiv_1_def plp ls ->
plp <> pl_path_nil -> pl_path_rec_equiv_1_def plp (prec_cons a la ls).
Lemma pl_path_rec_equiv_1_3 :
forall (p : pl_path) (p0 : prec_list),
pl_path_incl p p0 -> pl_path_rec_equiv_1_def p p0.
Lemma pl_path_rec_equiv_1 :
forall (plp : pl_path) (pl : prec_list),
pl_path_incl plp pl ->
forall (d : preDTA) (tl : term_list) (n : nat),
pl_path_recon d tl plp -> pl_tl_length pl n -> liste_reconnait d pl tl.
Lemma pl_path_rec_length :
forall (plp : pl_path) (tl : term_list) (d : preDTA),
pl_path_recon d tl plp -> pl_path_length plp = lst_length tl.