Definition union_std_def (s0 : state) : Prop :=
forall (s1 : state) (d : preDTA) (c : ad) (tl : term_list),
mpl_compat s0 s1 ->
state_reconnait d s0 (app c tl) ->
state_reconnait d (union_mpl s0 s1) (app c tl) /\
state_reconnait d (union_mpl s1 s0) (app c tl).

(* Specifications: *)
Lemma union_std_0 : union_std_def (M0 prec_list).
Lemma union_std_1 :
forall (a : ad) (a0 : prec_list), union_std_def (M1 prec_list a a0).
Lemma union_std_2 :
forall m : state,
union_std_def m ->
forall m0 : state, union_std_def m0 -> union_std_def (M2 prec_list m m0).
Lemma union_std : forall m : state, union_std_def m.
Lemma union_sd :
forall (s0 s1 : state) (d : preDTA) (c : ad) (tl : term_list),
mpl_compat s0 s1 ->
state_reconnait d s0 (app c tl) ->
state_reconnait d (union_mpl s0 s1) (app c tl) /\
state_reconnait d (union_mpl s1 s0) (app c tl).