Definition union_s_prd0 (s : state) : Prop :=
  forall (d : preDTA) (c : ad) (pl : prec_list) (tl : term_list),
  mpl_compat (M1 prec_list c pl) s ->
  state_reconnait d (M1 prec_list c pl) (app c tl) ->
  state_reconnait d (union_mpl_0 c pl s) (app c tl).

(* Specifications: *)
Lemma union_s0d_2 : forall m : Map prec_list, union_s_prd0 m -> forall m0 : Map prec_list, union_s_prd0 m0 -> union_s_prd0 (M2 prec_list m m0).
Lemma union_s0d_3 : union_s_prd0 (M0 prec_list).
Lemma union_s0d_1 : forall (a : ad) (a0 : prec_list), union_s_prd0 (M1 prec_list a a0).
Lemma union_s_0d : forall m : state, union_s_prd0 m.
Lemma union_s0d : forall (s : state) (d : preDTA) (c : ad) (pl : prec_list) (tl : term_list), mpl_compat (M1 prec_list c pl) s -> state_reconnait d (M1 prec_list c pl) (app c tl) -> state_reconnait d (union_mpl_0 c pl s) (app c tl).