| 0 ≤ i, sqrt(i) * sqrt(i) ≤ i, i ≤ sqrt(i) * sqrt(i) + 2 * sqrt(i), 0 ≤ sqrt(i) * sqrt(i) + 2 * sqrt(i), 0 ≤ sqrt(i) ⊦ ∃ j. i = sqrt(i) * sqrt(i) + j ∧ j ≤ 2 * sqrt(i) ∧ 0 ≤ j |
Used simplifier rules: Sub-def: ⊦ i + (j - i) = j; from specification int-abs%add-a: ⊦ i + j + i0 = (i + j) + i0; from specification int-basic2%add-c: ⊦ i + j = j + i; from specification int-basic2%sub-le: ⊦ i - j ≤ i0 ↔ i ≤ j + i0; from specification int-abs%sub-le-01: ⊦ i ≤ j - i0 ↔ i + i0 ≤ j; from specification int-abs%add-zero: ⊦ i + 0 = i; from specification int-basic2 Used terms: i - sqrt(i) * sqrt(i)