![]() |
Metamath Proof Explorer |
< Previous
Next >
Nearby theorems |
|
Mirrors > Home > MPE Home > Th. List > eucalgf | Structured version Visualization version GIF version |
Description: Domain and codomain of the step function 𝐸 for Euclid's Algorithm. (Contributed by Paul Chapman, 31-Mar-2011.) (Revised by Mario Carneiro, 28-May-2014.) |
Ref | Expression |
---|---|
eucalgval.1 | ⊢ 𝐸 = (𝑥 ∈ ℕ0, 𝑦 ∈ ℕ0 ↦ if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉)) |
Ref | Expression |
---|---|
eucalgf | ⊢ 𝐸:(ℕ0 × ℕ0)⟶(ℕ0 × ℕ0) |
Step | Hyp | Ref | Expression |
---|---|---|---|
1 | nnne0 11387 | . . . . . . . . 9 ⊢ (𝑦 ∈ ℕ → 𝑦 ≠ 0) | |
2 | 1 | adantl 475 | . . . . . . . 8 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ) → 𝑦 ≠ 0) |
3 | 2 | neneqd 3005 | . . . . . . 7 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ) → ¬ 𝑦 = 0) |
4 | 3 | iffalsed 4318 | . . . . . 6 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ) → if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉) = 〈𝑦, (𝑥 mod 𝑦)〉) |
5 | nnnn0 11627 | . . . . . . . 8 ⊢ (𝑦 ∈ ℕ → 𝑦 ∈ ℕ0) | |
6 | 5 | adantl 475 | . . . . . . 7 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ) → 𝑦 ∈ ℕ0) |
7 | nn0z 11729 | . . . . . . . 8 ⊢ (𝑥 ∈ ℕ0 → 𝑥 ∈ ℤ) | |
8 | zmodcl 12986 | . . . . . . . 8 ⊢ ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℕ) → (𝑥 mod 𝑦) ∈ ℕ0) | |
9 | 7, 8 | sylan 577 | . . . . . . 7 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ) → (𝑥 mod 𝑦) ∈ ℕ0) |
10 | opelxpi 5380 | . . . . . . 7 ⊢ ((𝑦 ∈ ℕ0 ∧ (𝑥 mod 𝑦) ∈ ℕ0) → 〈𝑦, (𝑥 mod 𝑦)〉 ∈ (ℕ0 × ℕ0)) | |
11 | 6, 9, 10 | syl2anc 581 | . . . . . 6 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ) → 〈𝑦, (𝑥 mod 𝑦)〉 ∈ (ℕ0 × ℕ0)) |
12 | 4, 11 | eqeltrd 2907 | . . . . 5 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ) → if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉) ∈ (ℕ0 × ℕ0)) |
13 | 12 | adantlr 708 | . . . 4 ⊢ (((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ0) ∧ 𝑦 ∈ ℕ) → if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉) ∈ (ℕ0 × ℕ0)) |
14 | iftrue 4313 | . . . . . 6 ⊢ (𝑦 = 0 → if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉) = 〈𝑥, 𝑦〉) | |
15 | 14 | adantl 475 | . . . . 5 ⊢ (((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ0) ∧ 𝑦 = 0) → if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉) = 〈𝑥, 𝑦〉) |
16 | opelxpi 5380 | . . . . . 6 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ0) → 〈𝑥, 𝑦〉 ∈ (ℕ0 × ℕ0)) | |
17 | 16 | adantr 474 | . . . . 5 ⊢ (((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ0) ∧ 𝑦 = 0) → 〈𝑥, 𝑦〉 ∈ (ℕ0 × ℕ0)) |
18 | 15, 17 | eqeltrd 2907 | . . . 4 ⊢ (((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ0) ∧ 𝑦 = 0) → if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉) ∈ (ℕ0 × ℕ0)) |
19 | simpr 479 | . . . . 5 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ0) → 𝑦 ∈ ℕ0) | |
20 | elnn0 11621 | . . . . 5 ⊢ (𝑦 ∈ ℕ0 ↔ (𝑦 ∈ ℕ ∨ 𝑦 = 0)) | |
21 | 19, 20 | sylib 210 | . . . 4 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ0) → (𝑦 ∈ ℕ ∨ 𝑦 = 0)) |
22 | 13, 18, 21 | mpjaodan 988 | . . 3 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ0) → if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉) ∈ (ℕ0 × ℕ0)) |
23 | 22 | rgen2a 3187 | . 2 ⊢ ∀𝑥 ∈ ℕ0 ∀𝑦 ∈ ℕ0 if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉) ∈ (ℕ0 × ℕ0) |
24 | eucalgval.1 | . . 3 ⊢ 𝐸 = (𝑥 ∈ ℕ0, 𝑦 ∈ ℕ0 ↦ if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉)) | |
25 | 24 | fmpt2 7501 | . 2 ⊢ (∀𝑥 ∈ ℕ0 ∀𝑦 ∈ ℕ0 if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉) ∈ (ℕ0 × ℕ0) ↔ 𝐸:(ℕ0 × ℕ0)⟶(ℕ0 × ℕ0)) |
26 | 23, 25 | mpbi 222 | 1 ⊢ 𝐸:(ℕ0 × ℕ0)⟶(ℕ0 × ℕ0) |
Colors of variables: wff setvar class |
Syntax hints: ∧ wa 386 ∨ wo 880 = wceq 1658 ∈ wcel 2166 ≠ wne 3000 ∀wral 3118 ifcif 4307 〈cop 4404 × cxp 5341 ⟶wf 6120 (class class class)co 6906 ↦ cmpt2 6908 0cc0 10253 ℕcn 11351 ℕ0cn0 11619 ℤcz 11705 mod cmo 12964 |
This theorem was proved from axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1896 ax-4 1910 ax-5 2011 ax-6 2077 ax-7 2114 ax-8 2168 ax-9 2175 ax-10 2194 ax-11 2209 ax-12 2222 ax-13 2391 ax-ext 2804 ax-sep 5006 ax-nul 5014 ax-pow 5066 ax-pr 5128 ax-un 7210 ax-cnex 10309 ax-resscn 10310 ax-1cn 10311 ax-icn 10312 ax-addcl 10313 ax-addrcl 10314 ax-mulcl 10315 ax-mulrcl 10316 ax-mulcom 10317 ax-addass 10318 ax-mulass 10319 ax-distr 10320 ax-i2m1 10321 ax-1ne0 10322 ax-1rid 10323 ax-rnegex 10324 ax-rrecex 10325 ax-cnre 10326 ax-pre-lttri 10327 ax-pre-lttrn 10328 ax-pre-ltadd 10329 ax-pre-mulgt0 10330 ax-pre-sup 10331 |
This theorem depends on definitions: df-bi 199 df-an 387 df-or 881 df-3or 1114 df-3an 1115 df-tru 1662 df-ex 1881 df-nf 1885 df-sb 2070 df-mo 2606 df-eu 2641 df-clab 2813 df-cleq 2819 df-clel 2822 df-nfc 2959 df-ne 3001 df-nel 3104 df-ral 3123 df-rex 3124 df-reu 3125 df-rmo 3126 df-rab 3127 df-v 3417 df-sbc 3664 df-csb 3759 df-dif 3802 df-un 3804 df-in 3806 df-ss 3813 df-pss 3815 df-nul 4146 df-if 4308 df-pw 4381 df-sn 4399 df-pr 4401 df-tp 4403 df-op 4405 df-uni 4660 df-iun 4743 df-br 4875 df-opab 4937 df-mpt 4954 df-tr 4977 df-id 5251 df-eprel 5256 df-po 5264 df-so 5265 df-fr 5302 df-we 5304 df-xp 5349 df-rel 5350 df-cnv 5351 df-co 5352 df-dm 5353 df-rn 5354 df-res 5355 df-ima 5356 df-pred 5921 df-ord 5967 df-on 5968 df-lim 5969 df-suc 5970 df-iota 6087 df-fun 6126 df-fn 6127 df-f 6128 df-f1 6129 df-fo 6130 df-f1o 6131 df-fv 6132 df-riota 6867 df-ov 6909 df-oprab 6910 df-mpt2 6911 df-om 7328 df-1st 7429 df-2nd 7430 df-wrecs 7673 df-recs 7735 df-rdg 7773 df-er 8010 df-en 8224 df-dom 8225 df-sdom 8226 df-sup 8618 df-inf 8619 df-pnf 10394 df-mnf 10395 df-xr 10396 df-ltxr 10397 df-le 10398 df-sub 10588 df-neg 10589 df-div 11011 df-nn 11352 df-n0 11620 df-z 11706 df-uz 11970 df-rp 12114 df-fl 12889 df-mod 12965 |
This theorem is referenced by: eucalgcvga 15673 eucalg 15674 |
Copyright terms: Public domain | W3C validator |