Search for blocks/addresses/...

Proofgold Proof

pf
Let x0 of type ι be given.
Assume H0: nat_p x0.
Let x1 of type ι be given.
Let x2 of type ι be given.
Assume H1: divides_nat x0 x1.
Assume H2: divides_nat x0 x2.
Apply H1 with divides_nat x0 (add_SNo x1 x2).
Assume H3: and (x0omega) (x1omega).
Apply H3 with (∃ x3 . and (x3omega) (mul_nat x0 x3 = x1))divides_nat x0 (add_SNo x1 x2).
Assume H4: x0omega.
Assume H5: x1omega.
Assume H6: ∃ x3 . and (x3omega) (mul_nat x0 x3 = x1).
Apply H6 with divides_nat x0 (add_SNo x1 x2).
Let x3 of type ι be given.
Assume H7: (λ x4 . and (x4omega) (mul_nat x0 x4 = x1)) x3.
Apply H7 with divides_nat x0 (add_SNo x1 x2).
Assume H8: x3omega.
Assume H9: mul_nat x0 x3 = x1.
Apply H2 with divides_nat x0 (add_SNo x1 x2).
Assume H10: and (x0omega) (x2omega).
Apply H10 with (∃ x4 . and (x4omega) (mul_nat x0 x4 = x2))divides_nat x0 (add_SNo x1 x2).
Assume H11: x0omega.
Assume H12: x2omega.
Assume H13: ∃ x4 . and (x4omega) (mul_nat x0 x4 = x2).
Apply H13 with divides_nat x0 (add_SNo x1 x2).
Let x4 of type ι be given.
Assume H14: (λ x5 . and (x5omega) (mul_nat x0 x5 = x2)) x4.
Apply H14 with divides_nat x0 (add_SNo x1 x2).
Assume H15: x4omega.
Assume H16: mul_nat x0 x4 = x2.
Apply add_nat_add_SNo with x1, x2, λ x5 x6 . and (and (x0omega) (x5omega)) (∃ x7 . and (x7omega) (mul_nat x0 x7 = x5)) leaving 3 subgoals.
The subproof is completed by applying H5.
The subproof is completed by applying H12.
Apply and3I with x0omega, add_nat x1 x2omega, ∃ x5 . and (x5omega) (mul_nat x0 x5 = add_nat x1 x2) leaving 3 subgoals.
The subproof is completed by applying H4.
Apply nat_p_omega with add_nat x1 x2.
Apply add_nat_p with x1, x2 leaving 2 subgoals.
Apply omega_nat_p with x1.
The subproof is completed by applying H5.
Apply omega_nat_p with x2.
The subproof is completed by applying H12.
Let x5 of type ο be given.
Assume H17: ∀ x6 . and (x6omega) (mul_nat x0 x6 = add_nat x1 x2)x5.
Apply H17 with add_nat x3 x4.
Apply andI with add_nat x3 x4omega, mul_nat x0 (add_nat x3 x4) = add_nat x1 x2 leaving 2 subgoals.
Apply nat_p_omega with add_nat x3 x4.
Apply add_nat_p with x3, x4 leaving 2 subgoals.
Apply omega_nat_p with x3.
The subproof is completed by applying H8.
Apply omega_nat_p with x4.
The subproof is completed by applying H15.
Apply mul_add_nat_distrL with x0, x3, x4, λ x6 x7 . x7 = add_nat x1 x2 leaving 4 subgoals.
The subproof is completed by applying H0.
Apply omega_nat_p with x3.
The subproof is completed by applying H8.
Apply omega_nat_p with x4.
The subproof is completed by applying H15.
set y6 to be ...
set y7 to be ...
Claim L18: ...
...
Let x8 of type ιιο be given.
Apply L18 with λ x9 . x8 x9 y7x8 y7 x9.
Assume H19: x8 ... ....
...