Search for blocks/addresses/...

Proofgold Proof

pf
Let x0 of type ι be given.
Let x1 of type ι be given.
Let x2 of type ι be given.
Assume H0: int_lin_comb x0 x1 x2.
Assume H1: SNoLt 0 x2.
Assume H2: ∀ x3 . int_lin_comb x0 x1 x3SNoLt 0 x3SNoLe x2 x3.
Apply int_lin_comb_E with x0, x1, x2, gcd_reln x0 x1 x2 leaving 2 subgoals.
The subproof is completed by applying H0.
Assume H3: x0int.
Assume H4: x1int.
Assume H5: x2int.
Let x3 of type ι be given.
Assume H6: x3int.
Let x4 of type ι be given.
Assume H7: x4int.
Assume H8: add_SNo (mul_SNo x3 x0) (mul_SNo x4 x1) = x2.
Apply and3I with divides_int x2 x0, divides_int x2 x1, ∀ x5 . divides_int x5 x0divides_int x5 x1SNoLe x5 x2 leaving 3 subgoals.
Apply least_pos_int_lin_comb_divides_int with x0, x1, x2 leaving 3 subgoals.
The subproof is completed by applying H0.
The subproof is completed by applying H1.
The subproof is completed by applying H2.
Apply least_pos_int_lin_comb_divides_int with x1, x0, x2 leaving 3 subgoals.
Apply int_lin_comb_sym with x0, x1, x2.
The subproof is completed by applying H0.
The subproof is completed by applying H1.
Let x5 of type ι be given.
Assume H9: int_lin_comb x1 x0 x5.
Apply H2 with x5.
Apply int_lin_comb_sym with x1, x0, x5.
The subproof is completed by applying H9.
Let x5 of type ι be given.
Assume H9: divides_int x5 x0.
Assume H10: divides_int x5 x1.
Apply divides_int_pos_Le with x5, x2 leaving 2 subgoals.
Apply H8 with λ x6 x7 . divides_int x5 x6.
Apply divides_int_add_SNo with x5, mul_SNo x3 x0, mul_SNo x4 x1 leaving 2 subgoals.
Apply divides_int_mul_SNo_R with x5, x0, x3 leaving 2 subgoals.
The subproof is completed by applying H6.
The subproof is completed by applying H9.
Apply divides_int_mul_SNo_R with x5, x1, x4 leaving 2 subgoals.
The subproof is completed by applying H7.
The subproof is completed by applying H10.
The subproof is completed by applying H1.