| (dec_i.int + dec_j.int) % 10 = 0, maxScale(dec_i.int * 10 ^ dec_j.scale + dec_j.int * 10 ^ dec_i.scale) ≤ dec_i.scale + dec_j.scale, 0 ≤ dec_i.scale, 0 ≤ dec_j.scale ⊦ dec_i.scale = dec_j.scale, dec_i.scale + dec_j.scale = max(dec_i.scale, dec_j.scale) + maxScale(dec_i.int * 10 ^ dec_j.scale + dec_j.int * 10 ^ dec_i.scale), dec_i.int % 10 = 0, dec_j.int % 10 = 0 |
⊦ 0 ≤ j ∧ 0 ≤ j0 → i * 10 ^ j + i0 * 10 ^ j0 = (i * 10 ^ (j - min(j, j0)) + i0 * 10 ^ (j0 - min(j, j0))) * 10 ^ min(j, j0)
0 ≤ dec_j.scale ∧ 0 ≤ dec_i.scale, (dec_i.int + dec_j.int) % 10 = 0, maxScale ( (dec_i.int * 10 ^ (dec_j.scale - min(dec_j.scale, dec_i.scale)) + dec_j.int * 10 ^ (dec_i.scale - min(dec_j.scale, dec_i.scale))) * 10 ^ min(dec_j.scale, dec_i.scale)) ≤ dec_i.scale + dec_j.scale, 0 ≤ dec_i.scale, 0 ≤ dec_j.scale ⊦ dec_i.scale = dec_j.scale, dec_i.scale + dec_j.scale = max(dec_i.scale, dec_j.scale) + maxScale ( (dec_i.int * 10 ^ (dec_j.scale - min(dec_j.scale, dec_i.scale)) + dec_j.int * 10 ^ (dec_i.scale - min(dec_j.scale, dec_i.scale))) * 10 ^ min(dec_j.scale, dec_i.scale)), dec_i.int % 10 = 0, dec_j.int % 10 = 0
Used simplifier rules: zero-gels-04: ⊦ i ≤ 0 ∧ 0 ≤ j → i ≤ j; from specification int-abs Used terms: dec_i.scale, dec_j.int, dec_j.scale, dec_i.int