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

Theorem dfgcd3 10399
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 10352 . . 3 (0 gcd 0) = 0
2 simprl 497 . . . 4 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) → 𝑀 = 0)
3 simprr 498 . . . 4 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) → 𝑁 = 0)
42, 3oveq12d 5550 . . 3 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) → (𝑀 gcd 𝑁) = (0 gcd 0))
5 0nn0 8303 . . . . 5 0 ∈ ℕ0
65a1i 9 . . . 4 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) → 0 ∈ ℕ0)
7 0dvds 10215 . . . . . . . . . . 11 (𝑀 ∈ ℤ → (0 ∥ 𝑀𝑀 = 0))
87ad2antrr 471 . . . . . . . . . 10 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) → (0 ∥ 𝑀𝑀 = 0))
92, 8mpbird 165 . . . . . . . . 9 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) → 0 ∥ 𝑀)
10 0dvds 10215 . . . . . . . . . . 11 (𝑁 ∈ ℤ → (0 ∥ 𝑁𝑁 = 0))
1110ad2antlr 472 . . . . . . . . . 10 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) → (0 ∥ 𝑁𝑁 = 0))
123, 11mpbird 165 . . . . . . . . 9 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) → 0 ∥ 𝑁)
139, 12jca 300 . . . . . . . 8 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) → (0 ∥ 𝑀 ∧ 0 ∥ 𝑁))
1413ad2antrr 471 . . . . . . 7 (((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ ∀𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))) → (0 ∥ 𝑀 ∧ 0 ∥ 𝑁))
15 0z 8362 . . . . . . . . 9 0 ∈ ℤ
16 breq1 3788 . . . . . . . . . . 11 (𝑧 = 0 → (𝑧𝑑 ↔ 0 ∥ 𝑑))
17 breq1 3788 . . . . . . . . . . . 12 (𝑧 = 0 → (𝑧𝑀 ↔ 0 ∥ 𝑀))
18 breq1 3788 . . . . . . . . . . . 12 (𝑧 = 0 → (𝑧𝑁 ↔ 0 ∥ 𝑁))
1917, 18anbi12d 456 . . . . . . . . . . 11 (𝑧 = 0 → ((𝑧𝑀𝑧𝑁) ↔ (0 ∥ 𝑀 ∧ 0 ∥ 𝑁)))
2016, 19bibi12d 233 . . . . . . . . . 10 (𝑧 = 0 → ((𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁)) ↔ (0 ∥ 𝑑 ↔ (0 ∥ 𝑀 ∧ 0 ∥ 𝑁))))
2120rspcv 2697 . . . . . . . . 9 (0 ∈ ℤ → (∀𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁)) → (0 ∥ 𝑑 ↔ (0 ∥ 𝑀 ∧ 0 ∥ 𝑁))))
2215, 21ax-mp 7 . . . . . . . 8 (∀𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁)) → (0 ∥ 𝑑 ↔ (0 ∥ 𝑀 ∧ 0 ∥ 𝑁)))
2322adantl 271 . . . . . . 7 (((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ ∀𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))) → (0 ∥ 𝑑 ↔ (0 ∥ 𝑀 ∧ 0 ∥ 𝑁)))
2414, 23mpbird 165 . . . . . 6 (((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ ∀𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))) → 0 ∥ 𝑑)
25 simplr 496 . . . . . . . 8 (((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ ∀𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))) → 𝑑 ∈ ℕ0)
2625nn0zd 8467 . . . . . . 7 (((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ ∀𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))) → 𝑑 ∈ ℤ)
27 0dvds 10215 . . . . . . 7 (𝑑 ∈ ℤ → (0 ∥ 𝑑𝑑 = 0))
2826, 27syl 14 . . . . . 6 (((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ ∀𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))) → (0 ∥ 𝑑𝑑 = 0))
2924, 28mpbid 145 . . . . 5 (((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ ∀𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))) → 𝑑 = 0)
30 dvds0 10210 . . . . . . . . 9 (𝑧 ∈ ℤ → 𝑧 ∥ 0)
3130adantl 271 . . . . . . . 8 ((((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ 𝑑 = 0) ∧ 𝑧 ∈ ℤ) → 𝑧 ∥ 0)
32 breq2 3789 . . . . . . . . 9 (𝑑 = 0 → (𝑧𝑑𝑧 ∥ 0))
3332ad2antlr 472 . . . . . . . 8 ((((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ 𝑑 = 0) ∧ 𝑧 ∈ ℤ) → (𝑧𝑑𝑧 ∥ 0))
3431, 33mpbird 165 . . . . . . 7 ((((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ 𝑑 = 0) ∧ 𝑧 ∈ ℤ) → 𝑧𝑑)
352ad3antrrr 475 . . . . . . . . 9 ((((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ 𝑑 = 0) ∧ 𝑧 ∈ ℤ) → 𝑀 = 0)
3631, 35breqtrrd 3811 . . . . . . . 8 ((((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ 𝑑 = 0) ∧ 𝑧 ∈ ℤ) → 𝑧𝑀)
373ad3antrrr 475 . . . . . . . . 9 ((((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ 𝑑 = 0) ∧ 𝑧 ∈ ℤ) → 𝑁 = 0)
3831, 37breqtrrd 3811 . . . . . . . 8 ((((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ 𝑑 = 0) ∧ 𝑧 ∈ ℤ) → 𝑧𝑁)
3936, 38jca 300 . . . . . . 7 ((((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ 𝑑 = 0) ∧ 𝑧 ∈ ℤ) → (𝑧𝑀𝑧𝑁))
4034, 392thd 173 . . . . . 6 ((((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ 𝑑 = 0) ∧ 𝑧 ∈ ℤ) → (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁)))
4140ralrimiva 2434 . . . . 5 (((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) ∧ 𝑑 = 0) → ∀𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁)))
4229, 41impbida 560 . . . 4 ((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ 𝑑 ∈ ℕ0) → (∀𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁)) ↔ 𝑑 = 0))
436, 42riota5 5513 . . 3 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) → (𝑑 ∈ ℕ0𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))) = 0)
441, 4, 433eqtr4a 2139 . 2 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑀 = 0 ∧ 𝑁 = 0)) → (𝑀 gcd 𝑁) = (𝑑 ∈ ℕ0𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))))
45 bezoutlembi 10394 . . . . 5 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ∃𝑟 ∈ ℕ0 (∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)) ∧ ∃𝑎 ∈ ℤ ∃𝑏 ∈ ℤ 𝑟 = ((𝑀 · 𝑎) + (𝑁 · 𝑏))))
46 simpl 107 . . . . . 6 ((∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)) ∧ ∃𝑎 ∈ ℤ ∃𝑏 ∈ ℤ 𝑟 = ((𝑀 · 𝑎) + (𝑁 · 𝑏))) → ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))
4746reximi 2458 . . . . 5 (∃𝑟 ∈ ℕ0 (∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)) ∧ ∃𝑎 ∈ ℤ ∃𝑏 ∈ ℤ 𝑟 = ((𝑀 · 𝑎) + (𝑁 · 𝑏))) → ∃𝑟 ∈ ℕ0𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))
4845, 47syl 14 . . . 4 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ∃𝑟 ∈ ℕ0𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))
4948adantr 270 . . 3 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) → ∃𝑟 ∈ ℕ0𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))
50 simplll 499 . . . . 5 ((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ (𝑟 ∈ ℕ0 ∧ ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))) → 𝑀 ∈ ℤ)
51 simpllr 500 . . . . 5 ((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ (𝑟 ∈ ℕ0 ∧ ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))) → 𝑁 ∈ ℤ)
52 simprl 497 . . . . 5 ((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ (𝑟 ∈ ℕ0 ∧ ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))) → 𝑟 ∈ ℕ0)
53 breq1 3788 . . . . . . . . 9 (𝑤 = 𝑧 → (𝑤𝑟𝑧𝑟))
54 breq1 3788 . . . . . . . . . 10 (𝑤 = 𝑧 → (𝑤𝑀𝑧𝑀))
55 breq1 3788 . . . . . . . . . 10 (𝑤 = 𝑧 → (𝑤𝑁𝑧𝑁))
5654, 55anbi12d 456 . . . . . . . . 9 (𝑤 = 𝑧 → ((𝑤𝑀𝑤𝑁) ↔ (𝑧𝑀𝑧𝑁)))
5753, 56bibi12d 233 . . . . . . . 8 (𝑤 = 𝑧 → ((𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)) ↔ (𝑧𝑟 ↔ (𝑧𝑀𝑧𝑁))))
5857cbvralv 2577 . . . . . . 7 (∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)) ↔ ∀𝑧 ∈ ℤ (𝑧𝑟 ↔ (𝑧𝑀𝑧𝑁)))
5958biimpi 118 . . . . . 6 (∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)) → ∀𝑧 ∈ ℤ (𝑧𝑟 ↔ (𝑧𝑀𝑧𝑁)))
6059ad2antll 474 . . . . 5 ((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ (𝑟 ∈ ℕ0 ∧ ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))) → ∀𝑧 ∈ ℤ (𝑧𝑟 ↔ (𝑧𝑀𝑧𝑁)))
61 simplr 496 . . . . 5 ((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ (𝑟 ∈ ℕ0 ∧ ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))) → ¬ (𝑀 = 0 ∧ 𝑁 = 0))
6250, 51, 52, 60, 61bezoutlemsup 10398 . . . 4 ((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ (𝑟 ∈ ℕ0 ∧ ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))) → 𝑟 = sup({𝑧 ∈ ℤ ∣ (𝑧𝑀𝑧𝑁)}, ℝ, < ))
63 breq1 3788 . . . . . . . . 9 (𝑤 = 𝑧 → (𝑤𝑑𝑧𝑑))
6463, 56bibi12d 233 . . . . . . . 8 (𝑤 = 𝑧 → ((𝑤𝑑 ↔ (𝑤𝑀𝑤𝑁)) ↔ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))))
6564cbvralv 2577 . . . . . . 7 (∀𝑤 ∈ ℤ (𝑤𝑑 ↔ (𝑤𝑀𝑤𝑁)) ↔ ∀𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁)))
6665a1i 9 . . . . . 6 (𝑑 ∈ ℕ0 → (∀𝑤 ∈ ℤ (𝑤𝑑 ↔ (𝑤𝑀𝑤𝑁)) ↔ ∀𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))))
6766riotabiia 5505 . . . . 5 (𝑑 ∈ ℕ0𝑤 ∈ ℤ (𝑤𝑑 ↔ (𝑤𝑀𝑤𝑁))) = (𝑑 ∈ ℕ0𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁)))
68 simprr 498 . . . . . 6 ((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ (𝑟 ∈ ℕ0 ∧ ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))) → ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))
6950, 51, 52, 68bezoutlemeu 10396 . . . . . . 7 ((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ (𝑟 ∈ ℕ0 ∧ ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))) → ∃!𝑑 ∈ ℕ0𝑤 ∈ ℤ (𝑤𝑑 ↔ (𝑤𝑀𝑤𝑁)))
70 breq2 3789 . . . . . . . . . 10 (𝑑 = 𝑟 → (𝑤𝑑𝑤𝑟))
7170bibi1d 231 . . . . . . . . 9 (𝑑 = 𝑟 → ((𝑤𝑑 ↔ (𝑤𝑀𝑤𝑁)) ↔ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁))))
7271ralbidv 2368 . . . . . . . 8 (𝑑 = 𝑟 → (∀𝑤 ∈ ℤ (𝑤𝑑 ↔ (𝑤𝑀𝑤𝑁)) ↔ ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁))))
7372riota2 5510 . . . . . . 7 ((𝑟 ∈ ℕ0 ∧ ∃!𝑑 ∈ ℕ0𝑤 ∈ ℤ (𝑤𝑑 ↔ (𝑤𝑀𝑤𝑁))) → (∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)) ↔ (𝑑 ∈ ℕ0𝑤 ∈ ℤ (𝑤𝑑 ↔ (𝑤𝑀𝑤𝑁))) = 𝑟))
7452, 69, 73syl2anc 403 . . . . . 6 ((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ (𝑟 ∈ ℕ0 ∧ ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))) → (∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)) ↔ (𝑑 ∈ ℕ0𝑤 ∈ ℤ (𝑤𝑑 ↔ (𝑤𝑀𝑤𝑁))) = 𝑟))
7568, 74mpbid 145 . . . . 5 ((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ (𝑟 ∈ ℕ0 ∧ ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))) → (𝑑 ∈ ℕ0𝑤 ∈ ℤ (𝑤𝑑 ↔ (𝑤𝑀𝑤𝑁))) = 𝑟)
7667, 75syl5eqr 2127 . . . 4 ((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ (𝑟 ∈ ℕ0 ∧ ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))) → (𝑑 ∈ ℕ0𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))) = 𝑟)
77 gcdn0val 10353 . . . . 5 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) → (𝑀 gcd 𝑁) = sup({𝑧 ∈ ℤ ∣ (𝑧𝑀𝑧𝑁)}, ℝ, < ))
7877adantr 270 . . . 4 ((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ (𝑟 ∈ ℕ0 ∧ ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))) → (𝑀 gcd 𝑁) = sup({𝑧 ∈ ℤ ∣ (𝑧𝑀𝑧𝑁)}, ℝ, < ))
7962, 76, 783eqtr4rd 2124 . . 3 ((((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) ∧ (𝑟 ∈ ℕ0 ∧ ∀𝑤 ∈ ℤ (𝑤𝑟 ↔ (𝑤𝑀𝑤𝑁)))) → (𝑀 gcd 𝑁) = (𝑑 ∈ ℕ0𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))))
8049, 79rexlimddv 2481 . 2 (((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ ¬ (𝑀 = 0 ∧ 𝑁 = 0)) → (𝑀 gcd 𝑁) = (𝑑 ∈ ℕ0𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))))
81 gcdmndc 10340 . . 3 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → DECID (𝑀 = 0 ∧ 𝑁 = 0))
82 exmiddc 777 . . 3 (DECID (𝑀 = 0 ∧ 𝑁 = 0) → ((𝑀 = 0 ∧ 𝑁 = 0) ∨ ¬ (𝑀 = 0 ∧ 𝑁 = 0)))
8381, 82syl 14 . 2 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → ((𝑀 = 0 ∧ 𝑁 = 0) ∨ ¬ (𝑀 = 0 ∧ 𝑁 = 0)))
8444, 80, 83mpjaodan 744 1 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀 gcd 𝑁) = (𝑑 ∈ ℕ0𝑧 ∈ ℤ (𝑧𝑑 ↔ (𝑧𝑀𝑧𝑁))))
Colors of variables: wff set class
Syntax hints:  ¬ wn 3  wi 4  wa 102  wb 103  wo 661  DECID wdc 775   = wceq 1284  wcel 1433  wral 2348  wrex 2349  ∃!wreu 2350  {crab 2352   class class class wbr 3785  crio 5487  (class class class)co 5532  supcsup 6395  cr 6980  0cc0 6981   + caddc 6984   · cmul 6986   < clt 7153  0cn0 8288  cz 8351  cdvds 10195   gcd cgcd 10338
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-mp 7  ax-ia1 104  ax-ia2 105  ax-ia3 106  ax-in1 576  ax-in2 577  ax-io 662  ax-5 1376  ax-7 1377  ax-gen 1378  ax-ie1 1422  ax-ie2 1423  ax-8 1435  ax-10 1436  ax-11 1437  ax-i12 1438  ax-bndl 1439  ax-4 1440  ax-13 1444  ax-14 1445  ax-17 1459  ax-i9 1463  ax-ial 1467  ax-i5r 1468  ax-ext 2063  ax-coll 3893  ax-sep 3896  ax-nul 3904  ax-pow 3948  ax-pr 3964  ax-un 4188  ax-setind 4280  ax-iinf 4329  ax-cnex 7067  ax-resscn 7068  ax-1cn 7069  ax-1re 7070  ax-icn 7071  ax-addcl 7072  ax-addrcl 7073  ax-mulcl 7074  ax-mulrcl 7075  ax-addcom 7076  ax-mulcom 7077  ax-addass 7078  ax-mulass 7079  ax-distr 7080  ax-i2m1 7081  ax-0lt1 7082  ax-1rid 7083  ax-0id 7084  ax-rnegex 7085  ax-precex 7086  ax-cnre 7087  ax-pre-ltirr 7088  ax-pre-ltwlin 7089  ax-pre-lttrn 7090  ax-pre-apti 7091  ax-pre-ltadd 7092  ax-pre-mulgt0 7093  ax-pre-mulext 7094  ax-arch 7095  ax-caucvg 7096
This theorem depends on definitions:  df-bi 115  df-dc 776  df-3or 920  df-3an 921  df-tru 1287  df-fal 1290  df-nf 1390  df-sb 1686  df-eu 1944  df-mo 1945  df-clab 2068  df-cleq 2074  df-clel 2077  df-nfc 2208  df-ne 2246  df-nel 2340  df-ral 2353  df-rex 2354  df-reu 2355  df-rmo 2356  df-rab 2357  df-v 2603  df-sbc 2816  df-csb 2909  df-dif 2975  df-un 2977  df-in 2979  df-ss 2986  df-nul 3252  df-if 3352  df-pw 3384  df-sn 3404  df-pr 3405  df-op 3407  df-uni 3602  df-int 3637  df-iun 3680  df-br 3786  df-opab 3840  df-mpt 3841  df-tr 3876  df-id 4048  df-po 4051  df-iso 4052  df-iord 4121  df-on 4123  df-suc 4126  df-iom 4332  df-xp 4369  df-rel 4370  df-cnv 4371  df-co 4372  df-dm 4373  df-rn 4374  df-res 4375  df-ima 4376  df-iota 4887  df-fun 4924  df-fn 4925  df-f 4926  df-f1 4927  df-fo 4928  df-f1o 4929  df-fv 4930  df-riota 5488  df-ov 5535  df-oprab 5536  df-mpt2 5537  df-1st 5787  df-2nd 5788  df-recs 5943  df-frec 6001  df-sup 6397  df-pnf 7155  df-mnf 7156  df-xr 7157  df-ltxr 7158  df-le 7159  df-sub 7281  df-neg 7282  df-reap 7675  df-ap 7682  df-div 7761  df-inn 8040  df-2 8098  df-3 8099  df-4 8100  df-n0 8289  df-z 8352  df-uz 8620  df-q 8705  df-rp 8735  df-fz 9030  df-fzo 9153  df-fl 9274  df-mod 9325  df-iseq 9432  df-iexp 9476  df-cj 9729  df-re 9730  df-im 9731  df-rsqrt 9884  df-abs 9885  df-dvds 10196  df-gcd 10339
This theorem is referenced by:  bezout  10400
  Copyright terms: Public domain W3C validator