Step * 1 2 2 2 of Lemma factorit_wf


1. : ℕ
2. ∀d:ℕd
     ∀[x:ℕ+]. ∀[b:ℕ].
       (x b < d
        (2 ≤ b)
        (∀[tried:{L:{p:ℕprime(p) ∧ p < b}  List| ∀p:{p:ℕprime(p)} (p <  ((p ∈ L) ∧ (p x))))} ].
           ∀[facs:{p:ℕprime(p)}  List].
             (factorit(x;b;tried;facs) ∈ {L:{p:ℕprime(p)}  List| 
                                          reduce(λp,q. (p q);1;L) (x reduce(λp,q. (p q);1;facs)) ∈ ℤ)))
3. : ℕ+
4. : ℕ
5. b < d
6. 2 ≤ b
7. tried {L:{p:ℕprime(p) ∧ p < b}  List| ∀p:{p:ℕprime(p)} (p <  ((p ∈ L) ∧ (p x))))} 
8. ¬(∃p∈tried. (b rem p) 0 ∈ ℤ)
9. facs {p:ℕprime(p)}  List
10. (b b) ≤ x
11. ∀p:{p:ℕprime(p)} p ≠ 0
12. prime(b)
⊢ if (x rem =z 0)
  then eval x' x ÷ in
       factorit(x';b;tried;[b facs])
  else eval b' in
       factorit(x;b';[b tried];facs)
  fi  ∈ {L:{p:ℕprime(p)}  List| reduce(λp,q. (p q);1;L) (x reduce(λp,q. (p q);1;facs)) ∈ ℤ
BY
((InstLemma `div_rem_sum` [⌜x⌝;⌜b⌝]⋅ THENA Auto) THEN (SplitOnConclITE THENA Auto)) }

1
.....truecase..... 
1. : ℕ
2. ∀d:ℕd
     ∀[x:ℕ+]. ∀[b:ℕ].
       (x b < d
        (2 ≤ b)
        (∀[tried:{L:{p:ℕprime(p) ∧ p < b}  List| ∀p:{p:ℕprime(p)} (p <  ((p ∈ L) ∧ (p x))))} ].
           ∀[facs:{p:ℕprime(p)}  List].
             (factorit(x;b;tried;facs) ∈ {L:{p:ℕprime(p)}  List| 
                                          reduce(λp,q. (p q);1;L) (x reduce(λp,q. (p q);1;facs)) ∈ ℤ)))
3. : ℕ+
4. : ℕ
5. b < d
6. 2 ≤ b
7. tried {L:{p:ℕprime(p) ∧ p < b}  List| ∀p:{p:ℕprime(p)} (p <  ((p ∈ L) ∧ (p x))))} 
8. ¬(∃p∈tried. (b rem p) 0 ∈ ℤ)
9. facs {p:ℕprime(p)}  List
10. (b b) ≤ x
11. ∀p:{p:ℕprime(p)} p ≠ 0
12. prime(b)
13. (((x ÷ b) b) (x rem b)) ∈ ℤ
14. (x rem b) 0 ∈ ℤ
⊢ eval x' x ÷ in
  factorit(x';b;tried;[b facs]) ∈ {L:{p:ℕprime(p)}  List| reduce(λp,q. (p q);1;L) (x reduce(λp,q. (p q);1;fa\000Ccs)) ∈ ℤ

2
.....falsecase..... 
1. : ℕ
2. ∀d:ℕd
     ∀[x:ℕ+]. ∀[b:ℕ].
       (x b < d
        (2 ≤ b)
        (∀[tried:{L:{p:ℕprime(p) ∧ p < b}  List| ∀p:{p:ℕprime(p)} (p <  ((p ∈ L) ∧ (p x))))} ].
           ∀[facs:{p:ℕprime(p)}  List].
             (factorit(x;b;tried;facs) ∈ {L:{p:ℕprime(p)}  List| 
                                          reduce(λp,q. (p q);1;L) (x reduce(λp,q. (p q);1;facs)) ∈ ℤ)))
3. : ℕ+
4. : ℕ
5. b < d
6. 2 ≤ b
7. tried {L:{p:ℕprime(p) ∧ p < b}  List| ∀p:{p:ℕprime(p)} (p <  ((p ∈ L) ∧ (p x))))} 
8. ¬(∃p∈tried. (b rem p) 0 ∈ ℤ)
9. facs {p:ℕprime(p)}  List
10. (b b) ≤ x
11. ∀p:{p:ℕprime(p)} p ≠ 0
12. prime(b)
13. (((x ÷ b) b) (x rem b)) ∈ ℤ
14. ¬((x rem b) 0 ∈ ℤ)
⊢ eval b' in
  factorit(x;b';[b tried];facs) ∈ {L:{p:ℕprime(p)}  List| reduce(λp,q. (p q);1;L) (x reduce(λp,q. (p q);1;fa\000Ccs)) ∈ ℤ


Latex:


Latex:

1.  d  :  \mBbbN{}
2.  \mforall{}d:\mBbbN{}d
          \mforall{}[x:\mBbbN{}\msupplus{}].  \mforall{}[b:\mBbbN{}].
              (x  -  b  *  b  <  d
              {}\mRightarrow{}  (2  \mleq{}  b)
              {}\mRightarrow{}  (\mforall{}[tried:\{L:\{p:\mBbbN{}|  prime(p)  \mwedge{}  p  <  b\}    List| 
                                        \mforall{}p:\{p:\mBbbN{}|  prime(p)\}  .  (p  <  b  {}\mRightarrow{}  ((p  \mmember{}  L)  \mwedge{}  (\mneg{}(p  |  x))))\}  ].
                      \mforall{}[facs:\{p:\mBbbN{}|  prime(p)\}    List].
                          (factorit(x;b;tried;facs)  \mmember{}  \{L:\{p:\mBbbN{}|  prime(p)\}    List| 
                                                                                    reduce(\mlambda{}p,q.  (p  *  q);1;L)  =  (x  *  reduce(\mlambda{}p,q.  (p  *  q);1;fa\000Ccs))\}  )))
3.  x  :  \mBbbN{}\msupplus{}
4.  b  :  \mBbbN{}
5.  x  -  b  *  b  <  d
6.  2  \mleq{}  b
7.  tried  :  \{L:\{p:\mBbbN{}|  prime(p)  \mwedge{}  p  <  b\}    List|  \mforall{}p:\{p:\mBbbN{}|  prime(p)\}  .  (p  <  b  {}\mRightarrow{}  ((p  \mmember{}  L)  \mwedge{}  (\mneg{}(p  |  x))))\}\000C 
8.  \mneg{}(\mexists{}p\mmember{}tried.  (b  rem  p)  =  0)
9.  facs  :  \{p:\mBbbN{}|  prime(p)\}    List
10.  (b  *  b)  \mleq{}  x
11.  \mforall{}p:\{p:\mBbbN{}|  prime(p)\}  .  p  \mneq{}  0
12.  prime(b)
\mvdash{}  if  (x  rem  b  =\msubz{}  0)
    then  eval  x'  =  x  \mdiv{}  b  in
              factorit(x';b;tried;[b  /  facs])
    else  eval  b'  =  b  +  1  in
              factorit(x;b';[b  /  tried];facs)
    fi    \mmember{}  \{L:\{p:\mBbbN{}|  prime(p)\}    List|  reduce(\mlambda{}p,q.  (p  *  q);1;L)  =  (x  *  reduce(\mlambda{}p,q.  (p  *  q);1;facs))\} 


By


Latex:
((InstLemma  `div\_rem\_sum`  [\mkleeneopen{}x\mkleeneclose{};\mkleeneopen{}b\mkleeneclose{}]\mcdot{}  THENA  Auto)  THEN  (SplitOnConclITE  THENA  Auto))




Home Index