Intuitionistic Logic Explorer |
< Previous
Next >
Nearby theorems |
||
Mirrors > Home > ILE Home > Th. List > eucalg | 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 Paul Chapman, 31-Mar-2011.) (Proof shortened by Mario Carneiro, 29-May-2014.) |
Ref | Expression |
---|---|
eucalgval.1 | |
eucalg.2 | |
eucalg.3 |
Ref | Expression |
---|---|
eucalg |
Step | Hyp | Ref | Expression |
---|---|---|---|
1 | nn0uz 9353 | . . . . . . . 8 | |
2 | eucalg.2 | . . . . . . . 8 | |
3 | 0zd 9059 | . . . . . . . 8 | |
4 | eucalg.3 | . . . . . . . . 9 | |
5 | opelxpi 4566 | . . . . . . . . 9 | |
6 | 4, 5 | eqeltrid 2224 | . . . . . . . 8 |
7 | eucalgval.1 | . . . . . . . . . 10 | |
8 | 7 | eucalgf 11725 | . . . . . . . . 9 |
9 | 8 | a1i 9 | . . . . . . . 8 |
10 | 1, 2, 3, 6, 9 | algrf 11715 | . . . . . . 7 |
11 | ffvelrn 5546 | . . . . . . 7 | |
12 | 10, 11 | sylancom 416 | . . . . . 6 |
13 | 1st2nd2 6066 | . . . . . 6 | |
14 | 12, 13 | syl 14 | . . . . 5 |
15 | 14 | fveq2d 5418 | . . . 4 |
16 | df-ov 5770 | . . . 4 | |
17 | 15, 16 | syl6eqr 2188 | . . 3 |
18 | 4 | fveq2i 5417 | . . . . . . . 8 |
19 | op2ndg 6042 | . . . . . . . 8 | |
20 | 18, 19 | syl5eq 2182 | . . . . . . 7 |
21 | 20 | fveq2d 5418 | . . . . . 6 |
22 | 21 | fveq2d 5418 | . . . . 5 |
23 | xp2nd 6057 | . . . . . . . . 9 | |
24 | 23 | nn0zd 9164 | . . . . . . . 8 |
25 | uzid 9333 | . . . . . . . 8 | |
26 | 24, 25 | syl 14 | . . . . . . 7 |
27 | eqid 2137 | . . . . . . . 8 | |
28 | 7, 2, 27 | eucalgcvga 11728 | . . . . . . 7 |
29 | 26, 28 | mpd 13 | . . . . . 6 |
30 | 6, 29 | syl 14 | . . . . 5 |
31 | 22, 30 | eqtr3d 2172 | . . . 4 |
32 | 31 | oveq2d 5783 | . . 3 |
33 | xp1st 6056 | . . . 4 | |
34 | nn0gcdid0 11658 | . . . 4 | |
35 | 12, 33, 34 | 3syl 17 | . . 3 |
36 | 17, 32, 35 | 3eqtrrd 2175 | . 2 |
37 | 7 | eucalginv 11726 | . . . . . 6 |
38 | 8 | ffvelrni 5547 | . . . . . . 7 |
39 | fvres 5438 | . . . . . . 7 | |
40 | 38, 39 | syl 14 | . . . . . 6 |
41 | fvres 5438 | . . . . . 6 | |
42 | 37, 40, 41 | 3eqtr4d 2180 | . . . . 5 |
43 | 2, 8, 42 | alginv 11717 | . . . 4 |
44 | 6, 43 | sylancom 416 | . . 3 |
45 | fvres 5438 | . . . 4 | |
46 | 12, 45 | syl 14 | . . 3 |
47 | 0nn0 8985 | . . . . 5 | |
48 | ffvelrn 5546 | . . . . 5 | |
49 | 10, 47, 48 | sylancl 409 | . . . 4 |
50 | fvres 5438 | . . . 4 | |
51 | 49, 50 | syl 14 | . . 3 |
52 | 44, 46, 51 | 3eqtr3d 2178 | . 2 |
53 | 1, 2, 3, 6, 9 | ialgr0 11714 | . . . . 5 |
54 | 53, 4 | syl6eq 2186 | . . . 4 |
55 | 54 | fveq2d 5418 | . . 3 |
56 | df-ov 5770 | . . 3 | |
57 | 55, 56 | syl6eqr 2188 | . 2 |
58 | 36, 52, 57 | 3eqtrd 2174 | 1 |
Colors of variables: wff set class |
Syntax hints: wi 4 wa 103 wceq 1331 wcel 1480 cif 3469 csn 3522 cop 3525 cxp 4532 cres 4536 ccom 4538 wf 5114 cfv 5118 (class class class)co 5767 cmpo 5769 c1st 6029 c2nd 6030 cc0 7613 cn0 8970 cz 9047 cuz 9319 cmo 10088 cseq 10211 cgcd 11624 |
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 603 ax-in2 604 ax-io 698 ax-5 1423 ax-7 1424 ax-gen 1425 ax-ie1 1469 ax-ie2 1470 ax-8 1482 ax-10 1483 ax-11 1484 ax-i12 1485 ax-bndl 1486 ax-4 1487 ax-13 1491 ax-14 1492 ax-17 1506 ax-i9 1510 ax-ial 1514 ax-i5r 1515 ax-ext 2119 ax-coll 4038 ax-sep 4041 ax-nul 4049 ax-pow 4093 ax-pr 4126 ax-un 4350 ax-setind 4447 ax-iinf 4497 ax-cnex 7704 ax-resscn 7705 ax-1cn 7706 ax-1re 7707 ax-icn 7708 ax-addcl 7709 ax-addrcl 7710 ax-mulcl 7711 ax-mulrcl 7712 ax-addcom 7713 ax-mulcom 7714 ax-addass 7715 ax-mulass 7716 ax-distr 7717 ax-i2m1 7718 ax-0lt1 7719 ax-1rid 7720 ax-0id 7721 ax-rnegex 7722 ax-precex 7723 ax-cnre 7724 ax-pre-ltirr 7725 ax-pre-ltwlin 7726 ax-pre-lttrn 7727 ax-pre-apti 7728 ax-pre-ltadd 7729 ax-pre-mulgt0 7730 ax-pre-mulext 7731 ax-arch 7732 ax-caucvg 7733 |
This theorem depends on definitions: df-bi 116 df-stab 816 df-dc 820 df-3or 963 df-3an 964 df-tru 1334 df-fal 1337 df-nf 1437 df-sb 1736 df-eu 2000 df-mo 2001 df-clab 2124 df-cleq 2130 df-clel 2133 df-nfc 2268 df-ne 2307 df-nel 2402 df-ral 2419 df-rex 2420 df-reu 2421 df-rmo 2422 df-rab 2423 df-v 2683 df-sbc 2905 df-csb 2999 df-dif 3068 df-un 3070 df-in 3072 df-ss 3079 df-nul 3359 df-if 3470 df-pw 3507 df-sn 3528 df-pr 3529 df-op 3531 df-uni 3732 df-int 3767 df-iun 3810 df-br 3925 df-opab 3985 df-mpt 3986 df-tr 4022 df-id 4210 df-po 4213 df-iso 4214 df-iord 4283 df-on 4285 df-ilim 4286 df-suc 4288 df-iom 4500 df-xp 4540 df-rel 4541 df-cnv 4542 df-co 4543 df-dm 4544 df-rn 4545 df-res 4546 df-ima 4547 df-iota 5083 df-fun 5120 df-fn 5121 df-f 5122 df-f1 5123 df-fo 5124 df-f1o 5125 df-fv 5126 df-riota 5723 df-ov 5770 df-oprab 5771 df-mpo 5772 df-1st 6031 df-2nd 6032 df-recs 6195 df-frec 6281 df-sup 6864 df-pnf 7795 df-mnf 7796 df-xr 7797 df-ltxr 7798 df-le 7799 df-sub 7928 df-neg 7929 df-reap 8330 df-ap 8337 df-div 8426 df-inn 8714 df-2 8772 df-3 8773 df-4 8774 df-n0 8971 df-z 9048 df-uz 9320 df-q 9405 df-rp 9435 df-fz 9784 df-fzo 9913 df-fl 10036 df-mod 10089 df-seqfrec 10212 df-exp 10286 df-cj 10607 df-re 10608 df-im 10609 df-rsqrt 10763 df-abs 10764 df-dvds 11483 df-gcd 11625 |
This theorem is referenced by: (None) |
Copyright terms: Public domain | W3C validator |