| isSquare(dec.int) ∧ isSquare(10 ^ (2 * abs(i))), dec.scale % 2 = 0, isSquare(dec.int), even(dec.scale) ⊦ mkDecimal(sqrt(dec.int) * sqrt(10 ^ (2 * abs(i))), dec.scale / 2 + abs(i)) = mkDecimal(sqrt(dec.int), dec.scale / 2) |
dec.scale % 2 = 0, isSquare(dec.int), even(dec.scale) ⊦ mkDecimal(sqrt(dec.int) * 10 ^ abs(i), dec.scale / 2 + abs(i)) = mkDecimal(sqrt(dec.int), dec.scale / 2)
Used simplifier rules: isSquare-10pot: ⊦ isSquare(10 ^ (2 * abs(i))); from specification int-pot%commutativity: ⊦ i * j = j * i; from specification int-mult%associativity: ⊦ i * j * j0 = (i * j) * j0; from specification int-mult%sqrt-10pot: ⊦ sqrt(10 ^ (2 * abs(i))) = 10 ^ abs(i); from specification int-pot