Search for blocks/addresses/...

Proofgold Proof

pf
Let x0 of type ι be given.
Assume H0: prime_nat x0.
Apply H0 with ∀ x1 . x1int∀ x2 . x2intdivides_int x0 (mul_SNo x1 x2)or (divides_int x0 x1) (divides_int x0 x2).
Assume H1: and (x0omega) (1x0).
Apply H1 with (∀ x1 . x1omegadivides_nat x1 x0or (x1 = 1) (x1 = x0))∀ x1 . x1int∀ x2 . x2intdivides_int x0 (mul_SNo x1 x2)or (divides_int x0 x1) (divides_int x0 x2).
Assume H2: x0omega.
Assume H3: 1x0.
Assume H4: ∀ x1 . x1omegadivides_nat x1 x0or (x1 = 1) (x1 = x0).
Claim L5: ...
...
Apply int_SNo_cases with λ x1 . ∀ x2 . x2intdivides_int x0 (mul_SNo x1 x2)or (divides_int x0 x1) (divides_int x0 x2) leaving 2 subgoals.
Let x1 of type ι be given.
Assume H6: x1omega.
Apply int_SNo_cases with λ x2 . divides_int x0 (mul_SNo x1 x2)or (divides_int x0 x1) (divides_int x0 x2) leaving 2 subgoals.
Let x2 of type ι be given.
Assume H7: x2omega.
Apply L5 with x1, x2 leaving 2 subgoals.
Apply omega_nat_p with x1.
The subproof is completed by applying H6.
Apply omega_nat_p with x2.
The subproof is completed by applying H7.
Let x2 of type ι be given.
Assume H7: x2omega.
Assume H8: divides_int x0 (mul_SNo x1 (minus_SNo x2)).
Apply L5 with x1, x2, or (divides_int x0 x1) (divides_int x0 (minus_SNo x2)) leaving 5 subgoals.
Apply omega_nat_p with x1.
The subproof is completed by applying H6.
Apply omega_nat_p with x2.
The subproof is completed by applying H7.
Apply minus_SNo_invol with mul_SNo x1 x2, λ x3 x4 . divides_int x0 x3 leaving 2 subgoals.
Apply SNo_mul_SNo with x1, x2 leaving 2 subgoals.
Apply omega_SNo with x1.
The subproof is completed by applying H6.
Apply omega_SNo with x2.
The subproof is completed by applying H7.
Apply mul_SNo_minus_distrR with x1, x2, λ x3 x4 . divides_int x0 (minus_SNo x3) leaving 3 subgoals.
Apply omega_SNo with x1.
The subproof is completed by applying H6.
Apply omega_SNo with x2.
The subproof is completed by applying H7.
Apply divides_int_minus_SNo with x0, mul_SNo x1 (minus_SNo x2).
The subproof is completed by applying H8.
The subproof is completed by applying orIL with divides_int x0 x1, divides_int x0 (minus_SNo x2).
Assume H9: divides_int x0 x2.
Apply orIR with divides_int x0 x1, divides_int x0 (minus_SNo x2).
Apply divides_int_minus_SNo with x0, x2.
The subproof is completed by applying H9.
Let x1 of type ι be given.
Assume H6: x1omega.
Apply int_SNo_cases with λ x2 . divides_int x0 (mul_SNo (minus_SNo x1) x2)or (divides_int x0 (minus_SNo x1)) (divides_int x0 x2) leaving 2 subgoals.
Let x2 of type ι be given.
Assume H7: x2omega.
Assume H8: divides_int x0 (mul_SNo (minus_SNo x1) x2).
Apply L5 with x1, x2, or (divides_int x0 (minus_SNo x1)) (divides_int x0 x2) leaving 5 subgoals.
Apply omega_nat_p with x1.
The subproof is completed by applying H6.
Apply omega_nat_p with x2.
The subproof is completed by applying H7.
Apply minus_SNo_invol with mul_SNo x1 x2, λ x3 x4 . divides_int x0 x3 leaving 2 subgoals.
Apply SNo_mul_SNo with x1, x2 leaving 2 subgoals.
Apply omega_SNo with x1.
The subproof is completed by applying H6.
Apply omega_SNo with x2.
The subproof is completed by applying H7.
Apply mul_SNo_minus_distrL with x1, x2, λ x3 x4 . divides_int x0 (minus_SNo x3) leaving 3 subgoals.
Apply omega_SNo with x1.
The subproof is completed by applying H6.
Apply omega_SNo with x2.
The subproof is completed by applying H7.
...
...
...
...