Definition predta_produit_4_def (d0 : preDTA) : Prop :=
  forall (a a0 : ad) (s s0 : state),
  MapGet state (preDTA_produit_r a0 s0 d0) a = Some s ->
  exists a1 : ad,
    (exists a2 : ad,
       (exists s1 : state,
          (exists s2 : state,
             a = iad_conv a1 a2 /\
             MapGet state (M1 state a0 s0) a2 = Some s1 /\
             MapGet state d0 a1 = Some s2))).

Lemma predta_produit_5 : forall (d0 d1 : preDTA) (a : ad) (s : state), MapGet state (preDTA_produit d0 d1) a = Some s -> exists a0 : ad, (exists a1 : ad, (exists s0 : state, (exists s1 : state, a = iad_conv a0 a1 /\ MapGet state d0 a0 = Some s0 /\ MapGet state d1 a1 = Some s1))).