Step
*
1
1
2
1
1
of Lemma
sbhomout-correct
1. ∀a,b:ℕ. ∀m,n:ℕ+.  (0 < a + b 
⇒ 0 < (a * m) + (b * n))
2. u : ℕ2
3. v : ℕ2 List
4. ∀x:ℕ
     ∀[a,b,c,d:ℕ].
       (((a + b + c + d) ≤ x)
       
⇒ 0 < a + b
       
⇒ 0 < c + d
       
⇒ (sbhomout(a;b;c;d;v) = let m,n = sbdecode(v) in sbcode((a * m) + (b * n);(c * m) + (d * n)) ∈ (ℕ2 List)))
5. x : ℤ
6. 0 < x
7. ∀[a,b,c,d:ℕ].
     (((a + b + c + d) ≤ (x - 1))
     
⇒ 0 < a + b
     
⇒ 0 < c + d
     
⇒ (sbhomout(a;b;c;d;[u / v])
        = let m,n = sbdecode([u / v]) 
          in sbcode((a * m) + (b * n);(c * m) + (d * n))
        ∈ (ℕ2 List)))
8. a : ℕ
9. b : ℕ
10. c : ℕ
11. d : ℕ
12. ¬↑mtge1(a;b;c;d)
13. (a + b + c + d) ≤ x
14. 0 < a + b
15. 0 < c + d
16. ((a ≤ c) ∧ b < d) ∨ (a < c ∧ (b ≤ d))
⊢ [0 / let m,n = sbdecode([u / v]) in sbcode((a * m) + (b * n);((c - a) * m) + ((d - b) * n))]
= let m,n = sbdecode([u / v]) 
  in sbcode((a * m) + (b * n);(c * m) + (d * n))
∈ (ℕ2 List)
BY
{ xxx(((GenConclTerm ⌜sbdecode([u / v])⌝⋅ THENA Auto) THEN D -2 THEN Reduce 0)
      THEN RW (AddrC [3] RecUnfoldTopAbC) 0
      THEN AutoSplit)xxx }
1
1. ∀a,b:ℕ. ∀m,n:ℕ+.  (0 < a + b 
⇒ 0 < (a * m) + (b * n))
2. u : ℕ2
3. v : ℕ2 List
4. ∀x:ℕ
     ∀[a,b,c,d:ℕ].
       (((a + b + c + d) ≤ x)
       
⇒ 0 < a + b
       
⇒ 0 < c + d
       
⇒ (sbhomout(a;b;c;d;v) = let m,n = sbdecode(v) in sbcode((a * m) + (b * n);(c * m) + (d * n)) ∈ (ℕ2 List)))
5. x : ℤ
6. 0 < x
7. ∀[a,b,c,d:ℕ].
     (((a + b + c + d) ≤ (x - 1))
     
⇒ 0 < a + b
     
⇒ 0 < c + d
     
⇒ (sbhomout(a;b;c;d;[u / v])
        = let m,n = sbdecode([u / v]) 
          in sbcode((a * m) + (b * n);(c * m) + (d * n))
        ∈ (ℕ2 List)))
8. a : ℕ
9. b : ℕ
10. c : ℕ
11. d : ℕ
12. ¬↑mtge1(a;b;c;d)
13. (a + b + c + d) ≤ x
14. 0 < a + b
15. 0 < c + d
16. ((a ≤ c) ∧ b < d) ∨ (a < c ∧ (b ≤ d))
17. v2 : ℕ+
18. v3 : ℕ+
19. ¬(a * v2) + (b * v3) < (c * v2) + (d * v3)
20. sbdecode([u / v]) = <v2, v3> ∈ (ℕ+ × ℕ+)
⊢ [0 / sbcode((a * v2) + (b * v3);((c - a) * v2) + ((d - b) * v3))]
= if ((c * v2) + (d * v3)) < ((a * v2) + (b * v3))
     then [1 / sbcode(((a * v2) + (b * v3)) - (c * v2) + (d * v3);(c * v2) + (d * v3))]
     else []
∈ (ℕ2 List)
Latex:
Latex:
1.  \mforall{}a,b:\mBbbN{}.  \mforall{}m,n:\mBbbN{}\msupplus{}.    (0  <  a  +  b  {}\mRightarrow{}  0  <  (a  *  m)  +  (b  *  n))
2.  u  :  \mBbbN{}2
3.  v  :  \mBbbN{}2  List
4.  \mforall{}x:\mBbbN{}
          \mforall{}[a,b,c,d:\mBbbN{}].
              (((a  +  b  +  c  +  d)  \mleq{}  x)
              {}\mRightarrow{}  0  <  a  +  b
              {}\mRightarrow{}  0  <  c  +  d
              {}\mRightarrow{}  (sbhomout(a;b;c;d;v)
                    =  let  m,n  =  sbdecode(v) 
                        in  sbcode((a  *  m)  +  (b  *  n);(c  *  m)  +  (d  *  n))))
5.  x  :  \mBbbZ{}
6.  0  <  x
7.  \mforall{}[a,b,c,d:\mBbbN{}].
          (((a  +  b  +  c  +  d)  \mleq{}  (x  -  1))
          {}\mRightarrow{}  0  <  a  +  b
          {}\mRightarrow{}  0  <  c  +  d
          {}\mRightarrow{}  (sbhomout(a;b;c;d;[u  /  v])
                =  let  m,n  =  sbdecode([u  /  v]) 
                    in  sbcode((a  *  m)  +  (b  *  n);(c  *  m)  +  (d  *  n))))
8.  a  :  \mBbbN{}
9.  b  :  \mBbbN{}
10.  c  :  \mBbbN{}
11.  d  :  \mBbbN{}
12.  \mneg{}\muparrow{}mtge1(a;b;c;d)
13.  (a  +  b  +  c  +  d)  \mleq{}  x
14.  0  <  a  +  b
15.  0  <  c  +  d
16.  ((a  \mleq{}  c)  \mwedge{}  b  <  d)  \mvee{}  (a  <  c  \mwedge{}  (b  \mleq{}  d))
\mvdash{}  [0  /  let  m,n  =  sbdecode([u  /  v])  in  sbcode((a  *  m)  +  (b  *  n);((c  -  a)  *  m)  +  ((d  -  b)  *  n))]
=  let  m,n  =  sbdecode([u  /  v]) 
    in  sbcode((a  *  m)  +  (b  *  n);(c  *  m)  +  (d  *  n))
By
Latex:
xxx(((GenConclTerm  \mkleeneopen{}sbdecode([u  /  v])\mkleeneclose{}\mcdot{}  THENA  Auto)  THEN  D  -2  THEN  Reduce  0)
        THEN  RW  (AddrC  [3]  RecUnfoldTopAbC)  0
        THEN  AutoSplit)xxx
Home
Index