Step
*
1
1
1
1
2
2
of Lemma
square-between
1. a : ℤ
2. b : ℕ+
3. c : ℤ
4. d : ℕ+
5. 0 ≤ a
6. a * d < c * b
7. 0 < b * d ∧ (0 ≤ (a * d)) ∧ (0 ≤ ((a * d) * b * d))
⊢ 0 < let x = (a * d) * b * d in
       let N = isqrt((4 * x) + 2) + 1 in
       let r = isqrt((N * N) * x) in
       (r + 1/N * b * d)
BY
{ ((((GenConclAtAddrType ⌜ℕ⌝ [2;1]⋅ THENA Auto) THEN RenameVar `x' (-2))
    THEN RW (AddrC [2] UnfoldTopAbC) 0
    THEN Reduce 0)⋅
   THEN ((((GenConclAtAddrType ⌜ℕ+⌝ [2;1]⋅ THENA (Auto THEN Auto')) THEN RenameVar `N' (-2))
          THEN RW (AddrC [2] UnfoldTopAbC) 0
          THEN Reduce 0)
         THEN ((GenConclAtAddrType ⌜ℕ⌝ [2;1]⋅ THENA (Auto THEN Auto' THEN Auto)) THEN RenameVar `r' (-2))
         THEN RW (AddrC [2] UnfoldTopAbC) 0
         THEN Reduce 0)⋅
   ) }
1
1. a : ℤ
2. b : ℕ+
3. c : ℤ
4. d : ℕ+
5. 0 ≤ a
6. a * d < c * b
7. 0 < b * d ∧ (0 ≤ (a * d)) ∧ (0 ≤ ((a * d) * b * d))
8. x : ℕ
9. ((a * d) * b * d) = x ∈ ℕ
10. N : ℕ+
11. (isqrt((4 * x) + 2) + 1) = N ∈ ℕ+
12. r : ℕ
13. isqrt((N * N) * x) = r ∈ ℕ
⊢ 0 < (r + 1/N * b * d)
Latex:
Latex:
1.  a  :  \mBbbZ{}
2.  b  :  \mBbbN{}\msupplus{}
3.  c  :  \mBbbZ{}
4.  d  :  \mBbbN{}\msupplus{}
5.  0  \mleq{}  a
6.  a  *  d  <  c  *  b
7.  0  <  b  *  d  \mwedge{}  (0  \mleq{}  (a  *  d))  \mwedge{}  (0  \mleq{}  ((a  *  d)  *  b  *  d))
\mvdash{}  0  <  let  x  =  (a  *  d)  *  b  *  d  in
              let  N  =  isqrt((4  *  x)  +  2)  +  1  in
              let  r  =  isqrt((N  *  N)  *  x)  in
              (r  +  1/N  *  b  *  d)
By
Latex:
((((GenConclAtAddrType  \mkleeneopen{}\mBbbN{}\mkleeneclose{}  [2;1]\mcdot{}  THENA  Auto)  THEN  RenameVar  `x'  (-2))
    THEN  RW  (AddrC  [2]  UnfoldTopAbC)  0
    THEN  Reduce  0)\mcdot{}
  THEN  ((((GenConclAtAddrType  \mkleeneopen{}\mBbbN{}\msupplus{}\mkleeneclose{}  [2;1]\mcdot{}  THENA  (Auto  THEN  Auto'))  THEN  RenameVar  `N'  (-2))
                THEN  RW  (AddrC  [2]  UnfoldTopAbC)  0
                THEN  Reduce  0)
              THEN  ((GenConclAtAddrType  \mkleeneopen{}\mBbbN{}\mkleeneclose{}  [2;1]\mcdot{}  THENA  (Auto  THEN  Auto'  THEN  Auto))
                          THEN  RenameVar  `r'  (-2)
                          )
              THEN  RW  (AddrC  [2]  UnfoldTopAbC)  0
              THEN  Reduce  0)\mcdot{}
  )
Home
Index