Intuitionistic Logic Explorer |
< Previous
Next >
Nearby theorems |
||
Mirrors > Home > ILE Home > Th. List > eucalgf | 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 8716 | . . . . . . . . 9 ⊢ (𝑦 ∈ ℕ → 𝑦 ≠ 0) | |
2 | 1 | adantl 275 | . . . . . . . 8 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ) → 𝑦 ≠ 0) |
3 | 2 | neneqd 2306 | . . . . . . 7 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ) → ¬ 𝑦 = 0) |
4 | 3 | iffalsed 3454 | . . . . . 6 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ) → if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉) = 〈𝑦, (𝑥 mod 𝑦)〉) |
5 | nnnn0 8952 | . . . . . . . 8 ⊢ (𝑦 ∈ ℕ → 𝑦 ∈ ℕ0) | |
6 | 5 | adantl 275 | . . . . . . 7 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ) → 𝑦 ∈ ℕ0) |
7 | nn0z 9042 | . . . . . . . 8 ⊢ (𝑥 ∈ ℕ0 → 𝑥 ∈ ℤ) | |
8 | zmodcl 10085 | . . . . . . . 8 ⊢ ((𝑥 ∈ ℤ ∧ 𝑦 ∈ ℕ) → (𝑥 mod 𝑦) ∈ ℕ0) | |
9 | 7, 8 | sylan 281 | . . . . . . 7 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ) → (𝑥 mod 𝑦) ∈ ℕ0) |
10 | opelxpi 4541 | . . . . . . 7 ⊢ ((𝑦 ∈ ℕ0 ∧ (𝑥 mod 𝑦) ∈ ℕ0) → 〈𝑦, (𝑥 mod 𝑦)〉 ∈ (ℕ0 × ℕ0)) | |
11 | 6, 9, 10 | syl2anc 408 | . . . . . 6 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ) → 〈𝑦, (𝑥 mod 𝑦)〉 ∈ (ℕ0 × ℕ0)) |
12 | 4, 11 | eqeltrd 2194 | . . . . 5 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ) → if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉) ∈ (ℕ0 × ℕ0)) |
13 | 12 | adantlr 468 | . . . 4 ⊢ (((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ0) ∧ 𝑦 ∈ ℕ) → if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉) ∈ (ℕ0 × ℕ0)) |
14 | iftrue 3449 | . . . . . 6 ⊢ (𝑦 = 0 → if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉) = 〈𝑥, 𝑦〉) | |
15 | 14 | adantl 275 | . . . . 5 ⊢ (((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ0) ∧ 𝑦 = 0) → if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉) = 〈𝑥, 𝑦〉) |
16 | opelxpi 4541 | . . . . . 6 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ0) → 〈𝑥, 𝑦〉 ∈ (ℕ0 × ℕ0)) | |
17 | 16 | adantr 274 | . . . . 5 ⊢ (((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ0) ∧ 𝑦 = 0) → 〈𝑥, 𝑦〉 ∈ (ℕ0 × ℕ0)) |
18 | 15, 17 | eqeltrd 2194 | . . . 4 ⊢ (((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ0) ∧ 𝑦 = 0) → if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉) ∈ (ℕ0 × ℕ0)) |
19 | simpr 109 | . . . . 5 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ0) → 𝑦 ∈ ℕ0) | |
20 | elnn0 8947 | . . . . 5 ⊢ (𝑦 ∈ ℕ0 ↔ (𝑦 ∈ ℕ ∨ 𝑦 = 0)) | |
21 | 19, 20 | sylib 121 | . . . 4 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ0) → (𝑦 ∈ ℕ ∨ 𝑦 = 0)) |
22 | 13, 18, 21 | mpjaodan 772 | . . 3 ⊢ ((𝑥 ∈ ℕ0 ∧ 𝑦 ∈ ℕ0) → if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉) ∈ (ℕ0 × ℕ0)) |
23 | 22 | rgen2a 2463 | . 2 ⊢ ∀𝑥 ∈ ℕ0 ∀𝑦 ∈ ℕ0 if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉) ∈ (ℕ0 × ℕ0) |
24 | eucalgval.1 | . . 3 ⊢ 𝐸 = (𝑥 ∈ ℕ0, 𝑦 ∈ ℕ0 ↦ if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉)) | |
25 | 24 | fmpo 6067 | . 2 ⊢ (∀𝑥 ∈ ℕ0 ∀𝑦 ∈ ℕ0 if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉) ∈ (ℕ0 × ℕ0) ↔ 𝐸:(ℕ0 × ℕ0)⟶(ℕ0 × ℕ0)) |
26 | 23, 25 | mpbi 144 | 1 ⊢ 𝐸:(ℕ0 × ℕ0)⟶(ℕ0 × ℕ0) |
Colors of variables: wff set class |
Syntax hints: ∧ wa 103 ∨ wo 682 = wceq 1316 ∈ wcel 1465 ≠ wne 2285 ∀wral 2393 ifcif 3444 〈cop 3500 × cxp 4507 ⟶wf 5089 (class class class)co 5742 ∈ cmpo 5744 0cc0 7588 ℕcn 8688 ℕ0cn0 8945 ℤcz 9022 mod cmo 10063 |
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-sep 4016 ax-pow 4068 ax-pr 4101 ax-un 4325 ax-setind 4422 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 |
This theorem depends on definitions: df-bi 116 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-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-id 4185 df-po 4188 df-iso 4189 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-fv 5101 df-riota 5698 df-ov 5745 df-oprab 5746 df-mpo 5747 df-1st 6006 df-2nd 6007 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-n0 8946 df-z 9023 df-q 9380 df-rp 9410 df-fl 10011 df-mod 10064 |
This theorem is referenced by: eucalgcvga 11666 eucalg 11667 |
Copyright terms: Public domain | W3C validator |