| maxScale(dec_i.int * 10 ^ dec_j.scale + dec_j.int * 10 ^ dec_j.scale) ≤ abs(2 * dec_j.scale), dec_i.scale = dec_j.scale, dec_j.scale < abs(2 * dec_j.scale) - maxScale(dec_i.int * 10 ^ dec_j.scale + dec_j.int * 10 ^ dec_j.scale), maxScale(dec_i.int * 10 ^ dec_j.scale + dec_j.int * 10 ^ dec_j.scale) ≤ 2 * abs(dec_j.scale) ⊦ dec_i.int + dec_j.int = 0 |
dec_i.scale = dec_j.scale, maxScale(dec_i.int * 10 ^ dec_j.scale + dec_j.int * 10 ^ dec_j.scale) ≤ 2 * abs(dec_j.scale), dec_j.scale + maxScale(dec_i.int * 10 ^ dec_j.scale + dec_j.int * 10 ^ dec_j.scale) < 2 * abs(dec_j.scale) ⊦ dec_i.int + dec_j.int = 0
Used simplifier rules: sub-ls-01: ⊦ i < j - i0 ↔ i + i0 < j; from specification int-abs%commutativity: ⊦ i * j = j * i; from specification int-mult%associativity: ⊦ i * j * j0 = (i * j) * j0; from specification int-mult%abs-eqall: ⊦ abs(i * j) = abs(i) * abs(j); from specification int-mult