| ¬ dec_j.scale < 0, dec_i.scale = dec_j.scale, maxScale(dec_i.int * 10 ^ dec_j.scale + dec_j.int * 10 ^ dec_j.scale) ≤ 2 * dec_j.scale, dec_j.scale + maxScale(dec_i.int * 10 ^ dec_j.scale + dec_j.int * 10 ^ dec_j.scale) < 2 * 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 * dec_j.scale, maxScale(dec_i.int * 10 ^ dec_j.scale + dec_j.int * 10 ^ dec_j.scale) < dec_j.scale ⊦ dec_i.int + dec_j.int = 0
Used simplifier rules: scale-not-neg: ⊦ ¬ dec.scale < 0; from specification decimal%add-c: ⊦ i + j = j + i; from specification int-basic2%add-a: ⊦ i + j + i0 = (i + j) + i0; from specification int-basic2%commutativity: ⊦ i * j = j * i; from specification int-mult%associativity: ⊦ i * j * j0 = (i * j) * j0; from specification int-mult%one: ⊦ 1 * i = i; from specification int-mult%numls-08: ⊦ i + j < (* i1) * i ↔ j < (i1 - 1) * i; from specification int-mult