]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/matita/contribs/ng_assembly/num/word32_lemmas.ma
freescale porting, work in progress
[helm.git] / helm / software / matita / contribs / ng_assembly / num / word32_lemmas.ma
index 7f1c9ddc8d08d769ced18c0faf357fd23a6d7158..5f42bbc7bc22401e8c01f34dd5cf76b0ed63bd0a 100755 (executable)
@@ -143,20 +143,14 @@ nlemma symmetric_plusw32_dc_dc : ∀dw1,dw2,c.plus_w32_dc_dc dw1 dw2 c = plus_w3
  nelim dw2;
  #w3; #w4;
  nchange with (
-  match plus_w16_dc_dc w2 w4 c with
-   [ pair l c ⇒ match plus_w16_dc_dc w1 w3 c with
-    [ pair h c' ⇒ pair … 〈h.l〉 c' ]] =
-  match plus_w16_dc_dc w4 w2 c with
-   [ pair l c ⇒ match plus_w16_dc_dc w3 w1 c with
-    [ pair h c' ⇒ pair … 〈h.l〉 c' ]]);
+  match plus_w16_dc_dc w2 w4 c with [ pair l c ⇒ match plus_w16_dc_dc w1 w3 c with [ pair h c' ⇒ pair … 〈h.l〉 c' ]] =
+  match plus_w16_dc_dc w4 w2 c with [ pair l c ⇒ match plus_w16_dc_dc w3 w1 c with [ pair h c' ⇒ pair … 〈h.l〉 c' ]]);
  nrewrite > (symmetric_plusw16_dc_dc w4 w2 c);
  ncases (plus_w16_dc_dc w2 w4 c);
  #w5; #c1;
  nchange with (
-  match plus_w16_dc_dc w1 w3 c1 with
-   [ pair h c' ⇒ pair … 〈h.w5〉 c' ] =
-  match plus_w16_dc_dc w3 w1 c1 with
-   [ pair h c' ⇒ pair … 〈h.w5〉 c' ]);
+  match plus_w16_dc_dc w1 w3 c1 with [ pair h c' ⇒ pair … 〈h.w5〉 c' ] =
+  match plus_w16_dc_dc w3 w1 c1 with [ pair h c' ⇒ pair … 〈h.w5〉 c' ]);
  nrewrite > (symmetric_plusw16_dc_dc w1 w3 c1);
  napply refl_eq.
 nqed.
@@ -168,10 +162,8 @@ nlemma symmetric_plusw32_dc_d : ∀dw1,dw2,c.plus_w32_dc_d dw1 dw2 c = plus_w32_
  nelim dw2;
  #w3; #w4;
  nchange with (
-  match plus_w16_dc_dc w2 w4 c with
-   [ pair l c ⇒ 〈plus_w16_dc_d w1 w3 c.l〉 ] =
-  match plus_w16_dc_dc w4 w2 c with
-   [ pair l c ⇒ 〈plus_w16_dc_d w3 w1 c.l〉 ]);
+  match plus_w16_dc_dc w2 w4 c with [ pair l c ⇒ 〈plus_w16_dc_d w1 w3 c.l〉 ] =
+  match plus_w16_dc_dc w4 w2 c with [ pair l c ⇒ 〈plus_w16_dc_d w3 w1 c.l〉 ]);
  nrewrite > (symmetric_plusw16_dc_dc w4 w2 c);
  ncases (plus_w16_dc_dc w2 w4 c);
  #w5; #c1;
@@ -201,20 +193,14 @@ nlemma symmetric_plusw32_d_dc : ∀dw1,dw2.plus_w32_d_dc dw1 dw2 = plus_w32_d_dc
  nelim dw2;
  #w3; #w4;
  nchange with (
-  match plus_w16_d_dc w2 w4 with
-   [ pair l c ⇒ match plus_w16_dc_dc w1 w3 c with
-    [ pair h c' ⇒ pair … 〈h.l〉 c' ]] =
-  match plus_w16_d_dc w4 w2 with
-   [ pair l c ⇒ match plus_w16_dc_dc w3 w1 c with
-    [ pair h c' ⇒ pair … 〈h.l〉 c' ]]);
+  match plus_w16_d_dc w2 w4 with [ pair l c ⇒ match plus_w16_dc_dc w1 w3 c with [ pair h c' ⇒ pair … 〈h.l〉 c' ]] =
+  match plus_w16_d_dc w4 w2 with [ pair l c ⇒ match plus_w16_dc_dc w3 w1 c with [ pair h c' ⇒ pair … 〈h.l〉 c' ]]);
  nrewrite > (symmetric_plusw16_d_dc w4 w2);
  ncases (plus_w16_d_dc w2 w4);
  #w5; #c;
  nchange with (
-  match plus_w16_dc_dc w1 w3 c with
-   [ pair h c' ⇒ pair … 〈h.w5〉 c' ] =
-  match plus_w16_dc_dc w3 w1 c with
-   [ pair h c' ⇒ pair … 〈h.w5〉 c' ]);
+  match plus_w16_dc_dc w1 w3 c with [ pair h c' ⇒ pair … 〈h.w5〉 c' ] =
+  match plus_w16_dc_dc w3 w1 c with [ pair h c' ⇒ pair … 〈h.w5〉 c' ]);
  nrewrite > (symmetric_plusw16_dc_dc w1 w3 c);
  napply refl_eq.
 nqed.
@@ -226,10 +212,8 @@ nlemma symmetric_plusw32_d_d : ∀dw1,dw2.plus_w32_d_d dw1 dw2 = plus_w32_d_d dw
  nelim dw2;
  #w3; #w4;
  nchange with (
-  match plus_w16_d_dc w2 w4 with
-   [ pair l c ⇒ 〈plus_w16_dc_d w1 w3 c.l〉 ] =
-  match plus_w16_d_dc w4 w2 with
-   [ pair l c ⇒ 〈plus_w16_dc_d w3 w1 c.l〉 ]);
+  match plus_w16_d_dc w2 w4 with [ pair l c ⇒ 〈plus_w16_dc_d w1 w3 c.l〉 ] =
+  match plus_w16_d_dc w4 w2 with [ pair l c ⇒ 〈plus_w16_dc_d w3 w1 c.l〉 ]);
  nrewrite > (symmetric_plusw16_d_dc w4 w2);
  ncases (plus_w16_d_dc w2 w4);
  #w5; #c;
@@ -359,7 +343,7 @@ nlemma neqw32_to_neq : ∀dw1,dw2:word32.(eq_w32 dw1 dw2 = false) → (dw1 ≠ d
  #w1; #w2; #w3; #w4;
  nchange with ((((eq_w16 w3 w1) ⊗ (eq_w16 w4 w2)) = false) → ?);
  #H;
- napply (or2_elim ((eq_w16 w3 w1) = false) ((eq_w16 w4 w2) = false) ? (andb_false … H) …);
+ napply (or2_elim ((eq_w16 w3 w1) = false) ((eq_w16 w4 w2) = false) ? (andb_false2 … H) …);
  ##[ ##1: #H1; napply (decidable_w32_aux1 … (neqw16_to_neq … H1))
  ##| ##2: #H1; napply (decidable_w32_aux2 … (neqw16_to_neq … H1))
  ##]