Step * of Lemma nim-sum-com

[x,y:ℕ].  (nim-sum(x;y) nim-sum(y;x) ∈ ℤ)
BY
((CompleteInductionOnNat THEN (D THENA Auto))
   THEN (CaseNat `x'
         THENL [(Computation THEN Auto)
               (CaseNat `y' THENL [(Computation THEN Auto); (Unfold `nim-sum` THEN Reduce 0)])]
   )
   THEN (InstLemma `div_rem_sum` [⌜x⌝;⌜2⌝]⋅ THENA Auto)
   THEN (InstLemma `rem_bounds_1` [⌜x⌝;⌜2⌝]⋅ THENA Auto)
   THEN (InstLemma `div_rem_sum` [⌜y⌝;⌜2⌝]⋅ THENA Auto)
   THEN (InstLemma `rem_bounds_1` [⌜y⌝;⌜2⌝]⋅ THENA Auto)) }

1
1. : ℕ
2. ∀x:ℕx. ∀[y:ℕ]. (nim-sum(x;y) nim-sum(y;x) ∈ ℤ)
3. : ℕ
4. ¬(x 0 ∈ ℤ)
5. ¬(y 0 ∈ ℤ)
6. (((x ÷ 2) 2) (x rem 2)) ∈ ℤ
7. (0 ≤ (x rem 2)) ∧ rem 2 < 2
8. (((y ÷ 2) 2) (y rem 2)) ∈ ℤ
9. (0 ≤ (y rem 2)) ∧ rem 2 < 2
⊢ eval rx rem in
  eval qx x ÷ in
  eval ry rem in
  eval qy y ÷ in
  eval nim-sum(qx;qy) in
  eval if rx=ry then else in
    (2 s) d
eval rx rem in
  eval qx y ÷ in
  eval ry rem in
  eval qy x ÷ in
  eval nim-sum(qx;qy) in
  eval if rx=ry then else in
    (2 s) d
∈ ℤ


Latex:


Latex:
\mforall{}[x,y:\mBbbN{}].    (nim-sum(x;y)  =  nim-sum(y;x))


By


Latex:
((CompleteInductionOnNat  THEN  (D  0  THENA  Auto))
  THEN  (CaseNat  0  `x'
              THENL  [(Computation  THEN  Auto)
                          ;  (CaseNat  0  `y'  THENL  [(Computation  THEN  Auto);  (Unfold  `nim-sum`  0  THEN  Reduce  0)])]
  )
  THEN  (InstLemma  `div\_rem\_sum`  [\mkleeneopen{}x\mkleeneclose{};\mkleeneopen{}2\mkleeneclose{}]\mcdot{}  THENA  Auto)
  THEN  (InstLemma  `rem\_bounds\_1`  [\mkleeneopen{}x\mkleeneclose{};\mkleeneopen{}2\mkleeneclose{}]\mcdot{}  THENA  Auto)
  THEN  (InstLemma  `div\_rem\_sum`  [\mkleeneopen{}y\mkleeneclose{};\mkleeneopen{}2\mkleeneclose{}]\mcdot{}  THENA  Auto)
  THEN  (InstLemma  `rem\_bounds\_1`  [\mkleeneopen{}y\mkleeneclose{};\mkleeneopen{}2\mkleeneclose{}]\mcdot{}  THENA  Auto))




Home Index