ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  dfgcd3 GIF version

Theorem dfgcd3 11625
Description: Alternate definition of the gcd operator. (Contributed by Jim Kingdon, 31-Dec-2021.)
Assertion
Ref Expression
dfgcd3 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀 gcd 𝑁) = (𝑑 ∈ ℕ0𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))))
Distinct variable groups:   𝑀,𝑑,𝑧   𝑁,𝑑,𝑧

Proof of Theorem dfgcd3
Dummy variables 𝑎 𝑏 𝑟 𝑤 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 gcd0val 11576 . . 3 (0 gcd 0) = 0
2 simprl 505 . . . 4 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) → 𝑀 = 0)
3 simprr 506 . . . 4 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) → 𝑁 = 0)
42, 3oveq12d 5760 . . 3 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) → (𝑀 gcd 𝑁) = (0 gcd 0))
5 0nn0 8960 . . . . 5 0 ∈ ℕ0
65a1i 9 . . . 4 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) → 0 ∈ ℕ0)
7 0dvds 11440 . . . . . . . . . . 11 (𝑀 ∈ ℤ → (0 ∥ 𝑀𝑀 = 0))
87ad2antrr 479 . . . . . . . . . 10 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) → (0 ∥ 𝑀𝑀 = 0))
92, 8mpbird 166 . . . . . . . . 9 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) → 0 ∥ 𝑀)
10 0dvds 11440 . . . . . . . . . . 11 (𝑁 ∈ ℤ → (0 ∥ 𝑁𝑁 = 0))
1110ad2antlr 480 . . . . . . . . . 10 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) → (0 ∥ 𝑁𝑁 = 0))
123, 11mpbird 166 . . . . . . . . 9 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) → 0 ∥ 𝑁)
139, 12jca 304 . . . . . . . 8 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) → (0 ∥ 𝑀 ∧ 0 ∥ 𝑁))
1413ad2antrr 479 . . . . . . 7 (((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ ∀𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))) → (0 ∥ 𝑀 ∧ 0 ∥ 𝑁))
15 0z 9033 . . . . . . . . 9 0 ∈ ℤ
16 breq1 3902 . . . . . . . . . . 11 (𝑧 = 0 → (𝑧𝑑 ↔ 0 ∥ 𝑑))
17 breq1 3902 . . . . . . . . . . . 12 (𝑧 = 0 → (𝑧𝑀 ↔ 0 ∥ 𝑀))
18 breq1 3902 . . . . . . . . . . . 12 (𝑧 = 0 → (𝑧𝑁 ↔ 0 ∥ 𝑁))
1917, 18anbi12d 464 . . . . . . . . . . 11 (𝑧 = 0 → ((𝑧𝑀𝑧𝑁) ↔ (0 ∥ 𝑀 ∧ 0 ∥ 𝑁)))
2016, 19bibi12d 234 . . . . . . . . . 10 (𝑧 = 0 → ((𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁)) ↔ (0 ∥ 𝑑 ↔ (0 ∥ 𝑀 ∧ 0 ∥ 𝑁))))
2120rspcv 2759 . . . . . . . . 9 (0 ∈ ℤ → (∀𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁)) → (0 ∥ 𝑑 ↔ (0 ∥ 𝑀 ∧ 0 ∥ 𝑁))))
2215, 21ax-mp 5 . . . . . . . 8 (∀𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁)) → (0 ∥ 𝑑 ↔ (0 ∥ 𝑀 ∧ 0 ∥ 𝑁)))
2322adantl 275 . . . . . . 7 (((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ ∀𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))) → (0 ∥ 𝑑 ↔ (0 ∥ 𝑀 ∧ 0 ∥ 𝑁)))
2414, 23mpbird 166 . . . . . 6 (((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ ∀𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))) → 0 ∥ 𝑑)
25 simplr 504 . . . . . . . 8 (((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ ∀𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))) → 𝑑 ∈ ℕ0)
2625nn0zd 9139 . . . . . . 7 (((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ ∀𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))) → 𝑑 ∈ ℤ)
27 0dvds 11440 . . . . . . 7 (𝑑 ∈ ℤ → (0 ∥ 𝑑𝑑 = 0))
2826, 27syl 14 . . . . . 6 (((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ ∀𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))) → (0 ∥ 𝑑𝑑 = 0))
2924, 28mpbid 146 . . . . 5 (((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ ∀𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))) → 𝑑 = 0)
30 dvds0 11435 . . . . . . . . 9 (𝑧 ∈ ℤ → 𝑧 ∥ 0)
3130adantl 275 . . . . . . . 8 ((((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ 𝑑 = 0) ∧ 𝑧 ∈ ℤ) → 𝑧 ∥ 0)
32 breq2 3903 . . . . . . . . 9 (𝑑 = 0 → (𝑧𝑑𝑧 ∥ 0))
3332ad2antlr 480 . . . . . . . 8 ((((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ 𝑑 = 0) ∧ 𝑧 ∈ ℤ) → (𝑧𝑑𝑧 ∥ 0))
3431, 33mpbird 166 . . . . . . 7 ((((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ 𝑑 = 0) ∧ 𝑧 ∈ ℤ) → 𝑧𝑑)
352ad3antrrr 483 . . . . . . . . 9 ((((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ 𝑑 = 0) ∧ 𝑧 ∈ ℤ) → 𝑀 = 0)
3631, 35breqtrrd 3926 . . . . . . . 8 ((((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ 𝑑 = 0) ∧ 𝑧 ∈ ℤ) → 𝑧𝑀)
373ad3antrrr 483 . . . . . . . . 9 ((((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ 𝑑 = 0) ∧ 𝑧 ∈ ℤ) → 𝑁 = 0)
3831, 37breqtrrd 3926 . . . . . . . 8 ((((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ 𝑑 = 0) ∧ 𝑧 ∈ ℤ) → 𝑧𝑁)
3936, 38jca 304 . . . . . . 7 ((((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ 𝑑 = 0) ∧ 𝑧 ∈ ℤ) → (𝑧𝑀𝑧𝑁))
4034, 392thd 174 . . . . . 6 ((((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ 𝑑 = 0) ∧ 𝑧 ∈ ℤ) → (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁)))
4140ralrimiva 2482 . . . . 5 (((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ 𝑑 = 0) → ∀𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁)))
4229, 41impbida 570 . . . 4 ((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) → (∀𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁)) ↔ 𝑑 = 0))
436, 42riota5 5723 . . 3 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) → (𝑑 ∈ ℕ0𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))) = 0)
441, 4, 433eqtr4a 2176 . 2 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) → (𝑀 gcd 𝑁) = (𝑑 ∈ ℕ0𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))))
45 bezoutlembi 11620 . . . . 5 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ∃𝑟 ∈ ℕ0 (∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)) ∧ ∃𝑎 ∈ ℤ ∃𝑏 ∈ ℤ 𝑟 = ((𝑀 · 𝑎) + (𝑁 · 𝑏))))
46 simpl 108 . . . . . 6 ((∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)) ∧ ∃𝑎 ∈ ℤ ∃𝑏 ∈ ℤ 𝑟 = ((𝑀 · 𝑎) + (𝑁 · 𝑏))) → ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))
4746reximi 2506 . . . . 5 (∃𝑟 ∈ ℕ0 (∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)) ∧ ∃𝑎 ∈ ℤ ∃𝑏 ∈ ℤ 𝑟 = ((𝑀 · 𝑎) + (𝑁 · 𝑏))) → ∃𝑟 ∈ ℕ0𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))
4845, 47syl 14 . . . 4 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ∃𝑟 ∈ ℕ0𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))
4948adantr 274 . . 3 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) → ∃𝑟 ∈ ℕ0𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))
50 simplll 507 . . . . 5 ((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ (𝑟 ∈ ℕ0 ∧ ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))) → 𝑀 ∈ ℤ)
51 simpllr 508 . . . . 5 ((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ (𝑟 ∈ ℕ0 ∧ ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))) → 𝑁 ∈ ℤ)
52 simprl 505 . . . . 5 ((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ (𝑟 ∈ ℕ0 ∧ ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))) → 𝑟 ∈ ℕ0)
53 breq1 3902 . . . . . . . . 9 (𝑤 = 𝑧 → (𝑤𝑟𝑧𝑟))
54 breq1 3902 . . . . . . . . . 10 (𝑤 = 𝑧 → (𝑤𝑀𝑧𝑀))
55 breq1 3902 . . . . . . . . . 10 (𝑤 = 𝑧 → (𝑤𝑁𝑧𝑁))
5654, 55anbi12d 464 . . . . . . . . 9 (𝑤 = 𝑧 → ((𝑤𝑀𝑤𝑁) ↔ (𝑧𝑀𝑧𝑁)))
5753, 56bibi12d 234 . . . . . . . 8 (𝑤 = 𝑧 → ((𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)) ↔ (𝑧𝑟 ↔ (𝑧𝑀𝑧𝑁))))
5857cbvralv 2631 . . . . . . 7 (∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)) ↔ ∀𝑧 ∈ ℤ (𝑧𝑟 ↔ (𝑧𝑀𝑧𝑁)))
5958biimpi 119 . . . . . 6 (∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)) → ∀𝑧 ∈ ℤ (𝑧𝑟 ↔ (𝑧𝑀𝑧𝑁)))
6059ad2antll 482 . . . . 5 ((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ (𝑟 ∈ ℕ0 ∧ ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))) → ∀𝑧 ∈ ℤ (𝑧𝑟 ↔ (𝑧𝑀𝑧𝑁)))
61 simplr 504 . . . . 5 ((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ (𝑟 ∈ ℕ0 ∧ ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))) → ¬ (𝑀 = 0 ∧ 𝑁 = 0))
6250, 51, 52, 60, 61bezoutlemsup 11624 . . . 4 ((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ (𝑟 ∈ ℕ0 ∧ ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))) → 𝑟 = sup({𝑧 ∈ ℤ ∣ (𝑧𝑀𝑧𝑁)}, ℝ, < ))
63 breq1 3902 . . . . . . . . 9 (𝑤 = 𝑧 → (𝑤𝑑𝑧𝑑))
6463, 56bibi12d 234 . . . . . . . 8 (𝑤 = 𝑧 → ((𝑤𝑑 ↔ (𝑤𝑀𝑤𝑁)) ↔ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))))
6564cbvralv 2631 . . . . . . 7 (∀𝑤 ∈ ℤ (𝑤𝑑 ↔ (𝑤𝑀𝑤𝑁)) ↔ ∀𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁)))
6665a1i 9 . . . . . 6 (𝑑 ∈ ℕ0 → (∀𝑤 ∈ ℤ (𝑤𝑑 ↔ (𝑤𝑀𝑤𝑁)) ↔ ∀𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))))
6766riotabiia 5715 . . . . 5 (𝑑 ∈ ℕ0𝑤 ∈ ℤ (𝑤𝑑 ↔ (𝑤𝑀𝑤𝑁))) = (𝑑 ∈ ℕ0𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁)))
68 simprr 506 . . . . . 6 ((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ (𝑟 ∈ ℕ0 ∧ ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))) → ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))
6950, 51, 52, 68bezoutlemeu 11622 . . . . . . 7 ((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ (𝑟 ∈ ℕ0 ∧ ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))) → ∃!𝑑 ∈ ℕ0𝑤 ∈ ℤ (𝑤𝑑 ↔ (𝑤𝑀𝑤𝑁)))
70 breq2 3903 . . . . . . . . . 10 (𝑑 = 𝑟 → (𝑤𝑑𝑤𝑟))
7170bibi1d 232 . . . . . . . . 9 (𝑑 = 𝑟 → ((𝑤𝑑 ↔ (𝑤𝑀𝑤𝑁)) ↔ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁))))
7271ralbidv 2414 . . . . . . . 8 (𝑑 = 𝑟 → (∀𝑤 ∈ ℤ (𝑤𝑑 ↔ (𝑤𝑀𝑤𝑁)) ↔ ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁))))
7372riota2 5720 . . . . . . 7 ((𝑟 ∈ ℕ0 ∧ ∃!𝑑 ∈ ℕ0𝑤 ∈ ℤ (𝑤𝑑 ↔ (𝑤𝑀𝑤𝑁))) → (∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)) ↔ (𝑑 ∈ ℕ0𝑤 ∈ ℤ (𝑤𝑑 ↔ (𝑤𝑀𝑤𝑁))) = 𝑟))
7452, 69, 73syl2anc 408 . . . . . 6 ((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ (𝑟 ∈ ℕ0 ∧ ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))) → (∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)) ↔ (𝑑 ∈ ℕ0𝑤 ∈ ℤ (𝑤𝑑 ↔ (𝑤𝑀𝑤𝑁))) = 𝑟))
7568, 74mpbid 146 . . . . 5 ((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ (𝑟 ∈ ℕ0 ∧ ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))) → (𝑑 ∈ ℕ0𝑤 ∈ ℤ (𝑤𝑑 ↔ (𝑤𝑀𝑤𝑁))) = 𝑟)
7667, 75syl5eqr 2164 . . . 4 ((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ (𝑟 ∈ ℕ0 ∧ ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))) → (𝑑 ∈ ℕ0𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))) = 𝑟)
77 gcdn0val 11577 . . . . 5 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) → (𝑀 gcd 𝑁) = sup({𝑧 ∈ ℤ ∣ (𝑧𝑀𝑧𝑁)}, ℝ, < ))
7877adantr 274 . . . 4 ((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ (𝑟 ∈ ℕ0 ∧ ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))) → (𝑀 gcd 𝑁) = sup({𝑧 ∈ ℤ ∣ (𝑧𝑀𝑧𝑁)}, ℝ, < ))
7962, 76, 783eqtr4rd 2161 . . 3 ((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ (𝑟 ∈ ℕ0 ∧ ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))) → (𝑀 gcd 𝑁) = (𝑑 ∈ ℕ0𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))))
8049, 79rexlimddv 2531 . 2 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) → (𝑀 gcd 𝑁) = (𝑑 ∈ ℕ0𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))))
81 gcdmndc 11564 . . 3 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → DECID (𝑀 = 0 ∧ 𝑁 = 0))
82 exmiddc 806 . . 3 (DECID (𝑀 = 0 ∧ 𝑁 = 0) → ((𝑀 = 0 ∧ 𝑁 = 0) ∨ ¬ (𝑀 = 0 ∧ 𝑁 = 0)))
8381, 82syl 14 . 2 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((𝑀 = 0 ∧ 𝑁 = 0) ∨ ¬ (𝑀 = 0 ∧ 𝑁 = 0)))
8444, 80, 83mpjaodan 772 1 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀 gcd 𝑁) = (𝑑 ∈ ℕ0𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))))
Colors of variables: wff set class
Syntax hints:  ¬ wn 3  wi 4  wa 103  wb 104  wo 682  DECID wdc 804   = wceq 1316  wcel 1465  wral 2393  wrex 2394  ∃!wreu 2395  {crab 2397   class class class wbr 3899  crio 5697  (class class class)co 5742  supcsup 6837  cr 7587  0cc0 7588   + caddc 7591   · cmul 7593   < clt 7768  0cn0 8945  cz 9022  cdvds 11420   gcd cgcd 11562
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 105  ax-ia2 106  ax-ia3 107  ax-in1 588  ax-in2 589  ax-io 683  ax-5 1408  ax-7 1409  ax-gen 1410  ax-ie1 1454  ax-ie2 1455  ax-8 1467  ax-10 1468  ax-11 1469  ax-i12 1470  ax-bndl 1471  ax-4 1472  ax-13 1476  ax-14 1477  ax-17 1491  ax-i9 1495  ax-ial 1499  ax-i5r 1500  ax-ext 2099  ax-coll 4013  ax-sep 4016  ax-nul 4024  ax-pow 4068  ax-pr 4101  ax-un 4325  ax-setind 4422  ax-iinf 4472  ax-cnex 7679  ax-resscn 7680  ax-1cn 7681  ax-1re 7682  ax-icn 7683  ax-addcl 7684  ax-addrcl 7685  ax-mulcl 7686  ax-mulrcl 7687  ax-addcom 7688  ax-mulcom 7689  ax-addass 7690  ax-mulass 7691  ax-distr 7692  ax-i2m1 7693  ax-0lt1 7694  ax-1rid 7695  ax-0id 7696  ax-rnegex 7697  ax-precex 7698  ax-cnre 7699  ax-pre-ltirr 7700  ax-pre-ltwlin 7701  ax-pre-lttrn 7702  ax-pre-apti 7703  ax-pre-ltadd 7704  ax-pre-mulgt0 7705  ax-pre-mulext 7706  ax-arch 7707  ax-caucvg 7708
This theorem depends on definitions:  df-bi 116  df-dc 805  df-3or 948  df-3an 949  df-tru 1319  df-fal 1322  df-nf 1422  df-sb 1721  df-eu 1980  df-mo 1981  df-clab 2104  df-cleq 2110  df-clel 2113  df-nfc 2247  df-ne 2286  df-nel 2381  df-ral 2398  df-rex 2399  df-reu 2400  df-rmo 2401  df-rab 2402  df-v 2662  df-sbc 2883  df-csb 2976  df-dif 3043  df-un 3045  df-in 3047  df-ss 3054  df-nul 3334  df-if 3445  df-pw 3482  df-sn 3503  df-pr 3504  df-op 3506  df-uni 3707  df-int 3742  df-iun 3785  df-br 3900  df-opab 3960  df-mpt 3961  df-tr 3997  df-id 4185  df-po 4188  df-iso 4189  df-iord 4258  df-on 4260  df-ilim 4261  df-suc 4263  df-iom 4475  df-xp 4515  df-rel 4516  df-cnv 4517  df-co 4518  df-dm 4519  df-rn 4520  df-res 4521  df-ima 4522  df-iota 5058  df-fun 5095  df-fn 5096  df-f 5097  df-f1 5098  df-fo 5099  df-f1o 5100  df-fv 5101  df-riota 5698  df-ov 5745  df-oprab 5746  df-mpo 5747  df-1st 6006  df-2nd 6007  df-recs 6170  df-frec 6256  df-sup 6839  df-pnf 7770  df-mnf 7771  df-xr 7772  df-ltxr 7773  df-le 7774  df-sub 7903  df-neg 7904  df-reap 8305  df-ap 8312  df-div 8401  df-inn 8689  df-2 8747  df-3 8748  df-4 8749  df-n0 8946  df-z 9023  df-uz 9295  df-q 9380  df-rp 9410  df-fz 9759  df-fzo 9888  df-fl 10011  df-mod 10064  df-seqfrec 10187  df-exp 10261  df-cj 10582  df-re 10583  df-im 10584  df-rsqrt 10738  df-abs 10739  df-dvds 11421  df-gcd 11563
This theorem is referenced by:  bezout  11626
  Copyright terms: Public domain W3C validator