| Metamath Proof Explorer |
< Previous
Next >
Nearby theorems |
||
| Mirrors > Home > MPE Home > Th. List > eucalgcvga | Structured version Visualization version GIF version | ||
| Description: Once Euclid's Algorithm halts after 𝑁 steps, the second element of the state remains 0 . (Contributed by Paul Chapman, 22-Jun-2011.) (Revised by Mario Carneiro, 29-May-2014.) |
| Ref | Expression |
|---|---|
| eucalgval.1 | ⊢ 𝐸 = (𝑥 ∈ ℕ0, 𝑦 ∈ ℕ0 ↦ if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉)) |
| eucalg.2 | ⊢ 𝑅 = seq0((𝐸 ∘ 1st ), (ℕ0 × {𝐴})) |
| eucalgcvga.3 | ⊢ 𝑁 = (2nd ‘𝐴) |
| Ref | Expression |
|---|---|
| eucalgcvga | ⊢ (𝐴 ∈ (ℕ0 × ℕ0) → (𝐾 ∈ (ℤ≥‘𝑁) → (2nd ‘(𝑅‘𝐾)) = 0)) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | eucalgcvga.3 | . . . . . . 7 ⊢ 𝑁 = (2nd ‘𝐴) | |
| 2 | xp2nd 8020 | . . . . . . 7 ⊢ (𝐴 ∈ (ℕ0 × ℕ0) → (2nd ‘𝐴) ∈ ℕ0) | |
| 3 | 1, 2 | eqeltrid 2867 | . . . . . 6 ⊢ (𝐴 ∈ (ℕ0 × ℕ0) → 𝑁 ∈ ℕ0) |
| 4 | eluznn0 12942 | . . . . . 6 ⊢ ((𝑁 ∈ ℕ0 ∧ 𝐾 ∈ (ℤ≥‘𝑁)) → 𝐾 ∈ ℕ0) | |
| 5 | 3, 4 | sylan 591 | . . . . 5 ⊢ ((𝐴 ∈ (ℕ0 × ℕ0) ∧ 𝐾 ∈ (ℤ≥‘𝑁)) → 𝐾 ∈ ℕ0) |
| 6 | nn0uz 12901 | . . . . . . 7 ⊢ ℕ0 = (ℤ≥‘0) | |
| 7 | eucalg.2 | . . . . . . 7 ⊢ 𝑅 = seq0((𝐸 ∘ 1st ), (ℕ0 × {𝐴})) | |
| 8 | 0zd 12604 | . . . . . . 7 ⊢ (𝐴 ∈ (ℕ0 × ℕ0) → 0 ∈ ℤ) | |
| 9 | id 23 | . . . . . . 7 ⊢ (𝐴 ∈ (ℕ0 × ℕ0) → 𝐴 ∈ (ℕ0 × ℕ0)) | |
| 10 | eucalgval.1 | . . . . . . . . 9 ⊢ 𝐸 = (𝑥 ∈ ℕ0, 𝑦 ∈ ℕ0 ↦ if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉)) | |
| 11 | 10 | eucalgf 16642 | . . . . . . . 8 ⊢ 𝐸:(ℕ0 × ℕ0)⟶(ℕ0 × ℕ0) |
| 12 | 11 | a1i 11 | . . . . . . 7 ⊢ (𝐴 ∈ (ℕ0 × ℕ0) → 𝐸:(ℕ0 × ℕ0)⟶(ℕ0 × ℕ0)) |
| 13 | 6, 7, 8, 9, 12 | algrf 16632 | . . . . . 6 ⊢ (𝐴 ∈ (ℕ0 × ℕ0) → 𝑅:ℕ0⟶(ℕ0 × ℕ0)) |
| 14 | 13 | ffvelcdmda 7081 | . . . . 5 ⊢ ((𝐴 ∈ (ℕ0 × ℕ0) ∧ 𝐾 ∈ ℕ0) → (𝑅‘𝐾) ∈ (ℕ0 × ℕ0)) |
| 15 | 5, 14 | syldan 602 | . . . 4 ⊢ ((𝐴 ∈ (ℕ0 × ℕ0) ∧ 𝐾 ∈ (ℤ≥‘𝑁)) → (𝑅‘𝐾) ∈ (ℕ0 × ℕ0)) |
| 16 | 15 | fvresd 6903 | . . 3 ⊢ ((𝐴 ∈ (ℕ0 × ℕ0) ∧ 𝐾 ∈ (ℤ≥‘𝑁)) → ((2nd ↾ (ℕ0 × ℕ0))‘(𝑅‘𝐾)) = (2nd ‘(𝑅‘𝐾))) |
| 17 | simpl 487 | . . . 4 ⊢ ((𝐴 ∈ (ℕ0 × ℕ0) ∧ 𝐾 ∈ (ℤ≥‘𝑁)) → 𝐴 ∈ (ℕ0 × ℕ0)) | |
| 18 | fvres 6902 | . . . . . . . 8 ⊢ (𝐴 ∈ (ℕ0 × ℕ0) → ((2nd ↾ (ℕ0 × ℕ0))‘𝐴) = (2nd ‘𝐴)) | |
| 19 | 18, 1 | eqtr4di 2816 | . . . . . . 7 ⊢ (𝐴 ∈ (ℕ0 × ℕ0) → ((2nd ↾ (ℕ0 × ℕ0))‘𝐴) = 𝑁) |
| 20 | 19 | fveq2d 6887 | . . . . . 6 ⊢ (𝐴 ∈ (ℕ0 × ℕ0) → (ℤ≥‘((2nd ↾ (ℕ0 × ℕ0))‘𝐴)) = (ℤ≥‘𝑁)) |
| 21 | 20 | eleq2d 2849 | . . . . 5 ⊢ (𝐴 ∈ (ℕ0 × ℕ0) → (𝐾 ∈ (ℤ≥‘((2nd ↾ (ℕ0 × ℕ0))‘𝐴)) ↔ 𝐾 ∈ (ℤ≥‘𝑁))) |
| 22 | 21 | biimpar 482 | . . . 4 ⊢ ((𝐴 ∈ (ℕ0 × ℕ0) ∧ 𝐾 ∈ (ℤ≥‘𝑁)) → 𝐾 ∈ (ℤ≥‘((2nd ↾ (ℕ0 × ℕ0))‘𝐴))) |
| 23 | f2ndres 8012 | . . . . 5 ⊢ (2nd ↾ (ℕ0 × ℕ0)):(ℕ0 × ℕ0)⟶ℕ0 | |
| 24 | 10 | eucalglt 16644 | . . . . . 6 ⊢ (𝑧 ∈ (ℕ0 × ℕ0) → ((2nd ‘(𝐸‘𝑧)) ≠ 0 → (2nd ‘(𝐸‘𝑧)) < (2nd ‘𝑧))) |
| 25 | 11 | ffvelcdmi 7080 | . . . . . . . 8 ⊢ (𝑧 ∈ (ℕ0 × ℕ0) → (𝐸‘𝑧) ∈ (ℕ0 × ℕ0)) |
| 26 | 25 | fvresd 6903 | . . . . . . 7 ⊢ (𝑧 ∈ (ℕ0 × ℕ0) → ((2nd ↾ (ℕ0 × ℕ0))‘(𝐸‘𝑧)) = (2nd ‘(𝐸‘𝑧))) |
| 27 | 26 | neeq1d 3017 | . . . . . 6 ⊢ (𝑧 ∈ (ℕ0 × ℕ0) → (((2nd ↾ (ℕ0 × ℕ0))‘(𝐸‘𝑧)) ≠ 0 ↔ (2nd ‘(𝐸‘𝑧)) ≠ 0)) |
| 28 | fvres 6902 | . . . . . . 7 ⊢ (𝑧 ∈ (ℕ0 × ℕ0) → ((2nd ↾ (ℕ0 × ℕ0))‘𝑧) = (2nd ‘𝑧)) | |
| 29 | 26, 28 | breq12d 5123 | . . . . . 6 ⊢ (𝑧 ∈ (ℕ0 × ℕ0) → (((2nd ↾ (ℕ0 × ℕ0))‘(𝐸‘𝑧)) < ((2nd ↾ (ℕ0 × ℕ0))‘𝑧) ↔ (2nd ‘(𝐸‘𝑧)) < (2nd ‘𝑧))) |
| 30 | 24, 27, 29 | 3imtr4d 297 | . . . . 5 ⊢ (𝑧 ∈ (ℕ0 × ℕ0) → (((2nd ↾ (ℕ0 × ℕ0))‘(𝐸‘𝑧)) ≠ 0 → ((2nd ↾ (ℕ0 × ℕ0))‘(𝐸‘𝑧)) < ((2nd ↾ (ℕ0 × ℕ0))‘𝑧))) |
| 31 | eqid 2763 | . . . . 5 ⊢ ((2nd ↾ (ℕ0 × ℕ0))‘𝐴) = ((2nd ↾ (ℕ0 × ℕ0))‘𝐴) | |
| 32 | 11, 7, 23, 30, 31 | algcvga 16638 | . . . 4 ⊢ (𝐴 ∈ (ℕ0 × ℕ0) → (𝐾 ∈ (ℤ≥‘((2nd ↾ (ℕ0 × ℕ0))‘𝐴)) → ((2nd ↾ (ℕ0 × ℕ0))‘(𝑅‘𝐾)) = 0)) |
| 33 | 17, 22, 32 | sylc 66 | . . 3 ⊢ ((𝐴 ∈ (ℕ0 × ℕ0) ∧ 𝐾 ∈ (ℤ≥‘𝑁)) → ((2nd ↾ (ℕ0 × ℕ0))‘(𝑅‘𝐾)) = 0) |
| 34 | 16, 33 | eqtr3d 2800 | . 2 ⊢ ((𝐴 ∈ (ℕ0 × ℕ0) ∧ 𝐾 ∈ (ℤ≥‘𝑁)) → (2nd ‘(𝑅‘𝐾)) = 0) |
| 35 | 34 | ex 417 | 1 ⊢ (𝐴 ∈ (ℕ0 × ℕ0) → (𝐾 ∈ (ℤ≥‘𝑁) → (2nd ‘(𝑅‘𝐾)) = 0)) |
| Colors of variables: wff setvar class |
| Syntax hints: → wi 4 ∧ wa 400 = wceq 1570 ∈ wcel 2143 ≠ wne 2958 ifcif 4488 {csn 4590 〈cop 4596 class class class wbr 5110 × cxp 5661 ↾ cres 5665 ∘ ccom 5667 ⟶wf 6534 ‘cfv 6538 (class class class)co 7412 ∈ cmpo 7414 1st c1st 7985 2nd c2nd 7986 0cc0 11101 < clt 11244 ℕ0cn0 12505 ℤ≥cuz 12863 mod cmo 13904 seqcseq 14039 |
| This theorem was proved from axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1825 ax-4 1839 ax-5 1940 ax-6 1997 ax-7 2038 ax-8 2145 ax-9 2153 ax-10 2176 ax-11 2192 ax-12 2213 ax-ext 2735 ax-sep 5258 ax-nul 5270 ax-pow 5338 ax-pr 5406 ax-un 7734 ax-cnex 11157 ax-resscn 11158 ax-1cn 11159 ax-icn 11160 ax-addcl 11161 ax-addrcl 11162 ax-mulcl 11163 ax-mulrcl 11164 ax-mulcom 11165 ax-addass 11166 ax-mulass 11167 ax-distr 11168 ax-i2m1 11169 ax-1ne0 11170 ax-1rid 11171 ax-rnegex 11172 ax-rrecex 11173 ax-cnre 11174 ax-pre-lttri 11175 ax-pre-lttrn 11176 ax-pre-ltadd 11177 ax-pre-mulgt0 11178 ax-pre-sup 11179 |
| This theorem depends on definitions: df-bi 210 df-an 401 df-or 861 df-3or 1104 df-3an 1105 df-tru 1573 df-fal 1583 df-ex 1810 df-nf 1814 df-sb 2097 df-mo 2567 df-eu 2597 df-clab 2742 df-cleq 2755 df-clel 2838 df-nfc 2912 df-ne 2959 df-nel 3065 df-ral 3080 df-rex 3090 df-rmo 3369 df-reu 3370 df-rab 3417 df-v 3457 df-sbc 3746 df-csb 3855 df-dif 3909 df-un 3911 df-in 3913 df-ss 3923 df-pss 3926 df-nul 4288 df-if 4489 df-pw 4565 df-sn 4591 df-pr 4593 df-op 4597 df-uni 4874 df-iun 4959 df-br 5111 df-opab 5175 df-mpt 5194 df-tr 5220 df-id 5558 df-eprel 5563 df-po 5571 df-so 5572 df-fr 5616 df-we 5618 df-xp 5669 df-rel 5670 df-cnv 5671 df-co 5672 df-dm 5673 df-rn 5674 df-res 5675 df-ima 5676 df-pred 6304 df-ord 6365 df-on 6366 df-lim 6367 df-suc 6368 df-iota 6494 df-fun 6540 df-fn 6541 df-f 6542 df-f1 6543 df-fo 6544 df-f1o 6545 df-fv 6546 df-riota 7369 df-ov 7415 df-oprab 7416 df-mpo 7417 df-om 7864 df-1st 7987 df-2nd 7988 df-frecs 8279 df-wrecs 8310 df-recs 8359 df-rdg 8398 df-er 8695 df-en 8945 df-dom 8946 df-sdom 8947 df-sup 9403 df-inf 9404 df-pnf 11246 df-mnf 11247 df-xr 11248 df-ltxr 11249 df-le 11250 df-sub 11444 df-neg 11445 df-div 11873 df-nn 12235 df-n0 12506 df-z 12593 df-uz 12864 df-rp 13018 df-fz 13537 df-fl 13827 df-mod 13905 df-seq 14040 |
| This theorem is referenced by: eucalg 16646 |
| Copyright terms: Public domain | W3C validator |