| 0 < j, 0 < i, 0 ≤ j0, j0 < i, prime(i), 0 < j, ∀ j1, i, j0. i→n(j1) < i→n(j) → true → prime(i) ∧ 0 < j1 ∧ 0 ≤ j0 ∧ j0 < i → max_exp(i, fac(i * j1 + j0)) = j1 + max_exp(i, fac(j1)) ⊦ max_exp(i, (i * j) * fac(i * j - 1)) = j + max_exp(i, j * fac(j - 1)) |
⊦ 0 < j ∧ 0 < j0 ∧ prime(i) → max_exp(i, j * j0) = max_exp(i, j) + max_exp(i, j0)
0 < i * j ∧ 0 < fac(i * j - 1) ∧ prime(i), 0 < j, 0 < i, 0 ≤ j0, j0 < i, prime(i), 0 < j, ∀ j1, i, j0. i→n(j1) < i→n(j) → true → prime(i) ∧ 0 < j1 ∧ 0 ≤ j0 ∧ j0 < i → max_exp(i, fac(i * j1 + j0)) = j1 + max_exp(i, fac(j1)) ⊦ max_exp(i, i * j) + max_exp(i, fac(i * j - 1)) = j + max_exp(i, j * fac(j - 1))
Used simplifier rules: fac-pos-01: ⊦ ¬ fac(i) ≤ 0;%zero-gr: ⊦ 0 < i → (0 < i * j ↔ 0 < j); from specification int-mult%associativity: ⊦ i * j * j0 = (i * j) * j0; from specification int-mult%commutativity: ⊦ i * j = j * i; from specification int-mult%lels: ⊦ ¬ i < j ↔ j ≤ i; from specification int-abs Used terms: fac(i * j - 1), i * j, i