![]() |
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 11265 | . . . . . . . . 9 ⊢ (𝑦 ∈ ℕ → 𝑦 ≠ 0) | |
2 | 1 | adantl 473 | . . . . . . . 8 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ) → 𝑦 ≠ 0) |
3 | 2 | neneqd 2937 | . . . . . . 7 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ) → ¬ 𝑦 = 0) |
4 | 3 | iffalsed 4241 | . . . . . 6 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ) → if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉) = 〈𝑦, (𝑥 mod 𝑦)〉) |
5 | nnnn0 11511 | . . . . . . . 8 ⊢ (𝑦 ∈ ℕ → 𝑦 ∈ ℕ0) | |
6 | 5 | adantl 473 | . . . . . . 7 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ) → 𝑦 ∈ ℕ0) |
7 | nn0z 11612 | . . . . . . . 8 ⊢ (𝑥 ∈ ℕ0 → 𝑥 ∈ ℤ) | |
8 | zmodcl 12904 | . . . . . . . 8 ⊢ ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℕ) → (𝑥 mod 𝑦) ∈ ℕ0) | |
9 | 7, 8 | sylan 489 | . . . . . . 7 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ) → (𝑥 mod 𝑦) ∈ ℕ0) |
10 | opelxpi 5305 | . . . . . . 7 ⊢ ((𝑦 ∈ ℕ0 ∧ (𝑥 mod 𝑦) ∈ ℕ0) → 〈𝑦, (𝑥 mod 𝑦)〉 ∈ (ℕ0 × ℕ0)) | |
11 | 6, 9, 10 | syl2anc 696 | . . . . . 6 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ) → 〈𝑦, (𝑥 mod 𝑦)〉 ∈ (ℕ0 × ℕ0)) |
12 | 4, 11 | eqeltrd 2839 | . . . . 5 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ) → if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉) ∈ (ℕ0 × ℕ0)) |
13 | 12 | adantlr 753 | . . . 4 ⊢ (((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ0) ∧ 𝑦 ∈ ℕ) → if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉) ∈ (ℕ0 × ℕ0)) |
14 | iftrue 4236 | . . . . . 6 ⊢ (𝑦 = 0 → if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉) = 〈𝑥, 𝑦〉) | |
15 | 14 | adantl 473 | . . . . 5 ⊢ (((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ0) ∧ 𝑦 = 0) → if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉) = 〈𝑥, 𝑦〉) |
16 | opelxpi 5305 | . . . . . 6 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ0) → 〈𝑥, 𝑦〉 ∈ (ℕ0 × ℕ0)) | |
17 | 16 | adantr 472 | . . . . 5 ⊢ (((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ0) ∧ 𝑦 = 0) → 〈𝑥, 𝑦〉 ∈ (ℕ0 × ℕ0)) |
18 | 15, 17 | eqeltrd 2839 | . . . 4 ⊢ (((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ0) ∧ 𝑦 = 0) → if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉) ∈ (ℕ0 × ℕ0)) |
19 | simpr 479 | . . . . 5 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ0) → 𝑦 ∈ ℕ0) | |
20 | elnn0 11506 | . . . . 5 ⊢ (𝑦 ∈ ℕ0 ↔ (𝑦 ∈ ℕ ∨ 𝑦 = 0)) | |
21 | 19, 20 | sylib 208 | . . . 4 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ0) → (𝑦 ∈ ℕ ∨ 𝑦 = 0)) |
22 | 13, 18, 21 | mpjaodan 862 | . . 3 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ0) → if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉) ∈ (ℕ0 × ℕ0)) |
23 | 22 | rgen2a 3115 | . 2 ⊢ ∀𝑥 ∈ ℕ0 ∀𝑦 ∈ ℕ0 if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉) ∈ (ℕ0 × ℕ0) |
24 | eucalgval.1 | . . 3 ⊢ 𝐸 = (𝑥 ∈ ℕ0, 𝑦 ∈ ℕ0 ↦ if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉)) | |
25 | 24 | fmpt2 7406 | . 2 ⊢ (∀𝑥 ∈ ℕ0 ∀𝑦 ∈ ℕ0 if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉) ∈ (ℕ0 × ℕ0) ↔ 𝐸:(ℕ0 × ℕ0)⟶(ℕ0 × ℕ0)) |
26 | 23, 25 | mpbi 220 | 1 ⊢ 𝐸:(ℕ0 × ℕ0)⟶(ℕ0 × ℕ0) |
Colors of variables: wff setvar class |
Syntax hints: ∨ wo 382 ∧ wa 383 = wceq 1632 ∈ wcel 2139 ≠ wne 2932 ∀wral 3050 ifcif 4230 〈cop 4327 × cxp 5264 ⟶wf 6045 (class class class)co 6814 ↦ cmpt2 6816 0cc0 10148 ℕcn 11232 ℕ0cn0 11504 ℤcz 11589 mod cmo 12882 |
This theorem was proved from axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1871 ax-4 1886 ax-5 1988 ax-6 2054 ax-7 2090 ax-8 2141 ax-9 2148 ax-10 2168 ax-11 2183 ax-12 2196 ax-13 2391 ax-ext 2740 ax-sep 4933 ax-nul 4941 ax-pow 4992 ax-pr 5055 ax-un 7115 ax-cnex 10204 ax-resscn 10205 ax-1cn 10206 ax-icn 10207 ax-addcl 10208 ax-addrcl 10209 ax-mulcl 10210 ax-mulrcl 10211 ax-mulcom 10212 ax-addass 10213 ax-mulass 10214 ax-distr 10215 ax-i2m1 10216 ax-1ne0 10217 ax-1rid 10218 ax-rnegex 10219 ax-rrecex 10220 ax-cnre 10221 ax-pre-lttri 10222 ax-pre-lttrn 10223 ax-pre-ltadd 10224 ax-pre-mulgt0 10225 ax-pre-sup 10226 |
This theorem depends on definitions: df-bi 197 df-or 384 df-an 385 df-3or 1073 df-3an 1074 df-tru 1635 df-ex 1854 df-nf 1859 df-sb 2047 df-eu 2611 df-mo 2612 df-clab 2747 df-cleq 2753 df-clel 2756 df-nfc 2891 df-ne 2933 df-nel 3036 df-ral 3055 df-rex 3056 df-reu 3057 df-rmo 3058 df-rab 3059 df-v 3342 df-sbc 3577 df-csb 3675 df-dif 3718 df-un 3720 df-in 3722 df-ss 3729 df-pss 3731 df-nul 4059 df-if 4231 df-pw 4304 df-sn 4322 df-pr 4324 df-tp 4326 df-op 4328 df-uni 4589 df-iun 4674 df-br 4805 df-opab 4865 df-mpt 4882 df-tr 4905 df-id 5174 df-eprel 5179 df-po 5187 df-so 5188 df-fr 5225 df-we 5227 df-xp 5272 df-rel 5273 df-cnv 5274 df-co 5275 df-dm 5276 df-rn 5277 df-res 5278 df-ima 5279 df-pred 5841 df-ord 5887 df-on 5888 df-lim 5889 df-suc 5890 df-iota 6012 df-fun 6051 df-fn 6052 df-f 6053 df-f1 6054 df-fo 6055 df-f1o 6056 df-fv 6057 df-riota 6775 df-ov 6817 df-oprab 6818 df-mpt2 6819 df-om 7232 df-1st 7334 df-2nd 7335 df-wrecs 7577 df-recs 7638 df-rdg 7676 df-er 7913 df-en 8124 df-dom 8125 df-sdom 8126 df-sup 8515 df-inf 8516 df-pnf 10288 df-mnf 10289 df-xr 10290 df-ltxr 10291 df-le 10292 df-sub 10480 df-neg 10481 df-div 10897 df-nn 11233 df-n0 11505 df-z 11590 df-uz 11900 df-rp 12046 df-fl 12807 df-mod 12883 |
This theorem is referenced by: eucalgcvga 15521 eucalg 15522 |
Copyright terms: Public domain | W3C validator |