(* Contribution to the Coq Library   V6.3 (July 1999)                    *)
(****************************************************************************)
(* This contribution was updated for Coq V5.10 by the COQ workgroup.        *)
(* January 1995                                                             *)
(****************************************************************************)
(*                                                                          *)
(*      Coq V5.8                                                            *)
(*                                                                          *)
(*                                                                          *)
(*      Alternating Bit Protocol                                            *)
(*                                                                          *)
(*      Jan Friso Groote                                                    *)
(*      Utrecht University                                                  *)
(*                                                                          *)
(*      November 1992                                                       *)
(*                                                                          *)
(* From bezem@phil.ruu.nl Fri Apr  2 13:14:31 1993                          *)
(*                                                                          *)
(****************************************************************************)
(*                                abp_lem3.v                                *)
(****************************************************************************)
intros.
elim EXPH4.
elim Lmers6.
elim LmerK.
elim LmerTnd.
elim LmerRn.
elim CommTn_dK.
elim (SC3 (seq (Rn e0) (R i)) (K i)).
elim CommKRn.
elim (SC3 (seq (Rn e0) (R i)) (seq (Tn_d d e1) (S i))).
elim CommTn_dRn.
elim CommKs6.
elim CommRns6.
pattern e0 at 1 2 in |- *.
elimtype (toggle e1 = e0).
elim CommTn_ds6_b.
repeat elim A6.
repeat elim A6'.
elim Toggle2.
unfold Y1 in |- *.
elim
(SC6 (mer (seq (Sn_d d e1) (S i)) (mer (seq (Rn e0) (R i)) (K i))) (L i)).
elim SC7.
elim SC7.
elim (SC6 (mer (K i) (L i)) (seq (Rn e0) (R i))).
elim SC7.
apply refl_equal.
elim Toggle2.
apply refl_equal.
Qed.

Theorem Lem21 :
forall d : D,
seq (ia frame c6 sce) (Y1 d) =
enc H
(mer (seq (ia frame s6 sce) (L i))
(mer (seq (Rn e0) (R i)) (mer (K i) (seq (Tn_d d e1) (S i))))).