Intuitionistic Logic Explorer |
< Previous
Next >
Nearby theorems |
||
Mirrors > Home > ILE Home > Th. List > eucialg | Unicode version |
Description: Euclid's Algorithm
computes the greatest common divisor of two
nonnegative integers by repeatedly replacing the larger of them with
its remainder modulo the smaller until the remainder is 0. Theorem
1.15 in [ApostolNT] p. 20.
Upon halting, the 1st member of the final state is equal to the gcd of the values comprising the input state . This is Metamath 100 proof #69 (greatest common divisor algorithm). (Contributed by Jim Kingdon, 11-Jan-2022.) |
Ref | Expression |
---|---|
eucalgval.1 | |
eucialg.2 | |
eucialgcvga.3 | |
eucialg.3 |
Ref | Expression |
---|---|
eucialg |
Step | Hyp | Ref | Expression |
---|---|---|---|
1 | nn0uz 8653 | . . . . . . . 8 | |
2 | eucialg.2 | . . . . . . . 8 | |
3 | 0zd 8363 | . . . . . . . 8 | |
4 | eucialg.3 | . . . . . . . . 9 | |
5 | opelxpi 4394 | . . . . . . . . 9 | |
6 | 4, 5 | syl5eqel 2165 | . . . . . . . 8 |
7 | eucalgval.1 | . . . . . . . . . 10 | |
8 | 7 | eucalgf 10437 | . . . . . . . . 9 |
9 | 8 | a1i 9 | . . . . . . . 8 |
10 | nn0ex 8294 | . . . . . . . . . 10 | |
11 | 10, 10 | xpex 4471 | . . . . . . . . 9 |
12 | 11 | a1i 9 | . . . . . . . 8 |
13 | 1, 2, 3, 6, 9, 12 | ialgrf 10427 | . . . . . . 7 |
14 | ffvelrn 5321 | . . . . . . 7 | |
15 | 13, 14 | sylancom 411 | . . . . . 6 |
16 | 1st2nd2 5821 | . . . . . 6 | |
17 | 15, 16 | syl 14 | . . . . 5 |
18 | 17 | fveq2d 5202 | . . . 4 |
19 | df-ov 5535 | . . . 4 | |
20 | 18, 19 | syl6eqr 2131 | . . 3 |
21 | 4 | fveq2i 5201 | . . . . . . . 8 |
22 | op2ndg 5798 | . . . . . . . 8 | |
23 | 21, 22 | syl5eq 2125 | . . . . . . 7 |
24 | 23 | fveq2d 5202 | . . . . . 6 |
25 | 24 | fveq2d 5202 | . . . . 5 |
26 | xp2nd 5813 | . . . . . . . . 9 | |
27 | 26 | nn0zd 8467 | . . . . . . . 8 |
28 | uzid 8633 | . . . . . . . 8 | |
29 | 27, 28 | syl 14 | . . . . . . 7 |
30 | eqid 2081 | . . . . . . . 8 | |
31 | 7, 2, 30 | eucialgcvga 10440 | . . . . . . 7 |
32 | 29, 31 | mpd 13 | . . . . . 6 |
33 | 6, 32 | syl 14 | . . . . 5 |
34 | 25, 33 | eqtr3d 2115 | . . . 4 |
35 | 34 | oveq2d 5548 | . . 3 |
36 | xp1st 5812 | . . . 4 | |
37 | nn0gcdid0 10372 | . . . 4 | |
38 | 15, 36, 37 | 3syl 17 | . . 3 |
39 | 20, 35, 38 | 3eqtrrd 2118 | . 2 |
40 | gcdf 10364 | . . . . . . 7 | |
41 | ffn 5066 | . . . . . . 7 | |
42 | 40, 41 | ax-mp 7 | . . . . . 6 |
43 | nn0ssz 8369 | . . . . . . 7 | |
44 | xpss12 4463 | . . . . . . 7 | |
45 | 43, 43, 44 | mp2an 416 | . . . . . 6 |
46 | fnssres 5032 | . . . . . 6 | |
47 | 42, 45, 46 | mp2an 416 | . . . . 5 |
48 | 7 | eucalginv 10438 | . . . . . 6 |
49 | 8 | ffvelrni 5322 | . . . . . . 7 |
50 | fvres 5219 | . . . . . . 7 | |
51 | 49, 50 | syl 14 | . . . . . 6 |
52 | fvres 5219 | . . . . . 6 | |
53 | 48, 51, 52 | 3eqtr4d 2123 | . . . . 5 |
54 | 2, 8, 47, 53, 11 | ialginv 10429 | . . . 4 |
55 | 6, 54 | sylancom 411 | . . 3 |
56 | fvres 5219 | . . . 4 | |
57 | 15, 56 | syl 14 | . . 3 |
58 | 0nn0 8303 | . . . . 5 | |
59 | ffvelrn 5321 | . . . . 5 | |
60 | 13, 58, 59 | sylancl 404 | . . . 4 |
61 | fvres 5219 | . . . 4 | |
62 | 60, 61 | syl 14 | . . 3 |
63 | 55, 57, 62 | 3eqtr3d 2121 | . 2 |
64 | 1, 2, 3, 6, 9, 12 | ialgr0 10426 | . . . . 5 |
65 | 64, 4 | syl6eq 2129 | . . . 4 |
66 | 65 | fveq2d 5202 | . . 3 |
67 | df-ov 5535 | . . 3 | |
68 | 66, 67 | syl6eqr 2131 | . 2 |
69 | 39, 63, 68 | 3eqtrd 2117 | 1 |
Colors of variables: wff set class |
Syntax hints: wi 4 wa 102 wceq 1284 wcel 1433 cvv 2601 wss 2973 cif 3351 csn 3398 cop 3401 cxp 4361 cres 4365 ccom 4367 wfn 4917 wf 4918 cfv 4922 (class class class)co 5532 cmpt2 5534 c1st 5785 c2nd 5786 cc0 6981 cn0 8288 cz 8351 cuz 8619 cmo 9324 cseq 9431 cgcd 10338 |
This theorem was proved from axioms: ax-1 5 ax-2 6 ax-mp 7 ax-ia1 104 ax-ia2 105 ax-ia3 106 ax-in1 576 ax-in2 577 ax-io 662 ax-5 1376 ax-7 1377 ax-gen 1378 ax-ie1 1422 ax-ie2 1423 ax-8 1435 ax-10 1436 ax-11 1437 ax-i12 1438 ax-bndl 1439 ax-4 1440 ax-13 1444 ax-14 1445 ax-17 1459 ax-i9 1463 ax-ial 1467 ax-i5r 1468 ax-ext 2063 ax-coll 3893 ax-sep 3896 ax-nul 3904 ax-pow 3948 ax-pr 3964 ax-un 4188 ax-setind 4280 ax-iinf 4329 ax-cnex 7067 ax-resscn 7068 ax-1cn 7069 ax-1re 7070 ax-icn 7071 ax-addcl 7072 ax-addrcl 7073 ax-mulcl 7074 ax-mulrcl 7075 ax-addcom 7076 ax-mulcom 7077 ax-addass 7078 ax-mulass 7079 ax-distr 7080 ax-i2m1 7081 ax-0lt1 7082 ax-1rid 7083 ax-0id 7084 ax-rnegex 7085 ax-precex 7086 ax-cnre 7087 ax-pre-ltirr 7088 ax-pre-ltwlin 7089 ax-pre-lttrn 7090 ax-pre-apti 7091 ax-pre-ltadd 7092 ax-pre-mulgt0 7093 ax-pre-mulext 7094 ax-arch 7095 ax-caucvg 7096 |
This theorem depends on definitions: df-bi 115 df-dc 776 df-3or 920 df-3an 921 df-tru 1287 df-fal 1290 df-nf 1390 df-sb 1686 df-eu 1944 df-mo 1945 df-clab 2068 df-cleq 2074 df-clel 2077 df-nfc 2208 df-ne 2246 df-nel 2340 df-ral 2353 df-rex 2354 df-reu 2355 df-rmo 2356 df-rab 2357 df-v 2603 df-sbc 2816 df-csb 2909 df-dif 2975 df-un 2977 df-in 2979 df-ss 2986 df-nul 3252 df-if 3352 df-pw 3384 df-sn 3404 df-pr 3405 df-op 3407 df-uni 3602 df-int 3637 df-iun 3680 df-br 3786 df-opab 3840 df-mpt 3841 df-tr 3876 df-id 4048 df-po 4051 df-iso 4052 df-iord 4121 df-on 4123 df-suc 4126 df-iom 4332 df-xp 4369 df-rel 4370 df-cnv 4371 df-co 4372 df-dm 4373 df-rn 4374 df-res 4375 df-ima 4376 df-iota 4887 df-fun 4924 df-fn 4925 df-f 4926 df-f1 4927 df-fo 4928 df-f1o 4929 df-fv 4930 df-riota 5488 df-ov 5535 df-oprab 5536 df-mpt2 5537 df-1st 5787 df-2nd 5788 df-recs 5943 df-frec 6001 df-sup 6397 df-pnf 7155 df-mnf 7156 df-xr 7157 df-ltxr 7158 df-le 7159 df-sub 7281 df-neg 7282 df-reap 7675 df-ap 7682 df-div 7761 df-inn 8040 df-2 8098 df-3 8099 df-4 8100 df-n0 8289 df-z 8352 df-uz 8620 df-q 8705 df-rp 8735 df-fz 9030 df-fzo 9153 df-fl 9274 df-mod 9325 df-iseq 9432 df-iexp 9476 df-cj 9729 df-re 9730 df-im 9731 df-rsqrt 9884 df-abs 9885 df-dvds 10196 df-gcd 10339 |
This theorem is referenced by: (None) |
Copyright terms: Public domain | W3C validator |