| dec.scale % 2 = 0, j * j = dec.int ⊦ mkDecimal(abs(j) * abs(j), abs(dec.scale / 2) + abs(dec.scale / 2)) = dec |
dec.scale % 2 = 0, j * j = dec.int ⊦ mkDecimal(abs(j) * abs(j), 2 * abs(dec.scale) / 2) = dec
Used simplifier rules: add-c: ⊦ i + j = j + i; from specification int-basic2%add-a: ⊦ i + j + i0 = (i + j) + i0; from specification int-basic2%add-mult-two: ⊦ i + i = 2 * i; from specification int-mult%abs: j ≠ 0 ⊦ abs(i / j) = abs(i) / abs(j); from specification int-div