| 0 < j, 0 < j0 * j0 ⊦ isSquare((j0 * j0) ^ j) |
0 < j, 0 < j0 * j0 ⊦ (j0 * j0) ^ j = j0 ^ j * j0 ^ j, isSquare((j0 * j0) ^ j)
Used simplifier rules: isSquare-square: ⊦ isSquare(i * i); from specification int-square%associativity: ⊦ i * j * j0 = (i * j) * j0; from specification int-mult%commutativity: ⊦ i * j = j * i; from specification int-mult Used formulas: (j0 * j0) ^ j = j0 ^ j * j0 ^ j