Goal
forall (b : bit) (x y : proc),
D + (fun d : D => seq (ia D r1 d) (enc H (mer (seq (Sn_d d b) y) x))) =
enc H (Lmer (seq (Sn b) y) x).Save LmerSn.Goal forall x : proc, Delta = enc H (Lmer (K i) x).Save LmerK.Goal forall x : proc, Delta = enc H (Lmer (L i) x).Save LmerL.Goal forall (b : bit) (x y : proc), Delta = enc H (Lmer (seq (Rn b) y) x).Save LmerRn.Goal
forall (b : bit) (x y : proc),
Delta = enc H (Lmer (comm (L i) (seq (Rn b) y)) x).Save CommLRn.Goal forall x : proc, Delta = enc H (Lmer (comm (K i) (L i)) x).Save CommKL.Goal
forall (b : bit) (x y : proc),
Delta = enc H (Lmer (comm (K i) (seq (Rn b) y)) x).Save CommKRn.Goal
forall (b : bit) (x y : proc),
Delta = enc H (Lmer (comm (seq (Sn b) y) (K i)) x).Save CommSnK.Goal
forall (b : bit) (x y : proc),
Delta = enc H (Lmer (comm (seq (Sn b) y) (L i)) x).Save CommSnL.Goal
forall (b b' : bit) (x y y' : proc),
Delta = enc H (Lmer (comm (seq (Sn b) y) (seq (Rn b') y')) x).Save CommSnRn.Goal
forall (b : bit) (d : D) (x y : proc),
Delta = enc H (Lmer (seq (Sn_d d b) y) x).Save LmerSnd.Goal
forall (b : bit) (d : D) (x y : proc),
Delta = enc H (Lmer (seq (Tn_d d b) y) x).Save LmerTnd.Goal
forall (f : frame) (x y : proc),
Delta = enc H (Lmer (seq (ia frame s5 f) y) x).Save Lmers5.Goal
forall (d : D) (x y : proc),
seq (ia D s4 d) (enc H (mer y x)) = enc H (Lmer (seq (ia D s4 d) y) x).Save Lmers4.Goal
forall x y y' : proc,
alt (seq (ia one int i) (enc H (mer y x)))
  (seq (ia one int i) (enc H (mer y' x))) =
enc H (Lmer (alt (seq (ia one int i) y) (seq (ia one int i) y')) x).Save Lmeri.Goal
forall (f : Frame) (x y : proc),
Delta = enc H (Lmer (seq (ia Frame s3 f) y) x).Save Lmers3.Goal
forall (f : frame) (x y : proc),
Delta = enc H (Lmer (seq (ia frame s6 f) y) x).Save Lmers6.Goal forall (c : bool) (p : proc), cond p c p = p.Save Bak4_2_1.Goal
forall (c : bool) (x y z : proc),
(true = c -> x = y) -> cond x c z = cond y c z.Save Def4_3_1_2.Goal
forall (c : bool) (x y z : proc),
(false = c -> x = y) -> cond z c x = cond z c y.Save Def4_3_1_2'.Goal
forall (x : Frame -> proc) (d : Frame),
x d = Frame + (fun e : Frame => cond (x d) (eqF e d) Delta).Save Sum_EliminationF.Goal
forall (x : frame -> proc) (d : frame),
x d = frame + (fun e : frame => cond (x d) (eqf e d) Delta).Save Sum_Eliminationf.Goal
forall (x : D -> proc) (d : D),
x d = D + (fun e : D => cond (x d) (eqD e d) Delta).Save Sum_EliminationD.Goal
forall (d : D) (n : bit) (y : proc),
seq (ia Frame c2 (Tuple n d))
  (mer y
     (seq
        (alt (seq (ia one int i) (ia Frame s3 (Tuple n d)))
           (seq (ia one int i) (ia Frame s3 lce))) 
        (K i))) = comm (seq (ia Frame s2 (Tuple n d)) y) (K i).Save comms2K.Goal
forall (d : D) (n : bit) (y x : proc),
seq (ia Frame c2 (Tuple n d))
  (enc H
     (mer
        (mer y
           (seq
              (alt (seq (ia one int i) (ia Frame s3 (Tuple n d)))
                 (seq (ia one int i) (ia Frame s3 lce))) 
              (K i))) x)) =
enc H (Lmer (comm (seq (ia Frame s2 (Tuple n d)) y) (K i)) x).Save Comms2K.Goal
forall (d : D) (n n' : bit) (y y' : proc),
Delta = comm (seq (ia Frame s2 (Tuple n d)) y) (seq (Rn n') y').Save comms2Rn.Goal
forall (n n' : bit) (d : D) (x y y' : proc),
Delta =
enc H (Lmer (comm (seq (ia Frame s2 (Tuple n d)) y) (seq (Rn n') y')) x).Save Comms2Rn.Goal
forall (d : D) (n : bit) (y : proc),
Delta = comm (seq (ia Frame s2 (Tuple n d)) y) (L i).Save comms2L.Goal
forall (d : D) (n : bit) (x y : proc),
Delta = enc H (Lmer (comm (seq (ia Frame s2 (Tuple n d)) y) (L i)) x).Save Comms2L.Goal
forall x y y' : proc,
Delta =
enc H
  (Lmer (comm (alt (seq (ia one int i) y) (seq (ia one int i) y')) (L i)) x).Save CommiL.Goal
forall x y y' : proc,
Delta =
enc H
  (Lmer (comm (alt (seq (ia one int i) y) (seq (ia one int i) y')) (K i)) x).Save CommiK.Goal
forall (x y y' : proc) (b : bit),
Delta = enc H (Lmer (comm (seq (ia one int i) y) (seq (Rn b) y')) x).Save commiRn.Goal
forall (x y y' y'' : proc) (b : bit),
Delta =
enc H
  (Lmer
     (comm (alt (seq (ia one int i) y) (seq (ia one int i) y'))
        (seq (Rn b) y'')) x).Save CommiRn.Goal
forall (x y : proc) (b : bit) (d : D),
Delta = enc H (Lmer (comm (seq (Tn_d d b) y) (L i)) x).Save CommTn_dL.Goal
forall (x y y' : proc) (b : bit) (d : D),
Delta = enc H (Lmer (comm (seq (Tn_d d b) y) (seq (ia one int i) y')) x).Save commTn_di1.Goal
forall (x y y' y'' : proc) (b : bit) (d : D),
Delta =
enc H
  (Lmer
     (comm (seq (Tn_d d b) y)
        (alt (seq (ia one int i) y') (seq (ia one int i) y''))) x).Save CommTn_di.Goal
forall (x y : proc) (b : bit) (d : D),
Delta = enc H (Lmer (comm (seq (Sn_d d b) y) (L i)) x).Save CommSn_dL.Goal
forall (x y : proc) (b : bit) (d : D),
seq (ia Frame c2 (Tuple b d))
  (enc H
     (mer (seq (Tn_d d b) y)
        (mer
           (alt (seq (ia one int i) (seq (ia Frame s3 (Tuple b d)) (K i)))
              (seq (ia one int i) (seq (ia Frame s3 lce) (K i)))) x))) =
enc H (Lmer (comm (seq (Sn_d d b) y) (K i)) x).Save CommSn_dK.Goal
forall (x y y' : proc) (b b' : bit) (d : D),
Delta = enc H (Lmer (comm (seq (Sn_d d b) y) (seq (Rn b') y')) x).Save CommSn_dRn.Goal
forall (x y y' : proc) (b : bit) (d : D),
Delta = enc H (Lmer (comm (seq (ia D s4 d) y) (seq (Tn_d d b) y')) x).Save CommTn_ds4.Goal
forall (x y y' : proc) (b : bit) (d : D) (f : frame),
Delta = enc H (Lmer (comm (seq (ia frame s5 f) y) (seq (Tn_d d b) y')) x).Save CommTn_ds5.Goal
forall (x y : proc) (b : bit) (d : D),
Delta = enc H (Lmer (comm (K i) (seq (Tn_d d b) y)) x).Save CommTn_dK.Goal
forall (x y : proc) (d : D),
Delta = enc H (Lmer (comm (seq (ia D s4 d) y) (L i)) x).Save CommLs4.Goal
forall (x y : proc) (f : frame),
seq (ia frame c5 f)
  (enc H
     (mer y
        (mer
           (alt (seq (ia one int i) (seq (ia frame s6 f) (L i)))
              (seq (ia one int i) (seq (ia frame s6 sce) (L i)))) x))) =
enc H (Lmer (comm (seq (ia frame s5 f) y) (L i)) x).Save CommLs5.Goal
forall (x y : proc) (f : frame),
Delta = enc H (Lmer (comm (seq (ia frame s6 f) y) (K i)) x).Save CommKs6.Goal
forall (x y y' : proc) (b : bit) (f : frame),
Delta = enc H (Lmer (comm (seq (ia frame s6 f) y) (seq (Rn b) y')) x).Save CommRns6.Goal
forall (x y y' : proc) (b : bit) (d : D),
seq (ia frame c6 sce) (enc H (mer y (mer (seq (Sn_d d b) y') x))) =
enc H (Lmer (comm (seq (ia frame s6 sce) y) (seq (Tn_d d b) y')) x).Save CommTn_ds6_sce.Goal
forall (x y y' : proc) (b : bit) (d : D),
seq (ia frame c6 (tuple (toggle b)))
  (enc H (mer y (mer (seq (Sn_d d b) y') x))) =
enc H
  (Lmer (comm (seq (ia frame s6 (tuple (toggle b))) y) (seq (Tn_d d b) y')) x).Save CommTn_ds6_b.Goal
forall (x y y' : proc) (b : bit) (d : D),
seq (ia frame c6 (tuple b)) (enc H (mer y (mer y' x))) =
enc H (Lmer (comm (seq (ia frame s6 (tuple b)) y) (seq (Tn_d d b) y')) x).Save CommTn_ds6_b'.Goal
forall (x y : proc) (d : D),
Delta = enc H (Lmer (comm (K i) (seq (ia D s4 d) y)) x).Save CommKs4.Goal
forall (x y : proc) (f : frame),
Delta = enc H (Lmer (comm (K i) (seq (ia frame s5 f) y)) x).Save CommKs5.

(* Specifications: *)
Theorem CommTn_dRn : forall (x y y' : proc) (b b' : bit) (d : D), Delta = enc H (Lmer (comm (seq (Tn_d d b) y) (seq (Rn b') y')) x).
Theorem Comms3Tn_d : forall (x y y' : proc) (b : bit) (d : D) (f : Frame), Delta = enc H (Lmer (comm (seq (ia Frame s3 f) y) (seq (Tn_d d b) y')) x).
Theorem Comms3L : forall (x y : proc) (f : Frame), Delta = enc H (Lmer (comm (seq (ia Frame s3 f) y) (L i)) x).
Theorem Comms3Rn_lce : forall (x y y' : proc) (b : bit), seq (ia Frame c3 lce) (enc H (mer (mer y (seq (seq (ia frame s5 (tuple b)) (Rn b)) y')) x)) = enc H (Lmer (comm (seq (ia Frame s3 lce) y) (seq (Rn b) y')) x).
Theorem Comms3Rn_b' : forall (x y y' : proc) (b : bit) (d : D), seq (ia Frame c3 (Tuple b d)) (enc H (mer (mer (seq (ia frame s5 (tuple b)) (seq (Rn b) y')) y) x)) = enc H (Lmer (comm (seq (ia Frame s3 (Tuple b d)) y) (seq (Rn b) y')) x).
Theorem Comms3Rn_b : forall (x y y' : proc) (b : bit) (d : D), seq (ia Frame c3 (Tuple (toggle b) d)) (enc H (mer y (mer (seq (ia D s4 d) (seq (ia frame s5 (tuple (toggle b))) y')) x))) = enc H (Lmer (comm (seq (ia Frame s3 (Tuple (toggle b) d)) y) (seq (Rn b) y')) x).