| Intuitionistic Logic Explorer |
< Previous
Next >
Nearby theorems |
||
| Mirrors > Home > ILE Home > Th. List > eucalgcvga | 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 6404 | . . . . . . 7 ⊢ (𝐴 ∈ (ℕ0 × ℕ0) → (2nd ‘𝐴) ∈ ℕ0) | |
| 3 | 1, 2 | eqeltrid 2325 | . . . . . 6 ⊢ (𝐴 ∈ (ℕ0 × ℕ0) → 𝑁 ∈ ℕ0) |
| 4 | eluznn0 10016 | . . . . . 6 ⊢ ((𝑁 ∈ ℕ0 ∧ 𝐾 ∈ (ℤ≥‘𝑁)) → 𝐾 ∈ ℕ0) | |
| 5 | 3, 4 | sylan 283 | . . . . 5 ⊢ ((𝐴 ∈ (ℕ0 × ℕ0) ∧ 𝐾 ∈ (ℤ≥‘𝑁)) → 𝐾 ∈ ℕ0) |
| 6 | nn0uz 9974 | . . . . . . 7 ⊢ ℕ0 = (ℤ≥‘0) | |
| 7 | eucalg.2 | . . . . . . 7 ⊢ 𝑅 = seq0((𝐸 ∘ 1st ), (ℕ0 × {𝐴})) | |
| 8 | 0zd 9668 | . . . . . . 7 ⊢ (𝐴 ∈ (ℕ0 × ℕ0) → 0 ∈ ℤ) | |
| 9 | id 19 | . . . . . . 7 ⊢ (𝐴 ∈ (ℕ0 × ℕ0) → 𝐴 ∈ (ℕ0 × ℕ0)) | |
| 10 | eucalgval.1 | . . . . . . . . 9 ⊢ 𝐸 = (𝑥 ∈ ℕ0, 𝑦 ∈ ℕ0 ↦ if(𝑦 = 0, 〈𝑥, 𝑦〉, 〈𝑦, (𝑥 mod 𝑦)〉)) | |
| 11 | 10 | eucalgf 12859 | . . . . . . . 8 ⊢ 𝐸:(ℕ0 × ℕ0)⟶(ℕ0 × ℕ0) |
| 12 | 11 | a1i 9 | . . . . . . 7 ⊢ (𝐴 ∈ (ℕ0 × ℕ0) → 𝐸:(ℕ0 × ℕ0)⟶(ℕ0 × ℕ0)) |
| 13 | 6, 7, 8, 9, 12 | algrf 12849 | . . . . . 6 ⊢ (𝐴 ∈ (ℕ0 × ℕ0) → 𝑅:ℕ0⟶(ℕ0 × ℕ0)) |
| 14 | 13 | ffvelcdmda 5846 | . . . . 5 ⊢ ((𝐴 ∈ (ℕ0 × ℕ0) ∧ 𝐾 ∈ ℕ0) → (𝑅‘𝐾) ∈ (ℕ0 × ℕ0)) |
| 15 | 5, 14 | syldan 282 | . . . 4 ⊢ ((𝐴 ∈ (ℕ0 × ℕ0) ∧ 𝐾 ∈ (ℤ≥‘𝑁)) → (𝑅‘𝐾) ∈ (ℕ0 × ℕ0)) |
| 16 | fvres 5722 | . . . 4 ⊢ ((𝑅‘𝐾) ∈ (ℕ0 × ℕ0) → ((2nd ↾ (ℕ0 × ℕ0))‘(𝑅‘𝐾)) = (2nd ‘(𝑅‘𝐾))) | |
| 17 | 15, 16 | syl 14 | . . 3 ⊢ ((𝐴 ∈ (ℕ0 × ℕ0) ∧ 𝐾 ∈ (ℤ≥‘𝑁)) → ((2nd ↾ (ℕ0 × ℕ0))‘(𝑅‘𝐾)) = (2nd ‘(𝑅‘𝐾))) |
| 18 | simpl 109 | . . . 4 ⊢ ((𝐴 ∈ (ℕ0 × ℕ0) ∧ 𝐾 ∈ (ℤ≥‘𝑁)) → 𝐴 ∈ (ℕ0 × ℕ0)) | |
| 19 | fvres 5722 | . . . . . . . 8 ⊢ (𝐴 ∈ (ℕ0 × ℕ0) → ((2nd ↾ (ℕ0 × ℕ0))‘𝐴) = (2nd ‘𝐴)) | |
| 20 | 19, 1 | eqtr4di 2289 | . . . . . . 7 ⊢ (𝐴 ∈ (ℕ0 × ℕ0) → ((2nd ↾ (ℕ0 × ℕ0))‘𝐴) = 𝑁) |
| 21 | 20 | fveq2d 5702 | . . . . . 6 ⊢ (𝐴 ∈ (ℕ0 × ℕ0) → (ℤ≥‘((2nd ↾ (ℕ0 × ℕ0))‘𝐴)) = (ℤ≥‘𝑁)) |
| 22 | 21 | eleq2d 2308 | . . . . 5 ⊢ (𝐴 ∈ (ℕ0 × ℕ0) → (𝐾 ∈ (ℤ≥‘((2nd ↾ (ℕ0 × ℕ0))‘𝐴)) ↔ 𝐾 ∈ (ℤ≥‘𝑁))) |
| 23 | 22 | biimpar 297 | . . . 4 ⊢ ((𝐴 ∈ (ℕ0 × ℕ0) ∧ 𝐾 ∈ (ℤ≥‘𝑁)) → 𝐾 ∈ (ℤ≥‘((2nd ↾ (ℕ0 × ℕ0))‘𝐴))) |
| 24 | f2ndres 6398 | . . . . 5 ⊢ (2nd ↾ (ℕ0 × ℕ0)):(ℕ0 × ℕ0)⟶ℕ0 | |
| 25 | 10 | eucalglt 12861 | . . . . . 6 ⊢ (𝑧 ∈ (ℕ0 × ℕ0) → ((2nd ‘(𝐸‘𝑧)) ≠ 0 → (2nd ‘(𝐸‘𝑧)) < (2nd ‘𝑧))) |
| 26 | 11 | ffvelcdmi 5845 | . . . . . . . 8 ⊢ (𝑧 ∈ (ℕ0 × ℕ0) → (𝐸‘𝑧) ∈ (ℕ0 × ℕ0)) |
| 27 | fvres 5722 | . . . . . . . 8 ⊢ ((𝐸‘𝑧) ∈ (ℕ0 × ℕ0) → ((2nd ↾ (ℕ0 × ℕ0))‘(𝐸‘𝑧)) = (2nd ‘(𝐸‘𝑧))) | |
| 28 | 26, 27 | syl 14 | . . . . . . 7 ⊢ (𝑧 ∈ (ℕ0 × ℕ0) → ((2nd ↾ (ℕ0 × ℕ0))‘(𝐸‘𝑧)) = (2nd ‘(𝐸‘𝑧))) |
| 29 | 28 | neeq1d 2438 | . . . . . 6 ⊢ (𝑧 ∈ (ℕ0 × ℕ0) → (((2nd ↾ (ℕ0 × ℕ0))‘(𝐸‘𝑧)) ≠ 0 ↔ (2nd ‘(𝐸‘𝑧)) ≠ 0)) |
| 30 | fvres 5722 | . . . . . . 7 ⊢ (𝑧 ∈ (ℕ0 × ℕ0) → ((2nd ↾ (ℕ0 × ℕ0))‘𝑧) = (2nd ‘𝑧)) | |
| 31 | 28, 30 | breq12d 4144 | . . . . . 6 ⊢ (𝑧 ∈ (ℕ0 × ℕ0) → (((2nd ↾ (ℕ0 × ℕ0))‘(𝐸‘𝑧)) < ((2nd ↾ (ℕ0 × ℕ0))‘𝑧) ↔ (2nd ‘(𝐸‘𝑧)) < (2nd ‘𝑧))) |
| 32 | 25, 29, 31 | 3imtr4d 203 | . . . . 5 ⊢ (𝑧 ∈ (ℕ0 × ℕ0) → (((2nd ↾ (ℕ0 × ℕ0))‘(𝐸‘𝑧)) ≠ 0 → ((2nd ↾ (ℕ0 × ℕ0))‘(𝐸‘𝑧)) < ((2nd ↾ (ℕ0 × ℕ0))‘𝑧))) |
| 33 | eqid 2238 | . . . . 5 ⊢ ((2nd ↾ (ℕ0 × ℕ0))‘𝐴) = ((2nd ↾ (ℕ0 × ℕ0))‘𝐴) | |
| 34 | 11, 7, 24, 32, 33 | algcvga 12855 | . . . 4 ⊢ (𝐴 ∈ (ℕ0 × ℕ0) → (𝐾 ∈ (ℤ≥‘((2nd ↾ (ℕ0 × ℕ0))‘𝐴)) → ((2nd ↾ (ℕ0 × ℕ0))‘(𝑅‘𝐾)) = 0)) |
| 35 | 18, 23, 34 | sylc 62 | . . 3 ⊢ ((𝐴 ∈ (ℕ0 × ℕ0) ∧ 𝐾 ∈ (ℤ≥‘𝑁)) → ((2nd ↾ (ℕ0 × ℕ0))‘(𝑅‘𝐾)) = 0) |
| 36 | 17, 35 | eqtr3d 2273 | . 2 ⊢ ((𝐴 ∈ (ℕ0 × ℕ0) ∧ 𝐾 ∈ (ℤ≥‘𝑁)) → (2nd ‘(𝑅‘𝐾)) = 0) |
| 37 | 36 | ex 115 | 1 ⊢ (𝐴 ∈ (ℕ0 × ℕ0) → (𝐾 ∈ (ℤ≥‘𝑁) → (2nd ‘(𝑅‘𝐾)) = 0)) |
| Colors of variables: wff set class |
| This proof depends on syntax axioms: → wi 4 ∧ wa 104 = wceq 1402 ∈ wcel 2209 ≠ wne 2420 ifcif 3638 {csn 3709 〈cop 3712 class class class wbr 4131 × cxp 4774 ↾ cres 4778 ∘ ccom 4780 ⟶wf 5376 ‘cfv 5380 (class class class)co 6088 ∈ cmpo 6090 1st c1st 6376 2nd c2nd 6377 0cc0 8186 < clt 8367 ℕ0cn0 9575 ℤ≥cuz 9938 mod cmo 10781 seqcseq 10906 |
| This proof depends on axioms: ax-mp 5 ax-1 6 ax-2 7 ax-ia1 106 ax-ia2 107 ax-ia3 108 ax-in1 623 ax-in2 624 ax-io 721 ax-5 1500 ax-7 1501 ax-gen 1502 ax-ie1 1546 ax-ie2 1547 ax-8 1557 ax-10 1558 ax-11 1559 ax-i12 1560 ax-bndl 1562 ax-4 1563 ax-17 1579 ax-i9 1583 ax-ial 1587 ax-i5r 1588 ax-14 2212 ax-ext 2220 ax-coll 4248 ax-sep 4251 ax-nul 4261 ax-pow 4313 ax-pr 4348 ax-un 4580 ax-setind 4686 ax-iinf 4737 ax-cnex 8277 ax-resscn 8278 ax-1cn 8279 ax-1re 8280 ax-icn 8281 ax-addcl 8282 ax-addrcl 8283 ax-mulcl 8284 ax-mulrcl 8285 ax-addcom 8286 ax-mulcom 8287 ax-addass 8288 ax-mulass 8289 ax-distr 8290 ax-i2m1 8291 ax-0lt1 8292 ax-1rid 8293 ax-0id 8294 ax-rnegex 8295 ax-precex 8296 ax-cnre 8297 ax-pre-ltirr 8298 ax-pre-ltwlin 8299 ax-pre-lttrn 8300 ax-pre-apti 8301 ax-pre-ltadd 8302 ax-pre-mulgt0 8303 ax-pre-mulext 8304 ax-arch 8305 |
| This proof depends on definitions: df-bi 117 df-stab 843 df-dc 847 df-3or 1010 df-3an 1011 df-tru 1405 df-fal 1408 df-nf 1514 df-sb 1816 df-eu 2089 df-mo 2090 df-clab 2225 df-cleq 2231 df-clel 2234 df-nfc 2381 df-ne 2421 df-nel 2516 df-ral 2533 df-rex 2534 df-reu 2535 df-rmo 2536 df-rab 2537 df-v 2823 df-sbc 3052 df-csb 3148 df-dif 3222 df-un 3224 df-in 3226 df-ss 3233 df-nul 3521 df-if 3639 df-pw 3690 df-sn 3715 df-pr 3716 df-op 3718 df-uni 3936 df-int 3971 df-iun 4014 df-br 4132 df-opab 4194 df-mpt 4195 df-tr 4232 df-id 4440 df-po 4443 df-iso 4444 df-iord 4513 df-on 4515 df-ilim 4516 df-suc 4518 df-iom 4740 df-xp 4782 df-rel 4783 df-cnv 4784 df-co 4785 df-dm 4786 df-rn 4787 df-res 4788 df-ima 4789 df-iota 5340 df-fun 5382 df-fn 5383 df-f 5384 df-f1 5385 df-fo 5386 df-f1o 5387 df-fv 5388 df-riota 6041 df-ov 6091 df-oprab 6092 df-mpo 6093 df-1st 6378 df-2nd 6379 df-recs 6580 df-frec 6666 df-pnf 8369 df-mnf 8370 df-xr 8371 df-ltxr 8372 df-le 8373 df-sub 8507 df-neg 8508 df-reap 8912 df-ap 8919 df-div 9012 df-inn 9315 df-n0 9576 df-z 9657 df-uz 9939 df-q 10037 df-rp 10073 df-fl 10723 df-mod 10782 df-seqfrec 10907 |
| This theorem is used by: eucalg 12863 |
| Copyright terms: Public domain | W3C validator |