Offset 1, 9 lines modified | Offset 1, 9 lines modified | ||
1 | ·a34cb6d8fda2fcd5d7d207c9f12354f0·9092180·debug·optional·coq-dbgsym_8.20.1+dfsg-1_amd64.deb | 1 | ·a34cb6d8fda2fcd5d7d207c9f12354f0·9092180·debug·optional·coq-dbgsym_8.20.1+dfsg-1_amd64.deb |
2 | · | 2 | ·51bb8a69b6db09508b1a6abf2a1bee8a·70227920·math·optional·coq_8.20.1+dfsg-1_amd64.deb |
3 | ·b45c1e7757ea93b6f74290e32b7064ab·640544·debug·optional·coqide-dbgsym_8.20.1+dfsg-1_amd64.deb | 3 | ·b45c1e7757ea93b6f74290e32b7064ab·640544·debug·optional·coqide-dbgsym_8.20.1+dfsg-1_amd64.deb |
4 | ·6aa943aa32c1ebec07fea16800497b20·1928004·math·optional·coqide_8.20.1+dfsg-1_amd64.deb | 4 | ·6aa943aa32c1ebec07fea16800497b20·1928004·math·optional·coqide_8.20.1+dfsg-1_amd64.deb |
5 | ·5dfc0078eee1b5c95ce1d6a2f6ef10eb·2516920·debug·optional·libcoq-core-ocaml-dbgsym_8.20.1+dfsg-1_amd64.deb | 5 | ·5dfc0078eee1b5c95ce1d6a2f6ef10eb·2516920·debug·optional·libcoq-core-ocaml-dbgsym_8.20.1+dfsg-1_amd64.deb |
6 | ·9a055da805c656fa4dac0ce3d2b8efb2·68702024·ocaml·optional·libcoq-core-ocaml-dev_8.20.1+dfsg-1_amd64.deb | ||
7 | ·f31462861406df0e3bc369e93b9a4b25·25954056·ocaml·optional·libcoq-core-ocaml_8.20.1+dfsg-1_amd64.deb | ||
8 | · | 6 | ·81730e18abb82efa38a4b870291dd90e·68702768·ocaml·optional·libcoq-core-ocaml-dev_8.20.1+dfsg-1_amd64.deb |
7 | ·94273eadd7335b069431689e782378ac·25953700·ocaml·optional·libcoq-core-ocaml_8.20.1+dfsg-1_amd64.deb | ||
8 | ·194d8788d3c0b14c130dacf27bebf99f·23527404·math·optional·libcoq-stdlib_8.20.1+dfsg-1_amd64.deb |
Offset 1, 3 lines modified | Offset 1, 3 lines modified | ||
1 | -rw-r--r--···0········0········0········4·2025-02-15·14:19:14.000000·debian-binary | 1 | -rw-r--r--···0········0········0········4·2025-02-15·14:19:14.000000·debian-binary |
2 | -rw-r--r--···0········0········0·····2272·2025-02-15·14:19:14.000000·control.tar.xz | 2 | -rw-r--r--···0········0········0·····2272·2025-02-15·14:19:14.000000·control.tar.xz |
3 | -rw-r--r--···0········0········0·702 | 3 | -rw-r--r--···0········0········0·70225456·2025-02-15·14:19:14.000000·data.tar.xz |
Offset 3, 25 lines modified | Offset 3, 25 lines modified | ||
3 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-02-15·14:19:14.000000·./usr/bin/ | 3 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-02-15·14:19:14.000000·./usr/bin/ |
4 | -rwxr-xr-x···0·root·········(0)·root·········(0)······891·2025-02-15·14:19:14.000000·./usr/bin/coq-makefile-make-both-single-timing-files | 4 | -rwxr-xr-x···0·root·········(0)·root·········(0)······891·2025-02-15·14:19:14.000000·./usr/bin/coq-makefile-make-both-single-timing-files |
5 | -rwxr-xr-x···0·root·········(0)·root·········(0)······931·2025-02-15·14:19:14.000000·./usr/bin/coq-makefile-make-both-time-files | 5 | -rwxr-xr-x···0·root·········(0)·root·········(0)······931·2025-02-15·14:19:14.000000·./usr/bin/coq-makefile-make-both-time-files |
6 | -rwxr-xr-x···0·root·········(0)·root·········(0)······697·2025-02-15·14:19:14.000000·./usr/bin/coq-makefile-make-one-time-file | 6 | -rwxr-xr-x···0·root·········(0)·root·········(0)······697·2025-02-15·14:19:14.000000·./usr/bin/coq-makefile-make-one-time-file |
7 | -rwxr-xr-x···0·root·········(0)·root·········(0)··1386744·2025-02-15·14:19:14.000000·./usr/bin/coq-tex | 7 | -rwxr-xr-x···0·root·········(0)·root·········(0)··1386744·2025-02-15·14:19:14.000000·./usr/bin/coq-tex |
8 | -rwxr-xr-x···0·root·········(0)·root·········(0)··2757688·2025-02-15·14:19:14.000000·./usr/bin/coq_makefile | 8 | -rwxr-xr-x···0·root·········(0)·root·········(0)··2757688·2025-02-15·14:19:14.000000·./usr/bin/coq_makefile |
9 | -rwxr-xr-x···0·root·········(0)·root·········(0)·20014136·2025-02-15·14:19:14.000000·./usr/bin/coqc | 9 | -rwxr-xr-x···0·root·········(0)·root·········(0)·20014136·2025-02-15·14:19:14.000000·./usr/bin/coqc |
10 | -rwxr-xr-x···0·root·········(0)·root·········(0)·403718 | 10 | -rwxr-xr-x···0·root·········(0)·root·········(0)·40371844·2025-02-15·14:19:14.000000·./usr/bin/coqc.byte |
11 | -rwxr-xr-x···0·root·········(0)·root·········(0)··6176536·2025-02-15·14:19:14.000000·./usr/bin/coqchk | 11 | -rwxr-xr-x···0·root·········(0)·root·········(0)··6176536·2025-02-15·14:19:14.000000·./usr/bin/coqchk |
12 | -rwxr-xr-x···0·root·········(0)·root·········(0)··3077752·2025-02-15·14:19:14.000000·./usr/bin/coqdep | 12 | -rwxr-xr-x···0·root·········(0)·root·········(0)··3077752·2025-02-15·14:19:14.000000·./usr/bin/coqdep |
13 | -rwxr-xr-x···0·root·········(0)·root·········(0)··2901816·2025-02-15·14:19:14.000000·./usr/bin/coqdoc | 13 | -rwxr-xr-x···0·root·········(0)·root·········(0)··2901816·2025-02-15·14:19:14.000000·./usr/bin/coqdoc |
14 | -rwxr-xr-x···0·root·········(0)·root·········(0)·409378 | 14 | -rwxr-xr-x···0·root·········(0)·root·········(0)·40937829·2025-02-15·14:19:14.000000·./usr/bin/coqidetop.byte |
15 | -rwxr-xr-x···0·root·········(0)·root·········(0)·20350808·2025-02-15·14:19:14.000000·./usr/bin/coqidetop.opt | 15 | -rwxr-xr-x···0·root·········(0)·root·········(0)·20350808·2025-02-15·14:19:14.000000·./usr/bin/coqidetop.opt |
16 | -rwxr-xr-x···0·root·········(0)·root·········(0)··6505784·2025-02-15·14:19:14.000000·./usr/bin/coqnative | 16 | -rwxr-xr-x···0·root·········(0)·root·········(0)··6505784·2025-02-15·14:19:14.000000·./usr/bin/coqnative |
17 | -rwxr-xr-x···0·root·········(0)·root·········(0)··1705752·2025-02-15·14:19:14.000000·./usr/bin/coqpp | 17 | -rwxr-xr-x···0·root·········(0)·root·········(0)··1705752·2025-02-15·14:19:14.000000·./usr/bin/coqpp |
18 | -rwxr-xr-x···0·root·········(0)·root·········(0)··2113784·2025-02-15·14:19:14.000000·./usr/bin/coqtimelog2html | 18 | -rwxr-xr-x···0·root·········(0)·root·········(0)··2113784·2025-02-15·14:19:14.000000·./usr/bin/coqtimelog2html |
19 | -rwxr-xr-x···0·root·········(0)·root·········(0)·20014136·2025-02-15·14:19:14.000000·./usr/bin/coqtop | 19 | -rwxr-xr-x···0·root·········(0)·root·········(0)·20014136·2025-02-15·14:19:14.000000·./usr/bin/coqtop |
20 | -rwxr-xr-x···0·root·········(0)·root·········(0)·648041 | 20 | -rwxr-xr-x···0·root·········(0)·root·········(0)·64804167·2025-02-15·14:19:14.000000·./usr/bin/coqtop.byte |
21 | -rwxr-xr-x···0·root·········(0)·root·········(0)··1039784·2025-02-15·14:19:14.000000·./usr/bin/coqwc | 21 | -rwxr-xr-x···0·root·········(0)·root·········(0)··1039784·2025-02-15·14:19:14.000000·./usr/bin/coqwc |
22 | -rwxr-xr-x···0·root·········(0)·root·········(0)·20019160·2025-02-15·14:19:14.000000·./usr/bin/coqworker.opt | 22 | -rwxr-xr-x···0·root·········(0)·root·········(0)·20019160·2025-02-15·14:19:14.000000·./usr/bin/coqworker.opt |
23 | -rwxr-xr-x···0·root·········(0)·root·········(0)··1567640·2025-02-15·14:19:14.000000·./usr/bin/coqworkmgr | 23 | -rwxr-xr-x···0·root·········(0)·root·········(0)··1567640·2025-02-15·14:19:14.000000·./usr/bin/coqworkmgr |
24 | -rwxr-xr-x···0·root·········(0)·root·········(0)··2606648·2025-02-15·14:19:14.000000·./usr/bin/csdpcert | 24 | -rwxr-xr-x···0·root·········(0)·root·········(0)··2606648·2025-02-15·14:19:14.000000·./usr/bin/csdpcert |
25 | -rwxr-xr-x···0·root·········(0)·root·········(0)··1596280·2025-02-15·14:19:14.000000·./usr/bin/ocamllibdep | 25 | -rwxr-xr-x···0·root·········(0)·root·········(0)··1596280·2025-02-15·14:19:14.000000·./usr/bin/ocamllibdep |
26 | -rwxr-xr-x···0·root·········(0)·root·········(0)··1834136·2025-02-15·14:19:14.000000·./usr/bin/votour | 26 | -rwxr-xr-x···0·root·········(0)·root·········(0)··1834136·2025-02-15·14:19:14.000000·./usr/bin/votour |
27 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-02-15·14:19:14.000000·./usr/lib/ | 27 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-02-15·14:19:14.000000·./usr/lib/ |
Offset 2301172, 222070 lines modified | Offset 2301172, 222070 lines modified | ||
0231cf30:·7590·4205·0819·0508·3c05·083b·4040·4084··u.B.....<..;@@@. | 0231cf30:·7590·4205·0819·0508·3c05·083b·4040·4084··u.B.....<..;@@@. | ||
0231cf40:·95a6·be00·0000·4f00·0000·0600·0000·2000··......O.......·. | 0231cf40:·95a6·be00·0000·4f00·0000·0600·0000·2000··......O.......·. | ||
0231cf50:·0000·16a0·2f2f·776f·726b·7370·6163·655f··....//workspace_ | 0231cf50:·0000·16a0·2f2f·776f·726b·7370·6163·655f··....//workspace_ | ||
0231cf60:·726f·6f74·a034·2f77·6f72·6b73·7061·6365··root.4/workspace | 0231cf60:·726f·6f74·a034·2f77·6f72·6b73·7061·6365··root.4/workspace | ||
0231cf70:·5f72·6f6f·742f·636c·6962·a009·242f·776f··_root/clib..$/wo | 0231cf70:·5f72·6f6f·742f·636c·6962·a009·242f·776f··_root/clib..$/wo | ||
0231cf80:·726b·7370·6163·655f·726f·6f74·2f63·6c69··rkspace_root/cli | 0231cf80:·726b·7370·6163·655f·726f·6f74·2f63·6c69··rkspace_root/cli | ||
0231cf90:·622f·2e63·6c69·622e·6f62·6a73·2f62·7974··b/.clib.objs/byt | 0231cf90:·622f·2e63·6c69·622e·6f62·6a73·2f62·7974··b/.clib.objs/byt | ||
0231cfa0:·6540·0007·7b8c·8495·a6be·0000·3ec | 0231cfa0:·6540·0007·7b8c·8495·a6be·0000·3ec8·0000··e@..{.......>... | ||
0231cfb0:·0b2 | 0231cfb0:·0b22·0000·2e56·0000·2d87·a008·0000·2f00··."...V..-...../. | ||
0231cfc0:·0106·a429·556e·696f·6e66·696e·64b0·c026··...)Unionfind..& | 0231cfc0:·0106·a429·556e·696f·6e66·696e·64b0·c026··...)Unionfind..& | ||
0231cfd0:·5f6e·6f6e·655f·4040·00ff·0402·4141·223f··_none_@@....AA"? | 0231cfd0:·5f6e·6f6e·655f·4040·00ff·0402·4141·223f··_none_@@....AA"? | ||
0231cfe0:·3f41·40d0·4040·4040·40a0·4040·4040·a008··?A@.@@@@@.@@@@.. | 0231cfe0:·3f41·40d0·4040·4040·40a0·4040·4040·a008··?A@.@@@@@.@@@@.. | ||
0231cff0:·0000·2f00·0106·9c04·0904·0841·0405·4140··../........A..A@ | 0231cff0:·0000·2f00·0106·9c04·0904·0841·0405·4140··../........A..A@ | Diff chunk too large, falling back to line-by-line diff (14730 lines added, 14730 lines removed) | |
0231d000:·0404·0403·4040·a008·0000·2f00·0106·8c04··....@@..../..... | 0231d000:·0404·0403·4040·a008·0000·2f00·0106·8c04··....@@..../..... | ||
0231d010:·0b04·0a41·0407·41c3·b4b4·b4ab·a | 0231d010:·0b04·0a41·0407·41c3·b4b4·b4ab·a7b2·b2b2··...A..A......... | ||
0231d020:·b2b2·b2b2·b2b2·b2b2·b2b2·b | 0231d020:·b2b2·b2b2·b2b2·b2b2·b2b2·b1b1·b1b1·b1b1··................ | ||
0231d030:·b1b1·b1b1·b1b1·b1b1·b1b1·b1b1·b1 | 0231d030:·b1b1·b1b1·b1b1·b1b1·b1b1·b1b1·b140·a325··.............@.% | ||
0231d040:· | 0231d040:·6172·7261·794a·0800·003b·00a0·c090·4002··arrayJ...;....@. | ||
0231d050:·0 | 0231d050:·05f5·e100·404d·4041·9040·4140·a07f·40a0··....@M@A.@A@..@. | ||
0231d060:· | 0231d060:·4040·4040·0439·4040·4092·0409·a324·626f··@@@@.9@@@....$bo | ||
0231d070:·6f6 | 0231d070:·6f6c·4508·0000·3b00·4040·a2a0·e0a3·2566··olE...;.@@....%f | ||
0231d080:·6 | 0231d080:·616c·7365·6190·4040·0443·4092·0403·a0e0··alsea.@@.C@..... | ||
0231d090:· | 0231d090:·a324·7472·7565·6290·4040·0449·4092·0403··.$trueb.@@.I@... | ||
0231d0a0:· | 0231d0a0:·4040·4140·4040·4040·044a·4041·4092·0410··@@A@@@@@.J@A@... | ||
0231d0b0:· | 0231d0b0:·a324·6368·6172·4208·0000·3b00·4040·0418··.$charB...;.@@.. | ||
0231d0c0:· | 0231d0c0:·4140·4040·4040·044e·4041·4092·0403·a323··A@@@@@.N@A@....# | ||
0231d0d0:· | 0231d0d0:·6578·6e47·0800·003b·0040·4040·4140·4040··exnG...;.@@@A@@@ | ||
0231d0e0:·4040· | 0231d0e0:·4040·0452·4040·4092·0403·a323·6566·6648··@@.R@@@....#effH | ||
0231d0f0:· | 0231d0f0:·0800·003b·00a0·c090·4002·05f5·e100·404f··...;....@.....@O | ||
0231d100:·4 | 0231d100:·4041·4041·40a0·7f40·a040·4040·4004·5b40··@A@A@..@.@@@@.[@ | ||
0231d110:·4040· | 0231d110:·4040·9204·08a3·2c63·6f6e·7469·6e75·6174··@@....,continuat | ||
0231d120:· | 0231d120:·696f·6e49·0800·003b·00a0·c090·4002·05f5··ionI...;....@... | ||
0231d130:· | 0231d130:·e100·4050·a0c0·9040·0205·f5e1·0040·5140··..@P...@.....@Q@ | ||
0231d140:·404 | 0231d140:·4204·2f41·40a0·6ea0·5940·a042·a042·4040··B./A@.n.Y@.B.B@@ | ||
0231d150:·40 | 0231d150:·4004·6940·4040·9204·0da3·3565·7874·656e··@.i@@@....5exten | ||
0231d160:· | 0231d160:·7369·6f6e·5f63·6f6e·7374·7275·6374·6f72··sion_constructor | ||
0231d170:· | 0231d170:·5208·0000·3b00·4040·0437·4140·4040·4040··R...;.@@.7A@@@@@ | ||
0231d180:· | 0231d180:·046d·4040·4092·0403·a325·666c·6f61·7444··.m@@@....%floatD | ||
0231d190:· | 0231d190:·0800·003b·0040·4004·3b41·4040·4040·4004··...;.@@.;A@@@@@. | ||
0231d1a0:· | 0231d1a0:·7140·4040·9204·03a3·2a66·6c6f·6174·6172··q@@@....*floatar | ||
0231d1b0:·72 | 0231d1b0:·7261·7953·0800·003b·0040·4004·3f41·4040··rayS...;.@@.?A@@ | ||
0231d1c0:·4040·40 | 0231d1c0:·4040·4004·7540·4040·9204·03a3·2369·6e74··@@@.u@@@....#int | ||
0231d1d0:· | 0231d1d0:·4108·0000·3b00·4040·0443·4140·4040·4040··A...;.@@.CA@@@@@ | ||
0231d1e0:· | 0231d1e0:·0479·4041·4092·0403·a325·696e·7433·324e··.y@A@....%int32N | ||
0231d1f0:· | 0231d1f0:·0800·003b·0040·4004·4741·4040·4040·4004··...;.@@.GA@@@@@. | ||
0231d200:· | 0231d200:·7d40·4040·9204·03a3·2569·6e74·3634·4f08··}@@@....%int64O. | ||
0231d210:·0 | 0231d210:·0000·3b00·4040·044b·4140·4040·4040·0481··..;.@@.KA@@@@@.. | ||
0231d220:· | 0231d220:·4040·4092·0403·a326·6c61·7a79·5f74·5008··@@@....&lazy_tP. | ||
0231d230:·0 | 0231d230:·0000·3b00·a0c0·9040·0205·f5e1·0040·5240··..;....@.....@R@ | ||
0231d240:·404 | 0231d240:·4104·5241·40a0·5940·a040·4040·4004·8a40··A.RA@.Y@.@@@@..@ | ||
0231d250:·4040· | 0231d250:·4040·9204·08a3·246c·6973·744b·0800·003b··@@....$listK...; | ||
0231d260:· | 0231d260:·00a0·c090·4002·05f5·e100·4053·4041·a2a0··....@.....@S@A.. | ||
0231d270:· | 0231d270:·e0a3·225b·5d64·9040·4004·9740·9204·03a0··.."[]d.@@..@.... | ||
0231d280:· | 0231d280:·e0a3·223a·3a65·90a0·040f·a0c0·b390·0417··.."::e.......... | ||
0231d290:· | 0231d290:·a004·1440·9040·0205·f5e1·0040·5440·4004··...@.@.....@T@@. | ||
0231d2a0:· | 0231d2a0:·a440·9204·0a40·4041·40a0·5940·a040·4040··.@...@@A@.Y@.@@@ | ||
0231d2b0:·40 | 0231d2b0:·4004·a740·4040·9204·1ca3·296e·6174·6976··@..@@@....)nativ | ||
0231d2c0:· | 0231d2c0:·6569·6e74·4d08·0000·3b00·4040·0475·4140··eintM...;.@@.uA@ | ||
0231d2d0:·4040·4040· | 0231d2d0:·4040·4040·04ab·4040·4092·0403·a326·6f70··@@@@..@@@....&op | ||
0231d2e0:·7 | 0231d2e0:·7469·6f6e·4c08·0000·3b00·a0c0·9040·0205··tionL...;....@.. | ||
0231d2f0:· | 0231d2f0:·f5e1·0040·5640·41a2·a0e0·a324·4e6f·6e65··...@V@A....$None | ||
0231d300:·6 | 0231d300:·6690·4040·04b8·4092·0403·a0e0·a324·536f··f.@@..@......$So | ||
0231d310:·6 | 0231d310:·6d65·6790·a004·0f40·4004·bf40·9204·0440··meg....@@..@...@ | ||
0231d320:·404 | 0231d320:·4041·40a0·5940·a040·4040·4004·c240·4040··@A@.Y@.@@@@..@@@ | ||
0231d330:· | 0231d330:·9204·16a3·2673·7472·696e·6751·0800·003b··....&stringQ...; | ||
0231d340:· | 0231d340:·0040·4004·9041·4040·4040·4004·c640·4040··.@@..A@@@@@..@@@ | ||
0231d350:· | 0231d350:·9204·03a3·2562·7974·6573·4308·0000·3b00··....%bytesC...;. | ||
0231d360:· | 0231d360:·4040·0494·4140·4040·4040·04ca·4040·4092··@@..A@@@@@..@@@. | ||
0231d370:· | 0231d370:·0403·a324·756e·6974·4608·0000·3b00·4040··...$unitF...;.@@ | ||
0231d380:· | 0231d380:·a2a0·e0a3·2228·2963·9040·4004·d440·9204··...."()c.@@..@.. | ||
0231d390:·040 | 0231d390:·0340·4041·4040·4040·4004·d540·4140·9204··.@@A@@@@@..@A@.. | ||
0231d3a0:·0 | 0231d3a0:·0aa3·2e41·7373·6572·745f·6661·696c·7572··...Assert_failur | ||
0231d3b0:· | 0231d3b0:·655e·0800·0023·0090·048b·4090·a0c0·92a0··e^...#....@..... | ||
0231d3c0:· | 0231d3c0:·c0b3·9004·1f40·9040·0205·f5e1·0040·4aa0··.....@.@.....@J. | ||
0231d3d0:· | 0231d3d0:·c0b3·9004·7140·9040·0205·f5e1·0040·40a0··....q@.@.....@@. | ||
0231d3e0:· | 0231d3e0:·0405·4002·05f5·e100·4059·4040·4104·e9a0··..@.....@Y@@A... | ||
0231d3f0:· | 0231d3f0:·b0a0·3d6f·6361·6d6c·2e77·6172·6e5f·6f6e··..=ocaml.warn_on | ||
0231d400:· | 0231d400:·5f6c·6974·6572·616c·5f70·6174·7465·726e··_literal_pattern | ||
0231d410:· | 0231d410:·04ed·04b7·04ed·4092·0417·a330·4469·7669··......@....0Divi | ||
0231d420:· | 0231d420:·7369·6f6e·5f62·795f·7a65·726f·5b08·0000··sion_by_zero[... | ||
0231d430:· | 0231d430:·2300·0418·4090·4040·4104·f2a0·b0a0·0409··#...@.@@A....... | ||
0231d440:·0 | 0231d440:·04f5·04bf·04f5·4092·0407·a32b·456e·645f··......@....+End_ | ||
0231d450:· | 0231d450:·6f66·5f66·696c·655a·0800·0023·0004·2040··of_fileZ...#..·@ | ||
0231d460:· | 0231d460:·9040·4041·04fa·a0b0·a004·1104·fd04·c704··.@@A............ | ||
0231d470:· | 0231d470:·fd40·9204·07a3·2746·6169·6c75·7265·5708··.@....'FailureW. | ||
0231d480:·0 | 0231d480:·0000·2300·0428·4090·a004·2440·4041·0501··..#..(@...$@@A.. | ||
0231d490:·0 | 0231d490:·03a0·b0a0·041a·0501·0604·d005·0106·4092··..............@. | ||
0231d4a0:· | 0231d4a0:·0408·a330·496e·7661·6c69·645f·6172·6775··...0Invalid_argu | ||
0231d4b0:· | 0231d4b0:·6d65·6e74·5608·0000·2300·0431·4090·a004··mentV...#..1@... | ||
0231d4c0:· | 0231d4c0:·2d40·4041·0501·0ca0·b0a0·0423·0501·0f04··-@@A.......#.... | ||
0231d4d0:· | 0231d4d0:·d905·010f·4092·0408·a32d·4d61·7463·685f··....@....-Match_ | ||
0231d4e0:· | 0231d4e0:·6661·696c·7572·6554·0800·0023·0004·3a40··failureT...#..:@ | ||
0231d4f0:· | 0231d4f0:·90a0·c092·a004·39a0·0435·a004·3640·0205··......9..5..6@.. | ||
0231d500:· | 0231d500:·f5e1·0040·5f40·4041·0501·1aa0·b0a0·0431··...@_@@A.......1 | ||
0231d510:· | 0231d510:·0501·1d04·e705·011d·4092·040d·a329·4e6f··........@....)No | ||
0231d520:· | 0231d520:·745f·666f·756e·6458·0800·0023·0004·4840··t_foundX...#..H@ | ||
0231d530:· | 0231d530:·9040·4041·0501·22a0·b0a0·0439·0501·2504··.@@A.."....9..%. | ||
0231d540:· | 0231d540:·ef05·0125·4092·0407·a32d·4f75·745f·6f66··...%@....-Out_of | ||
0231d550:· | 0231d550:·5f6d·656d·6f72·7955·0800·0023·0004·5040··_memoryU...#..P@ | ||
0231d560:· | 0231d560:·9040·4041·0501·2aa0·b0a0·0441·0501·2d04··.@@A..*....A..-. | ||
0231d570:· | 0231d570:·f705·012d·4092·0407·a32e·5374·6163·6b5f··...-@.....Stack_ | ||
0231d580:· | 0231d580:·6f76·6572·666c·6f77·5c08·0000·2300·0458··overflow\...#..X | ||
0231d590:· | 0231d590:·4090·4040·4105·0132·a0b0·a004·4905·0135··@.@@A..2....I..5 | ||
0231d5a0:· | 0231d5a0:·04ff·0501·3540·9204·07a3·2e53·7973·5f62··....5@.....Sys_b | ||
0231d5b0:·6 | 0231d5b0:·6c6f·636b·6564·5f69·6f5d·0800·0023·0004··locked_io]...#.. | ||
0231d5c0:·04 | 0231d5c0:·6040·9040·4041·0501·3aa0·b0a0·0451·0501··`@.@@A..:....Q.. | ||
0231d5d0:· | 0231d5d0:·3d05·0107·0501·3d40·9204·07a3·2953·7973··=.....=@....)Sys | ||
0231d5e0:· | 0231d5e0:·5f65·7272·6f72·5908·0000·2300·0468·4090··_errorY...#..h@. | ||
0231d5f0:· | 0231d5f0:·a004·6440·4041·0501·43a0·b0a0·045a·0501··..d@@A..C....Z.. | ||
0231d600:· | 0231d600:·4605·0110·0501·4640·9204·08a3·3a55·6e64··F.....F@....:Und | ||
0231d610:·6 | 0231d610:·6566·696e·6564·5f72·6563·7572·7369·7665··efined_recursive | ||
0231d620:· | 0231d620:·5f6d·6f64·756c·655f·0800·0023·0004·7140··_module_...#..q@ | ||
0231d630:· | 0231d630:·90a0·c092·a004·70a0·046c·a004·6d40·0205··......p..l..m@.. | ||
0231d640:· | 0231d640:·f5e1·0040·6640·4041·0501·51a0·b0a0·0468··...@f@@A..Q....h | ||
0231d650:· | 0231d650:·0501·5405·011e·0501·5440·9204·0da3·3a43··..T.....T@....:C | ||
0231d660:· | 0231d660:·6f6e·7469·6e75·6174·696f·6e5f·616c·7265··ontinuation_alre | ||
0231d670:·6 | 0231d670:·6164·795f·7461·6b65·6e60·0800·0023·0004··ady_taken`...#.. | ||
0231d680:· | 0231d680:·7f40·9040·4041·0501·59a0·b0a0·0470·0501··.@.@@A..Y....p.. | ||
0231d690:· | 0231d690:·5c05·0126·0501·5c40·9204·0790·9226·5374··\..&..\@.....&St | ||
0231d6a0:· | 0231d6a0:·646c·6962·9226·4f70·7469·6f6e·b12c·5061··dlib.&Option.,Pa | ||
0231d6b0:· | 0231d6b0:·7274·6974·696f·6e53·6967·0101·1744·c090··rtitionSig...D.. | ||
0231d6c0:· | 0231d6c0:·91a0·c1b1·2365·6c74·0101·0e41·0800·003b··....#elt...A...; | ||
0231d6d0:·0 | 0231d6d0:·0040·4090·4041·4040·4040·40b0·c031·636c··.@@.@A@@@@@..1cl | ||
0231d6e0:· | 0231d6e0:·6962·2f75·6e69·6f6e·6669·6e64·2e6d·6c5b··ib/unionfind.ml[ | ||
0231d6f0:· | 0231d6f0:·0104·6701·0469·c004·025b·0104·6701·0471··..g..i...[..g..q | ||
0231d700:· | 0231d700:·40a0·b0a0·296f·6361·6d6c·2e64·6f63·0501··@...)ocaml.doc.. | ||
Max diff block lines reached; 28605381/30639332 bytes (93.36%) of diff not shown. |
Offset 2336546, 222070 lines modified | Offset 2336546, 222070 lines modified | ||
023a7210:·6c75·9042·0508·1905·083c·0508·3b40·4040··lu.B.....<..;@@@ | 023a7210:·6c75·9042·0508·1905·083c·0508·3b40·4040··lu.B.....<..;@@@ | ||
023a7220:·8495·a6be·0000·004f·0000·0006·0000·0020··.......O.......· | 023a7220:·8495·a6be·0000·004f·0000·0006·0000·0020··.......O.......· | ||
023a7230:·0000·0016·a02f·2f77·6f72·6b73·7061·6365··.....//workspace | 023a7230:·0000·0016·a02f·2f77·6f72·6b73·7061·6365··.....//workspace | ||
023a7240:·5f72·6f6f·74a0·342f·776f·726b·7370·6163··_root.4/workspac | 023a7240:·5f72·6f6f·74a0·342f·776f·726b·7370·6163··_root.4/workspac | ||
023a7250:·655f·726f·6f74·2f63·6c69·62a0·0924·2f77··e_root/clib..$/w | 023a7250:·655f·726f·6f74·2f63·6c69·62a0·0924·2f77··e_root/clib..$/w | ||
023a7260:·6f72·6b73·7061·6365·5f72·6f6f·742f·636c··orkspace_root/cl | 023a7260:·6f72·6b73·7061·6365·5f72·6f6f·742f·636c··orkspace_root/cl | ||
023a7270:·6962·2f2e·636c·6962·2e6f·626a·732f·6279··ib/.clib.objs/by | 023a7270:·6962·2f2e·636c·6962·2e6f·626a·732f·6279··ib/.clib.objs/by | ||
023a7280:·7465·4000·077b·8c84·95a6·be00·003e·c | 023a7280:·7465·4000·077b·8c84·95a6·be00·003e·c800··te@..{.......>.. | ||
023a7290:·000b·2 | 023a7290:·000b·2200·002e·5600·002d·87a0·0800·002f··.."...V..-...../ | ||
023a72a0:·0001·06a4·2955·6e69·6f6e·6669·6e64·b0c0··....)Unionfind.. | 023a72a0:·0001·06a4·2955·6e69·6f6e·6669·6e64·b0c0··....)Unionfind.. | ||
023a72b0:·265f·6e6f·6e65·5f40·4000·ff04·0241·4122··&_none_@@....AA" | 023a72b0:·265f·6e6f·6e65·5f40·4000·ff04·0241·4122··&_none_@@....AA" | ||
023a72c0:·3f3f·4140·d040·4040·4040·a040·4040·40a0··??A@.@@@@@.@@@@. | 023a72c0:·3f3f·4140·d040·4040·4040·a040·4040·40a0··??A@.@@@@@.@@@@. | ||
023a72d0:·0800·002f·0001·069c·0409·0408·4104·0541··.../........A..A | 023a72d0:·0800·002f·0001·069c·0409·0408·4104·0541··.../........A..A | Diff chunk too large, falling back to line-by-line diff (3697 lines added, 3697 lines removed) | |
023a72e0:·4004·0404·0340·40a0·0800·002f·0001·068c··@....@@..../.... | 023a72e0:·4004·0404·0340·40a0·0800·002f·0001·068c··@....@@..../.... | ||
023a72f0:·040b·040a·4104·0741·c3b4·b4b4·aba | 023a72f0:·040b·040a·4104·0741·c3b4·b4b4·aba7·b2b2··....A..A........ | ||
023a7300:·b2b2·b2b2·b2b2·b2b2·b2b2·b2b | 023a7300:·b2b2·b2b2·b2b2·b2b2·b2b2·b2b1·b1b1·b1b1··................ | ||
023a7310:·b1b1·b1b1·b1b1·b1b1·b1b1·b1b1·b1b1· | 023a7310:·b1b1·b1b1·b1b1·b1b1·b1b1·b1b1·b1b1·40a3··..............@. | ||
023a7320:· | 023a7320:·2561·7272·6179·4a08·0000·3b00·a0c0·9040··%arrayJ...;....@ | ||
023a7330:· | 023a7330:·0205·f5e1·0040·4d40·4190·4041·40a0·7f40··.....@M@A.@A@..@ | ||
023a7340:· | 023a7340:·a040·4040·4004·3940·4040·9204·09a3·2462··.@@@@.9@@@....$b | ||
023a7350:·6 | 023a7350:·6f6f·6c45·0800·003b·0040·40a2·a0e0·a325··oolE...;.@@....% | ||
023a7360:· | 023a7360:·6661·6c73·6561·9040·4004·4340·9204·03a0··falsea.@@.C@.... | ||
023a7370:· | 023a7370:·e0a3·2474·7275·6562·9040·4004·4940·9204··..$trueb.@@.I@.. | ||
023a7380:·040 | 023a7380:·0340·4041·4040·4040·4004·4a40·4140·9204··.@@A@@@@@.J@A@.. | ||
023a7390:· | 023a7390:·10a3·2463·6861·7242·0800·003b·0040·4004··..$charB...;.@@. | ||
023a73a0:· | 023a73a0:·1841·4040·4040·4004·4e40·4140·9204·03a3··.A@@@@@.N@A@.... | ||
023a73b0:· | 023a73b0:·2365·786e·4708·0000·3b00·4040·4041·4040··#exnG...;.@@@A@@ | ||
023a73c0:·4040·40 | 023a73c0:·4040·4004·5240·4040·9204·03a3·2365·6666··@@@.R@@@....#eff | ||
023a73d0:· | 023a73d0:·4808·0000·3b00·a0c0·9040·0205·f5e1·0040··H...;....@.....@ | ||
023a73e0:·4 | 023a73e0:·4f40·4140·4140·a07f·40a0·4040·4040·045b··O@A@A@..@.@@@@.[ | ||
023a73f0:· | 023a73f0:·4040·4092·0408·a32c·636f·6e74·696e·7561··@@@....,continua | ||
023a7400:· | 023a7400:·7469·6f6e·4908·0000·3b00·a0c0·9040·0205··tionI...;....@.. | ||
023a7410:· | 023a7410:·f5e1·0040·50a0·c090·4002·05f5·e100·4051··...@P...@.....@Q | ||
023a7420:· | 023a7420:·4042·042f·4140·a06e·a059·40a0·42a0·4240··@B./A@.n.Y@.B.B@ | ||
023a7430:·4040· | 023a7430:·4040·0469·4040·4092·040d·a335·6578·7465··@@.i@@@....5exte | ||
023a7440:·6 | 023a7440:·6e73·696f·6e5f·636f·6e73·7472·7563·746f··nsion_constructo | ||
023a7450:· | 023a7450:·7252·0800·003b·0040·4004·3741·4040·4040··rR...;.@@.7A@@@@ | ||
023a7460:·40 | 023a7460:·4004·6d40·4040·9204·03a3·2566·6c6f·6174··@.m@@@....%float | ||
023a7470:· | 023a7470:·4408·0000·3b00·4040·043b·4140·4040·4040··D...;.@@.;A@@@@@ | ||
023a7480:· | 023a7480:·0471·4040·4092·0403·a32a·666c·6f61·7461··.q@@@....*floata | ||
023a7490:· | 023a7490:·7272·6179·5308·0000·3b00·4040·043f·4140··rrayS...;.@@.?A@ | ||
023a74a0:·4040·4040· | 023a74a0:·4040·4040·0475·4040·4092·0403·a323·696e··@@@@.u@@@....#in | ||
023a74b0:· | 023a74b0:·7441·0800·003b·0040·4004·4341·4040·4040··tA...;.@@.CA@@@@ | ||
023a74c0:·40 | 023a74c0:·4004·7940·4140·9204·03a3·2569·6e74·3332··@.y@A@....%int32 | ||
023a74d0:· | 023a74d0:·4e08·0000·3b00·4040·0447·4140·4040·4040··N...;.@@.GA@@@@@ | ||
023a74e0:· | 023a74e0:·047d·4040·4092·0403·a325·696e·7436·344f··.}@@@....%int64O | ||
023a74f0:· | 023a74f0:·0800·003b·0040·4004·4b41·4040·4040·4004··...;.@@.KA@@@@@. | ||
023a7500:· | 023a7500:·8140·4040·9204·03a3·266c·617a·795f·7450··.@@@....&lazy_tP | ||
023a7510:· | 023a7510:·0800·003b·00a0·c090·4002·05f5·e100·4052··...;....@.....@R | ||
023a7520:· | 023a7520:·4041·0452·4140·a059·40a0·4040·4040·048a··@A.RA@.Y@.@@@@.. | ||
023a7530:· | 023a7530:·4040·4092·0408·a324·6c69·7374·4b08·0000··@@@....$listK... | ||
023a7540:· | 023a7540:·3b00·a0c0·9040·0205·f5e1·0040·5340·41a2··;....@.....@S@A. | ||
023a7550:·a | 023a7550:·a0e0·a322·5b5d·6490·4040·0497·4092·0403··..."[]d.@@..@... | ||
023a7560:· | 023a7560:·a0e0·a322·3a3a·6590·a004·0fa0·c0b3·9004··..."::e......... | ||
023a7570:· | 023a7570:·17a0·0414·4090·4002·05f5·e100·4054·4040··....@.@.....@T@@ | ||
023a7580:· | 023a7580:·04a4·4092·040a·4040·4140·a059·40a0·4040··..@...@@A@.Y@.@@ | ||
023a7590:·4040· | 023a7590:·4040·04a7·4040·4092·041c·a329·6e61·7469··@@..@@@....)nati | ||
023a75a0:· | 023a75a0:·7665·696e·744d·0800·003b·0040·4004·7541··veintM...;.@@.uA | ||
023a75b0:·4 | 023a75b0:·4040·4040·4004·ab40·4040·9204·03a3·266f··@@@@@..@@@....&o | ||
023a75c0:· | 023a75c0:·7074·696f·6e4c·0800·003b·00a0·c090·4002··ptionL...;....@. | ||
023a75d0:·0 | 023a75d0:·05f5·e100·4056·4041·a2a0·e0a3·244e·6f6e··....@V@A....$Non | ||
023a75e0:·6 | 023a75e0:·6566·9040·4004·b840·9204·03a0·e0a3·2453··ef.@@..@......$S | ||
023a75f0:· | 023a75f0:·6f6d·6567·90a0·040f·4040·04bf·4092·0404··omeg....@@..@... | ||
023a7600:· | 023a7600:·4040·4140·a059·40a0·4040·4040·04c2·4040··@@A@.Y@.@@@@..@@ | ||
023a7610:·40 | 023a7610:·4092·0416·a326·7374·7269·6e67·5108·0000··@....&stringQ... | ||
023a7620:· | 023a7620:·3b00·4040·0490·4140·4040·4040·04c6·4040··;.@@..A@@@@@..@@ | ||
023a7630:·40 | 023a7630:·4092·0403·a325·6279·7465·7343·0800·003b··@....%bytesC...; | ||
023a7640:· | 023a7640:·0040·4004·9441·4040·4040·4004·ca40·4040··.@@..A@@@@@..@@@ | ||
023a7650:· | 023a7650:·9204·03a3·2475·6e69·7446·0800·003b·0040··....$unitF...;.@ | ||
023a7660:·40 | 023a7660:·40a2·a0e0·a322·2829·6390·4040·04d4·4092··@...."()c.@@..@. | ||
023a7670:· | 023a7670:·0403·4040·4140·4040·4040·04d5·4041·4092··..@@A@@@@@..@A@. | ||
023a7680:· | 023a7680:·040a·a32e·4173·7365·7274·5f66·6169·6c75··....Assert_failu | ||
023a7690:·7 | 023a7690:·7265·5e08·0000·2300·9004·8b40·90a0·c092··re^...#....@.... | ||
023a76a0:· | 023a76a0:·a0c0·b390·041f·4090·4002·05f5·e100·404a··......@.@.....@J | ||
023a76b0:· | 023a76b0:·a0c0·b390·0471·4090·4002·05f5·e100·4040··.....q@.@.....@@ | ||
023a76c0:· | 023a76c0:·a004·0540·0205·f5e1·0040·5940·4041·04e9··...@.....@Y@@A.. | ||
023a76d0:· | 023a76d0:·a0b0·a03d·6f63·616d·6c2e·7761·726e·5f6f··...=ocaml.warn_o | ||
023a76e0:·6 | 023a76e0:·6e5f·6c69·7465·7261·6c5f·7061·7474·6572··n_literal_patter | ||
023a76f0:· | 023a76f0:·6e04·ed04·b704·ed40·9204·17a3·3044·6976··n......@....0Div | ||
023a7700:· | 023a7700:·6973·696f·6e5f·6279·5f7a·6572·6f5b·0800··ision_by_zero[.. | ||
023a7710:·00 | 023a7710:·0023·0004·1840·9040·4041·04f2·a0b0·a004··.#...@.@@A...... | ||
023a7720:·0 | 023a7720:·0904·f504·bf04·f540·9204·07a3·2b45·6e64··.......@....+End | ||
023a7730:· | 023a7730:·5f6f·665f·6669·6c65·5a08·0000·2300·0420··_of_fileZ...#..· | ||
023a7740:· | 023a7740:·4090·4040·4104·faa0·b0a0·0411·04fd·04c7··@.@@A........... | ||
023a7750:· | 023a7750:·04fd·4092·0407·a327·4661·696c·7572·6557··..@....'FailureW | ||
023a7760:· | 023a7760:·0800·0023·0004·2840·90a0·0424·4040·4105··...#..(@...$@@A. | ||
023a7770:·0 | 023a7770:·0103·a0b0·a004·1a05·0106·04d0·0501·0640··...............@ | ||
023a7780:· | 023a7780:·9204·08a3·3049·6e76·616c·6964·5f61·7267··....0Invalid_arg | ||
023a7790:· | 023a7790:·756d·656e·7456·0800·0023·0004·3140·90a0··umentV...#..1@.. | ||
023a77a0:· | 023a77a0:·042d·4040·4105·010c·a0b0·a004·2305·010f··.-@@A.......#... | ||
023a77b0:· | 023a77b0:·04d9·0501·0f40·9204·08a3·2d4d·6174·6368··.....@....-Match | ||
023a77c0:· | 023a77c0:·5f66·6169·6c75·7265·5408·0000·2300·043a··_failureT...#..: | ||
023a77d0:· | 023a77d0:·4090·a0c0·92a0·0439·a004·35a0·0436·4002··@......9..5..6@. | ||
023a77e0:·0 | 023a77e0:·05f5·e100·405f·4040·4105·011a·a0b0·a004··....@_@@A....... | ||
023a77f0:· | 023a77f0:·3105·011d·04e7·0501·1d40·9204·0da3·294e··1........@....)N | ||
023a7800:· | 023a7800:·6f74·5f66·6f75·6e64·5808·0000·2300·0448··ot_foundX...#..H | ||
023a7810:·4 | 023a7810:·4090·4040·4105·0122·a0b0·a004·3905·0125··@.@@A.."....9..% | ||
023a7820:· | 023a7820:·04ef·0501·2540·9204·07a3·2d4f·7574·5f6f··....%@....-Out_o | ||
023a7830:·6 | 023a7830:·665f·6d65·6d6f·7279·5508·0000·2300·0450··f_memoryU...#..P | ||
023a7840:· | 023a7840:·4090·4040·4105·012a·a0b0·a004·4105·012d··@.@@A..*....A..- | ||
023a7850:· | 023a7850:·04f7·0501·2d40·9204·07a3·2e53·7461·636b··....-@.....Stack | ||
023a7860:· | 023a7860:·5f6f·7665·7266·6c6f·775c·0800·0023·0004··_overflow\...#.. | ||
023a7870:· | 023a7870:·5840·9040·4041·0501·32a0·b0a0·0449·0501··X@.@@A..2....I.. | ||
023a7880:· | 023a7880:·3504·ff05·0135·4092·0407·a32e·5379·735f··5....5@.....Sys_ | ||
023a7890:· | 023a7890:·626c·6f63·6b65·645f·696f·5d08·0000·2300··blocked_io]...#. | ||
023a78a0:·0 | 023a78a0:·0460·4090·4040·4105·013a·a0b0·a004·5105··.`@.@@A..:....Q. | ||
023a78b0:·0 | 023a78b0:·013d·0501·0705·013d·4092·0407·a329·5379··.=.....=@....)Sy | ||
023a78c0:·7 | 023a78c0:·735f·6572·726f·7259·0800·0023·0004·6840··s_errorY...#..h@ | ||
023a78d0:· | 023a78d0:·90a0·0464·4040·4105·0143·a0b0·a004·5a05··...d@@A..C....Z. | ||
023a78e0:·0 | 023a78e0:·0146·0501·1005·0146·4092·0408·a33a·556e··.F.....F@....:Un | ||
023a78f0:·6 | 023a78f0:·6465·6669·6e65·645f·7265·6375·7273·6976··defined_recursiv | ||
023a7900:· | 023a7900:·655f·6d6f·6475·6c65·5f08·0000·2300·0471··e_module_...#..q | ||
023a7910:· | 023a7910:·4090·a0c0·92a0·0470·a004·6ca0·046d·4002··@......p..l..m@. | ||
023a7920:·0 | 023a7920:·05f5·e100·4066·4040·4105·0151·a0b0·a004··....@f@@A..Q.... | ||
023a7930:· | 023a7930:·6805·0154·0501·1e05·0154·4092·040d·a33a··h..T.....T@....: | ||
023a7940:· | 023a7940:·436f·6e74·696e·7561·7469·6f6e·5f61·6c72··Continuation_alr | ||
023a7950:· | 023a7950:·6561·6479·5f74·616b·656e·6008·0000·2300··eady_taken`...#. | ||
023a7960:·0 | 023a7960:·047f·4090·4040·4105·0159·a0b0·a004·7005··..@.@@A..Y....p. | ||
023a7970:·0 | 023a7970:·015c·0501·2605·015c·4092·0407·9092·2653··.\..&..\@.....&S | ||
023a7980:· | 023a7980:·7464·6c69·6292·264f·7074·696f·6eb1·2c50··tdlib.&Option.,P | ||
023a7990:·6 | 023a7990:·6172·7469·7469·6f6e·5369·6701·0117·44c0··artitionSig...D. | ||
023a79a0:· | 023a79a0:·9091·a0c1·b123·656c·7401·010e·4108·0000··.....#elt...A... | ||
023a79b0:· | 023a79b0:·3b00·4040·9040·4140·4040·4040·b0c0·3163··;.@@.@A@@@@@..1c | ||
023a79c0:· | 023a79c0:·6c69·622f·756e·696f·6e66·696e·642e·6d6c··lib/unionfind.ml | ||
023a79d0:· | 023a79d0:·5b01·0467·0104·69c0·0402·5b01·0467·0104··[..g..i...[..g.. | ||
023a79e0:· | 023a79e0:·7140·a0b0·a029·6f63·616d·6c2e·646f·6305··q@...)ocaml.doc. | ||
Max diff block lines reached; 30128075/30639472 bytes (98.33%) of diff not shown. |
Offset 2726467, 316172 lines modified | Offset 2726467, 316172 lines modified | ||
0299a420:·083b·4040·4084·95a6·be00·0000·4f00·0000··.;@@@.......O... | 0299a420:·083b·4040·4084·95a6·be00·0000·4f00·0000··.;@@@.......O... | ||
0299a430:·0600·0000·2000·0000·16a0·2f2f·776f·726b··....·.....//work | 0299a430:·0600·0000·2000·0000·16a0·2f2f·776f·726b··....·.....//work | ||
0299a440:·7370·6163·655f·726f·6f74·a034·2f77·6f72··space_root.4/wor | 0299a440:·7370·6163·655f·726f·6f74·a034·2f77·6f72··space_root.4/wor | ||
0299a450:·6b73·7061·6365·5f72·6f6f·742f·636c·6962··kspace_root/clib | 0299a450:·6b73·7061·6365·5f72·6f6f·742f·636c·6962··kspace_root/clib | ||
0299a460:·a009·242f·776f·726b·7370·6163·655f·726f··..$/workspace_ro | 0299a460:·a009·242f·776f·726b·7370·6163·655f·726f··..$/workspace_ro | ||
0299a470:·6f74·2f63·6c69·622f·2e63·6c69·622e·6f62··ot/clib/.clib.ob | 0299a470:·6f74·2f63·6c69·622f·2e63·6c69·622e·6f62··ot/clib/.clib.ob | ||
0299a480:·6a73·2f62·7974·6540·002f·0ff8·8495·a6be··js/byte@./...... | 0299a480:·6a73·2f62·7974·6540·002f·0ff8·8495·a6be··js/byte@./...... | ||
0299a490:·0000·3ec | 0299a490:·0000·3ec8·0000·0b22·0000·2e56·0000·2d87··..>...."...V..-. | ||
0299a4a0:·a008·0000·2f00·0106·a429·556e·696f·6e66··..../....)Unionf | 0299a4a0:·a008·0000·2f00·0106·a429·556e·696f·6e66··..../....)Unionf | ||
0299a4b0:·696e·64b0·c026·5f6e·6f6e·655f·4040·00ff··ind..&_none_@@.. | 0299a4b0:·696e·64b0·c026·5f6e·6f6e·655f·4040·00ff··ind..&_none_@@.. | ||
0299a4c0:·0402·4141·223f·3f41·40d0·4040·4040·40a0··..AA"??A@.@@@@@. | 0299a4c0:·0402·4141·223f·3f41·40d0·4040·4040·40a0··..AA"??A@.@@@@@. | ||
0299a4d0:·4040·4040·a008·0000·2f00·0106·9c04·0904··@@@@..../....... | 0299a4d0:·4040·4040·a008·0000·2f00·0106·9c04·0904··@@@@..../....... | ||
0299a4e0:·0841·0405·4140·0404·0403·4040·a008·0000··.A..A@....@@.... | 0299a4e0:·0841·0405·4140·0404·0403·4040·a008·0000··.A..A@....@@.... | Diff chunk too large, falling back to line-by-line diff (3696 lines added, 3696 lines removed) | |
0299a4f0:·2f00·0106·8c04·0b04·0a41·0407·41c3·b4b4··/........A..A... | 0299a4f0:·2f00·0106·8c04·0b04·0a41·0407·41c3·b4b4··/........A..A... | ||
0299a500:·b4ab·a | 0299a500:·b4ab·a7b2·b2b2·b2b2·b2b2·b2b2·b2b2·b2b2··................ | ||
0299a510:·b | 0299a510:·b1b1·b1b1·b1b1·b1b1·b1b1·b1b1·b1b1·b1b1··................ | ||
0299a520:·b1b1·b1 | 0299a520:·b1b1·b140·a325·6172·7261·794a·0800·003b··...@.%arrayJ...; | ||
0299a530:· | 0299a530:·00a0·c090·4002·05f5·e100·404d·4041·9040··....@.....@M@A.@ | ||
0299a540:·4 | 0299a540:·4140·a07f·40a0·4040·4040·0439·4040·4092··A@..@.@@@@.9@@@. | ||
0299a550:· | 0299a550:·0409·a324·626f·6f6c·4508·0000·3b00·4040··...$boolE...;.@@ | ||
0299a560:· | 0299a560:·a2a0·e0a3·2566·616c·7365·6190·4040·0443··....%falsea.@@.C | ||
0299a570:·4 | 0299a570:·4092·0403·a0e0·a324·7472·7565·6290·4040··@......$trueb.@@ | ||
0299a580:· | 0299a580:·0449·4092·0403·4040·4140·4040·4040·044a··.I@...@@A@@@@@.J | ||
0299a590:·4 | 0299a590:·4041·4092·0410·a324·6368·6172·4208·0000··@A@....$charB... | ||
0299a5a0:· | 0299a5a0:·3b00·4040·0418·4140·4040·4040·044e·4041··;.@@..A@@@@@.N@A | ||
0299a5b0:·4 | 0299a5b0:·4092·0403·a323·6578·6e47·0800·003b·0040··@....#exnG...;.@ | ||
0299a5c0:·4040·4 | 0299a5c0:·4040·4140·4040·4040·0452·4040·4092·0403··@@A@@@@@.R@@@... | ||
0299a5d0:· | 0299a5d0:·a323·6566·6648·0800·003b·00a0·c090·4002··.#effH...;....@. | ||
0299a5e0:·0 | 0299a5e0:·05f5·e100·404f·4041·4041·40a0·7f40·a040··....@O@A@A@..@.@ | ||
0299a5f0:·4040·40 | 0299a5f0:·4040·4004·5b40·4040·9204·08a3·2c63·6f6e··@@@.[@@@....,con | ||
0299a600:· | 0299a600:·7469·6e75·6174·696f·6e49·0800·003b·00a0··tinuationI...;.. | ||
0299a610:· | 0299a610:·c090·4002·05f5·e100·4050·a0c0·9040·0205··..@.....@P...@.. | ||
0299a620:· | 0299a620:·f5e1·0040·5140·4204·2f41·40a0·6ea0·5940··...@Q@B./A@.n.Y@ | ||
0299a630:· | 0299a630:·a042·a042·4040·4004·6940·4040·9204·0da3··.B.B@@@.i@@@.... | ||
0299a640:· | 0299a640:·3565·7874·656e·7369·6f6e·5f63·6f6e·7374··5extension_const | ||
0299a650:·7 | 0299a650:·7275·6374·6f72·5208·0000·3b00·4040·0437··ructorR...;.@@.7 | ||
0299a660:· | 0299a660:·4140·4040·4040·046d·4040·4092·0403·a325··A@@@@@.m@@@....% | ||
0299a670:· | 0299a670:·666c·6f61·7444·0800·003b·0040·4004·3b41··floatD...;.@@.;A | ||
0299a680:·4 | 0299a680:·4040·4040·4004·7140·4040·9204·03a3·2a66··@@@@@.q@@@....*f | ||
0299a690:·6 | 0299a690:·6c6f·6174·6172·7261·7953·0800·003b·0040··loatarrayS...;.@ | ||
0299a6a0:·40 | 0299a6a0:·4004·3f41·4040·4040·4004·7540·4040·9204··@.?A@@@@@.u@@@.. | ||
0299a6b0:·0 | 0299a6b0:·03a3·2369·6e74·4108·0000·3b00·4040·0443··..#intA...;.@@.C | ||
0299a6c0:·4 | 0299a6c0:·4140·4040·4040·0479·4041·4092·0403·a325··A@@@@@.y@A@....% | ||
0299a6d0:· | 0299a6d0:·696e·7433·324e·0800·003b·0040·4004·4741··int32N...;.@@.GA | ||
0299a6e0:·4 | 0299a6e0:·4040·4040·4004·7d40·4040·9204·03a3·2569··@@@@@.}@@@....%i | ||
0299a6f0:·6 | 0299a6f0:·6e74·3634·4f08·0000·3b00·4040·044b·4140··nt64O...;.@@.KA@ | ||
0299a700:·4040·4040· | 0299a700:·4040·4040·0481·4040·4092·0403·a326·6c61··@@@@..@@@....&la | ||
0299a710:· | 0299a710:·7a79·5f74·5008·0000·3b00·a0c0·9040·0205··zy_tP...;....@.. | ||
0299a720:· | 0299a720:·f5e1·0040·5240·4104·5241·40a0·5940·a040··...@R@A.RA@.Y@.@ | ||
0299a730:·4040·40 | 0299a730:·4040·4004·8a40·4040·9204·08a3·246c·6973··@@@..@@@....$lis | ||
0299a740:·7 | 0299a740:·744b·0800·003b·00a0·c090·4002·05f5·e100··tK...;....@..... | ||
0299a750:· | 0299a750:·4053·4041·a2a0·e0a3·225b·5d64·9040·4004··@S@A...."[]d.@@. | ||
0299a760:· | 0299a760:·9740·9204·03a0·e0a3·223a·3a65·90a0·040f··.@......"::e.... | ||
0299a770:· | 0299a770:·a0c0·b390·0417·a004·1440·9040·0205·f5e1··.........@.@.... | ||
0299a780:· | 0299a780:·0040·5440·4004·a440·9204·0a40·4041·40a0··.@T@@..@...@@A@. | ||
0299a790:· | 0299a790:·5940·a040·4040·4004·a740·4040·9204·1ca3··Y@.@@@@..@@@.... | ||
0299a7a0:· | 0299a7a0:·296e·6174·6976·6569·6e74·4d08·0000·3b00··)nativeintM...;. | ||
0299a7b0:· | 0299a7b0:·4040·0475·4140·4040·4040·04ab·4040·4092··@@.uA@@@@@..@@@. | ||
0299a7c0:· | 0299a7c0:·0403·a326·6f70·7469·6f6e·4c08·0000·3b00··...&optionL...;. | ||
0299a7d0:· | 0299a7d0:·a0c0·9040·0205·f5e1·0040·5640·41a2·a0e0··...@.....@V@A... | ||
0299a7e0:· | 0299a7e0:·a324·4e6f·6e65·6690·4040·04b8·4092·0403··.$Nonef.@@..@... | ||
0299a7f0:· | 0299a7f0:·a0e0·a324·536f·6d65·6790·a004·0f40·4004··...$Someg....@@. | ||
0299a800:· | 0299a800:·bf40·9204·0440·4041·40a0·5940·a040·4040··.@...@@A@.Y@.@@@ | ||
0299a810:·40 | 0299a810:·4004·c240·4040·9204·16a3·2673·7472·696e··@..@@@....&strin | ||
0299a820:·6 | 0299a820:·6751·0800·003b·0040·4004·9041·4040·4040··gQ...;.@@..A@@@@ | ||
0299a830:·40 | 0299a830:·4004·c640·4040·9204·03a3·2562·7974·6573··@..@@@....%bytes | ||
0299a840:· | 0299a840:·4308·0000·3b00·4040·0494·4140·4040·4040··C...;.@@..A@@@@@ | ||
0299a850:· | 0299a850:·04ca·4040·4092·0403·a324·756e·6974·4608··..@@@....$unitF. | ||
0299a860:·0 | 0299a860:·0000·3b00·4040·a2a0·e0a3·2228·2963·9040··..;.@@...."()c.@ | ||
0299a870:·40 | 0299a870:·4004·d440·9204·0340·4041·4040·4040·4004··@..@...@@A@@@@@. | ||
0299a880:· | 0299a880:·d540·4140·9204·0aa3·2e41·7373·6572·745f··.@A@.....Assert_ | ||
0299a890:· | 0299a890:·6661·696c·7572·655e·0800·0023·0090·048b··failure^...#.... | ||
0299a8a0:· | 0299a8a0:·4090·a0c0·92a0·c0b3·9004·1f40·9040·0205··@..........@.@.. | ||
0299a8b0:· | 0299a8b0:·f5e1·0040·4aa0·c0b3·9004·7140·9040·0205··...@J.....q@.@.. | ||
0299a8c0:· | 0299a8c0:·f5e1·0040·40a0·0405·4002·05f5·e100·4059··...@@...@.....@Y | ||
0299a8d0:· | 0299a8d0:·4040·4104·e9a0·b0a0·3d6f·6361·6d6c·2e77··@@A.....=ocaml.w | ||
0299a8e0:· | 0299a8e0:·6172·6e5f·6f6e·5f6c·6974·6572·616c·5f70··arn_on_literal_p | ||
0299a8f0:· | 0299a8f0:·6174·7465·726e·04ed·04b7·04ed·4092·0417··attern......@... | ||
0299a900:· | 0299a900:·a330·4469·7669·7369·6f6e·5f62·795f·7a65··.0Division_by_ze | ||
0299a910:· | 0299a910:·726f·5b08·0000·2300·0418·4090·4040·4104··ro[...#...@.@@A. | ||
0299a920:· | 0299a920:·f2a0·b0a0·0409·04f5·04bf·04f5·4092·0407··............@... | ||
0299a930:· | 0299a930:·a32b·456e·645f·6f66·5f66·696c·655a·0800··.+End_of_fileZ.. | ||
0299a940:·00 | 0299a940:·0023·0004·2040·9040·4041·04fa·a0b0·a004··.#..·@.@@A...... | ||
0299a950:· | 0299a950:·1104·fd04·c704·fd40·9204·07a3·2746·6169··.......@....'Fai | ||
0299a960:·6 | 0299a960:·6c75·7265·5708·0000·2300·0428·4090·a004··lureW...#..(@... | ||
0299a970:· | 0299a970:·2440·4041·0501·03a0·b0a0·041a·0501·0604··$@@A............ | ||
0299a980:· | 0299a980:·d005·0106·4092·0408·a330·496e·7661·6c69··....@....0Invali | ||
0299a990:·6 | 0299a990:·645f·6172·6775·6d65·6e74·5608·0000·2300··d_argumentV...#. | ||
0299a9a0:·0 | 0299a9a0:·0431·4090·a004·2d40·4041·0501·0ca0·b0a0··.1@...-@@A...... | ||
0299a9b0:· | 0299a9b0:·0423·0501·0f04·d905·010f·4092·0408·a32d··.#........@....- | ||
0299a9c0:· | 0299a9c0:·4d61·7463·685f·6661·696c·7572·6554·0800··Match_failureT.. | ||
0299a9d0:·00 | 0299a9d0:·0023·0004·3a40·90a0·c092·a004·39a0·0435··.#..:@......9..5 | ||
0299a9e0:· | 0299a9e0:·a004·3640·0205·f5e1·0040·5f40·4041·0501··..6@.....@_@@A.. | ||
0299a9f0:· | 0299a9f0:·1aa0·b0a0·0431·0501·1d04·e705·011d·4092··.....1........@. | ||
0299aa00:· | 0299aa00:·040d·a329·4e6f·745f·666f·756e·6458·0800··...)Not_foundX.. | ||
0299aa10:·00 | 0299aa10:·0023·0004·4840·9040·4041·0501·22a0·b0a0··.#..H@.@@A.."... | ||
0299aa20:· | 0299aa20:·0439·0501·2504·ef05·0125·4092·0407·a32d··.9..%....%@....- | ||
0299aa30:· | 0299aa30:·4f75·745f·6f66·5f6d·656d·6f72·7955·0800··Out_of_memoryU.. | ||
0299aa40:·00 | 0299aa40:·0023·0004·5040·9040·4041·0501·2aa0·b0a0··.#..P@.@@A..*... | ||
0299aa50:· | 0299aa50:·0441·0501·2d04·f705·012d·4092·0407·a32e··.A..-....-@..... | ||
0299aa60:· | 0299aa60:·5374·6163·6b5f·6f76·6572·666c·6f77·5c08··Stack_overflow\. | ||
0299aa70:·0 | 0299aa70:·0000·2300·0458·4090·4040·4105·0132·a0b0··..#..X@.@@A..2.. | ||
0299aa80:· | 0299aa80:·a004·4905·0135·04ff·0501·3540·9204·07a3··..I..5....5@.... | ||
0299aa90:· | 0299aa90:·2e53·7973·5f62·6c6f·636b·6564·5f69·6f5d··.Sys_blocked_io] | ||
0299aaa0:· | 0299aaa0:·0800·0023·0004·6040·9040·4041·0501·3aa0··...#..`@.@@A..:. | ||
0299aab0:· | 0299aab0:·b0a0·0451·0501·3d05·0107·0501·3d40·9204··...Q..=.....=@.. | ||
0299aac0:·0 | 0299aac0:·07a3·2953·7973·5f65·7272·6f72·5908·0000··..)Sys_errorY... | ||
0299aad0:· | 0299aad0:·2300·0468·4090·a004·6440·4041·0501·43a0··#..h@...d@@A..C. | ||
0299aae0:· | 0299aae0:·b0a0·045a·0501·4605·0110·0501·4640·9204··...Z..F.....F@.. | ||
0299aaf0:·0 | 0299aaf0:·08a3·3a55·6e64·6566·696e·6564·5f72·6563··..:Undefined_rec | ||
0299ab00:· | 0299ab00:·7572·7369·7665·5f6d·6f64·756c·655f·0800··ursive_module_.. | ||
0299ab10:·00 | 0299ab10:·0023·0004·7140·90a0·c092·a004·70a0·046c··.#..q@......p..l | ||
0299ab20:· | 0299ab20:·a004·6d40·0205·f5e1·0040·6640·4041·0501··..m@.....@f@@A.. | ||
0299ab30:· | 0299ab30:·51a0·b0a0·0468·0501·5405·011e·0501·5440··Q....h..T.....T@ | ||
0299ab40:· | 0299ab40:·9204·0da3·3a43·6f6e·7469·6e75·6174·696f··....:Continuatio | ||
0299ab50:·6 | 0299ab50:·6e5f·616c·7265·6164·795f·7461·6b65·6e60··n_already_taken` | ||
0299ab60:· | 0299ab60:·0800·0023·0004·7f40·9040·4041·0501·59a0··...#...@.@@A..Y. | ||
0299ab70:· | 0299ab70:·b0a0·0470·0501·5c05·0126·0501·5c40·9204··...p..\..&..\@.. | ||
0299ab80:·0 | 0299ab80:·0790·9226·5374·646c·6962·9226·4f70·7469··...&Stdlib.&Opti | ||
0299ab90:· | 0299ab90:·6f6e·b12c·5061·7274·6974·696f·6e53·6967··on.,PartitionSig | ||
0299aba0:· | 0299aba0:·0101·1744·c090·91a0·c1b1·2365·6c74·0101··...D......#elt.. | ||
0299abb0:· | 0299abb0:·0e41·0800·003b·0040·4090·4041·4040·4040··.A...;.@@.@A@@@@ | ||
0299abc0:·40 | 0299abc0:·40b0·c031·636c·6962·2f75·6e69·6f6e·6669··@..1clib/unionfi | ||
0299abd0:·6e6 | 0299abd0:·6e64·2e6d·6c5b·0104·6701·0469·c004·025b··nd.ml[..g..i...[ | ||
0299abe0:·0 | 0299abe0:·0104·6701·0471·40a0·b0a0·296f·6361·6d6c··..g..q@...)ocaml | ||
0299abf0:·2 | 0299abf0:·2e64·6f63·0501·7590·a0a0·a0c0·91a0·b209··.doc..u......... | ||
Max diff block lines reached; 182113492/182624682 bytes (99.72%) of diff not shown. |
Offset 1, 3 lines modified | Offset 1, 3 lines modified | ||
1 | -rw-r--r--···0········0········0········4·2025-02-15·14:19:14.000000·debian-binary | 1 | -rw-r--r--···0········0········0········4·2025-02-15·14:19:14.000000·debian-binary |
2 | -rw-r--r--···0········0········0····701 | 2 | -rw-r--r--···0········0········0····70136·2025-02-15·14:19:14.000000·control.tar.xz |
3 | -rw-r--r--···0········0········0·6863 | 3 | -rw-r--r--···0········0········0·68632440·2025-02-15·14:19:14.000000·data.tar.xz |
Offset 114, 15 lines modified | Offset 114, 15 lines modified | ||
114 | -rw-r--r--···0·root·········(0)·root·········(0)···144515·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cArray.cmt | 114 | -rw-r--r--···0·root·········(0)·root·········(0)···144515·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cArray.cmt |
115 | -rw-r--r--···0·root·········(0)·root·········(0)····47546·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cArray.cmti | 115 | -rw-r--r--···0·root·········(0)·root·········(0)····47546·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cArray.cmti |
116 | -rw-r--r--···0·root·········(0)·root·········(0)·····5387·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cArray.cmx | 116 | -rw-r--r--···0·root·········(0)·root·········(0)·····5387·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cArray.cmx |
117 | -rw-r--r--···0·root·········(0)·root·········(0)····22530·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cArray.ml | 117 | -rw-r--r--···0·root·········(0)·root·········(0)····22530·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cArray.ml |
118 | -rw-r--r--···0·root·········(0)·root·········(0)·····8277·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cArray.mli | 118 | -rw-r--r--···0·root·········(0)·root·········(0)·····8277·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cArray.mli |
119 | -rw-r--r--···0·root·········(0)·root·········(0)······542·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cEphemeron.cmi | 119 | -rw-r--r--···0·root·········(0)·root·········(0)······542·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cEphemeron.cmi |
120 | -rw-r--r--···0·root·········(0)·root·········(0)····11283·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cEphemeron.cmt | 120 | -rw-r--r--···0·root·········(0)·root·········(0)····11283·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cEphemeron.cmt |
121 | -rw-r--r--···0·root·········(0)·root·········(0)·····393 | 121 | -rw-r--r--···0·root·········(0)·root·········(0)·····3935·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cEphemeron.cmti |
122 | -rw-r--r--···0·root·········(0)·root·········(0)·····2010·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cEphemeron.cmx | 122 | -rw-r--r--···0·root·········(0)·root·········(0)·····2010·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cEphemeron.cmx |
123 | -rw-r--r--···0·root·········(0)·root·········(0)·····3535·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cEphemeron.ml | 123 | -rw-r--r--···0·root·········(0)·root·········(0)·····3535·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cEphemeron.ml |
124 | -rw-r--r--···0·root·········(0)·root·········(0)·····2441·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cEphemeron.mli | 124 | -rw-r--r--···0·root·········(0)·root·········(0)·····2441·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cEphemeron.mli |
125 | -rw-r--r--···0·root·········(0)·root·········(0)·····9878·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cList.cmi | 125 | -rw-r--r--···0·root·········(0)·root·········(0)·····9878·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cList.cmi |
126 | -rw-r--r--···0·root·········(0)·root·········(0)···177104·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cList.cmt | 126 | -rw-r--r--···0·root·········(0)·root·········(0)···177104·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cList.cmt |
127 | -rw-r--r--···0·root·········(0)·root·········(0)····57419·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cList.cmti | 127 | -rw-r--r--···0·root·········(0)·root·········(0)····57419·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cList.cmti |
128 | -rw-r--r--···0·root·········(0)·root·········(0)····11561·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cList.cmx | 128 | -rw-r--r--···0·root·········(0)·root·········(0)····11561·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cList.cmx |
Offset 132, 50 lines modified | Offset 132, 50 lines modified | ||
132 | -rw-r--r--···0·root·········(0)·root·········(0)····87231·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cMap.cmt | 132 | -rw-r--r--···0·root·········(0)·root·········(0)····87231·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cMap.cmt |
133 | -rw-r--r--···0·root·········(0)·root·········(0)····32869·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cMap.cmti | 133 | -rw-r--r--···0·root·········(0)·root·········(0)····32869·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cMap.cmti |
134 | -rw-r--r--···0·root·········(0)·root·········(0)·····2584·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cMap.cmx | 134 | -rw-r--r--···0·root·········(0)·root·········(0)·····2584·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cMap.cmx |
135 | -rw-r--r--···0·root·········(0)·root·········(0)····10377·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cMap.ml | 135 | -rw-r--r--···0·root·········(0)·root·········(0)····10377·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cMap.ml |
136 | -rw-r--r--···0·root·········(0)·root·········(0)·····4120·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cMap.mli | 136 | -rw-r--r--···0·root·········(0)·root·········(0)·····4120·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cMap.mli |
137 | -rw-r--r--···0·root·········(0)·root·········(0)······596·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cObj.cmi | 137 | -rw-r--r--···0·root·········(0)·root·········(0)······596·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cObj.cmi |
138 | -rw-r--r--···0·root·········(0)·root·········(0)····34415·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cObj.cmt | 138 | -rw-r--r--···0·root·········(0)·root·········(0)····34415·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cObj.cmt |
139 | -rw-r--r--···0·root·········(0)·root·········(0)·····47 | 139 | -rw-r--r--···0·root·········(0)·root·········(0)·····4722·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cObj.cmti |
140 | -rw-r--r--···0·root·········(0)·root·········(0)·····4493·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cObj.cmx | 140 | -rw-r--r--···0·root·········(0)·root·········(0)·····4493·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cObj.cmx |
141 | -rw-r--r--···0·root·········(0)·root·········(0)·····6267·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cObj.ml | 141 | -rw-r--r--···0·root·········(0)·root·········(0)·····6267·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cObj.ml |
142 | -rw-r--r--···0·root·········(0)·root·········(0)·····2333·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cObj.mli | 142 | -rw-r--r--···0·root·········(0)·root·········(0)·····2333·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cObj.mli |
143 | -rw-r--r--···0·root·········(0)·root·········(0)·····2843·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cSet.cmi | 143 | -rw-r--r--···0·root·········(0)·root·········(0)·····2843·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cSet.cmi |
144 | -rw-r--r--···0·root·········(0)·root·········(0)····16653·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cSet.cmt | 144 | -rw-r--r--···0·root·········(0)·root·········(0)····16653·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cSet.cmt |
145 | -rw-r--r--···0·root·········(0)·root·········(0)·····9111·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cSet.cmti | 145 | -rw-r--r--···0·root·········(0)·root·········(0)·····9111·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cSet.cmti |
146 | -rw-r--r--···0·root·········(0)·root·········(0)·····3602·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cSet.cmx | 146 | -rw-r--r--···0·root·········(0)·root·········(0)·····3602·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cSet.cmx |
147 | -rw-r--r--···0·root·········(0)·root·········(0)·····1924·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cSet.ml | 147 | -rw-r--r--···0·root·········(0)·root·········(0)·····1924·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cSet.ml |
148 | -rw-r--r--···0·root·········(0)·root·········(0)·····1181·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cSet.mli | 148 | -rw-r--r--···0·root·········(0)·root·········(0)·····1181·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cSet.mli |
149 | -rw-r--r--···0·root·········(0)·root·········(0)·····4803·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cSig.cmi | 149 | -rw-r--r--···0·root·········(0)·root·········(0)·····4803·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cSig.cmi |
150 | -rw-r--r--···0·root·········(0)·root·········(0)····207 | 150 | -rw-r--r--···0·root·········(0)·root·········(0)····20754·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cSig.cmti |
151 | -rw-r--r--···0·root·········(0)·root·········(0)·····3481·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cSig.mli | 151 | -rw-r--r--···0·root·········(0)·root·········(0)·····3481·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cSig.mli |
152 | -rw-r--r--···0·root·········(0)·root·········(0)····17625·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cString.cmi | 152 | -rw-r--r--···0·root·········(0)·root·········(0)····17625·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cString.cmi |
153 | -rw-r--r--···0·root·········(0)·root·········(0)····58240·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cString.cmt | 153 | -rw-r--r--···0·root·········(0)·root·········(0)····58240·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cString.cmt |
154 | -rw-r--r--···0·root·········(0)·root·········(0)····45069·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cString.cmti | 154 | -rw-r--r--···0·root·········(0)·root·········(0)····45069·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cString.cmti |
155 | -rw-r--r--···0·root·········(0)·root·········(0)····20840·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cString.cmx | 155 | -rw-r--r--···0·root·········(0)·root·········(0)····20840·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cString.cmx |
156 | -rw-r--r--···0·root·········(0)·root·········(0)·····5634·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cString.ml | 156 | -rw-r--r--···0·root·········(0)·root·········(0)·····5634·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cString.ml |
157 | -rw-r--r--···0·root·········(0)·root·········(0)·····3347·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cString.mli | 157 | -rw-r--r--···0·root·········(0)·root·········(0)·····3347·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cString.mli |
158 | -rw-r--r--···0·root·········(0)·root·········(0)·····1060·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cThread.cmi | 158 | -rw-r--r--···0·root·········(0)·root·········(0)·····1060·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cThread.cmi |
159 | -rw-r--r--···0·root·········(0)·root·········(0)····20189·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cThread.cmt | 159 | -rw-r--r--···0·root·········(0)·root·········(0)····20189·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cThread.cmt |
160 | -rw-r--r--···0·root·········(0)·root·········(0)·····49 | 160 | -rw-r--r--···0·root·········(0)·root·········(0)·····4976·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cThread.cmti |
161 | -rw-r--r--···0·root·········(0)·root·········(0)·····1601·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cThread.cmx | 161 | -rw-r--r--···0·root·········(0)·root·········(0)·····1601·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cThread.cmx |
162 | -rw-r--r--···0·root·········(0)·root·········(0)·····3816·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cThread.ml | 162 | -rw-r--r--···0·root·········(0)·root·········(0)·····3816·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cThread.ml |
163 | -rw-r--r--···0·root·········(0)·root·········(0)·····1786·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cThread.mli | 163 | -rw-r--r--···0·root·········(0)·root·········(0)·····1786·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cThread.mli |
164 | -rw-r--r--···0·root·········(0)·root·········(0)·····1176·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cUnix.cmi | 164 | -rw-r--r--···0·root·········(0)·root·········(0)·····1176·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cUnix.cmi |
165 | -rw-r--r--···0·root·········(0)·root·········(0)····26837·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cUnix.cmt | 165 | -rw-r--r--···0·root·········(0)·root·········(0)····26837·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cUnix.cmt |
166 | -rw-r--r--···0·root·········(0)·root·········(0)·····688 | 166 | -rw-r--r--···0·root·········(0)·root·········(0)·····6883·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cUnix.cmti |
167 | -rw-r--r--···0·root·········(0)·root·········(0)·····2711·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cUnix.cmx | 167 | -rw-r--r--···0·root·········(0)·root·········(0)·····2711·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cUnix.cmx |
168 | -rw-r--r--···0·root·········(0)·root·········(0)·····5769·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cUnix.ml | 168 | -rw-r--r--···0·root·········(0)·root·········(0)·····5769·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cUnix.ml |
169 | -rw-r--r--···0·root·········(0)·root·········(0)·····2800·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cUnix.mli | 169 | -rw-r--r--···0·root·········(0)·root·········(0)·····2800·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/cUnix.mli |
170 | -rw-r--r--···0·root·········(0)·root·········(0)··1167900·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/clib.a | 170 | -rw-r--r--···0·root·········(0)·root·········(0)··1167900·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/clib.a |
171 | -rw-r--r--···0·root·········(0)·root·········(0)····17693·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/clib.cmxa | 171 | -rw-r--r--···0·root·········(0)·root·········(0)····17693·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/clib.cmxa |
172 | -rw-r--r--···0·root·········(0)·root·········(0)·····1473·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/diff2.cmi | 172 | -rw-r--r--···0·root·········(0)·root·········(0)·····1473·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/diff2.cmi |
173 | -rw-r--r--···0·root·········(0)·root·········(0)····26584·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/diff2.cmt | 173 | -rw-r--r--···0·root·········(0)·root·········(0)····26584·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/diff2.cmt |
174 | -rw-r--r--···0·root·········(0)·root·········(0)·····8 | 174 | -rw-r--r--···0·root·········(0)·root·········(0)·····8297·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/diff2.cmti |
175 | -rw-r--r--···0·root·········(0)·root·········(0)······510·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/diff2.cmx | 175 | -rw-r--r--···0·root·········(0)·root·········(0)······510·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/diff2.cmx |
176 | -rw-r--r--···0·root·········(0)·root·········(0)·····4667·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/diff2.ml | 176 | -rw-r--r--···0·root·········(0)·root·········(0)·····4667·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/diff2.ml |
177 | -rw-r--r--···0·root·········(0)·root·········(0)·····3057·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/diff2.mli | 177 | -rw-r--r--···0·root·········(0)·root·········(0)·····3057·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/diff2.mli |
178 | -rw-r--r--···0·root·········(0)·root·········(0)·····2761·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/dyn.cmi | 178 | -rw-r--r--···0·root·········(0)·root·········(0)·····2761·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/dyn.cmi |
179 | -rw-r--r--···0·root·········(0)·root·········(0)····35754·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/dyn.cmt | 179 | -rw-r--r--···0·root·········(0)·root·········(0)····35754·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/dyn.cmt |
180 | -rw-r--r--···0·root·········(0)·root·········(0)····14173·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/dyn.cmti | 180 | -rw-r--r--···0·root·········(0)·root·········(0)····14173·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/dyn.cmti |
181 | -rw-r--r--···0·root·········(0)·root·········(0)·····3320·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/dyn.cmx | 181 | -rw-r--r--···0·root·········(0)·root·········(0)·····3320·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/dyn.cmx |
Offset 287, 15 lines modified | Offset 287, 15 lines modified | ||
287 | -rw-r--r--···0·root·········(0)·root·········(0)····19751·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/segmenttree.cmt | 287 | -rw-r--r--···0·root·········(0)·root·········(0)····19751·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/segmenttree.cmt |
288 | -rw-r--r--···0·root·········(0)·root·········(0)·····3219·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/segmenttree.cmti | 288 | -rw-r--r--···0·root·········(0)·root·········(0)·····3219·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/segmenttree.cmti |
289 | -rw-r--r--···0·root·········(0)·root·········(0)·····1002·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/segmenttree.cmx | 289 | -rw-r--r--···0·root·········(0)·root·········(0)·····1002·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/segmenttree.cmx |
290 | -rw-r--r--···0·root·········(0)·root·········(0)·····5268·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/segmenttree.ml | 290 | -rw-r--r--···0·root·········(0)·root·········(0)·····5268·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/segmenttree.ml |
291 | -rw-r--r--···0·root·········(0)·root·········(0)·····1379·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/segmenttree.mli | 291 | -rw-r--r--···0·root·········(0)·root·········(0)·····1379·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/segmenttree.mli |
292 | -rw-r--r--···0·root·········(0)·root·········(0)······652·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/store.cmi | 292 | -rw-r--r--···0·root·········(0)·root·········(0)······652·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/store.cmi |
293 | -rw-r--r--···0·root·········(0)·root·········(0)·····8871·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/store.cmt | 293 | -rw-r--r--···0·root·········(0)·root·········(0)·····8871·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/store.cmt |
294 | -rw-r--r--···0·root·········(0)·root·········(0)·····444 | 294 | -rw-r--r--···0·root·········(0)·root·········(0)·····4449·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/store.cmti |
295 | -rw-r--r--···0·root·········(0)·root·········(0)·····1104·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/store.cmx | 295 | -rw-r--r--···0·root·········(0)·root·········(0)·····1104·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/store.cmx |
296 | -rw-r--r--···0·root·········(0)·root·········(0)·····1658·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/store.ml | 296 | -rw-r--r--···0·root·········(0)·root·········(0)·····1658·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/store.ml |
297 | -rw-r--r--···0·root·········(0)·root·········(0)·····1421·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/store.mli | 297 | -rw-r--r--···0·root·········(0)·root·········(0)·····1421·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/store.mli |
298 | -rw-r--r--···0·root·········(0)·root·········(0)·····1368·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/terminal.cmi | 298 | -rw-r--r--···0·root·········(0)·root·········(0)·····1368·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/terminal.cmi |
299 | -rw-r--r--···0·root·········(0)·root·········(0)····41773·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/terminal.cmt | 299 | -rw-r--r--···0·root·········(0)·root·········(0)····41773·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/terminal.cmt |
300 | -rw-r--r--···0·root·········(0)·root·········(0)·····7252·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/terminal.cmti | 300 | -rw-r--r--···0·root·········(0)·root·········(0)·····7252·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/terminal.cmti |
301 | -rw-r--r--···0·root·········(0)·root·········(0)·····1676·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/terminal.cmx | 301 | -rw-r--r--···0·root·········(0)·root·········(0)·····1676·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/terminal.cmx |
Offset 316, 15 lines modified | Offset 316, 15 lines modified | ||
316 | -rw-r--r--···0·root·········(0)·root·········(0)·····1086·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/unicodetable.cmi | 316 | -rw-r--r--···0·root·········(0)·root·········(0)·····1086·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/unicodetable.cmi |
317 | -rw-r--r--···0·root·········(0)·root·········(0)····62034·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/unicodetable.cmt | 317 | -rw-r--r--···0·root·········(0)·root·········(0)····62034·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/unicodetable.cmt |
318 | -rw-r--r--···0·root·········(0)·root·········(0)·····6613·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/unicodetable.cmti | 318 | -rw-r--r--···0·root·········(0)·root·········(0)·····6613·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/unicodetable.cmti |
319 | -rw-r--r--···0·root·········(0)·root·········(0)······391·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/unicodetable.cmx | 319 | -rw-r--r--···0·root·········(0)·root·········(0)······391·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/unicodetable.cmx |
320 | -rw-r--r--···0·root·········(0)·root·········(0)···335393·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/unicodetable.ml | 320 | -rw-r--r--···0·root·········(0)·root·········(0)···335393·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/unicodetable.ml |
321 | -rw-r--r--···0·root·········(0)·root·········(0)······849·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/unicodetable.mli | 321 | -rw-r--r--···0·root·········(0)·root·········(0)······849·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/unicodetable.mli |
322 | -rw-r--r--···0·root·········(0)·root·········(0)·····1742·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/unionfind.cmi | 322 | -rw-r--r--···0·root·········(0)·root·········(0)·····1742·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/unionfind.cmi |
323 | -rw-r--r--···0·root·········(0)·root·········(0)····1 | 323 | -rw-r--r--···0·root·········(0)·root·········(0)····18023·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/unionfind.cmt |
324 | -rw-r--r--···0·root·········(0)·root·········(0)·····9101·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/unionfind.cmti | 324 | -rw-r--r--···0·root·········(0)·root·········(0)·····9101·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/unionfind.cmti |
325 | -rw-r--r--···0·root·········(0)·root·········(0)······919·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/unionfind.cmx | 325 | -rw-r--r--···0·root·········(0)·root·········(0)······919·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/unionfind.cmx |
326 | -rw-r--r--···0·root·········(0)·root·········(0)·····3800·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/unionfind.ml | 326 | -rw-r--r--···0·root·········(0)·root·········(0)·····3800·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/unionfind.ml |
327 | -rw-r--r--···0·root·········(0)·root·········(0)·····2613·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/unionfind.mli | 327 | -rw-r--r--···0·root·········(0)·root·········(0)·····2613·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/unionfind.mli |
328 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config/ | 328 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config/ |
329 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config/byte/ | 329 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config/byte/ |
330 | -rw-r--r--···0·root·········(0)·root·········(0)······648·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config/byte/coq_byte_config.cmi | 330 | -rw-r--r--···0·root·········(0)·root·········(0)······648·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config/byte/coq_byte_config.cmi |
Offset 29, 219 lines modified | Offset 29, 218 lines modified | ||
000001c0:·5374·646c·6962·9030·6a82·e835·54ad·797b··Stdlib.0j..5T.y{ | 000001c0:·5374·646c·6962·9030·6a82·e835·54ad·797b··Stdlib.0j..5T.y{ | ||
000001d0:·37cc·bdfb·6821·c2b7·a0a0·3843·616d·6c69··7...h!....8Camli | 000001d0:·37cc·bdfb·6821·c2b7·a0a0·3843·616d·6c69··7...h!....8Camli | ||
000001e0:·6e74·6572·6e61·6c46·6f72·6d61·7442·6173··nternalFormatBas | 000001e0:·6e74·6572·6e61·6c46·6f72·6d61·7442·6173··nternalFormatBas | ||
000001f0:·6963·7390·30aa·550b·dab5·21d6·0e76·9a9a··ics.0.U...!..v.. | 000001f0:·6963·7390·30aa·550b·dab5·21d6·0e76·9a9a··ics.0.U...!..v.. | ||
00000200:·d43a·677e·6540·8495·a6be·0000·0004·0000··.:g~e@.......... | 00000200:·d43a·677e·6540·8495·a6be·0000·0004·0000··.:g~e@.......... | ||
00000210:·0002·0000·0005·0000·0005·a090·4040·4361··............@@Ca | 00000210:·0002·0000·0005·0000·0005·a090·4040·4361··............@@Ca | ||
00000220:·6d6c·3139·3939·5430·3335·8495·a6bd·0f9a··ml1999T035...... | 00000220:·6d6c·3139·3939·5430·3335·8495·a6bd·0f9a··ml1999T035...... | ||
00000230:·2 | 00000230:·26b5·0d86·489f·1d9c·0b28·b52f·fd00·58ed··&...H....(./..X. | ||
00000240:·6800·1ab9·4c26·4d50·6471·da90·0182·6722··h...L&MPdq....g" | |||
00000250:·696a·226b·b0a8·f865·1290·8d02·3e0a·37f3··ij"k...e....>.7. | |||
00000260:·a942·16b1·488a·b4c6·0d66·b416·6db7·1147··.B..H....f..m..G | |||
00000270:·dab6·4454·187c·c9aa·c0d1·5860·c6c3·5e5c··..DT.|....X`..^\ | |||
00000280:·c264·6d0d·630c·90a7·8e81·946e·c30d·cb70··.dm.c......n...p | |||
00000290:·44c9·2601·6502·6a02·2302·5ae5·3dbe·acf7··D.&.e.j.#.Z.=... | |||
000002a0:·7015·27a2·142c·3a6b·fd35·2294·a07c·55de··p.'..,:k.5"..|U. | |||
000002b0:·0b75·f95b·a9b6·cce7·2476·5082·96fc·b1f4··.u.[....$vP..... | |||
000002c0:·c7b2·4aa8·b3dc·e724·6250·45a6·f3eb·5f2a··..J....$bPE..._* | |||
000002d0:·5656·7150·8a49·bcb9·e261·30b3·543c·f7d4··VVqP.I...a0.T<.. | |||
000002e0:·8813·c8a9·fa83·eb7c·709d·68f6·e3ea·b80d··.......|p.h..... | |||
000002f0:·c124·3260·85e3·7f81·2d6d·55de·fd6c·0cf3··.$2`....-mU..l.. | |||
00000300:·2811·0b90·930f·ae87·150f·6e84·1d24·6200··(.........n..$b. | |||
00000310:·7292·f0df·65a9·5859·e561·1d0a·c442·08e1··r...e.XY.a...B.. | |||
00000320:·c28a·0707·94f5·a7a0·92ad·6eec·e628·11ed··..........n..(.. | |||
00000330:·4871·3b1c·d6cf·b985·a93e·ab9f·df4f·85b3··Hq;......>...O.. | |||
00000340:·0a6b·abe5·f4bd·6c97·37e8·63df·e150·b562··.k....l.7.c..P.b | |||
00000350:·f983·eb55·860f·cc20·9af5·b0aa·b850·9bd1··...U...·.....P.. | |||
00000360:·b491·09af·c1ef·5a96·8aeb·df1b·7512·df90··......Z.....u... | |||
00000370:·a3ab·4922·b3c3·2f06·8d88·6ba4·f673·d9ea··..I"../...k..s.. | |||
00000380:·8878·8608·2d7c·35df·34a2·1663·ccb8·1eb6··.x..-|5.4..c.... | |||
00000390:·fe95·7d8c·8860·ba17·acc7·b9c7·8815·1070··..}..`.........p | |||
000003a0:·be1c·9669·c42b·42e0·f87e·ec72·8b6b·4420··...i.+B..~.r.kD· | |||
000003b0:·6a6d·8223·faa9·4370·bd0b·1746·31eb·4370··jm.#..Cp...F1.Cp | |||
000003c0:·3d7c·274e·6444·30fd·082f·0848·4604·d38b··=|'NdD0../.HF... | |||
000003d0:·4055·9f28·7cdf·cf88·c803·1654·a532·85ab··@U.(|......T.2.. | |||
000003e0:·6429·d88f·46d4·410a·9326·37f4·58b0·84e3··d)..F.A..&7.X... | |||
000003f0:·7b44·9c81·23aa·2814·c777·4684·8123·aad5··{D..#.(..wF..#.. | |||
00000400:·c746·6421·87db·fcb1·8e88·5b38·a25a·a9e8··.Fd!......[8.Z.. | |||
00000410:·cc3b·50f3·8d73·a7c2·f96e·fc7c·e82f·105f··.;P..s...n.|./._ | |||
00000420:·381d·a757·2c1d·f78a·4a71·3855·8429·3c38··8..W,...Jq8U.)<8 | |||
00000430:·5f6e·417c·39ce·5d49·f450·558a·072c·d6cf··_nA|9.]I.PU..,.. | |||
00000440:·8827·7044·b542·c143·3f23·9690·e270·b475··.'pD.B.C?#...p.u | |||
00000450:·7546·c428·1c51·45d5·5a51·b58e·b07a·5073··uF.(.QE.ZQ...zPs | |||
00000460:·2322·982e·0247·5477·b85a·43fb·fbb3·ac23··#"...GTw.ZC....# | |||
00000470:·2298·5e44·ad3a·5fce·2b23·2207·1c51·ad15··".^D.:_.+#"..Q.. | |||
00000480:·0585·2b44·ab55·f538·6315·cd6c·acb5·d65e··..+D.U.8c..l...^ | |||
00000490:·59e8·1555·4354·0da1·86b3·ae69·a069·a30f··Y..UCT.....i.i.. | |||
000004a0:·6456·6b7b·44ac·4545·5040·9144·1345·b501··dVk{D.EEP@.D.E.. | |||
000004b0:·aed6·ae2d·d1b4·9110·5356·2d0e·40e6·9600··...-....SV-.@... | |||
000004c0:·1786·333b·41f8·a5f7·6a46·0c37·fb32·9260··..3;A...jF.7.2.` | |||
000004d0:·8c64·96fb·bd4e·ddcd·ea7e·dd92·d948·84eb··.d...N...~...H.. | |||
000004e0:·a818·2965·2f34·53a4·51a0·69a3·8e22·62ec··..)e/4S.Q.i.."b. | |||
000004f0:·2311·cefa·5fef·82e9·a46c·b494·a68d·021f··#..._....l...... | |||
00000500:·68b5·a262·b8d9·68b3·43ea·bda2·b86c·7354··h..b..h.C....lsT | |||
00000510:·629b·2e6c·73ec·63c7·f1d2·c75e·515c·f4ba··b..ls.c....^Q\.. | |||
00000520:·c436·7dd8·2613·3a92·2b82·d523·b6f9·25ac··.6}.&.:.+..#..%. | |||
00000530:·8288·6d12·f56d·0eb1·cdd1·876d·52f1·030d··..m..m.....mR... | |||
00000540:·31ec·b0cd·7053·6d13·c936·71b6·296e·d85a··1...pSm..6q.)n.Z | |||
00000550:·5021·ec6e·c838·49c2·4832·16c3·cdc6·17b6··P!.n.8I.H2...... | |||
00000560:·d98b·4889·ed7f·dd91·13b6·89da·e667·7324··..H..........gs$ | |||
00000570:·57f4·7a6d·f3b5·cd5a·3110·4902·9124·3fed··W.zm...Z1.I..$?. | |||
00000580:·ef5a·16d5·1ffb·1e7a·1a6d·73ec·f5ca·369d··.Z.....z.ms...6. | |||
00000590:·d412·b6f9·2507·0a2c·dbdc·b9b2·4d11·8a9e··....%..,....M... | |||
000005a0:·6cf3·c946·c295·1f2a·db7c·b2cd·8ac1·3673··l..F...*.|....6s | |||
000005b0:·b639·a2b6·393e·d966·af60·fbc0·8321·db4c··.9..9>.f.`...!.L | |||
000005c0:·43ce·3ee4·1c9f·9042·83ad·278a·0e07·24e9··C.>....B..'...$. | |||
000005d0:·8424·770c·371b·936c·b323·2025·ff40·cb7a··.$w.7..l.#·%.@.z | |||
000005e0:·0f09·b7cd·3072·22b0·4dd2·36e7·36c7·5a53··....0r".M.6.6.ZS | |||
000005f0:·922b·aa45·b659·6b91·6d16·d966·ad19·4440··.+.E.Yk.m..f..D@ | |||
00000600:·9211·9024·0a31·dc6c·a4f4·f7b5·9aca·6c08··...$.1.l......l. | |||
00000610:·b409·147d·8759·ef3d·dce1·baec·d5f4·b1d7··...}.Y.=........ | |||
00000620:·42e4·04a0·6adb·fc52·6b21·4de8·2127·2010··B...j..Rk!M.!'·. | |||
00000630:·3810·464e·3de4·ac75·c8e9·879c·6318·3999··8.FN=..u....c.9. | |||
00000640:·d043·ce0e·0601·03c0·90d3·8b9c·5fe4·8442··.C.........._..B | |||
00000650:·8929·6bca·893c·1628·4200·1192·0480·2461··.)k..<.(B.....$a | |||
00000660:·31dc·6c54·43ce·7e80·94fc·5b33·5fc8·2986··1.lTC.~...[3_.). | |||
00000670:·1572·de20·2710·728e·3b5c·0d43·ce5a·c33a··.r.·'.r.;\.C.Z.: | |||
00000680:·569c·2fe4·0c53·3992·2023·1966·2471·0c37··V./..S9.·#.f$q.7 | |||
00000690:·1bbb·90b3·e318·20a5·eca3·d814·8119·7b18··......·.......{. | |||
000006a0:·fb15·7276·9113·0b39·c75a·5192·2b42·a34e··..rv...9.ZQ.+B.N | |||
000006b0:·21e7·1721·8c18·2b17·b35a·9590·f309·39c7··!..!..+..Z....9. | |||
000006c0:·2e72·8a53·7291·b317·2167·14b3·5a6b·1e77··.r.Sr...!g..Zk.w | |||
000006d0:·7491·938b·9c75·0f3d·642f·3413·7612·1746··t....u.=d/4.v..F | |||
000006e0:·f1a5·d639·e468·414e·12f7·0057·44c4·9415··...9.hAN...WD... | |||
000006f0:·0709·1fe4·0cc3·1997·5af4·a5c2·c1c6·48a2··........Z.....H. | |||
00000700:·3192·5f0c·371b·7190·b317·20e5·73fb·baa3··1._.7.q...·.s... | |||
00000710:·e961·c2b1·d702·b814·e41c·51f5·01ae·a26a··.a........Q....j | |||
00000720:·dd22·67ad·5526·a702·5c45·e1f4·5acb·2003··."g.U&..\E..Z.·. | |||
00000730:·556b·955c·51ad·b516·c081·3156·2841·4c49··Uk.\Q.....1V(ALI | |||
00000740:·e238·e699·215a·ddcf·e33e·3444·21eb·04fc··.8..!Z...>4D!... | |||
00000750:·4296·ab64·9e7d·fd59·55ca·8978·85a5·fa0f··B..d.}.YU..x.... | |||
00000760:·f4f2·4bf5·b1bb·35d8·7d96·5bfd·dedd·9f43··..K...5.}.[....C | |||
00000770:·2925·42e4·c4af·ec63·77e3·870d·3dfd·1595··)%B....cw...=... | |||
00000780:·d917·a861·df77·b90f·a5a7·a0c7·b907·8866··...a.w.........f | |||
00000790:·4e59·99ff·6ee1·ab33·eb57·a520·ead9·1550··NY..n..3.W.·...P | |||
000007a0:·9067·5740·743f·4cc6·e9f7·59da·c217·6b90··.gW@t?L...Y...k. | |||
000007b0:·530d·6619·fd16·b6ae·4ef6·69fb·ddd7·f561··S.f.....N.i....a | |||
000007c0:·b140·bedf·c5f7·839f·8d51·d9eb·057a·2d7c··.@.......Q...z-| | |||
000007d0:·3748·4b8f·33f5·b4f5·b0e5·9b66·8e2f·e5dd··7HK.3......f./.. | |||
000007e0:·67c1·d7f4·1acc·32ba·f77f·18a4·257e·e9de··g.....2.....%~.. | |||
000007f0:·df65·0da3·99d3·f772·47ff·6537·956d·d076··.e.....rG.e7.m.v | |||
00000800:·25ef·bfc3·9996·f0bb·7809·6bc9·1ef5·fef5··%.......x.k..... | |||
00000810:·ba9a·534b·bdef·402f·6b18·f53e·3077·a7d7··..SK..@/k..>0w.. | |||
00000820:·efe2·0f83·5917·e51b·cc42·f9a5·a516·beb2··....Y....B...... | |||
00000830:·15f5·3ea6·7fbf·86ed·ebe2·1409·ce1e·05b3··..>............. | |||
00000840:·4cf6·7d16·e41d·8ad2·538d·ce1c·7675·b7df··L.}.....S...vu.. | |||
00000850:·b354·675a·7a0d·eefc·75d4·d217·ba5f·92ff··.TgZz...u...._.. | |||
00000860:·5616·831b·5fcb·2fe5·e08a·7aff·7dd6·b5b5··V..._./...z.}... | |||
00000870:·7dd1·5fd1·cce9·f6fe·31e5·d6c5·e96b·905a··}._.....1....k.Z | |||
00000880:·6e3d·6ae9·c7ac·8b82·190b·1127·bf6d·477f··n=j........'.mG. | |||
00000890:·57a1·1200·a069·447a·af45·5cd9·e495·4df2··W....iDz.E\...M. | |||
000008a0:·8c40·c026·09d8·a407·351f·1fd2·f1e9·d149··.@.&....5......I | |||
000008b0:·f180·30c0·e645·4a2f·5242·a9e0·6481·15fa··..0..EJ/RB..d... | |||
000008c0:·1b7f·7741·a0dd·fd56·e014·fa59·fdf8·a150··..wA...V...Y...P | |||
000008d0:·fd7b·3f08·b44a·0f14·2eb4·48a9·45ca·9d18··.{?..J....H.E... | |||
000008e0:·6e36·b232·dd2f·fd9c·be8b·53fd·1e06·a9f7··n6.2./....S..... | |||
000008f0:·fb7a·74df·7d5d·3ff4·e686·c64a·5296·a4d4··.zt.}]?....JR... | |||
00000900:·a1f4·c68a·9512·2890·7168·320e·4de6·d4ec··......(.qh2.M... | |||
00000910:·e7d6·a334·74eb·ece2·a0a5·3ab3·e87f·9745··...4t.....:....E | |||
00000920:·7d7e·7872·74a8·a4be·8cf3·ddfa·63f4·7f27··}~xrt.......c..' | |||
00000930:·a136·b454·52a9·5452·9e80·e1a2·492e·9a4c··.6.TR.TR....I..L | |||
00000940:·c570·b371·ebcc·c1d5·d51c·e78e·7ad8·521f··.p.q........z.R. | |||
00000950:·2a3d·295a·42f1·50e9·e1a1·dcd5·ba5a·06cb··*=)ZB.P......Z.. | |||
00000960:·294a·633e·6832·8a16·45c3·79d9·ffa1·1cff··)Jc>h2..E.y..... | |||
00000970:·0b96·bf8f·7dce·0de5·d8f2·7df7·4651·56ce··....}.....}.FQV. | |||
00000980:·7a0a·4521·a7e8·bb7e·28a5·3634·758b·9c21··z.E!...~(.64u..! | |||
00000990:·1272·1a31·879c·72c8·d97b·df22·6778·c136··.r.1..r..{."gx.6 | |||
000009a0:·976c·b3f7·5ea7·d45a·471c·d196·16b6·1936··.l..^..ZG......6 | |||
Max diff block lines reached; -1/29678 bytes (-0.00%) of diff not shown. |
Offset 32, 265 lines modified | Offset 32, 265 lines modified | ||
000001f0:·4b23·94a0·a026·5374·646c·6962·9030·6a82··K#...&Stdlib.0j. | 000001f0:·4b23·94a0·a026·5374·646c·6962·9030·6a82··K#...&Stdlib.0j. | ||
00000200:·e835·54ad·797b·37cc·bdfb·6821·c2b7·a0a0··.5T.y{7...h!.... | 00000200:·e835·54ad·797b·37cc·bdfb·6821·c2b7·a0a0··.5T.y{7...h!.... | ||
00000210:·3843·616d·6c69·6e74·6572·6e61·6c46·6f72··8CamlinternalFor | 00000210:·3843·616d·6c69·6e74·6572·6e61·6c46·6f72··8CamlinternalFor | ||
00000220:·6d61·7442·6173·6963·7390·30aa·550b·dab5··matBasics.0.U... | 00000220:·6d61·7442·6173·6963·7390·30aa·550b·dab5··matBasics.0.U... | ||
00000230:·21d6·0e76·9a9a·d43a·677e·6540·8495·a6be··!..v...:g~e@.... | 00000230:·21d6·0e76·9a9a·d43a·677e·6540·8495·a6be··!..v...:g~e@.... | ||
00000240:·0000·0004·0000·0002·0000·0005·0000·0005··................ | 00000240:·0000·0004·0000·0002·0000·0005·0000·0005··................ | ||
00000250:·a090·4040·4361·6d6c·3139·3939·5430·3335··..@@Caml1999T035 | 00000250:·a090·4040·4361·6d6c·3139·3939·5430·3335··..@@Caml1999T035 | ||
00000260:·8495·a6bd·0fa0·0 | 00000260:·8495·a6bd·0fa0·03cb·768a·0ead·4aa9·3428··........v...J.4( | ||
00000270:·b52f·fd00·58 | 00000270:·b52f·fd00·58d5·7f00·3ad3·a02c·4920·a2d5··./..X...:..,I·.. | ||
00000280:·b401·7f97·4a90·0696·f501·55f5·df2b·ca1f··....J.....U..+.. | |||
00000290:·0e88·eb58·78df·d5f6·cd87·5eff·0448·a8dd··...Xx.....^..H.. | |||
000002a0:·a85a·a439·97a9·6d23·68ff·dede·bc62·3a1d··.Z.9..m#h....b:. | |||
000002b0:·3e38·dc8f·438b·5e5e·e15c·e002·7d58·ea7b··>8..C.^^.\..}X.{ | |||
000002c0:·55c4·2b6a·8aec·b601·c002·a002·bd02·18bc··U.+j............ | |||
000002d0:·c976·0d06·9361·9d67·58a6·b338·d125·6d09··.v...a.gX..8.%m. | |||
000002e0:·7718·e21f·dd91·979d·6132·0ce6·db60·0c26··w.......a2...`.& | |||
000002f0:·4a31·09e9·30e8·006a·83b3·103f·6d18·98cf··J1..0..j...?m... | |||
00000300:·e34c·423a·a22c·52e1·aee1·1a6c·b661·fca6··.LB:.,R....l.a.. | |||
00000310:·e4d2·0969·91e9·db9e·c1f8·4efa·d159·f9b0··...i......N..Y.. | |||
00000320:·3e6a·5753·7b6e·8785·f671·4f03·978e·8126··>jWS{n...qO....& | |||
00000330:·ae71·ede6·147a·3059·06bd·278d·9444·4780··.q...z0Y..'..DG. | |||
00000340:·7c35·b5e3·6e9a·cac1·9111·1d00·f2b9·6030··|5..n.........`0 | |||
00000350:·cf60·b30d·9369·2324·ba43·08a9·b89b·a676··.`...i#$.C.....v | |||
00000360:·d921·9e82·49c5·f253·8e92·4467·8751·2552··.!..I..S..Dg.Q%R | |||
00000370:·7588·39f7·6c30·d00b·31cf·204c·6f98·0e3d··u.9.l0..1.·Lo..= | |||
00000380:·28a1·0bfa·d889·d4d7·bd5b·faa8·fdaa·40a5··(........[....@. | |||
00000390:·8cdc·aee3·ae07·15b7·da59·ad70·3cc0·e10d··.........Y.p<... | |||
000003a0:·ccde·0cc6·432c·8a2f·215d·1b71·7c3f·4774··....C,./!].q|?Gt | |||
000003b0:·8e78·d637·1e9d·1a45·22e6·52b1·1e9d·191b··.x.7...E".R..... | |||
000003c0:·38e9·1c72·d147·27c5·1755·d48e·73c2·b5cd··8..r.G'..U..s... | |||
000003d0:·c4a3·43d3·b398·61bd·9378·9aac·e89d·b96d··..C...a..x.....m | |||
000003e0:·fbe8·9cd0·80eb·8c9f·32f7·f48f·6e87·7bc9··........2...n.{. | |||
000003f0:·d41c·96eb·43ed·612a·6e89·5df7·a176·1c76··....C.a*n.]..v.v | |||
00000400:·e244·4787·a68b·9179·e9a2·a343·d383·785d··.DG....y...C..x] | |||
00000410:·a62a·5ccc·208f·2eb7·e575·af2c·7198·d494··.*\.·....u.,q... | |||
00000420:·07fa·e864·5062·42e4·4292·9225·5ce7·1edd··...dPbB.B..%\... | |||
00000430:·0a35·775f·2fae·f38e·0e85·9abb·9709·4847··.5w_/.........HG | |||
00000440:·4214·ee6d·70d6·a39b·aab9·7baf·849b·7fb7··B..mp.....{..... | |||
00000450:·908b·7a7f·30bd·b3a8·318f·c214·e840·281d··..z.0...1....@(. | |||
00000460:·4abf·5bba·eef7·6554·a1dc·0d96·90f4·cedc··J.[...eT........ | |||
00000470:·bbe9·ccf5·fe82·74df·eb2a·4d99·cdf0·8e0e··......t..*M..... | |||
00000480:·5673·f74a·d151·7847·d7c5·a842·093d·dac7··Vs.J.QxG...B.=.. | |||
00000490:·a3a3·5273·f775·5ff7·36c5·f02d·e43c·3a34··..Rs.u_.6..-.<:4 | |||
000004a0:·7da9·e670·1e16·416f·d6a3·43d3·83b8·d708··}..p..Ao..C..... | |||
000004b0:·dc3b·c6a3·bb35·77ef·2552·efbd·b7df·12fa··.;...5w.%R...... | |||
000004c0:·7d5d·dceb·6a70·5771·fcf1·f3e2·767d·f564··}]..jpWq....v}.d | |||
000004d0:·b5c2·a122·e585·a1d7·a3bb·5454·4a28·3184··..."......TTJ(1. | |||
000004e0:·1146·dc07·eabd·7db5·64b5·c2c9·a937·a7de··.F....}.d....7.. | |||
000004f0:·7b73·6a4e·bd37·874a·31a6·d4a0·5577·62a6··{sjN.7.J1...Uwb. | |||
00000500:·1433·6595·0cd6·84be·c494·bea1·5806·3fd7··.3e.........X.?. | |||
00000510:·6eb4·427c·83d6·b398·7bdf·0641·cf4a·7935··n.B|....{..A.Jy5 | |||
00000520:·2bd3·9e95·02f1·5316·c3db·8743·2bf2·0f7f··+.....S....C+... | |||
00000530:·896d·8bc3·0dda·a2b0·15f5·cefc·d3b7·99c5··.m.............. | |||
00000540:·22a6·61b1·9608·9111·84f0·0df4·9eac·d59e··".a............. | |||
00000550:·9d6d·8ba7·b268·41ef·cba2·146d·c912·8560··.m...hA....m...` | |||
00000560:·6b2c·25fa·0cbb·de3b·ee15·406d·b3ba·1786··k,%....;..@m.... | |||
00000570:·f5d6·309f·ddc8·a330·1702·6bde·b781·fae8··..0....0..k..... | |||
00000580:·c3d8·c7dc·9798·5211·cfaa·68b5·c209·31ab··......R...h...1. | |||
00000590:·f153·76da·dcfe·1cb1·4c96·8f99·bf65·be10··.Sv.....L....e.. | |||
000005a0:·45b2·5211·5d20·e657·e592·e861·3e0c·3ccc··E.R.]·.W...a>.<. | |||
000005b0:·df61·feb8·653e·1237·74e1·00d7·d960·da60··.a..e>.7t....`.` | |||
000005c0:·cbfc·23c6·1792·9cbc·247a·e9b5·ea6e·4461··..#.....$z...nDa | |||
000005d0:·7e3f·404a·182c·c45c·cc4e·3864·3235·7fcb··~?@J.,.\.N8d25.. | |||
000005e0:·d4d4·fca9·f9f7·32f9·3daa·dca3·4a98·28c3··......2.=...J.(. | |||
000005f0:·5fe8·61d1·82a0·110c·6569·5fa6·4159·9d41··_.a.....ei_.AY.A | |||
00000600:·2fb6·4127·11cb·f2d3·0e97·6c06·79fe·963c··/.A'......l.y..< | |||
00000610:·f3fc·3cff·5e35·5576·51a5·9756·ddb1·aa64··..<.^5UvQ..V...d | |||
00000620:·55c9·c549·e7d8·069d·349e·6dcb·b398·9f68··U..I....4.m....h | |||
00000630:·4e39·746d·eee2·330c·ea6c·439c·c1d0·c356··N9tm..3..lC....V | |||
00000640:·632c·5acb·b7b6·a285·c2da·629a·beed·cf4a··c,Z.......b....J | |||
00000650:·817a·5b0c·1504·829e·ad61·1ab7·4e3a·ebec··.z[......a..N:.. | |||
00000660:·71bd·bf10·3b85·1e68·3dbb·b9b5·d612·e11f··q...;..h=....... | |||
00000670:·b689·3894·617e·b3d5·f667·71e8·611a·b720··..8.a~...gq.a..· | |||
00000680:·e8d9·205c·cbdc·8a99·86c5·a269·9aff·ba40··..·\.......i...@ | |||
00000690:·f37f·7ece·fca6·f9b7·a969·7ed3·fc7b·6fea··..~......i~..{o. | |||
000006a0:·1854·8e41·a596·1184·9c74·0e3d·9a68·693c··.T.A.....t.=.hi< | |||
000006b0:·43d9·252c·5645·327f·81f9·15cc·a0f9·e3bd··C.%,VE2......... | |||
000006c0:·5064·a5ba·4de6·dfdb·647e·93f9·f786·4186··Pd..M...d~....A. | |||
000006d0:·4a32·5436·6d30·83c1·4067·7eee·1a99·5fd5··J2T6m0..@g~..._. | |||
000006e0:·2a62·67be·0153·67be·04f3·c705·e613·5164··*bg..Sg.......Qd | |||
000006f0:·1621·4410·7d0e·f954·c81f·43fe·1046·1430··.!D.}..T..C..F.0 | |||
00000700:·7bb8·81ca·1c95·595a·7537·0230·bf1b·2065··{.....YZu7.0..·e | |||
00000710:·0c8c·113a·e48b·217f·8f3a·5eb2·52ad·5923··...:..!..:^.R.Y# | |||
00000720:·7f8d·fc7b·7120·5009·0295·4c56·67eb·054f··...{q·P...LVg..O | |||
00000730:·65b1·8b15·3d8b·6b1e·9375·f283·fcb1·df36··e...=.k..u.....6 | |||
00000740:·e473·b968·e457·9121·e68c·fc2e·da90·cf86··.s.h.W.!........ | |||
00000750:·fc51·0cf9·3a34·6cb5·ecf4·ba61·e443·c92f··.Q..:4l....a.C./ | |||
00000760:·52c7·1b84·105c·c83c·a092·0b95·575a·7537··R....\.<....WZu7 | |||
00000770:·5621·bf17·2065·0ce6·b383·7c07·6a11·f2bb··V!..·e....|.j... | |||
00000780:·7c1e·e48f·f75e·59a9·2e19·f9f7·9291·4f46··|....^Y.......OF | |||
00000790:·febd·5a5c·54ba·a85c·6ad5·dd68·8544·59b8··..Z\T..\j..h.DY. | |||
000007a0:·a1ac·ced6·8748·fdb6·eca7·8ffd·e6e4·b72e··.....H.......... | |||
000007b0:·0ef2·ab58·f881·06f9·28c8·bf56·ecee·cdc9··...X....(..V.... | |||
000007c0:·9f41·fee8·40f5·e125·0cf2·97d8·dd1b·f4c3··.A..@..%........ | |||
000007d0:·75de·c175·152a·6e89·aa7b·7b76·1ca8·3dbc··u..u.*n..{{v..=. | |||
000007e0:·bc2f·205e·9e20·1f87·dbdd·b0f3·24c0·555d··./·^.·......$.U] | |||
000007f0:·aaaa·6b8b·50d9·a252·a955·7763·94fc·4e80··..k.P..R.Uwc..N. | |||
00000800:·9478·2a8b·3c7d·0fdc·d873·eaeb·2af9·e4b8··.x*.<}...s..*... | |||
00000810:·46da·c9c5·3228·e34c·3e39·1cfe·4063·301e··F...2(.L>9..@c0. | |||
00000820:·8749·c93c·1c82·1eac·c889·8e83·192c·f5df··.I.<.........,.. | |||
00000830:·a8a0·7e95·0e17·4bea·f354·25f5·27a8·3f1a··..~...K..T%.'.?. | |||
00000840:·a9bf·4550·2182·ecd4·d7a9·3fbe·ee1a·fa60··..EP!.....?....` | |||
00000850:·d0df·826a·0141·fd63·8d1a·3970·e41b·3852··...j.A.c..9p..8R | |||
00000860:·0405·eaf7·9c20·3ee8·6b41·ff90·3ea4·c84a··.....·>.kA..>..J | |||
00000870:·d5a6·0dfd·36f4·ef3d·6305·8eb4·0247·4e05··....6..=c....GN. | |||
00000880:·d93c·3cc5·12dd·417f·8c9a·3bb2·c083·be1b··.<<...A...;..... | |||
00000890:·77d0·4f83·c51c·bb29·ced0·6f83·fea8·057d··w.O....)..o....} | |||
000008a0:·3369·3cc1·8412·45e0·c831·3852·2a0c·fa7d··3i<...E..18R*..} | |||
000008b0:·019b·8769·6670·a0af·449f·0a35·43ff·9a31··...ifp..D..5C..1 | |||
000008c0:·43df·0cfd·7b75·361c·69c3·9150·56c8·e661··C...{u6.i..PV..a | |||
000008d0:·9a0c·d338·df58·8472·a08f·445f·0cd5·811e··...8.X.r..D_.... | |||
000008e0:·8da1·7fc7·d031·f4c7·d0bf·57e3·c827·38f2··.....1....W..'8. | |||
000008f0:·d6aa·3b3d·6ea4·1e37·9287·37fb·65f0·93fa··..;=n..7..7.e... | |||
00000900:·acde·56b4·ed0d·5a31·cfb6·a571·1b96·d9da··..V...Z1...q.... | |||
00000910:·ad96·a3bc·9a4c·7b41·3fe0·91f0·c6f1·153b··.....L{A?......; | |||
00000920:·02ab·05fa·5adc·1ae8·577d·b093·813e·9716··....Z...W}...>.. | |||
00000930:·aa70·817e·1781·7ed7·f47b·6e77·ef6d·813e··.p.~..~..{nw.m.> | |||
00000940:·0b54·a490·479a·10e8·4f4d·71ab·438e·5ba3··.T..G...OMq.C.[. | |||
00000950:·0fd2·1f91·e84b·e104·c799·5cd5·bd6b·a481··.....K....\..k.. | |||
00000960:·443f·8a2b·b650·33bc·b891·5adc·48b1·5577··D?.+.P3...Z.H.Uw | |||
00000970:·e312·fdae·8094·22f7·b808·fb12·db3f·47f4··......"......?G. | |||
00000980:·5f77·09fd·36f3·0739·a27f·ef11·fd23·faf7··_w..6..9.....#.. | |||
00000990:·6211·e646·86b9·9120·1429·396d·2b96·2804··b..F...·.)9m+.(. | |||
000009a0:·dbc3·6242·5f90·f914·d01f·ef35·9295·ca76··..bB_......5...v | |||
000009b0:·93d0·afba·1709·1441·f423·a048·e803·3dd1··.......A.#.H..=. | |||
000009c0:·9383·0d05·38e1·00fd·ceba·0dd0·6fd1·1f05··....8.......o... | |||
000009d0:·99df·4402·1486·16fa·9d21·8611·b702·bf91··..D......!...... | |||
Max diff block lines reached; -1/36093 bytes (-0.00%) of diff not shown. |
Offset 295, 1004 lines modified | Offset 295, 1004 lines modified | ||
00001260:·a0a0·2653·7464·6c69·6290·306a·82e8·3554··..&Stdlib.0j..5T | 00001260:·a0a0·2653·7464·6c69·6290·306a·82e8·3554··..&Stdlib.0j..5T | ||
00001270:·ad79·7b37·ccbd·fb68·21c2·b7a0·a038·4361··.y{7...h!....8Ca | 00001270:·ad79·7b37·ccbd·fb68·21c2·b7a0·a038·4361··.y{7...h!....8Ca | ||
00001280:·6d6c·696e·7465·726e·616c·466f·726d·6174··mlinternalFormat | 00001280:·6d6c·696e·7465·726e·616c·466f·726d·6174··mlinternalFormat | ||
00001290:·4261·7369·6373·9030·aa55·0bda·b521·d60e··Basics.0.U...!.. | 00001290:·4261·7369·6373·9030·aa55·0bda·b521·d60e··Basics.0.U...!.. | ||
000012a0:·769a·9ad4·3a67·7e65·4084·95a6·be00·0000··v...:g~e@....... | 000012a0:·769a·9ad4·3a67·7e65·4084·95a6·be00·0000··v...:g~e@....... | ||
000012b0:·0600·0000·0300·0000·0800·0000·08a0·41a0··..............A. | 000012b0:·0600·0000·0300·0000·0800·0000·08a0·41a0··..............A. | Diff chunk too large, falling back to line-by-line diff (997 lines added, 997 lines removed) | |
000012c0:·9040·4043·616d·6c31·3939·3954·3033·3584··.@@Caml1999T035. | 000012c0:·9040·4043·616d·6c31·3939·3954·3033·3584··.@@Caml1999T035. | ||
000012d0:·95a6·bd12·fc3 | 000012d0:·95a6·bd12·fc31·82cc·52bc·1a81·f040·81ed··.....1..R....@.. | ||
000012e0:·4 | 000012e0:·4528·b52f·fd00·5845·f101·0acb·9699·4810··E(./..XE......H. | ||
000012f0:· | 000012f0:·508e·aa31·fcf0·9ddb·998b·d2a4·814b·ca10··P..1.........K.. | ||
00001300:· | 00001300:·b6e4·08ee·358d·5748·103d·e440·ed05·9bd8··....5.WH.=.@.... | ||
00001310:· | 00001310:·0841·e056·5845·19a0·85fc·2226·8978·b485··.A.VXE...."&.x.. | ||
00001320:· | 00001320:·1825·7c06·2d34·28ae·3e63·2cc5·f33c·cff3··.%|.-4(.>c,..<.. | ||
00001330:· | 00001330:·e46f·ffa4·6d69·036d·0975·09cc·0948·152d··.o..mi.m.u...H.- | ||
00001340:· | 00001340:·11da·a968·50b4·1bfa·9500·408a·1624·2af3··...hP.....@..$*. | ||
00001350:· | 00001350:·f8bd·f1ab·2500·edba·c5bd·59cb·a6d6·0cda··....%.....Y..... | ||
00001360:· | 00001360:·93f8·69d0·be73·7e72·7174·9763·d03e·259a··..i..s~rqt.c.>%. | ||
00001370:· | 00001370:·8041·7b2d·482b·2ed1·ae44·6341·fb0a·e209··.A{-H+...DcA.... | ||
00001380:· | 00001380:·9a0d·2821·ed41·da90·478b·d1e4·e84a·34da··..(!.A..G....J4. | ||
00001390:· | 00001390:·1f9d·7695·f69d·c42f·9cd4·42c5·6eb5·0df8··..v..../..B.n... | ||
000013a0:· | 000013a0:·7774·c32f·c1cf·41b0·d189·a2d2·eff7·f69b··wt./..A......... | ||
000013b0:· | 000013b0:·ece1·d74b·ca25·1cfe·3d7f·0e4e·2e8e·0a91··...K.%..=..N.... | ||
000013c0:· | 000013c0:·69f8·a71b·18c3·8fe7·37fd·4b70·e16f·c1a7··i.......7.Kp.o.. | ||
000013d0:· | 000013d0:·828d·46c2·efe7·df7b·fe1e·08b3·df47·fffd··..F....{.....G.. | ||
000013e0:· | 000013e0:·c06f·f543·7976·2445·52c2·11be·8bf0·cd1a··.o.Cyv$ER....... | ||
000013f0:· | 000013f0:·62e9·a6f3·6b16·f742·93cf·abaf·a78b·37ff··b...k..B......7. | ||
00001400:· | 00001400:·f387·d3e4·e2a8·a0cc·c03f·65ee·c47e·2f9d··.........?e..~/. | ||
00001410:· | 00001410:·02ff·9835·7f02·b934·8a12·89f9·c3fc·fbf9··...5...4........ | ||
00001420:· | 00001420:·e3bc·18e2·a1f9·33ff·e43f·f1d7·f84d·b983··......3..?...M.. | ||
00001430:· | 00001430:·0e38·cc80·6f0b·f862·0db1·7463·f9f5·8a7b··.8..o..b..tc...{ | ||
00001440:· | 00001440:·97c8·af2d·c916·507e·1a7f·94aa·8ba3·7972··...-..P~......yr | ||
00001450:·d | 00001450:·d53f·9561·53f2·3fd5·8cfc·3f5e·e427·c24e··.?.aS.?...?^.'.N | ||
00001460:· | 00001460:·0502·0465·2a59·b4da·0cf6·f1f7·f837·8d7f··...e*Y.......7.. | ||
00001470:· | 00001470:·0d00·8513·9c7e·1907·fe38·e00b·417b·713f··.....~...8..A{q? | ||
00001480:·5 | 00001480:·5211·f8e0·7b07·dfab·2196·6e14·bf56·716f··R...{...!.n..Vqo | ||
00001490:·d2 | 00001490:·d289·f4ea·6a62·bd08·fe8d·f085·ffce·99c9··....jb.......... | ||
000014a0:· | 000014a0:·c5d1·37b9·f74f·81b8·ee5f·8469·b65f·52ed··..7..O..._.i._R. | ||
000014b0:· | 000014b0:·67af·aadf·4083·48f8·90f0·7723·fcd9·a30b··g...@.H...w#.... | ||
000014c0:· | 000014c0:·2c50·840f·8420·fc37·f81b·5cda·a13a·6312··,P...·.7..\..:c. | ||
000014d0:· | 000014d0:·c8c1·9701·7c91·432c·dd39·e06b·e3bd·5a5a··....|.C,.9.k..ZZ | ||
000014e0:· | 000014e0:·caac·2518·f035·c08f·61c9·c551·302e·e04f··..%..5..a..Q0..O | ||
000014f0:·2 | 000014f0:·2d90·d158·c0c7·6089·14f0·3ff8·838f·c224··-..X..`...?....$ | ||
00001500:· | 00001500:·3f0b·b8e9·83ef·01fe·d600·5f92·1e36·0a5c··?........._..6.\ | ||
00001510:· | 00001510:·806f·418b·0f05·7f19·694c·cd01·69c8·e0eb··.oA.....iL..i... | ||
00001520:· | 00001520:·055f·2c70·f075·8a7b·9d49·2853·d906·5f0b··._,p.u.{.I(S.._. | ||
00001530:· | 00001530:·be98·928b·a358·790d·fe54·0b92·1a7c·2e25··.....Xy..T...|.% | ||
00001540:· | 00001540:·d0e0·879d·c137·9344·98b0·2e5d·f0b9·e06f··.....7.D...]...o | ||
00001550:· | 00001550:·2df8·4838·a1cf·2d7c·2d24·f841·fc26·7c04··-.H8..-|-$.A.&|. | ||
00001560:· | 00001560:·b2c9·5c6e·e16b·85af·d510·4b77·147c·8d22··..\n.k....Kw.|." | ||
00001570:· | 00001570:·093e·13be·9224·1747·a772·11fc·e9d2·a321··.>...$.G.r.....! | ||
00001580:· | 00001580:·f82e·8c90·c2d7·81a3·f081·38ea·71c5·4a0e··..........8.q.J. | ||
00001590:· | 00001590:·7c1c·f89b·09bf·8819·52a2·b4c0·5fc2·38fc··|.......R..._.8. | ||
000015a0:· | 000015a0:·43ea·9550·bf89·4881·9f47·9a73·9325·49a8··C..P..H..G.s.%I. | ||
000015b0:· | 000015b0:·f03d·e27b·6588·a55b·88af·4fdc·9b04·6b76··.=.{e..[..O...kv | ||
000015c0:· | 000015c0:·259d·2e72·f849·a8d7·e1ef·9c91·5c1c·65ca··%..r.I......\.e. | ||
000015d0:· | 000015d0:·35fc·a923·7588·e33f·c2f8·2afe·4e42·bd10··5..#u..?..*.NB.. | ||
000015e0:· | 000015e0:·93f2·0f23·d43b·ca41·fd98·fa0e·1a35·1a20··...#.;.A.....5.· | ||
000015f0:· | 000015f0:·801c·4ef8·b6c0·d7ca·104b·3722·f51a·807b··..N......K7"...{ | ||
00001600:· | 00001600:·994d·6872·b9c5·543e·9974·50cf·47fd·0e47··.Mhr..T>.tP.G..G | ||
00001610:·2 | 00001610:·2e8e·ea6c·503f·c513·c40c·eaf5·3012·a4fe··...lP?......0... | ||
00001620:· | 00001620:·8417·d44f·17ad·b0c4·229b·a0be·04f5·9b8f··...O...."....... | ||
00001630:· | 00001630:·7a45·22a4·4091·473d·1e38·ea91·eac1·80d0··zE".@.G=.8...... | ||
00001640:· | 00001640:·a0a8·14f4·e16b·c3b7·4a1d·f5da·c4bd·5959··.....k..J.....YY | ||
00001650:· | 00001650:·c838·eabf·d443·60e4·e2a8·10d9·01f5·53af··.8...C`.......S. | ||
00001660:· | 00001660:·1f16·50ef·f4a1·555f·868d·7a05·121d·503b··..P...U_..z...P; | ||
00001670:· | 00001670:·19f5·63d4·ef2f·f588·be5c·2cc3·798b·7aaf··..c../...\,.y.z. | ||
00001680:· | 00001680:·28ea·69a8·0fa2·7e1f·d212·2909·e832·c9a2··(.i...~...)..2.. | ||
00001690:·d | 00001690:·d58d·6647·3852·ef22·f552·1962·e9be·52af··..fG8R.".R.b..R. | ||
000016a0:· | 000016a0:·8bf7·7625·bb58·4851·3fa5·7e4a·918b·a331··..v%.XHQ?.~J...1 | ||
000016b0:· | 000016b0:·6427·eaa7·b987·25ea·81a8·cf7e·a439·2b51··d'....%....~.9+Q | ||
000016c0:· | 000016c0:·9f44·fd9e·526f·8888·a244·bbd5·4370·9b67··.D..Ro...D..Cp.g | ||
000016d0:· | 000016d0:·9af3·517d·86a1·fea7·de85·facd·c300·8678··..Q}...........x | ||
000016e0:· | 000016e0:·884e·33a1·1ad4·3b55·ef94·1aea·35d1·eaa9··.N3...;U....5... | ||
000016f0:· | 000016f0:·84c1·a4be·85fa·26f5·3b67·2217·474b·c82b··......&.;g".GK.+ | ||
00001700:· | 00001700:·d44f·7356·a1de·a8b2·ea67·ea73·6a21·13ea··.OsV.....g.sj!.. | ||
00001710:· | 00001710:·f348·7376·a105·a88a·56cf·d4b7·79a6·9985··.Hsv....V...y... | ||
00001720:· | 00001720:·3fea·1d41·bd52·8658·ba81·eaf5·f0de·30a8··?..A.R.X......0. | ||
00001730:· | 00001730:·5757·b285·16a2·dd3a·afea·6daa·11b3·379a··WW.....:..m...7. | ||
00001740:· | 00001740:·1d52·4da5·5ad5·7790·8f8f·6617·2104·f5ea··.RM.Z.w...f.!... | ||
00001750:· | 00001750:·516f·14f5·7a4a·e95e·a80a·47b3·2311·c1ec··Qo..zJ.^..G.#... | ||
00001760:· | 00001760:·cfd9·c9cc·1e3d·62f6·218e·66b7·d3e6·9cf3··.....=b.!.f..... | ||
00001770:· | 00001770:·a8b7·02f5·4219·62e9·1662·762d·25bc·17ba··....B.b..bv-%... | ||
00001780:· | 00001780:·4cb2·d86d·a66d·b6ba·389a·751c·f5b2·51af··L..m.m..8.u...Q. | ||
00001790:· | 00001790:·9321·966e·42b3·eb20·4ef7·5641·9355·4e5a··.!.nB..·N.VA.UNZ | ||
000017a0:· | 000017a0:·4409·3db0·756e·337b·4b86·8d9e·d9c9·5870··D.=.un3{K.....Xp | ||
000017b0:· | 000017b0:·409a·9ccf·94c9·60f6·e8ec·ed54·23b0·25b9··@.....`....T#.%. | ||
000017c0:· | 000017c0:·a2d5·18cc·9e67·dae6·3673·307b·0eb3·67f6··.....g..6s0{..g. | ||
000017d0:· | 000017d0:·3dc1·ecba·8e18·9b59·129d·4448·9bd9·0940··=......Y..DH...@ | ||
000017e0:· | 000017e0:·e137·83d9·7509·bf59·2a05·a48a·b695·3620··.7..u..Y*.....6· | ||
000017f0:· | 000017f0:·d5cf·d9db·3cd2·36b7·c17b·975a·4926·4b6f··....<.6..{.ZI&Ko | ||
00001800:· | 00001800:·66d7·5fa0·4f31·b393·0066·f62d·5e41·d664··f._.O1...f.-^A.d | ||
00001810:· | 00001810:·918e·f09c·fdc4·ec93·ee75·b347·fd58·a968··.........u.G.X.h | ||
00001820:· | 00001820:·5b69·9e6a·9dbb·80a9·378b·7aab·8658·baa1··[i.j....7.z..X.. | ||
00001830:· | 00001830:·b3eb·28e0·bd5b·922b·9466·dfc7·ac9b·fd98··..(..[.+.f...... | ||
00001840:· | 00001840:·6737·86b3·efa8·2135·7bce·5103·6a76·fd34··g7....!5{.Q.jv.4 | ||
00001850:· | 00001850:·8331·6b9a·dd09·37bb·8b59·8cd9·3313·d3ec··.1k...7..Y..3... | ||
00001860:·9 | 00001860:·9bc5·ec7a·c58c·289c·3d4f·5d1c·cdc7·d973··...z..(.=O]....s | ||
00001870:· | 00001870:·3ece·7e9c·3d67·ae1e·eaed·a1de·254f·cfa4··>.~.=g......%O.. | ||
00001880:·3c | 00001880:·f3cb·b854·4299·5f4e·c9e5·15f2·c9a5·e9bc··...TB._N........ | ||
00001890:· | 00001890:·323a·9b5a·c6ac·e4d3·89d1·454d·7abf·751e··2:.Z......EMz.u. | ||
000018a0:· | 000018a0:·ce3e·43cf·ef5e·28b3·19b5·a409·e92c·05d5··.>C..^(......,.. | ||
000018b0:· | 000018b0:·02cf·6f8e·aacd·7cf7·7a35·a155·4bba·3603··..o...|.z5.UK.6. | ||
000018c0:· | 000018c0:·a018·c523·b8b3·903d·e9be·ce7d·949d·ad38··...#...=...}...8 | ||
000018d0:· | 000018d0:·a1de·a07a·952c·71af·81f4·ee5d·2aa1·62f7··...z.,q....]*.b. | ||
000018e0:· | 000018e0:·bb88·8f19·d0bd·9f7b·bd35·086e·ee97·e873··.......{.5.n...s | ||
000018f0:· | 000018f0:·7fd5·c27d·8684·049f·7bcd·41de·19cf·7d11··...}....{.A...}. | ||
00001900:· | 00001900:·1bdc·b739·cf7d·6e14·bddf·76ee·3506·f7ba··...9.}n...v.5... | ||
00001910:· | 00001910:·cd0b·b4b9·cf40·2e8e·e615·ee73·5ee1·7e85··.....@.....s^.~. | ||
00001920:·b | 00001920:·fb9c·7f33·f5ce·d48b·6488·a5db·c86c·2a99··...3....d....l*. | ||
00001930:· | 00001930:·4e8c·326c·18ab·99c5·a4b7·ce6e·ee1f·8d45··N.2l.......n...E | ||
00001940:· | 00001940:·c0bb·d799·8f46·cc16·49f0·9b81·88b9·6f40··.....F..I.....o@ | ||
00001950:·a | 00001950:·aadb·ddbd·4b26·150b·4d48·d301·9223·b8d7··....K&..MH...#.. | ||
00001960:· | 00001960:·62ee·f303·f739·f340·a8cc·bd96·7375·04a2··b....9.@....su.. | ||
00001970:·7 | 00001970:·73de·6196·c331·e77c·7134·e79c·af3a·8310··s.a..1.|q4...:.. | ||
00001980:· | 00001980:·2d04·488e·e057·ceef·d73d·0038·9ae7·fc86··-.H..W...=.8.... | ||
00001990:· | 00001990:·b96f·5b29·5245·3bd5·3aff·d0c3·ecce·30bb··.o[)RE;.:.....0. | ||
000019a0:· | 000019a0:·4786·58ba·c1ee·f551·772f·b3a9·647e·b588··G.X....Qw/..d~.. | ||
000019b0:· | 000019b0:·ca62·c864·ac3e·4ab0·b510·1f33·9449·c542··.b.d.>J....3.I.B | ||
000019c0:· | 000019c0:·acca·8558·9b85·8599·d482·845a·8565·2193··...X.......Z.e!. | ||
000019d0:· | 000019d0:·ce25·d22a·6ac7·d813·2dab·e4f2·2bab·d965··.%.*j...-...+..e | ||
000019e0:· | 000019e0:·9504·533e·9d5f·5849·a755·5692·a9d4·4a66··..S>._XI.UV...Jf | ||
000019f0:· | 000019f0:·319d·ec18·3b22·c5d9·743a·934c·6353·569a··1...;"..t:.LcSV. | ||
00001a00:· | 00001a00:·4aab·aca4·16ac·e6f2·caea·1956·f534·d6a3··J..........V.4.. | ||
00001a10:· | 00001a10:·0a97·e652·cb99·046b·5a69·c142·42ab·9ec6··...R...kZi.BB... | ||
00001a20:· | 00001a20:·7038·0973·36bb·925d·565a·4d2b·e857·12a7··p8.s6..]VZM+.W.. | ||
00001a30:· | 00001a30:·31a7·2859·ccaf·a696·15b4·8984·692c·c5bd··1.(Y........i,.. | ||
Max diff block lines reached; -1/138075 bytes (-0.00%) of diff not shown. |
Offset 61, 252 lines modified | Offset 61, 251 lines modified | ||
000003c0:·089c·7da0·a026·5374·646c·6962·9030·6a82··..}..&Stdlib.0j. | 000003c0:·089c·7da0·a026·5374·646c·6962·9030·6a82··..}..&Stdlib.0j. | ||
000003d0:·e835·54ad·797b·37cc·bdfb·6821·c2b7·a0a0··.5T.y{7...h!.... | 000003d0:·e835·54ad·797b·37cc·bdfb·6821·c2b7·a0a0··.5T.y{7...h!.... | ||
000003e0:·3843·616d·6c69·6e74·6572·6e61·6c46·6f72··8CamlinternalFor | 000003e0:·3843·616d·6c69·6e74·6572·6e61·6c46·6f72··8CamlinternalFor | ||
000003f0:·6d61·7442·6173·6963·7390·30aa·550b·dab5··matBasics.0.U... | 000003f0:·6d61·7442·6173·6963·7390·30aa·550b·dab5··matBasics.0.U... | ||
00000400:·21d6·0e76·9a9a·d43a·677e·6540·8495·a6be··!..v...:g~e@.... | 00000400:·21d6·0e76·9a9a·d43a·677e·6540·8495·a6be··!..v...:g~e@.... | ||
00000410:·0000·0004·0000·0002·0000·0005·0000·0005··................ | 00000410:·0000·0004·0000·0002·0000·0005·0000·0005··................ | ||
00000420:·a090·4040·4361·6d6c·3139·3939·5430·3335··..@@Caml1999T035 | 00000420:·a090·4040·4361·6d6c·3139·3939·5430·3335··..@@Caml1999T035 | ||
00000430:·8495·a6bd·0f9e·3 | 00000430:·8495·a6bd·0f9e·31bc·1b89·0ba7·2ca4·5e28··......1.....,.^( | ||
00000440:·b52f·fd00·58 | 00000440:·b52f·fd00·5845·7900·1ad4·982d·4c20·20d6··./..XEy....-L··. | ||
00000450:·7452·ea97·0605·2b45·8389·a54c·3753·e585··tR....+E...L7S.. | |||
00000460:·6372·d6a0·f23c·7c64·e948·8151·8e8f·4dde··cr...<|d.H.Q..M. | |||
00000470:·de44·7671·469f·246d·b6fd·c10a·47f9·cfc3··.DvqF.$m....G... | |||
00000480:·9861·310b·ef45·ebd4·4096·f4ff·7f50·841d··.a1..E..@....P.. | |||
00000490:·affc·8ad6·4f72·af6c·01be·02cb·02a2·02f5··....Or.l........ | |||
000004a0:·bb8f·5a37·195a·9535·9d49·d316·9adb·1696··..Z7.Z.5.I...... | |||
000004b0:·596b·f136·869a·0cb3·29e6·b299·1be2·e96c··Yk.6....)......l | |||
000004c0:·a069·c73e·6c01·369d·61ae·977e·7634·b2ac··.i.>l.6.a..~v4.. | |||
000004d0:·f126·a11d·4afb·a2b3·94c8·43ab·9a98·cd52··.&..J.....C....R | |||
000004e0:·0c91·8c78·4eb6·3097·bada·c685·798a·3c4d··...xN.0.....y.<M | |||
000004f0:·dd98·cdb0·9635·69cb·35fd·64c4·9bb2·c5dc··.....5i.5.d..... | |||
00000500:·a699·8778·485e·3619·d6b2·d4b8·4b5a·785a··...xH^6.....KZxZ | |||
00000510:·35c1·7810·74a1·daa5·cdcc·533b·941a·45de··5.x.t.....S;..E. | |||
00000520:·04e3·2979·b232·372e·e342·db0e·b98e·e9c5··..)y.27..B...... | |||
00000530:·3ba2·a5a6·75db·16f2·6d65·88b7·40fd·900d··;...u...me..@... | |||
00000540:·dbd3·b07d·d773·ba8d·5cac·f2e2·0581·e23a··...}.s..\......: | |||
00000550:·e374·51a6·18d6·c852·9cd2·4b32·5e00·f5d3··.tQ....R..K2^... | |||
00000560:·b01d·c573·6c96·2745·7860·fd0a·7249·da42··...sl.'Ex`..rI.B | |||
00000570:·db0e·6b5a·e908·cf8e·3a16·c573·2c97·6d66··..kZ....:..s,.mf | |||
00000580:·0c42·2b1a·3945·26c9·7864·38b1·4756·9b99··.B+.9E&.xd8.GV.. | |||
00000590:·7331·1796·a299·3959·867a·87da·14a9·6025··s1....9Y.z....`% | |||
000005a0:·4e1c·b704·3ded·4776·86f1·1636·6cc7·62a4··N...=.Gv...6l.b. | |||
000005b0:·58b1·eb75·1473·b168·eba7·d5ea·6141·3675··X..u.s.h....aA6u | |||
000005c0:·2529·da42·6ee6·f39c·c178·5ec0·1987·8cf8··%).Bn....x^..... | |||
000005d0:·3ce1·a4d6·01f1·b440·3a33·b7a2·05f1·b028··<......@:3.....( | |||
000005e0:·88d2·a4c9·4f21·5e11·4f20·613b·1a95·71bb··....O!^.O·a;..q. | |||
000005f0:·0988·97d5·dbd8·b2de·5680·a0a8·e84d·f2dc··........V....M.. | |||
00000600:·16e2·0951·856b·324f·915c·d443·3c18·30ce··...Q.k2O.\.C<.0. | |||
00000610:·c1ee·9cb0·0cb6·bf60·5135·bd2e·83ed·6836··.......`Q5....h6 | |||
00000620:·32f2·e165·f532·352f·5c7c·7859·ddcc·0c37··2..e.25/\|xY...7 | |||
00000630:·4de1·2759·02f1·54d8·32c3·58ae·f0d0·0a03··M.'Y..T.2.X..... | |||
00000640:·b114·e299·c054·e4c0·0856·1a50·c235·19c4··.....T...V.P.5.. | |||
00000650:·fbc0·eef0·6cc6·35f9·c3e3·c0ee·306e·22e2··....l.5.....0n". | |||
00000660:·8549·e2e2·2e6d·413c·2abb·c318·8bb9·f9a8··.I...mA<*....... | |||
00000670:·33f9·a9f7·18ea·4d9e·3af3·aabc·8447·1ef5··3.....M.:....G.. | |||
00000680:·a38e·b774·ddf1·cc89·3dc2·145c·59d2·9be4··...t....=..\Y... | |||
00000690:·a24e·935c·ef11·09ef·cb0c·3345·b1d9·f20f··.N.\......3E.... | |||
000006a0:·af8b·dd61·0c45·57e5·1f9e·1627·f6c8·146f··...a.EW....'...o | |||
000006b0:·2310·0f8a·dde1·193e·b2b8·8996·7526·07e2··#......>....u&.. | |||
000006c0:·65f5·2a76·878f·2cc6·a898·cf52·b405·f1b2··e.*v..,....R.... | |||
000006d0:·ba19·8c95·cabd·6940·3c23·bbc3·18cf·906c··......i@<#.....l | |||
000006e0:·1e2d·8cc3·acb7·0e85·3ae6·a0e3·1946·67b8··.-......:....Fg. | |||
000006f0:·0a6e·c589·e33f·8cf6·ba14·2bd1·34c5·201e··.n...?....+.4.·. | |||
00000700:·beba·4a93·2687·1eb0·108b·716f·2921·c0e2··..J.&.....qo)!.. | |||
00000710:·19c6·1857·7b85·31c6·3e2c·9714·638c·f10c··...W{.1.>,..c... | |||
00000720:·a318·b720·68b5·7a60·4cba·6cef·8bad·5c6c··...·h.z`L.l...\l | |||
00000730:·6d22·4b1c·6c8c·d1c8·7294·f5d2·1edb·67ae··m"K.l...r.....g. | |||
00000740:·5a47·32e4·4357·ad23·ad56·8f3e·2b93·f674··ZG2.CW.#.V.>+..t | |||
00000750:·5713·b379·7342·2ad2·426a·b57a·0418·7c27··W..ysB*.Bj.z..|' | |||
00000760:·e0a7·330c·04fe·18df·bb01·8789·185c·1881··..3..........\.. | |||
00000770:·ff00·5895·b9ae·4a16·51ec·d426·766a·cd65··..X...J.Q..&vj.e | |||
00000780:·7b29·0cfc·8e42·ad52·e32e·c31b·27a9·8682··{)...B.R....'... | |||
00000790:·c06f·e37b·21f0·538c·9f54·7b55·045f·f0b1··.o.{!.S..T{U._.. | |||
000007a0:·8a82·5800·fc0a·f680·6a10·000f·007f·0898··..X.....j....... | |||
000007b0:·c605·5e89·4200·f840·40a1·1d5a·460d·16c6··..^.B..@@..ZF... | |||
000007c0:·4947·74be·c72d·f0e1·f83e·6de3·fb04·e8f8··IGt..-...>m..... | |||
000007d0:·9e8e·0410·b4f1·3d02·3d15·1f11·d153·e7a3··......=.=....S.. | |||
000007e0:·3159·32c3·5c7c·0fc4·f74c·1cd0·53f1·d110··1Y2.\|...L..S... | |||
000007f0:·3d69·7c57·498e·ecd4·223b·3574·d95e·9af5··=i|WI...";5t.^.. | |||
00000800:·7d17·a1d6·ccc5·6c8e·425d·7cef·e67b·2f94··}.....l.B]|..{/. | |||
00000810:·aabd·3201·67f1·3d96·1243·7aac·f8be·f755··..2.g.=..Cz....U | |||
00000820:·f13d·15df·a76e·be17·f2c4·9b25·d06e·c512··.=...n.....%.n.. | |||
00000830:·df2b·81c3·f7f8·fba7·cf80·228e·4803·840a··.+........".H... | |||
00000840:·5f4d·f8ca·c565·7b69·fa7d·e7b5·664d·96e1··_M...e{i.}..fM.. | |||
00000850:·e5c9·e17b·a7ef·7548·aaf6·aa88·f73d·1653··...{..uH.....=.S | |||
00000860:·90fe·3d05·dfe3·0266·f83e·7f8f·7304·c0f0··..=....f.>..s... | |||
00000870:·fdd4·f752·619c·be07·d2c2·f723·7c9f·010b··...Ra......#|... | |||
00000880:·dfef·7ea0·5082·0829·dabb·10e1·fb10·7c74··..~.P..)......|t | |||
00000890:·2086·03dd·f7dc·b5a9·78ed·fbf1·fbd4·e9fb···.......x....... | |||
000008a0:·01b8·94d9·82ef·bd7c·57be·67fa·3e9d·6126··.......|W.g.>.a& | |||
000008b0:·df5f·51df·8cfa·a900·523e·51cb·57a8·af15··._Q.....R>Q.W... | |||
000008c0:·3435·f95a·f475·cbec·fb7e·9662·369b·7c3f··45.Z.u...~.b6.|? | |||
000008d0:·a7fe·03df·a718·2355·7b35·0717·7d8f·9515··......#U{5..}... | |||
000008e0:·4092·efe5·c051·bfe7·f5bd·1cf5·7102·3c43··@....Q......q.<C | |||
000008f0:·df03·f0fd·1d35·684e·fd1e·3d41·df1f·f0fd··.....5hN..=A.... | |||
00000900:·00df·b3e9·610c·f4fd·0f00·0c28·910d·f95e··....a......(...^ | |||
00000910:·c80e·1024·433a·973b·dfff·f7ad·8f08·035c··...$C:.;.......\ | |||
00000920:·933f·6817·6351·3558·36db·fe41·afb0·308e··.?h.cQ5X6..A..0. | |||
00000930:·a33e·1cf5·d339·f56d·0f1d·213e·d235·eaab··.>...9.m..!>.5.. | |||
00000940:·511f·2dd3·3991·3373·aba3·20b2·7e99·3238··Q.-.9.3s..·.~.28 | |||
00000950:·4efd·ac27·eaf3·ea13·7143·1801·7c5f·5b5f··N..'....qC..|_[_ | |||
00000960:·b5e0·8186·ad73·6ccd·e2b2·bd14·8bfa·ddac··.....sl......... | |||
00000970:·b526·66b3·088a·fa6b·ea47·71c4·447d·35f8··.&f....k.Gq.D}5. | |||
00000980:·4d7d·2c8c·9958·53df·4c12·f583·2843·ce9a··M},..XS.L...(C.. | |||
00000990:·fa65·bee2·a333·48d4·47d1·de98·9e48·04c5··.e...3H.G....H.. | |||
000009a0:·c258·4dfd·3464·ea9f·f549·a89f·7634·70b6··.XM.4d...I..v4p. | |||
000009b0:·c062·8dad·6a6c·8572·d95e·7aa6·7eff·516b··.b..jl.r.^z.~.Qk | |||
000009c0:·d695·e254·c875·390d·810c·f547·a83f·43fd··...T.u9....G.?C. | |||
000009d0:·14e3·59b5·5760·f00b·f5b1·c4d8·c042·7d10··..Y.W`.......B}. | |||
000009e0:·ea63·363d·8c77·f557·a89f·8e50·bf86·13ae··.c6=.w.W...P.... | |||
000009f0:·7440·3b8f·45d5·6061·fc41·7d31·f5d3·19fe··t@;.E.`a.A}1.... | |||
00000a00:·6179·ec10·7b85·69f8·aa41·7d35·3d8c·cf90··ay..{.i..A}5=... | |||
00000a10:·d9a0·3eda·89c8·fa65·d460·e12b·2cfc·82b6··..>....e.`.+,... | |||
00000a20:·158c·ad4e·2edb·4b79·f7f6·6ca1·9d6a·c04e··...N..Ky..l..j.N | |||
00000a30:·b5c0·657b·4e7c·75e2·ab17·aedb·1947·3a11··..e{N|u......G:. | |||
00000a40:·dd9e·5a3e·7546·2ece·2cc5·28f2·849d·564d··..Z>uF..,.(...VM | |||
00000a50:·f714·ef6d·d49d·f72c·451d·459e·f7e4·e28d··...m...,E.E..... | |||
00000a60:·5fd8·ad69·dd36·c56b·e65c·4e34·b35c·2e3c··_..i.6.k.\N4.\.< | |||
00000a70:·bde3·0a82·6c0d·b215·cbbe·a7de·241f·b5ce··....l.......$... | |||
00000a80:·76ad·4abd·6f3e·9f6e·921f·5be5·00eb·1597··v.J.o>.n..[..... | |||
00000a90:·ed9d·f9ea·99af·4e81·e172·49db·66ee·669c··......N..rI.f.f. | |||
00000aa0:·788a·b7cb·4991·ead6·724d·eb36·4deb·ae16··x...I...rM.6M... | |||
00000ab0:·2fd1·ede1·632e·f309·ab22·f5d3·bdb0·bdb9··/...c...."...... | |||
00000ac0:·d65d·abb2·1475·fc24·a546·1d3f·f925·ba3d··.]...u.$.F.?.%.= | |||
00000ad0:·27cf·5137·eb7d·cd7c·e35b·e75b·967b·61b9··'.Q7.}.|.[.[.{a. | |||
00000ae0:·a489·2529·4e89·f724·afc8·c5da·b591·57e7··..%)N..$......W. | |||
00000af0:·a97c·73ba·abb3·d4e6·5bdf·93bc·5933·dd0b··.|s.....[...Y3.. | |||
00000b00:·1b3a·2fd7·d9cc·361b·59bb·7a1b·b935·319b··.:/...6.Y.z..51. | |||
00000b10:·57bc·7adf·8b23·ba3d·b751·cc17·c9a6·72ba··W.z..#.=.Q....r. | |||
00000b20:·1716·a549·aa5d·96db·7692·17b7·790e·6775··...I.]..v...y.gu | |||
00000b30:·c2ce·1b27·a92e·d1ed·29cb·4c75·a5cc·4d75··...'....).Lu..Mu | |||
00000b40:·3327·7517·5cbe·f5dd·b57b·65b0·2432·58d1··3'u.\....{e.$2X. | |||
00000b50:·2d71·2212·d3b5·ed7b·ce6e·98da·6af5·f48e··-q"....{.n..j... | |||
00000b60:·cd68·f9aa·96af·2e65·19e0·ab03·7c35·ca50··.h.....e....|5.P | |||
00000b70:·c9ab·949a·ac28·212d·5111·e06b·536b·9b5a··.....(!-Q..kSk.Z | |||
00000b80:·a124·8135·0075·f3a9·f348·52b9·2359·d274··.$.5.u...HR.#Y.t | |||
00000b90:·576e·299a·5967·28d7·cce7·99a9·dc27·2b50··Wn).Yg(......'+P | |||
00000ba0:·d850·d54a·55eb·1397·eda5·b67d·4f9c·99f9··.P.JU......}O... | |||
Max diff block lines reached; -1/34234 bytes (-0.00%) of diff not shown. |
Offset 68, 364 lines modified | Offset 68, 364 lines modified | ||
00000430:·071a·ace2·089c·7da0·a026·5374·646c·6962··......}..&Stdlib | 00000430:·071a·ace2·089c·7da0·a026·5374·646c·6962··......}..&Stdlib | ||
00000440:·9030·6a82·e835·54ad·797b·37cc·bdfb·6821··.0j..5T.y{7...h! | 00000440:·9030·6a82·e835·54ad·797b·37cc·bdfb·6821··.0j..5T.y{7...h! | ||
00000450:·c2b7·a0a0·3843·616d·6c69·6e74·6572·6e61··....8Camlinterna | 00000450:·c2b7·a0a0·3843·616d·6c69·6e74·6572·6e61··....8Camlinterna | ||
00000460:·6c46·6f72·6d61·7442·6173·6963·7390·30aa··lFormatBasics.0. | 00000460:·6c46·6f72·6d61·7442·6173·6963·7390·30aa··lFormatBasics.0. | ||
00000470:·550b·dab5·21d6·0e76·9a9a·d43a·677e·6540··U...!..v...:g~e@ | 00000470:·550b·dab5·21d6·0e76·9a9a·d43a·677e·6540··U...!..v...:g~e@ | ||
00000480:·8495·a6be·0000·0004·0000·0002·0000·0005··................ | 00000480:·8495·a6be·0000·0004·0000·0002·0000·0005··................ | ||
00000490:·0000·0005·a090·4040·4361·6d6c·3139·3939··......@@Caml1999 | 00000490:·0000·0005·a090·4040·4361·6d6c·3139·3939··......@@Caml1999 | ||
000004a0:·5430·3335·8495·a6bd·0fac·3 | 000004a0:·5430·3335·8495·a6bd·0fac·30e8·238e·7ec1··T035......0.#.~. | ||
000004b0:· | 000004b0:·58bd·0528·b52f·fd00·583d·b100·7a25·d53d··X..(./..X=..z%.= | ||
000004c0:·5820·ce3a·6ec6·27de·cada·fb20·d25a·5d1b··X·.:n.'....·.Z]. | |||
000004d0:·5fcc·28e7·ffc5·babe·bbf0·9da1·a578·c66b··_.(..........x.k | |||
000004e0:·a5d8·6f33·1cc7·834b·f416·3e35·1e99·bc0f··..o3...K..>5.... | |||
000004f0:·85cc·142d·9ad8·b2df·c05d·7dcd·0eb0·3edd··...-.....]}...>. | |||
00000500:·511c·49e0·856d·7ab4·d0c3·9d10·2105·70cf··Q.I..mz.....!.p. | |||
00000510:·5ea6·3d9d·df52·c84a·1bd6·03bb·03af·0327··^.=..R.J.......' | |||
00000520:·1520·7020·1422·193a·fa42·4799·acea·edc4··.·p·.".:.BG..... | |||
00000530:·e1be·7350·eac5·b277·ee2d·a04f·713f·ef1d··..sP...w.-.Oq?.. | |||
00000540:·42ab·1377·29f7·2735·a698·01fd·1af4·17cc··B..w).'5........ | |||
00000550:·edde·37e8·dda0·3f5b·402f·050c·5c60·3ddd··..7...?[@/..\`=. | |||
00000560:·9b86·5e0d·25e8·6df4·5bd0·3b45·8102·7a2f··..^.%.m.[.;E..z/ | |||
00000570:·b77b·7dd8·2faa·e9e5·e93a·3ddd·1252·1de5··.{}./....:=..R.. | |||
00000580:·3a3a·b4aa·b773·04f4·bb03·4abd·58f6·5cd8··::...s....J.X.\. | |||
00000590:·2c30·cf27·b6a0·ff42·7f2f·14f4·63e8·4f0f··,0.'...B./..c.O. | |||
000005a0:·d033·a105·fd98·28be·20d1·c566·a3df·81de··.3....(.·..f.... | |||
000005b0:·09fa·7bdd·58c3·dc4e·f45e·9ef6·8582·fe8d··..{.X..N.^...... | |||
000005c0:·d3dc·1978·a13a·3394·4862·6fe1·815e·0567··...x.:3.Hbo..^.g | |||
000005d0:·70d4·0c8e·0a1d·41bf·8704·00f6·6571·e7fa··p.....A.....eq.. | |||
000005e0:·40bf·00fa·5384·7a2f·1693·fe7c·dd1f·b0d0··@...S.z/...|.... | |||
000005f0:·df7b·2f11·a7b6·5326·7ad3·cb2d·0826·7a12··.{/...S&z..-.&z. | |||
00000600:·aad3·4500·fdbd·3ed0·9731·770f·f45e·9ecc··..E...>..1w..^.. | |||
00000610:·d7bd·f7d2·ea74·efbd·66c0·dc7b·6f11·a7e6··.....t..f..{o... | |||
00000620:·eb9a·f792·11c3·5130·1c55·b2aa·b7b3·46bf··......Q0.U....F. | |||
00000630:·5f38·94ca·c0b0·acc9·925a·4e28·2028·148e··_8.......ZN(·(.. | |||
00000640:·fde2·72ee·1df5·7597·f868·d263·108f·a6a3··..r...u..h.c.... | |||
00000650:·5084·6922·1f4d·2636·c088·ad7c·daab·c13e··P.i".M&6...|...> | |||
00000660:·4c8a·9ff7·1383·2d4a·ccc3·220d·9667·1e56··L.....-J.."..g.V | |||
00000670:·0a4b·9206·62d2·83e1·318c·61d8·f824·069b··.K..b...1.a..$.. | |||
00000680:·d014·3293·24de·b115·31ca·a107·c356·c02c··..2.$...1....V., | |||
00000690:·1e79·658d·c865·1362·c352·1663·2456·ca9e··.ye..e.b.R.c$V.. | |||
000006a0:·15f0·d344·2e5b·9027·3532·cff0·cc8b·654f··...D.[.'52....eO | |||
000006b0:·d396·b46c·2e29·b091·9663·9ece·423b·364b··...l.)...c..B;6K | |||
000006c0:·efa9·a97b·8dba·9b6e·4e64·a0fe·94b4·6c20··...{...nNd....l· | |||
000006d0:·40d1·239e·d190·c8cf·8385·e2a7·3406·f9d8··@.#.........4... | |||
000006e0:·70e8·d7a8·dbbc·69d4·2845·52b0·a5e8·0b80··p.....i.(ER..... | |||
000006f0:·c530·e6c5·b207·1b81·80d8·68e0·4635·6f1a··.0........h.F5o. | |||
00000700:·b528·9318·07af·7614·2a85·447c·6c27·00aa··.(....v.*.D|l'.. | |||
00000710:·3775·24b1·d65f·9227·7e24·d6a1·e88d·d91b··7u$.._.'~$...... | |||
00000720:·c96f·6986·7dee·9bfa·ba77·8a9a·ba2f·9623··.oi.}....w.../.# | |||
00000730:·5f34·ddb6·79a9·5413·c503·85c2·4105·9334··_4..y.T.....A..4 | |||
00000740:·31fc·629e·2671·59be·5cb6·32d0·803b·3f72··1.b.&qY.\.2..;?r | |||
00000750:·8ae8·70a4·e9d8·c4f8·29b1·ae1d·f5b0·9161··..p.....)......a | |||
00000760:·8234·86a4·2e7d·d838·b0c5·1575·9b48·7896··.4...}.8...u.Hx. | |||
00000770:·8974·6c67·7616·313c·6621·1d28·49c6·1cea··.tlgv.1<f!.(I... | |||
00000780:·a4ec·c326·8512·3d86·5829·d4df·b863·13e2··...&..=.X)...c.. | |||
00000790:·de25·6a93·935b·44dd·5baa·e9e5·b68b·a8db··.%j..[D.[....... | |||
000007a0:·c431·c490·633b·b38f·8019·15e5·d8ce·6c23··.1..c;........l# | |||
000007b0:·5e97·0889·2e43·51c7·d634·e575·9b0c·69af··^....CQ..4.u..i. | |||
000007c0:·86c3·27fa·b039·6009·0b41·8010·1ac0·0a7a··..'..9`..A.....z | |||
000007d0:·0c7b·d816·509b·eeeb·a5c7·9087·2d01·b5e9··.{..P.......-... | |||
000007e0:·5e22·966d·0722·facb·62ac·870d·87da·746f··^".m."..b.....to | |||
000007f0:·1332·6b90·46ea·72cc·a037·e6b0·1cb1·66c2··.2k.F.r..7....f. | |||
00000800:·2dd8·c421·7bc8·be53·f6b8·ef0b·a80e·b94c··-..!{..S.......L | |||
00000810:·8682·c61c·ea8f·3686·7acc·208f·0d7c·dd25··......6.z.·..|.% | |||
00000820:·35c4·6298·87cd·ab4d·f71a·1999·300f·5b11··5.b....M....0.[. | |||
00000830:·501d·427e·3250·c776·a436·ddd7·7ddd·0be5··P.B~2P.v.6..}... | |||
00000840:·08d3·48ad·633b·b387·6a93·f9e1·52fc·623d··..H.c;..j...R.b= | |||
00000850:·6c67·b611·f702·8939·1fe9·d86e·6dba·f7de··lg.....9...nm... | |||
00000860:·d47b·efdd·9787·7d5f·d77c·5d25·1785·868d··.{....}_.|]%.... | |||
00000870:·73d7·bc6d·1401·5028·1c47·6a1f·497e·3d6c··s..m..P(.Gj.I~=l | |||
00000880:·d7c9·a94b·9724·9860·e28e·50ef·dda8·1550··...K.$.`..P....P | |||
00000890:·281c·3bea·dd51·efbd·3bea·8e7a·ef15·ab7a··(.;..Q..;..z...z | |||
000008a0:·3b82·a347·7014·4928·ce5c·4ce1·f804·ec39··;..Gp.I(.\L....9 | |||
000008b0:·0a45·d075·3bad·0e25·0e75·2886·9a66·6758··.E.u;..%.u(..fgX | |||
000008c0:·9735·22db·c215·1ba4·cbd6·72db·7b9b·2f00··.5".......r.{./. | |||
000008d0:·d41a·a0ee·f5f0·9847·cfc7·edd4·4c58·bbc4··.......G....LX.. | |||
000008e0:·d907·66d6·3e8b·38f7·d9c4·148e·4f7e·7aa0··..f.>.8.....O~z. | |||
000008f0:·7e50·281c·013f·ef45·42ab·9306·eb9f·84c8··~P(..?.EB....... | |||
00000900:·f0ea·87a8·d41b·d59f·44f5·2290·4281·0898··........D.".B... | |||
00000910:·3b68·49bd·502d·a1de·04dd·d78c·1154·4d20··;hI.P-.......TM· | |||
00000920:·7c60·4a51·9da2·61fd·0e81·d224·0f8b·471f··|`JQ..a....$..G. | |||
00000930:·ecc3·a487·c530·d663·427d·1bdd·59f5·847a··.....0.cB}..Y..z | |||
00000940:·0448·fd05·5281·d403·a9bf·1728·4541·48d1··.H..R......(EAH. | |||
00000950:·d8aa·decc·9c9a·39c5·d85a·9d47·5be2·0c5b··......9..Z.G[..[ | |||
00000960:·2a32·c262·182b·b258·7f23·d61f·688d·62b4··*2.b.+.X.#..h.b. | |||
00000970:·d262·318c·d922·0bf3·a0be·c815·a1fe·494d··.b1.."........IM | |||
00000980:·2706·08f5·6c74·6504·509f·aa1e·d4e7·0863··'...lte.P......c | |||
00000990:·834a·8aaf·aff5·671b·ddc1·a881·ece8·05dd··.J....g......... | |||
000009a0:·d574·6574·bf40·772a·ba9f·64d6·a022·e5c9··.tet.@w*..d..".. | |||
000009b0:·9114·2d92·a248·ab7a·3bd1·e8be·5794·3285··..-..H.z;...W.2. | |||
000009c0:·b118·adf4·b095·6f06·c44c·f729·ba9b·1184··......o..L.).... | |||
000009d0:·45f7·2e63·747f·faf2·0599·ee50·6011·022f··E..ct......P`../ | |||
000009e0:·ba6f·2b2e·08ba·77d1·fd9c·a2bb·175a·84e1··.o+...w......Z.. | |||
000009f0:·c5be·6494·d9f2·44f7·2f3d·743f·d2dd·0381··..d...D./=t?.... | |||
00000a00:·135b·6411·068a·d32e·a720·12dd·3708·94ea··.[d......·..7... | |||
00000a10:·3214·bdac·3d99·fe92·14d0·9d4a·7713·4bf7··2...=......Jw.K. | |||
00000a20:·f3de·1a68·75ba·5aba·dfab·a5bb·96ee·f726··...hu.Z........& | |||
00000a30:·60e8·74e8·d400·ab7a·3bcb·d0c6·6c2c·b4b1··`.t....z;...l,.. | |||
00000a40:·1e32·84d9·192c·19c2·6ccc·da16·53f7·1e0e··.2...,..l...S... | |||
00000a50:·d0fd·694a·173a·742f·e2a2·d65d·64ea·beb4··..iJ.:t/...]d... | |||
00000a60:·0579·2e61·a57b·95ee·2795·ee1f·c048·ec5b··.y.a.{..'....H.[ | |||
00000a70:·80ee·537e·74a7·dd77·741e·7032·4410·10f0··..S~t..wt.p2D... | |||
00000a80:·e1b4·87d3·0f49·f7bd·4383·9824·33c8·b3d3··.....I..C..$3... | |||
00000a90:·5d47·f716·3a56·6724·48f7·1ba4·0bd2·3d48··]G..:Vg$H.....=H | |||
00000aa0:·f77b·794e·d554·6ab4·aab7·2b95·5ea9·b4c8··.{yN.Tj...+.^... | |||
00000ab0:·a545·5a89·c959·2663·1666·7329·7e16·931f··.EZ..Y&c.fs)~... | |||
00000ac0:·d218·c23e·2cda·daf8·7265·6d45·4cb6·8e68··...>,...remEL..h | |||
00000ad0:·6539·9234·8d49·6b94·648b·acb5·f666·c432··e9.4.Ik.d....f.2 | |||
00000ae0:·6d89·4419·d2b1·3532·6b10·9321·ccea·1193··m.D...52k..!.... | |||
00000af0:·240d·b458·a64b·4d7e·bab4·4649·45b1·20db··$..X.KM~..FIE.·. | |||
00000b00:·84ed·deba·3dba·3f75·a005·0add·3de8·6cf7··....=.?u....=.l. | |||
00000b10:·13ba·9f3a·ba8f·1141·a886·1cdd·3be8·48c0··...:...A....;.H. | |||
00000b20:·5d0a·ee5d·8801·4047·4408·0154·386d·9d52··]..]..@GD..T8m.R | |||
00000b30:·59d5·dbc9·75df·3a28·4d0a·495d·b2ce·70e7··Y...u.:(M.I]..p. | |||
00000b40:·82bb·1a68·8ad0·ea94·260d·f734·dcef·6dc2··...h....&..4..m. | |||
00000b50:·aa94·55a9·1499·fe92·ec67·c7d0·e6f4·b872··..U......g.....r | |||
00000b60:·acf8·853a·1c43·2b8a·9f6d·6279·a842·eee7··...:.C+..mby.B.. | |||
00000b70:·be62·7027·ba66·b83f·8dc9·620c·ee1e·1083··.bp'.f.?..b..... | |||
00000b80:·7b19·ee27·17dc·b108·41ad·d482·fb18·27b8··{..'....A.....'. | |||
00000b90:·ffc0·9d88·0e84·c961·2c4a·a544·954e·59d5··.......a,J.D.NY. | |||
00000ba0:·db39·05f7·fd01·a53a·c33c·ac94·6798·ec39··.9.....:.<..g..9 | |||
00000bb0:·b90f·c1dd·0988·5627·1a74·b709·ee4f·1308··......V'.t...O.. | |||
00000bc0:·8301·ee15·4882·3b12·dccf·21b8·83e1·f223··....H.;...!....# | |||
00000bd0:·8702·dc27·00e3·3e03·f726·b726·1356·3ab8··...'..>..&.&.V:. | |||
00000be0:·4a69·d051·28ab·7a3b·19c0·7d0b·8052·3cfb··Ji.Q(.z;..}..R<. | |||
00000bf0:·466f·cce3·07ae·80b9·33e1·5e72·afc2·3d46··Fo......3.^r..=F | |||
00000c00:·8456·a7ab·b9df·abb9·6bee·f75a·913b·9a3b··.V......k..Z.;.; | |||
00000c10:·4ab4·aab7·d3ee·9418·fc92·ca58·684b·ac33··J..........XhK.3 | |||
Max diff block lines reached; -1/49748 bytes (-0.00%) of diff not shown. |
Offset 87, 434 lines modified | Offset 87, 433 lines modified | ||
00000560:·a0a0·2653·7464·6c69·6290·306a·82e8·3554··..&Stdlib.0j..5T | 00000560:·a0a0·2653·7464·6c69·6290·306a·82e8·3554··..&Stdlib.0j..5T | ||
00000570:·ad79·7b37·ccbd·fb68·21c2·b7a0·a038·4361··.y{7...h!....8Ca | 00000570:·ad79·7b37·ccbd·fb68·21c2·b7a0·a038·4361··.y{7...h!....8Ca | ||
00000580:·6d6c·696e·7465·726e·616c·466f·726d·6174··mlinternalFormat | 00000580:·6d6c·696e·7465·726e·616c·466f·726d·6174··mlinternalFormat | ||
00000590:·4261·7369·6373·9030·aa55·0bda·b521·d60e··Basics.0.U...!.. | 00000590:·4261·7369·6373·9030·aa55·0bda·b521·d60e··Basics.0.U...!.. | ||
000005a0:·769a·9ad4·3a67·7e65·4084·95a6·be00·0000··v...:g~e@....... | 000005a0:·769a·9ad4·3a67·7e65·4084·95a6·be00·0000··v...:g~e@....... | ||
000005b0:·0400·0000·0200·0000·0500·0000·05a0·9040··...............@ | 000005b0:·0400·0000·0200·0000·0500·0000·05a0·9040··...............@ | Diff chunk too large, falling back to line-by-line diff (426 lines added, 427 lines removed) | |
000005c0:·4043·616d·6c31·3939·3954·3033·3584·95a6··@Caml1999T035... | 000005c0:·4043·616d·6c31·3939·3954·3033·3584·95a6··@Caml1999T035... | ||
000005d0:·bd10·b5 | 000005d0:·bd10·b50c·818b·6c94·79d9·47d4·1528·b52f··......l.y.G..(./ | ||
000005e0:·fd00·58 | 000005e0:·fd00·581d·d400·9a49·f145·5810·3029·6bd3··..X....I.EX.0)k. | ||
000005f0:· | 000005f0:·0154·bd72·b1a6·c2ec·fec3·3711·cf38·fd12··.T.r......7..8.. | ||
00000600:· | 00000600:·9a3d·da3c·0e6f·7d4c·10b1·a661·6728·7142··.=.<.o}L...ag(qB | ||
00000610:· | 00000610:·8b03·d5c5·a78c·d29c·a63c·650e·6a2d·36f0··.........<e.j-6. | ||
00000620:·e | 00000620:·e966·6742·0181·41a8·5011·8abc·e24a·c299··.fgB..A.P....J.. | ||
00000630:· | 00000630:·41eb·6820·496a·58f8·251a·8013·be75·23b9··A.h·IjX.%....u#. | ||
00000640:· | 00000640:·a4b7·0d5f·042f·0446·04bd·817b·b6bb·bf88··..._./.F...{.... | ||
00000650:· | 00000650:·c005·2cf0·c23d·05ee·c99d·358b·7b13·28e1··..,..=....5.{.(. | ||
00000660:· | 00000660:·0413·4b74·4f71·5f75·cfbe·708f·c47d·b712··..KtOq_u..p..}.. | ||
00000670:· | 00000670:·6dd4·d3ec·5973·9b7b·aa5d·9eda·e56e·09a8··m...Ys.{.]...n.. | ||
00000680:· | 00000680:·b997·bd17·8a0b·b7ec·9afb·ccb2·79cd·6e85··............y.n. | ||
00000690:· | 00000690:·75a7·b9ef·3e73·5fc3·bd0f·0deb·a1ed·1c0f··u...>s_......... | ||
000006a0:· | 000006a0:·bf9d·a485·fb1a·dabc·43fe·8561·5d8f·8072··........C..a]..r | ||
000006b0:· | 000006b0:·de99·69e1·be61·4972·3703·7880·75f7·c5ba··..i..aIr7.x.u... | ||
000006c0:·1fee·b | 000006c0:·6e1f·ee7d·b8ef·2603·cebd·70ee·4d72·e196··n..}..&...p.Mr.. | ||
000006d0:· | 000006d0:·1d8b·ba94·2990·2e65·3ad2·d031·95d5·461a··....)..e:..1..F. | ||
000006e0:· | 000006e0:·3a96·e349·8e3e·ac16·96a1·b3a0·cce6·7e73··:..I.>........~s | ||
000006f0:·2 | 000006f0:·2f06·ee8d·e2c2·2d9a·6e92·d1b4·f94d·e217··/.....-.n....M.. | ||
00000700:·5 | 00000700:·77bf·52b5·35b4·6b0e·bfb8·fb1d·58d7·3afc··w.R.5.k.....X.:. | ||
00000710:·b | 00000710:·b270·bfae·2db9·b3ee·72ee·207a·b817·cdbd··.p..-...r.·z.... | ||
00000720:· | 00000720:·4f5c·b865·bddc·6718·06f7·9ea8·cd86·ca80··O\.e..g......... | ||
00000730:· | 00000730:·74ab·1eab·9598·613b·b019·0786·b57a·22f5··t.....a;.....z". | ||
00000740:· | 00000740:·4c39·99b5·99aa·0434·b5ce·b69c·2517·528d··L9.....4....%.R. | ||
00000750:· | 00000750:·49cd·c8f2·5623·6347·46b9·2bb4·58ac·f462··I...V#cGF.+.X..b | ||
00000760:· | 00000760:·a637·9cac·bcc5·66e5·69d2·cad9·69c5·2897··.7....f.i...i.(. | ||
00000770:· | 00000770:·94e5·86de·6e65·506e·4913·6ac6·6625·1719··....nePnI.j.f%.. | ||
00000780:· | 00000780:·5a73·8aa5·524a·af9c·9113·bea0·35da·adf4··Zs..RJ......5... | ||
00000790:· | 00000790:·82c6·b8c8·4855·e995·1362·45ea·86da·4a5b··....HU...bE...J[ | ||
000007a0:· | 000007a0:·8c86·c654·dc94·a1dc·9009·b313·87d2·622a··...T..........b* | ||
000007b0:· | 000007b0:·2a25·28f7·c17d·cc0b·9cb7·c079·aa5d·8292··*%(..}.....y.].. | ||
000007c0:· | 000007c0:·a964·d250·0ec7·15f5·2c6d·b8a7·1b19·9b99··.d.P....,m...... | ||
000007d0:· | 000007d0:·35d2·cb89·f423·77c1·fd16·38af·4d02·8c85··5....#w...8.M... | ||
000007e0:· | 000007e0:·0908·b9df·6b29·6b26·2d46·4363·b373·498f··....k)k&-FCc.sI. | ||
000007f0:· | 000007f0:·9c19·63e0·b549·8099·d05b·a942·4cca·c9f4··..c..I...[.BL... | ||
00000800:· | 00000800:·622a·f991·b342·096e·e1f3·56aa·2a19·15ab··b*...B.n..V.*... | ||
00000810:· | 00000810:·91b7·5235·6bb1·138d·9d37·f28b·91cc·e616··..R5k....7...... | ||
00000820:· | 00000820:·8675·67f1·02e7·86e1·c99b·a936·afdd·84d7··.ug........6.... | ||
00000830:· | 00000830:·55cf·6a25·a250·de70·3593·a4c5·d45b·99a6··U.j%.P.p5....[.. | ||
00000840:· | 00000840:·b057·2e8a·2a59·100f·1e26·aa79·e27c·721c··.W..*Y...&.y.|r. | ||
00000850:· | 00000850:·384a·4b55·cae9·2707·a7ca·d369·ded4·1428··8JKU..'....i...( | ||
00000860:· | 00000860:·2781·0a24·81f3·fa54·da50·259f·5c55·5e82··'..$...T.P%.\U^. | ||
00000870:· | 00000870:·569e·a814·9f2b·514e·d454·a350·a0dc·9a24··V....+QN.T.P...$ | ||
00000880:· | 00000880:·f534·4b2f·a64a·9e41·b91b·bad3·e0a9·a546··.4K/.J.A.......F | ||
00000890:· | 00000890:·83f3·19bc·52b5·190d·ce6b·6964·c493·abca··....R....kid.... | ||
000008a0:· | 000008a0:·b959·1313·4fae·2af3·006b·2528·6a6a·d67c··.Y..O.*..k%(jj.| | ||
000008b0:· | 000008b0:·7265·b2c0·ba04·2a6a·4c4a·05b2·0694·9361··re....*jLJ.....a | ||
000008c0:· | 000008c0:·4a08·430c·20a5·2888·7a9a·3f39·01e0·a986··J.C.·.(.z.?9.... | ||
000008d0:· | 000008d0:·c1d4·d3ec·c905·004f·752b·09e5·c428·5149··.......Ou+...(QI | ||
000008e0:· | 000008e0:·b446·fbc9·49e1·a9ee·126e·a82a·c3dd·d4f4··.F..I....n.*.... | ||
000008f0:·4 | 000008f0:·4465·b113·35d3·b354·c194·4272·5c92·e424··De..5..T..Br\..$ | ||
00000900:· | 00000900:·b9b3·e433·374c·094e·d255·a820·e14e·533d··...37L.N.U.·.NS= | ||
00000910:· | 00000910:·5199·8f9c·13ac·a738·a1d1·ca9e·1c0a·78aa··Q......8......x. | ||
00000920:·b | 00000920:·bbc9·09a6·ecc9·6951·8293·dc48·2899·4f0e··......iQ...H(.O. | ||
00000930:· | 00000930:·094f·35ac·61dd·569c·4adc·4df5·c955·e529··.O5.a.V.J.M..U.) | ||
00000940:· | 00000940:·786a·25cb·b446·d27e·7255·9987·ee25·3514··xj%..F.~rU...%5. | ||
00000950:· | 00000950:·75f2·c921·c153·dddd·c2dd·ddb9·59c8·0deb··u..!.S......Y... | ||
00000960:· | 00000960:·15d6·49bd·9a02·8c7b·bdb6·7935·c26a·253e··..I....{..y5.j%> | ||
00000970:· | 00000970:·9122·6f37·f227·d73a·9d11·4634·2088·d681··."o7.'.:..F4·... | ||
00000980:· | 00000980:·bbf3·2ac8·6a25·e2c0·8d03·7737·0e8c·0377··..*.j%....w7...w | ||
00000990:· | 00000990:·2fe0·5e33·f73a·71e1·f6ca·eaca·2a89·59b3··/.^3.:q.....*.Y. | ||
000009a0:· | 000009a0:·bd8a·6834·7346·e464·d664·af96·1d5b·af21··..h4sF.d.d...[.! | ||
000009b0:·8 | 000009b0:·448a·0019·7d0c·1952·3404·4448·d1f8·8a8a··D...}..R4.DH.... | ||
000009c0:· | 000009c0:·1a7d·148d·2f54·ca08·647c·d5d0·2b23·2933··.}../T..d|..+#)3 | ||
000009d0:· | 000009d0:·7da4·e68d·bc32·a62a·d238·3bc9·f184·8d3e··}....2.*.8;....> | ||
000009e0:· | 000009e0:·c6a1·711c·5bad·9798·5ba9·96b7·a85b·a99e··..q.[...[....[.. | ||
000009f0:· | 000009f0:·e6a8·3436·19c5·9450·321c·f944·a496·e7ab··..46...P2..D.... | ||
00000a00:· | 00000a00:·b495·50b2·74a8·46ca·4c55·46de·a288·888c··..P.t.F.LUF..... | ||
00000a10:· | 00000a10:·a254·15ca·284c·9871·1c5b·3474·2c6b·b819··.T..(L.q.[4t,k.. | ||
00000a20:· | 00000a20:·6a1b·5359·ed55·3355·dc48·4347·f586·468d··j.SY.U3U.HCG..F. | ||
00000a30:·e | 00000a30:·e498·9aa9·09b5·348e·63eb·d574·0210·a613··......4.c..t.... | ||
00000a40:· | 00000a40:·6c50·aa79·439f·6ab0·b194·9de5·ada4·d14c··lP.yC.j........L | ||
00000a50:· | 00000a50:·2563·9012·293c·a68c·20a4·b752·2a69·2ccf··%c..)<..·..R*i,. | ||
00000a60:· | 00000a60:·f209·b764·a4a1·e389·9a2a·a99e·a5ad·ac45··...d.....*.....E | ||
00000a70:·9c | 00000a70:·d9cc·f184·8de3·d8ea·bb5a·b58c·c865·da9c··.........Z...e.. | ||
00000a80:·3 | 00000a80:·f30a·d3c1·67ac·ba63·e589·9e31·a096·55c1··....g..c...1..U. | ||
00000a90:· | 00000a90:·94ea·ab66·2365·a850·6673·6033·3b55·44a3··...f#e.Pfs`3;UD. | ||
00000aa0:· | 00000aa0:·994a·7e56·47ab·9518·b21a·d338·8ee3·d84a··.J~VG......8...J | ||
00000ab0:· | 00000ab0:·e1ae·562d·2cf0·a36a·fcbb·16d0·e0bb·30f8··..V-,..j......0. | ||
00000ac0:· | 00000ac0:·73b4·c1cf·11c0·2b55·2b03·be05·70e8·fc17··s.....+U+...p... | ||
00000ad0:· | 00000ad0:·88e2·06f8·4b81·858d·fb67·2abc·d0c0·0cfc··....K....g*..... | ||
00000ae0:· | 00000ae0:·ac05·2e03·9f8c·0cc2·7080·8ecd·0372·bb41··........p....r.A | ||
00000af0:· | 00000af0:·62cd·6740·801f·058d·3843·0801·05be·0530··b.g@....8C.....0 | ||
00000b00:· | 00000b00:·68e2·8706·e0bb·03be·a70e·3317·b0c1·bfc1··h.........3..... | ||
00000b10:·02 | 00000b10:·0208·e007·81d7·e03f·4047·8783·1976·cd4e··.......?@G...v.N | ||
00000b20:· | 00000b20:·80c0·4f83·cfa2·c16f·3140·01eb·197c·3398··..O....o1@...|3. | ||
00000b30:· | 00000b30:·c467·c267·015f·c79a·0193·2900·be2a·e06b··.g.g._....)..*.k | ||
00000b40:· | 00000b40:·63c2·3512·d7a5·fc29·a3db·f517·15df·13df··c.5....)........ | ||
00000b50:· | 00000b50:·9a0b·b7ec·00f0·738e·7b53·59ad·27cf·5965··......s.{SY.'.Ye | ||
00000b60:· | 00000b60:·185f·073e·127c·dd89·9db0·1314·c547·f1bb··._.>.|.......G.. | ||
00000b70:· | 00000b70:·6b40·f025·c237·05a2·51ad·e1d2·f236·84b5··k@.%.7..Q....6.. | ||
00000b80:· | 00000b80:·05ff·e725·846f·0fbe·e609·f8b9·098e·1e7c··...%.o.........| | ||
00000b90:· | 00000b90:·16d6·5778·fff0·cff8·5e66·6dab·d4bc·300f··..Wx....^fm...0. | ||
00000ba0:· | 00000ba0:·6e72·b1ae·8930·3e11·7ef7·0e3e·e3bb·667c··nr...0>.~..>..f| | ||
00000bb0:·f | 00000bb0:·f7c9·3482·1f46·1964·7c17·05df·a5ed·c0cf··..4..F.d|....... | ||
00000bc0:· | 00000bc0:·4c6e·245d·aceb·2db4·f86e·d577·4b17·6e59··Ln$]..-..n.wK.nY | ||
00000bd0:· | 00000bd0:·0bf0·b313·1df7·2aed·7cf1·1de3·7ff1·3d4c··......*.|.....=L | ||
00000be0:· | 00000be0:·aff0·bb57·f82b·fc6e·396b·bebb·e6bb·3231··...W.+.n9k....21 | ||
00000bf0:· | 00000bf0:·2517·32e9·45a3·994a·76c2·dc70·2a79·3e99··%.2.E..Jv..p*y>. | ||
00000c00:· | 00000c00:·e9a8·e2a2·4ea4·9187·d50f·f82e·d577·9d5c··....N........w.\ | ||
00000c10:· | 00000c10:·b82d·63e3·bb15·dfcb·c01c·f09d·a5c0·f7fc··.-c............. | ||
00000c20:· | 00000c20:·9dcd·6c6e·989b·dc30·37b9·9df8·aee6·fb06··..ln...07....... | ||
00000c30:· | 00000c30:·9e58·72b1·2e4e·9cef·71be·771b·21f5·dd2f··.Xr..N..q.w.!../ | ||
00000c40:·d | 00000c40:·df25·c712·4a55·47a6·3184·36df·c95e·e2fb··.%..JUG.1.6..^.. | ||
00000c50:· | 00000c50:·ae08·b1fd·ae6b·f33d·89ef·ac9a·efe1·115e··.....k.=.......^ | ||
00000c60:· | 00000c60:·52f6·7b11·63be·2ff9·aee5·3b0b·0281·9e5c··R.{.c./...;....\ | ||
00000c70:· | 00000c70:·caef·c6be·bbc5·855b·7687·ef79·837b·a1d4··.......[v..y.{.. | ||
00000c80:· | 00000c80:·a7b3·ac01·e539·2b9b·59f8·9ee5·fb01·5af8··.....9+.Y.....Z. | ||
00000c90:· | 00000c90:·ce76·2bb9·5847·86cc·7732·dfbb·9b76·befb··.v+.XG..w2...v.. | ||
00000ca0:· | 00000ca0:·c177·5168·5299·4628·75a8·e964·1ad3·f386··.wQhR.F(u..d.... | ||
00000cb0:·5 | 00000cb0:·53cb·dbd8·748e·eaa8·964f·4ca3·08e9·77dc··S...t....OL...w. | ||
00000cc0:· | 00000cc0:·61be·ef96·0ee6·fb15·ac7e·7ffa·de6e·daee··a........~...n.. | ||
00000cd0:· | 00000cd0:·f4fb·edb3·79d0·c19a·757c·4dfb·5e7e·67b3··....y...u|M.^~g. | ||
00000ce0:· | 00000ce0:·7cf7·b6e0·d800·06dc·56be·2fed·7cd7·f11d··|.......V./.|... | ||
00000cf0:· | 00000cf0:·c905·a77c·3430·5077·d63c·c7fb·4ab5·6bdd··...|40Pw.<..J.k. | ||
00000d00:· | 00000d00:·ae75·c4ef·7adf·6d72·e196·65f2·3d6b·70af··.u..z.mr..e.=kp. | ||
00000d10:· | 00000d10:·5a3e·f5e4·396b·cf17·86f7·39de·6d7c·2f9e··Z>..9k....9.m|/. | ||
00000d20:· | 00000d20:·ef88·88e8·3bd1·f7ee·d5b7·f32e·06bc·cb94··....;........... | ||
00000d30:· | 00000d30:·f660·8ddf·97b8·c013·de55·c2bb·5a5c·b865··.`.......U..Z\.e | ||
Max diff block lines reached; -1/59340 bytes (-0.00%) of diff not shown. |
Offset 35, 244 lines modified | Offset 35, 245 lines modified | ||
00000220:·58f7·6ab7·62c2·9560·da2a·efa0·a026·5374··X.j.b..`.*...&St | 00000220:·58f7·6ab7·62c2·9560·da2a·efa0·a026·5374··X.j.b..`.*...&St | ||
00000230:·646c·6962·9030·6a82·e835·54ad·797b·37cc··dlib.0j..5T.y{7. | 00000230:·646c·6962·9030·6a82·e835·54ad·797b·37cc··dlib.0j..5T.y{7. | ||
00000240:·bdfb·6821·c2b7·a0a0·3843·616d·6c69·6e74··..h!....8Camlint | 00000240:·bdfb·6821·c2b7·a0a0·3843·616d·6c69·6e74··..h!....8Camlint | ||
00000250:·6572·6e61·6c46·6f72·6d61·7442·6173·6963··ernalFormatBasic | 00000250:·6572·6e61·6c46·6f72·6d61·7442·6173·6963··ernalFormatBasic | ||
00000260:·7390·30aa·550b·dab5·21d6·0e76·9a9a·d43a··s.0.U...!..v...: | 00000260:·7390·30aa·550b·dab5·21d6·0e76·9a9a·d43a··s.0.U...!..v...: | ||
00000270:·677e·6540·8495·a6be·0000·0004·0000·0002··g~e@............ | 00000270:·677e·6540·8495·a6be·0000·0004·0000·0002··g~e@............ | ||
00000280:·0000·0005·0000·0005·a090·4040·4361·6d6c··..........@@Caml | 00000280:·0000·0005·0000·0005·a090·4040·4361·6d6c··..........@@Caml | ||
00000290:·3139·3939·5430·3335·8495·a6bd·0f9d·3 | 00000290:·3139·3939·5430·3335·8495·a6bd·0f9d·3ac0··1999T035......:. | ||
000002a0:· | 000002a0:·118a·5cac·38aa·1628·b52f·fd00·588d·7500··..\.8..(./..X.u. | ||
000002b0:·1ac4·7c29·4d30·1ed6·74af·20d2·0785·9d8d··..|)M0..t.·..... | |||
000002c0:·ef82·1b10·f405·9f1a·3465·6626·6136·9812··........4ef&a6.. | |||
000002d0:·3d10·f1d7·a39e·4087·076a·fb85·bfbb·d50d··=.....@..j...... | |||
000002e0:·3f09·9b15·695f·3ef2·2d8b·6486·c50a·350f··?...i_>.-.d...5. | |||
000002f0:·487b·ac28·ec7b·4c28·559b·7720·875d·9252··H{.(.{L(U.w·.].R | |||
00000300:·520b·8d02·7902·7902·53ac·46f1·866f·339b··R...y.y.S.F..o3. | |||
00000310:·382b·714c·b0dc·942a·b510·27da·66a5·0825··8+qL...*..'.f..% | |||
00000320:·484e·69e6·407b·f6d1·9eaf·764e·52b4·d27b··HNi.@{....vNR..{ | |||
00000330:·02cb·29a1·5286·f886·8b1a·bd59·ed03·3daa··..).R......Y..=. | |||
00000340:·7089·2867·c447·7bde·8009·500e·c601·063f··p.(g.G{...P....? | |||
00000350:·dbcc·26ce·6a61·d204·399f·57bb·f93c·daad··..&.ja..9.W..<.. | |||
00000360:·8823·0661·6605·f551·7d48·4439·57fb·d503··.#.af..Q}HD9W... | |||
00000370:·59d0·02d9·70c4·65e9·4dcd·406f·c4e5·07ce··Y...p.e.M.@o.... | |||
00000380:·4271·168e·5ed5·05f9·cc40·56f6·ffe4·407b··Bq..^....@V...@{ | |||
00000390:·fe20·3290·e36a·97cd·4fc1·9aad·9e56·4ba7··.·2..j..O....VK. | |||
000003a0:·033c·e2c0·cfb3·cdca·1193·a42c·96a3·ed3a··.<.........,...: | |||
000003b0:·edb4·2040·5e4c·ca2f·c4fd·c8dd·7144·e2d2··..·@^L./....qD.. | |||
000003c0:·0aca·2737·8706·51e1·3796·e44f·4e0c·37ca··..'7..Q.7..ON.7. | |||
000003d0:·b0d9·8cc2·37b1·e947·2e2b·ab61·c3a1·08e5··....7..G.+.a.... | |||
000003e0:·0715·27a1·f895·53e2·4f0e·8c27·65f8·61aa··..'...S.O..'e.a. | |||
000003f0:·aff4·c220·b935·ff56·38fd·1336·abb1·e699··...·.5.V8..6.... | |||
00000400:·5d7e·c266·131f·39f2·ca65·e529·6a58·acbc··]~.f..9..e.)jX.. | |||
00000410:·7259·798c·ec9b·9a94·e407·fec8·1df1·247b··rYy...........${ | |||
00000420:·2951·ca99·1508·1ef8·932b·82a9·4891·0eca··)Q.......+..H... | |||
00000430:·1022·65f8·f9e4·84b0·572f·9395·e1d7·93f3··."e.....W/...... | |||
00000440:·c15e·fd37·05e5·7440·2a3d·11b4·f9e4·72b0··.^.7..t@*=....r. | |||
00000450:·57ff·5246·b1a4·e1c6·920c·45da·2c14·3f32··W.RF......E.,.?2 | |||
00000460:·c4e5·166c·2407·c628·1be5·7fca·617e·1968··...l$..(....a~.h | |||
00000470:·8d5e·8328·4ba1·f895·1e2e·fcca·50a4·09e5··.^.(K.......P... | |||
00000480:·bcc8·9e09·039b·0df7·e454·b057·ff4a·e116··.........T.W.J.. | |||
00000490:·dc93·3301·b446·a327·45fb·91fb·c05e·bdec··..3..F.'E....^.. | |||
000004a0:·81ec·8b00·8571·63f9·2397·95ab·ec95·e961··.....qc.#......a | |||
000004b0:·12f4·6c3e·b9ac·3ce6·3f09·1445·a81f·b928··..l>..<.?..E...( | |||
000004c0:·7bf5·ff40·f6ff·3fff·08f9·656f·cafe·c9b7··{..@..?...eo.... | |||
000004d0:·e0c0·e1f4·cd5d·cec0·ca1b·47cf·27f7·3a9d··.....]....G.'.:. | |||
000004e0:·1933·3c00·f147·f63f·b788·b45a·3a43·2c90··.3<..G.?...Z:C,. | |||
000004f0:·fdb1·f9cc·3cf6·65ff·ff6d·754f·c4fe·3f11··....<.e..muO..?. | |||
00000500:·4bc4·fe93·1dd4·be52·5b03·97dd·9d97·bc36··K......R[......6 | |||
00000510:·f1e2·292b·a74b·6426·c3b0·cb39·9b32·2076··..)+.Kd&...9.2·v | |||
00000520:·4eeb·7f86·4331·9cfd·ec4e·9a58·8b81·378f··N...C1...N.X..7. | |||
00000530:·2606·c967·fe08·ec94·ffff·97bd·f9df·42d2··&..g..........B. | |||
00000540:·6ae9·fc5b·e1a0·7653·ed28·2ebb·3b1d·b059··j..[..vS.(..;..Y | |||
00000550:·5640·77c9·a36b·4dd0·6ae9·6459·0e67·3e61··V@w..kM.j.dY.g>a | |||
00000560:·c032·1f83·b6ba·77e2·b2bb·26b5·97d4·86f2··.2....w...&..... | |||
00000570:·81b7·181e·c592·1c82·fa40·5a6c·77ee·d87c··.........@Zlw..| | |||
00000580:·a440·7713·8f2e·4b86·339f·5778·14cb·269f··.@w...K.3.Wx..&. | |||
00000590:·d651·aba5·13d5·b1e2·5024·8054·6f83·1ed1··.Q......P$.To... | |||
000005a0:·53bd·80fa·4075·9e34·3eaa·0924·0050·bd85··S...@u.4>..$.P.. | |||
000005b0:·13cc·1c46·5727·a0fa·2987·ba11·0054·cf74··...FW'..)....T.t | |||
000005c0:·5095·72a8·13a1·8457·2e55·6c50·8fc3·04f5··P.r....W.UlP.... | |||
000005d0:·1b75·13e8·1934·a644·f0b3·4db3·3d83·433d··.u...4.D..M.=.C= | |||
000005e0:·2310·d504·f512·a84f·b143·6aab·7bf3·86fa··#......O.Cj.{... | |||
000005f0:·1bea·ff1e·93ed·27b6·b178·b7c4·4d27·f5a0··......'..x..M'.. | |||
00000600:·4f82·3a16·9733·0df5·2e33·0c51·04f5·1a76··O.:..3...3.Q...v | |||
00000610:·28a3·a30e·869e·d487·10e2·0727·4d5e·2909··(..........'M^). | |||
00000620:·0c75·8fc7·7c81·fa0c·d4cf·12a8·0701·867a··.u..|..........z | |||
00000630:·6681·22b1·a004·ea3f·98b9·9225·7911·a873··f."....?...%y..s | |||
00000640:·6942·bd88·fa12·f5a1·ca48·1121·31db·406c··iB.......H.!1.@l | |||
00000650:·5f71·d9dd·1952·cf07·7497·98ec·7142·1d03··_q...R..t...qB.. | |||
00000660:·ea55·9e1c·b5d5·3d3d·517f·a2fe·ff93·80ed··.U....==Q....... | |||
00000670:·036c·7360·554e·dd92·2e0c·89ba·4d42·a27e··.ls`UN......MB.~ | |||
00000680:·4413·a09e·d50e·47fb·d983·12da·c380·b3e4··D.....G......... | |||
00000690:·3173·032e·1ddb·d4f6·1305·d473·8f6e·ab72··1s.........s.n.r | |||
000006a0:·ea86·7d50·97d3·ce43·15a0·7efe·1bb5·d5fd··..}P...C..~..... | |||
000006b0:·8bfa·ff8b·fa8b·fa7f·cb56·519b·8ada·1bc4··.........VQ..... | |||
000006c0:·b0d0·62a1·1592·952b·92a0·7731·6eba·b12a··..b....+..w1n..* | |||
000006d0:·1c5e·efe2·d2c3·e3d1·15da·99d3·5ee6·7b50··.^..........^.{P | |||
000006e0:·c7fa·9fa3·0301·d4db·687f·35bb·ff39·ed02··........h.5..9.. | |||
000006f0:·503f·e5b4·93b1·d4b3·1cdf·c609·39ed·63bc··P?..........9.c. | |||
00000700:·ff88·874a·dd34·7762·fe8d·1b33·dfd0·6e9e··...J.4wb...3..n. | |||
00000710:·c1fa·67a3·3dce·14ed·37b4·9769·d7e5·e08d··..g.=...7..i.... | |||
00000720:·46fb·99dd·ff0e·0933·cb61·cd33·58af·c37a··F......3.a.3X..z | |||
00000730:·3466·6a07·519b·8acb·ee4e·38ed·d980·cc86··4fj.Q....N8..... | |||
00000740:·89a6·fd94·7d99·f635·ed46·b4bf·ecbf·4dfb··....}..5.F....M. | |||
00000750:·7f9a·7623·daaf·95bd·0fed·5966·94ff·bb70··..v#......Yf...p | |||
00000760:·91fd·cbda·eafe·d9b4·b369·ffff·6185·da29··.........i..a..) | |||
00000770:·d476·92a2·e194·f8d8·337f·aebd·ea95·6cf0··.v......3.....l. | |||
00000780:·bea1·5d02·db80·45b2·3add·dfe0·dd43·bb69··..]...E.:....C.i | |||
00000790:·ee3c·1e13·2be7·4761·84da·b8da·4d2e·bb3b··.<..+.Ga....M..; | |||
000007a0:·7168·cf46·3cba·6b20·fe6c·3e2f·7bca·be0c··qh.F<.k·.l>/{... | |||
000007b0:·977a·aea0·3eb0·5636·fd5c·995f·3c08·b116··.z..>.V6.\._<... | |||
000007c0:·af9c·59d5·3c3c·82de·ece8·48ae·8b6d·8641··..Y.<<....H..m.A | |||
000007d0:·5c4d·bccd·30d5·478e·381a·1e67·351c·7e36··\M..0.G.8..g5.~6 | |||
000007e0:·5c0b·a71c·c9e1·9e46·711c·7190·dc0d·8bf8··\......Fq.q..... | |||
000007f0:·cd6a·580b·4d04·a166·a455·532c·87af·5489··.jX.M..f.US,..T. | |||
00000800:·a06d·c454·e24c·0bcd·2b9b·6239·2c01·2dd4··.m.T.L..+.b9,.-. | |||
00000810:·9d74·ef10·152a·5726·6838·ad86·d36a·a420··.t...*W&h8...j.· | |||
00000820:·242e·bdda·fdb9·e428·4a95·38ef·8ea2·ed62··$......(J.8....b | |||
00000830:·f0b3·dd26·a725·a424·2947·a018·8a1f·3962··...&.%.$)G....9b | |||
00000840:·aa8b·3109·e406·5d21·a1d9·6cc6·9424·4b4c··..1...]!..l..$KL | |||
00000850:·abc5·b4fa·c865·7727·398a·250e·ea1b·cb50··.....ew'9.%....P | |||
00000860:·a4dd·5ae8·dd26·2950·8eae·906c·490a·94a5··..Z..&)P...lI... | |||
00000870:·5b4a·457d·a3d5·9478·742f·5598·5637·6935··[JE}...xt/U.V7i5 | |||
00000880:·6919·dd3c·ec74·cb10·dfa6·4410·5361·a4a1··i..<.t....D.Sa.. | |||
00000890:·5b86·5e49·7e24·29bb·3651·1ca3·dc0f·c4a3··[.^I~$).6Q...... | |||
000008a0:·8ba5·9cee·bd41·3783·d6bf·cc65·7767·1093··.....A7....ewg.. | |||
000008b0:·9d9c·5f56·5a1f·8364·9dcd·1759·cf62·dd66··.._VZ..d...Y.b.f | |||
000008c0:·fdc9·faee·87ac·5f91·79ac·9b3b·1d4b·8496··......_.y..;.K.. | |||
000008d0:·9759·b7f2·51d6·ffa3·ac47·59ff·ff72·f3be··.Y..Q....GY..r.. | |||
000008e0:·7967·c153·56e5·3d62·c4fa·7964·ddc8·fa8f··yg.SV.=b..yd.... | |||
000008f0:·f997·597f·1ef6·c7fa·c360·ee74·2c92·2502··..Y......`.t,.%. | |||
00000900:·8975·f341·2d4d·3c66·d6b1·66c6·fa31·58ff··.u.A-M<f..f..1X. | |||
00000910:·4b6d·756f·83f2·b6e2·fdb9·ecee·24b2·6e66··Kmuo........$.nf | |||
00000920:·a405·bab1·16ef·c90f·9dc9·4698·33bf·8f75··..........F.3..u | |||
00000930:·20eb·3ed6·973c·7953·f18e·72d9·1d53·6da6···.>..<yS..r..Sm. | |||
00000940:·da4c·4896·8775·1864·5454·3fdb·a89e·a6fa··.LH..u.dTT?..... | |||
00000950:·99cf·7ce6·339f·f9cc·2f53·935f·2681·6dc0··..|.3.../S._&.m. | |||
00000960:·aac9·ef46·f537·d5ef·7843·a9ad·6ece·9cea··...F.7..xC..n... | |||
00000970:·73aa·ff4f·71c0·9b01·6fdb·10d2·ca15·cbf0··s..Oq...o....... | |||
00000980:·bb58·8490·56ae·4dbc·2408·7a97·acd5·bc8b··.X..V.M.$.z..... | |||
00000990:·6508·7985·90d7·ca2d·da29·a37a·ebd7·a88e··e.y....-.).z.... | |||
000009a0:·e546·8a34·aa47·1185·19d5·bd28·a33a·1950··.F.4.G.....(.:.P | |||
000009b0:·642d·a040·17d5·b9a8·7ebe·a9ee·e68a·037a··d-.@....~......z | |||
000009c0:·4051·dd4d·1553·3d4a·755c·dbac·7111·b063··@Q.M.S=Ju\..q..c | |||
000009d0:·bdef·b08d·5d76·771e·513d·fbe8·c651·23be··....]vw.Q=...Q#. | |||
000009e0:·f9c4·50bd·563d·2703·93b6·3a32·64aa·93a9··..P.V='...:2d... | |||
000009f0:·fe5f·4717·b6b7·b04d·c352·2519·4eb9·4a5c··._G....M.R%.N.J\ | |||
00000a00:·a88e·e6c1·54c7·9ab1·31ab·7b6b·be54·efe2··....T...1.{k.T.. | |||
Max diff block lines reached; -1/33258 bytes (-0.00%) of diff not shown. |
Offset 1, 1123 lines modified | Offset 1, 1127 lines modified | Diff chunk too large, falling back to line-by-line diff (1126 lines added, 1122 lines removed) | |
00000000:·4361·6d6c·3139·3939·5430·3335·8495·a6bd··Caml1999T035.... | 00000000:·4361·6d6c·3139·3939·5430·3335·8495·a6bd··Caml1999T035.... | ||
00000010:·1381·8c | 00000010:·1381·8c48·82c9·72ba·6581·ed33·81e9·0928··...H..r.e..3...( | ||
00000020:·b52f·fd00·58 | 00000020:·b52f·fd00·58fd·3102·3a61·2bb7·4e10·108a··./..X.1.:a+.N... | ||
00000030:·51a5·03c | 00000030:·51a5·03c1·dc58·d7fe·099a·71c5·db51·e32c··Q....X....q..Q., | ||
00000040:· | 00000040:·1978·bee4·397a·cf7a·6c44·fd38·dcd9·230c··.x..9z.zlD.8..#. | ||
00000050:· | 00000050:·de81·3bf8·196d·d5ea·7fa2·1e98·7acb·75fa··..;..m......z.u. | ||
00000060:· | 00000060:·505c·2065·ec2e·fc75·d9f8·3c69·e1b9·f1be··P\·e...u..<i.... | ||
00000070:· | 00000070:·effb·7672·f209·2161·c36e·0195·0b31·0b42··..vr..!a.n...1.B | ||
00000080:· | 00000080:·0b53·286a·b192·7300·e861·e9f3·13e8·a168··.S(j..s..a.....h | ||
00000090:· | 00000090:·841e·4f21·0044·4fa0·7742·8a2d·9c68·8209··..O!.DO.wB.-.h.. | ||
000000a0:· | 000000a0:·f488·d01f·d053·a1e7·007d·6ea2·5000·9438··.....S...}n.P..8 | ||
000000b0:· | 000000b0:·8290·7a03·a9d7·8141·e831·8d7b·a586·5240··..z....A.1.{..R@ | ||
000000c0:· | 000000c0:·a0df·007d·93ca·3d97·759a·07f4·4d0c·10e9··...}..=.u...M... | ||
000000d0:· | 000000d0:·801e·cd9a·437d·d05b·1962·a267·2106·f435··....C}.[.b.g!..5 | ||
000000e0:· | 000000e0:·2cf1·42f3·8720·0075·16fa·39e8·f306·e80b··,.B..·.u..9..... | ||
000000f0:· | 000000f0:·59a1·c726·e8e0·c70a·fd9f·1d6e·60e6·0dd0··Y..&.......n`... | ||
00000100:· | 00000100:·2b21·80f6·0c7a·0c8a·e895·d02f·2551·811e··+!...z...../%Q.. | ||
00000110:· | 00000110:·19ee·68a9·b705·f532·7185·418f·6748·a107··..h....2q.A.gH.. | ||
00000120:· | 00000120:·a237·320d·d1b7·4d44·df1c·6244·147a·0686··.72...MD..bD.z.. | ||
00000130:· | 00000130:·4504·d16b·41e9·ac10·442f·3c6a·9bdd·4fd0··E..kA...D/<j..O. | ||
00000140:· | 00000140:·6341·9f81·e809·05d1·6325·70de·a027·0289··cA......c%p..'.. | ||
00000150:· | 00000150:·292a·a440·04fd·1094·06fa·177a·01d0·2184··)*.@.......z..!. | ||
00000160:· | 00000160:·a027·9050·35fc·32a3·c531·7c84·10d4·fb81··.'.P5.2..1|..... | ||
00000170:· | 00000170:·7a97·b876·a0c7·4849·e861·a0af·813e·3730··z..v..HI.a...>70 | ||
00000180:· | 00000180:·78cf·6599·9681·bed9·6d43·3f00·fa0c·037d··x.e.....mC?....} | ||
00000190:· | 00000190:·a01d·7abc·a21d·6c30·809f·d0df·c40f·e8b7··..z...l0........ | ||
000001a0:· | 000001a0:·9908·d2a1·6f5b·2656·a7f1·80d0·d158·a05e··....o[&V.....X.^ | ||
000001b0:· | 000001b0:·09d4·ab04·861e·1fdd·9b94·c43f·4513·bf14··...........?E... | ||
000001c0:· | 000001c0:·8cfe·ee96·e207·6260·1bfa·31b0·71f7·9830··......b`..1.q..0 | ||
000001d0:· | 000001d0:·c029·49fc·539d·c487·5f42·7f0d·7f0c·3f9f··.)I.S..._B....?. | ||
000001e0:· | 000001e0:·7fb9·fc61·89bf·6d99·c2a3·b689·7193·a952··...a..m.....q..R | ||
000001f0:· | 000001f0:·af51·bd49·8af8·f192·dfbd·ca23·1a7e·e69f··.Q.I.......#.~.. | ||
00000200:· | 00000200:·817d·e53c·fe7b·8a1d·1b2e·8586·7f28·e545··.}.<.{.......(.E | ||
00000210:·bd4 | 00000210:·bd4f·ea45·e2f2·9dcc·2cc3·8f95·c8b8·b76a··.O.E....,......j | ||
00000220:· | 00000220:·f865·c695·7b2e·fb81·2bea·6da2·5e23·ae39··.e..{...+.m.^#.9 | ||
00000230:· | 00000230:·3f66·52e3·dee0·94d0·49b7·d479·147e·377f··?fR.....I..y.~7. | ||
00000240:· | 00000240:·6e14·fe38·4cd4·9b44·bd4b·2edf·c9cc·93de··n..8L..D.K...... | ||
00000250:· | 00000250:·3ce9·95c0·7732·33b0·a5ce·a7f9·ad80·c13f··<...w23........? | ||
00000260:· | 00000260:·6bf0·0ff9·33ce·38e3·3db8·37f8·a7fc·1c40··k...3.8.=.7....@ | ||
00000270:· | 00000270:·b9e7·f2a8·31f8·9b3a·7ab0·e077·32f2·50e6··....1..:z..w2.P. | ||
00000280:· | 00000280:·9f9a·e097·e04f·1824·4bc7·dfb8·0391·0122··.....O.$K......" | ||
00000290:· | 00000290:·4e74·80e0·87b2·e57f·e0cf·53fe·1cac·2000··Nt........S...·. | ||
000002a0:· | 000002a0:·e4c9·efe4·c7cf·fe47·f7a3·a487·d28d·24f5··.......G......$. | ||
000002b0:· | 000002b0:·ca50·2f90·c88f·07b8·1739·5412·6900·f97f··.P/......9T.i... | ||
000002c0:· | 000002c0:·ff01·4fee·b98c·758f·bf29·401f·1dff·00cf··..O...u..)@..... | ||
000002d0:· | 000002d0:·f1e3·f8f3·efc7·2189·0001·62fc·021c·f6ff··......!...b..... | ||
000002e0:· | 000002e0:·39af·041f·de7b·bcdc·4cbd·a97a·dbe5·3b99··9....{..L..z..;. | ||
000002f0:· | 000002f0:·79f6·e318·f70e·6b9c·7f12·e7ff·e706·3ab9··y.....k.......:. | ||
00000300:· | 00000300:·e772·51ea·fa9b·846e·6874·de88·3d58·9c87··.rQ....nht..=X.. | ||
00000310:· | 00000310:·6200·e7af·604e·81fe·89f3·4e9c·cf49·9cb7··b...`N....N..I.. | ||
00000320:· | 00000320:·e1d0·555d·6a11·e709·ed39·dfe6·7c9d·f3b9··..U]j....9..|... | ||
00000330:· | 00000330:·0621·b6d0·6200·8cd2·9b28·bd15·f070·1e0b··.!..b....(...p.. | ||
00000340:· | 00000340:·70c3·7917·cef3·6972·cfa5·1035·9c6f·cea1··p.y...ir...5.o.. | ||
00000350:· | 00000350:·21cf·7916·4e19·cec7·703e·bb70·5e8f·1614··!.y.N...p>.p^... | ||
00000360:· | 00000360:·4f38·9d5f·e1fc·1c10·ce6f·703e·84f3·cb19··O8._.....op>.... | ||
00000370:·e | 00000370:·e09c·4c18·dae0·2c34·28bd·41a4·9702·12ce··..L...,4(.A..... | ||
00000380:· | 00000380:·6318·ca61·918b·9198·ec0f·ce5b·7539·ef74··c..a.......[u9.t | ||
00000390:· | 00000390:·5eea·fcb2·75e0·83f3·3b00·fa21·bd39·a4b7··^...u...;..!.9.. | ||
000003a0:· | 000003a0:·0c07·e731·9217·5cce·7b39·9f81·ddc1·bd03··...1..\.{9...... | ||
000003b0:· | 000003b0:·e7db·aa65·9eb9·8f71·da21·9e4c·9acb·79a6··...e...q.!.L..y. | ||
000003c0:· | 000003c0:·9f3e·e9ad·21bd·13f8·4e66·7e3a·8f8f·f8ee··.>..!...Nf~:.... | ||
000003d0:· | 000003d0:·551e·45b9·e7b2·f168·a537·4e7a·c9f8·4e66··U.E....h.7Nz..Nf | ||
000003e0:· | 000003e0:·0e9e·c749·08b8·37a8·1c06·6934·93f3·4dce··...I..7...i4..M. | ||
000003f0:· | 000003f0:·e766·72de·9742·7adf·a477·8cef·64fe·30e0··.fr..Bz..w..d.0. | ||
00000400:·b | 00000400:·bc15·9011·ec59·773e·09d8·33ce·38e3·8c33··.....Yw>..3.8..3 | ||
00000410:· | 00000410:·ceb8·818c·ee13·e970·7f03·700f·eedd·f929··.......p..p....) | ||
00000420:·6 | 00000420:·603f·3a79·e773·0395·dc73·d948·e7bb·91ce··`?:y.s...s.H.... | ||
00000430:· | 00000430:·239d·ef06·8092·f422·492f·95d2·3834·1e95··#......"I/..84.. | ||
00000440:· | 00000440:·c621·7218·1545·8452·2689·4d7e·3f1a·c16e··.!r..E.R&.M~?..n | ||
00000450:· | 00000450:·a66f·e79b·8960·79d8·f38b·1ac1·6450·cfe3··.o...`y.....dP.. | ||
00000460:·2 | 00000460:·2b3a·3d8f·9ecf·53c0·8ee7·9e24·8c80·1b97··+:=...S....$.... | ||
00000470:· | 00000470:·d062·36a7·22d8·13c1·f4c0·6e06·f611·60cf··.b6.".....n...`. | ||
00000480:· | 00000480:·7704·1082·9a36·83f4·5a90·de30·be93·9995··w....6..Z..0.... | ||
00000490:· | 00000490:·801d·f3ee·a501·f635·b0ef·5003·ecb9·8149··.......5..P....I | ||
000004a0:· | 000004a0:·eeb9·ec3f·b077·ff81·fd0f·ecdd·47e9·167a··...?.w......G..z | ||
000004b0:· | 000004b0:·9340·2fb2·ca28·941a·b284·9d46·cb00·7bf3··.@/..(.....F..{. | ||
000004c0:· | 000004c0:·0a86·3bb0·8760·e705·d853·58c2·9eb5·5830··..;..`...SX...X0 | ||
000004d0:· | 000004d0:·d270·60cf·823d·af81·fd85·1386·2ca0·06f6··.p`..=......,... | ||
000004e0:· | 000004e0:·2b21·ec3c·d873·c096·6984·0051·0e93·335a··+!.<.s..i..Q..3Z | ||
000004f0:·7 | 000004f0:·7c83·8f02·d28b·94de·a4ef·6466·0c60·c7bb··|.........df.`.. | ||
00000500:· | 00000500:·a61b·4eb0·e380·ddf8·0443·7284·bd8f·47d8··..N......Cr...G. | ||
00000510:· | 00000510:·8f77·d0ab·44ef·d177·3283·a017·087a·8d55··.w..D..w2....z.U | ||
00000520:· | 00000520:·4861·3239·7c1a·1a7f·5144·2828·e1af·5824··Ha29|...QD((..X$ | ||
00000530:· | 00000530:·8a49·1ec5·287f·51c7·5f72·984c·0a8b·4fbf··.I..(.Q._r.L..O. | ||
00000540:· | 00000540:·e193·7158·1486·2152·8119·fe86·5d94·432e··..qX..!R....].C. | ||
00000550:· | 00000550:·c8a1·939f·0441·d865·6808·606f·2665·2db0··.....A.eh.`o&e-. | ||
00000560:· | 00000560:·db08·52e7·0aec·08b8·c004·7b12·5810·f629··..R.......{.X..) | ||
00000570:· | 00000570:·2d38·3962·1012·d88f·d069·2102·0981·3d08··-89b.....i!...=. | ||
00000580:· | 00000580:·ec19·07ec·2cf8·00a2·871a·b027·c1a8·787d··....,......'..x} | ||
00000590:· | 00000590:·86d7·9b2b·fc60·3af4·b981·06f4·e241·ef94··...+.`:......A.. | ||
000005a0:·e | 000005a0:·ef64·e61e·ec58·776f·5215·af03·f1fa·8559··.d...XwoR......Y | ||
000005b0:· | 000005b0:·71e4·057b·bf60·2fd8·5fb0·77ef·d06b·c4ef··q..{.`/._.w..k.. | ||
000005c0:· | 000005c0:·17df·c954·e117·ceaf·17e5·b0ea·6714·7334··...T........g.s4 | ||
000005d0:· | 000005d0:·7ef9·296d·18b7·18b5·fc86·49a2·70ca·8e61··~.)m......I.p..a | ||
000005e0:· | 000005e0:·17e5·cf4b·13af·fb5a·8ad7·9b7f·e628·7abd··...K...Z.....(z. | ||
000005f0:· | 000005f0:·0739·4ebc·8e44·13af·0b20·ce12·06f0·38e2··.9N..D...·....8. | ||
00000600:· | 00000600:·7523·5ecf·40bc·aec2·1039·70f0·f0fa·1f36··u#^.@....9p....6 | ||
00000610:· | 00000610:·af47·f03a·550a·7d6a·ccf8·c540·2f0f·bd45··.G.:U.}j...@/..E | ||
00000620:· | 00000620:·dfc9·cc7a·5ec7·b97b·a18c·c428·1a6d·5e57··...z^..{...(.m^W | ||
00000630:· | 00000630:·beae·0209·46e2·bcde·71e2·bc1e·e7cc·af94··....F...q....... | ||
00000640:· | 00000640:·5f2e·be93·99fb·bdfd·46ed·f825·a388·bf1f··_.......F..%.... | ||
00000650:· | 00000650:·1723·b18b·f268·fc1d·a17e·c8e3·4fc7·8d9f··.#...h...~..O... | ||
00000660:· | 00000660:·9158·c00f·0a0a·f893·8a7d·f0ba·068d·f57a··.X.......}.....z | ||
00000670:· | 00000670:·f308·47cd·eb60·b240·78fd·820f·5e4f·f346··..G..`.@x...^O.F | ||
00000680:· | 00000680:·8337·27b4·05af·03e0·f5ac·7cdd·8d04·6dd8··.7'.......|...m. | ||
00000690:·f | 00000690:·f4d4·eb47·065e·efbd·aee3·f58c·bd88·7055··...G.^........pU | ||
000006a0:· | 000006a0:·1cce·68b1·08f7·2078·f08b·e6b7·8bef·6466··..h...·x......df | ||
000006b0:· | 000006b0:·e1eb·1877·2f14·9470·068e·a2cd·b881·d773··...w/..p.......s | ||
000006c0:· | 000006c0:·bcee·c0ab·5fcf·0d2c·72cf·6593·26af·3779··...._..,r.e.&.7y | ||
000006d0:·d | 000006d0:·bddb·8a20·cedb·3cef·93ef·64e6·2ae5·94d4··...·..<...d.*... | ||
000006e0:· | 000006e0:·f067·14fe·8649·6251·4854·128d·4b7e·0d04··.g...IbQHT..K~.. | ||
000006f0:· | 000006f0:·791d·8bb3·1778·bd59·0305·21af·17f0·7aef··y....x.Y..!...z. | ||
00000700:· | 00000700:·6176·0779·fd80·d773·8ed7·4fe8·51a3·1db5··av.y...s..O.Q... | ||
00000710:· | 00000710:·38d1·7dab·d5ec·b6f1·7a8d·17a3·fb44·f7b7··8.}.....z....D.. | ||
00000720:· | 00000720:·9709·bf47·af6b·31bb·57f4·2d26·74b6·5acd··...G.k1.W.-&t.Z. | ||
00000730:· | 00000730:·5e36·1bf6·46e7·bde2·bc50·be93·997d·afe3··^6..F....P...}.. | ||
00000740:· | 00000740:·dbbd·43a5·7088·7caa·81a3·68ab·d0e1·fe86··..C.p.|...h..... | ||
00000750:· | 00000750:·7b44·f7ae·1715·4bf7·5c76·dfd7·efeb·dd7d··{D....K.\v.....} | ||
00000760:· | 00000760:·e49c·5785·f346·80c0·14f7·3afc·e0c3·79fd··..W..F....:...y. | ||
00000770:· | 00000770:·9c57·e83b·9959·d13d·2e62·bb57·79f4·8784··.W.;.Y.=.b.Wy... | ||
00000780:· | 00000780:·7b11·ee63·9c4b·413b·0087·18e2·7e88·fb6e··{..c.KA;....~..n | ||
00000790:·6 | 00000790:·3654·e74d·9e77·8bef·6466·e430·ccf1·a71c··6T.M.w..df.0.... | ||
000007a0:· | 000007a0:·267f·c05f·036e·ee33·ee1c·ee4b·0096·700f··&.._.n.3...K..p. | ||
000007b0:· | 000007b0:·c7cd·79db·9c17·023e·f778·a976·af72·983c··..y....>.x.v.r.< | ||
000007c0:· | 000007c0:·e13e·033b·c6d9·2cdc·bfb9·c719·9b70·dfc0··.>.;..,......p.. | ||
000007d0:· | 000007d0:·6e60·df73·d94d·87ce·3d9d·fbee·2805·ce8b··n`.s.M..=...(... | ||
Max diff block lines reached; -1/155182 bytes (-0.00%) of diff not shown. |
Offset 1, 3 lines modified | Offset 1, 3 lines modified | ||
1 | -rw-r--r--···0········0········0········4·2025-02-15·14:19:14.000000·debian-binary | 1 | -rw-r--r--···0········0········0········4·2025-02-15·14:19:14.000000·debian-binary |
2 | -rw-r--r--···0········0········0·····326 | 2 | -rw-r--r--···0········0········0·····3264·2025-02-15·14:19:14.000000·control.tar.xz |
3 | -rw-r--r--···0········0········0·25950 | 3 | -rw-r--r--···0········0········0·25950244·2025-02-15·14:19:14.000000·data.tar.xz |
Offset 9, 15 lines modified | Offset 9, 15 lines modified | ||
9 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/boot/ | 9 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/boot/ |
10 | -rw-r--r--···0·root·········(0)·root·········(0)····27730·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/boot/boot.cma | 10 | -rw-r--r--···0·root·········(0)·root·········(0)····27730·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/boot/boot.cma |
11 | -rw-r--r--···0·root·········(0)·root·········(0)····45120·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/boot/boot.cmxs | 11 | -rw-r--r--···0·root·········(0)·root·········(0)····45120·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/boot/boot.cmxs |
12 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/checklib/ | 12 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/checklib/ |
13 | -rw-r--r--···0·root·········(0)·root·········(0)···271942·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/checklib/coq_checklib.cma | 13 | -rw-r--r--···0·root·········(0)·root·········(0)···271942·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/checklib/coq_checklib.cma |
14 | -rw-r--r--···0·root·········(0)·root·········(0)···355416·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/checklib/coq_checklib.cmxs | 14 | -rw-r--r--···0·root·········(0)·root·········(0)···355416·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/checklib/coq_checklib.cmxs |
15 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/ | 15 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/ |
16 | -rw-r--r--···0·root·········(0)·root·········(0)···7448 | 16 | -rw-r--r--···0·root·········(0)·root·········(0)···744821·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/clib.cma |
17 | -rw-r--r--···0·root·········(0)·root·········(0)···731848·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/clib.cmxs | 17 | -rw-r--r--···0·root·········(0)·root·········(0)···731848·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/clib/clib.cmxs |
18 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config/ | 18 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config/ |
19 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config/byte/ | 19 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config/byte/ |
20 | -rw-r--r--···0·root·········(0)·root·········(0)·····3351·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config/byte/byte_config.cma | 20 | -rw-r--r--···0·root·········(0)·root·········(0)·····3351·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config/byte/byte_config.cma |
21 | -rw-r--r--···0·root·········(0)·root·········(0)·····3998·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config/config.cma | 21 | -rw-r--r--···0·root·········(0)·root·········(0)·····3998·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config/config.cma |
22 | -rw-r--r--···0·root·········(0)·root·········(0)····25384·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config/config.cmxs | 22 | -rw-r--r--···0·root·········(0)·root·········(0)····25384·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/config/config.cmxs |
23 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/coqworkmgrapi/ | 23 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-02-15·14:19:14.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.3.0/coq-core/coqworkmgrapi/ |
Offset 1, 8 lines modified | Offset 1, 8 lines modified | ||
00000000:·4361·6d6c·3139·3939·4130·3335·0009·7d | 00000000:·4361·6d6c·3139·3939·4130·3335·0009·7d6d··Caml1999A035..}m | ||
00000010:·5400·0000·9e01·0000·2900·0000·2a00·0000··T.......)...*... | 00000010:·5400·0000·9e01·0000·2900·0000·2a00·0000··T.......)...*... | ||
00000020:·0100·0000·0100·0000·0b00·0000·1b00·0000··................ | 00000020:·0100·0000·0100·0000·0b00·0000·1b00·0000··................ | ||
00000030:·2200·0000·0a00·0000·4700·0000·0800·0000··".......G....... | 00000030:·2200·0000·0a00·0000·4700·0000·0800·0000··".......G....... | ||
00000040:·0b00·0000·4700·0000·0700·0000·0c00·0000··....G........... | 00000040:·0b00·0000·4700·0000·0700·0000·0c00·0000··....G........... | ||
00000050:·4700·0000·0600·0000·0d00·0000·4700·0000··G...........G... | 00000050:·4700·0000·0600·0000·0d00·0000·4700·0000··G...........G... | ||
00000060:·0400·0000·0e00·0000·4600·0000·0f00·0000··........F....... | 00000060:·0400·0000·0e00·0000·4600·0000·0f00·0000··........F....... | ||
00000070:·4300·0000·3e00·0000·0600·0000·0000·0000··C...>........... | 00000070:·4300·0000·3e00·0000·0600·0000·0000·0000··C...>........... | ||
Offset 102, 46452 lines modified | Offset 102, 46451 lines modified | ||
00000650:·1200·0000·0800·0000·1200·0000·0a00·0000··................ | 00000650:·1200·0000·0800·0000·1200·0000·0a00·0000··................ | ||
00000660:·1200·0000·0c00·0000·1200·0000·0e00·0000··................ | 00000660:·1200·0000·0c00·0000·1200·0000·0e00·0000··................ | ||
00000670:·1200·0000·1000·0000·3e00·0000·0900·0000··........>....... | 00000670:·1200·0000·1000·0000·3e00·0000·0900·0000··........>....... | ||
00000680:·0000·0000·2800·0000·0d00·0000·2b00·0000··....(.......+... | 00000680:·0000·0000·2800·0000·0d00·0000·2b00·0000··....(.......+... | ||
00000690:·0000·0000·b9ff·ffff·0900·0000·0000·0000··................ | 00000690:·0000·0000·b9ff·ffff·0900·0000·0000·0000··................ | ||
000006a0:·2b00·0000·0100·0000·5dfe·ffff·3f00·0000··+.......]...?... | 000006a0:·2b00·0000·0100·0000·5dfe·ffff·3f00·0000··+.......]...?... | Diff chunk too large, falling back to line-by-line diff (1553 lines added, 1553 lines removed) | |
000006b0:·0000·0000·1300·0000·0100·0000·3900·0000··............9... | 000006b0:·0000·0000·1300·0000·0100·0000·3900·0000··............9... | ||
000006c0:·0000·0000·8495·a6bd·0fb | 000006c0:·0000·0000·8495·a6bd·0fb4·6afe·6e96·22dc··..........j.n.". | ||
000006d0:·5 | 000006d0:·56db·0728·b52f·fd00·580d·d300·7a32·4542··V..(./..X...z2EB | ||
000006e0:·5 | 000006e0:·5310·206a·d5e6·0048·0708·396e·dc38·5e8a··S.·j...H..9n.8^. | ||
000006f0:· | 000006f0:·9d0d·45c7·df67·37d6·b0b3·826f·7252·7d36··..E..g7....orR}6 | ||
00000700:· | 00000700:·d956·ed39·40bc·f282·3149·8754·27b8·30e6··.V.9@...1I.T'.0. | ||
00000710:· | 00000710:·505b·9b86·cfb9·63dc·4aff·b8fe·6f8f·1cf1··P[....c.J...o... | ||
00000720:· | 00000720:·80ab·c0f5·c201·e5bb·e2be·18a8·7eb2·b277··............~..w | ||
00000730:· | 00000730:·0ad9·6403·1704·1d04·f303·5a61·bcbf·783f··..d.......Za..x? | ||
00000740:· | 00000740:·61d3·2f9a·2a65·55b5·68ac·0c95·89aa·8496··a./.*eU.h....... | ||
00000750:· | 00000750:·fe78·3822·4abb·95c6·aae9·2ff5·71a5·3e5a··.x8"J...../.q.>Z | ||
00000760:· | 00000760:·0f97·e3a9·ab8a·cbe9·54de·13ed·890e·08c8··........T....... | ||
00000770:· | 00000770:·7e80·ec1e·0b62·5608·03a6·816e·9dca·db19··~....bV....n.... | ||
00000780:· | 00000780:·3589·58f8·80da·1f10·a076·4006·f01e·e28d··5.X......v@..... | ||
00000790:· | 00000790:·d580·3703·de3b·25da·6fc7·a39d·582a·2f8b··..7..;%.o...X*/. | ||
000007a0:·aa | 000007a0:·5d55·daaa·a3f9·569a·8da4·3487·eb71·d154··]U....V...4..q.T | ||
000007b0:· | 000007b0:·de0c·9a4e·87d2·b64c·2f25·788f·e09d·f505··...N...L/%x..... | ||
000007c0:· | 000007c0:·e8a5·cb16·b7d7·0e80·6e9d·0e57·c424·62e1··........n..W.$b. | ||
000007d0:· | 000007d0:·70d8·3e6c·ff87·420e·ee21·eedc·17cb·b595··p.>l..B..!...... | ||
000007e0:· | 000007e0:·d254·1c2d·fdf1·7a38·1ecb·53a3·683e·56b8··.T.-..z8..S.h>V. | ||
000007f0:· | 000007f0:·14b8·01e1·d671·d9b2·a5bd·157b·55f0·de01··.....q.....{U... | ||
00000800:·b | 00000800:·b762·efaf·7987·0c74·a72c·2ef5·e590·dc60··.b..y..t.,.....` | ||
00000810:· | 00000810:·8d0c·9976·32ed·ff37·88c1·1d06·b713·0b76··...v2..7.......v | ||
00000820:· | 00000820:·6883·9b0d·6edc·02dd·2c11·9a25·4b7b·96f6··h...n...,..%K{.. | ||
00000830:· | 00000830:·7f2d·5db8·7fb8·99f8·d228·2b2d·f575·d1d8··.-]......(+-.u.. | ||
00000840:· | 00000840:·f447·4369·3ea2·b407·ddff·9202·6e06·e06e··.GCi>.......n..n | ||
00000850:· | 00000850:·f2e8·dabe·a29b·4d7f·45c2·35ee·a3e8·8b58··......M.E.5....X | ||
00000860:·8 | 00000860:·f80f·423b·08ed·ffbb·25dc·16e0·4ee2·6b7f··..B;....%...N.k. | ||
00000870:· | 00000870:·8334·2e5a·9ac5·d254·1eed·c7aa·e956·da4b··.4.Z...T.....V.K | ||
00000880:· | 00000880:·69bb·9596·727d·b1b4·34cb·8a26·c384·c1ad··i...r}..4..&.... | ||
00000890:· | 00000890:·f2ba·aedb·8e38·b7ea·92dc·a0fb·507c·ed2f··.....8......P|./ | ||
000008a0:· | 000008a0:·0f37·166e·25bd·2da5·ae1b·57bc·5e2e·c71b··.7.n%.-...W.^... | ||
000008b0:· | 000008b0:·fc76·a89b·eda5·45c2·356e·95f6·6d0a·4037··.v....E.5n..m.@7 | ||
000008c0:· | 000008c0:·16cf·a6ae·3c96·c7fa·7042·6c08·8320·815d··....<...pBl..·.] | ||
000008d0:· | 000008d0:·f17a·3ad6·8604·d622·71a2·a65a·38f6·f6a5··.z:...."q..Z8... | ||
000008e0:· | 000008e0:·c3a5·be1e·eec6·b404·9cda·ddd2·5e97·6edd··............^.n. | ||
000008f0:· | 000008f0:·baa5·5178·3f5f·572e·f5dd·74a9·cadb·a53a··..Qx?_W...t....: | ||
00000900:· | 00000900:·b5c8·12b0·86c4·b7fa·7c69·1270·89c9·cabb··........|i.p.... | ||
00000910:· | 00000910:·e952·addc·dabb·bafd·be6c·4a40·1d4b·a4ac··.R.......lJ@.K.. | ||
00000920:· | 00000920:·bd9d·2f8d·b2de·b472·38d6·a604·a451·e4cb··../....r8....Q.. | ||
00000930:· | 00000930:·b76e·a55b·b7dd·7a63·bb82·4c00·8c71·44a7··.n.[..zc..L..qD. | ||
00000940:· | 00000940:·76ad·bb1b·bb02·4902·b268·bf19·815d·22b0··v.....I..h...]". | ||
00000950:· | 00000950:·0bf6·5a65·e558·5cd5·04c0·2023·ac9a·6e75··..Ze.X\...·#..nu | ||
00000960:· | 00000960:·61f9·7037·1daf·878b·a246·e100·8aed·4460··a.p7.....F....D` | ||
00000970:· | 00000970:·b77d·3b78·8327·19c0·4049·d21e·6f77·dbad··.};x.'..@I..ow.. | ||
00000980:· | 00000980:·379d·ea54·03d8·841f·dcbe·1dac·64f5·a553··7..T........d..S | ||
00000990:· | 00000990:·6e5f·57bc·28bc·261c·c03a·17e0·11ab·be94··n_W.(.&..:...... | ||
000009a0:· | 000009a0:·6571·5cb7·1ece·97b2·bcde·4d5d·6faa·0f27··eq\.......M]o..' | ||
000009b0:· | 000009b0:·45a9·b785·cbad·19b8·4177·c4e8·3f12·23b0··E.......Aw..?.#. | ||
000009c0:· | 000009c0:·fb5f·526c·5eb7·7d22·b895·15c9·64b9·49ea··._Rl^.}"....d.I. | ||
000009d0:·e | 000009d0:·ebea·f170·bb1b·eb4b·7f3f·5409·c803·9d5c··...p...K.?T....\ | ||
000009e0:· | 000009e0:·d28c·184f·2c4f·ed32·02e6·c0f4·4bd9·afab··...O,O.2....K... | ||
000009f0:· | 000009f0:·2320·0e43·b054·9e8f·fd21·0183·3588·61b7··#·.C.T...!..5.a. | ||
00000a00:· | 00000a00:·c54a·b756·9b11·108f·7b66·97aa·2b10·2323··.J.V....{f..+.## | ||
00000a10:· | 00000a10:·54ea·ca63·b956·24e0·982a·56e5·a551·782c··T..c.V$..*V..Qx, | ||
00000a20:· | 00000a20:·4e4d·022e·e07f·8bd5·8361·f704·dc8a·bd2e··NM.......a...... | ||
00000a30:· | 00000a30:·1876·db74·6929·0610·8f9b·45c7·4449·0c20··.v.ti)....E.DI.· | ||
00000a40:· | 00000a40:·1ed7·0bfa·b629·f6c7·eb19·0147·4082·3e11··.....).....G@.>. | ||
00000a50:· | 00000a50:·21ec·ed6b·0aae·8704·2c40·101e·3d3e·00a2··!..k....,@..=>.. | ||
00000a60:· | 00000a60:·6307·abf2·8e80·5330·d8a3·28ab·f28a·8051··c.....S0..(....Q | ||
00000a70:· | 00000a70:·30d8·bf8d·06d0·d7c4·e2d6·deee·08a8·62b0··0.............b. | ||
00000a80:· | 00000a80:·7f22·be95·cd75·f9d8·9fba·e66e·eaca·fba9··."...u.....n.... | ||
00000a90:· | 00000a90:·29eb·9552·0074·5273·6bee·2371·55f7·d10b··)..R.tRsk.#qU... | ||
00000aa0:· | 00000aa0:·70ed·8708·8952·571e·8beb·5279·acba·e66c··p....RW...Ry...l | ||
00000ab0:· | 00000ab0:·0037·403f·c88f·dd2e·2d02·da30·d83f·94ea··.7@?....-..0.?.. | ||
00000ac0:· | 00000ac0:·9516·0183·5c80·6b3e·5c56·ce08·a801·067b··....\.k>\V.....{ | ||
00000ad0:· | 00000ad0:·f447·8cfe·4b5d·a55d·3ed6·0888·c76d·c260··.G..K].]>....m.` | ||
00000ae0:· | 00000ae0:·3fe2·ff16·97fe·7ab8·dd11·108f·ebe5·dfa9··?.....z......... | ||
00000af0:· | 00000af0:·b7ae·5746·401e·18ec·ff47·4cc5·7df4·5bf4··..WF@....GL.}.[. | ||
00000b00:·a | 00000b00:·ab5e·96e7·8f8b·dfbe·ae6c·0032·5996·fac2··.^.......l.2Y... | ||
00000b10:· | 00000b10:·f97c·b823·e00b·6158·c185·3265·cad8·9080··.|.#..aX..2e.... | ||
00000b20:· | 00000b20:·8c4b·fc28·89d1·118b·3885·ff7f·f787·8ffa··.K.(....8....... | ||
00000b30:· | 00000b30:·f011·0345·31ae·42f6·7f4b·d555·bd21·bd41··...E1.B..K.U.!.A | ||
00000b40:· | 00000b40:·9dca·dba9·2b4f·2d92·f485·6cd9·0d99·2cbb··....+O-...l...,. | ||
00000b50:· | 00000b50:·0139·2741·9d24·a89f·f07a·5a65·bf0d·0a57··.9'A.$...zZe...W | ||
00000b60:· | 00000b60:·d96f·db52·ae65·bf2d·0c4b·9652·4be9·f2f0··.o.R.e.-.K.RK... | ||
00000b70:·c | 00000b70:·c4ca·1356·0246·38bb·83b3·7114·20fb·6d58··...V.F8...q.·.mX | ||
00000b80:· | 00000b80:·94dd·98a0·ecb7·fd70·7f5d·1b65·bfcd·02ef··.......p.].e.... | ||
00000b90:· | 00000b90:·003c·3024·3444·48d9·6f83·5186·9dee·63d9··.<0$4DH.o.Q...c. | ||
00000ba0:· | 00000ba0:·6f5b·5106·c2ee·a39b·ab4b·6b5d·7b48·395a··o[Q......Kk]{H9Z | ||
00000bb0:· | 00000bb0:·8bb3·1d38·7b49·1a1a·1e60·0304·fe3c·41f6··...8{I...`...<A. | ||
00000bc0:· | 00000bc0:·dba0·00d4·80bb·1364·bf2d·0aec·61af·0bf6··.......d.-..a... | ||
00000bd0:· | 00000bd0:·86bd·6b96·f053·841e·b2bf·4812·7d68·8c3e··..k..S....H.}h.> | ||
00000be0:· | 00000be0:·0576·1eb0·ab19·231a·7da9·3beb·97fa·7647··.v....#.}.;...vG | ||
00000bf0:· | 00000bf0:·574c·2461·f698·d949·5470·b990·fd36·3061··WL$a...ITp...60a | ||
00000c00:· | 00000c00:·c87e·ab18·6498·21ac·8bd8·1bf6·6e21·fb6d··.~..d.!.....n!.m | ||
00000c10:· | 00000c10:·5dc8·b077·5801·4ecf·1bb3·db98·7de4·0024··]..wX.N.....}..$ | ||
00000c20:· | 00000c20:·1820·042f·ecad·cb12·8db9·bbd4·57e4·a4bd··.·./........W... | ||
00000c30:· | 00000c30:·4737·4bd4·240c·fb15·b3ad·986d·853a·6163··G7K.$......m.:ac | ||
00000c40:· | 00000c40:·c6ec·3266·1b49·7284·82ee·28bc·2e28·4e47··..2f.Ir...(..(NG | ||
00000c50:· | 00000c50:·2e1e·17bd·8981·31bb·8bd9·4590·9059·b8e5··......1...E..Y.. | ||
00000c60:· | 00000c60:·d1ad·ae2a·8ee9·c8c5·e37a·d9d1·9dea·56d5··...*.....z....V. | ||
00000c70:· | 00000c70:·8849·9510·cc06·c16c·2243·8884·e858·4200··.I.....l"C...XB. | ||
00000c80:· | 00000c80:·2eb3·55b3·87fc·58db·83e4·f89f·33fa·0f47··..U...X.....3..G | ||
00000c90:· | 00000c90:·7fa5·1b38·729c·d141·ee20·7990·6728·b8d1··...8r..A.·y.g(.. | ||
00000ca0:· | 00000ca0:·fd02·0ba3·7f98·d1bf·4705·167c·195d·ecbd··........G..|.].. | ||
00000cb0:· | 00000cb0:·a001·4b4a·dd0a·38c0·e83f·c2e8·3f00·0c32··..KJ..8..?..?..2 | ||
00000cc0:· | 00000cc0:·d080·f5c1·b2bf·02fb·04dd·4f76·a37f·6ef4··..........Ov..n. | ||
00000cd0:· | 00000cd0:·47c9·1ac9·b464·7417·636f·2291·186d·7403··G....dt.co"..mt. | ||
00000ce0:· | 00000ce0:·911a·fda1·467f·a71f·dd0d·54a3·7b69·f41e··....F.....T.{i.. | ||
00000cf0:· | 00000cf0:·a3ff·ff8e·d1ff·758c·9e63·f409·4677·6974··......u..c..Fwit | ||
00000d00:·d | 00000d00:·d318·5db8·26c9·1511·b373·981d·44f6·44f6··..].&....s..D.D. | ||
00000d10:· | 00000d10:·d2a2·3ba3·b75d·c4de·16fd·36a9·9b68·74e1··..;..]....6..ht. | ||
00000d20:· | 00000d20:·1ab7·0a10·1cdd·55ae·e86d·4b25·a3db·4624··......U..mK%..F$ | ||
00000d30:· | 00000d30:·6c5d·2fef·4fc9·d09d·6a1d·11b1·f06f·986d··l]/.O...j....o.m | ||
00000d40:·c | 00000d40:·c3ec·2aaa·dc54·b99b·641b·d430·ffe4·7622··..*..T..d..0..v" | ||
00000d50:· | 00000d50:·3715·1553·045a·33fa·af79·a538·33ba·9b04··7..S.Z3..y.83... | ||
00000d60:· | 00000d60:·088a·3fa3·3f21·23af·9ca8·4013·47dd·bade··..?.?!#...@.G... | ||
00000d70:· | 00000d70:·ba33·32d2·049d·dc73·724f·f999·8012·19e0··.32....srO...... | ||
00000d80:· | 00000d80:·56ec·ed83·0413·7c8c·bab7·d2ad·2272·c8e4··V.....|....."r.. | ||
00000d90:· | 00000d90:·7e21·b7d4·9eb1·22f4·e461·4777·9386·38e2··~!...."..aGw..8. | ||
Max diff block lines reached; 6194116/6409647 bytes (96.64%) of diff not shown. |
Offset 1, 3 lines modified | Offset 1, 3 lines modified | ||
1 | -rw-r--r--···0········0········0········4·2025-02-15·14:19:14.000000·debian-binary | 1 | -rw-r--r--···0········0········0········4·2025-02-15·14:19:14.000000·debian-binary |
2 | -rw-r--r--···0········0········0····630 | 2 | -rw-r--r--···0········0········0····63068·2025-02-15·14:19:14.000000·control.tar.xz |
3 | -rw-r--r--···0········0········0·23464 | 3 | -rw-r--r--···0········0········0·23464144·2025-02-15·14:19:14.000000·data.tar.xz |
Offset 1, 13 lines modified | Offset 1, 13 lines modified | ||
1 | Package:·libcoq-stdlib | 1 | Package:·libcoq-stdlib |
2 | Source:·coq | 2 | Source:·coq |
3 | Version:·8.20.1+dfsg-1 | 3 | Version:·8.20.1+dfsg-1 |
4 | Architecture:·amd64 | 4 | Architecture:·amd64 |
5 | Maintainer:·Debian·OCaml·Maintainers·<debian-ocaml-maint@lists.debian.org> | 5 | Maintainer:·Debian·OCaml·Maintainers·<debian-ocaml-maint@lists.debian.org> |
6 | Installed-Size:·14616 | 6 | Installed-Size:·146163 |
7 | Recommends:·coq | 7 | Recommends:·coq |
8 | Breaks:·coq-doc·(<=·8.0pl1.0-2),·coq-libs·(<<·8.2.pl1),·coq-theories | 8 | Breaks:·coq-doc·(<=·8.0pl1.0-2),·coq-libs·(<<·8.2.pl1),·coq-theories |
9 | Replaces:·coq-libs·(<<·8.2.pl1),·coq-theories | 9 | Replaces:·coq-libs·(<<·8.2.pl1),·coq-theories |
10 | Provides:·coq-theories·(=·8.20.1+dfsg-1),·libcoq-stdlib-y2758 | 10 | Provides:·coq-theories·(=·8.20.1+dfsg-1),·libcoq-stdlib-y2758 |
11 | Section:·math | 11 | Section:·math |
12 | Priority:·optional | 12 | Priority:·optional |
13 | Homepage:·http://coq.inria.fr/ | 13 | Homepage:·http://coq.inria.fr/ |
Offset 2440, 53 lines modified | Offset 2440, 53 lines modified | ||
2440 | -rw-r--r--···0·root·········(0)·root·········(0)····16144·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Bool.BoolEq.html | 2440 | -rw-r--r--···0·root·········(0)·root·········(0)····16144·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Bool.BoolEq.html |
2441 | -rw-r--r--···0·root·········(0)·root·········(0)····28687·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Bool.BoolOrder.html | 2441 | -rw-r--r--···0·root·········(0)·root·········(0)····28687·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Bool.BoolOrder.html |
2442 | -rw-r--r--···0·root·········(0)·root·········(0)····34692·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Bool.Bvector.html | 2442 | -rw-r--r--···0·root·········(0)·root·········(0)····34692·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Bool.Bvector.html |
2443 | -rw-r--r--···0·root·········(0)·root·········(0)····10524·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Bool.DecBool.html | 2443 | -rw-r--r--···0·root·········(0)·root·········(0)····10524·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Bool.DecBool.html |
2444 | -rw-r--r--···0·root·········(0)·root·········(0)····14176·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Bool.IfProp.html | 2444 | -rw-r--r--···0·root·········(0)·root·········(0)····14176·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Bool.IfProp.html |
2445 | -rw-r--r--···0·root·········(0)·root·········(0)····22507·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Bool.Sumbool.html | 2445 | -rw-r--r--···0·root·········(0)·root·········(0)····22507·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Bool.Sumbool.html |
2446 | -rw-r--r--···0·root·········(0)·root·········(0)·····9445·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Bool.Zerob.html | 2446 | -rw-r--r--···0·root·········(0)·root·········(0)·····9445·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Bool.Zerob.html |
2447 | -rw-r--r--···0·root·········(0)·root·········(0)····3329 | 2447 | -rw-r--r--···0·root·········(0)·root·········(0)····33297·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Classes.CEquivalence.html |
2448 | -rw-r--r--···0·root·········(0)·root·········(0)···15300 | 2448 | -rw-r--r--···0·root·········(0)·root·········(0)···153007·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Classes.CMorphisms.html |
2449 | -rw-r--r--···0·root·········(0)·root·········(0)····952 | 2449 | -rw-r--r--···0·root·········(0)·root·········(0)····95260·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Classes.CRelationClasses.html |
2450 | -rw-r--r--···0·root·········(0)·root·········(0)····1469 | 2450 | -rw-r--r--···0·root·········(0)·root·········(0)····14696·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Classes.DecidableClass.html |
2451 | -rw-r--r--···0·root·········(0)·root·········(0)····41 | 2451 | -rw-r--r--···0·root·········(0)·root·········(0)····41301·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Classes.EquivDec.html |
2452 | -rw-r--r--···0·root·········(0)·root·········(0)····3325 | 2452 | -rw-r--r--···0·root·········(0)·root·········(0)····33255·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Classes.Equivalence.html |
2453 | -rw-r--r--···0·root·········(0)·root·········(0)·····690 | 2453 | -rw-r--r--···0·root·········(0)·root·········(0)·····6906·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Classes.Init.html |
2454 | -rw-r--r--···0·root·········(0)·root·········(0)···16174 | 2454 | -rw-r--r--···0·root·········(0)·root·········(0)···161747·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Classes.Morphisms.html |
2455 | -rw-r--r--···0·root·········(0)·root·········(0)····2601 | 2455 | -rw-r--r--···0·root·········(0)·root·········(0)····26018·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Classes.Morphisms_Prop.html |
2456 | -rw-r--r--···0·root·········(0)·root·········(0)····1502 | 2456 | -rw-r--r--···0·root·········(0)·root·········(0)····15025·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Classes.Morphisms_Relations.html |
2457 | -rw-r--r--···0·root·········(0)·root·········(0)···1296 | 2457 | -rw-r--r--···0·root·········(0)·root·········(0)···129670·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Classes.RelationClasses.html |
2458 | -rw-r--r--···0·root·········(0)·root·········(0)····6188 | 2458 | -rw-r--r--···0·root·········(0)·root·········(0)····61888·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Classes.RelationPairs.html |
2459 | -rw-r--r--···0·root·········(0)·root·········(0)····2748 | 2459 | -rw-r--r--···0·root·········(0)·root·········(0)····27487·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Classes.SetoidClass.html |
2460 | -rw-r--r--···0·root·········(0)·root·········(0)····3290 | 2460 | -rw-r--r--···0·root·········(0)·root·········(0)····32904·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Classes.SetoidDec.html |
2461 | -rw-r--r--···0·root·········(0)·root·········(0)····3342 | 2461 | -rw-r--r--···0·root·········(0)·root·········(0)····33427·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Classes.SetoidTactics.html |
2462 | -rw-r--r--···0·root·········(0)·root·········(0)·····3600·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Compat.AdmitAxiom.html | 2462 | -rw-r--r--···0·root·········(0)·root·········(0)·····3600·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Compat.AdmitAxiom.html |
2463 | -rw-r--r--···0·root·········(0)·root·········(0)····36191·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Compat.Coq818.html | 2463 | -rw-r--r--···0·root·········(0)·root·········(0)····36191·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Compat.Coq818.html |
2464 | -rw-r--r--···0·root·········(0)·root·········(0)·····2919·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Compat.Coq819.html | 2464 | -rw-r--r--···0·root·········(0)·root·········(0)·····2919·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Compat.Coq819.html |
2465 | -rw-r--r--···0·root·········(0)·root·········(0)·····2701·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Compat.Coq820.html | 2465 | -rw-r--r--···0·root·········(0)·root·········(0)·····2701·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Compat.Coq820.html |
2466 | -rw-r--r--···0·root·········(0)·root·········(0)···6388 | 2466 | -rw-r--r--···0·root·········(0)·root·········(0)···638862·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FMapAVL.html |
2467 | -rw-r--r--···0·root·········(0)·root·········(0)···491 | 2467 | -rw-r--r--···0·root·········(0)·root·········(0)···491502·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FMapFacts.html |
2468 | -rw-r--r--···0·root·········(0)·root·········(0)···2495 | 2468 | -rw-r--r--···0·root·········(0)·root·········(0)···249552·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FMapFullAVL.html |
2469 | -rw-r--r--···0·root·········(0)·root·········(0)···1342 | 2469 | -rw-r--r--···0·root·········(0)·root·········(0)···134223·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FMapInterface.html |
2470 | -rw-r--r--···0·root·········(0)·root·········(0)···3125 | 2470 | -rw-r--r--···0·root·········(0)·root·········(0)···312575·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FMapList.html |
2471 | -rw-r--r--···0·root·········(0)·root·········(0)···272480·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FMapPositive.html | 2471 | -rw-r--r--···0·root·········(0)·root·········(0)···272480·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FMapPositive.html |
2472 | -rw-r--r--···0·root·········(0)·root·········(0)···273119·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FMapWeakList.html | 2472 | -rw-r--r--···0·root·········(0)·root·········(0)···273119·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FMapWeakList.html |
2473 | -rw-r--r--···0·root·········(0)·root·········(0)·····4419·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FMaps.html | 2473 | -rw-r--r--···0·root·········(0)·root·········(0)·····4419·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FMaps.html |
2474 | -rw-r--r--···0·root·········(0)·root·········(0)·····898 | 2474 | -rw-r--r--···0·root·········(0)·root·········(0)·····8981·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FSetAVL.html |
2475 | -rw-r--r--···0·root·········(0)·root·········(0)···2411 | 2475 | -rw-r--r--···0·root·········(0)·root·········(0)···241121·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FSetBridge.html |
2476 | -rw-r--r--···0·root·········(0)·root·········(0)···2417 | 2476 | -rw-r--r--···0·root·········(0)·root·········(0)···241710·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FSetCompat.html |
2477 | -rw-r--r--···0·root·········(0)·root·········(0)···2537 | 2477 | -rw-r--r--···0·root·········(0)·root·········(0)···253724·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FSetDecide.html |
2478 | -rw-r--r--···0·root·········(0)·root·········(0)···24469 | 2478 | -rw-r--r--···0·root·········(0)·root·········(0)···244693·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FSetEqProperties.html |
2479 | -rw-r--r--···0·root·········(0)·root·········(0)····983 | 2479 | -rw-r--r--···0·root·········(0)·root·········(0)····98373·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FSetFacts.html |
2480 | -rw-r--r--···0·root·········(0)·root·········(0)···22959 | 2480 | -rw-r--r--···0·root·········(0)·root·········(0)···229599·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FSetInterface.html |
2481 | -rw-r--r--···0·root·········(0)·root·········(0)·····584 | 2481 | -rw-r--r--···0·root·········(0)·root·········(0)·····5846·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FSetList.html |
2482 | -rw-r--r--···0·root·········(0)·root·········(0)···284090·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FSetPositive.html | 2482 | -rw-r--r--···0·root·········(0)·root·········(0)···284090·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FSetPositive.html |
2483 | -rw-r--r--···0·root·········(0)·root·········(0)···330840·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FSetProperties.html | 2483 | -rw-r--r--···0·root·········(0)·root·········(0)···330840·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FSetProperties.html |
2484 | -rw-r--r--···0·root·········(0)·root·········(0)····3050 | 2484 | -rw-r--r--···0·root·········(0)·root·········(0)····30504·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FSetToFiniteSet.html |
2485 | -rw-r--r--···0·root·········(0)·root·········(0)·····605 | 2485 | -rw-r--r--···0·root·········(0)·root·········(0)·····6059·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FSetWeakList.html |
2486 | -rw-r--r--···0·root·········(0)·root·········(0)·····5771·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FSets.html | 2486 | -rw-r--r--···0·root·········(0)·root·········(0)·····5771·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FSets.html |
2487 | -rw-r--r--···0·root·········(0)·root·········(0)····43972·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Floats.FloatAxioms.html | 2487 | -rw-r--r--···0·root·········(0)·root·········(0)····43972·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Floats.FloatAxioms.html |
2488 | -rw-r--r--···0·root·········(0)·root·········(0)·····3707·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Floats.FloatClass.html | 2488 | -rw-r--r--···0·root·········(0)·root·········(0)·····3707·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Floats.FloatClass.html |
2489 | -rw-r--r--···0·root·········(0)·root·········(0)·····8314·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Floats.FloatLemmas.html | 2489 | -rw-r--r--···0·root·········(0)·root·········(0)·····8314·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Floats.FloatLemmas.html |
2490 | -rw-r--r--···0·root·········(0)·root·········(0)····21337·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Floats.FloatOps.html | 2490 | -rw-r--r--···0·root·········(0)·root·········(0)····21337·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Floats.FloatOps.html |
2491 | -rw-r--r--···0·root·········(0)·root·········(0)·····5273·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Floats.Floats.html | 2491 | -rw-r--r--···0·root·········(0)·root·········(0)·····5273·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Floats.Floats.html |
2492 | -rw-r--r--···0·root·········(0)·root·········(0)····29739·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Floats.PrimFloat.html | 2492 | -rw-r--r--···0·root·········(0)·root·········(0)····29739·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Floats.PrimFloat.html |
Offset 2502, 21 lines modified | Offset 2502, 21 lines modified | ||
2502 | -rw-r--r--···0·root·········(0)·root·········(0)·····9933·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Init.Number.html | 2502 | -rw-r--r--···0·root·········(0)·root·········(0)·····9933·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Init.Number.html |
2503 | -rw-r--r--···0·root·········(0)·root·········(0)····64638·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Init.Peano.html | 2503 | -rw-r--r--···0·root·········(0)·root·········(0)····64638·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Init.Peano.html |
2504 | -rw-r--r--···0·root·········(0)·root·········(0)····12568·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Init.Prelude.html | 2504 | -rw-r--r--···0·root·········(0)·root·········(0)····12568·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Init.Prelude.html |
2505 | -rw-r--r--···0·root·········(0)·root·········(0)···588062·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Init.Specif.html | 2505 | -rw-r--r--···0·root·········(0)·root·········(0)···588062·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Init.Specif.html |
2506 | -rw-r--r--···0·root·········(0)·root·········(0)····69736·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Init.Tactics.html | 2506 | -rw-r--r--···0·root·········(0)·root·········(0)····69736·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Init.Tactics.html |
2507 | -rw-r--r--···0·root·········(0)·root·········(0)····24852·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Init.Tauto.html | 2507 | -rw-r--r--···0·root·········(0)·root·········(0)····24852·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Init.Tauto.html |
2508 | -rw-r--r--···0·root·········(0)·root·········(0)····56558·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Init.Wf.html | 2508 | -rw-r--r--···0·root·········(0)·root·········(0)····56558·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Init.Wf.html |
2509 | -rw-r--r--···0·root·········(0)·root·········(0)··1005 | 2509 | -rw-r--r--···0·root·········(0)·root·········(0)··1005691·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Lists.List.html |
2510 | -rw-r--r--···0·root·········(0)·root·········(0)····23118·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Lists.ListDec.html | 2510 | -rw-r--r--···0·root·········(0)·root·········(0)····23118·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Lists.ListDec.html |
2511 | -rw-r--r--···0·root·········(0)·root·········(0)···113626·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Lists.ListSet.html | 2511 | -rw-r--r--···0·root·········(0)·root·········(0)···113626·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Lists.ListSet.html |
2512 | -rw-r--r--···0·root·········(0)·root·········(0)····15205·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Lists.ListTactics.html | 2512 | -rw-r--r--···0·root·········(0)·root·········(0)····15205·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Lists.ListTactics.html |
2513 | -rw-r--r--···0·root·········(0)·root·········(0)···23638 | 2513 | -rw-r--r--···0·root·········(0)·root·········(0)···236380·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Lists.SetoidList.html |
2514 | -rw-r--r--···0·root·········(0)·root·········(0)····44917·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Lists.SetoidPermutation.html | 2514 | -rw-r--r--···0·root·········(0)·root·········(0)····44917·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Lists.SetoidPermutation.html |
2515 | -rw-r--r--···0·root·········(0)·root·········(0)····3755 | 2515 | -rw-r--r--···0·root·········(0)·root·········(0)····37550·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Lists.StreamMemo.html |
2516 | -rw-r--r--···0·root·········(0)·root·········(0)····57012·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Lists.Streams.html | 2516 | -rw-r--r--···0·root·········(0)·root·········(0)····57012·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Lists.Streams.html |
2517 | -rw-r--r--···0·root·········(0)·root·········(0)····54223·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.Adjointification.html | 2517 | -rw-r--r--···0·root·········(0)·root·········(0)····54223·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.Adjointification.html |
2518 | -rw-r--r--···0·root·········(0)·root·········(0)····28317·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.Berardi.html | 2518 | -rw-r--r--···0·root·········(0)·root·········(0)····28317·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.Berardi.html |
2519 | -rw-r--r--···0·root·········(0)·root·········(0)···238047·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.ChoiceFacts.html | 2519 | -rw-r--r--···0·root·········(0)·root·········(0)···238047·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.ChoiceFacts.html |
2520 | -rw-r--r--···0·root·········(0)·root·········(0)·····3121·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.Classical.html | 2520 | -rw-r--r--···0·root·········(0)·root·········(0)·····3121·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.Classical.html |
2521 | -rw-r--r--···0·root·········(0)·root·········(0)····13475·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.ClassicalChoice.html | 2521 | -rw-r--r--···0·root·········(0)·root·········(0)····13475·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.ClassicalChoice.html |
2522 | -rw-r--r--···0·root·········(0)·root·········(0)····23909·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.ClassicalDescription.html | 2522 | -rw-r--r--···0·root·········(0)·root·········(0)····23909·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.ClassicalDescription.html |
Offset 2548, 122 lines modified | Offset 2548, 122 lines modified | ||
2548 | -rw-r--r--···0·root·········(0)·root·········(0)·····7490·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.PropFacts.html | 2548 | -rw-r--r--···0·root·········(0)·root·········(0)·····7490·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.PropFacts.html |
2549 | -rw-r--r--···0·root·········(0)·root·········(0)·····7646·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.RelationalChoice.html | 2549 | -rw-r--r--···0·root·········(0)·root·········(0)·····7646·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.RelationalChoice.html |
2550 | -rw-r--r--···0·root·········(0)·root·········(0)·····3397·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.SetIsType.html | 2550 | -rw-r--r--···0·root·········(0)·root·········(0)·····3397·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.SetIsType.html |
2551 | -rw-r--r--···0·root·········(0)·root·········(0)····17187·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.SetoidChoice.html | 2551 | -rw-r--r--···0·root·········(0)·root·········(0)····17187·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.SetoidChoice.html |
2552 | -rw-r--r--···0·root·········(0)·root·········(0)·····9458·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.StrictProp.html | 2552 | -rw-r--r--···0·root·········(0)·root·········(0)·····9458·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.StrictProp.html |
2553 | -rw-r--r--···0·root·········(0)·root·········(0)····57550·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.WKL.html | 2553 | -rw-r--r--···0·root·········(0)·root·········(0)····57550·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.WKL.html |
2554 | -rw-r--r--···0·root·········(0)·root·········(0)····23285·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.WeakFan.html | 2554 | -rw-r--r--···0·root·········(0)·root·········(0)····23285·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.WeakFan.html |
2555 | -rw-r--r--···0·root·········(0)·root·········(0)···198 | 2555 | -rw-r--r--···0·root·········(0)·root·········(0)···198539·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.MSets.MSetAVL.html |
2556 | -rw-r--r--···0·root·········(0)·root·········(0)···253 | 2556 | -rw-r--r--···0·root·········(0)·root·········(0)···253490·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.MSets.MSetDecide.html |
2557 | -rw-r--r--···0·root·········(0)·root·········(0)···24542 | 2557 | -rw-r--r--···0·root·········(0)·root·········(0)···245421·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.MSets.MSetEqProperties.html |
2558 | -rw-r--r--···0·root·········(0)·root·········(0)···14762 | 2558 | -rw-r--r--···0·root·········(0)·root·········(0)···147620·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.MSets.MSetFacts.html |
2559 | -rw-r--r--···0·root·········(0)·root·········(0)···2398 | 2559 | -rw-r--r--···0·root·········(0)·root·········(0)···239833·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.MSets.MSetGenTree.html |
2560 | -rw-r--r--···0·root·········(0)·root·········(0)···34577 | 2560 | -rw-r--r--···0·root·········(0)·root·········(0)···345771·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.MSets.MSetInterface.html |
2561 | -rw-r--r--···0·root·········(0)·root·········(0)···2034 | 2561 | -rw-r--r--···0·root·········(0)·root·········(0)···203404·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.MSets.MSetList.html |
2562 | -rw-r--r--···0·root·········(0)·root·········(0)···233427·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.MSets.MSetPositive.html | 2562 | -rw-r--r--···0·root·········(0)·root·········(0)···233427·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.MSets.MSetPositive.html |
2563 | -rw-r--r--···0·root·········(0)·root·········(0)···3322 | 2563 | -rw-r--r--···0·root·········(0)·root·········(0)···332267·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.MSets.MSetProperties.html |
2564 | -rw-r--r--···0·root·········(0)·root·········(0)···463 | 2564 | -rw-r--r--···0·root·········(0)·root·········(0)···463865·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.MSets.MSetRBT.html |
2565 | -rw-r--r--···0·root·········(0)·root·········(0)····3036 | 2565 | -rw-r--r--···0·root·········(0)·root·········(0)····30363·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.MSets.MSetToFiniteSet.html |
2566 | -rw-r--r--···0·root·········(0)·root·········(0)···1279 | 2566 | -rw-r--r--···0·root·········(0)·root·········(0)···127902·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.MSets.MSetWeakList.html |
2567 | -rw-r--r--···0·root·········(0)·root·········(0)·····5306·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.MSets.MSets.html | 2567 | -rw-r--r--···0·root·········(0)·root·········(0)·····5306·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.MSets.MSets.html |
2568 | -rw-r--r--···0·root·········(0)·root·········(0)···28109 | 2568 | -rw-r--r--···0·root·········(0)·root·········(0)···281095·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.NArith.BinNat.html |
2569 | -rw-r--r--···0·root·········(0)·root·········(0)····990 | 2569 | -rw-r--r--···0·root·········(0)·root·········(0)····99064·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.NArith.BinNatDef.html |
2570 | -rw-r--r--···0·root·········(0)·root·········(0)·····7411·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.NArith.NArith.html | 2570 | -rw-r--r--···0·root·········(0)·root·········(0)·····7411·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.NArith.NArith.html |
2571 | -rw-r--r--···0·root·········(0)·root·········(0)····88281·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.NArith.Ndec.html | 2571 | -rw-r--r--···0·root·········(0)·root·········(0)····88281·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.NArith.Ndec.html |
2572 | -rw-r--r--···0·root·········(0)·root·········(0)·····8571·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.NArith.Ndiv_def.html | 2572 | -rw-r--r--···0·root·········(0)·root·········(0)·····8571·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.NArith.Ndiv_def.html |
2573 | -rw-r--r--···0·root·········(0)·root·········(0)·····6254·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.NArith.Ngcd_def.html | 2573 | -rw-r--r--···0·root·········(0)·root·········(0)·····6254·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.NArith.Ngcd_def.html |
2574 | -rw-r--r--···0·root·········(0)·root·········(0)····6914 | 2574 | -rw-r--r--···0·root·········(0)·root·········(0)····69143·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.NArith.Nnat.html |
2575 | -rw-r--r--···0·root·········(0)·root·········(0)·····3820·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.NArith.Nsqrt_def.html | 2575 | -rw-r--r--···0·root·········(0)·root·········(0)·····3820·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.NArith.Nsqrt_def.html |
2576 | -rw-r--r--···0·root·········(0)·root·········(0)····1173 | 2576 | -rw-r--r--···0·root·········(0)·root·········(0)····11734·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.AltBinNotations.html |
2577 | -rw-r--r--···0·root·········(0)·root·········(0)····1556 | 2577 | -rw-r--r--···0·root·········(0)·root·········(0)····15562·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.BinNums.html |
2578 | -rw-r--r--···0·root·········(0)·root·········(0)·····4226·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.Cyclic.Abstract.CarryType.html | 2578 | -rw-r--r--···0·root·········(0)·root·········(0)·····4226·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.Cyclic.Abstract.CarryType.html |
2579 | -rw-r--r--···0·root·········(0)·root·········(0)···21024 | 2579 | -rw-r--r--···0·root·········(0)·root·········(0)···210249·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.Cyclic.Abstract.CyclicAxioms.html |
2580 | -rw-r--r--···0·root·········(0)·root·········(0)····14968·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.Cyclic.Abstract.DoubleType.html | 2580 | -rw-r--r--···0·root·········(0)·root·········(0)····14968·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.Cyclic.Abstract.DoubleType.html |
2581 | -rw-r--r--···0·root·········(0)·root·········(0)····5472 | 2581 | -rw-r--r--···0·root·········(0)·root·········(0)····54728·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.Cyclic.Abstract.NZCyclic.html |
2582 | -rw-r--r--···0·root·········(0)·root·········(0)····7729 | 2582 | -rw-r--r--···0·root·········(0)·root·········(0)····77297·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.Cyclic.Int63.Cyclic63.html |
2583 | -rw-r--r--···0·root·········(0)·root·········(0)····18492·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.Cyclic.Int63.PrimInt63.html | 2583 | -rw-r--r--···0·root·········(0)·root·········(0)····18492·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.Cyclic.Int63.PrimInt63.html |
2584 | -rw-r--r--···0·root·········(0)·root·········(0)····1922 | 2584 | -rw-r--r--···0·root·········(0)·root·········(0)····19223·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.Cyclic.Int63.Ring63.html |
2585 | -rw-r--r--···0·root·········(0)·root·········(0)···103930·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.Cyclic.Int63.Sint63.html | 2585 | -rw-r--r--···0·root·········(0)·root·········(0)···103930·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.Cyclic.Int63.Sint63.html |
2586 | -rw-r--r--···0·root·········(0)·root·········(0)···476321·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.Cyclic.Int63.Uint63.html | 2586 | -rw-r--r--···0·root·········(0)·root·········(0)···476321·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.Cyclic.Int63.Uint63.html |
2587 | -rw-r--r--···0·root·········(0)·root·········(0)···15191 | 2587 | -rw-r--r--···0·root·········(0)·root·········(0)···151919·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.DecimalFacts.html |
2588 | -rw-r--r--···0·root·········(0)·root·········(0)····2085 | 2588 | -rw-r--r--···0·root·········(0)·root·········(0)····20859·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.DecimalN.html |
2589 | -rw-r--r--···0·root·········(0)·root·········(0)····6011 | 2589 | -rw-r--r--···0·root·········(0)·root·········(0)····60111·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.DecimalNat.html |
2590 | -rw-r--r--···0·root·········(0)·root·········(0)····7825 | 2590 | -rw-r--r--···0·root·········(0)·root·········(0)····78257·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.DecimalPos.html |
2591 | -rw-r--r--···0·root·········(0)·root·········(0)····5283 | 2591 | -rw-r--r--···0·root·········(0)·root·········(0)····52838·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.DecimalQ.html |
2592 | -rw-r--r--···0·root·········(0)·root·········(0)····1656 | 2592 | -rw-r--r--···0·root·········(0)·root·········(0)····16564·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.DecimalR.html |
2593 | -rw-r--r--···0·root·········(0)·root·········(0)····569 | 2593 | -rw-r--r--···0·root·········(0)·root·········(0)····56970·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.DecimalString.html |
2594 | -rw-r--r--···0·root·········(0)·root·········(0)····1729 | 2594 | -rw-r--r--···0·root·········(0)·root·········(0)····17291·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.DecimalZ.html |
2595 | -rw-r--r--···0·root·········(0)·root·········(0)···16447 | 2595 | -rw-r--r--···0·root·········(0)·root·········(0)···164471·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.HexadecimalFacts.html |
2596 | -rw-r--r--···0·root·········(0)·root·········(0)····2132 | 2596 | -rw-r--r--···0·root·········(0)·root·········(0)····21325·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.HexadecimalN.html |
2597 | -rw-r--r--···0·root·········(0)·root·········(0)····721 | 2597 | -rw-r--r--···0·root·········(0)·root·········(0)····72170·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.HexadecimalNat.html |
2598 | -rw-r--r--···0·root·········(0)·root·········(0)····9474 | 2598 | -rw-r--r--···0·root·········(0)·root·········(0)····94747·2025-02-15·14:19:14.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.HexadecimalPos.html |
Max diff block lines reached; 34826/64537 bytes (53.96%) of diff not shown. |
Offset 54, 15 lines modified | Offset 54, 15 lines modified | ||
54 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.Arith.EqNat.html#"><span·class="id"·title="library">EqNat</span></a>.<br/> | 54 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.Arith.EqNat.html#"><span·class="id"·title="library">EqNat</span></a>.<br/> |
55 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.Arith.Wf_nat.html#"><span·class="id"·title="library">Wf_nat</span></a>.<br/> | 55 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.Arith.Wf_nat.html#"><span·class="id"·title="library">Wf_nat</span></a>.<br/> |
56 | <br/> | 56 | <br/> |
57 | </div> | 57 | </div> |
58 | <div·class="doc"> | 58 | <div·class="doc"> |
59 | <a·id="lab29 | 59 | <a·id="lab291"></a><h1·class="section"><span·class="inlinecode"><span·class="id"·title="var">arith</span></span>·hint·database</h1> |
60 | </div> | 60 | </div> |
61 | <div·class="code"> | 61 | <div·class="code"> |
62 | <br/> | 62 | <br/> |
63 | #[<span·class="id"·title="var">global</span>]<br/> | 63 | #[<span·class="id"·title="var">global</span>]<br/> |
64 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Resolve</span>·<span·class="id"·title="var">eq_nat_refl</span>:·<span·class="id"·title="var">arith</span>.<br/> | 64 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Resolve</span>·<span·class="id"·title="var">eq_nat_refl</span>:·<span·class="id"·title="var">arith</span>.<br/> |
Offset 76, 15 lines modified | Offset 76, 15 lines modified | ||
76 | #[<span·class="id"·title="var">global</span>]<br/> | 76 | #[<span·class="id"·title="var">global</span>]<br/> |
77 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Immediate</span>·<span·class="id"·title="var">in_int_Sp_q</span>·<span·class="id"·title="var">exists_le_S</span>·<span·class="id"·title="var">exists_S_le</span>:·<span·class="id"·title="var">arith</span>.<br/> | 77 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Immediate</span>·<span·class="id"·title="var">in_int_Sp_q</span>·<span·class="id"·title="var">exists_le_S</span>·<span·class="id"·title="var">exists_S_le</span>:·<span·class="id"·title="var">arith</span>.<br/> |
78 | <br/> | 78 | <br/> |
79 | </div> | 79 | </div> |
80 | <div·class="doc"> | 80 | <div·class="doc"> |
81 | <a·id="lab29 | 81 | <a·id="lab292"></a><h2·class="section"><span·class="inlinecode"><span·class="id"·title="var">lt</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">le</span></span></h2> |
82 | </div> | 82 | </div> |
83 | <div·class="code"> | 83 | <div·class="code"> |
84 | #[<span·class="id"·title="var">global</span>]<br/> | 84 | #[<span·class="id"·title="var">global</span>]<br/> |
85 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Resolve</span>·<span·class="id"·title="var">Nat.le_trans</span>:·<span·class="id"·title="var">arith</span>.·#[<span·class="id"·title="var">global</span>]<br/> | 85 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Resolve</span>·<span·class="id"·title="var">Nat.le_trans</span>:·<span·class="id"·title="var">arith</span>.·#[<span·class="id"·title="var">global</span>]<br/> |
86 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Immediate</span>·<span·class="id"·title="var">Nat.le_antisymm</span>:·<span·class="id"·title="var">arith</span>.·#[<span·class="id"·title="var">global</span>]<br/> | 86 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Immediate</span>·<span·class="id"·title="var">Nat.le_antisymm</span>:·<span·class="id"·title="var">arith</span>.·#[<span·class="id"·title="var">global</span>]<br/> |
87 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Resolve</span>·<span·class="id"·title="var">Nat.le_0_l</span>·<span·class="id"·title="var">Nat.nle_succ_0</span>:·<span·class="id"·title="var">arith</span>.·#[<span·class="id"·title="var">global</span>]<br/> | 87 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Resolve</span>·<span·class="id"·title="var">Nat.le_0_l</span>·<span·class="id"·title="var">Nat.nle_succ_0</span>:·<span·class="id"·title="var">arith</span>.·#[<span·class="id"·title="var">global</span>]<br/> |
Offset 52, 15 lines modified | Offset 52, 15 lines modified | ||
52 | <br/> | 52 | <br/> |
53 | </div> | 53 | </div> |
54 | <div·class="doc"> | 54 | <div·class="doc"> |
55 | Equality·on·natural·numbers· | 55 | Equality·on·natural·numbers· |
56 | <div·class="paragraph">·</div> | 56 | <div·class="paragraph">·</div> |
57 | <a·id="lab2 | 57 | <a·id="lab293"></a><h1·class="section">Propositional·equality</h1> |
58 | </div> | 58 | </div> |
59 | <div·class="code"> | 59 | <div·class="code"> |
60 | <br/> | 60 | <br/> |
61 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="eq_nat"·class="idref"·href="#eq_nat"><span·class="id"·title="definition">eq_nat</span></a>·<a·id="n:1"·class="idref"·href="#n:1"><span·class="id"·title="binder">n</span></a>·<a·id="m:2"·class="idref"·href="#m:2"><span·class="id"·title="binder">m</span></a>·:·<span·class="id"·title="keyword">Prop</span>·:=<br/> | 61 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="eq_nat"·class="idref"·href="#eq_nat"><span·class="id"·title="definition">eq_nat</span></a>·<a·id="n:1"·class="idref"·href="#n:1"><span·class="id"·title="binder">n</span></a>·<a·id="m:2"·class="idref"·href="#m:2"><span·class="id"·title="binder">m</span></a>·:·<span·class="id"·title="keyword">Prop</span>·:=<br/> |
62 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Arith.EqNat.html#n:1"><span·class="id"·title="variable">n</span></a>,·<a·class="idref"·href="Coq.Arith.EqNat.html#m:2"><span·class="id"·title="variable">m</span></a>·<span·class="id"·title="keyword">with</span><br/> | 62 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Arith.EqNat.html#n:1"><span·class="id"·title="variable">n</span></a>,·<a·class="idref"·href="Coq.Arith.EqNat.html#m:2"><span·class="id"·title="variable">m</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 145, 15 lines modified | Offset 145, 15 lines modified | ||
145 | <a·class="idref"·href="Coq.Arith.PeanoNat.html#Aeq:11"><span·class="id"·title="variable">Aeq</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#a:12"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#a:12"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Classes.Morphisms.html#Proper"><span·class="id"·title="class">Proper</span></a>·(<a·class="idref"·href="Coq.Init.Logic.html#eq"><span·class="id"·title="inductive">eq</span></a><a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a><a·class="idref"·href="Coq.Arith.PeanoNat.html#Aeq:11"><span·class="id"·title="variable">Aeq</span></a><a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a><a·class="idref"·href="Coq.Arith.PeanoNat.html#Aeq:11"><span·class="id"·title="variable">Aeq</span></a>)·<a·class="idref"·href="Coq.Arith.PeanoNat.html#f:13"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 145 | <a·class="idref"·href="Coq.Arith.PeanoNat.html#Aeq:11"><span·class="id"·title="variable">Aeq</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#a:12"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#a:12"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Classes.Morphisms.html#Proper"><span·class="id"·title="class">Proper</span></a>·(<a·class="idref"·href="Coq.Init.Logic.html#eq"><span·class="id"·title="inductive">eq</span></a><a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a><a·class="idref"·href="Coq.Arith.PeanoNat.html#Aeq:11"><span·class="id"·title="variable">Aeq</span></a><a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a><a·class="idref"·href="Coq.Arith.PeanoNat.html#Aeq:11"><span·class="id"·title="variable">Aeq</span></a>)·<a·class="idref"·href="Coq.Arith.PeanoNat.html#f:13"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
146 | <span·class="id"·title="keyword">forall</span>·<a·id="n:14"·class="idref"·href="#n:14"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>,·<a·class="idref"·href="Coq.Arith.PeanoNat.html#Aeq:11"><span·class="id"·title="variable">Aeq</span></a>·(<a·class="idref"·href="Coq.Arith.PeanoNat.html#Nat.recursion"><span·class="id"·title="definition">recursion</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#a:12"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#f:13"><span·class="id"·title="variable">f</span></a>·(<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:14"><span·class="id"·title="variable">n</span></a>))·(<a·class="idref"·href="Coq.Arith.PeanoNat.html#f:13"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:14"><span·class="id"·title="variable">n</span></a>·(<a·class="idref"·href="Coq.Arith.PeanoNat.html#Nat.recursion"><span·class="id"·title="definition">recursion</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#a:12"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#f:13"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:14"><span·class="id"·title="variable">n</span></a>)).<br/> | 146 | <span·class="id"·title="keyword">forall</span>·<a·id="n:14"·class="idref"·href="#n:14"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>,·<a·class="idref"·href="Coq.Arith.PeanoNat.html#Aeq:11"><span·class="id"·title="variable">Aeq</span></a>·(<a·class="idref"·href="Coq.Arith.PeanoNat.html#Nat.recursion"><span·class="id"·title="definition">recursion</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#a:12"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#f:13"><span·class="id"·title="variable">f</span></a>·(<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:14"><span·class="id"·title="variable">n</span></a>))·(<a·class="idref"·href="Coq.Arith.PeanoNat.html#f:13"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:14"><span·class="id"·title="variable">n</span></a>·(<a·class="idref"·href="Coq.Arith.PeanoNat.html#Nat.recursion"><span·class="id"·title="definition">recursion</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#a:12"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#f:13"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:14"><span·class="id"·title="variable">n</span></a>)).<br/> |
147 | <br/> | 147 | <br/> |
148 | </div> | 148 | </div> |
149 | <div·class="doc"> | 149 | <div·class="doc"> |
150 | <a·id="lab27 | 150 | <a·id="lab276"></a><h2·class="section">Remaining·constants·not·defined·in·Coq.Init.Nat</h2> |
151 | <div·class="paragraph">·</div> | 151 | <div·class="paragraph">·</div> |
152 | ·NB:·Aliasing·<span·class="inlinecode"><span·class="id"·title="var">le</span></span>·is·mandatory,·since·only·a·Definition·can·implement | 152 | ·NB:·Aliasing·<span·class="inlinecode"><span·class="id"·title="var">le</span></span>·is·mandatory,·since·only·a·Definition·can·implement |
153 | ····an·interface·Parameter...· | 153 | ····an·interface·Parameter...· |
154 | </div> | 154 | </div> |
155 | <div·class="code"> | 155 | <div·class="code"> |
Offset 163, 15 lines modified | Offset 163, 15 lines modified | ||
163 | <span·class="id"·title="keyword">Definition</span>·<a·id="Nat.le"·class="idref"·href="#Nat.le"><span·class="id"·title="definition">le</span></a>·:=·<a·class="idref"·href="Coq.Init.Peano.html#le"><span·class="id"·title="inductive">Peano.le</span></a>.<br/> | 163 | <span·class="id"·title="keyword">Definition</span>·<a·id="Nat.le"·class="idref"·href="#Nat.le"><span·class="id"·title="definition">le</span></a>·:=·<a·class="idref"·href="Coq.Init.Peano.html#le"><span·class="id"·title="inductive">Peano.le</span></a>.<br/> |
164 | <span·class="id"·title="keyword">Definition</span>·<a·id="Nat.lt"·class="idref"·href="#Nat.lt"><span·class="id"·title="definition">lt</span></a>·:=·<a·class="idref"·href="Coq.Init.Peano.html#lt"><span·class="id"·title="definition">Peano.lt</span></a>.<br/> | 164 | <span·class="id"·title="keyword">Definition</span>·<a·id="Nat.lt"·class="idref"·href="#Nat.lt"><span·class="id"·title="definition">lt</span></a>·:=·<a·class="idref"·href="Coq.Init.Peano.html#lt"><span·class="id"·title="definition">Peano.lt</span></a>.<br/> |
165 | <br/> | 165 | <br/> |
166 | </div> | 166 | </div> |
167 | <div·class="doc"> | 167 | <div·class="doc"> |
168 | <a·id="lab2 | 168 | <a·id="lab277"></a><h2·class="section">Basic·specifications·:·pred·add·sub·mul</h2> |
169 | </div> | 169 | </div> |
170 | <div·class="code"> | 170 | <div·class="code"> |
171 | <br/> | 171 | <br/> |
172 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Nat.pred_succ"·class="idref"·href="#Nat.pred_succ"><span·class="id"·title="lemma">pred_succ</span></a>·<a·id="n:15"·class="idref"·href="#n:15"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.Arith.PeanoNat.html#Nat.pred"><span·class="id"·title="definition">pred</span></a>·(<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:15"><span·class="id"·title="variable">n</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:15"><span·class="id"·title="variable">n</span></a>.<br/> | 172 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Nat.pred_succ"·class="idref"·href="#Nat.pred_succ"><span·class="id"·title="lemma">pred_succ</span></a>·<a·id="n:15"·class="idref"·href="#n:15"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.Arith.PeanoNat.html#Nat.pred"><span·class="id"·title="definition">pred</span></a>·(<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:15"><span·class="id"·title="variable">n</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:15"><span·class="id"·title="variable">n</span></a>.<br/> |
173 | · | 173 | · |
Offset 205, 15 lines modified | Offset 205, 15 lines modified | ||
205 | <br/> | 205 | <br/> |
206 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Nat.lt_succ_r"·class="idref"·href="#Nat.lt_succ_r"><span·class="id"·title="lemma">lt_succ_r</span></a>·<a·id="n:33"·class="idref"·href="#n:33"><span·class="id"·title="binder">n</span></a>·<a·id="m:34"·class="idref"·href="#m:34"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:33"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Peano.html#::nat_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#m:34"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:33"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Peano.html#cb53cf0ee22c036a03b4a9281c68b5a3"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#m:34"><span·class="id"·title="variable">m</span></a>.<br/> | 206 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Nat.lt_succ_r"·class="idref"·href="#Nat.lt_succ_r"><span·class="id"·title="lemma">lt_succ_r</span></a>·<a·id="n:33"·class="idref"·href="#n:33"><span·class="id"·title="binder">n</span></a>·<a·id="m:34"·class="idref"·href="#m:34"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:33"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Peano.html#::nat_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#m:34"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:33"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Peano.html#cb53cf0ee22c036a03b4a9281c68b5a3"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#m:34"><span·class="id"·title="variable">m</span></a>.<br/> |
207 | <br/> | 207 | <br/> |
208 | </div> | 208 | </div> |
209 | <div·class="doc"> | 209 | <div·class="doc"> |
210 | <a·id="lab2 | 210 | <a·id="lab278"></a><h2·class="section">Boolean·comparisons</h2> |
211 | </div> | 211 | </div> |
212 | <div·class="code"> | 212 | <div·class="code"> |
213 | <br/> | 213 | <br/> |
214 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Nat.eqb_eq"·class="idref"·href="#Nat.eqb_eq"><span·class="id"·title="lemma">eqb_eq</span></a>·<a·id="n:35"·class="idref"·href="#n:35"><span·class="id"·title="binder">n</span></a>·<a·id="m:36"·class="idref"·href="#m:36"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Arith.PeanoNat.html#Nat.eqb"><span·class="id"·title="definition">eqb</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:35"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#m:36"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:35"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#m:36"><span·class="id"·title="variable">m</span></a>.<br/> | 214 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Nat.eqb_eq"·class="idref"·href="#Nat.eqb_eq"><span·class="id"·title="lemma">eqb_eq</span></a>·<a·id="n:35"·class="idref"·href="#n:35"><span·class="id"·title="binder">n</span></a>·<a·id="m:36"·class="idref"·href="#m:36"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Arith.PeanoNat.html#Nat.eqb"><span·class="id"·title="definition">eqb</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:35"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#m:36"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:35"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#m:36"><span·class="id"·title="variable">m</span></a>.<br/> |
Offset 237, 27 lines modified | Offset 237, 27 lines modified | ||
237 | · | 237 | · |
238 | <br/> | 238 | <br/> |
239 | <br/> | 239 | <br/> |
240 | </div> | 240 | </div> |
241 | <div·class="doc"> | 241 | <div·class="doc"> |
242 | <a·id="lab2 | 242 | <a·id="lab279"></a><h2·class="section">Decidability·of·equality·over·<span·class="inlinecode"><span·class="id"·title="var">nat</span></span>.</h2> |
243 | </div> | 243 | </div> |
244 | <div·class="code"> | 244 | <div·class="code"> |
245 | <br/> | 245 | <br/> |
246 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Nat.eq_dec"·class="idref"·href="#Nat.eq_dec"><span·class="id"·title="lemma">eq_dec</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:45"·class="idref"·href="#n:45"><span·class="id"·title="binder">n</span></a>·<a·id="m:46"·class="idref"·href="#m:46"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>,·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.Arith.PeanoNat.html#n:45"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#m:46"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.Arith.PeanoNat.html#n:45"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#m:46"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>.<br/> | 246 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Nat.eq_dec"·class="idref"·href="#Nat.eq_dec"><span·class="id"·title="lemma">eq_dec</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:45"·class="idref"·href="#n:45"><span·class="id"·title="binder">n</span></a>·<a·id="m:46"·class="idref"·href="#m:46"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>,·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.Arith.PeanoNat.html#n:45"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#m:46"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.Arith.PeanoNat.html#n:45"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#m:46"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>.<br/> |
247 | <br/> | 247 | <br/> |
248 | </div> | 248 | </div> |
249 | <div·class="doc"> | 249 | <div·class="doc"> |
250 | <a·id="lab28 | 250 | <a·id="lab280"></a><h2·class="section">Ternary·comparison</h2> |
251 | <div·class="paragraph">·</div> | 251 | <div·class="paragraph">·</div> |
252 | ·With·<span·class="inlinecode"><span·class="id"·title="var">nat</span></span>,·it·would·be·easier·to·prove·first·<span·class="inlinecode"><span·class="id"·title="var">compare_spec</span></span>, | 252 | ·With·<span·class="inlinecode"><span·class="id"·title="var">nat</span></span>,·it·would·be·easier·to·prove·first·<span·class="inlinecode"><span·class="id"·title="var">compare_spec</span></span>, |
253 | ····then·the·properties·below.·But·then·we·wouldn't·be·able·to | 253 | ····then·the·properties·below.·But·then·we·wouldn't·be·able·to |
254 | ····benefit·from·functor·<span·class="inlinecode"><span·class="id"·title="var">BoolOrderFacts</span></span>· | 254 | ····benefit·from·functor·<span·class="inlinecode"><span·class="id"·title="var">BoolOrderFacts</span></span>· |
255 | </div> | 255 | </div> |
Offset 278, 15 lines modified | Offset 278, 15 lines modified | ||
278 | <br/> | 278 | <br/> |
279 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Nat.compare_succ"·class="idref"·href="#Nat.compare_succ"><span·class="id"·title="lemma">compare_succ</span></a>·<a·id="n:55"·class="idref"·href="#n:55"><span·class="id"·title="binder">n</span></a>·<a·id="m:56"·class="idref"·href="#m:56"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:55"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Nat.html#4a243c6f4b9487508e7110341eeedb0b"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#m:56"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Arith.PeanoNat.html#n:55"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Nat.html#4a243c6f4b9487508e7110341eeedb0b"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#m:56"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>.<br/> | 279 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Nat.compare_succ"·class="idref"·href="#Nat.compare_succ"><span·class="id"·title="lemma">compare_succ</span></a>·<a·id="n:55"·class="idref"·href="#n:55"><span·class="id"·title="binder">n</span></a>·<a·id="m:56"·class="idref"·href="#m:56"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:55"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Nat.html#4a243c6f4b9487508e7110341eeedb0b"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#m:56"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Arith.PeanoNat.html#n:55"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Nat.html#4a243c6f4b9487508e7110341eeedb0b"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#m:56"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>.<br/> |
280 | · | 280 | · |
281 | <br/> | 281 | <br/> |
282 | </div> | 282 | </div> |
283 | <div·class="doc"> | 283 | <div·class="doc"> |
284 | <a·id="lab28 | 284 | <a·id="lab281"></a><h2·class="section">Minimum,·maximum</h2> |
285 | </div> | 285 | </div> |
286 | <div·class="code"> | 286 | <div·class="code"> |
287 | <br/> | 287 | <br/> |
288 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Nat.max_l"·class="idref"·href="#Nat.max_l"><span·class="id"·title="lemma">max_l</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:57"·class="idref"·href="#n:57"><span·class="id"·title="binder">n</span></a>·<a·id="m:58"·class="idref"·href="#m:58"><span·class="id"·title="binder">m</span></a>,·<a·class="idref"·href="Coq.Arith.PeanoNat.html#m:58"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Peano.html#cb53cf0ee22c036a03b4a9281c68b5a3"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:57"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#Nat.max"><span·class="id"·title="definition">max</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:57"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#m:58"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:57"><span·class="id"·title="variable">n</span></a>.<br/> | 288 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Nat.max_l"·class="idref"·href="#Nat.max_l"><span·class="id"·title="lemma">max_l</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:57"·class="idref"·href="#n:57"><span·class="id"·title="binder">n</span></a>·<a·id="m:58"·class="idref"·href="#m:58"><span·class="id"·title="binder">m</span></a>,·<a·class="idref"·href="Coq.Arith.PeanoNat.html#m:58"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Peano.html#cb53cf0ee22c036a03b4a9281c68b5a3"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:57"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#Nat.max"><span·class="id"·title="definition">max</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:57"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#m:58"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:57"><span·class="id"·title="variable">n</span></a>.<br/> |
289 | · | 289 | · |
Offset 328, 15 lines modified | Offset 328, 15 lines modified | ||
328 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Nat.strong_induction_le"·class="idref"·href="#Nat.strong_induction_le"><span·class="id"·title="lemma">strong_induction_le</span></a>·(<a·id="A:65"·class="idref"·href="#A:65"><span·class="id"·title="binder">A</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>)·:<br/> | 328 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Nat.strong_induction_le"·class="idref"·href="#Nat.strong_induction_le"><span·class="id"·title="lemma">strong_induction_le</span></a>·(<a·id="A:65"·class="idref"·href="#A:65"><span·class="id"·title="binder">A</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>)·:<br/> |
329 | <a·class="idref"·href="Coq.Arith.PeanoNat.html#A:65"><span·class="id"·title="variable">A</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="n:66"·class="idref"·href="#n:66"><span·class="id"·title="binder">n</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="m:67"·class="idref"·href="#m:67"><span·class="id"·title="binder">m</span></a>,·<a·class="idref"·href="Coq.Arith.PeanoNat.html#m:67"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Peano.html#cb53cf0ee22c036a03b4a9281c68b5a3"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:66"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#A:65"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#m:67"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#A:65"><span·class="id"·title="variable">A</span></a>·(<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:66"><span·class="id"·title="variable">n</span></a>)<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">forall</span>·<a·id="n:68"·class="idref"·href="#n:68"><span·class="id"·title="binder">n</span></a>,·<a·class="idref"·href="Coq.Arith.PeanoNat.html#A:65"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:68"><span·class="id"·title="variable">n</span></a>.<br/> | 329 | <a·class="idref"·href="Coq.Arith.PeanoNat.html#A:65"><span·class="id"·title="variable">A</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="n:66"·class="idref"·href="#n:66"><span·class="id"·title="binder">n</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="m:67"·class="idref"·href="#m:67"><span·class="id"·title="binder">m</span></a>,·<a·class="idref"·href="Coq.Arith.PeanoNat.html#m:67"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Peano.html#cb53cf0ee22c036a03b4a9281c68b5a3"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:66"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#A:65"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#m:67"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#A:65"><span·class="id"·title="variable">A</span></a>·(<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:66"><span·class="id"·title="variable">n</span></a>)<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">forall</span>·<a·id="n:68"·class="idref"·href="#n:68"><span·class="id"·title="binder">n</span></a>,·<a·class="idref"·href="Coq.Arith.PeanoNat.html#A:65"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:68"><span·class="id"·title="variable">n</span></a>.<br/> |
330 | · | 330 | · |
331 | <br/> | 331 | <br/> |
332 | </div> | 332 | </div> |
333 | <div·class="doc"> | 333 | <div·class="doc"> |
334 | <a·id="lab28 | 334 | <a·id="lab282"></a><h2·class="section">Power</h2> |
335 | </div> | 335 | </div> |
336 | <div·class="code"> | 336 | <div·class="code"> |
337 | <br/> | 337 | <br/> |
338 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Nat.pow_neg_r"·class="idref"·href="#Nat.pow_neg_r"><span·class="id"·title="lemma">pow_neg_r</span></a>·<a·id="a:69"·class="idref"·href="#a:69"><span·class="id"·title="binder">a</span></a>·<a·id="b:70"·class="idref"·href="#b:70"><span·class="id"·title="binder">b</span></a>·:·<a·class="idref"·href="Coq.Arith.PeanoNat.html#b:70"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.Init.Peano.html#::nat_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#a:69"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Init.Nat.html#81fd94e251a61ee523cdd7855774ae7c"><span·class="id"·title="notation">^</span></a><a·class="idref"·href="Coq.Arith.PeanoNat.html#b:70"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·0.<br/> | 338 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Nat.pow_neg_r"·class="idref"·href="#Nat.pow_neg_r"><span·class="id"·title="lemma">pow_neg_r</span></a>·<a·id="a:69"·class="idref"·href="#a:69"><span·class="id"·title="binder">a</span></a>·<a·id="b:70"·class="idref"·href="#b:70"><span·class="id"·title="binder">b</span></a>·:·<a·class="idref"·href="Coq.Arith.PeanoNat.html#b:70"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.Init.Peano.html#::nat_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#a:69"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Init.Nat.html#81fd94e251a61ee523cdd7855774ae7c"><span·class="id"·title="notation">^</span></a><a·class="idref"·href="Coq.Arith.PeanoNat.html#b:70"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·0.<br/> |
339 | · | 339 | · |
Offset 346, 27 lines modified | Offset 346, 27 lines modified | ||
346 | <br/> | 346 | <br/> |
347 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Nat.pow_succ_r"·class="idref"·href="#Nat.pow_succ_r"><span·class="id"·title="lemma">pow_succ_r</span></a>·<a·id="a:72"·class="idref"·href="#a:72"><span·class="id"·title="binder">a</span></a>·<a·id="b:73"·class="idref"·href="#b:73"><span·class="id"·title="binder">b</span></a>·:·0<a·class="idref"·href="Coq.Init.Peano.html#cb53cf0ee22c036a03b4a9281c68b5a3"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Arith.PeanoNat.html#b:73"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#a:72"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Init.Nat.html#81fd94e251a61ee523cdd7855774ae7c"><span·class="id"·title="notation">^(</span></a><a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#b:73"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.Init.Nat.html#81fd94e251a61ee523cdd7855774ae7c"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#a:72"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Nat.html#ea2ff3d561159081cea6fb2e8113cc54"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#a:72"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Init.Nat.html#81fd94e251a61ee523cdd7855774ae7c"><span·class="id"·title="notation">^</span></a><a·class="idref"·href="Coq.Arith.PeanoNat.html#b:73"><span·class="id"·title="variable">b</span></a>.<br/> | 347 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Nat.pow_succ_r"·class="idref"·href="#Nat.pow_succ_r"><span·class="id"·title="lemma">pow_succ_r</span></a>·<a·id="a:72"·class="idref"·href="#a:72"><span·class="id"·title="binder">a</span></a>·<a·id="b:73"·class="idref"·href="#b:73"><span·class="id"·title="binder">b</span></a>·:·0<a·class="idref"·href="Coq.Init.Peano.html#cb53cf0ee22c036a03b4a9281c68b5a3"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Arith.PeanoNat.html#b:73"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#a:72"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Init.Nat.html#81fd94e251a61ee523cdd7855774ae7c"><span·class="id"·title="notation">^(</span></a><a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#b:73"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.Init.Nat.html#81fd94e251a61ee523cdd7855774ae7c"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#a:72"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Nat.html#ea2ff3d561159081cea6fb2e8113cc54"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#a:72"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Init.Nat.html#81fd94e251a61ee523cdd7855774ae7c"><span·class="id"·title="notation">^</span></a><a·class="idref"·href="Coq.Arith.PeanoNat.html#b:73"><span·class="id"·title="variable">b</span></a>.<br/> |
348 | · | 348 | · |
349 | <br/> | 349 | <br/> |
350 | </div> | 350 | </div> |
351 | <div·class="doc"> | 351 | <div·class="doc"> |
352 | <a·id="lab28 | 352 | <a·id="lab283"></a><h2·class="section">Square</h2> |
353 | </div> | 353 | </div> |
354 | <div·class="code"> | 354 | <div·class="code"> |
355 | <br/> | 355 | <br/> |
356 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Nat.square_spec"·class="idref"·href="#Nat.square_spec"><span·class="id"·title="lemma">square_spec</span></a>·<a·id="n:74"·class="idref"·href="#n:74"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.Arith.PeanoNat.html#Nat.square"><span·class="id"·title="definition">square</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:74"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:74"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Nat.html#ea2ff3d561159081cea6fb2e8113cc54"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:74"><span·class="id"·title="variable">n</span></a>.<br/> | 356 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Nat.square_spec"·class="idref"·href="#Nat.square_spec"><span·class="id"·title="lemma">square_spec</span></a>·<a·id="n:74"·class="idref"·href="#n:74"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.Arith.PeanoNat.html#Nat.square"><span·class="id"·title="definition">square</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:74"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:74"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Nat.html#ea2ff3d561159081cea6fb2e8113cc54"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#n:74"><span·class="id"·title="variable">n</span></a>.<br/> |
357 | · | 357 | · |
358 | <br/> | 358 | <br/> |
359 | </div> | 359 | </div> |
360 | <div·class="doc"> | 360 | <div·class="doc"> |
Max diff block lines reached; 23871/45221 bytes (52.79%) of diff not shown. |
Offset 86, 27 lines modified | Offset 86, 27 lines modified | ||
86 | |·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>·=>·<a·class="idref"·href="Coq.Init.Logic.html#False"><span·class="id"·title="inductive">False</span></a><br/> | 86 | |·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>·=>·<a·class="idref"·href="Coq.Init.Logic.html#False"><span·class="id"·title="inductive">False</span></a><br/> |
87 | <span·class="id"·title="keyword">end</span>.<br/> | 87 | <span·class="id"·title="keyword">end</span>.<br/> |
88 | <br/> | 88 | <br/> |
89 | </div> | 89 | </div> |
90 | <div·class="doc"> | 90 | <div·class="doc"> |
91 | <a·id="lab | 91 | <a·id="lab711"></a><h1·class="section">Decidability</h1> |
92 | </div> | 92 | </div> |
93 | <div·class="code"> | 93 | <div·class="code"> |
94 | <br/> | 94 | <br/> |
95 | <span·class="id"·title="keyword">Lemma</span>·<a·id="bool_dec"·class="idref"·href="#bool_dec"><span·class="id"·title="lemma">bool_dec</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="b1:3"·class="idref"·href="#b1:3"><span·class="id"·title="binder">b1</span></a>·<a·id="b2:4"·class="idref"·href="#b2:4"><span·class="id"·title="binder">b2</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>,·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.Bool.Bool.html#b1:3"><span·class="id"·title="variable">b1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b2:4"><span·class="id"·title="variable">b2</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.Bool.Bool.html#b1:3"><span·class="id"·title="variable">b1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b2:4"><span·class="id"·title="variable">b2</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>.<br/> | 95 | <span·class="id"·title="keyword">Lemma</span>·<a·id="bool_dec"·class="idref"·href="#bool_dec"><span·class="id"·title="lemma">bool_dec</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="b1:3"·class="idref"·href="#b1:3"><span·class="id"·title="binder">b1</span></a>·<a·id="b2:4"·class="idref"·href="#b2:4"><span·class="id"·title="binder">b2</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>,·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.Bool.Bool.html#b1:3"><span·class="id"·title="variable">b1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b2:4"><span·class="id"·title="variable">b2</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.Bool.Bool.html#b1:3"><span·class="id"·title="variable">b1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b2:4"><span·class="id"·title="variable">b2</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>.<br/> |
96 | <br/> | 96 | <br/> |
97 | </div> | 97 | </div> |
98 | <div·class="doc"> | 98 | <div·class="doc"> |
99 | <a·id="lab | 99 | <a·id="lab712"></a><h1·class="section">Discrimination</h1> |
100 | </div> | 100 | </div> |
101 | <div·class="code"> | 101 | <div·class="code"> |
102 | <br/> | 102 | <br/> |
103 | <span·class="id"·title="keyword">Lemma</span>·<a·id="diff_true_false"·class="idref"·href="#diff_true_false"><span·class="id"·title="lemma">diff_true_false</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>.<br/> | 103 | <span·class="id"·title="keyword">Lemma</span>·<a·id="diff_true_false"·class="idref"·href="#diff_true_false"><span·class="id"·title="lemma">diff_true_false</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>.<br/> |
104 | #[<span·class="id"·title="var">global</span>]<br/> | 104 | #[<span·class="id"·title="var">global</span>]<br/> |
Offset 134, 15 lines modified | Offset 134, 15 lines modified | ||
134 | <br/> | 134 | <br/> |
135 | <span·class="id"·title="keyword">Lemma</span>·<a·id="not_false_iff_true"·class="idref"·href="#not_false_iff_true"><span·class="id"·title="lemma">not_false_iff_true</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="b:9"·class="idref"·href="#b:9"><span·class="id"·title="binder">b</span></a>,·<a·class="idref"·href="Coq.Bool.Bool.html#b:9"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b:9"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>.<br/> | 135 | <span·class="id"·title="keyword">Lemma</span>·<a·id="not_false_iff_true"·class="idref"·href="#not_false_iff_true"><span·class="id"·title="lemma">not_false_iff_true</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="b:9"·class="idref"·href="#b:9"><span·class="id"·title="binder">b</span></a>,·<a·class="idref"·href="Coq.Bool.Bool.html#b:9"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b:9"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>.<br/> |
136 | <br/> | 136 | <br/> |
137 | </div> | 137 | </div> |
138 | <div·class="doc"> | 138 | <div·class="doc"> |
139 | <a·id="lab | 139 | <a·id="lab713"></a><h1·class="section">Order·on·booleans</h1> |
140 | </div> | 140 | </div> |
141 | <div·class="code"> | 141 | <div·class="code"> |
142 | <br/> | 142 | <br/> |
143 | #[·<span·class="id"·title="var">local</span>·]·<span·class="id"·title="keyword">Definition</span>·<a·id="le"·class="idref"·href="#le"><span·class="id"·title="definition">le</span></a>·(<a·id="b1:10"·class="idref"·href="#b1:10"><span·class="id"·title="binder">b1</span></a>·<a·id="b2:11"·class="idref"·href="#b2:11"><span·class="id"·title="binder">b2</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>)·:=<br/> | 143 | #[·<span·class="id"·title="var">local</span>·]·<span·class="id"·title="keyword">Definition</span>·<a·id="le"·class="idref"·href="#le"><span·class="id"·title="definition">le</span></a>·(<a·id="b1:10"·class="idref"·href="#b1:10"><span·class="id"·title="binder">b1</span></a>·<a·id="b2:11"·class="idref"·href="#b2:11"><span·class="id"·title="binder">b2</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>)·:=<br/> |
144 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Bool.Bool.html#b1:10"><span·class="id"·title="variable">b1</span></a>·<span·class="id"·title="keyword">with</span><br/> | 144 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Bool.Bool.html#b1:10"><span·class="id"·title="variable">b1</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 176, 15 lines modified | Offset 176, 15 lines modified | ||
176 | <span·class="id"·title="keyword">Lemma</span>·<a·id="compare_spec"·class="idref"·href="#compare_spec"><span·class="id"·title="lemma">compare_spec</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="b1:22"·class="idref"·href="#b1:22"><span·class="id"·title="binder">b1</span></a>·<a·id="b2:23"·class="idref"·href="#b2:23"><span·class="id"·title="binder">b2</span></a>,<br/> | 176 | <span·class="id"·title="keyword">Lemma</span>·<a·id="compare_spec"·class="idref"·href="#compare_spec"><span·class="id"·title="lemma">compare_spec</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="b1:22"·class="idref"·href="#b1:22"><span·class="id"·title="binder">b1</span></a>·<a·id="b2:23"·class="idref"·href="#b2:23"><span·class="id"·title="binder">b2</span></a>,<br/> |
177 | <a·class="idref"·href="Coq.Init.Datatypes.html#CompareSpec"><span·class="id"·title="inductive">CompareSpec</span></a>·(<a·class="idref"·href="Coq.Bool.Bool.html#b1:22"><span·class="id"·title="variable">b1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b2:23"><span·class="id"·title="variable">b2</span></a>)·(<a·class="idref"·href="Coq.Bool.Bool.html#lt"><span·class="id"·title="definition">lt</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b1:22"><span·class="id"·title="variable">b1</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b2:23"><span·class="id"·title="variable">b2</span></a>)·(<a·class="idref"·href="Coq.Bool.Bool.html#lt"><span·class="id"·title="definition">lt</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b2:23"><span·class="id"·title="variable">b2</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b1:22"><span·class="id"·title="variable">b1</span></a>)·(<a·class="idref"·href="Coq.Bool.Bool.html#compare"><span·class="id"·title="definition">compare</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b1:22"><span·class="id"·title="variable">b1</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b2:23"><span·class="id"·title="variable">b2</span></a>).<br/> | 177 | <a·class="idref"·href="Coq.Init.Datatypes.html#CompareSpec"><span·class="id"·title="inductive">CompareSpec</span></a>·(<a·class="idref"·href="Coq.Bool.Bool.html#b1:22"><span·class="id"·title="variable">b1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b2:23"><span·class="id"·title="variable">b2</span></a>)·(<a·class="idref"·href="Coq.Bool.Bool.html#lt"><span·class="id"·title="definition">lt</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b1:22"><span·class="id"·title="variable">b1</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b2:23"><span·class="id"·title="variable">b2</span></a>)·(<a·class="idref"·href="Coq.Bool.Bool.html#lt"><span·class="id"·title="definition">lt</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b2:23"><span·class="id"·title="variable">b2</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b1:22"><span·class="id"·title="variable">b1</span></a>)·(<a·class="idref"·href="Coq.Bool.Bool.html#compare"><span·class="id"·title="definition">compare</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b1:22"><span·class="id"·title="variable">b1</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b2:23"><span·class="id"·title="variable">b2</span></a>).<br/> |
178 | · | 178 | · |
179 | <br/> | 179 | <br/> |
180 | </div> | 180 | </div> |
181 | <div·class="doc"> | 181 | <div·class="doc"> |
182 | <a·id="lab | 182 | <a·id="lab714"></a><h1·class="section">Equality</h1> |
183 | </div> | 183 | </div> |
184 | <div·class="code"> | 184 | <div·class="code"> |
185 | <br/> | 185 | <br/> |
186 | <span·class="id"·title="keyword">Definition</span>·<a·id="eqb"·class="idref"·href="#eqb"><span·class="id"·title="definition">eqb</span></a>·(<a·id="b1:24"·class="idref"·href="#b1:24"><span·class="id"·title="binder">b1</span></a>·<a·id="b2:25"·class="idref"·href="#b2:25"><span·class="id"·title="binder">b2</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>)·:·<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>·:=<br/> | 186 | <span·class="id"·title="keyword">Definition</span>·<a·id="eqb"·class="idref"·href="#eqb"><span·class="id"·title="definition">eqb</span></a>·(<a·id="b1:24"·class="idref"·href="#b1:24"><span·class="id"·title="binder">b1</span></a>·<a·id="b2:25"·class="idref"·href="#b2:25"><span·class="id"·title="binder">b2</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>)·:·<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>·:=<br/> |
187 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Bool.Bool.html#b1:24"><span·class="id"·title="variable">b1</span></a>,·<a·class="idref"·href="Coq.Bool.Bool.html#b2:25"><span·class="id"·title="variable">b2</span></a>·<span·class="id"·title="keyword">with</span><br/> | 187 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Bool.Bool.html#b1:24"><span·class="id"·title="variable">b1</span></a>,·<a·class="idref"·href="Coq.Bool.Bool.html#b2:25"><span·class="id"·title="variable">b2</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 219, 15 lines modified | Offset 219, 15 lines modified | ||
219 | <br/> | 219 | <br/> |
220 | <span·class="id"·title="keyword">Lemma</span>·<a·id="eqb_false_iff"·class="idref"·href="#eqb_false_iff"><span·class="id"·title="lemma">eqb_false_iff</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="a:38"·class="idref"·href="#a:38"><span·class="id"·title="binder">a</span></a>·<a·id="b:39"·class="idref"·href="#b:39"><span·class="id"·title="binder">b</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>,·<a·class="idref"·href="Coq.Bool.Bool.html#eqb"><span·class="id"·title="definition">eqb</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#a:38"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b:39"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#a:38"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b:39"><span·class="id"·title="variable">b</span></a>.<br/> | 220 | <span·class="id"·title="keyword">Lemma</span>·<a·id="eqb_false_iff"·class="idref"·href="#eqb_false_iff"><span·class="id"·title="lemma">eqb_false_iff</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="a:38"·class="idref"·href="#a:38"><span·class="id"·title="binder">a</span></a>·<a·id="b:39"·class="idref"·href="#b:39"><span·class="id"·title="binder">b</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>,·<a·class="idref"·href="Coq.Bool.Bool.html#eqb"><span·class="id"·title="definition">eqb</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#a:38"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b:39"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#a:38"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b:39"><span·class="id"·title="variable">b</span></a>.<br/> |
221 | <br/> | 221 | <br/> |
222 | </div> | 222 | </div> |
223 | <div·class="doc"> | 223 | <div·class="doc"> |
224 | <a·id="lab | 224 | <a·id="lab715"></a><h1·class="section">A·synonym·of·<span·class="inlinecode"><span·class="id"·title="keyword">if</span></span>·on·<span·class="inlinecode"><span·class="id"·title="var">bool</span></span></h1> |
225 | </div> | 225 | </div> |
226 | <div·class="code"> | 226 | <div·class="code"> |
227 | <br/> | 227 | <br/> |
228 | <span·class="id"·title="keyword">Definition</span>·<a·id="ifb"·class="idref"·href="#ifb"><span·class="id"·title="definition">ifb</span></a>·(<a·id="b1:40"·class="idref"·href="#b1:40"><span·class="id"·title="binder">b1</span></a>·<a·id="b2:41"·class="idref"·href="#b2:41"><span·class="id"·title="binder">b2</span></a>·<a·id="b3:42"·class="idref"·href="#b3:42"><span·class="id"·title="binder">b3</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>)·:·<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>·:=<br/> | 228 | <span·class="id"·title="keyword">Definition</span>·<a·id="ifb"·class="idref"·href="#ifb"><span·class="id"·title="definition">ifb</span></a>·(<a·id="b1:40"·class="idref"·href="#b1:40"><span·class="id"·title="binder">b1</span></a>·<a·id="b2:41"·class="idref"·href="#b2:41"><span·class="id"·title="binder">b2</span></a>·<a·id="b3:42"·class="idref"·href="#b3:42"><span·class="id"·title="binder">b3</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>)·:·<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>·:=<br/> |
229 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Bool.Bool.html#b1:40"><span·class="id"·title="variable">b1</span></a>·<span·class="id"·title="keyword">with</span><br/> | 229 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Bool.Bool.html#b1:40"><span·class="id"·title="variable">b1</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 238, 30 lines modified | Offset 238, 30 lines modified | ||
238 | <br/> | 238 | <br/> |
239 | <span·class="id"·title="keyword">Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">bool_scope</span>.<br/> | 239 | <span·class="id"·title="keyword">Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">bool_scope</span>.<br/> |
240 | <br/> | 240 | <br/> |
241 | </div> | 241 | </div> |
242 | <div·class="doc"> | 242 | <div·class="doc"> |
243 | <a·id="lab | 243 | <a·id="lab716"></a><h1·class="section">De·Morgan·laws</h1> |
244 | </div> | 244 | </div> |
245 | <div·class="code"> | 245 | <div·class="code"> |
246 | <br/> | 246 | <br/> |
247 | <span·class="id"·title="keyword">Lemma</span>·<a·id="negb_orb"·class="idref"·href="#negb_orb"><span·class="id"·title="lemma">negb_orb</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="b1:44"·class="idref"·href="#b1:44"><span·class="id"·title="binder">b1</span></a>·<a·id="b2:45"·class="idref"·href="#b2:45"><span·class="id"·title="binder">b2</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>,·<a·class="idref"·href="Coq.Init.Datatypes.html#negb"><span·class="id"·title="definition">negb</span></a>·(<a·class="idref"·href="Coq.Bool.Bool.html#b1:44"><span·class="id"·title="variable">b1</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#081ff67d3116402bb680e8692aa39185"><span·class="id"·title="notation">||</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b2:45"><span·class="id"·title="variable">b2</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#negb"><span·class="id"·title="definition">negb</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b1:44"><span·class="id"·title="variable">b1</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#::bool_scope:x_'&&'_x"><span·class="id"·title="notation">&&</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#negb"><span·class="id"·title="definition">negb</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b2:45"><span·class="id"·title="variable">b2</span></a>.<br/> | 247 | <span·class="id"·title="keyword">Lemma</span>·<a·id="negb_orb"·class="idref"·href="#negb_orb"><span·class="id"·title="lemma">negb_orb</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="b1:44"·class="idref"·href="#b1:44"><span·class="id"·title="binder">b1</span></a>·<a·id="b2:45"·class="idref"·href="#b2:45"><span·class="id"·title="binder">b2</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>,·<a·class="idref"·href="Coq.Init.Datatypes.html#negb"><span·class="id"·title="definition">negb</span></a>·(<a·class="idref"·href="Coq.Bool.Bool.html#b1:44"><span·class="id"·title="variable">b1</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#081ff67d3116402bb680e8692aa39185"><span·class="id"·title="notation">||</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b2:45"><span·class="id"·title="variable">b2</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#negb"><span·class="id"·title="definition">negb</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b1:44"><span·class="id"·title="variable">b1</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#::bool_scope:x_'&&'_x"><span·class="id"·title="notation">&&</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#negb"><span·class="id"·title="definition">negb</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b2:45"><span·class="id"·title="variable">b2</span></a>.<br/> |
248 | <br/> | 248 | <br/> |
249 | <span·class="id"·title="keyword">Lemma</span>·<a·id="negb_andb"·class="idref"·href="#negb_andb"><span·class="id"·title="lemma">negb_andb</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="b1:46"·class="idref"·href="#b1:46"><span·class="id"·title="binder">b1</span></a>·<a·id="b2:47"·class="idref"·href="#b2:47"><span·class="id"·title="binder">b2</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>,·<a·class="idref"·href="Coq.Init.Datatypes.html#negb"><span·class="id"·title="definition">negb</span></a>·(<a·class="idref"·href="Coq.Bool.Bool.html#b1:46"><span·class="id"·title="variable">b1</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#::bool_scope:x_'&&'_x"><span·class="id"·title="notation">&&</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b2:47"><span·class="id"·title="variable">b2</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#negb"><span·class="id"·title="definition">negb</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b1:46"><span·class="id"·title="variable">b1</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#081ff67d3116402bb680e8692aa39185"><span·class="id"·title="notation">||</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#negb"><span·class="id"·title="definition">negb</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b2:47"><span·class="id"·title="variable">b2</span></a>.<br/> | 249 | <span·class="id"·title="keyword">Lemma</span>·<a·id="negb_andb"·class="idref"·href="#negb_andb"><span·class="id"·title="lemma">negb_andb</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="b1:46"·class="idref"·href="#b1:46"><span·class="id"·title="binder">b1</span></a>·<a·id="b2:47"·class="idref"·href="#b2:47"><span·class="id"·title="binder">b2</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>,·<a·class="idref"·href="Coq.Init.Datatypes.html#negb"><span·class="id"·title="definition">negb</span></a>·(<a·class="idref"·href="Coq.Bool.Bool.html#b1:46"><span·class="id"·title="variable">b1</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#::bool_scope:x_'&&'_x"><span·class="id"·title="notation">&&</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b2:47"><span·class="id"·title="variable">b2</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#negb"><span·class="id"·title="definition">negb</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b1:46"><span·class="id"·title="variable">b1</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#081ff67d3116402bb680e8692aa39185"><span·class="id"·title="notation">||</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#negb"><span·class="id"·title="definition">negb</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b2:47"><span·class="id"·title="variable">b2</span></a>.<br/> |
250 | <br/> | 250 | <br/> |
251 | </div> | 251 | </div> |
252 | <div·class="doc"> | 252 | <div·class="doc"> |
253 | <a·id="lab | 253 | <a·id="lab717"></a><h1·class="section">Properties·of·<span·class="inlinecode"><span·class="id"·title="var">negb</span></span></h1> |
254 | </div> | 254 | </div> |
255 | <div·class="code"> | 255 | <div·class="code"> |
256 | <br/> | 256 | <br/> |
257 | <span·class="id"·title="keyword">Lemma</span>·<a·id="negb_involutive"·class="idref"·href="#negb_involutive"><span·class="id"·title="lemma">negb_involutive</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="b:48"·class="idref"·href="#b:48"><span·class="id"·title="binder">b</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>,·<a·class="idref"·href="Coq.Init.Datatypes.html#negb"><span·class="id"·title="definition">negb</span></a>·(<a·class="idref"·href="Coq.Init.Datatypes.html#negb"><span·class="id"·title="definition">negb</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b:48"><span·class="id"·title="variable">b</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b:48"><span·class="id"·title="variable">b</span></a>.<br/> | 257 | <span·class="id"·title="keyword">Lemma</span>·<a·id="negb_involutive"·class="idref"·href="#negb_involutive"><span·class="id"·title="lemma">negb_involutive</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="b:48"·class="idref"·href="#b:48"><span·class="id"·title="binder">b</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>,·<a·class="idref"·href="Coq.Init.Datatypes.html#negb"><span·class="id"·title="definition">negb</span></a>·(<a·class="idref"·href="Coq.Init.Datatypes.html#negb"><span·class="id"·title="definition">negb</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b:48"><span·class="id"·title="variable">b</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b:48"><span·class="id"·title="variable">b</span></a>.<br/> |
Offset 295, 15 lines modified | Offset 295, 15 lines modified | ||
295 | <br/> | 295 | <br/> |
296 | <span·class="id"·title="keyword">Lemma</span>·<a·id="negb_false_iff"·class="idref"·href="#negb_false_iff"><span·class="id"·title="lemma">negb_false_iff</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="b:60"·class="idref"·href="#b:60"><span·class="id"·title="binder">b</span></a>,·<a·class="idref"·href="Coq.Init.Datatypes.html#negb"><span·class="id"·title="definition">negb</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b:60"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b:60"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>.<br/> | 296 | <span·class="id"·title="keyword">Lemma</span>·<a·id="negb_false_iff"·class="idref"·href="#negb_false_iff"><span·class="id"·title="lemma">negb_false_iff</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="b:60"·class="idref"·href="#b:60"><span·class="id"·title="binder">b</span></a>,·<a·class="idref"·href="Coq.Init.Datatypes.html#negb"><span·class="id"·title="definition">negb</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b:60"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b:60"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>.<br/> |
297 | <br/> | 297 | <br/> |
298 | </div> | 298 | </div> |
299 | <div·class="doc"> | 299 | <div·class="doc"> |
300 | <a·id="lab | 300 | <a·id="lab718"></a><h1·class="section">Properties·of·<span·class="inlinecode"><span·class="id"·title="var">orb</span></span></h1> |
301 | </div> | 301 | </div> |
302 | <div·class="code"> | 302 | <div·class="code"> |
303 | <br/> | 303 | <br/> |
304 | <span·class="id"·title="keyword">Lemma</span>·<a·id="orb_true_iff"·class="idref"·href="#orb_true_iff"><span·class="id"·title="lemma">orb_true_iff</span></a>·:<br/> | 304 | <span·class="id"·title="keyword">Lemma</span>·<a·id="orb_true_iff"·class="idref"·href="#orb_true_iff"><span·class="id"·title="lemma">orb_true_iff</span></a>·:<br/> |
305 | <span·class="id"·title="keyword">forall</span>·<a·id="b1:61"·class="idref"·href="#b1:61"><span·class="id"·title="binder">b1</span></a>·<a·id="b2:62"·class="idref"·href="#b2:62"><span·class="id"·title="binder">b2</span></a>,·<a·class="idref"·href="Coq.Bool.Bool.html#b1:61"><span·class="id"·title="variable">b1</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#081ff67d3116402bb680e8692aa39185"><span·class="id"·title="notation">||</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b2:62"><span·class="id"·title="variable">b2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b1:61"><span·class="id"·title="variable">b1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b2:62"><span·class="id"·title="variable">b2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>.<br/> | 305 | <span·class="id"·title="keyword">forall</span>·<a·id="b1:61"·class="idref"·href="#b1:61"><span·class="id"·title="binder">b1</span></a>·<a·id="b2:62"·class="idref"·href="#b2:62"><span·class="id"·title="binder">b2</span></a>,·<a·class="idref"·href="Coq.Bool.Bool.html#b1:61"><span·class="id"·title="variable">b1</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#081ff67d3116402bb680e8692aa39185"><span·class="id"·title="notation">||</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b2:62"><span·class="id"·title="variable">b2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b1:61"><span·class="id"·title="variable">b1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b2:62"><span·class="id"·title="variable">b2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>.<br/> |
Offset 423, 15 lines modified | Offset 423, 15 lines modified | ||
423 | #[<span·class="id"·title="var">global</span>]<br/> | 423 | #[<span·class="id"·title="var">global</span>]<br/> |
424 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Resolve</span>·<span·class="id"·title="var">orb_comm</span>·<span·class="id"·title="var">orb_assoc</span>:·<span·class="id"·title="var">bool</span>.<br/> | 424 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Resolve</span>·<span·class="id"·title="var">orb_comm</span>·<span·class="id"·title="var">orb_assoc</span>:·<span·class="id"·title="var">bool</span>.<br/> |
425 | <br/> | 425 | <br/> |
Max diff block lines reached; 13088/32272 bytes (40.56%) of diff not shown. |
Offset 62, 15 lines modified | Offset 62, 15 lines modified | ||
62 | <span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Bool.Bool.html#BoolNotations"><span·class="id"·title="module">BoolNotations</span></a>.<br/> | 62 | <span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Bool.Bool.html#BoolNotations"><span·class="id"·title="module">BoolNotations</span></a>.<br/> |
63 | <span·class="id"·title="keyword">Local·Ltac</span>·<span·class="id"·title="var">Tauto.intuition_solver</span>·::=·<span·class="id"·title="tactic">auto</span>·<span·class="id"·title="keyword">with</span>·<span·class="id"·title="var">typeclass_instances</span>·<span·class="id"·title="var">relations</span>.<br/> | 63 | <span·class="id"·title="keyword">Local·Ltac</span>·<span·class="id"·title="var">Tauto.intuition_solver</span>·::=·<span·class="id"·title="tactic">auto</span>·<span·class="id"·title="keyword">with</span>·<span·class="id"·title="var">typeclass_instances</span>·<span·class="id"·title="var">relations</span>.<br/> |
64 | <br/> | 64 | <br/> |
65 | </div> | 65 | </div> |
66 | <div·class="doc"> | 66 | <div·class="doc"> |
67 | <a·id="lab | 67 | <a·id="lab726"></a><h1·class="section">Order·<span·class="inlinecode"><span·class="id"·title="var">le</span></span></h1> |
68 | </div> | 68 | </div> |
69 | <div·class="code"> | 69 | <div·class="code"> |
70 | <br/> | 70 | <br/> |
71 | <span·class="id"·title="keyword">Lemma</span>·<a·id="le_refl"·class="idref"·href="#le_refl"><span·class="id"·title="lemma">le_refl</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="b:1"·class="idref"·href="#b:1"><span·class="id"·title="binder">b</span></a>,·<a·class="idref"·href="Coq.Bool.BoolOrder.html#b:1"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b6c5208a24d231af77d2816ac22122c4"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Bool.BoolOrder.html#b:1"><span·class="id"·title="variable">b</span></a>.<br/> | 71 | <span·class="id"·title="keyword">Lemma</span>·<a·id="le_refl"·class="idref"·href="#le_refl"><span·class="id"·title="lemma">le_refl</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="b:1"·class="idref"·href="#b:1"><span·class="id"·title="binder">b</span></a>,·<a·class="idref"·href="Coq.Bool.BoolOrder.html#b:1"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b6c5208a24d231af77d2816ac22122c4"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Bool.BoolOrder.html#b:1"><span·class="id"·title="variable">b</span></a>.<br/> |
72 | · | 72 | · |
Offset 88, 15 lines modified | Offset 88, 15 lines modified | ||
88 | #[<span·class="id"·title="var">global</span>]<br/> | 88 | #[<span·class="id"·title="var">global</span>]<br/> |
89 | <span·class="id"·title="keyword">Instance</span>·<a·id="le_compat"·class="idref"·href="#le_compat"><span·class="id"·title="instance">le_compat</span></a>·:·<a·class="idref"·href="Coq.Classes.Morphisms.html#Proper"><span·class="id"·title="class">Proper</span></a>·(<a·class="idref"·href="Coq.Init.Logic.html#eq"><span·class="id"·title="inductive">eq</span></a>·<a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#eq"><span·class="id"·title="inductive">eq</span></a>·<a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#iff"><span·class="id"·title="definition">iff</span></a>)·<a·class="idref"·href="Coq.Bool.Bool.html#le"><span·class="id"·title="definition">Bool.le</span></a>.<br/> | 89 | <span·class="id"·title="keyword">Instance</span>·<a·id="le_compat"·class="idref"·href="#le_compat"><span·class="id"·title="instance">le_compat</span></a>·:·<a·class="idref"·href="Coq.Classes.Morphisms.html#Proper"><span·class="id"·title="class">Proper</span></a>·(<a·class="idref"·href="Coq.Init.Logic.html#eq"><span·class="id"·title="inductive">eq</span></a>·<a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#eq"><span·class="id"·title="inductive">eq</span></a>·<a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#iff"><span·class="id"·title="definition">iff</span></a>)·<a·class="idref"·href="Coq.Bool.Bool.html#le"><span·class="id"·title="definition">Bool.le</span></a>.<br/> |
90 | · | 90 | · |
91 | <br/> | 91 | <br/> |
92 | </div> | 92 | </div> |
93 | <div·class="doc"> | 93 | <div·class="doc"> |
94 | <a·id="lab | 94 | <a·id="lab727"></a><h1·class="section">Strict·order·<span·class="inlinecode"><span·class="id"·title="var">lt</span></span></h1> |
95 | </div> | 95 | </div> |
96 | <div·class="code"> | 96 | <div·class="code"> |
97 | <br/> | 97 | <br/> |
98 | <span·class="id"·title="keyword">Lemma</span>·<a·id="lt_irrefl"·class="idref"·href="#lt_irrefl"><span·class="id"·title="lemma">lt_irrefl</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="b:7"·class="idref"·href="#b:7"><span·class="id"·title="binder">b</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~</span></a>·<a·class="idref"·href="Coq.Bool.BoolOrder.html#b:7"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#BoolNotations.::bool_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Bool.BoolOrder.html#b:7"><span·class="id"·title="variable">b</span></a>.<br/> | 98 | <span·class="id"·title="keyword">Lemma</span>·<a·id="lt_irrefl"·class="idref"·href="#lt_irrefl"><span·class="id"·title="lemma">lt_irrefl</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="b:7"·class="idref"·href="#b:7"><span·class="id"·title="binder">b</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~</span></a>·<a·class="idref"·href="Coq.Bool.BoolOrder.html#b:7"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#BoolNotations.::bool_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Bool.BoolOrder.html#b:7"><span·class="id"·title="variable">b</span></a>.<br/> |
99 | · | 99 | · |
Offset 123, 15 lines modified | Offset 123, 15 lines modified | ||
123 | <br/> | 123 | <br/> |
124 | <span·class="id"·title="keyword">Lemma</span>·<a·id="le_lteq"·class="idref"·href="#le_lteq"><span·class="id"·title="lemma">le_lteq</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="b1:19"·class="idref"·href="#b1:19"><span·class="id"·title="binder">b1</span></a>·<a·id="b2:20"·class="idref"·href="#b2:20"><span·class="id"·title="binder">b2</span></a>,·<a·class="idref"·href="Coq.Bool.BoolOrder.html#b1:19"><span·class="id"·title="variable">b1</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b6c5208a24d231af77d2816ac22122c4"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Bool.BoolOrder.html#b2:20"><span·class="id"·title="variable">b2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Bool.BoolOrder.html#b1:19"><span·class="id"·title="variable">b1</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#BoolNotations.::bool_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Bool.BoolOrder.html#b2:20"><span·class="id"·title="variable">b2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.Bool.BoolOrder.html#b1:19"><span·class="id"·title="variable">b1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Bool.BoolOrder.html#b2:20"><span·class="id"·title="variable">b2</span></a>.<br/> | 124 | <span·class="id"·title="keyword">Lemma</span>·<a·id="le_lteq"·class="idref"·href="#le_lteq"><span·class="id"·title="lemma">le_lteq</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="b1:19"·class="idref"·href="#b1:19"><span·class="id"·title="binder">b1</span></a>·<a·id="b2:20"·class="idref"·href="#b2:20"><span·class="id"·title="binder">b2</span></a>,·<a·class="idref"·href="Coq.Bool.BoolOrder.html#b1:19"><span·class="id"·title="variable">b1</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#b6c5208a24d231af77d2816ac22122c4"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Bool.BoolOrder.html#b2:20"><span·class="id"·title="variable">b2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Bool.BoolOrder.html#b1:19"><span·class="id"·title="variable">b1</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#BoolNotations.::bool_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Bool.BoolOrder.html#b2:20"><span·class="id"·title="variable">b2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.Bool.BoolOrder.html#b1:19"><span·class="id"·title="variable">b1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Bool.BoolOrder.html#b2:20"><span·class="id"·title="variable">b2</span></a>.<br/> |
125 | · | 125 | · |
126 | <br/> | 126 | <br/> |
127 | </div> | 127 | </div> |
128 | <div·class="doc"> | 128 | <div·class="doc"> |
129 | <a·id="lab | 129 | <a·id="lab728"></a><h1·class="section">Order·structures</h1> |
130 | </div> | 130 | </div> |
131 | <div·class="code"> | 131 | <div·class="code"> |
132 | <br/> | 132 | <br/> |
133 | #[<span·class="id"·title="var">global</span>]<br/> | 133 | #[<span·class="id"·title="var">global</span>]<br/> |
134 | <span·class="id"·title="keyword">Instance</span>·<a·id="le_preorder"·class="idref"·href="#le_preorder"><span·class="id"·title="instance">le_preorder</span></a>·:·<a·class="idref"·href="Coq.Classes.RelationClasses.html#PreOrder"><span·class="id"·title="class">PreOrder</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#le"><span·class="id"·title="definition">Bool.le</span></a>.<br/> | 134 | <span·class="id"·title="keyword">Instance</span>·<a·id="le_preorder"·class="idref"·href="#le_preorder"><span·class="id"·title="instance">le_preorder</span></a>·:·<a·class="idref"·href="Coq.Classes.RelationClasses.html#PreOrder"><span·class="id"·title="class">PreOrder</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#le"><span·class="id"·title="definition">Bool.le</span></a>.<br/> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1141"></a><h1·class="section">Typeclass-based·setoids.·Definitions·on·<span·class="inlinecode"><span·class="id"·title="var">Equivalence</span></span>.</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ···Author:·Matthieu·Sozeau | 51 | ···Author:·Matthieu·Sozeau |
52 | ···Institution:·LRI,·CNRS·UMR·8623·-·University·Paris·Sud | 52 | ···Institution:·LRI,·CNRS·UMR·8623·-·University·Paris·Sud |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1138"></a><h1·class="section">Typeclass-based·morphism·definition·and·standard,·minimal·instances</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ···Author:·Matthieu·Sozeau | 51 | ···Author:·Matthieu·Sozeau |
52 | ···Institution:·LRI,·CNRS·UMR·8623·-·University·Paris·Sud | 52 | ···Institution:·LRI,·CNRS·UMR·8623·-·University·Paris·Sud |
Offset 74, 15 lines modified | Offset 74, 15 lines modified | ||
74 | <br/> | 74 | <br/> |
75 | <br/> | 75 | <br/> |
76 | </div> | 76 | </div> |
77 | <div·class="doc"> | 77 | <div·class="doc"> |
78 | <a·id="lab | 78 | <a·id="lab1139"></a><h1·class="section">Morphisms.</h1> |
79 | <div·class="paragraph">·</div> | 79 | <div·class="paragraph">·</div> |
80 | ···We·now·turn·to·the·definition·of·<span·class="inlinecode"><span·class="id"·title="var">Proper</span></span>·and·declare·standard·instances. | 80 | ···We·now·turn·to·the·definition·of·<span·class="inlinecode"><span·class="id"·title="var">Proper</span></span>·and·declare·standard·instances. |
81 | ···These·will·be·used·by·the·<span·class="inlinecode"><span·class="id"·title="tactic">setoid_rewrite</span></span>·tactic·later.· | 81 | ···These·will·be·used·by·the·<span·class="inlinecode"><span·class="id"·title="tactic">setoid_rewrite</span></span>·tactic·later.· |
82 | <div·class="paragraph">·</div> | 82 | <div·class="paragraph">·</div> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1134"></a><h1·class="section">Typeclass-based·relations,·tactics·and·standard·instances</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ···This·is·the·basic·theory·needed·to·formalize·morphisms·and·setoids. | 51 | ···This·is·the·basic·theory·needed·to·formalize·morphisms·and·setoids. |
52 | <div·class="paragraph">·</div> | 52 | <div·class="paragraph">·</div> |
Offset 450, 15 lines modified | Offset 450, 15 lines modified | ||
450 | <br/> | 450 | <br/> |
451 | </div> | 451 | </div> |
452 | <div·class="doc"> | 452 | <div·class="doc"> |
453 | We·can·already·dualize·all·these·properties.· | 453 | We·can·already·dualize·all·these·properties.· |
454 | <div·class="paragraph">·</div> | 454 | <div·class="paragraph">·</div> |
455 | <a·id="lab3"></a><h1·class="section">Standard·instances.</h1> | 455 | <a·id="lab1135"></a><h1·class="section">Standard·instances.</h1> |
456 | </div> | 456 | </div> |
457 | <div·class="code"> | 457 | <div·class="code"> |
458 | <br/> | 458 | <br/> |
459 | <span·class="id"·title="keyword">Ltac</span>·<span·class="id"·title="var">reduce_hyp</span>·<span·class="id"·title="var">H</span>·:=<br/> | 459 | <span·class="id"·title="keyword">Ltac</span>·<span·class="id"·title="var">reduce_hyp</span>·<span·class="id"·title="var">H</span>·:=<br/> |
460 | <span·class="id"·title="keyword">match</span>·<span·class="id"·title="keyword">type</span>·<span·class="id"·title="keyword">of</span>·<span·class="id"·title="var">H</span>·<span·class="id"·title="keyword">with</span><br/> | 460 | <span·class="id"·title="keyword">match</span>·<span·class="id"·title="keyword">type</span>·<span·class="id"·title="keyword">of</span>·<span·class="id"·title="var">H</span>·<span·class="id"·title="keyword">with</span><br/> |
Offset 603, 15 lines modified | Offset 603, 15 lines modified | ||
603 | <br/> | 603 | <br/> |
604 | <span·class="id"·title="keyword">Global·Instance</span>·<a·id="relation_implication_preorder"·class="idref"·href="#relation_implication_preorder"><span·class="id"·title="instance">relation_implication_preorder</span></a>·:·<a·class="idref"·href="Coq.Classes.CRelationClasses.html#PreOrder"><span·class="id"·title="class">PreOrder</span></a>·(@<a·class="idref"·href="Coq.Classes.CRelationClasses.html#subrelation"><span·class="id"·title="class">subrelation</span></a>·<a·class="idref"·href="Coq.Classes.CRelationClasses.html#Binary.A"><span·class="id"·title="variable">A</span></a>).<br/> | 604 | <span·class="id"·title="keyword">Global·Instance</span>·<a·id="relation_implication_preorder"·class="idref"·href="#relation_implication_preorder"><span·class="id"·title="instance">relation_implication_preorder</span></a>·:·<a·class="idref"·href="Coq.Classes.CRelationClasses.html#PreOrder"><span·class="id"·title="class">PreOrder</span></a>·(@<a·class="idref"·href="Coq.Classes.CRelationClasses.html#subrelation"><span·class="id"·title="class">subrelation</span></a>·<a·class="idref"·href="Coq.Classes.CRelationClasses.html#Binary.A"><span·class="id"·title="variable">A</span></a>).<br/> |
605 | · | 605 | · |
606 | <br/> | 606 | <br/> |
607 | </div> | 607 | </div> |
608 | <div·class="doc"> | 608 | <div·class="doc"> |
609 | <a·id="lab | 609 | <a·id="lab1136"></a><h3·class="section">Partial·Order.</h3> |
610 | ···A·partial·order·is·a·preorder·which·is·additionally·antisymmetric. | 610 | ···A·partial·order·is·a·preorder·which·is·additionally·antisymmetric. |
611 | ···We·give·an·equivalent·definition,·up-to·an·equivalence·crelation | 611 | ···We·give·an·equivalent·definition,·up-to·an·equivalence·crelation |
612 | ···on·the·carrier.· | 612 | ···on·the·carrier.· |
613 | </div> | 613 | </div> |
614 | <div·class="code"> | 614 | <div·class="code"> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab1 | 49 | <a·id="lab1126"></a><h1·class="section">A·typeclass·to·ease·the·handling·of·decidable·properties.</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·A·proposition·is·decidable·whenever·it·is·reflected·by·a·boolean.· | 51 | ·A·proposition·is·decidable·whenever·it·is·reflected·by·a·boolean.· |
52 | </div> | 52 | </div> |
53 | <div·class="code"> | 53 | <div·class="code"> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1140"></a><h1·class="section">Decidable·equivalences.</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ···Author:·Matthieu·Sozeau | 51 | ···Author:·Matthieu·Sozeau |
52 | ···Institution:·LRI,·CNRS·UMR·8623·-·University·Paris·Sud | 52 | ···Institution:·LRI,·CNRS·UMR·8623·-·University·Paris·Sud |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab1 | 49 | <a·id="lab1146"></a><h1·class="section">Typeclass-based·setoids.·Definitions·on·<span·class="inlinecode"><span·class="id"·title="var">Equivalence</span></span>.</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ···Author:·Matthieu·Sozeau | 51 | ···Author:·Matthieu·Sozeau |
52 | ···Institution:·LRI,·CNRS·UMR·8623·-·University·Paris·Sud | 52 | ···Institution:·LRI,·CNRS·UMR·8623·-·University·Paris·Sud |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab1 | 49 | <a·id="lab1127"></a><h1·class="section">Initialization·code·for·typeclasses,·setting·up·the·default·tactic</h1> |
50 | ···for·instance·search. | 50 | ···for·instance·search. |
51 | <div·class="paragraph">·</div> | 51 | <div·class="paragraph">·</div> |
52 | ···Author:·Matthieu·Sozeau | 52 | ···Author:·Matthieu·Sozeau |
53 | ···Institution:·LRI,·CNRS·UMR·8623·-·University·Paris·Sud | 53 | ···Institution:·LRI,·CNRS·UMR·8623·-·University·Paris·Sud |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab11"></a><h1·class="section">Typeclass-based·morphism·definition·and·standard,·minimal·instances</h1> | 49 | <a·id="lab1143"></a><h1·class="section">Typeclass-based·morphism·definition·and·standard,·minimal·instances</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ···Author:·Matthieu·Sozeau | 51 | ···Author:·Matthieu·Sozeau |
52 | ···Institution:·LRI,·CNRS·UMR·8623·-·University·Paris·Sud | 52 | ···Institution:·LRI,·CNRS·UMR·8623·-·University·Paris·Sud |
Offset 70, 15 lines modified | Offset 70, 15 lines modified | ||
70 | <span·class="id"·title="keyword">Generalizable·Variables</span>·<span·class="id"·title="var">A</span>·<span·class="id"·title="var">eqA</span>·<span·class="id"·title="var">B</span>·<span·class="id"·title="var">C</span>·<span·class="id"·title="var">D</span>·<span·class="id"·title="var">R</span>·<span·class="id"·title="var">RA</span>·<span·class="id"·title="var">RB</span>·<span·class="id"·title="var">RC</span>·<span·class="id"·title="var">m</span>·<span·class="id"·title="var">f</span>·<span·class="id"·title="var">x</span>·<span·class="id"·title="var">y</span>.<br/> | 70 | <span·class="id"·title="keyword">Generalizable·Variables</span>·<span·class="id"·title="var">A</span>·<span·class="id"·title="var">eqA</span>·<span·class="id"·title="var">B</span>·<span·class="id"·title="var">C</span>·<span·class="id"·title="var">D</span>·<span·class="id"·title="var">R</span>·<span·class="id"·title="var">RA</span>·<span·class="id"·title="var">RB</span>·<span·class="id"·title="var">RC</span>·<span·class="id"·title="var">m</span>·<span·class="id"·title="var">f</span>·<span·class="id"·title="var">x</span>·<span·class="id"·title="var">y</span>.<br/> |
71 | <span·class="id"·title="keyword">Local·Obligation</span>·<span·class="id"·title="keyword">Tactic</span>·:=·<span·class="id"·title="tactic">try</span>·<span·class="id"·title="tactic">solve</span>·[·<span·class="id"·title="var">simpl_relation</span>·].<br/> | 71 | <span·class="id"·title="keyword">Local·Obligation</span>·<span·class="id"·title="keyword">Tactic</span>·:=·<span·class="id"·title="tactic">try</span>·<span·class="id"·title="tactic">solve</span>·[·<span·class="id"·title="var">simpl_relation</span>·].<br/> |
72 | <br/> | 72 | <br/> |
73 | </div> | 73 | </div> |
74 | <div·class="doc"> | 74 | <div·class="doc"> |
75 | <a·id="lab1 | 75 | <a·id="lab1144"></a><h1·class="section">Morphisms.</h1> |
76 | <div·class="paragraph">·</div> | 76 | <div·class="paragraph">·</div> |
77 | ···We·now·turn·to·the·definition·of·<span·class="inlinecode"><span·class="id"·title="var">Proper</span></span>·and·declare·standard·instances. | 77 | ···We·now·turn·to·the·definition·of·<span·class="inlinecode"><span·class="id"·title="var">Proper</span></span>·and·declare·standard·instances. |
78 | ···These·will·be·used·by·the·<span·class="inlinecode"><span·class="id"·title="tactic">setoid_rewrite</span></span>·tactic·later.· | 78 | ···These·will·be·used·by·the·<span·class="inlinecode"><span·class="id"·title="tactic">setoid_rewrite</span></span>·tactic·later.· |
79 | <div·class="paragraph">·</div> | 79 | <div·class="paragraph">·</div> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab1"></a><h1·class="section"><span·class="inlinecode"><span·class="id"·title="var">Proper</span></span>·instances·for·propositional·connectives.</h1> | 49 | <a·id="lab1128"></a><h1·class="section"><span·class="inlinecode"><span·class="id"·title="var">Proper</span></span>·instances·for·propositional·connectives.</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ···Author:·Matthieu·Sozeau | 51 | ···Author:·Matthieu·Sozeau |
52 | ···Institution:·LRI,·CNRS·UMR·8623·-·University·Paris·Sud | 52 | ···Institution:·LRI,·CNRS·UMR·8623·-·University·Paris·Sud |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1132"></a><h1·class="section">Morphism·instances·for·relations.</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ···Author:·Matthieu·Sozeau | 51 | ···Author:·Matthieu·Sozeau |
52 | ···Institution:·LRI,·CNRS·UMR·8623·-·University·Paris·Sud | 52 | ···Institution:·LRI,·CNRS·UMR·8623·-·University·Paris·Sud |
Offset 103, 8002 lines modified | Offset 103, 8003 lines modified | ||
00000660:·226c·6962·7469·746c·6522·3e4c·6962·7261··"libtitle">Libra | 00000660:·226c·6962·7469·746c·6522·3e4c·6962·7261··"libtitle">Libra | ||
00000670:·7279·2043·6f71·2e43·6c61·7373·6573·2e52··ry·Coq.Classes.R | 00000670:·7279·2043·6f71·2e43·6c61·7373·6573·2e52··ry·Coq.Classes.R | ||
00000680:·656c·6174·696f·6e43·6c61·7373·6573·3c2f··elationClasses</ | 00000680:·656c·6174·696f·6e43·6c61·7373·6573·3c2f··elationClasses</ | ||
00000690:·6831·3e0a·0a3c·6469·7620·636c·6173·733d··h1>..<div·class= | 00000690:·6831·3e0a·0a3c·6469·7620·636c·6173·733d··h1>..<div·class= | ||
000006a0:·2263·6f64·6522·3e0a·0a3c·6272·2f3e·0a3c··"code">..<br/>.< | 000006a0:·2263·6f64·6522·3e0a·0a3c·6272·2f3e·0a3c··"code">..<br/>.< | ||
000006b0:·2f64·6976·3e0a·0a3c·6469·7620·636c·6173··/div>..<div·clas | 000006b0:·2f64·6976·3e0a·0a3c·6469·7620·636c·6173··/div>..<div·clas | Diff chunk too large, falling back to line-by-line diff (7825 lines added, 7825 lines removed) | |
000006c0:·733d·2264·6f63·223e·0a3c·6120·6964·3d22··s="doc">.<a·id=" | 000006c0:·733d·2264·6f63·223e·0a3c·6120·6964·3d22··s="doc">.<a·id=" | ||
000006d0:·6c61·6231·3 | 000006d0:·6c61·6231·3132·3922·3e3c·2f61·3e3c·6831··lab1129"></a><h1 | ||
000006e0:·6c61·7373·3d22·7365·6374·696f·6e22· | 000006e0:·2063·6c61·7373·3d22·7365·6374·696f·6e22···class="section" | ||
000006f0:·7970·6563·6c61·7373·2d62·6173·6564· | 000006f0:·3e54·7970·6563·6c61·7373·2d62·6173·6564··>Typeclass-based | ||
00000700:·656c·6174·696f·6e73·2c20·7461·6374· | 00000700:·2072·656c·6174·696f·6e73·2c20·7461·6374···relations,·tact | ||
00000710:·7320·616e·6420·7374·616e·6461·7264· | 00000710:·6963·7320·616e·6420·7374·616e·6461·7264··ics·and·standard | ||
00000720:·6e73·7461·6e63·6573·3c2f·6831·3e0a· | 00000720:·2069·6e73·7461·6e63·6573·3c2f·6831·3e0a···instances</h1>. | ||
00000730:·3c64·6976·2063·6c61·7373·3d22·7061· | 00000730:·0a0a·3c64·6976·2063·6c61·7373·3d22·7061··..<div·class="pa | ||
00000740:·6772·6170·6822·3e20·3c2f·6469·763e· | 00000740:·7261·6772·6170·6822·3e20·3c2f·6469·763e··ragraph">·</div> | ||
00000750:·2020·2054·6869·7320·6973·2074·6865· | 00000750:·0a0a·2020·2054·6869·7320·6973·2074·6865··..···This·is·the | ||
00000760:·6173·6963·2074·6865·6f72·7920·6e65· | 00000760:·2062·6173·6963·2074·6865·6f72·7920·6e65···basic·theory·ne | ||
00000770:·6564·2074·6f20·666f·726d·616c·697a· | 00000770:·6564·6564·2074·6f20·666f·726d·616c·697a··eded·to·formaliz | ||
00000780:·6d6f·7270·6869·736d·7320·616e·6420· | 00000780:·6520·6d6f·7270·6869·736d·7320·616e·6420··e·morphisms·and· | ||
00000790:·746f·6964·732e·0a0a·3c64·6976·2063· | 00000790:·7365·746f·6964·732e·0a0a·3c64·6976·2063··setoids...<div·c | ||
000007a0:·7373·3d22·7061·7261·6772·6170·6822· | 000007a0:·6c61·7373·3d22·7061·7261·6772·6170·6822··lass="paragraph" | ||
000007b0:·3c2f·6469·763e·0a0a·2020·2041·7574· | 000007b0:·3e20·3c2f·6469·763e·0a0a·2020·2041·7574··>·</div>..···Aut | ||
000007c0:·723a·204d·6174·7468·6965·7520·536f· | 000007c0:·686f·723a·204d·6174·7468·6965·7520·536f··hor:·Matthieu·So | ||
000007d0:·6175·0a20·2020·496e·7374·6974·7574· | 000007d0:·7a65·6175·0a20·2020·496e·7374·6974·7574··zeau.···Institut | ||
000007e0:·6e3a·204c·5249·2c20·434e·5253·2055· | 000007e0:·696f·6e3a·204c·5249·2c20·434e·5253·2055··ion:·LRI,·CNRS·U | ||
000007f0:·2038·3632·3320·2d20·556e·6976·6572· | 000007f0:·4d52·2038·3632·3320·2d20·556e·6976·6572··MR·8623·-·Univer | ||
00000800:·7479·2050·6172·6973·2053·7564·0a0a· | 00000800:·7369·7479·2050·6172·6973·2053·7564·0a0a··sity·Paris·Sud.. | ||
00000810:·6469·763e·0a3c·6469·7620·636c·6173· | 00000810:·3c2f·6469·763e·0a3c·6469·7620·636c·6173··</div>.<div·clas | ||
00000820:·2263·6f64·6522·3e0a·0a3c·6272·2f3e· | 00000820:·733d·2263·6f64·6522·3e0a·0a3c·6272·2f3e··s="code">..<br/> | ||
00000830:·7370·616e·2063·6c61·7373·3d22·6964· | 00000830:·0a3c·7370·616e·2063·6c61·7373·3d22·6964··.<span·class="id | ||
00000840:·7469·746c·653d·226b·6579·776f·7264· | 00000840:·2220·7469·746c·653d·226b·6579·776f·7264··"·title="keyword | ||
00000850:·5265·7175·6972·653c·2f73·7061·6e3e· | 00000850:·223e·5265·7175·6972·653c·2f73·7061·6e3e··">Require</span> | ||
00000860:·7370·616e·2063·6c61·7373·3d22·6964· | 00000860:·203c·7370·616e·2063·6c61·7373·3d22·6964···<span·class="id | ||
00000870:·7469·746c·653d·226b·6579·776f·7264· | 00000870:·2220·7469·746c·653d·226b·6579·776f·7264··"·title="keyword | ||
00000880:·4578·706f·7274·3c2f·7370·616e·3e20· | 00000880:·223e·4578·706f·7274·3c2f·7370·616e·3e20··">Export</span>· | ||
00000890:·2063·6c61·7373·3d22·6964·7265·6622· | 00000890:·3c61·2063·6c61·7373·3d22·6964·7265·6622··<a·class="idref" | ||
000008a0:·7265·663d·2243·6f71·2e43·6c61·7373· | 000008a0:·2068·7265·663d·2243·6f71·2e43·6c61·7373···href="Coq.Class | ||
000008b0:·2e49·6e69·742e·6874·6d6c·2322·3e3c· | 000008b0:·6573·2e49·6e69·742e·6874·6d6c·2322·3e3c··es.Init.html#">< | ||
000008c0:·616e·2063·6c61·7373·3d22·6964·2220· | 000008c0:·7370·616e·2063·6c61·7373·3d22·6964·2220··span·class="id"· | ||
000008d0:·746c·653d·226c·6962·7261·7279·223e· | 000008d0:·7469·746c·653d·226c·6962·7261·7279·223e··title="library"> | ||
000008e0:·712e·436c·6173·7365·732e·496e·6974· | 000008e0:·436f·712e·436c·6173·7365·732e·496e·6974··Coq.Classes.Init | ||
000008f0:·7370·616e·3e3c·2f61·3e2e·3c62·722f· | 000008f0:·3c2f·7370·616e·3e3c·2f61·3e2e·3c62·722f··</span></a>.<br/ | ||
00000900:·3c73·7061·6e20·636c·6173·733d·2269· | 00000900:·3e0a·3c73·7061·6e20·636c·6173·733d·2269··>.<span·class="i | ||
00000910:·2074·6974·6c65·3d22·6b65·7977·6f72· | 00000910:·6422·2074·6974·6c65·3d22·6b65·7977·6f72··d"·title="keywor | ||
00000920:·3e52·6571·7569·7265·3c2f·7370·616e· | 00000920:·6422·3e52·6571·7569·7265·3c2f·7370·616e··d">Require</span | ||
00000930:·3c73·7061·6e20·636c·6173·733d·2269· | 00000930:·3e20·3c73·7061·6e20·636c·6173·733d·2269··>·<span·class="i | ||
00000940:·2074·6974·6c65·3d22·6b65·7977·6f72· | 00000940:·6422·2074·6974·6c65·3d22·6b65·7977·6f72··d"·title="keywor | ||
00000950:·3e49·6d70·6f72·743c·2f73·7061·6e3e· | 00000950:·6422·3e49·6d70·6f72·743c·2f73·7061·6e3e··d">Import</span> | ||
00000960:·6120·636c·6173·733d·2269·6472·6566· | 00000960:·203c·6120·636c·6173·733d·2269·6472·6566···<a·class="idref | ||
00000970:·6872·6566·3d22·436f·712e·5072·6f67· | 00000970:·2220·6872·6566·3d22·436f·712e·5072·6f67··"·href="Coq.Prog | ||
00000980:·6d2e·4261·7369·6373·2e68·746d·6c23· | 00000980:·7261·6d2e·4261·7369·6373·2e68·746d·6c23··ram.Basics.html# | ||
00000990:·3c73·7061·6e20·636c·6173·733d·2269· | 00000990:·223e·3c73·7061·6e20·636c·6173·733d·2269··"><span·class="i | ||
000009a0:·2074·6974·6c65·3d22·6c69·6272·6172· | 000009a0:·6422·2074·6974·6c65·3d22·6c69·6272·6172··d"·title="librar | ||
000009b0:·3e43·6f71·2e50·726f·6772·616d·2e42· | 000009b0:·7922·3e43·6f71·2e50·726f·6772·616d·2e42··y">Coq.Program.B | ||
000009c0:·6963·733c·2f73·7061·6e3e·3c2f·613e· | 000009c0:·6173·6963·733c·2f73·7061·6e3e·3c2f·613e··asics</span></a> | ||
000009d0:·6272·2f3e·0a3c·7370·616e·2063·6c61· | 000009d0:·2e3c·6272·2f3e·0a3c·7370·616e·2063·6c61··.<br/>.<span·cla | ||
000009e0:·3d22·6964·2220·7469·746c·653d·226b· | 000009e0:·7373·3d22·6964·2220·7469·746c·653d·226b··ss="id"·title="k | ||
000009f0:·776f·7264·223e·5265·7175·6972·653c· | 000009f0:·6579·776f·7264·223e·5265·7175·6972·653c··eyword">Require< | ||
00000a00:·7061·6e3e·203c·7370·616e·2063·6c61· | 00000a00:·2f73·7061·6e3e·203c·7370·616e·2063·6c61··/span>·<span·cla | ||
00000a10:·3d22·6964·2220·7469·746c·653d·226b· | 00000a10:·7373·3d22·6964·2220·7469·746c·653d·226b··ss="id"·title="k | ||
00000a20:·776f·7264·223e·496d·706f·7274·3c2f· | 00000a20:·6579·776f·7264·223e·496d·706f·7274·3c2f··eyword">Import</ | ||
00000a30:·616e·3e20·3c61·2063·6c61·7373·3d22· | 00000a30:·7370·616e·3e20·3c61·2063·6c61·7373·3d22··span>·<a·class=" | ||
00000a40:·7265·6622·2068·7265·663d·2243·6f71· | 00000a40:·6964·7265·6622·2068·7265·663d·2243·6f71··idref"·href="Coq | ||
00000a50:·726f·6772·616d·2e54·6163·7469·6373· | 00000a50:·2e50·726f·6772·616d·2e54·6163·7469·6373··.Program.Tactics | ||
00000a60:·746d·6c23·223e·3c73·7061·6e20·636c· | 00000a60:·2e68·746d·6c23·223e·3c73·7061·6e20·636c··.html#"><span·cl | ||
00000a70:·733d·2269·6422·2074·6974·6c65·3d22· | 00000a70:·6173·733d·2269·6422·2074·6974·6c65·3d22··ass="id"·title=" | ||
00000a80:·6272·6172·7922·3e43·6f71·2e50·726f· | 00000a80:·6c69·6272·6172·7922·3e43·6f71·2e50·726f··library">Coq.Pro | ||
00000a90:·616d·2e54·6163·7469·6373·3c2f·7370· | 00000a90:·6772·616d·2e54·6163·7469·6373·3c2f·7370··gram.Tactics</sp | ||
00000aa0:·3e3c·2f61·3e2e·3c62·722f·3e0a·3c73· | 00000aa0:·616e·3e3c·2f61·3e2e·3c62·722f·3e0a·3c73··an></a>.<br/>.<s | ||
00000ab0:·6e20·636c·6173·733d·2269·6422·2074· | 00000ab0:·7061·6e20·636c·6173·733d·2269·6422·2074··pan·class="id"·t | ||
00000ac0:·6c65·3d22·6b65·7977·6f72·6422·3e52· | 00000ac0:·6974·6c65·3d22·6b65·7977·6f72·6422·3e52··itle="keyword">R | ||
00000ad0:·7569·7265·3c2f·7370·616e·3e20·3c73· | 00000ad0:·6571·7569·7265·3c2f·7370·616e·3e20·3c73··equire</span>·<s | ||
00000ae0:·6e20·636c·6173·733d·2269·6422·2074· | 00000ae0:·7061·6e20·636c·6173·733d·2269·6422·2074··pan·class="id"·t | ||
00000af0:·6c65·3d22·6b65·7977·6f72·6422·3e49· | 00000af0:·6974·6c65·3d22·6b65·7977·6f72·6422·3e49··itle="keyword">I | ||
00000b00:·6f72·743c·2f73·7061·6e3e·203c·6120· | 00000b00:·6d70·6f72·743c·2f73·7061·6e3e·203c·6120··mport</span>·<a· | ||
00000b10:·6173·733d·2269·6472·6566·2220·6872· | 00000b10:·636c·6173·733d·2269·6472·6566·2220·6872··class="idref"·hr | ||
00000b20:·3d22·436f·712e·5265·6c61·7469·6f6e· | 00000b20:·6566·3d22·436f·712e·5265·6c61·7469·6f6e··ef="Coq.Relation | ||
00000b30:·5265·6c61·7469·6f6e·5f44·6566·696e· | 00000b30:·732e·5265·6c61·7469·6f6e·5f44·6566·696e··s.Relation_Defin | ||
00000b40:·696f·6e73·2e68·746d·6c23·223e·3c73· | 00000b40:·6974·696f·6e73·2e68·746d·6c23·223e·3c73··itions.html#"><s | ||
00000b50:·6e20·636c·6173·733d·2269·6422·2074· | 00000b50:·7061·6e20·636c·6173·733d·2269·6422·2074··pan·class="id"·t | ||
00000b60:·6c65·3d22·6c69·6272·6172·7922·3e43· | 00000b60:·6974·6c65·3d22·6c69·6272·6172·7922·3e43··itle="library">C | ||
00000b70:·2e52·656c·6174·696f·6e73·2e52·656c· | 00000b70:·6f71·2e52·656c·6174·696f·6e73·2e52·656c··oq.Relations.Rel | ||
00000b80:·696f·6e5f·4465·6669·6e69·7469·6f6e· | 00000b80:·6174·696f·6e5f·4465·6669·6e69·7469·6f6e··ation_Definition | ||
00000b90:·2f73·7061·6e3e·3c2f·613e·2e3c·6272· | 00000b90:·733c·2f73·7061·6e3e·3c2f·613e·2e3c·6272··s</span></a>.<br | ||
00000ba0:·0a0a·3c62·722f·3e0a·3c73·7061·6e20· | 00000ba0:·2f3e·0a0a·3c62·722f·3e0a·3c73·7061·6e20··/>..<br/>.<span· | ||
00000bb0:·6173·733d·2269·6422·2074·6974·6c65· | 00000bb0:·636c·6173·733d·2269·6422·2074·6974·6c65··class="id"·title | ||
00000bc0:·6b65·7977·6f72·6422·3e47·656e·6572· | 00000bc0:·3d22·6b65·7977·6f72·6422·3e47·656e·6572··="keyword">Gener | ||
00000bd0:·697a·6162·6c65·2056·6172·6961·626c· | 00000bd0:·616c·697a·6162·6c65·2056·6172·6961·626c··alizable·Variabl | ||
00000be0:·3c2f·7370·616e·3e20·3c73·7061·6e20· | 00000be0:·6573·3c2f·7370·616e·3e20·3c73·7061·6e20··es</span>·<span· | ||
00000bf0:·6173·733d·2269·6422·2074·6974·6c65· | 00000bf0:·636c·6173·733d·2269·6422·2074·6974·6c65··class="id"·title | ||
00000c00:·7661·7222·3e41·3c2f·7370·616e·3e20· | 00000c00:·3d22·7661·7222·3e41·3c2f·7370·616e·3e20··="var">A</span>· | ||
00000c10:·7061·6e20·636c·6173·733d·2269·6422· | 00000c10:·3c73·7061·6e20·636c·6173·733d·2269·6422··<span·class="id" | ||
00000c20:·6974·6c65·3d22·7661·7222·3e42·3c2f· | 00000c20:·2074·6974·6c65·3d22·7661·7222·3e42·3c2f···title="var">B</ | ||
00000c30:·616e·3e20·3c73·7061·6e20·636c·6173· | 00000c30:·7370·616e·3e20·3c73·7061·6e20·636c·6173··span>·<span·clas | ||
00000c40:·2269·6422·2074·6974·6c65·3d22·7661· | 00000c40:·733d·2269·6422·2074·6974·6c65·3d22·7661··s="id"·title="va | ||
00000c50:·3e43·3c2f·7370·616e·3e20·3c73·7061· | 00000c50:·7222·3e43·3c2f·7370·616e·3e20·3c73·7061··r">C</span>·<spa | ||
00000c60:·636c·6173·733d·2269·6422·2074·6974· | 00000c60:·6e20·636c·6173·733d·2269·6422·2074·6974··n·class="id"·tit | ||
00000c70:·3d22·7661·7222·3e44·3c2f·7370·616e· | 00000c70:·6c65·3d22·7661·7222·3e44·3c2f·7370·616e··le="var">D</span | ||
00000c80:·3c73·7061·6e20·636c·6173·733d·2269· | 00000c80:·3e20·3c73·7061·6e20·636c·6173·733d·2269··>·<span·class="i | ||
00000c90:·2074·6974·6c65·3d22·7661·7222·3e52· | 00000c90:·6422·2074·6974·6c65·3d22·7661·7222·3e52··d"·title="var">R | ||
00000ca0:·7370·616e·3e20·3c73·7061·6e20·636c· | 00000ca0:·3c2f·7370·616e·3e20·3c73·7061·6e20·636c··</span>·<span·cl | ||
00000cb0:·733d·2269·6422·2074·6974·6c65·3d22· | 00000cb0:·6173·733d·2269·6422·2074·6974·6c65·3d22··ass="id"·title=" | ||
00000cc0:·7222·3e53·3c2f·7370·616e·3e20·3c73· | 00000cc0:·7661·7222·3e53·3c2f·7370·616e·3e20·3c73··var">S</span>·<s | ||
00000cd0:·6e20·636c·6173·733d·2269·6422·2074· | 00000cd0:·7061·6e20·636c·6173·733d·2269·6422·2074··pan·class="id"·t | ||
00000ce0:·6c65·3d22·7661·7222·3e54·3c2f·7370· | 00000ce0:·6974·6c65·3d22·7661·7222·3e54·3c2f·7370··itle="var">T</sp | ||
00000cf0:·3e20·3c73·7061·6e20·636c·6173·733d· | 00000cf0:·616e·3e20·3c73·7061·6e20·636c·6173·733d··an>·<span·class= | ||
00000d00:·6422·2074·6974·6c65·3d22·7661·7222· | 00000d00:·2269·6422·2074·6974·6c65·3d22·7661·7222··"id"·title="var" | ||
00000d10:·3c2f·7370·616e·3e20·3c73·7061·6e20· | 00000d10:·3e55·3c2f·7370·616e·3e20·3c73·7061·6e20··>U</span>·<span· | ||
00000d20:·6173·733d·2269·6422·2074·6974·6c65· | 00000d20:·636c·6173·733d·2269·6422·2074·6974·6c65··class="id"·title | ||
00000d30:·7661·7222·3e6c·3c2f·7370·616e·3e20· | 00000d30:·3d22·7661·7222·3e6c·3c2f·7370·616e·3e20··="var">l</span>· | ||
00000d40:·7061·6e20·636c·6173·733d·2269·6422· | 00000d40:·3c73·7061·6e20·636c·6173·733d·2269·6422··<span·class="id" | ||
00000d50:·6974·6c65·3d22·7661·7222·3e65·7141· | 00000d50:·2074·6974·6c65·3d22·7661·7222·3e65·7141···title="var">eqA | ||
00000d60:·7370·616e·3e20·3c73·7061·6e20·636c· | 00000d60:·3c2f·7370·616e·3e20·3c73·7061·6e20·636c··</span>·<span·cl | ||
00000d70:·733d·2269·6422·2074·6974·6c65·3d22· | 00000d70:·6173·733d·2269·6422·2074·6974·6c65·3d22··ass="id"·title=" | ||
00000d80:·7222·3e65·7142·3c2f·7370·616e·3e20· | 00000d80:·7661·7222·3e65·7142·3c2f·7370·616e·3e20··var">eqB</span>· | ||
00000d90:·7061·6e20·636c·6173·733d·2269·6422· | 00000d90:·3c73·7061·6e20·636c·6173·733d·2269·6422··<span·class="id" | ||
00000da0:·6974·6c65·3d22·7661·7222·3e65·7143· | 00000da0:·2074·6974·6c65·3d22·7661·7222·3e65·7143···title="var">eqC | ||
00000db0:·7370·616e·3e20·3c73·7061·6e20·636c· | 00000db0:·3c2f·7370·616e·3e20·3c73·7061·6e20·636c··</span>·<span·cl | ||
00000dc0:·733d·2269·6422·2074·6974·6c65·3d22· | 00000dc0:·6173·733d·2269·6422·2074·6974·6c65·3d22··ass="id"·title=" | ||
00000dd0:·7222·3e65·7144·3c2f·7370·616e·3e2e· | 00000dd0:·7661·7222·3e65·7144·3c2f·7370·616e·3e2e··var">eqD</span>. | ||
00000de0:·722f·3e0a·0a3c·6272·2f3e·0a3c·2f64· | 00000de0:·3c62·722f·3e0a·0a3c·6272·2f3e·0a3c·2f64··<br/>..<br/>.</d | ||
00000df0:·3e0a·0a3c·6469·7620·636c·6173·733d· | 00000df0:·6976·3e0a·0a3c·6469·7620·636c·6173·733d··iv>..<div·class= | ||
00000e00:·6f63·223e·0a57·6520·616c·6c6f·7720· | 00000e00:·2264·6f63·223e·0a57·6520·616c·6c6f·7720··"doc">.We·allow· | ||
00000e10:·2075·6e66·6f6c·6420·7468·6520·3c73· | 00000e10:·746f·2075·6e66·6f6c·6420·7468·6520·3c73··to·unfold·the·<s | ||
00000e20:·6e20·636c·6173·733d·2269·6e6c·696e· | 00000e20:·7061·6e20·636c·6173·733d·2269·6e6c·696e··pan·class="inlin | ||
00000e30:·6f64·6522·3e3c·7370·616e·2063·6c61· | 00000e30:·6563·6f64·6522·3e3c·7370·616e·2063·6c61··ecode"><span·cla | ||
Max diff block lines reached; 23243/1103671 bytes (2.11%) of diff not shown. |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab13"></a><h1·class="section">Relations·over·pairs</h1> | 49 | <a·id="lab1133"></a><h1·class="section">Relations·over·pairs</h1> |
50 | </div> | 50 | </div> |
51 | <div·class="code"> | 51 | <div·class="code"> |
52 | <br/> | 52 | <br/> |
53 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Lists.SetoidList.html#"><span·class="id"·title="library">SetoidList</span></a>.<br/> | 53 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Lists.SetoidList.html#"><span·class="id"·title="library">SetoidList</span></a>.<br/> |
54 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Relations.Relations.html#"><span·class="id"·title="library">Relations</span></a>·<a·class="idref"·href="Coq.Classes.Morphisms.html#"><span·class="id"·title="library">Morphisms</span></a>.<br/> | 54 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Relations.Relations.html#"><span·class="id"·title="library">Relations</span></a>·<a·class="idref"·href="Coq.Classes.Morphisms.html#"><span·class="id"·title="library">Morphisms</span></a>.<br/> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1145"></a><h1·class="section">Typeclass-based·setoids,·tactics·and·standard·instances.</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ···Author:·Matthieu·Sozeau | 51 | ···Author:·Matthieu·Sozeau |
52 | ···Institution:·LRI,·CNRS·UMR·8623·-·University·Paris·Sud | 52 | ···Institution:·LRI,·CNRS·UMR·8623·-·University·Paris·Sud |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab1 | 49 | <a·id="lab1142"></a><h1·class="section">Decidable·setoid·equality·theory.</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ···Author:·Matthieu·Sozeau | 51 | ···Author:·Matthieu·Sozeau |
52 | ···Institution:·LRI,·CNRS·UMR·8623·-·University·Paris·Sud | 52 | ···Institution:·LRI,·CNRS·UMR·8623·-·University·Paris·Sud |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab7"></a><h1·class="section">Tactics·for·typeclass-based·setoids.</h1> | 49 | <a·id="lab1137"></a><h1·class="section">Tactics·for·typeclass-based·setoids.</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ···Author:·Matthieu·Sozeau | 51 | ···Author:·Matthieu·Sozeau |
52 | ···Institution:·LRI,·CNRS·UMR·8623·-·University·Paris·Sud | 52 | ···Institution:·LRI,·CNRS·UMR·8623·-·University·Paris·Sud |
Offset 47, 15 lines modified | Offset 47, 15 lines modified | ||
47 | <br/> | 47 | <br/> |
48 | <br/> | 48 | <br/> |
49 | </div> | 49 | </div> |
50 | <div·class="doc"> | 50 | <div·class="doc"> |
51 | <a·id="lab | 51 | <a·id="lab1064"></a><h1·class="section">FMapAVL</h1> |
52 | <div·class="paragraph">·</div> | 52 | <div·class="paragraph">·</div> |
53 | ·This·module·implements·maps·using·AVL·trees. | 53 | ·This·module·implements·maps·using·AVL·trees. |
54 | ····It·follows·the·implementation·from·Ocaml's·standard·library. | 54 | ····It·follows·the·implementation·from·Ocaml's·standard·library. |
55 | <div·class="paragraph">·</div> | 55 | <div·class="paragraph">·</div> |
Offset 84, 15 lines modified | Offset 84, 15 lines modified | ||
84 | <span·class="id"·title="keyword">Notation</span>·<a·id="0ecba978737ceb119698c5cbbee795eb"·class="idref"·href="#0ecba978737ceb119698c5cbbee795eb"><span·class="id"·title="notation">"</span></a>s·#1"·:=·(<a·class="idref"·href="Coq.Init.Datatypes.html#fst"><span·class="id"·title="definition">fst</span></a>·<span·class="id"·title="var">s</span>)·(<span·class="id"·title="tactic">at</span>·<span·class="id"·title="keyword">level</span>·9,·<span·class="id"·title="var">format</span>·"s·'#1'")·:·<span·class="id"·title="var">pair_scope</span>.<br/> | 84 | <span·class="id"·title="keyword">Notation</span>·<a·id="0ecba978737ceb119698c5cbbee795eb"·class="idref"·href="#0ecba978737ceb119698c5cbbee795eb"><span·class="id"·title="notation">"</span></a>s·#1"·:=·(<a·class="idref"·href="Coq.Init.Datatypes.html#fst"><span·class="id"·title="definition">fst</span></a>·<span·class="id"·title="var">s</span>)·(<span·class="id"·title="tactic">at</span>·<span·class="id"·title="keyword">level</span>·9,·<span·class="id"·title="var">format</span>·"s·'#1'")·:·<span·class="id"·title="var">pair_scope</span>.<br/> |
85 | <span·class="id"·title="keyword">Notation</span>·<a·id="3434f18bfdd992fed799ae34b564c3f9"·class="idref"·href="#3434f18bfdd992fed799ae34b564c3f9"><span·class="id"·title="notation">"</span></a>s·#2"·:=·(<a·class="idref"·href="Coq.Init.Datatypes.html#snd"><span·class="id"·title="definition">snd</span></a>·<span·class="id"·title="var">s</span>)·(<span·class="id"·title="tactic">at</span>·<span·class="id"·title="keyword">level</span>·9,·<span·class="id"·title="var">format</span>·"s·'#2'")·:·<span·class="id"·title="var">pair_scope</span>.<br/> | 85 | <span·class="id"·title="keyword">Notation</span>·<a·id="3434f18bfdd992fed799ae34b564c3f9"·class="idref"·href="#3434f18bfdd992fed799ae34b564c3f9"><span·class="id"·title="notation">"</span></a>s·#2"·:=·(<a·class="idref"·href="Coq.Init.Datatypes.html#snd"><span·class="id"·title="definition">snd</span></a>·<span·class="id"·title="var">s</span>)·(<span·class="id"·title="tactic">at</span>·<span·class="id"·title="keyword">level</span>·9,·<span·class="id"·title="var">format</span>·"s·'#2'")·:·<span·class="id"·title="var">pair_scope</span>.<br/> |
86 | <br/> | 86 | <br/> |
87 | </div> | 87 | </div> |
88 | <div·class="doc"> | 88 | <div·class="doc"> |
89 | <a·id="lab | 89 | <a·id="lab1065"></a><h1·class="section">The·Raw·functor</h1> |
90 | <div·class="paragraph">·</div> | 90 | <div·class="paragraph">·</div> |
91 | ···Functor·of·pure·functions·+·separate·proofs·of·invariant | 91 | ···Functor·of·pure·functions·+·separate·proofs·of·invariant |
92 | ···preservation· | 92 | ···preservation· |
93 | </div> | 93 | </div> |
Offset 110, 19 lines modified | Offset 110, 19 lines modified | ||
110 | #[<span·class="id"·title="var">global</span>]<br/> | 110 | #[<span·class="id"·title="var">global</span>]<br/> |
111 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Transparent</span>·<a·class="idref"·href="Coq.FSets.FMapAVL.html#Raw.key"><span·class="id"·title="definition">key</span></a>·:·<span·class="id"·title="var">core</span>.<br/> | 111 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Transparent</span>·<a·class="idref"·href="Coq.FSets.FMapAVL.html#Raw.key"><span·class="id"·title="definition">key</span></a>·:·<span·class="id"·title="var">core</span>.<br/> |
112 | <br/> | 112 | <br/> |
113 | </div> | 113 | </div> |
114 | <div·class="doc"> | 114 | <div·class="doc"> |
115 | <a·id="lab | 115 | <a·id="lab1066"></a><h1·class="section">Trees</h1> |
116 | <div·class="paragraph">·</div> | 116 | <div·class="paragraph">·</div> |
117 | <a·id="lab | 117 | <a·id="lab1067"></a><h1·class="section">Trees</h1> |
118 | <div·class="paragraph">·</div> | 118 | <div·class="paragraph">·</div> |
119 | ···The·fifth·field·of·<span·class="inlinecode"><span·class="id"·title="var">Node</span></span>·is·the·height·of·the·tree· | 119 | ···The·fifth·field·of·<span·class="inlinecode"><span·class="id"·title="var">Node</span></span>·is·the·height·of·the·tree· |
120 | </div> | 120 | </div> |
121 | <div·class="code"> | 121 | <div·class="code"> |
Offset 146, 15 lines modified | Offset 146, 15 lines modified | ||
146 | <br/> | 146 | <br/> |
147 | <span·class="id"·title="keyword">Implicit</span>·<span·class="id"·title="keyword">Types</span>·<span·class="id"·title="var">m</span>·:·<a·class="idref"·href="Coq.FSets.FMapAVL.html#Raw.t"><span·class="id"·title="abbreviation">t</span></a>.<br/> | 147 | <span·class="id"·title="keyword">Implicit</span>·<span·class="id"·title="keyword">Types</span>·<span·class="id"·title="var">m</span>·:·<a·class="idref"·href="Coq.FSets.FMapAVL.html#Raw.t"><span·class="id"·title="abbreviation">t</span></a>.<br/> |
148 | <br/> | 148 | <br/> |
149 | </div> | 149 | </div> |
150 | <div·class="doc"> | 150 | <div·class="doc"> |
151 | <a·id="lab | 151 | <a·id="lab1068"></a><h1·class="section">Basic·functions·on·trees:·height·and·cardinal</h1> |
152 | </div> | 152 | </div> |
153 | <div·class="code"> | 153 | <div·class="code"> |
154 | <br/> | 154 | <br/> |
155 | <span·class="id"·title="keyword">Definition</span>·<a·id="Raw.height"·class="idref"·href="#Raw.height"><span·class="id"·title="definition">height</span></a>·(<a·id="m:6"·class="idref"·href="#m:6"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapAVL.html#Raw.t"><span·class="id"·title="abbreviation">t</span></a>)·:·<a·class="idref"·href="Coq.FSets.FMapAVL.html#Raw.int"><span·class="id"·title="abbreviation">int</span></a>·:=<br/> | 155 | <span·class="id"·title="keyword">Definition</span>·<a·id="Raw.height"·class="idref"·href="#Raw.height"><span·class="id"·title="definition">height</span></a>·(<a·id="m:6"·class="idref"·href="#m:6"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapAVL.html#Raw.t"><span·class="id"·title="abbreviation">t</span></a>)·:·<a·class="idref"·href="Coq.FSets.FMapAVL.html#Raw.int"><span·class="id"·title="abbreviation">int</span></a>·:=<br/> |
156 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.FSets.FMapAVL.html#m:6"><span·class="id"·title="variable">m</span></a>·<span·class="id"·title="keyword">with</span><br/> | 156 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.FSets.FMapAVL.html#m:6"><span·class="id"·title="variable">m</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 169, 39 lines modified | Offset 169, 39 lines modified | ||
169 | |·<a·class="idref"·href="Coq.FSets.FMapAVL.html#Raw.Node"><span·class="id"·title="constructor">Node</span></a>·<span·class="id"·title="var">l</span>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">r</span>·<span·class="id"·title="var">_</span>·=>·<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·(<a·class="idref"·href="Coq.FSets.FMapAVL.html#cardinal:9"><span·class="id"·title="definition">cardinal</span></a>·<span·class="id"·title="var">l</span>·<a·class="idref"·href="Coq.Init.Peano.html#0dacc1786c5ba797d47dd85006231633"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.FSets.FMapAVL.html#cardinal:9"><span·class="id"·title="definition">cardinal</span></a>·<span·class="id"·title="var">r</span>)<br/> | 169 | |·<a·class="idref"·href="Coq.FSets.FMapAVL.html#Raw.Node"><span·class="id"·title="constructor">Node</span></a>·<span·class="id"·title="var">l</span>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">r</span>·<span·class="id"·title="var">_</span>·=>·<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·(<a·class="idref"·href="Coq.FSets.FMapAVL.html#cardinal:9"><span·class="id"·title="definition">cardinal</span></a>·<span·class="id"·title="var">l</span>·<a·class="idref"·href="Coq.Init.Peano.html#0dacc1786c5ba797d47dd85006231633"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.FSets.FMapAVL.html#cardinal:9"><span·class="id"·title="definition">cardinal</span></a>·<span·class="id"·title="var">r</span>)<br/> |
170 | <span·class="id"·title="keyword">end</span>.<br/> | 170 | <span·class="id"·title="keyword">end</span>.<br/> |
171 | <br/> | 171 | <br/> |
172 | </div> | 172 | </div> |
173 | <div·class="doc"> | 173 | <div·class="doc"> |
174 | <a·id="lab | 174 | <a·id="lab1069"></a><h1·class="section">Empty·Map</h1> |
175 | </div> | 175 | </div> |
176 | <div·class="code"> | 176 | <div·class="code"> |
177 | <br/> | 177 | <br/> |
178 | <span·class="id"·title="keyword">Definition</span>·<a·id="Raw.empty"·class="idref"·href="#Raw.empty"><span·class="id"·title="definition">empty</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapAVL.html#Raw.t"><span·class="id"·title="abbreviation">t</span></a>·:=·<a·class="idref"·href="Coq.FSets.FMapAVL.html#Raw.Leaf"><span·class="id"·title="constructor">Leaf</span></a>.<br/> | 178 | <span·class="id"·title="keyword">Definition</span>·<a·id="Raw.empty"·class="idref"·href="#Raw.empty"><span·class="id"·title="definition">empty</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapAVL.html#Raw.t"><span·class="id"·title="abbreviation">t</span></a>·:=·<a·class="idref"·href="Coq.FSets.FMapAVL.html#Raw.Leaf"><span·class="id"·title="constructor">Leaf</span></a>.<br/> |
179 | <br/> | 179 | <br/> |
180 | </div> | 180 | </div> |
181 | <div·class="doc"> | 181 | <div·class="doc"> |
182 | <a·id="lab | 182 | <a·id="lab1070"></a><h1·class="section">Emptyness·test</h1> |
183 | </div> | 183 | </div> |
184 | <div·class="code"> | 184 | <div·class="code"> |
185 | <br/> | 185 | <br/> |
186 | <span·class="id"·title="keyword">Definition</span>·<a·id="Raw.is_empty"·class="idref"·href="#Raw.is_empty"><span·class="id"·title="definition">is_empty</span></a>·<a·id="m:11"·class="idref"·href="#m:11"><span·class="id"·title="binder">m</span></a>·:=·<span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.FSets.FMapAVL.html#m:11"><span·class="id"·title="variable">m</span></a>·<span·class="id"·title="keyword">with</span>·<a·class="idref"·href="Coq.FSets.FMapAVL.html#Raw.Leaf"><span·class="id"·title="constructor">Leaf</span></a>·=>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·|·<span·class="id"·title="var">_</span>·=>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>·<span·class="id"·title="keyword">end</span>.<br/> | 186 | <span·class="id"·title="keyword">Definition</span>·<a·id="Raw.is_empty"·class="idref"·href="#Raw.is_empty"><span·class="id"·title="definition">is_empty</span></a>·<a·id="m:11"·class="idref"·href="#m:11"><span·class="id"·title="binder">m</span></a>·:=·<span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.FSets.FMapAVL.html#m:11"><span·class="id"·title="variable">m</span></a>·<span·class="id"·title="keyword">with</span>·<a·class="idref"·href="Coq.FSets.FMapAVL.html#Raw.Leaf"><span·class="id"·title="constructor">Leaf</span></a>·=>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·|·<span·class="id"·title="var">_</span>·=>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>·<span·class="id"·title="keyword">end</span>.<br/> |
187 | <br/> | 187 | <br/> |
188 | </div> | 188 | </div> |
189 | <div·class="doc"> | 189 | <div·class="doc"> |
190 | <a·id="lab | 190 | <a·id="lab1071"></a><h1·class="section">Membership</h1> |
191 | <div·class="paragraph">·</div> | 191 | <div·class="paragraph">·</div> |
192 | ·The·<span·class="inlinecode"><span·class="id"·title="var">mem</span></span>·function·is·deciding·membership.·It·exploits·the·<span·class="inlinecode"><span·class="id"·title="var">bst</span></span>·property | 192 | ·The·<span·class="inlinecode"><span·class="id"·title="var">mem</span></span>·function·is·deciding·membership.·It·exploits·the·<span·class="inlinecode"><span·class="id"·title="var">bst</span></span>·property |
193 | ····to·achieve·logarithmic·complexity.· | 193 | ····to·achieve·logarithmic·complexity.· |
194 | </div> | 194 | </div> |
195 | <div·class="code"> | 195 | <div·class="code"> |
Offset 228, 15 lines modified | Offset 228, 15 lines modified | ||
228 | <span·class="id"·title="keyword">end</span><br/> | 228 | <span·class="id"·title="keyword">end</span><br/> |
229 | <span·class="id"·title="keyword">end</span>.<br/> | 229 | <span·class="id"·title="keyword">end</span>.<br/> |
230 | <br/> | 230 | <br/> |
231 | </div> | 231 | </div> |
232 | <div·class="doc"> | 232 | <div·class="doc"> |
233 | <a·id="lab | 233 | <a·id="lab1072"></a><h1·class="section">Helper·functions</h1> |
234 | <div·class="paragraph">·</div> | 234 | <div·class="paragraph">·</div> |
235 | ·<span·class="inlinecode"><span·class="id"·title="var">create</span></span>·<span·class="inlinecode"><span·class="id"·title="var">l</span></span>·<span·class="inlinecode"><span·class="id"·title="var">x</span></span>·<span·class="inlinecode"><span·class="id"·title="var">r</span></span>·creates·a·node,·assuming·<span·class="inlinecode"><span·class="id"·title="var">l</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">r</span></span> | 235 | ·<span·class="inlinecode"><span·class="id"·title="var">create</span></span>·<span·class="inlinecode"><span·class="id"·title="var">l</span></span>·<span·class="inlinecode"><span·class="id"·title="var">x</span></span>·<span·class="inlinecode"><span·class="id"·title="var">r</span></span>·creates·a·node,·assuming·<span·class="inlinecode"><span·class="id"·title="var">l</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">r</span></span> |
236 | ····to·be·balanced·and·<span·class="inlinecode">|<span·class="id"·title="var">height</span></span>·<span·class="inlinecode"><span·class="id"·title="var">l</span></span>·<span·class="inlinecode">-</span>·<span·class="inlinecode"><span·class="id"·title="var">height</span></span>·<span·class="inlinecode"><span·class="id"·title="var">r</span>|</span>·<span·class="inlinecode"><=</span>·<span·class="inlinecode">2</span>.· | 236 | ····to·be·balanced·and·<span·class="inlinecode">|<span·class="id"·title="var">height</span></span>·<span·class="inlinecode"><span·class="id"·title="var">l</span></span>·<span·class="inlinecode">-</span>·<span·class="inlinecode"><span·class="id"·title="var">height</span></span>·<span·class="inlinecode"><span·class="id"·title="var">r</span>|</span>·<span·class="inlinecode"><=</span>·<span·class="inlinecode">2</span>.· |
237 | </div> | 237 | </div> |
238 | <div·class="code"> | 238 | <div·class="code"> |
Offset 291, 15 lines modified | Offset 291, 15 lines modified | ||
291 | <span·class="id"·title="keyword">else</span><br/> | 291 | <span·class="id"·title="keyword">else</span><br/> |
292 | <a·class="idref"·href="Coq.FSets.FMapAVL.html#Raw.create"><span·class="id"·title="definition">create</span></a>·<a·class="idref"·href="Coq.FSets.FMapAVL.html#l:25"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.FSets.FMapAVL.html#x:26"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapAVL.html#d:27"><span·class="id"·title="variable">d</span></a>·<a·class="idref"·href="Coq.FSets.FMapAVL.html#r:28"><span·class="id"·title="variable">r</span></a>.<br/> | 292 | <a·class="idref"·href="Coq.FSets.FMapAVL.html#Raw.create"><span·class="id"·title="definition">create</span></a>·<a·class="idref"·href="Coq.FSets.FMapAVL.html#l:25"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.FSets.FMapAVL.html#x:26"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapAVL.html#d:27"><span·class="id"·title="variable">d</span></a>·<a·class="idref"·href="Coq.FSets.FMapAVL.html#r:28"><span·class="id"·title="variable">r</span></a>.<br/> |
Max diff block lines reached; 88583/97350 bytes (90.99%) of diff not shown. |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1025"></a><h1·class="section">Finite·maps·library</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·This·functor·derives·additional·facts·from·<span·class="inlinecode"><span·class="id"·title="var">FMapInterface.S</span></span>.·These | 51 | ·This·functor·derives·additional·facts·from·<span·class="inlinecode"><span·class="id"·title="var">FMapInterface.S</span></span>.·These |
52 | ··facts·are·mainly·the·specifications·of·<span·class="inlinecode"><span·class="id"·title="var">FMapInterface.S</span></span>·written·using | 52 | ··facts·are·mainly·the·specifications·of·<span·class="inlinecode"><span·class="id"·title="var">FMapInterface.S</span></span>·written·using |
53 | ··different·styles:·equivalence·and·boolean·equalities. | 53 | ··different·styles:·equivalence·and·boolean·equalities. |
Offset 72, 15 lines modified | Offset 72, 15 lines modified | ||
72 | #[<span·class="id"·title="var">global</span>]<br/> | 72 | #[<span·class="id"·title="var">global</span>]<br/> |
73 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Extern</span>·1·(<a·class="idref"·href="Coq.Classes.RelationClasses.html#Equivalence"><span·class="id"·title="class">Equivalence</span></a>·<span·class="id"·title="var">_</span>)·=>·<span·class="id"·title="tactic">constructor</span>;·<span·class="id"·title="tactic">congruence</span>·:·<span·class="id"·title="var">core</span>.<br/> | 73 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Extern</span>·1·(<a·class="idref"·href="Coq.Classes.RelationClasses.html#Equivalence"><span·class="id"·title="class">Equivalence</span></a>·<span·class="id"·title="var">_</span>)·=>·<span·class="id"·title="tactic">constructor</span>;·<span·class="id"·title="tactic">congruence</span>·:·<span·class="id"·title="var">core</span>.<br/> |
74 | <br/> | 74 | <br/> |
75 | </div> | 75 | </div> |
76 | <div·class="doc"> | 76 | <div·class="doc"> |
77 | <a·id="lab | 77 | <a·id="lab1026"></a><h1·class="section">Facts·about·weak·maps</h1> |
78 | </div> | 78 | </div> |
79 | <div·class="code"> | 79 | <div·class="code"> |
80 | <br/> | 80 | <br/> |
81 | <span·class="id"·title="keyword">Module</span>·<a·id="WFacts_fun"·class="idref"·href="#WFacts_fun"><span·class="id"·title="module">WFacts_fun</span></a>·(<span·class="id"·title="var">E</span>:<a·class="idref"·href="Coq.Structures.DecidableType.html#DecidableType"><span·class="id"·title="module">DecidableType</span></a>)(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">M</span>:<a·class="idref"·href="Coq.FSets.FMapInterface.html#WSfun"><span·class="id"·title="module">WSfun</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#E"><span·class="id"·title="module">E</span></a>).<br/> | 81 | <span·class="id"·title="keyword">Module</span>·<a·id="WFacts_fun"·class="idref"·href="#WFacts_fun"><span·class="id"·title="module">WFacts_fun</span></a>·(<span·class="id"·title="var">E</span>:<a·class="idref"·href="Coq.Structures.DecidableType.html#DecidableType"><span·class="id"·title="module">DecidableType</span></a>)(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">M</span>:<a·class="idref"·href="Coq.FSets.FMapInterface.html#WSfun"><span·class="id"·title="module">WSfun</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#E"><span·class="id"·title="module">E</span></a>).<br/> |
Offset 99, 15 lines modified | Offset 99, 15 lines modified | ||
99 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WFacts_fun.MapsTo_fun"·class="idref"·href="#WFacts_fun.MapsTo_fun"><span·class="id"·title="lemma">MapsTo_fun</span></a>·:·<span·class="id"·title="keyword">forall</span>·(<a·id="elt:9"·class="idref"·href="#elt:9"><span·class="id"·title="binder">elt</span></a>:<span·class="id"·title="keyword">Type</span>)·<a·id="m:10"·class="idref"·href="#m:10"><span·class="id"·title="binder">m</span></a>·<a·id="x:11"·class="idref"·href="#x:11"><span·class="id"·title="binder">x</span></a>·(<a·id="e:12"·class="idref"·href="#e:12"><span·class="id"·title="binder">e</span></a>·<a·id="e':13"·class="idref"·href="#e':13"><span·class="id"·title="binder">e'</span></a>:<a·class="idref"·href="Coq.FSets.FMapFacts.html#elt:9"><span·class="id"·title="variable">elt</span></a>),<br/> | 99 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WFacts_fun.MapsTo_fun"·class="idref"·href="#WFacts_fun.MapsTo_fun"><span·class="id"·title="lemma">MapsTo_fun</span></a>·:·<span·class="id"·title="keyword">forall</span>·(<a·id="elt:9"·class="idref"·href="#elt:9"><span·class="id"·title="binder">elt</span></a>:<span·class="id"·title="keyword">Type</span>)·<a·id="m:10"·class="idref"·href="#m:10"><span·class="id"·title="binder">m</span></a>·<a·id="x:11"·class="idref"·href="#x:11"><span·class="id"·title="binder">x</span></a>·(<a·id="e:12"·class="idref"·href="#e:12"><span·class="id"·title="binder">e</span></a>·<a·id="e':13"·class="idref"·href="#e':13"><span·class="id"·title="binder">e'</span></a>:<a·class="idref"·href="Coq.FSets.FMapFacts.html#elt:9"><span·class="id"·title="variable">elt</span></a>),<br/> |
100 | <a·class="idref"·href="Coq.FSets.FMapFacts.html#M.MapsTo"><span·class="id"·title="axiom">MapsTo</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#x:11"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#e:12"><span·class="id"·title="variable">e</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#m:10"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#M.MapsTo"><span·class="id"·title="axiom">MapsTo</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#x:11"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#e':13"><span·class="id"·title="variable">e'</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#m:10"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#e:12"><span·class="id"·title="variable">e</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a><a·class="idref"·href="Coq.FSets.FMapFacts.html#e':13"><span·class="id"·title="variable">e'</span></a>.<br/> | 100 | <a·class="idref"·href="Coq.FSets.FMapFacts.html#M.MapsTo"><span·class="id"·title="axiom">MapsTo</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#x:11"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#e:12"><span·class="id"·title="variable">e</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#m:10"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#M.MapsTo"><span·class="id"·title="axiom">MapsTo</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#x:11"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#e':13"><span·class="id"·title="variable">e'</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#m:10"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#e:12"><span·class="id"·title="variable">e</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a><a·class="idref"·href="Coq.FSets.FMapFacts.html#e':13"><span·class="id"·title="variable">e'</span></a>.<br/> |
101 | <br/> | 101 | <br/> |
102 | </div> | 102 | </div> |
103 | <div·class="doc"> | 103 | <div·class="doc"> |
104 | <a·id="lab | 104 | <a·id="lab1027"></a><h2·class="section">Specifications·written·using·equivalences</h2> |
105 | </div> | 105 | </div> |
106 | <div·class="code"> | 106 | <div·class="code"> |
107 | <br/> | 107 | <br/> |
108 | <span·class="id"·title="keyword">Section</span>·<a·id="WFacts_fun.IffSpec"·class="idref"·href="#WFacts_fun.IffSpec"><span·class="id"·title="section">IffSpec</span></a>.<br/> | 108 | <span·class="id"·title="keyword">Section</span>·<a·id="WFacts_fun.IffSpec"·class="idref"·href="#WFacts_fun.IffSpec"><span·class="id"·title="section">IffSpec</span></a>.<br/> |
109 | <span·class="id"·title="keyword">Variable</span>·<a·id="WFacts_fun.IffSpec.elt"·class="idref"·href="#WFacts_fun.IffSpec.elt"><span·class="id"·title="variable">elt</span></a>·<a·id="WFacts_fun.IffSpec.elt'"·class="idref"·href="#WFacts_fun.IffSpec.elt'"><span·class="id"·title="variable">elt'</span></a>·<a·id="WFacts_fun.IffSpec.elt''"·class="idref"·href="#WFacts_fun.IffSpec.elt''"><span·class="id"·title="variable">elt''</span></a>:·<span·class="id"·title="keyword">Type</span>.<br/> | 109 | <span·class="id"·title="keyword">Variable</span>·<a·id="WFacts_fun.IffSpec.elt"·class="idref"·href="#WFacts_fun.IffSpec.elt"><span·class="id"·title="variable">elt</span></a>·<a·id="WFacts_fun.IffSpec.elt'"·class="idref"·href="#WFacts_fun.IffSpec.elt'"><span·class="id"·title="variable">elt'</span></a>·<a·id="WFacts_fun.IffSpec.elt''"·class="idref"·href="#WFacts_fun.IffSpec.elt''"><span·class="id"·title="variable">elt''</span></a>:·<span·class="id"·title="keyword">Type</span>.<br/> |
Offset 256, 15 lines modified | Offset 256, 15 lines modified | ||
256 | <span·class="id"·title="tactic">rewrite</span>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#WFacts_fun.map_mapsto_iff"><span·class="id"·title="lemma">map_mapsto_iff</span></a>·||·<span·class="id"·title="tactic">rewrite</span>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#WFacts_fun.map_in_iff"><span·class="id"·title="lemma">map_in_iff</span></a>·||<br/> | 256 | <span·class="id"·title="tactic">rewrite</span>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#WFacts_fun.map_mapsto_iff"><span·class="id"·title="lemma">map_mapsto_iff</span></a>·||·<span·class="id"·title="tactic">rewrite</span>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#WFacts_fun.map_in_iff"><span·class="id"·title="lemma">map_in_iff</span></a>·||<br/> |
257 | <span·class="id"·title="tactic">rewrite</span>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#WFacts_fun.mapi_in_iff"><span·class="id"·title="lemma">mapi_in_iff</span></a>)).<br/> | 257 | <span·class="id"·title="tactic">rewrite</span>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#WFacts_fun.mapi_in_iff"><span·class="id"·title="lemma">mapi_in_iff</span></a>)).<br/> |
258 | <br/> | 258 | <br/> |
259 | </div> | 259 | </div> |
260 | <div·class="doc"> | 260 | <div·class="doc"> |
261 | <a·id="lab | 261 | <a·id="lab1028"></a><h2·class="section">Specifications·written·using·boolean·predicates</h2> |
262 | </div> | 262 | </div> |
263 | <div·class="code"> | 263 | <div·class="code"> |
264 | <br/> | 264 | <br/> |
265 | <span·class="id"·title="keyword">Section</span>·<a·id="WFacts_fun.BoolSpec"·class="idref"·href="#WFacts_fun.BoolSpec"><span·class="id"·title="section">BoolSpec</span></a>.<br/> | 265 | <span·class="id"·title="keyword">Section</span>·<a·id="WFacts_fun.BoolSpec"·class="idref"·href="#WFacts_fun.BoolSpec"><span·class="id"·title="section">BoolSpec</span></a>.<br/> |
Offset 395, 15 lines modified | Offset 395, 15 lines modified | ||
395 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WFacts_fun.Equal_mapsto_iff"·class="idref"·href="#WFacts_fun.Equal_mapsto_iff"><span·class="id"·title="lemma">Equal_mapsto_iff</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="m1:211"·class="idref"·href="#m1:211"><span·class="id"·title="binder">m1</span></a>·<a·id="m2:212"·class="idref"·href="#m2:212"><span·class="id"·title="binder">m2</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapFacts.html#M.t"><span·class="id"·title="axiom">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#WFacts_fun.Equalities.elt"><span·class="id"·title="variable">elt</span></a>,<br/> | 395 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WFacts_fun.Equal_mapsto_iff"·class="idref"·href="#WFacts_fun.Equal_mapsto_iff"><span·class="id"·title="lemma">Equal_mapsto_iff</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="m1:211"·class="idref"·href="#m1:211"><span·class="id"·title="binder">m1</span></a>·<a·id="m2:212"·class="idref"·href="#m2:212"><span·class="id"·title="binder">m2</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapFacts.html#M.t"><span·class="id"·title="axiom">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#WFacts_fun.Equalities.elt"><span·class="id"·title="variable">elt</span></a>,<br/> |
396 | <a·class="idref"·href="Coq.FSets.FMapFacts.html#M.Equal"><span·class="id"·title="definition">Equal</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#m1:211"><span·class="id"·title="variable">m1</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#m2:212"><span·class="id"·title="variable">m2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="k:213"·class="idref"·href="#k:213"><span·class="id"·title="binder">k</span></a>·<a·id="e:214"·class="idref"·href="#e:214"><span·class="id"·title="binder">e</span></a>,·<a·class="idref"·href="Coq.FSets.FMapFacts.html#M.MapsTo"><span·class="id"·title="axiom">MapsTo</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#k:213"><span·class="id"·title="variable">k</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#e:214"><span·class="id"·title="variable">e</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#m1:211"><span·class="id"·title="variable">m1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#M.MapsTo"><span·class="id"·title="axiom">MapsTo</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#k:213"><span·class="id"·title="variable">k</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#e:214"><span·class="id"·title="variable">e</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#m2:212"><span·class="id"·title="variable">m2</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation">)</span></a>.<br/> | 396 | <a·class="idref"·href="Coq.FSets.FMapFacts.html#M.Equal"><span·class="id"·title="definition">Equal</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#m1:211"><span·class="id"·title="variable">m1</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#m2:212"><span·class="id"·title="variable">m2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="k:213"·class="idref"·href="#k:213"><span·class="id"·title="binder">k</span></a>·<a·id="e:214"·class="idref"·href="#e:214"><span·class="id"·title="binder">e</span></a>,·<a·class="idref"·href="Coq.FSets.FMapFacts.html#M.MapsTo"><span·class="id"·title="axiom">MapsTo</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#k:213"><span·class="id"·title="variable">k</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#e:214"><span·class="id"·title="variable">e</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#m1:211"><span·class="id"·title="variable">m1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#M.MapsTo"><span·class="id"·title="axiom">MapsTo</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#k:213"><span·class="id"·title="variable">k</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#e:214"><span·class="id"·title="variable">e</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#m2:212"><span·class="id"·title="variable">m2</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation">)</span></a>.<br/> |
397 | <br/> | 397 | <br/> |
398 | </div> | 398 | </div> |
399 | <div·class="doc"> | 399 | <div·class="doc"> |
400 | <a·id="lab | 400 | <a·id="lab1029"></a><h1·class="section">Relations·between·<span·class="inlinecode"><span·class="id"·title="var">Equal</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">Equiv</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">Equivb</span></span>.</h1> |
401 | <div·class="paragraph">·</div> | 401 | <div·class="paragraph">·</div> |
402 | ·First,·<span·class="inlinecode"><span·class="id"·title="var">Equal</span></span>·is·<span·class="inlinecode"><span·class="id"·title="var">Equiv</span></span>·with·Leibniz·on·elements.· | 402 | ·First,·<span·class="inlinecode"><span·class="id"·title="var">Equal</span></span>·is·<span·class="inlinecode"><span·class="id"·title="var">Equiv</span></span>·with·Leibniz·on·elements.· |
403 | </div> | 403 | </div> |
404 | <div·class="code"> | 404 | <div·class="code"> |
Offset 457, 15 lines modified | Offset 457, 15 lines modified | ||
457 | <br/> | 457 | <br/> |
458 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#WFacts_fun.Equalities"><span·class="id"·title="section">Equalities</span></a>.<br/> | 458 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#WFacts_fun.Equalities"><span·class="id"·title="section">Equalities</span></a>.<br/> |
459 | <br/> | 459 | <br/> |
460 | </div> | 460 | </div> |
461 | <div·class="doc"> | 461 | <div·class="doc"> |
462 | <a·id="lab | 462 | <a·id="lab1030"></a><h1·class="section"><span·class="inlinecode"><span·class="id"·title="var">Equal</span></span>·is·a·setoid·equality.</h1> |
463 | </div> | 463 | </div> |
464 | <div·class="code"> | 464 | <div·class="code"> |
465 | <br/> | 465 | <br/> |
466 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WFacts_fun.Equal_refl"·class="idref"·href="#WFacts_fun.Equal_refl"><span·class="id"·title="lemma">Equal_refl</span></a>·:·<span·class="id"·title="keyword">forall</span>·(<a·id="elt:238"·class="idref"·href="#elt:238"><span·class="id"·title="binder">elt</span></a>:<span·class="id"·title="keyword">Type</span>)(<a·id="m:239"·class="idref"·href="#m:239"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapFacts.html#M.t"><span·class="id"·title="axiom">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#elt:238"><span·class="id"·title="variable">elt</span></a>),·<a·class="idref"·href="Coq.FSets.FMapFacts.html#M.Equal"><span·class="id"·title="definition">Equal</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#m:239"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#m:239"><span·class="id"·title="variable">m</span></a>.<br/> | 466 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WFacts_fun.Equal_refl"·class="idref"·href="#WFacts_fun.Equal_refl"><span·class="id"·title="lemma">Equal_refl</span></a>·:·<span·class="id"·title="keyword">forall</span>·(<a·id="elt:238"·class="idref"·href="#elt:238"><span·class="id"·title="binder">elt</span></a>:<span·class="id"·title="keyword">Type</span>)(<a·id="m:239"·class="idref"·href="#m:239"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapFacts.html#M.t"><span·class="id"·title="axiom">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#elt:238"><span·class="id"·title="variable">elt</span></a>),·<a·class="idref"·href="Coq.FSets.FMapFacts.html#M.Equal"><span·class="id"·title="definition">Equal</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#m:239"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#m:239"><span·class="id"·title="variable">m</span></a>.<br/> |
467 | · | 467 | · |
Offset 541, 28 lines modified | Offset 541, 28 lines modified | ||
541 | <br/> | 541 | <br/> |
542 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#WFacts_fun"><span·class="id"·title="module">WFacts_fun</span></a>.<br/> | 542 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#WFacts_fun"><span·class="id"·title="module">WFacts_fun</span></a>.<br/> |
543 | <br/> | 543 | <br/> |
544 | </div> | 544 | </div> |
545 | <div·class="doc"> | 545 | <div·class="doc"> |
546 | <a·id="lab | 546 | <a·id="lab1031"></a><h1·class="section">Same·facts·for·self-contained·weak·sets·and·for·full·maps</h1> |
547 | </div> | 547 | </div> |
548 | <div·class="code"> | 548 | <div·class="code"> |
549 | <br/> | 549 | <br/> |
550 | <span·class="id"·title="keyword">Module</span>·<a·id="WFacts"·class="idref"·href="#WFacts"><span·class="id"·title="module">WFacts</span></a>·(<span·class="id"·title="var">M</span>:<a·class="idref"·href="Coq.FSets.FMapInterface.html#WS"><span·class="id"·title="module">WS</span></a>)·:=·<a·class="idref"·href="Coq.FSets.FMapFacts.html#WFacts_fun"><span·class="id"·title="module">WFacts_fun</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#M.E"><span·class="id"·title="module">M.E</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#M"><span·class="id"·title="module">M</span></a>.<br/> | 550 | <span·class="id"·title="keyword">Module</span>·<a·id="WFacts"·class="idref"·href="#WFacts"><span·class="id"·title="module">WFacts</span></a>·(<span·class="id"·title="var">M</span>:<a·class="idref"·href="Coq.FSets.FMapInterface.html#WS"><span·class="id"·title="module">WS</span></a>)·:=·<a·class="idref"·href="Coq.FSets.FMapFacts.html#WFacts_fun"><span·class="id"·title="module">WFacts_fun</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#M.E"><span·class="id"·title="module">M.E</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#M"><span·class="id"·title="module">M</span></a>.<br/> |
551 | <span·class="id"·title="keyword">Module</span>·<a·id="Facts"·class="idref"·href="#Facts"><span·class="id"·title="module">Facts</span></a>·:=·<a·class="idref"·href="Coq.FSets.FMapFacts.html#WFacts"><span·class="id"·title="module">WFacts</span></a>.<br/> | 551 | <span·class="id"·title="keyword">Module</span>·<a·id="Facts"·class="idref"·href="#Facts"><span·class="id"·title="module">Facts</span></a>·:=·<a·class="idref"·href="Coq.FSets.FMapFacts.html#WFacts"><span·class="id"·title="module">WFacts</span></a>.<br/> |
552 | <br/> | 552 | <br/> |
553 | </div> | 553 | </div> |
554 | <div·class="doc"> | 554 | <div·class="doc"> |
555 | <a·id="lab | 555 | <a·id="lab1032"></a><h1·class="section">Additional·Properties·for·weak·maps</h1> |
556 | <div·class="paragraph">·</div> | 556 | <div·class="paragraph">·</div> |
557 | ····Results·about·<span·class="inlinecode"><span·class="id"·title="tactic">fold</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">elements</span></span>,·induction·principles... | 557 | ····Results·about·<span·class="inlinecode"><span·class="id"·title="tactic">fold</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">elements</span></span>,·induction·principles... |
558 | </div> | 558 | </div> |
Offset 614, 30 lines modified | Offset 614, 30 lines modified | ||
614 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WProperties_fun.findA_rev"·class="idref"·href="#WProperties_fun.findA_rev"><span·class="id"·title="lemma">findA_rev</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="l:284"·class="idref"·href="#l:284"><span·class="id"·title="binder">l</span></a>·<a·id="k:285"·class="idref"·href="#k:285"><span·class="id"·title="binder">k</span></a>,·<a·class="idref"·href="Coq.Lists.SetoidList.html#NoDupA"><span·class="id"·title="inductive">NoDupA</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#WProperties_fun.eqk"><span·class="id"·title="abbreviation">eqk</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#l:284"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 614 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WProperties_fun.findA_rev"·class="idref"·href="#WProperties_fun.findA_rev"><span·class="id"·title="lemma">findA_rev</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="l:284"·class="idref"·href="#l:284"><span·class="id"·title="binder">l</span></a>·<a·id="k:285"·class="idref"·href="#k:285"><span·class="id"·title="binder">k</span></a>,·<a·class="idref"·href="Coq.Lists.SetoidList.html#NoDupA"><span·class="id"·title="inductive">NoDupA</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#WProperties_fun.eqk"><span·class="id"·title="abbreviation">eqk</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#l:284"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
615 | <a·class="idref"·href="Coq.Lists.SetoidList.html#findA"><span·class="id"·title="definition">findA</span></a>·(<a·class="idref"·href="Coq.FSets.FMapFacts.html#WProperties_fun.eqb"><span·class="id"·title="definition">eqb</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#k:285"><span·class="id"·title="variable">k</span></a>)·<a·class="idref"·href="Coq.FSets.FMapFacts.html#l:284"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Lists.SetoidList.html#findA"><span·class="id"·title="definition">findA</span></a>·(<a·class="idref"·href="Coq.FSets.FMapFacts.html#WProperties_fun.eqb"><span·class="id"·title="definition">eqb</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#k:285"><span·class="id"·title="variable">k</span></a>)·(<a·class="idref"·href="Coq.Lists.List.html#rev"><span·class="id"·title="definition">rev</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#l:284"><span·class="id"·title="variable">l</span></a>).<br/> | 615 | <a·class="idref"·href="Coq.Lists.SetoidList.html#findA"><span·class="id"·title="definition">findA</span></a>·(<a·class="idref"·href="Coq.FSets.FMapFacts.html#WProperties_fun.eqb"><span·class="id"·title="definition">eqb</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#k:285"><span·class="id"·title="variable">k</span></a>)·<a·class="idref"·href="Coq.FSets.FMapFacts.html#l:284"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Lists.SetoidList.html#findA"><span·class="id"·title="definition">findA</span></a>·(<a·class="idref"·href="Coq.FSets.FMapFacts.html#WProperties_fun.eqb"><span·class="id"·title="definition">eqb</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#k:285"><span·class="id"·title="variable">k</span></a>)·(<a·class="idref"·href="Coq.Lists.List.html#rev"><span·class="id"·title="definition">rev</span></a>·<a·class="idref"·href="Coq.FSets.FMapFacts.html#l:284"><span·class="id"·title="variable">l</span></a>).<br/> |
Max diff block lines reached; 24544/39413 bytes (62.27%) of diff not shown. |
Offset 47, 15 lines modified | Offset 47, 15 lines modified | ||
47 | <br/> | 47 | <br/> |
48 | <br/> | 48 | <br/> |
49 | </div> | 49 | </div> |
50 | <div·class="doc"> | 50 | <div·class="doc"> |
51 | <a·id="lab | 51 | <a·id="lab990"></a><h1·class="section">FMapFullAVL</h1> |
52 | <div·class="paragraph">·</div> | 52 | <div·class="paragraph">·</div> |
53 | ···This·file·contains·some·complements·to·<span·class="inlinecode"><span·class="id"·title="var">FMapAVL</span></span>. | 53 | ···This·file·contains·some·complements·to·<span·class="inlinecode"><span·class="id"·title="var">FMapAVL</span></span>. |
54 | <div·class="paragraph">·</div> | 54 | <div·class="paragraph">·</div> |
Offset 115, 15 lines modified | Offset 115, 15 lines modified | ||
115 | <span·class="id"·title="keyword">Variable</span>·<a·id="AvlProofs.Elt.elt"·class="idref"·href="#AvlProofs.Elt.elt"><span·class="id"·title="variable">elt</span></a>·:·<span·class="id"·title="keyword">Type</span>.<br/> | 115 | <span·class="id"·title="keyword">Variable</span>·<a·id="AvlProofs.Elt.elt"·class="idref"·href="#AvlProofs.Elt.elt"><span·class="id"·title="variable">elt</span></a>·:·<span·class="id"·title="keyword">Type</span>.<br/> |
116 | <span·class="id"·title="keyword">Implicit</span>·<span·class="id"·title="keyword">Types</span>·<span·class="id"·title="var">m</span>·<span·class="id"·title="var">r</span>·:·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.t"><span·class="id"·title="abbreviation">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.Elt.elt"><span·class="id"·title="variable">elt</span></a>.<br/> | 116 | <span·class="id"·title="keyword">Implicit</span>·<span·class="id"·title="keyword">Types</span>·<span·class="id"·title="var">m</span>·<span·class="id"·title="var">r</span>·:·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.t"><span·class="id"·title="abbreviation">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.Elt.elt"><span·class="id"·title="variable">elt</span></a>.<br/> |
117 | <br/> | 117 | <br/> |
118 | </div> | 118 | </div> |
119 | <div·class="doc"> | 119 | <div·class="doc"> |
120 | <a·id="lab | 120 | <a·id="lab991"></a><h1·class="section">AVL·trees</h1> |
121 | <div·class="paragraph">·</div> | 121 | <div·class="paragraph">·</div> |
122 | ·<span·class="inlinecode"><span·class="id"·title="var">avl</span></span>·<span·class="inlinecode"><span·class="id"·title="var">s</span></span>·:·<span·class="inlinecode"><span·class="id"·title="var">s</span></span>·is·a·properly·balanced·AVL·tree, | 122 | ·<span·class="inlinecode"><span·class="id"·title="var">avl</span></span>·<span·class="inlinecode"><span·class="id"·title="var">s</span></span>·:·<span·class="inlinecode"><span·class="id"·title="var">s</span></span>·is·a·properly·balanced·AVL·tree, |
123 | ····i.e.·for·any·node·the·heights·of·the·two·children | 123 | ····i.e.·for·any·node·the·heights·of·the·two·children |
124 | ····differ·by·at·most·2· | 124 | ····differ·by·at·most·2· |
125 | </div> | 125 | </div> |
Offset 139, 15 lines modified | Offset 139, 15 lines modified | ||
139 | <a·class="idref"·href="Coq.FSets.FMapFullAVL.html#h:9"><span·class="id"·title="variable">h</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#I.max"><span·class="id"·title="axiom">max</span></a>·(<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.height"><span·class="id"·title="definition">height</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#l:7"><span·class="id"·title="variable">l</span></a>)·(<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.height"><span·class="id"·title="definition">height</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#r:8"><span·class="id"·title="variable">r</span></a>)·<a·class="idref"·href="Coq.ZArith.Int.html#004c359642fbe9dbd252a6335642f93a"><span·class="id"·title="notation">+</span></a>·1·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 139 | <a·class="idref"·href="Coq.FSets.FMapFullAVL.html#h:9"><span·class="id"·title="variable">h</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#I.max"><span·class="id"·title="axiom">max</span></a>·(<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.height"><span·class="id"·title="definition">height</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#l:7"><span·class="id"·title="variable">l</span></a>)·(<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.height"><span·class="id"·title="definition">height</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#r:8"><span·class="id"·title="variable">r</span></a>)·<a·class="idref"·href="Coq.ZArith.Int.html#004c359642fbe9dbd252a6335642f93a"><span·class="id"·title="notation">+</span></a>·1·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
140 | <a·class="idref"·href="Coq.FSets.FMapFullAVL.html#avl:3"><span·class="id"·title="inductive">avl</span></a>·(<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.Node"><span·class="id"·title="constructor">Node</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#l:7"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#x:5"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#e:6"><span·class="id"·title="variable">e</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#r:8"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#h:9"><span·class="id"·title="variable">h</span></a>).<br/> | 140 | <a·class="idref"·href="Coq.FSets.FMapFullAVL.html#avl:3"><span·class="id"·title="inductive">avl</span></a>·(<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.Node"><span·class="id"·title="constructor">Node</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#l:7"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#x:5"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#e:6"><span·class="id"·title="variable">e</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#r:8"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#h:9"><span·class="id"·title="variable">h</span></a>).<br/> |
141 | <br/> | 141 | <br/> |
142 | </div> | 142 | </div> |
143 | <div·class="doc"> | 143 | <div·class="doc"> |
144 | <a·id="lab | 144 | <a·id="lab992"></a><h1·class="section">Automation·and·dedicated·tactics·about·<span·class="inlinecode"><span·class="id"·title="var">avl</span></span>.</h1> |
145 | </div> | 145 | </div> |
146 | <div·class="code"> | 146 | <div·class="code"> |
147 | <br/> | 147 | <br/> |
148 | #[<span·class="id"·title="var">local</span>]<br/> | 148 | #[<span·class="id"·title="var">local</span>]<br/> |
149 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Constructors</span>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#avl"><span·class="id"·title="inductive">avl</span></a>·:·<span·class="id"·title="var">core</span>.<br/> | 149 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Constructors</span>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#avl"><span·class="id"·title="inductive">avl</span></a>·:·<span·class="id"·title="var">core</span>.<br/> |
Offset 177, 15 lines modified | Offset 177, 15 lines modified | ||
177 | |·<span·class="id"·title="var">_</span>·=>·<span·class="id"·title="tactic">idtac</span><br/> | 177 | |·<span·class="id"·title="var">_</span>·=>·<span·class="id"·title="tactic">idtac</span><br/> |
178 | <span·class="id"·title="keyword">end</span>.<br/> | 178 | <span·class="id"·title="keyword">end</span>.<br/> |
179 | <br/> | 179 | <br/> |
180 | </div> | 180 | </div> |
181 | <div·class="doc"> | 181 | <div·class="doc"> |
182 | <a·id="lab | 182 | <a·id="lab993"></a><h1·class="section">Basic·results·about·<span·class="inlinecode"><span·class="id"·title="var">avl</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">height</span></span></h1> |
183 | </div> | 183 | </div> |
184 | <div·class="code"> | 184 | <div·class="code"> |
185 | <br/> | 185 | <br/> |
186 | <span·class="id"·title="keyword">Lemma</span>·<a·id="AvlProofs.avl_node"·class="idref"·href="#AvlProofs.avl_node"><span·class="id"·title="lemma">avl_node</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:11"·class="idref"·href="#x:11"><span·class="id"·title="binder">x</span></a>·<a·id="e:12"·class="idref"·href="#e:12"><span·class="id"·title="binder">e</span></a>·<a·id="l:13"·class="idref"·href="#l:13"><span·class="id"·title="binder">l</span></a>·<a·id="r:14"·class="idref"·href="#r:14"><span·class="id"·title="binder">r</span></a>,·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.avl"><span·class="id"·title="inductive">avl</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#l:13"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.avl"><span·class="id"·title="inductive">avl</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#r:14"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 186 | <span·class="id"·title="keyword">Lemma</span>·<a·id="AvlProofs.avl_node"·class="idref"·href="#AvlProofs.avl_node"><span·class="id"·title="lemma">avl_node</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:11"·class="idref"·href="#x:11"><span·class="id"·title="binder">x</span></a>·<a·id="e:12"·class="idref"·href="#e:12"><span·class="id"·title="binder">e</span></a>·<a·id="l:13"·class="idref"·href="#l:13"><span·class="id"·title="binder">l</span></a>·<a·id="r:14"·class="idref"·href="#r:14"><span·class="id"·title="binder">r</span></a>,·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.avl"><span·class="id"·title="inductive">avl</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#l:13"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.avl"><span·class="id"·title="inductive">avl</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#r:14"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
187 | <a·class="idref"·href="Coq.ZArith.Int.html#Int.::Int_scope:'-'_x"><span·class="id"·title="notation">-</span></a>(2)·<a·class="idref"·href="Coq.ZArith.Int.html#be4c59c76b318250400dadb817b41e75"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.height"><span·class="id"·title="definition">height</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#l:13"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.ZArith.Int.html#Int.::Int_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.height"><span·class="id"·title="definition">height</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#r:14"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.ZArith.Int.html#be4c59c76b318250400dadb817b41e75"><span·class="id"·title="notation"><=</span></a>·2·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 187 | <a·class="idref"·href="Coq.ZArith.Int.html#Int.::Int_scope:'-'_x"><span·class="id"·title="notation">-</span></a>(2)·<a·class="idref"·href="Coq.ZArith.Int.html#be4c59c76b318250400dadb817b41e75"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.height"><span·class="id"·title="definition">height</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#l:13"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.ZArith.Int.html#Int.::Int_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.height"><span·class="id"·title="definition">height</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#r:14"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.ZArith.Int.html#be4c59c76b318250400dadb817b41e75"><span·class="id"·title="notation"><=</span></a>·2·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
Offset 205, 27 lines modified | Offset 205, 27 lines modified | ||
205 | <span·class="id"·title="keyword">Lemma</span>·<a·id="AvlProofs.height_0"·class="idref"·href="#AvlProofs.height_0"><span·class="id"·title="lemma">height_0</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="l:15"·class="idref"·href="#l:15"><span·class="id"·title="binder">l</span></a>,·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.avl"><span·class="id"·title="inductive">avl</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#l:15"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.height"><span·class="id"·title="definition">height</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#l:15"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 205 | <span·class="id"·title="keyword">Lemma</span>·<a·id="AvlProofs.height_0"·class="idref"·href="#AvlProofs.height_0"><span·class="id"·title="lemma">height_0</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="l:15"·class="idref"·href="#l:15"><span·class="id"·title="binder">l</span></a>,·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.avl"><span·class="id"·title="inductive">avl</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#l:15"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.height"><span·class="id"·title="definition">height</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#l:15"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
206 | <a·class="idref"·href="Coq.FSets.FMapFullAVL.html#l:15"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.Leaf"><span·class="id"·title="constructor">Leaf</span></a>·<span·class="id"·title="var">_</span>.<br/> | 206 | <a·class="idref"·href="Coq.FSets.FMapFullAVL.html#l:15"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.Leaf"><span·class="id"·title="constructor">Leaf</span></a>·<span·class="id"·title="var">_</span>.<br/> |
207 | <br/> | 207 | <br/> |
208 | </div> | 208 | </div> |
209 | <div·class="doc"> | 209 | <div·class="doc"> |
210 | <a·id="lab | 210 | <a·id="lab994"></a><h1·class="section">Empty·map</h1> |
211 | </div> | 211 | </div> |
212 | <div·class="code"> | 212 | <div·class="code"> |
213 | <br/> | 213 | <br/> |
214 | <span·class="id"·title="keyword">Lemma</span>·<a·id="AvlProofs.empty_avl"·class="idref"·href="#AvlProofs.empty_avl"><span·class="id"·title="lemma">empty_avl</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.avl"><span·class="id"·title="inductive">avl</span></a>·(<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.empty"><span·class="id"·title="definition">empty</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.Elt.elt"><span·class="id"·title="variable">elt</span></a>).<br/> | 214 | <span·class="id"·title="keyword">Lemma</span>·<a·id="AvlProofs.empty_avl"·class="idref"·href="#AvlProofs.empty_avl"><span·class="id"·title="lemma">empty_avl</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.avl"><span·class="id"·title="inductive">avl</span></a>·(<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.empty"><span·class="id"·title="definition">empty</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.Elt.elt"><span·class="id"·title="variable">elt</span></a>).<br/> |
215 | <br/> | 215 | <br/> |
216 | </div> | 216 | </div> |
217 | <div·class="doc"> | 217 | <div·class="doc"> |
218 | <a·id="lab | 218 | <a·id="lab995"></a><h1·class="section">Helper·functions</h1> |
219 | </div> | 219 | </div> |
220 | <div·class="code"> | 220 | <div·class="code"> |
221 | <br/> | 221 | <br/> |
222 | <span·class="id"·title="keyword">Lemma</span>·<a·id="AvlProofs.create_avl"·class="idref"·href="#AvlProofs.create_avl"><span·class="id"·title="lemma">create_avl</span></a>·:<br/> | 222 | <span·class="id"·title="keyword">Lemma</span>·<a·id="AvlProofs.create_avl"·class="idref"·href="#AvlProofs.create_avl"><span·class="id"·title="lemma">create_avl</span></a>·:<br/> |
223 | <span·class="id"·title="keyword">forall</span>·<a·id="l:16"·class="idref"·href="#l:16"><span·class="id"·title="binder">l</span></a>·<a·id="x:17"·class="idref"·href="#x:17"><span·class="id"·title="binder">x</span></a>·<a·id="e:18"·class="idref"·href="#e:18"><span·class="id"·title="binder">e</span></a>·<a·id="r:19"·class="idref"·href="#r:19"><span·class="id"·title="binder">r</span></a>,·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.avl"><span·class="id"·title="inductive">avl</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#l:16"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.avl"><span·class="id"·title="inductive">avl</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#r:19"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>··<a·class="idref"·href="Coq.ZArith.Int.html#Int.::Int_scope:'-'_x"><span·class="id"·title="notation">-</span></a>(2)·<a·class="idref"·href="Coq.ZArith.Int.html#be4c59c76b318250400dadb817b41e75"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.height"><span·class="id"·title="definition">height</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#l:16"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.ZArith.Int.html#Int.::Int_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.height"><span·class="id"·title="definition">height</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#r:19"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.ZArith.Int.html#be4c59c76b318250400dadb817b41e75"><span·class="id"·title="notation"><=</span></a>·2·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 223 | <span·class="id"·title="keyword">forall</span>·<a·id="l:16"·class="idref"·href="#l:16"><span·class="id"·title="binder">l</span></a>·<a·id="x:17"·class="idref"·href="#x:17"><span·class="id"·title="binder">x</span></a>·<a·id="e:18"·class="idref"·href="#e:18"><span·class="id"·title="binder">e</span></a>·<a·id="r:19"·class="idref"·href="#r:19"><span·class="id"·title="binder">r</span></a>,·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.avl"><span·class="id"·title="inductive">avl</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#l:16"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.avl"><span·class="id"·title="inductive">avl</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#r:19"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>··<a·class="idref"·href="Coq.ZArith.Int.html#Int.::Int_scope:'-'_x"><span·class="id"·title="notation">-</span></a>(2)·<a·class="idref"·href="Coq.ZArith.Int.html#be4c59c76b318250400dadb817b41e75"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.height"><span·class="id"·title="definition">height</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#l:16"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.ZArith.Int.html#Int.::Int_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.height"><span·class="id"·title="definition">height</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#r:19"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.ZArith.Int.html#be4c59c76b318250400dadb817b41e75"><span·class="id"·title="notation"><=</span></a>·2·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
Offset 257, 15 lines modified | Offset 257, 15 lines modified | ||
257 | <span·class="id"·title="var">omega_max</span><br/> | 257 | <span·class="id"·title="var">omega_max</span><br/> |
258 | <span·class="id"·title="keyword">end</span>.<br/> | 258 | <span·class="id"·title="keyword">end</span>.<br/> |
259 | <br/> | 259 | <br/> |
260 | </div> | 260 | </div> |
261 | <div·class="doc"> | 261 | <div·class="doc"> |
262 | <a·id="lab | 262 | <a·id="lab996"></a><h1·class="section">Insertion</h1> |
263 | </div> | 263 | </div> |
264 | <div·class="code"> | 264 | <div·class="code"> |
265 | <br/> | 265 | <br/> |
266 | <span·class="id"·title="keyword">Lemma</span>·<a·id="AvlProofs.add_avl_1"·class="idref"·href="#AvlProofs.add_avl_1"><span·class="id"·title="lemma">add_avl_1</span></a>·:··<span·class="id"·title="keyword">forall</span>·<a·id="m:36"·class="idref"·href="#m:36"><span·class="id"·title="binder">m</span></a>·<a·id="x:37"·class="idref"·href="#x:37"><span·class="id"·title="binder">x</span></a>·<a·id="e:38"·class="idref"·href="#e:38"><span·class="id"·title="binder">e</span></a>,·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.avl"><span·class="id"·title="inductive">avl</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#m:36"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 266 | <span·class="id"·title="keyword">Lemma</span>·<a·id="AvlProofs.add_avl_1"·class="idref"·href="#AvlProofs.add_avl_1"><span·class="id"·title="lemma">add_avl_1</span></a>·:··<span·class="id"·title="keyword">forall</span>·<a·id="m:36"·class="idref"·href="#m:36"><span·class="id"·title="binder">m</span></a>·<a·id="x:37"·class="idref"·href="#x:37"><span·class="id"·title="binder">x</span></a>·<a·id="e:38"·class="idref"·href="#e:38"><span·class="id"·title="binder">e</span></a>,·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.avl"><span·class="id"·title="inductive">avl</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#m:36"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
267 | <a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.avl"><span·class="id"·title="inductive">avl</span></a>·(<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.add"><span·class="id"·title="definition">add</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#x:37"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#e:38"><span·class="id"·title="variable">e</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#m:36"><span·class="id"·title="variable">m</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·0·<a·class="idref"·href="Coq.ZArith.Int.html#be4c59c76b318250400dadb817b41e75"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.height"><span·class="id"·title="definition">height</span></a>·(<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.add"><span·class="id"·title="definition">add</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#x:37"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#e:38"><span·class="id"·title="variable">e</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#m:36"><span·class="id"·title="variable">m</span></a>)·<a·class="idref"·href="Coq.ZArith.Int.html#Int.::Int_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.height"><span·class="id"·title="definition">height</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#m:36"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.ZArith.Int.html#be4c59c76b318250400dadb817b41e75"><span·class="id"·title="notation"><=</span></a>·1.<br/> | 267 | <a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.avl"><span·class="id"·title="inductive">avl</span></a>·(<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.add"><span·class="id"·title="definition">add</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#x:37"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#e:38"><span·class="id"·title="variable">e</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#m:36"><span·class="id"·title="variable">m</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·0·<a·class="idref"·href="Coq.ZArith.Int.html#be4c59c76b318250400dadb817b41e75"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.height"><span·class="id"·title="definition">height</span></a>·(<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.add"><span·class="id"·title="definition">add</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#x:37"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#e:38"><span·class="id"·title="variable">e</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#m:36"><span·class="id"·title="variable">m</span></a>)·<a·class="idref"·href="Coq.ZArith.Int.html#Int.::Int_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.height"><span·class="id"·title="definition">height</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#m:36"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.ZArith.Int.html#be4c59c76b318250400dadb817b41e75"><span·class="id"·title="notation"><=</span></a>·1.<br/> |
Offset 275, 15 lines modified | Offset 275, 15 lines modified | ||
275 | #[<span·class="id"·title="var">local</span>]<br/> | 275 | #[<span·class="id"·title="var">local</span>]<br/> |
276 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Resolve</span>·<span·class="id"·title="var">add_avl</span>·:·<span·class="id"·title="var">core</span>.<br/> | 276 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Resolve</span>·<span·class="id"·title="var">add_avl</span>·:·<span·class="id"·title="var">core</span>.<br/> |
277 | <br/> | 277 | <br/> |
278 | </div> | 278 | </div> |
279 | <div·class="doc"> | 279 | <div·class="doc"> |
280 | <a·id="lab | 280 | <a·id="lab997"></a><h1·class="section">Extraction·of·minimum·binding</h1> |
281 | </div> | 281 | </div> |
282 | <div·class="code"> | 282 | <div·class="code"> |
283 | <br/> | 283 | <br/> |
284 | <span·class="id"·title="keyword">Lemma</span>·<a·id="AvlProofs.remove_min_avl_1"·class="idref"·href="#AvlProofs.remove_min_avl_1"><span·class="id"·title="lemma">remove_min_avl_1</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="l:42"·class="idref"·href="#l:42"><span·class="id"·title="binder">l</span></a>·<a·id="x:43"·class="idref"·href="#x:43"><span·class="id"·title="binder">x</span></a>·<a·id="e:44"·class="idref"·href="#e:44"><span·class="id"·title="binder">e</span></a>·<a·id="r:45"·class="idref"·href="#r:45"><span·class="id"·title="binder">r</span></a>·<a·id="h:46"·class="idref"·href="#h:46"><span·class="id"·title="binder">h</span></a>,·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.avl"><span·class="id"·title="inductive">avl</span></a>·(<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.Node"><span·class="id"·title="constructor">Node</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#l:42"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#x:43"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#e:44"><span·class="id"·title="variable">e</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#r:45"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#h:46"><span·class="id"·title="variable">h</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 284 | <span·class="id"·title="keyword">Lemma</span>·<a·id="AvlProofs.remove_min_avl_1"·class="idref"·href="#AvlProofs.remove_min_avl_1"><span·class="id"·title="lemma">remove_min_avl_1</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="l:42"·class="idref"·href="#l:42"><span·class="id"·title="binder">l</span></a>·<a·id="x:43"·class="idref"·href="#x:43"><span·class="id"·title="binder">x</span></a>·<a·id="e:44"·class="idref"·href="#e:44"><span·class="id"·title="binder">e</span></a>·<a·id="r:45"·class="idref"·href="#r:45"><span·class="id"·title="binder">r</span></a>·<a·id="h:46"·class="idref"·href="#h:46"><span·class="id"·title="binder">h</span></a>,·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.avl"><span·class="id"·title="inductive">avl</span></a>·(<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.Node"><span·class="id"·title="constructor">Node</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#l:42"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#x:43"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#e:44"><span·class="id"·title="variable">e</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#r:45"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#h:46"><span·class="id"·title="variable">h</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
285 | <a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.avl"><span·class="id"·title="inductive">avl</span></a>·<a·class="idref"·href="Coq.FSets.FMapAVL.html#0ecba978737ceb119698c5cbbee795eb"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.remove_min"><span·class="id"·title="definition">remove_min</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#l:42"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#x:43"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#e:44"><span·class="id"·title="variable">e</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#r:45"><span·class="id"·title="variable">r</span></a><a·class="idref"·href="Coq.FSets.FMapAVL.html#0ecba978737ceb119698c5cbbee795eb"><span·class="id"·title="notation">)#1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a><br/> | 285 | <a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.avl"><span·class="id"·title="inductive">avl</span></a>·<a·class="idref"·href="Coq.FSets.FMapAVL.html#0ecba978737ceb119698c5cbbee795eb"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.remove_min"><span·class="id"·title="definition">remove_min</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#l:42"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#x:43"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#e:44"><span·class="id"·title="variable">e</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#r:45"><span·class="id"·title="variable">r</span></a><a·class="idref"·href="Coq.FSets.FMapAVL.html#0ecba978737ceb119698c5cbbee795eb"><span·class="id"·title="notation">)#1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a><br/> |
Offset 293, 15 lines modified | Offset 293, 15 lines modified | ||
293 | <span·class="id"·title="keyword">Lemma</span>·<a·id="AvlProofs.remove_min_avl"·class="idref"·href="#AvlProofs.remove_min_avl"><span·class="id"·title="lemma">remove_min_avl</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="l:47"·class="idref"·href="#l:47"><span·class="id"·title="binder">l</span></a>·<a·id="x:48"·class="idref"·href="#x:48"><span·class="id"·title="binder">x</span></a>·<a·id="e:49"·class="idref"·href="#e:49"><span·class="id"·title="binder">e</span></a>·<a·id="r:50"·class="idref"·href="#r:50"><span·class="id"·title="binder">r</span></a>·<a·id="h:51"·class="idref"·href="#h:51"><span·class="id"·title="binder">h</span></a>,·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.avl"><span·class="id"·title="inductive">avl</span></a>·(<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.Node"><span·class="id"·title="constructor">Node</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#l:47"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#x:48"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#e:49"><span·class="id"·title="variable">e</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#r:50"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#h:51"><span·class="id"·title="variable">h</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 293 | <span·class="id"·title="keyword">Lemma</span>·<a·id="AvlProofs.remove_min_avl"·class="idref"·href="#AvlProofs.remove_min_avl"><span·class="id"·title="lemma">remove_min_avl</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="l:47"·class="idref"·href="#l:47"><span·class="id"·title="binder">l</span></a>·<a·id="x:48"·class="idref"·href="#x:48"><span·class="id"·title="binder">x</span></a>·<a·id="e:49"·class="idref"·href="#e:49"><span·class="id"·title="binder">e</span></a>·<a·id="r:50"·class="idref"·href="#r:50"><span·class="id"·title="binder">r</span></a>·<a·id="h:51"·class="idref"·href="#h:51"><span·class="id"·title="binder">h</span></a>,·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.avl"><span·class="id"·title="inductive">avl</span></a>·(<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.Node"><span·class="id"·title="constructor">Node</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#l:47"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#x:48"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#e:49"><span·class="id"·title="variable">e</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#r:50"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#h:51"><span·class="id"·title="variable">h</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
294 | <a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.avl"><span·class="id"·title="inductive">avl</span></a>·<a·class="idref"·href="Coq.FSets.FMapAVL.html#0ecba978737ceb119698c5cbbee795eb"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.remove_min"><span·class="id"·title="definition">remove_min</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#l:47"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#x:48"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#e:49"><span·class="id"·title="variable">e</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#r:50"><span·class="id"·title="variable">r</span></a><a·class="idref"·href="Coq.FSets.FMapAVL.html#0ecba978737ceb119698c5cbbee795eb"><span·class="id"·title="notation">)#1</span></a>.<br/> | 294 | <a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.avl"><span·class="id"·title="inductive">avl</span></a>·<a·class="idref"·href="Coq.FSets.FMapAVL.html#0ecba978737ceb119698c5cbbee795eb"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.FSets.FMapFullAVL.html#AvlProofs.remove_min"><span·class="id"·title="definition">remove_min</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#l:47"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#x:48"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#e:49"><span·class="id"·title="variable">e</span></a>·<a·class="idref"·href="Coq.FSets.FMapFullAVL.html#r:50"><span·class="id"·title="variable">r</span></a><a·class="idref"·href="Coq.FSets.FMapAVL.html#0ecba978737ceb119698c5cbbee795eb"><span·class="id"·title="notation">)#1</span></a>.<br/> |
Max diff block lines reached; 12255/32746 bytes (37.42%) of diff not shown. |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1120"></a><h1·class="section">Finite·map·library</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·This·file·proposes·interfaces·for·finite·maps· | 51 | ·This·file·proposes·interfaces·for·finite·maps· |
52 | </div> | 52 | </div> |
53 | <div·class="code"> | 53 | <div·class="code"> |
Offset 131, 15 lines modified | Offset 131, 15 lines modified | ||
131 | <br/> | 131 | <br/> |
132 | <span·class="id"·title="keyword">Definition</span>·<a·id="Cmp"·class="idref"·href="#Cmp"><span·class="id"·title="definition">Cmp</span></a>·(<a·id="elt:1"·class="idref"·href="#elt:1"><span·class="id"·title="binder">elt</span></a>:<span·class="id"·title="keyword">Type</span>)(<a·id="cmp:2"·class="idref"·href="#cmp:2"><span·class="id"·title="binder">cmp</span></a>:<a·class="idref"·href="Coq.FSets.FMapInterface.html#elt:1"><span·class="id"·title="variable">elt</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.FSets.FMapInterface.html#elt:1"><span·class="id"·title="variable">elt</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>)·<a·id="e1:3"·class="idref"·href="#e1:3"><span·class="id"·title="binder">e1</span></a>·<a·id="e2:4"·class="idref"·href="#e2:4"><span·class="id"·title="binder">e2</span></a>·:=·<a·class="idref"·href="Coq.FSets.FMapInterface.html#cmp:2"><span·class="id"·title="variable">cmp</span></a>·<a·class="idref"·href="Coq.FSets.FMapInterface.html#e1:3"><span·class="id"·title="variable">e1</span></a>·<a·class="idref"·href="Coq.FSets.FMapInterface.html#e2:4"><span·class="id"·title="variable">e2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>.<br/> | 132 | <span·class="id"·title="keyword">Definition</span>·<a·id="Cmp"·class="idref"·href="#Cmp"><span·class="id"·title="definition">Cmp</span></a>·(<a·id="elt:1"·class="idref"·href="#elt:1"><span·class="id"·title="binder">elt</span></a>:<span·class="id"·title="keyword">Type</span>)(<a·id="cmp:2"·class="idref"·href="#cmp:2"><span·class="id"·title="binder">cmp</span></a>:<a·class="idref"·href="Coq.FSets.FMapInterface.html#elt:1"><span·class="id"·title="variable">elt</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.FSets.FMapInterface.html#elt:1"><span·class="id"·title="variable">elt</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>)·<a·id="e1:3"·class="idref"·href="#e1:3"><span·class="id"·title="binder">e1</span></a>·<a·id="e2:4"·class="idref"·href="#e2:4"><span·class="id"·title="binder">e2</span></a>·:=·<a·class="idref"·href="Coq.FSets.FMapInterface.html#cmp:2"><span·class="id"·title="variable">cmp</span></a>·<a·class="idref"·href="Coq.FSets.FMapInterface.html#e1:3"><span·class="id"·title="variable">e1</span></a>·<a·class="idref"·href="Coq.FSets.FMapInterface.html#e2:4"><span·class="id"·title="variable">e2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>.<br/> |
133 | <br/> | 133 | <br/> |
134 | </div> | 134 | </div> |
135 | <div·class="doc"> | 135 | <div·class="doc"> |
136 | <a·id="lab | 136 | <a·id="lab1121"></a><h2·class="section">Weak·signature·for·maps</h2> |
137 | <div·class="paragraph">·</div> | 137 | <div·class="paragraph">·</div> |
138 | ····No·requirements·for·an·ordering·on·keys·nor·elements,·only·decidability | 138 | ····No·requirements·for·an·ordering·on·keys·nor·elements,·only·decidability |
139 | ····of·equality·on·keys.·First,·a·functorial·signature:· | 139 | ····of·equality·on·keys.·First,·a·functorial·signature:· |
140 | </div> | 140 | </div> |
Offset 552, 15 lines modified | Offset 552, 15 lines modified | ||
552 | <br/> | 552 | <br/> |
553 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FMapInterface.html#WSfun"><span·class="id"·title="module">WSfun</span></a>.<br/> | 553 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FMapInterface.html#WSfun"><span·class="id"·title="module">WSfun</span></a>.<br/> |
554 | <br/> | 554 | <br/> |
555 | </div> | 555 | </div> |
556 | <div·class="doc"> | 556 | <div·class="doc"> |
557 | <a·id="lab | 557 | <a·id="lab1122"></a><h2·class="section">Static·signature·for·Weak·Maps</h2> |
558 | <div·class="paragraph">·</div> | 558 | <div·class="paragraph">·</div> |
559 | ····Similar·to·<span·class="inlinecode"><span·class="id"·title="var">WSfun</span></span>·but·expressed·in·a·self-contained·way.· | 559 | ····Similar·to·<span·class="inlinecode"><span·class="id"·title="var">WSfun</span></span>·but·expressed·in·a·self-contained·way.· |
560 | </div> | 560 | </div> |
561 | <div·class="code"> | 561 | <div·class="code"> |
Offset 571, 15 lines modified | Offset 571, 15 lines modified | ||
571 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.FSets.FMapInterface.html#WSfun"><span·class="id"·title="module">WSfun</span></a>·<a·class="idref"·href="Coq.FSets.FMapInterface.html#WS.E"><span·class="id"·title="module">E</span></a>.<br/> | 571 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.FSets.FMapInterface.html#WSfun"><span·class="id"·title="module">WSfun</span></a>·<a·class="idref"·href="Coq.FSets.FMapInterface.html#WS.E"><span·class="id"·title="module">E</span></a>.<br/> |
572 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FMapInterface.html#WS"><span·class="id"·title="module">WS</span></a>.<br/> | 572 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FMapInterface.html#WS"><span·class="id"·title="module">WS</span></a>.<br/> |
573 | <br/> | 573 | <br/> |
574 | </div> | 574 | </div> |
575 | <div·class="doc"> | 575 | <div·class="doc"> |
576 | <a·id="lab | 576 | <a·id="lab1123"></a><h2·class="section">Maps·on·ordered·keys,·functorial·signature</h2> |
577 | </div> | 577 | </div> |
578 | <div·class="code"> | 578 | <div·class="code"> |
579 | <br/> | 579 | <br/> |
580 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="Sfun"·class="idref"·href="#Sfun"><span·class="id"·title="module">Sfun</span></a>·(<span·class="id"·title="var">E</span>·:·<a·class="idref"·href="Coq.Structures.OrderedType.html#OrderedType"><span·class="id"·title="module">OrderedType</span></a>).<br/> | 580 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="Sfun"·class="idref"·href="#Sfun"><span·class="id"·title="module">Sfun</span></a>·(<span·class="id"·title="var">E</span>·:·<a·class="idref"·href="Coq.Structures.OrderedType.html#OrderedType"><span·class="id"·title="module">OrderedType</span></a>).<br/> |
581 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.FSets.FMapInterface.html#WSfun"><span·class="id"·title="module">WSfun</span></a>·<a·class="idref"·href="Coq.FSets.FMapInterface.html#E"><span·class="id"·title="module">E</span></a>.<br/> | 581 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.FSets.FMapInterface.html#WSfun"><span·class="id"·title="module">WSfun</span></a>·<a·class="idref"·href="Coq.FSets.FMapInterface.html#E"><span·class="id"·title="module">E</span></a>.<br/> |
Offset 598, 30 lines modified | Offset 598, 30 lines modified | ||
598 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FMapInterface.html#Sfun.elt"><span·class="id"·title="section">elt</span></a>.<br/> | 598 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FMapInterface.html#Sfun.elt"><span·class="id"·title="section">elt</span></a>.<br/> |
599 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FMapInterface.html#Sfun"><span·class="id"·title="module">Sfun</span></a>.<br/> | 599 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FMapInterface.html#Sfun"><span·class="id"·title="module">Sfun</span></a>.<br/> |
600 | <br/> | 600 | <br/> |
601 | </div> | 601 | </div> |
602 | <div·class="doc"> | 602 | <div·class="doc"> |
603 | <a·id="lab | 603 | <a·id="lab1124"></a><h2·class="section">Maps·on·ordered·keys,·self-contained·signature</h2> |
604 | </div> | 604 | </div> |
605 | <div·class="code"> | 605 | <div·class="code"> |
606 | <br/> | 606 | <br/> |
607 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="S"·class="idref"·href="#S"><span·class="id"·title="module">S</span></a>.<br/> | 607 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="S"·class="idref"·href="#S"><span·class="id"·title="module">S</span></a>.<br/> |
608 | <span·class="id"·title="keyword">Declare·Module</span>·<a·id="S.E"·class="idref"·href="#S.E"><span·class="id"·title="module">E</span></a>·:·<a·class="idref"·href="Coq.Structures.OrderedType.html#OrderedType"><span·class="id"·title="module">OrderedType</span></a>.<br/> | 608 | <span·class="id"·title="keyword">Declare·Module</span>·<a·id="S.E"·class="idref"·href="#S.E"><span·class="id"·title="module">E</span></a>·:·<a·class="idref"·href="Coq.Structures.OrderedType.html#OrderedType"><span·class="id"·title="module">OrderedType</span></a>.<br/> |
609 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.FSets.FMapInterface.html#Sfun"><span·class="id"·title="module">Sfun</span></a>·<a·class="idref"·href="Coq.FSets.FMapInterface.html#S.E"><span·class="id"·title="module">E</span></a>.<br/> | 609 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.FSets.FMapInterface.html#Sfun"><span·class="id"·title="module">Sfun</span></a>·<a·class="idref"·href="Coq.FSets.FMapInterface.html#S.E"><span·class="id"·title="module">E</span></a>.<br/> |
610 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FMapInterface.html#S"><span·class="id"·title="module">S</span></a>.<br/> | 610 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FMapInterface.html#S"><span·class="id"·title="module">S</span></a>.<br/> |
611 | <br/> | 611 | <br/> |
612 | </div> | 612 | </div> |
613 | <div·class="doc"> | 613 | <div·class="doc"> |
614 | <a·id="lab | 614 | <a·id="lab1125"></a><h2·class="section">Maps·with·ordering·both·on·keys·and·datas</h2> |
615 | </div> | 615 | </div> |
616 | <div·class="code"> | 616 | <div·class="code"> |
617 | <br/> | 617 | <br/> |
618 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="Sord"·class="idref"·href="#Sord"><span·class="id"·title="module">Sord</span></a>.<br/> | 618 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="Sord"·class="idref"·href="#Sord"><span·class="id"·title="module">Sord</span></a>.<br/> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1052"></a><h1·class="section">Finite·map·library</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·This·file·proposes·an·implementation·of·the·non-dependent·interface | 51 | ·This·file·proposes·an·implementation·of·the·non-dependent·interface |
52 | ·<span·class="inlinecode"><span·class="id"·title="var">FMapInterface.S</span></span>·using·lists·of·pairs·ordered·(increasing)·with·respect·to | 52 | ·<span·class="inlinecode"><span·class="id"·title="var">FMapInterface.S</span></span>·using·lists·of·pairs·ordered·(increasing)·with·respect·to |
53 | ·left·projection.· | 53 | ·left·projection.· |
54 | </div> | 54 | </div> |
Offset 89, 15 lines modified | Offset 89, 15 lines modified | ||
89 | <span·class="id"·title="keyword">Notation</span>·<a·id="Raw.Sort"·class="idref"·href="#Raw.Sort"><span·class="id"·title="abbreviation">Sort</span></a>·:=·(<a·class="idref"·href="Coq.Sorting.Sorted.html#sort"><span·class="id"·title="abbreviation">sort</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.ltk"><span·class="id"·title="abbreviation">ltk</span></a>).<br/> | 89 | <span·class="id"·title="keyword">Notation</span>·<a·id="Raw.Sort"·class="idref"·href="#Raw.Sort"><span·class="id"·title="abbreviation">Sort</span></a>·:=·(<a·class="idref"·href="Coq.Sorting.Sorted.html#sort"><span·class="id"·title="abbreviation">sort</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.ltk"><span·class="id"·title="abbreviation">ltk</span></a>).<br/> |
90 | <span·class="id"·title="keyword">Notation</span>·<a·id="Raw.Inf"·class="idref"·href="#Raw.Inf"><span·class="id"·title="abbreviation">Inf</span></a>·:=·(<a·class="idref"·href="Coq.Sorting.Sorted.html#lelistA"><span·class="id"·title="abbreviation">lelistA</span></a>·(<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.ltk"><span·class="id"·title="abbreviation">ltk</span></a>)).<br/> | 90 | <span·class="id"·title="keyword">Notation</span>·<a·id="Raw.Inf"·class="idref"·href="#Raw.Inf"><span·class="id"·title="abbreviation">Inf</span></a>·:=·(<a·class="idref"·href="Coq.Sorting.Sorted.html#lelistA"><span·class="id"·title="abbreviation">lelistA</span></a>·(<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.ltk"><span·class="id"·title="abbreviation">ltk</span></a>)).<br/> |
91 | <br/> | 91 | <br/> |
92 | </div> | 92 | </div> |
93 | <div·class="doc"> | 93 | <div·class="doc"> |
94 | <a·id="lab | 94 | <a·id="lab1053"></a><h1·class="section"><span·class="inlinecode"><span·class="id"·title="var">empty</span></span></h1> |
95 | </div> | 95 | </div> |
96 | <div·class="code"> | 96 | <div·class="code"> |
97 | <br/> | 97 | <br/> |
98 | <span·class="id"·title="keyword">Definition</span>·<a·id="Raw.empty"·class="idref"·href="#Raw.empty"><span·class="id"·title="definition">empty</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>·:=·<a·class="idref"·href="Coq.Init.Datatypes.html#nil"><span·class="id"·title="constructor">nil</span></a>.<br/> | 98 | <span·class="id"·title="keyword">Definition</span>·<a·id="Raw.empty"·class="idref"·href="#Raw.empty"><span·class="id"·title="definition">empty</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>·:=·<a·class="idref"·href="Coq.Init.Datatypes.html#nil"><span·class="id"·title="constructor">nil</span></a>.<br/> |
Offset 112, 15 lines modified | Offset 112, 15 lines modified | ||
112 | <br/> | 112 | <br/> |
113 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Raw.empty_sorted"·class="idref"·href="#Raw.empty_sorted"><span·class="id"·title="lemma">empty_sorted</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Sort"><span·class="id"·title="abbreviation">Sort</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.empty"><span·class="id"·title="definition">empty</span></a>.<br/> | 113 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Raw.empty_sorted"·class="idref"·href="#Raw.empty_sorted"><span·class="id"·title="lemma">empty_sorted</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Sort"><span·class="id"·title="abbreviation">Sort</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.empty"><span·class="id"·title="definition">empty</span></a>.<br/> |
114 | <br/> | 114 | <br/> |
115 | </div> | 115 | </div> |
116 | <div·class="doc"> | 116 | <div·class="doc"> |
117 | <a·id="lab | 117 | <a·id="lab1054"></a><h1·class="section"><span·class="inlinecode"><span·class="id"·title="var">is_empty</span></span></h1> |
118 | </div> | 118 | </div> |
119 | <div·class="code"> | 119 | <div·class="code"> |
120 | <br/> | 120 | <br/> |
121 | <span·class="id"·title="keyword">Definition</span>·<a·id="Raw.is_empty"·class="idref"·href="#Raw.is_empty"><span·class="id"·title="definition">is_empty</span></a>·(<a·id="l:7"·class="idref"·href="#l:7"><span·class="id"·title="binder">l</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>)·:·<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>·:=·<span·class="id"·title="keyword">if</span>·<a·class="idref"·href="Coq.FSets.FMapList.html#l:7"><span·class="id"·title="variable">l</span></a>·<span·class="id"·title="keyword">then</span>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<span·class="id"·title="keyword">else</span>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>.<br/> | 121 | <span·class="id"·title="keyword">Definition</span>·<a·id="Raw.is_empty"·class="idref"·href="#Raw.is_empty"><span·class="id"·title="definition">is_empty</span></a>·(<a·id="l:7"·class="idref"·href="#l:7"><span·class="id"·title="binder">l</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>)·:·<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>·:=·<span·class="id"·title="keyword">if</span>·<a·class="idref"·href="Coq.FSets.FMapList.html#l:7"><span·class="id"·title="variable">l</span></a>·<span·class="id"·title="keyword">then</span>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<span·class="id"·title="keyword">else</span>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>.<br/> |
Offset 130, 15 lines modified | Offset 130, 15 lines modified | ||
130 | <br/> | 130 | <br/> |
131 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Raw.is_empty_2"·class="idref"·href="#Raw.is_empty_2"><span·class="id"·title="lemma">is_empty_2</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="m:9"·class="idref"·href="#m:9"><span·class="id"·title="binder">m</span></a>,·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.is_empty"><span·class="id"·title="definition">is_empty</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#m:9"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Empty"><span·class="id"·title="definition">Empty</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#m:9"><span·class="id"·title="variable">m</span></a>.<br/> | 131 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Raw.is_empty_2"·class="idref"·href="#Raw.is_empty_2"><span·class="id"·title="lemma">is_empty_2</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="m:9"·class="idref"·href="#m:9"><span·class="id"·title="binder">m</span></a>,·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.is_empty"><span·class="id"·title="definition">is_empty</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#m:9"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Empty"><span·class="id"·title="definition">Empty</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#m:9"><span·class="id"·title="variable">m</span></a>.<br/> |
132 | <br/> | 132 | <br/> |
133 | </div> | 133 | </div> |
134 | <div·class="doc"> | 134 | <div·class="doc"> |
135 | <a·id="lab | 135 | <a·id="lab1055"></a><h1·class="section"><span·class="inlinecode"><span·class="id"·title="var">mem</span></span></h1> |
136 | </div> | 136 | </div> |
137 | <div·class="code"> | 137 | <div·class="code"> |
138 | <br/> | 138 | <br/> |
139 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Raw.mem"·class="idref"·href="#Raw.mem"><span·class="id"·title="definition">mem</span></a>·(<a·id="k:10"·class="idref"·href="#k:10"><span·class="id"·title="binder">k</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.key"><span·class="id"·title="definition">key</span></a>)·(<a·id="s:11"·class="idref"·href="#s:11"><span·class="id"·title="binder">s</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>)·{<span·class="id"·title="keyword">struct</span>·<span·class="id"·title="var">s</span>}·:·<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>·:=<br/> | 139 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Raw.mem"·class="idref"·href="#Raw.mem"><span·class="id"·title="definition">mem</span></a>·(<a·id="k:10"·class="idref"·href="#k:10"><span·class="id"·title="binder">k</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.key"><span·class="id"·title="definition">key</span></a>)·(<a·id="s:11"·class="idref"·href="#s:11"><span·class="id"·title="binder">s</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>)·{<span·class="id"·title="keyword">struct</span>·<span·class="id"·title="var">s</span>}·:·<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>·:=<br/> |
140 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.FSets.FMapList.html#s:11"><span·class="id"·title="variable">s</span></a>·<span·class="id"·title="keyword">with</span><br/> | 140 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.FSets.FMapList.html#s:11"><span·class="id"·title="variable">s</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 157, 15 lines modified | Offset 157, 15 lines modified | ||
157 | <br/> | 157 | <br/> |
158 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Raw.mem_2"·class="idref"·href="#Raw.mem_2"><span·class="id"·title="lemma">mem_2</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="m:17"·class="idref"·href="#m:17"><span·class="id"·title="binder">m</span></a>·(<a·id="Hm:18"·class="idref"·href="#Hm:18"><span·class="id"·title="binder">Hm</span></a>:<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Sort"><span·class="id"·title="abbreviation">Sort</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#m:17"><span·class="id"·title="variable">m</span></a>)·<a·id="x:19"·class="idref"·href="#x:19"><span·class="id"·title="binder">x</span></a>,·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.mem"><span·class="id"·title="definition">mem</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#x:19"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#m:17"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.In"><span·class="id"·title="abbreviation">In</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#x:19"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#m:17"><span·class="id"·title="variable">m</span></a>.<br/> | 158 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Raw.mem_2"·class="idref"·href="#Raw.mem_2"><span·class="id"·title="lemma">mem_2</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="m:17"·class="idref"·href="#m:17"><span·class="id"·title="binder">m</span></a>·(<a·id="Hm:18"·class="idref"·href="#Hm:18"><span·class="id"·title="binder">Hm</span></a>:<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Sort"><span·class="id"·title="abbreviation">Sort</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#m:17"><span·class="id"·title="variable">m</span></a>)·<a·id="x:19"·class="idref"·href="#x:19"><span·class="id"·title="binder">x</span></a>,·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.mem"><span·class="id"·title="definition">mem</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#x:19"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#m:17"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.In"><span·class="id"·title="abbreviation">In</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#x:19"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#m:17"><span·class="id"·title="variable">m</span></a>.<br/> |
159 | <br/> | 159 | <br/> |
160 | </div> | 160 | </div> |
161 | <div·class="doc"> | 161 | <div·class="doc"> |
162 | <a·id="lab | 162 | <a·id="lab1056"></a><h1·class="section"><span·class="inlinecode"><span·class="id"·title="var">find</span></span></h1> |
163 | </div> | 163 | </div> |
164 | <div·class="code"> | 164 | <div·class="code"> |
165 | <br/> | 165 | <br/> |
166 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Raw.find"·class="idref"·href="#Raw.find"><span·class="id"·title="definition">find</span></a>·(<a·id="k:20"·class="idref"·href="#k:20"><span·class="id"·title="binder">k</span></a>:<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.key"><span·class="id"·title="definition">key</span></a>)·(<a·id="s:21"·class="idref"·href="#s:21"><span·class="id"·title="binder">s</span></a>:·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>)·{<span·class="id"·title="keyword">struct</span>·<span·class="id"·title="var">s</span>}·:·<a·class="idref"·href="Coq.Init.Datatypes.html#option"><span·class="id"·title="inductive">option</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>·:=<br/> | 166 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Raw.find"·class="idref"·href="#Raw.find"><span·class="id"·title="definition">find</span></a>·(<a·id="k:20"·class="idref"·href="#k:20"><span·class="id"·title="binder">k</span></a>:<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.key"><span·class="id"·title="definition">key</span></a>)·(<a·id="s:21"·class="idref"·href="#s:21"><span·class="id"·title="binder">s</span></a>:·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>)·{<span·class="id"·title="keyword">struct</span>·<span·class="id"·title="var">s</span>}·:·<a·class="idref"·href="Coq.Init.Datatypes.html#option"><span·class="id"·title="inductive">option</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>·:=<br/> |
167 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.FSets.FMapList.html#s:21"><span·class="id"·title="variable">s</span></a>·<span·class="id"·title="keyword">with</span><br/> | 167 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.FSets.FMapList.html#s:21"><span·class="id"·title="variable">s</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 184, 15 lines modified | Offset 184, 15 lines modified | ||
184 | <br/> | 184 | <br/> |
185 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Raw.find_1"·class="idref"·href="#Raw.find_1"><span·class="id"·title="lemma">find_1</span></a>·:··<span·class="id"·title="keyword">forall</span>·<a·id="m:27"·class="idref"·href="#m:27"><span·class="id"·title="binder">m</span></a>·(<a·id="Hm:28"·class="idref"·href="#Hm:28"><span·class="id"·title="binder">Hm</span></a>:<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Sort"><span·class="id"·title="abbreviation">Sort</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#m:27"><span·class="id"·title="variable">m</span></a>)·<a·id="x:29"·class="idref"·href="#x:29"><span·class="id"·title="binder">x</span></a>·<a·id="e:30"·class="idref"·href="#e:30"><span·class="id"·title="binder">e</span></a>,·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.MapsTo"><span·class="id"·title="abbreviation">MapsTo</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#x:29"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#e:30"><span·class="id"·title="variable">e</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#m:27"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.find"><span·class="id"·title="definition">find</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#x:29"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#m:27"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#Some"><span·class="id"·title="constructor">Some</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#e:30"><span·class="id"·title="variable">e</span></a>.<br/> | 185 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Raw.find_1"·class="idref"·href="#Raw.find_1"><span·class="id"·title="lemma">find_1</span></a>·:··<span·class="id"·title="keyword">forall</span>·<a·id="m:27"·class="idref"·href="#m:27"><span·class="id"·title="binder">m</span></a>·(<a·id="Hm:28"·class="idref"·href="#Hm:28"><span·class="id"·title="binder">Hm</span></a>:<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Sort"><span·class="id"·title="abbreviation">Sort</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#m:27"><span·class="id"·title="variable">m</span></a>)·<a·id="x:29"·class="idref"·href="#x:29"><span·class="id"·title="binder">x</span></a>·<a·id="e:30"·class="idref"·href="#e:30"><span·class="id"·title="binder">e</span></a>,·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.MapsTo"><span·class="id"·title="abbreviation">MapsTo</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#x:29"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#e:30"><span·class="id"·title="variable">e</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#m:27"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.find"><span·class="id"·title="definition">find</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#x:29"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#m:27"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#Some"><span·class="id"·title="constructor">Some</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#e:30"><span·class="id"·title="variable">e</span></a>.<br/> |
186 | <br/> | 186 | <br/> |
187 | </div> | 187 | </div> |
188 | <div·class="doc"> | 188 | <div·class="doc"> |
189 | <a·id="lab | 189 | <a·id="lab1057"></a><h1·class="section"><span·class="inlinecode"><span·class="id"·title="var">add</span></span></h1> |
190 | </div> | 190 | </div> |
191 | <div·class="code"> | 191 | <div·class="code"> |
192 | <br/> | 192 | <br/> |
193 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Raw.add"·class="idref"·href="#Raw.add"><span·class="id"·title="definition">add</span></a>·(<a·id="k:31"·class="idref"·href="#k:31"><span·class="id"·title="binder">k</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.key"><span·class="id"·title="definition">key</span></a>)·(<a·id="x:32"·class="idref"·href="#x:32"><span·class="id"·title="binder">x</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>)·(<a·id="s:33"·class="idref"·href="#s:33"><span·class="id"·title="binder">s</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>)·{<span·class="id"·title="keyword">struct</span>·<span·class="id"·title="var">s</span>}·:·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>·:=<br/> | 193 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Raw.add"·class="idref"·href="#Raw.add"><span·class="id"·title="definition">add</span></a>·(<a·id="k:31"·class="idref"·href="#k:31"><span·class="id"·title="binder">k</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.key"><span·class="id"·title="definition">key</span></a>)·(<a·id="x:32"·class="idref"·href="#x:32"><span·class="id"·title="binder">x</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>)·(<a·id="s:33"·class="idref"·href="#s:33"><span·class="id"·title="binder">s</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>)·{<span·class="id"·title="keyword">struct</span>·<span·class="id"·title="var">s</span>}·:·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>·:=<br/> |
194 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.FSets.FMapList.html#s:33"><span·class="id"·title="variable">s</span></a>·<span·class="id"·title="keyword">with</span><br/> | 194 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.FSets.FMapList.html#s:33"><span·class="id"·title="variable">s</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 225, 15 lines modified | Offset 225, 15 lines modified | ||
225 | <br/> | 225 | <br/> |
226 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Raw.add_sorted"·class="idref"·href="#Raw.add_sorted"><span·class="id"·title="lemma">add_sorted</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="m:55"·class="idref"·href="#m:55"><span·class="id"·title="binder">m</span></a>·(<a·id="Hm:56"·class="idref"·href="#Hm:56"><span·class="id"·title="binder">Hm</span></a>:<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Sort"><span·class="id"·title="abbreviation">Sort</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#m:55"><span·class="id"·title="variable">m</span></a>)·<a·id="x:57"·class="idref"·href="#x:57"><span·class="id"·title="binder">x</span></a>·<a·id="e:58"·class="idref"·href="#e:58"><span·class="id"·title="binder">e</span></a>,·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Sort"><span·class="id"·title="abbreviation">Sort</span></a>·(<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.add"><span·class="id"·title="definition">add</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#x:57"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#e:58"><span·class="id"·title="variable">e</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#m:55"><span·class="id"·title="variable">m</span></a>).<br/> | 226 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Raw.add_sorted"·class="idref"·href="#Raw.add_sorted"><span·class="id"·title="lemma">add_sorted</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="m:55"·class="idref"·href="#m:55"><span·class="id"·title="binder">m</span></a>·(<a·id="Hm:56"·class="idref"·href="#Hm:56"><span·class="id"·title="binder">Hm</span></a>:<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Sort"><span·class="id"·title="abbreviation">Sort</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#m:55"><span·class="id"·title="variable">m</span></a>)·<a·id="x:57"·class="idref"·href="#x:57"><span·class="id"·title="binder">x</span></a>·<a·id="e:58"·class="idref"·href="#e:58"><span·class="id"·title="binder">e</span></a>,·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Sort"><span·class="id"·title="abbreviation">Sort</span></a>·(<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.add"><span·class="id"·title="definition">add</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#x:57"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#e:58"><span·class="id"·title="variable">e</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#m:55"><span·class="id"·title="variable">m</span></a>).<br/> |
227 | <br/> | 227 | <br/> |
228 | </div> | 228 | </div> |
229 | <div·class="doc"> | 229 | <div·class="doc"> |
230 | <a·id="lab | 230 | <a·id="lab1058"></a><h1·class="section"><span·class="inlinecode"><span·class="id"·title="var">remove</span></span></h1> |
231 | </div> | 231 | </div> |
232 | <div·class="code"> | 232 | <div·class="code"> |
233 | <br/> | 233 | <br/> |
234 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Raw.remove"·class="idref"·href="#Raw.remove"><span·class="id"·title="definition">remove</span></a>·(<a·id="k:59"·class="idref"·href="#k:59"><span·class="id"·title="binder">k</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.key"><span·class="id"·title="definition">key</span></a>)·(<a·id="s:60"·class="idref"·href="#s:60"><span·class="id"·title="binder">s</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>)·{<span·class="id"·title="keyword">struct</span>·<span·class="id"·title="var">s</span>}·:·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>·:=<br/> | 234 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Raw.remove"·class="idref"·href="#Raw.remove"><span·class="id"·title="definition">remove</span></a>·(<a·id="k:59"·class="idref"·href="#k:59"><span·class="id"·title="binder">k</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.key"><span·class="id"·title="definition">key</span></a>)·(<a·id="s:60"·class="idref"·href="#s:60"><span·class="id"·title="binder">s</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>)·{<span·class="id"·title="keyword">struct</span>·<span·class="id"·title="var">s</span>}·:·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>·:=<br/> |
235 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.FSets.FMapList.html#s:60"><span·class="id"·title="variable">s</span></a>·<span·class="id"·title="keyword">with</span><br/> | 235 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.FSets.FMapList.html#s:60"><span·class="id"·title="variable">s</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 266, 15 lines modified | Offset 266, 15 lines modified | ||
266 | <br/> | 266 | <br/> |
267 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Raw.remove_sorted"·class="idref"·href="#Raw.remove_sorted"><span·class="id"·title="lemma">remove_sorted</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="m:82"·class="idref"·href="#m:82"><span·class="id"·title="binder">m</span></a>·(<a·id="Hm:83"·class="idref"·href="#Hm:83"><span·class="id"·title="binder">Hm</span></a>:<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Sort"><span·class="id"·title="abbreviation">Sort</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#m:82"><span·class="id"·title="variable">m</span></a>)·<a·id="x:84"·class="idref"·href="#x:84"><span·class="id"·title="binder">x</span></a>,·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Sort"><span·class="id"·title="abbreviation">Sort</span></a>·(<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.remove"><span·class="id"·title="definition">remove</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#x:84"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#m:82"><span·class="id"·title="variable">m</span></a>).<br/> | 267 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Raw.remove_sorted"·class="idref"·href="#Raw.remove_sorted"><span·class="id"·title="lemma">remove_sorted</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="m:82"·class="idref"·href="#m:82"><span·class="id"·title="binder">m</span></a>·(<a·id="Hm:83"·class="idref"·href="#Hm:83"><span·class="id"·title="binder">Hm</span></a>:<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Sort"><span·class="id"·title="abbreviation">Sort</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#m:82"><span·class="id"·title="variable">m</span></a>)·<a·id="x:84"·class="idref"·href="#x:84"><span·class="id"·title="binder">x</span></a>,·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Sort"><span·class="id"·title="abbreviation">Sort</span></a>·(<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.remove"><span·class="id"·title="definition">remove</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#x:84"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#m:82"><span·class="id"·title="variable">m</span></a>).<br/> |
268 | <br/> | 268 | <br/> |
269 | </div> | 269 | </div> |
270 | <div·class="doc"> | 270 | <div·class="doc"> |
271 | <a·id="lab | 271 | <a·id="lab1059"></a><h1·class="section"><span·class="inlinecode"><span·class="id"·title="var">elements</span></span></h1> |
272 | </div> | 272 | </div> |
273 | <div·class="code"> | 273 | <div·class="code"> |
274 | <br/> | 274 | <br/> |
275 | <span·class="id"·title="keyword">Definition</span>·<a·id="Raw.elements"·class="idref"·href="#Raw.elements"><span·class="id"·title="definition">elements</span></a>·(<a·id="m:85"·class="idref"·href="#m:85"><span·class="id"·title="binder">m</span></a>:·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>)·:=·<a·class="idref"·href="Coq.FSets.FMapList.html#m:85"><span·class="id"·title="variable">m</span></a>.<br/> | 275 | <span·class="id"·title="keyword">Definition</span>·<a·id="Raw.elements"·class="idref"·href="#Raw.elements"><span·class="id"·title="definition">elements</span></a>·(<a·id="m:85"·class="idref"·href="#m:85"><span·class="id"·title="binder">m</span></a>:·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>)·:=·<a·class="idref"·href="Coq.FSets.FMapList.html#m:85"><span·class="id"·title="variable">m</span></a>.<br/> |
Max diff block lines reached; 12899/30850 bytes (41.81%) of diff not shown. |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab989"></a><h1·class="section">FMapPositive·:·an·implementation·of·FMapInterface·for·<span·class="inlinecode"><span·class="id"·title="var">positive</span></span>·keys.</h1> |
50 | </div> | 50 | </div> |
51 | <div·class="code"> | 51 | <div·class="code"> |
52 | <br/> | 52 | <br/> |
53 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Bool.Bool.html#"><span·class="id"·title="library">Bool</span></a>·<a·class="idref"·href="Coq.Structures.OrderedType.html#"><span·class="id"·title="library">OrderedType</span></a>·<a·class="idref"·href="Coq.ZArith.ZArith.html#"><span·class="id"·title="library">ZArith</span></a>·<a·class="idref"·href="Coq.Structures.OrderedType.html#"><span·class="id"·title="library">OrderedType</span></a>·<a·class="idref"·href="Coq.Structures.OrderedTypeEx.html#"><span·class="id"·title="library">OrderedTypeEx</span></a>·<a·class="idref"·href="Coq.FSets.FMapInterface.html#"><span·class="id"·title="library">FMapInterface</span></a>.<br/> | 53 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Bool.Bool.html#"><span·class="id"·title="library">Bool</span></a>·<a·class="idref"·href="Coq.Structures.OrderedType.html#"><span·class="id"·title="library">OrderedType</span></a>·<a·class="idref"·href="Coq.ZArith.ZArith.html#"><span·class="id"·title="library">ZArith</span></a>·<a·class="idref"·href="Coq.Structures.OrderedType.html#"><span·class="id"·title="library">OrderedType</span></a>·<a·class="idref"·href="Coq.Structures.OrderedTypeEx.html#"><span·class="id"·title="library">OrderedTypeEx</span></a>·<a·class="idref"·href="Coq.FSets.FMapInterface.html#"><span·class="id"·title="library">FMapInterface</span></a>.<br/> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab978"></a><h1·class="section">Finite·map·library</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·This·file·proposes·an·implementation·of·the·non-dependent·interface | 51 | ·This·file·proposes·an·implementation·of·the·non-dependent·interface |
52 | ·<span·class="inlinecode"><span·class="id"·title="var">FMapInterface.WS</span></span>·using·lists·of·pairs,·unordered·but·without·redundancy.· | 52 | ·<span·class="inlinecode"><span·class="id"·title="var">FMapInterface.WS</span></span>·using·lists·of·pairs,·unordered·but·without·redundancy.· |
53 | </div> | 53 | </div> |
54 | <div·class="code"> | 54 | <div·class="code"> |
Offset 87, 15 lines modified | Offset 87, 15 lines modified | ||
87 | <span·class="id"·title="keyword">Notation</span>·<a·id="Raw.In"·class="idref"·href="#Raw.In"><span·class="id"·title="abbreviation">In</span></a>·:=·(<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.In"><span·class="id"·title="definition">In</span></a>·(<span·class="id"·title="var">elt</span>:=<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>)).<br/> | 87 | <span·class="id"·title="keyword">Notation</span>·<a·id="Raw.In"·class="idref"·href="#Raw.In"><span·class="id"·title="abbreviation">In</span></a>·:=·(<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.In"><span·class="id"·title="definition">In</span></a>·(<span·class="id"·title="var">elt</span>:=<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>)).<br/> |
88 | <span·class="id"·title="keyword">Notation</span>·<a·id="Raw.NoDupA"·class="idref"·href="#Raw.NoDupA"><span·class="id"·title="abbreviation">NoDupA</span></a>·:=·(<a·class="idref"·href="Coq.Lists.SetoidList.html#NoDupA"><span·class="id"·title="inductive">NoDupA</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.eqk"><span·class="id"·title="abbreviation">eqk</span></a>).<br/> | 88 | <span·class="id"·title="keyword">Notation</span>·<a·id="Raw.NoDupA"·class="idref"·href="#Raw.NoDupA"><span·class="id"·title="abbreviation">NoDupA</span></a>·:=·(<a·class="idref"·href="Coq.Lists.SetoidList.html#NoDupA"><span·class="id"·title="inductive">NoDupA</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.eqk"><span·class="id"·title="abbreviation">eqk</span></a>).<br/> |
89 | <br/> | 89 | <br/> |
90 | </div> | 90 | </div> |
91 | <div·class="doc"> | 91 | <div·class="doc"> |
92 | <a·id="lab | 92 | <a·id="lab979"></a><h1·class="section"><span·class="inlinecode"><span·class="id"·title="var">empty</span></span></h1> |
93 | </div> | 93 | </div> |
94 | <div·class="code"> | 94 | <div·class="code"> |
95 | <br/> | 95 | <br/> |
96 | <span·class="id"·title="keyword">Definition</span>·<a·id="Raw.empty"·class="idref"·href="#Raw.empty"><span·class="id"·title="definition">empty</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>·:=·<a·class="idref"·href="Coq.Init.Datatypes.html#nil"><span·class="id"·title="constructor">nil</span></a>.<br/> | 96 | <span·class="id"·title="keyword">Definition</span>·<a·id="Raw.empty"·class="idref"·href="#Raw.empty"><span·class="id"·title="definition">empty</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>·:=·<a·class="idref"·href="Coq.Init.Datatypes.html#nil"><span·class="id"·title="constructor">nil</span></a>.<br/> |
Offset 112, 15 lines modified | Offset 112, 15 lines modified | ||
112 | <br/> | 112 | <br/> |
113 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Raw.empty_NoDup"·class="idref"·href="#Raw.empty_NoDup"><span·class="id"·title="lemma">empty_NoDup</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.NoDupA"><span·class="id"·title="abbreviation">NoDupA</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.empty"><span·class="id"·title="definition">empty</span></a>.<br/> | 113 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Raw.empty_NoDup"·class="idref"·href="#Raw.empty_NoDup"><span·class="id"·title="lemma">empty_NoDup</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.NoDupA"><span·class="id"·title="abbreviation">NoDupA</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.empty"><span·class="id"·title="definition">empty</span></a>.<br/> |
114 | <br/> | 114 | <br/> |
115 | </div> | 115 | </div> |
116 | <div·class="doc"> | 116 | <div·class="doc"> |
117 | <a·id="lab | 117 | <a·id="lab980"></a><h1·class="section"><span·class="inlinecode"><span·class="id"·title="var">is_empty</span></span></h1> |
118 | </div> | 118 | </div> |
119 | <div·class="code"> | 119 | <div·class="code"> |
120 | <br/> | 120 | <br/> |
121 | <span·class="id"·title="keyword">Definition</span>·<a·id="Raw.is_empty"·class="idref"·href="#Raw.is_empty"><span·class="id"·title="definition">is_empty</span></a>·(<a·id="l:7"·class="idref"·href="#l:7"><span·class="id"·title="binder">l</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>)·:·<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>·:=·<span·class="id"·title="keyword">if</span>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#l:7"><span·class="id"·title="variable">l</span></a>·<span·class="id"·title="keyword">then</span>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<span·class="id"·title="keyword">else</span>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>.<br/> | 121 | <span·class="id"·title="keyword">Definition</span>·<a·id="Raw.is_empty"·class="idref"·href="#Raw.is_empty"><span·class="id"·title="definition">is_empty</span></a>·(<a·id="l:7"·class="idref"·href="#l:7"><span·class="id"·title="binder">l</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>)·:·<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>·:=·<span·class="id"·title="keyword">if</span>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#l:7"><span·class="id"·title="variable">l</span></a>·<span·class="id"·title="keyword">then</span>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<span·class="id"·title="keyword">else</span>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>.<br/> |
Offset 130, 15 lines modified | Offset 130, 15 lines modified | ||
130 | <br/> | 130 | <br/> |
131 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Raw.is_empty_2"·class="idref"·href="#Raw.is_empty_2"><span·class="id"·title="lemma">is_empty_2</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="m:9"·class="idref"·href="#m:9"><span·class="id"·title="binder">m</span></a>,·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.is_empty"><span·class="id"·title="definition">is_empty</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#m:9"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.Empty"><span·class="id"·title="definition">Empty</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#m:9"><span·class="id"·title="variable">m</span></a>.<br/> | 131 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Raw.is_empty_2"·class="idref"·href="#Raw.is_empty_2"><span·class="id"·title="lemma">is_empty_2</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="m:9"·class="idref"·href="#m:9"><span·class="id"·title="binder">m</span></a>,·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.is_empty"><span·class="id"·title="definition">is_empty</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#m:9"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.Empty"><span·class="id"·title="definition">Empty</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#m:9"><span·class="id"·title="variable">m</span></a>.<br/> |
132 | <br/> | 132 | <br/> |
133 | </div> | 133 | </div> |
134 | <div·class="doc"> | 134 | <div·class="doc"> |
135 | <a·id="lab | 135 | <a·id="lab981"></a><h1·class="section"><span·class="inlinecode"><span·class="id"·title="var">mem</span></span></h1> |
136 | </div> | 136 | </div> |
137 | <div·class="code"> | 137 | <div·class="code"> |
138 | <br/> | 138 | <br/> |
139 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Raw.mem"·class="idref"·href="#Raw.mem"><span·class="id"·title="definition">mem</span></a>·(<a·id="k:10"·class="idref"·href="#k:10"><span·class="id"·title="binder">k</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.key"><span·class="id"·title="definition">key</span></a>)·(<a·id="s:11"·class="idref"·href="#s:11"><span·class="id"·title="binder">s</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>)·{<span·class="id"·title="keyword">struct</span>·<span·class="id"·title="var">s</span>}·:·<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>·:=<br/> | 139 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Raw.mem"·class="idref"·href="#Raw.mem"><span·class="id"·title="definition">mem</span></a>·(<a·id="k:10"·class="idref"·href="#k:10"><span·class="id"·title="binder">k</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.key"><span·class="id"·title="definition">key</span></a>)·(<a·id="s:11"·class="idref"·href="#s:11"><span·class="id"·title="binder">s</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>)·{<span·class="id"·title="keyword">struct</span>·<span·class="id"·title="var">s</span>}·:·<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>·:=<br/> |
140 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#s:11"><span·class="id"·title="variable">s</span></a>·<span·class="id"·title="keyword">with</span><br/> | 140 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#s:11"><span·class="id"·title="variable">s</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 152, 15 lines modified | Offset 152, 15 lines modified | ||
152 | <br/> | 152 | <br/> |
153 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Raw.mem_2"·class="idref"·href="#Raw.mem_2"><span·class="id"·title="lemma">mem_2</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="m:17"·class="idref"·href="#m:17"><span·class="id"·title="binder">m</span></a>·(<a·id="Hm:18"·class="idref"·href="#Hm:18"><span·class="id"·title="binder">Hm</span></a>:<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.NoDupA"><span·class="id"·title="abbreviation">NoDupA</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#m:17"><span·class="id"·title="variable">m</span></a>)·<a·id="x:19"·class="idref"·href="#x:19"><span·class="id"·title="binder">x</span></a>,·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.mem"><span·class="id"·title="definition">mem</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#x:19"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#m:17"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.In"><span·class="id"·title="abbreviation">In</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#x:19"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#m:17"><span·class="id"·title="variable">m</span></a>.<br/> | 153 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Raw.mem_2"·class="idref"·href="#Raw.mem_2"><span·class="id"·title="lemma">mem_2</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="m:17"·class="idref"·href="#m:17"><span·class="id"·title="binder">m</span></a>·(<a·id="Hm:18"·class="idref"·href="#Hm:18"><span·class="id"·title="binder">Hm</span></a>:<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.NoDupA"><span·class="id"·title="abbreviation">NoDupA</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#m:17"><span·class="id"·title="variable">m</span></a>)·<a·id="x:19"·class="idref"·href="#x:19"><span·class="id"·title="binder">x</span></a>,·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.mem"><span·class="id"·title="definition">mem</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#x:19"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#m:17"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.In"><span·class="id"·title="abbreviation">In</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#x:19"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#m:17"><span·class="id"·title="variable">m</span></a>.<br/> |
154 | <br/> | 154 | <br/> |
155 | </div> | 155 | </div> |
156 | <div·class="doc"> | 156 | <div·class="doc"> |
157 | <a·id="lab | 157 | <a·id="lab982"></a><h1·class="section"><span·class="inlinecode"><span·class="id"·title="var">find</span></span></h1> |
158 | </div> | 158 | </div> |
159 | <div·class="code"> | 159 | <div·class="code"> |
160 | <br/> | 160 | <br/> |
161 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Raw.find"·class="idref"·href="#Raw.find"><span·class="id"·title="definition">find</span></a>·(<a·id="k:20"·class="idref"·href="#k:20"><span·class="id"·title="binder">k</span></a>:<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.key"><span·class="id"·title="definition">key</span></a>)·(<a·id="s:21"·class="idref"·href="#s:21"><span·class="id"·title="binder">s</span></a>:·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>)·{<span·class="id"·title="keyword">struct</span>·<span·class="id"·title="var">s</span>}·:·<a·class="idref"·href="Coq.Init.Datatypes.html#option"><span·class="id"·title="inductive">option</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>·:=<br/> | 161 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Raw.find"·class="idref"·href="#Raw.find"><span·class="id"·title="definition">find</span></a>·(<a·id="k:20"·class="idref"·href="#k:20"><span·class="id"·title="binder">k</span></a>:<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.key"><span·class="id"·title="definition">key</span></a>)·(<a·id="s:21"·class="idref"·href="#s:21"><span·class="id"·title="binder">s</span></a>:·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>)·{<span·class="id"·title="keyword">struct</span>·<span·class="id"·title="var">s</span>}·:·<a·class="idref"·href="Coq.Init.Datatypes.html#option"><span·class="id"·title="inductive">option</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>·:=<br/> |
162 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#s:21"><span·class="id"·title="variable">s</span></a>·<span·class="id"·title="keyword">with</span><br/> | 162 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#s:21"><span·class="id"·title="variable">s</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 181, 15 lines modified | Offset 181, 15 lines modified | ||
181 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Raw.find_eq"·class="idref"·href="#Raw.find_eq"><span·class="id"·title="lemma">find_eq</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="m:31"·class="idref"·href="#m:31"><span·class="id"·title="binder">m</span></a>·(<a·id="Hm:32"·class="idref"·href="#Hm:32"><span·class="id"·title="binder">Hm</span></a>:<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.NoDupA"><span·class="id"·title="abbreviation">NoDupA</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#m:31"><span·class="id"·title="variable">m</span></a>)·<a·id="x:33"·class="idref"·href="#x:33"><span·class="id"·title="binder">x</span></a>·<a·id="x':34"·class="idref"·href="#x':34"><span·class="id"·title="binder">x'</span></a>,<br/> | 181 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Raw.find_eq"·class="idref"·href="#Raw.find_eq"><span·class="id"·title="lemma">find_eq</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="m:31"·class="idref"·href="#m:31"><span·class="id"·title="binder">m</span></a>·(<a·id="Hm:32"·class="idref"·href="#Hm:32"><span·class="id"·title="binder">Hm</span></a>:<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.NoDupA"><span·class="id"·title="abbreviation">NoDupA</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#m:31"><span·class="id"·title="variable">m</span></a>)·<a·id="x:33"·class="idref"·href="#x:33"><span·class="id"·title="binder">x</span></a>·<a·id="x':34"·class="idref"·href="#x':34"><span·class="id"·title="binder">x'</span></a>,<br/> |
182 | <a·class="idref"·href="Coq.FSets.FMapWeakList.html#X.eq"><span·class="id"·title="axiom">X.eq</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#x:33"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#x':34"><span·class="id"·title="variable">x'</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.find"><span·class="id"·title="definition">find</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#x:33"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#m:31"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.find"><span·class="id"·title="definition">find</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#x':34"><span·class="id"·title="variable">x'</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#m:31"><span·class="id"·title="variable">m</span></a>.<br/> | 182 | <a·class="idref"·href="Coq.FSets.FMapWeakList.html#X.eq"><span·class="id"·title="axiom">X.eq</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#x:33"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#x':34"><span·class="id"·title="variable">x'</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.find"><span·class="id"·title="definition">find</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#x:33"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#m:31"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.find"><span·class="id"·title="definition">find</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#x':34"><span·class="id"·title="variable">x'</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#m:31"><span·class="id"·title="variable">m</span></a>.<br/> |
183 | <br/> | 183 | <br/> |
184 | </div> | 184 | </div> |
185 | <div·class="doc"> | 185 | <div·class="doc"> |
186 | <a·id="lab | 186 | <a·id="lab983"></a><h1·class="section"><span·class="inlinecode"><span·class="id"·title="var">add</span></span></h1> |
187 | </div> | 187 | </div> |
188 | <div·class="code"> | 188 | <div·class="code"> |
189 | <br/> | 189 | <br/> |
190 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Raw.add"·class="idref"·href="#Raw.add"><span·class="id"·title="definition">add</span></a>·(<a·id="k:35"·class="idref"·href="#k:35"><span·class="id"·title="binder">k</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.key"><span·class="id"·title="definition">key</span></a>)·(<a·id="x:36"·class="idref"·href="#x:36"><span·class="id"·title="binder">x</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>)·(<a·id="s:37"·class="idref"·href="#s:37"><span·class="id"·title="binder">s</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>)·{<span·class="id"·title="keyword">struct</span>·<span·class="id"·title="var">s</span>}·:·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>·:=<br/> | 190 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Raw.add"·class="idref"·href="#Raw.add"><span·class="id"·title="definition">add</span></a>·(<a·id="k:35"·class="idref"·href="#k:35"><span·class="id"·title="binder">k</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.key"><span·class="id"·title="definition">key</span></a>)·(<a·id="x:36"·class="idref"·href="#x:36"><span·class="id"·title="binder">x</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>)·(<a·id="s:37"·class="idref"·href="#s:37"><span·class="id"·title="binder">s</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>)·{<span·class="id"·title="keyword">struct</span>·<span·class="id"·title="var">s</span>}·:·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>·:=<br/> |
191 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#s:37"><span·class="id"·title="variable">s</span></a>·<span·class="id"·title="keyword">with</span><br/> | 191 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#s:37"><span·class="id"·title="variable">s</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 225, 15 lines modified | Offset 225, 15 lines modified | ||
225 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Raw.add_not_eq"·class="idref"·href="#Raw.add_not_eq"><span·class="id"·title="lemma">add_not_eq</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="m:68"·class="idref"·href="#m:68"><span·class="id"·title="binder">m</span></a>·(<a·id="Hm:69"·class="idref"·href="#Hm:69"><span·class="id"·title="binder">Hm</span></a>:<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.NoDupA"><span·class="id"·title="abbreviation">NoDupA</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#m:68"><span·class="id"·title="variable">m</span></a>)·<a·id="x:70"·class="idref"·href="#x:70"><span·class="id"·title="binder">x</span></a>·<a·id="a:71"·class="idref"·href="#a:71"><span·class="id"·title="binder">a</span></a>·<a·id="e:72"·class="idref"·href="#e:72"><span·class="id"·title="binder">e</span></a>,<br/> | 225 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Raw.add_not_eq"·class="idref"·href="#Raw.add_not_eq"><span·class="id"·title="lemma">add_not_eq</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="m:68"·class="idref"·href="#m:68"><span·class="id"·title="binder">m</span></a>·(<a·id="Hm:69"·class="idref"·href="#Hm:69"><span·class="id"·title="binder">Hm</span></a>:<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.NoDupA"><span·class="id"·title="abbreviation">NoDupA</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#m:68"><span·class="id"·title="variable">m</span></a>)·<a·id="x:70"·class="idref"·href="#x:70"><span·class="id"·title="binder">x</span></a>·<a·id="a:71"·class="idref"·href="#a:71"><span·class="id"·title="binder">a</span></a>·<a·id="e:72"·class="idref"·href="#e:72"><span·class="id"·title="binder">e</span></a>,<br/> |
226 | <a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~</span></a><a·class="idref"·href="Coq.FSets.FMapWeakList.html#X.eq"><span·class="id"·title="axiom">X.eq</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#x:70"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#a:71"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.find"><span·class="id"·title="definition">find</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#x:70"><span·class="id"·title="variable">x</span></a>·(<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.add"><span·class="id"·title="definition">add</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#a:71"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#e:72"><span·class="id"·title="variable">e</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#m:68"><span·class="id"·title="variable">m</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.find"><span·class="id"·title="definition">find</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#x:70"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#m:68"><span·class="id"·title="variable">m</span></a>.<br/> | 226 | <a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~</span></a><a·class="idref"·href="Coq.FSets.FMapWeakList.html#X.eq"><span·class="id"·title="axiom">X.eq</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#x:70"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#a:71"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.find"><span·class="id"·title="definition">find</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#x:70"><span·class="id"·title="variable">x</span></a>·(<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.add"><span·class="id"·title="definition">add</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#a:71"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#e:72"><span·class="id"·title="variable">e</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#m:68"><span·class="id"·title="variable">m</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.find"><span·class="id"·title="definition">find</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#x:70"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#m:68"><span·class="id"·title="variable">m</span></a>.<br/> |
227 | <br/> | 227 | <br/> |
228 | </div> | 228 | </div> |
229 | <div·class="doc"> | 229 | <div·class="doc"> |
230 | <a·id="lab | 230 | <a·id="lab984"></a><h1·class="section"><span·class="inlinecode"><span·class="id"·title="var">remove</span></span></h1> |
231 | </div> | 231 | </div> |
232 | <div·class="code"> | 232 | <div·class="code"> |
233 | <br/> | 233 | <br/> |
234 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Raw.remove"·class="idref"·href="#Raw.remove"><span·class="id"·title="definition">remove</span></a>·(<a·id="k:73"·class="idref"·href="#k:73"><span·class="id"·title="binder">k</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.key"><span·class="id"·title="definition">key</span></a>)·(<a·id="s:74"·class="idref"·href="#s:74"><span·class="id"·title="binder">s</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>)·{<span·class="id"·title="keyword">struct</span>·<span·class="id"·title="var">s</span>}·:·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>·:=<br/> | 234 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Raw.remove"·class="idref"·href="#Raw.remove"><span·class="id"·title="definition">remove</span></a>·(<a·id="k:73"·class="idref"·href="#k:73"><span·class="id"·title="binder">k</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.key"><span·class="id"·title="definition">key</span></a>)·(<a·id="s:74"·class="idref"·href="#s:74"><span·class="id"·title="binder">s</span></a>·:·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>)·{<span·class="id"·title="keyword">struct</span>·<span·class="id"·title="var">s</span>}·:·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>·:=<br/> |
235 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#s:74"><span·class="id"·title="variable">s</span></a>·<span·class="id"·title="keyword">with</span><br/> | 235 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#s:74"><span·class="id"·title="variable">s</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 259, 15 lines modified | Offset 259, 15 lines modified | ||
259 | <br/> | 259 | <br/> |
260 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Raw.remove_NoDup"·class="idref"·href="#Raw.remove_NoDup"><span·class="id"·title="lemma">remove_NoDup</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="m:96"·class="idref"·href="#m:96"><span·class="id"·title="binder">m</span></a>·(<a·id="Hm:97"·class="idref"·href="#Hm:97"><span·class="id"·title="binder">Hm</span></a>:<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.NoDupA"><span·class="id"·title="abbreviation">NoDupA</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#m:96"><span·class="id"·title="variable">m</span></a>)·<a·id="x:98"·class="idref"·href="#x:98"><span·class="id"·title="binder">x</span></a>,·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.NoDupA"><span·class="id"·title="abbreviation">NoDupA</span></a>·(<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.remove"><span·class="id"·title="definition">remove</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#x:98"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#m:96"><span·class="id"·title="variable">m</span></a>).<br/> | 260 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Raw.remove_NoDup"·class="idref"·href="#Raw.remove_NoDup"><span·class="id"·title="lemma">remove_NoDup</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="m:96"·class="idref"·href="#m:96"><span·class="id"·title="binder">m</span></a>·(<a·id="Hm:97"·class="idref"·href="#Hm:97"><span·class="id"·title="binder">Hm</span></a>:<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.NoDupA"><span·class="id"·title="abbreviation">NoDupA</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#m:96"><span·class="id"·title="variable">m</span></a>)·<a·id="x:98"·class="idref"·href="#x:98"><span·class="id"·title="binder">x</span></a>,·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.NoDupA"><span·class="id"·title="abbreviation">NoDupA</span></a>·(<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.remove"><span·class="id"·title="definition">remove</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#x:98"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#m:96"><span·class="id"·title="variable">m</span></a>).<br/> |
261 | <br/> | 261 | <br/> |
262 | </div> | 262 | </div> |
263 | <div·class="doc"> | 263 | <div·class="doc"> |
264 | <a·id="lab | 264 | <a·id="lab985"></a><h1·class="section"><span·class="inlinecode"><span·class="id"·title="var">elements</span></span></h1> |
265 | </div> | 265 | </div> |
266 | <div·class="code"> | 266 | <div·class="code"> |
267 | <br/> | 267 | <br/> |
268 | <span·class="id"·title="keyword">Definition</span>·<a·id="Raw.elements"·class="idref"·href="#Raw.elements"><span·class="id"·title="definition">elements</span></a>·(<a·id="m:99"·class="idref"·href="#m:99"><span·class="id"·title="binder">m</span></a>:·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>)·:=·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#m:99"><span·class="id"·title="variable">m</span></a>.<br/> | 268 | <span·class="id"·title="keyword">Definition</span>·<a·id="Raw.elements"·class="idref"·href="#Raw.elements"><span·class="id"·title="definition">elements</span></a>·(<a·id="m:99"·class="idref"·href="#m:99"><span·class="id"·title="binder">m</span></a>:·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.t"><span·class="id"·title="definition">t</span></a>·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#Raw.Elt.elt"><span·class="id"·title="variable">elt</span></a>)·:=·<a·class="idref"·href="Coq.FSets.FMapWeakList.html#m:99"><span·class="id"·title="variable">m</span></a>.<br/> |
Max diff block lines reached; 11099/30619 bytes (36.25%) of diff not shown. |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1003"></a><h1·class="section">FSetAVL·:·Implementation·of·FSetInterface·via·AVL·trees</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·This·module·implements·finite·sets·using·AVL·trees. | 51 | ·This·module·implements·finite·sets·using·AVL·trees. |
52 | ····It·follows·the·implementation·from·Ocaml's·standard·library, | 52 | ····It·follows·the·implementation·from·Ocaml's·standard·library, |
53 | <div·class="paragraph">·</div> | 53 | <div·class="paragraph">·</div> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1116"></a><h1·class="section">Finite·sets·library</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·This·module·implements·bridges·(as·functors)·from·dependent | 51 | ·This·module·implements·bridges·(as·functors)·from·dependent |
52 | ····to/from·non-dependent·set·signature.· | 52 | ····to/from·non-dependent·set·signature.· |
53 | </div> | 53 | </div> |
54 | <div·class="code"> | 54 | <div·class="code"> |
Offset 62, 15 lines modified | Offset 62, 15 lines modified | ||
62 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.FSets.FSetInterface.html#"><span·class="id"·title="library">FSetInterface</span></a>.<br/> | 62 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.FSets.FSetInterface.html#"><span·class="id"·title="library">FSetInterface</span></a>.<br/> |
63 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> | 63 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> |
64 | <br/> | 64 | <br/> |
65 | </div> | 65 | </div> |
66 | <div·class="doc"> | 66 | <div·class="doc"> |
67 | <a·id="lab | 67 | <a·id="lab1117"></a><h1·class="section">From·non-dependent·signature·<span·class="inlinecode"><span·class="id"·title="var">S</span></span>·to·dependent·signature·<span·class="inlinecode"><span·class="id"·title="var">Sdep</span></span>.</h1> |
68 | </div> | 68 | </div> |
69 | <div·class="code"> | 69 | <div·class="code"> |
70 | <br/> | 70 | <br/> |
71 | <span·class="id"·title="keyword">Module</span>·<a·id="DepOfNodep"·class="idref"·href="#DepOfNodep"><span·class="id"·title="module">DepOfNodep</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">M</span>:·<a·class="idref"·href="Coq.FSets.FSetInterface.html#S"><span·class="id"·title="module">S</span></a>)·<:·<a·class="idref"·href="Coq.FSets.FSetInterface.html#Sdep"><span·class="id"·title="module">Sdep</span></a>·<span·class="id"·title="keyword">with</span>·<span·class="id"·title="keyword">Module</span>·<span·class="id"·title="var">E</span>·:=·<a·class="idref"·href="Coq.FSets.FSetBridge.html#M.E"><span·class="id"·title="module">M.E</span></a>.<br/> | 71 | <span·class="id"·title="keyword">Module</span>·<a·id="DepOfNodep"·class="idref"·href="#DepOfNodep"><span·class="id"·title="module">DepOfNodep</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">M</span>:·<a·class="idref"·href="Coq.FSets.FSetInterface.html#S"><span·class="id"·title="module">S</span></a>)·<:·<a·class="idref"·href="Coq.FSets.FSetInterface.html#Sdep"><span·class="id"·title="module">Sdep</span></a>·<span·class="id"·title="keyword">with</span>·<span·class="id"·title="keyword">Module</span>·<span·class="id"·title="var">E</span>·:=·<a·class="idref"·href="Coq.FSets.FSetBridge.html#M.E"><span·class="id"·title="module">M.E</span></a>.<br/> |
72 | <span·class="id"·title="keyword">Local·Ltac</span>·<span·class="id"·title="var">Tauto.intuition_solver</span>·::=·<span·class="id"·title="tactic">auto</span>·<span·class="id"·title="keyword">with</span>·<span·class="id"·title="var">bool</span>·<span·class="id"·title="tactic">set</span>.<br/> | 72 | <span·class="id"·title="keyword">Local·Ltac</span>·<span·class="id"·title="var">Tauto.intuition_solver</span>·::=·<span·class="id"·title="tactic">auto</span>·<span·class="id"·title="keyword">with</span>·<span·class="id"·title="var">bool</span>·<span·class="id"·title="tactic">set</span>.<br/> |
Offset 240, 15 lines modified | Offset 240, 15 lines modified | ||
240 | <br/> | 240 | <br/> |
241 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FSetBridge.html#DepOfNodep"><span·class="id"·title="module">DepOfNodep</span></a>.<br/> | 241 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FSetBridge.html#DepOfNodep"><span·class="id"·title="module">DepOfNodep</span></a>.<br/> |
242 | <br/> | 242 | <br/> |
243 | </div> | 243 | </div> |
244 | <div·class="doc"> | 244 | <div·class="doc"> |
245 | <a·id="lab | 245 | <a·id="lab1118"></a><h1·class="section">From·dependent·signature·<span·class="inlinecode"><span·class="id"·title="var">Sdep</span></span>·to·non-dependent·signature·<span·class="inlinecode"><span·class="id"·title="var">S</span></span>.</h1> |
246 | </div> | 246 | </div> |
247 | <div·class="code"> | 247 | <div·class="code"> |
248 | <br/> | 248 | <br/> |
249 | <span·class="id"·title="keyword">Module</span>·<a·id="NodepOfDep"·class="idref"·href="#NodepOfDep"><span·class="id"·title="module">NodepOfDep</span></a>·(<span·class="id"·title="var">M</span>:·<a·class="idref"·href="Coq.FSets.FSetInterface.html#Sdep"><span·class="id"·title="module">Sdep</span></a>)·<:·<a·class="idref"·href="Coq.FSets.FSetInterface.html#S"><span·class="id"·title="module">S</span></a>·<span·class="id"·title="keyword">with</span>·<span·class="id"·title="keyword">Module</span>·<span·class="id"·title="var">E</span>·:=·<a·class="idref"·href="Coq.FSets.FSetBridge.html#M.E"><span·class="id"·title="module">M.E</span></a>.<br/> | 249 | <span·class="id"·title="keyword">Module</span>·<a·id="NodepOfDep"·class="idref"·href="#NodepOfDep"><span·class="id"·title="module">NodepOfDep</span></a>·(<span·class="id"·title="var">M</span>:·<a·class="idref"·href="Coq.FSets.FSetInterface.html#Sdep"><span·class="id"·title="module">Sdep</span></a>)·<:·<a·class="idref"·href="Coq.FSets.FSetInterface.html#S"><span·class="id"·title="module">S</span></a>·<span·class="id"·title="keyword">with</span>·<span·class="id"·title="keyword">Module</span>·<span·class="id"·title="var">E</span>·:=·<a·class="idref"·href="Coq.FSets.FSetBridge.html#M.E"><span·class="id"·title="module">M.E</span></a>.<br/> |
250 | <span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.FSets.FSetBridge.html#M"><span·class="id"·title="module">M</span></a>.<br/> | 250 | <span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.FSets.FSetBridge.html#M"><span·class="id"·title="module">M</span></a>.<br/> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1109"></a><h1·class="section">Compatibility·functors·between·FSetInterface·and·MSetInterface.</h1> |
50 | </div> | 50 | </div> |
51 | <div·class="code"> | 51 | <div·class="code"> |
52 | <br/> | 52 | <br/> |
53 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.FSets.FSetInterface.html#"><span·class="id"·title="library">FSetInterface</span></a>·<a·class="idref"·href="Coq.FSets.FSetFacts.html#"><span·class="id"·title="library">FSetFacts</span></a>·<a·class="idref"·href="Coq.MSets.MSetInterface.html#"><span·class="id"·title="library">MSetInterface</span></a>·<a·class="idref"·href="Coq.MSets.MSetFacts.html#"><span·class="id"·title="library">MSetFacts</span></a>.<br/> | 53 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.FSets.FSetInterface.html#"><span·class="id"·title="library">FSetInterface</span></a>·<a·class="idref"·href="Coq.FSets.FSetFacts.html#"><span·class="id"·title="library">FSetFacts</span></a>·<a·class="idref"·href="Coq.MSets.MSetInterface.html#"><span·class="id"·title="library">MSetInterface</span></a>·<a·class="idref"·href="Coq.MSets.MSetFacts.html#"><span·class="id"·title="library">MSetFacts</span></a>.<br/> |
54 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> | 54 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> |
Offset 61, 15 lines modified | Offset 61, 15 lines modified | ||
61 | <br/> | 61 | <br/> |
62 | <span·class="id"·title="keyword">Local·Ltac</span>·<span·class="id"·title="var">Tauto.intuition_solver</span>·::=·<span·class="id"·title="tactic">auto</span>·<span·class="id"·title="keyword">with</span>·<span·class="id"·title="var">relations</span>.<br/> | 62 | <span·class="id"·title="keyword">Local·Ltac</span>·<span·class="id"·title="var">Tauto.intuition_solver</span>·::=·<span·class="id"·title="tactic">auto</span>·<span·class="id"·title="keyword">with</span>·<span·class="id"·title="var">relations</span>.<br/> |
63 | <br/> | 63 | <br/> |
64 | </div> | 64 | </div> |
65 | <div·class="doc"> | 65 | <div·class="doc"> |
66 | <a·id="lab | 66 | <a·id="lab1110"></a><h1·class="section">From·new·Weak·Sets·to·old·ones</h1> |
67 | </div> | 67 | </div> |
68 | <div·class="code"> | 68 | <div·class="code"> |
69 | <br/> | 69 | <br/> |
70 | <span·class="id"·title="keyword">Module</span>·<a·id="Backport_WSets"·class="idref"·href="#Backport_WSets"><span·class="id"·title="module">Backport_WSets</span></a><br/> | 70 | <span·class="id"·title="keyword">Module</span>·<a·id="Backport_WSets"·class="idref"·href="#Backport_WSets"><span·class="id"·title="module">Backport_WSets</span></a><br/> |
71 | (<span·class="id"·title="var">E</span>:<a·class="idref"·href="Coq.Structures.DecidableType.html#DecidableType"><span·class="id"·title="module">DecidableType.DecidableType</span></a>)<br/> | 71 | (<span·class="id"·title="var">E</span>:<a·class="idref"·href="Coq.Structures.DecidableType.html#DecidableType"><span·class="id"·title="module">DecidableType.DecidableType</span></a>)<br/> |
Offset 224, 15 lines modified | Offset 224, 15 lines modified | ||
224 | <br/> | 224 | <br/> |
225 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FSetCompat.html#Backport_WSets"><span·class="id"·title="module">Backport_WSets</span></a>.<br/> | 225 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FSetCompat.html#Backport_WSets"><span·class="id"·title="module">Backport_WSets</span></a>.<br/> |
226 | <br/> | 226 | <br/> |
227 | </div> | 227 | </div> |
228 | <div·class="doc"> | 228 | <div·class="doc"> |
229 | <a·id="lab | 229 | <a·id="lab1111"></a><h1·class="section">From·new·Sets·to·new·ones</h1> |
230 | </div> | 230 | </div> |
231 | <div·class="code"> | 231 | <div·class="code"> |
232 | <br/> | 232 | <br/> |
233 | <span·class="id"·title="keyword">Module</span>·<a·id="Backport_Sets"·class="idref"·href="#Backport_Sets"><span·class="id"·title="module">Backport_Sets</span></a><br/> | 233 | <span·class="id"·title="keyword">Module</span>·<a·id="Backport_Sets"·class="idref"·href="#Backport_Sets"><span·class="id"·title="module">Backport_Sets</span></a><br/> |
234 | (<span·class="id"·title="var">O</span>:<a·class="idref"·href="Coq.Structures.OrderedType.html#OrderedType"><span·class="id"·title="module">OrderedType.OrderedType</span></a>)<br/> | 234 | (<span·class="id"·title="var">O</span>:<a·class="idref"·href="Coq.Structures.OrderedType.html#OrderedType"><span·class="id"·title="module">OrderedType.OrderedType</span></a>)<br/> |
Offset 282, 15 lines modified | Offset 282, 15 lines modified | ||
282 | <br/> | 282 | <br/> |
283 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FSetCompat.html#Backport_Sets"><span·class="id"·title="module">Backport_Sets</span></a>.<br/> | 283 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FSetCompat.html#Backport_Sets"><span·class="id"·title="module">Backport_Sets</span></a>.<br/> |
284 | <br/> | 284 | <br/> |
285 | </div> | 285 | </div> |
286 | <div·class="doc"> | 286 | <div·class="doc"> |
287 | <a·id="lab | 287 | <a·id="lab1112"></a><h1·class="section">From·old·Weak·Sets·to·new·ones.</h1> |
288 | </div> | 288 | </div> |
289 | <div·class="code"> | 289 | <div·class="code"> |
290 | <br/> | 290 | <br/> |
291 | <span·class="id"·title="keyword">Module</span>·<a·id="Update_WSets"·class="idref"·href="#Update_WSets"><span·class="id"·title="module">Update_WSets</span></a><br/> | 291 | <span·class="id"·title="keyword">Module</span>·<a·id="Update_WSets"·class="idref"·href="#Update_WSets"><span·class="id"·title="module">Update_WSets</span></a><br/> |
292 | (<span·class="id"·title="var">E</span>:<a·class="idref"·href="Coq.Structures.Equalities.html#DecidableType"><span·class="id"·title="module">Equalities.DecidableType</span></a>)<br/> | 292 | (<span·class="id"·title="var">E</span>:<a·class="idref"·href="Coq.Structures.Equalities.html#DecidableType"><span·class="id"·title="module">Equalities.DecidableType</span></a>)<br/> |
Offset 425, 15 lines modified | Offset 425, 15 lines modified | ||
425 | <br/> | 425 | <br/> |
426 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FSetCompat.html#Update_WSets"><span·class="id"·title="module">Update_WSets</span></a>.<br/> | 426 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FSetCompat.html#Update_WSets"><span·class="id"·title="module">Update_WSets</span></a>.<br/> |
427 | <br/> | 427 | <br/> |
428 | </div> | 428 | </div> |
429 | <div·class="doc"> | 429 | <div·class="doc"> |
430 | <a·id="lab | 430 | <a·id="lab1113"></a><h1·class="section">From·old·Sets·to·new·ones.</h1> |
431 | </div> | 431 | </div> |
432 | <div·class="code"> | 432 | <div·class="code"> |
433 | <br/> | 433 | <br/> |
434 | <span·class="id"·title="keyword">Module</span>·<a·id="Update_Sets"·class="idref"·href="#Update_Sets"><span·class="id"·title="module">Update_Sets</span></a><br/> | 434 | <span·class="id"·title="keyword">Module</span>·<a·id="Update_Sets"·class="idref"·href="#Update_Sets"><span·class="id"·title="module">Update_Sets</span></a><br/> |
435 | (<span·class="id"·title="var">O</span>:<a·class="idref"·href="Coq.Structures.Orders.html#OrderedType"><span·class="id"·title="module">Orders.OrderedType</span></a>)<br/> | 435 | (<span·class="id"·title="var">O</span>:<a·class="idref"·href="Coq.Structures.Orders.html#OrderedType"><span·class="id"·title="module">Orders.OrderedType</span></a>)<br/> |
Offset 71, 15 lines modified | Offset 71, 15 lines modified | ||
71 | <span·class="id"·title="keyword">Module</span>·<a·id="WDecide_fun"·class="idref"·href="#WDecide_fun"><span·class="id"·title="module">WDecide_fun</span></a>·(<span·class="id"·title="var">E</span>·:·<a·class="idref"·href="Coq.Structures.DecidableType.html#DecidableType"><span·class="id"·title="module">DecidableType</span></a>)(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">M</span>·:·<a·class="idref"·href="Coq.FSets.FSetInterface.html#WSfun"><span·class="id"·title="module">WSfun</span></a>·<a·class="idref"·href="Coq.FSets.FSetDecide.html#E"><span·class="id"·title="module">E</span></a>).<br/> | 71 | <span·class="id"·title="keyword">Module</span>·<a·id="WDecide_fun"·class="idref"·href="#WDecide_fun"><span·class="id"·title="module">WDecide_fun</span></a>·(<span·class="id"·title="var">E</span>·:·<a·class="idref"·href="Coq.Structures.DecidableType.html#DecidableType"><span·class="id"·title="module">DecidableType</span></a>)(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">M</span>·:·<a·class="idref"·href="Coq.FSets.FSetInterface.html#WSfun"><span·class="id"·title="module">WSfun</span></a>·<a·class="idref"·href="Coq.FSets.FSetDecide.html#E"><span·class="id"·title="module">E</span></a>).<br/> |
72 | <span·class="id"·title="keyword">Module</span>·<a·id="WDecide_fun.F"·class="idref"·href="#WDecide_fun.F"><span·class="id"·title="module">F</span></a>·:=·<a·class="idref"·href="Coq.FSets.FSetFacts.html#WFacts_fun"><span·class="id"·title="module">FSetFacts.WFacts_fun</span></a>·<a·class="idref"·href="Coq.FSets.FSetDecide.html#E"><span·class="id"·title="module">E</span></a>·<a·class="idref"·href="Coq.FSets.FSetDecide.html#M"><span·class="id"·title="module">M</span></a>.<br/> | 72 | <span·class="id"·title="keyword">Module</span>·<a·id="WDecide_fun.F"·class="idref"·href="#WDecide_fun.F"><span·class="id"·title="module">F</span></a>·:=·<a·class="idref"·href="Coq.FSets.FSetFacts.html#WFacts_fun"><span·class="id"·title="module">FSetFacts.WFacts_fun</span></a>·<a·class="idref"·href="Coq.FSets.FSetDecide.html#E"><span·class="id"·title="module">E</span></a>·<a·class="idref"·href="Coq.FSets.FSetDecide.html#M"><span·class="id"·title="module">M</span></a>.<br/> |
73 | <br/> | 73 | <br/> |
74 | </div> | 74 | </div> |
75 | <div·class="doc"> | 75 | <div·class="doc"> |
76 | <a·id="lab | 76 | <a·id="lab1009"></a><h1·class="section">Overview</h1> |
77 | ····This·functor·defines·the·tactic·<span·class="inlinecode"><span·class="id"·title="var">fsetdec</span></span>,·which·will | 77 | ····This·functor·defines·the·tactic·<span·class="inlinecode"><span·class="id"·title="var">fsetdec</span></span>,·which·will |
78 | ····solve·any·valid·goal·of·the·form | 78 | ····solve·any·valid·goal·of·the·form |
79 | <pre> | 79 | <pre> |
80 | ····forall·s1·...·sn, | 80 | ····forall·s1·...·sn, |
81 | ····forall·x1·...·xm, | 81 | ····forall·x1·...·xm, |
82 | ····P1·->·...·->·Pk·->·P | 82 | ····P1·->·...·->·Pk·->·P |
Offset 177, 41 lines modified | Offset 177, 41 lines modified | ||
177 | </pre> | 177 | </pre> |
178 | </li> | 178 | </li> |
179 | </ul> | 179 | </ul> |
180 | <div·class="paragraph">·</div> | 180 | <div·class="paragraph">·</div> |
181 | <a·id="lab | 181 | <a·id="lab1010"></a><h1·class="section">Facts·and·Tactics·for·Propositional·Logic</h1> |
182 | ······These·lemmas·and·tactics·are·in·a·module·so·that·they·do | 182 | ······These·lemmas·and·tactics·are·in·a·module·so·that·they·do |
183 | ······not·affect·the·namespace·if·you·import·the·enclosing | 183 | ······not·affect·the·namespace·if·you·import·the·enclosing |
184 | ······module·<span·class="inlinecode"><span·class="id"·title="var">Decide</span></span>.· | 184 | ······module·<span·class="inlinecode"><span·class="id"·title="var">Decide</span></span>.· |
185 | </div> | 185 | </div> |
186 | <div·class="code"> | 186 | <div·class="code"> |
187 | <span·class="id"·title="keyword">Module</span>·<a·id="WDecide_fun.FSetLogicalFacts"·class="idref"·href="#WDecide_fun.FSetLogicalFacts"><span·class="id"·title="module">FSetLogicalFacts</span></a>.<br/> | 187 | <span·class="id"·title="keyword">Module</span>·<a·id="WDecide_fun.FSetLogicalFacts"·class="idref"·href="#WDecide_fun.FSetLogicalFacts"><span·class="id"·title="module">FSetLogicalFacts</span></a>.<br/> |
188 | <span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.Logic.Decidable.html#"><span·class="id"·title="module">Decidable</span></a>.<br/> | 188 | <span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.Logic.Decidable.html#"><span·class="id"·title="module">Decidable</span></a>.<br/> |
189 | <span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.Setoids.Setoid.html#"><span·class="id"·title="module">Setoid</span></a>.<br/> | 189 | <span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.Setoids.Setoid.html#"><span·class="id"·title="module">Setoid</span></a>.<br/> |
190 | <br/> | 190 | <br/> |
191 | </div> | 191 | </div> |
192 | <div·class="doc"> | 192 | <div·class="doc"> |
193 | <a·id="lab | 193 | <a·id="lab1011"></a><h2·class="section">Lemmas·and·Tactics·About·Decidable·Propositions</h2> |
194 | <div·class="paragraph">·</div> | 194 | <div·class="paragraph">·</div> |
195 | <a·id="lab | 195 | <a·id="lab1012"></a><h2·class="section">Propositional·Equivalences·Involving·Negation</h2> |
196 | ········These·are·all·written·with·the·unfolded·form·of | 196 | ········These·are·all·written·with·the·unfolded·form·of |
197 | ········negation,·since·I·am·not·sure·if·setoid·rewriting·will | 197 | ········negation,·since·I·am·not·sure·if·setoid·rewriting·will |
198 | ········always·perform·conversion.· | 198 | ········always·perform·conversion.· |
199 | <div·class="paragraph">·</div> | 199 | <div·class="paragraph">·</div> |
200 | <a·id="lab | 200 | <a·id="lab1013"></a><h2·class="section">Tactics·for·Negations</h2> |
201 | </div> | 201 | </div> |
202 | <div·class="code"> | 202 | <div·class="code"> |
203 | <br/> | 203 | <br/> |
204 | <span·class="id"·title="keyword">Tactic·Notation</span>·"fold"·"any"·"not"·:=<br/> | 204 | <span·class="id"·title="keyword">Tactic·Notation</span>·"fold"·"any"·"not"·:=<br/> |
205 | <span·class="id"·title="tactic">repeat</span>·(<br/> | 205 | <span·class="id"·title="tactic">repeat</span>·(<br/> |
Offset 454, 28 lines modified | Offset 454, 28 lines modified | ||
454 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FSetDecide.html#WDecide_fun.FSetLogicalFacts"><span·class="id"·title="module">FSetLogicalFacts</span></a>.<br/> | 454 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FSetDecide.html#WDecide_fun.FSetLogicalFacts"><span·class="id"·title="module">FSetLogicalFacts</span></a>.<br/> |
455 | <span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.FSets.FSetDecide.html#WDecide_fun.FSetLogicalFacts"><span·class="id"·title="module">FSetLogicalFacts</span></a>.<br/> | 455 | <span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.FSets.FSetDecide.html#WDecide_fun.FSetLogicalFacts"><span·class="id"·title="module">FSetLogicalFacts</span></a>.<br/> |
456 | <br/> | 456 | <br/> |
457 | </div> | 457 | </div> |
458 | <div·class="doc"> | 458 | <div·class="doc"> |
459 | <a·id="lab | 459 | <a·id="lab1014"></a><h1·class="section">Auxiliary·Tactics</h1> |
460 | ······Again,·these·lemmas·and·tactics·are·in·a·module·so·that | 460 | ······Again,·these·lemmas·and·tactics·are·in·a·module·so·that |
461 | ······they·do·not·affect·the·namespace·if·you·import·the | 461 | ······they·do·not·affect·the·namespace·if·you·import·the |
462 | ······enclosing·module·<span·class="inlinecode"><span·class="id"·title="var">Decide</span></span>.·· | 462 | ······enclosing·module·<span·class="inlinecode"><span·class="id"·title="var">Decide</span></span>.·· |
463 | </div> | 463 | </div> |
464 | <div·class="code"> | 464 | <div·class="code"> |
465 | <span·class="id"·title="keyword">Module</span>·<a·id="WDecide_fun.FSetDecideAuxiliary"·class="idref"·href="#WDecide_fun.FSetDecideAuxiliary"><span·class="id"·title="module">FSetDecideAuxiliary</span></a>.<br/> | 465 | <span·class="id"·title="keyword">Module</span>·<a·id="WDecide_fun.FSetDecideAuxiliary"·class="idref"·href="#WDecide_fun.FSetDecideAuxiliary"><span·class="id"·title="module">FSetDecideAuxiliary</span></a>.<br/> |
466 | <br/> | 466 | <br/> |
467 | </div> | 467 | </div> |
468 | <div·class="doc"> | 468 | <div·class="doc"> |
469 | <a·id="lab | 469 | <a·id="lab1015"></a><h2·class="section">Generic·Tactics</h2> |
470 | ········We·begin·by·defining·a·few·generic,·useful·tactics.· | 470 | ········We·begin·by·defining·a·few·generic,·useful·tactics.· |
471 | <div·class="paragraph">·</div> | 471 | <div·class="paragraph">·</div> |
472 | ·remove·logical·hypothesis·inter-dependencies·(fix·2136).· | 472 | ·remove·logical·hypothesis·inter-dependencies·(fix·2136).· |
473 | </div> | 473 | </div> |
474 | <div·class="code"> | 474 | <div·class="code"> |
Offset 584, 15 lines modified | Offset 584, 15 lines modified | ||
584 | |·<span·class="id"·title="var">H</span>:·<span·class="id"·title="var">_</span>·|-·<span·class="id"·title="var">_</span>·=>·<span·class="id"·title="tactic">progress</span>·(<span·class="id"·title="var">decompose</span>·<span·class="id"·title="var">record</span>·<span·class="id"·title="var">H</span>);·<span·class="id"·title="tactic">clear</span>·<span·class="id"·title="var">H</span><br/> | 584 | |·<span·class="id"·title="var">H</span>:·<span·class="id"·title="var">_</span>·|-·<span·class="id"·title="var">_</span>·=>·<span·class="id"·title="tactic">progress</span>·(<span·class="id"·title="var">decompose</span>·<span·class="id"·title="var">record</span>·<span·class="id"·title="var">H</span>);·<span·class="id"·title="tactic">clear</span>·<span·class="id"·title="var">H</span><br/> |
585 | <span·class="id"·title="keyword">end</span>).<br/> | 585 | <span·class="id"·title="keyword">end</span>).<br/> |
586 | <br/> | 586 | <br/> |
587 | </div> | 587 | </div> |
588 | <div·class="doc"> | 588 | <div·class="doc"> |
589 | <a·id="lab | 589 | <a·id="lab1016"></a><h2·class="section">Discarding·Irrelevant·Hypotheses</h2> |
590 | ········We·will·want·to·clear·the·context·of·any | 590 | ········We·will·want·to·clear·the·context·of·any |
591 | ········non-FSet-related·hypotheses·in·order·to·increase·the | 591 | ········non-FSet-related·hypotheses·in·order·to·increase·the |
592 | ········speed·of·the·tactic.··To·do·this,·we·will·need·to·be | 592 | ········speed·of·the·tactic.··To·do·this,·we·will·need·to·be |
593 | ········able·to·decide·which·are·relevant.··We·do·this·by·making | 593 | ········able·to·decide·which·are·relevant.··We·do·this·by·making |
594 | ········a·simple·inductive·definition·classifying·the | 594 | ········a·simple·inductive·definition·classifying·the |
595 | ········propositions·of·interest.· | 595 | ········propositions·of·interest.· |
Offset 664, 15 lines modified | Offset 664, 15 lines modified | ||
664 | <span·class="id"·title="keyword">else</span>·<span·class="id"·title="tactic">clear</span>·<span·class="id"·title="var">H</span><br/> | 664 | <span·class="id"·title="keyword">else</span>·<span·class="id"·title="tactic">clear</span>·<span·class="id"·title="var">H</span><br/> |
665 | <span·class="id"·title="keyword">end</span>).<br/> | 665 | <span·class="id"·title="keyword">end</span>).<br/> |
666 | <br/> | 666 | <br/> |
667 | </div> | 667 | </div> |
668 | <div·class="doc"> | 668 | <div·class="doc"> |
669 | <a·id="lab | 669 | <a·id="lab1017"></a><h2·class="section">Turning·Set·Operators·into·Propositional·Connectives</h2> |
670 | ········The·lemmas·from·<span·class="inlinecode"><span·class="id"·title="var">FSetFacts</span></span>·will·be·used·to·break·down | 670 | ········The·lemmas·from·<span·class="inlinecode"><span·class="id"·title="var">FSetFacts</span></span>·will·be·used·to·break·down |
671 | ········set·operations·into·propositional·formulas·built·over | 671 | ········set·operations·into·propositional·formulas·built·over |
672 | ········the·predicates·<span·class="inlinecode"><span·class="id"·title="var">In</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">E.eq</span></span>·applied·only·to | 672 | ········the·predicates·<span·class="inlinecode"><span·class="id"·title="var">In</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">E.eq</span></span>·applied·only·to |
673 | ········variables.··We·are·going·to·use·them·with·<span·class="inlinecode"><span·class="id"·title="tactic">autorewrite</span></span>. | 673 | ········variables.··We·are·going·to·use·them·with·<span·class="inlinecode"><span·class="id"·title="tactic">autorewrite</span></span>. |
674 | ········ | 674 | ········ |
675 | </div> | 675 | </div> |
Offset 690, 15 lines modified | Offset 690, 15 lines modified | ||
690 | <br/> | 690 | <br/> |
691 | <span·class="id"·title="keyword">Global·Hint·Rewrite</span>·<a·class="idref"·href="Coq.FSets.FSetDecide.html#WDecide_fun.FSetDecideAuxiliary.eq_refl_iff"><span·class="id"·title="lemma">eq_refl_iff</span></a>·:·<span·class="id"·title="var">set_eq_simpl</span>.<br/> | 691 | <span·class="id"·title="keyword">Global·Hint·Rewrite</span>·<a·class="idref"·href="Coq.FSets.FSetDecide.html#WDecide_fun.FSetDecideAuxiliary.eq_refl_iff"><span·class="id"·title="lemma">eq_refl_iff</span></a>·:·<span·class="id"·title="var">set_eq_simpl</span>.<br/> |
692 | <br/> | 692 | <br/> |
693 | </div> | 693 | </div> |
694 | <div·class="doc"> | 694 | <div·class="doc"> |
695 | <a·id="lab | 695 | <a·id="lab1018"></a><h2·class="section">Decidability·of·FSet·Propositions</h2> |
Max diff block lines reached; 7282/15010 bytes (48.51%) of diff not shown. |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1004"></a><h1·class="section">Finite·sets·library</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·This·module·proves·many·properties·of·finite·sets·that | 51 | ·This·module·proves·many·properties·of·finite·sets·that |
52 | ····are·consequences·of·the·axiomatization·in·<span·class="inlinecode"><span·class="id"·title="var">FsetInterface</span></span> | 52 | ····are·consequences·of·the·axiomatization·in·<span·class="inlinecode"><span·class="id"·title="var">FsetInterface</span></span> |
53 | ····Contrary·to·the·functor·in·<span·class="inlinecode"><span·class="id"·title="var">FsetProperties</span></span>·it·uses | 53 | ····Contrary·to·the·functor·in·<span·class="inlinecode"><span·class="id"·title="var">FsetProperties</span></span>·it·uses |
54 | ····sets·operations·instead·of·predicates·over·sets,·i.e. | 54 | ····sets·operations·instead·of·predicates·over·sets,·i.e. |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1005"></a><h1·class="section">Finite·sets·library</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·This·functor·derives·additional·facts·from·<span·class="inlinecode"><span·class="id"·title="var">FSetInterface.S</span></span>.·These | 51 | ·This·functor·derives·additional·facts·from·<span·class="inlinecode"><span·class="id"·title="var">FSetInterface.S</span></span>.·These |
52 | ··facts·are·mainly·the·specifications·of·<span·class="inlinecode"><span·class="id"·title="var">FSetInterface.S</span></span>·written·using | 52 | ··facts·are·mainly·the·specifications·of·<span·class="inlinecode"><span·class="id"·title="var">FSetInterface.S</span></span>·written·using |
53 | ··different·styles:·equivalence·and·boolean·equalities. | 53 | ··different·styles:·equivalence·and·boolean·equalities. |
54 | ··Moreover,·we·prove·that·<span·class="inlinecode"><span·class="id"·title="var">E.Eq</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">Equal</span></span>·are·setoid·equalities. | 54 | ··Moreover,·we·prove·that·<span·class="inlinecode"><span·class="id"·title="var">E.Eq</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">Equal</span></span>·are·setoid·equalities. |
Offset 81, 15 lines modified | Offset 81, 15 lines modified | ||
81 | <span·class="id"·title="keyword">Notation</span>·<a·id="WFacts_fun.eq_dec"·class="idref"·href="#WFacts_fun.eq_dec"><span·class="id"·title="abbreviation">eq_dec</span></a>·:=·<a·class="idref"·href="Coq.FSets.FSetFacts.html#E.eq_dec"><span·class="id"·title="axiom">E.eq_dec</span></a>.<br/> | 81 | <span·class="id"·title="keyword">Notation</span>·<a·id="WFacts_fun.eq_dec"·class="idref"·href="#WFacts_fun.eq_dec"><span·class="id"·title="abbreviation">eq_dec</span></a>·:=·<a·class="idref"·href="Coq.FSets.FSetFacts.html#E.eq_dec"><span·class="id"·title="axiom">E.eq_dec</span></a>.<br/> |
82 | <span·class="id"·title="keyword">Definition</span>·<a·id="WFacts_fun.eqb"·class="idref"·href="#WFacts_fun.eqb"><span·class="id"·title="definition">eqb</span></a>·<a·id="x:1"·class="idref"·href="#x:1"><span·class="id"·title="binder">x</span></a>·<a·id="y:2"·class="idref"·href="#y:2"><span·class="id"·title="binder">y</span></a>·:=·<span·class="id"·title="keyword">if</span>·<a·class="idref"·href="Coq.FSets.FSetFacts.html#WFacts_fun.eq_dec"><span·class="id"·title="abbreviation">eq_dec</span></a>·<a·class="idref"·href="Coq.FSets.FSetFacts.html#x:1"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FSetFacts.html#y:2"><span·class="id"·title="variable">y</span></a>·<span·class="id"·title="keyword">then</span>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<span·class="id"·title="keyword">else</span>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>.<br/> | 82 | <span·class="id"·title="keyword">Definition</span>·<a·id="WFacts_fun.eqb"·class="idref"·href="#WFacts_fun.eqb"><span·class="id"·title="definition">eqb</span></a>·<a·id="x:1"·class="idref"·href="#x:1"><span·class="id"·title="binder">x</span></a>·<a·id="y:2"·class="idref"·href="#y:2"><span·class="id"·title="binder">y</span></a>·:=·<span·class="id"·title="keyword">if</span>·<a·class="idref"·href="Coq.FSets.FSetFacts.html#WFacts_fun.eq_dec"><span·class="id"·title="abbreviation">eq_dec</span></a>·<a·class="idref"·href="Coq.FSets.FSetFacts.html#x:1"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FSetFacts.html#y:2"><span·class="id"·title="variable">y</span></a>·<span·class="id"·title="keyword">then</span>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<span·class="id"·title="keyword">else</span>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>.<br/> |
83 | <br/> | 83 | <br/> |
84 | </div> | 84 | </div> |
85 | <div·class="doc"> | 85 | <div·class="doc"> |
86 | <a·id="lab | 86 | <a·id="lab1006"></a><h1·class="section">Specifications·written·using·equivalences</h1> |
87 | </div> | 87 | </div> |
88 | <div·class="code"> | 88 | <div·class="code"> |
89 | <br/> | 89 | <br/> |
90 | <span·class="id"·title="keyword">Section</span>·<a·id="WFacts_fun.IffSpec"·class="idref"·href="#WFacts_fun.IffSpec"><span·class="id"·title="section">IffSpec</span></a>.<br/> | 90 | <span·class="id"·title="keyword">Section</span>·<a·id="WFacts_fun.IffSpec"·class="idref"·href="#WFacts_fun.IffSpec"><span·class="id"·title="section">IffSpec</span></a>.<br/> |
91 | <span·class="id"·title="keyword">Variable</span>·<a·id="WFacts_fun.IffSpec.s"·class="idref"·href="#WFacts_fun.IffSpec.s"><span·class="id"·title="variable">s</span></a>·<a·id="WFacts_fun.IffSpec.s'"·class="idref"·href="#WFacts_fun.IffSpec.s'"><span·class="id"·title="variable">s'</span></a>·<a·id="WFacts_fun.IffSpec.s''"·class="idref"·href="#WFacts_fun.IffSpec.s''"><span·class="id"·title="variable">s''</span></a>·:·<a·class="idref"·href="Coq.FSets.FSetFacts.html#M.t"><span·class="id"·title="axiom">t</span></a>.<br/> | 91 | <span·class="id"·title="keyword">Variable</span>·<a·id="WFacts_fun.IffSpec.s"·class="idref"·href="#WFacts_fun.IffSpec.s"><span·class="id"·title="variable">s</span></a>·<a·id="WFacts_fun.IffSpec.s'"·class="idref"·href="#WFacts_fun.IffSpec.s'"><span·class="id"·title="variable">s'</span></a>·<a·id="WFacts_fun.IffSpec.s''"·class="idref"·href="#WFacts_fun.IffSpec.s''"><span·class="id"·title="variable">s''</span></a>·:·<a·class="idref"·href="Coq.FSets.FSetFacts.html#M.t"><span·class="id"·title="axiom">t</span></a>.<br/> |
Offset 175, 15 lines modified | Offset 175, 15 lines modified | ||
175 | ||·<span·class="id"·title="tactic">rewrite</span>·<a·class="idref"·href="Coq.FSets.FSetFacts.html#WFacts_fun.union_iff"><span·class="id"·title="lemma">union_iff</span></a>·||·<span·class="id"·title="tactic">rewrite</span>·<a·class="idref"·href="Coq.FSets.FSetFacts.html#WFacts_fun.inter_iff"><span·class="id"·title="lemma">inter_iff</span></a>·||·<span·class="id"·title="tactic">rewrite</span>·<a·class="idref"·href="Coq.FSets.FSetFacts.html#WFacts_fun.diff_iff"><span·class="id"·title="lemma">diff_iff</span></a><br/> | 175 | ||·<span·class="id"·title="tactic">rewrite</span>·<a·class="idref"·href="Coq.FSets.FSetFacts.html#WFacts_fun.union_iff"><span·class="id"·title="lemma">union_iff</span></a>·||·<span·class="id"·title="tactic">rewrite</span>·<a·class="idref"·href="Coq.FSets.FSetFacts.html#WFacts_fun.inter_iff"><span·class="id"·title="lemma">inter_iff</span></a>·||·<span·class="id"·title="tactic">rewrite</span>·<a·class="idref"·href="Coq.FSets.FSetFacts.html#WFacts_fun.diff_iff"><span·class="id"·title="lemma">diff_iff</span></a><br/> |
176 | ||·<span·class="id"·title="tactic">rewrite</span>·<a·class="idref"·href="Coq.FSets.FSetFacts.html#WFacts_fun.empty_iff"><span·class="id"·title="lemma">empty_iff</span></a>)).<br/> | 176 | ||·<span·class="id"·title="tactic">rewrite</span>·<a·class="idref"·href="Coq.FSets.FSetFacts.html#WFacts_fun.empty_iff"><span·class="id"·title="lemma">empty_iff</span></a>)).<br/> |
177 | <br/> | 177 | <br/> |
178 | </div> | 178 | </div> |
179 | <div·class="doc"> | 179 | <div·class="doc"> |
180 | <a·id="lab | 180 | <a·id="lab1007"></a><h1·class="section">Specifications·written·using·boolean·predicates</h1> |
181 | </div> | 181 | </div> |
182 | <div·class="code"> | 182 | <div·class="code"> |
183 | <br/> | 183 | <br/> |
184 | <span·class="id"·title="keyword">Section</span>·<a·id="WFacts_fun.BoolSpec"·class="idref"·href="#WFacts_fun.BoolSpec"><span·class="id"·title="section">BoolSpec</span></a>.<br/> | 184 | <span·class="id"·title="keyword">Section</span>·<a·id="WFacts_fun.BoolSpec"·class="idref"·href="#WFacts_fun.BoolSpec"><span·class="id"·title="section">BoolSpec</span></a>.<br/> |
185 | <span·class="id"·title="keyword">Variable</span>·<a·id="WFacts_fun.BoolSpec.s"·class="idref"·href="#WFacts_fun.BoolSpec.s"><span·class="id"·title="variable">s</span></a>·<a·id="WFacts_fun.BoolSpec.s'"·class="idref"·href="#WFacts_fun.BoolSpec.s'"><span·class="id"·title="variable">s'</span></a>·<a·id="WFacts_fun.BoolSpec.s''"·class="idref"·href="#WFacts_fun.BoolSpec.s''"><span·class="id"·title="variable">s''</span></a>·:·<a·class="idref"·href="Coq.FSets.FSetFacts.html#M.t"><span·class="id"·title="axiom">t</span></a>.<br/> | 185 | <span·class="id"·title="keyword">Variable</span>·<a·id="WFacts_fun.BoolSpec.s"·class="idref"·href="#WFacts_fun.BoolSpec.s"><span·class="id"·title="variable">s</span></a>·<a·id="WFacts_fun.BoolSpec.s'"·class="idref"·href="#WFacts_fun.BoolSpec.s'"><span·class="id"·title="variable">s'</span></a>·<a·id="WFacts_fun.BoolSpec.s''"·class="idref"·href="#WFacts_fun.BoolSpec.s''"><span·class="id"·title="variable">s''</span></a>·:·<a·class="idref"·href="Coq.FSets.FSetFacts.html#M.t"><span·class="id"·title="axiom">t</span></a>.<br/> |
Offset 239, 15 lines modified | Offset 239, 15 lines modified | ||
239 | <br/> | 239 | <br/> |
240 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FSetFacts.html#WFacts_fun.BoolSpec"><span·class="id"·title="section">BoolSpec</span></a>.<br/> | 240 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FSetFacts.html#WFacts_fun.BoolSpec"><span·class="id"·title="section">BoolSpec</span></a>.<br/> |
241 | <br/> | 241 | <br/> |
242 | </div> | 242 | </div> |
243 | <div·class="doc"> | 243 | <div·class="doc"> |
244 | <a·id="lab | 244 | <a·id="lab1008"></a><h1·class="section"><span·class="inlinecode"><span·class="id"·title="var">E.eq</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">Equal</span></span>·are·setoid·equalities</h1> |
245 | </div> | 245 | </div> |
246 | <div·class="code"> | 246 | <div·class="code"> |
247 | <br/> | 247 | <br/> |
248 | #[<span·class="id"·title="var">global</span>]<br/> | 248 | #[<span·class="id"·title="var">global</span>]<br/> |
249 | <span·class="id"·title="keyword">Instance</span>·<a·id="WFacts_fun.E_ST"·class="idref"·href="#WFacts_fun.E_ST"><span·class="id"·title="instance">E_ST</span></a>·:·<a·class="idref"·href="Coq.Classes.RelationClasses.html#Equivalence"><span·class="id"·title="class">Equivalence</span></a>·<a·class="idref"·href="Coq.FSets.FSetFacts.html#E.eq"><span·class="id"·title="axiom">E.eq</span></a>.<br/> | 249 | <span·class="id"·title="keyword">Instance</span>·<a·id="WFacts_fun.E_ST"·class="idref"·href="#WFacts_fun.E_ST"><span·class="id"·title="instance">E_ST</span></a>·:·<a·class="idref"·href="Coq.Classes.RelationClasses.html#Equivalence"><span·class="id"·title="class">Equivalence</span></a>·<a·class="idref"·href="Coq.FSets.FSetFacts.html#E.eq"><span·class="id"·title="axiom">E.eq</span></a>.<br/> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1044"></a><h1·class="section">Finite·set·library</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·Set·interfaces,·inspired·by·the·one·of·Ocaml.·When·compared·with | 51 | ·Set·interfaces,·inspired·by·the·one·of·Ocaml.·When·compared·with |
52 | ····Ocaml,·the·main·differences·are: | 52 | ····Ocaml,·the·main·differences·are: |
53 | <ul·class="doclist"> | 53 | <ul·class="doclist"> |
54 | <li>·the·lack·of·<span·class="inlinecode"><span·class="id"·title="var">iter</span></span>·function,·useless·since·Coq·is·purely·functional | 54 | <li>·the·lack·of·<span·class="inlinecode"><span·class="id"·title="var">iter</span></span>·function,·useless·since·Coq·is·purely·functional |
Offset 101, 24 lines modified | Offset 101, 24 lines modified | ||
101 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.Bool.Bool.html#"><span·class="id"·title="library">Bool</span></a>·<a·class="idref"·href="Coq.Structures.OrderedType.html#"><span·class="id"·title="library">OrderedType</span></a>·<a·class="idref"·href="Coq.Structures.DecidableType.html#"><span·class="id"·title="library">DecidableType</span></a>.<br/> | 101 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.Bool.Bool.html#"><span·class="id"·title="library">Bool</span></a>·<a·class="idref"·href="Coq.Structures.OrderedType.html#"><span·class="id"·title="library">OrderedType</span></a>·<a·class="idref"·href="Coq.Structures.DecidableType.html#"><span·class="id"·title="library">DecidableType</span></a>.<br/> |
102 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> | 102 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> |
103 | <br/> | 103 | <br/> |
104 | </div> | 104 | </div> |
105 | <div·class="doc"> | 105 | <div·class="doc"> |
106 | <a·id="lab | 106 | <a·id="lab1045"></a><h1·class="section">Non-dependent·signatures</h1> |
107 | <div·class="paragraph">·</div> | 107 | <div·class="paragraph">·</div> |
108 | ····The·following·signatures·presents·sets·as·purely·informative | 108 | ····The·following·signatures·presents·sets·as·purely·informative |
109 | ····programs·together·with·axioms· | 109 | ····programs·together·with·axioms· |
110 | <div·class="paragraph">·</div> | 110 | <div·class="paragraph">·</div> |
111 | <a·id="lab | 111 | <a·id="lab1046"></a><h2·class="section">Functorial·signature·for·weak·sets</h2> |
112 | <div·class="paragraph">·</div> | 112 | <div·class="paragraph">·</div> |
113 | ····Weak·sets·are·sets·without·ordering·on·base·elements,·only | 113 | ····Weak·sets·are·sets·without·ordering·on·base·elements,·only |
114 | ····a·decidable·equality.· | 114 | ····a·decidable·equality.· |
115 | </div> | 115 | </div> |
Offset 615, 15 lines modified | Offset 615, 15 lines modified | ||
615 | <br/> | 615 | <br/> |
616 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FSetInterface.html#WSfun"><span·class="id"·title="module">WSfun</span></a>.<br/> | 616 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FSetInterface.html#WSfun"><span·class="id"·title="module">WSfun</span></a>.<br/> |
617 | <br/> | 617 | <br/> |
618 | </div> | 618 | </div> |
619 | <div·class="doc"> | 619 | <div·class="doc"> |
620 | <a·id="lab | 620 | <a·id="lab1047"></a><h2·class="section">Static·signature·for·weak·sets</h2> |
621 | <div·class="paragraph">·</div> | 621 | <div·class="paragraph">·</div> |
622 | ····Similar·to·the·functorial·signature·<span·class="inlinecode"><span·class="id"·title="var">SW</span></span>,·except·that·the | 622 | ····Similar·to·the·functorial·signature·<span·class="inlinecode"><span·class="id"·title="var">SW</span></span>,·except·that·the |
623 | ····module·<span·class="inlinecode"><span·class="id"·title="var">E</span></span>·of·base·elements·is·incorporated·in·the·signature.· | 623 | ····module·<span·class="inlinecode"><span·class="id"·title="var">E</span></span>·of·base·elements·is·incorporated·in·the·signature.· |
624 | </div> | 624 | </div> |
Offset 635, 15 lines modified | Offset 635, 15 lines modified | ||
635 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.FSets.FSetInterface.html#WSfun"><span·class="id"·title="module">WSfun</span></a>·<a·class="idref"·href="Coq.FSets.FSetInterface.html#WS.E"><span·class="id"·title="module">E</span></a>.<br/> | 635 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.FSets.FSetInterface.html#WSfun"><span·class="id"·title="module">WSfun</span></a>·<a·class="idref"·href="Coq.FSets.FSetInterface.html#WS.E"><span·class="id"·title="module">E</span></a>.<br/> |
636 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FSetInterface.html#WS"><span·class="id"·title="module">WS</span></a>.<br/> | 636 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FSetInterface.html#WS"><span·class="id"·title="module">WS</span></a>.<br/> |
637 | <br/> | 637 | <br/> |
638 | </div> | 638 | </div> |
639 | <div·class="doc"> | 639 | <div·class="doc"> |
640 | <a·id="lab | 640 | <a·id="lab1048"></a><h2·class="section">Functorial·signature·for·sets·on·ordered·elements</h2> |
641 | <div·class="paragraph">·</div> | 641 | <div·class="paragraph">·</div> |
642 | ····Based·on·<span·class="inlinecode"><span·class="id"·title="var">WSfun</span></span>,·plus·ordering·on·sets·and·<span·class="inlinecode"><span·class="id"·title="var">min_elt</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">max_elt</span></span> | 642 | ····Based·on·<span·class="inlinecode"><span·class="id"·title="var">WSfun</span></span>,·plus·ordering·on·sets·and·<span·class="inlinecode"><span·class="id"·title="var">min_elt</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">max_elt</span></span> |
643 | ····and·some·stronger·specifications·for·other·functions.· | 643 | ····and·some·stronger·specifications·for·other·functions.· |
644 | </div> | 644 | </div> |
Offset 762, 15 lines modified | Offset 762, 15 lines modified | ||
762 | <br/> | 762 | <br/> |
763 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FSetInterface.html#Sfun"><span·class="id"·title="module">Sfun</span></a>.<br/> | 763 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FSetInterface.html#Sfun"><span·class="id"·title="module">Sfun</span></a>.<br/> |
764 | <br/> | 764 | <br/> |
765 | </div> | 765 | </div> |
766 | <div·class="doc"> | 766 | <div·class="doc"> |
767 | <a·id="lab | 767 | <a·id="lab1049"></a><h2·class="section">Static·signature·for·sets·on·ordered·elements</h2> |
768 | <div·class="paragraph">·</div> | 768 | <div·class="paragraph">·</div> |
769 | ····Similar·to·the·functorial·signature·<span·class="inlinecode"><span·class="id"·title="var">Sfun</span></span>,·except·that·the | 769 | ····Similar·to·the·functorial·signature·<span·class="inlinecode"><span·class="id"·title="var">Sfun</span></span>,·except·that·the |
770 | ····module·<span·class="inlinecode"><span·class="id"·title="var">E</span></span>·of·base·elements·is·incorporated·in·the·signature.· | 770 | ····module·<span·class="inlinecode"><span·class="id"·title="var">E</span></span>·of·base·elements·is·incorporated·in·the·signature.· |
771 | </div> | 771 | </div> |
Offset 782, 15 lines modified | Offset 782, 15 lines modified | ||
782 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.FSets.FSetInterface.html#Sfun"><span·class="id"·title="module">Sfun</span></a>·<a·class="idref"·href="Coq.FSets.FSetInterface.html#S.E"><span·class="id"·title="module">E</span></a>.<br/> | 782 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.FSets.FSetInterface.html#Sfun"><span·class="id"·title="module">Sfun</span></a>·<a·class="idref"·href="Coq.FSets.FSetInterface.html#S.E"><span·class="id"·title="module">E</span></a>.<br/> |
783 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FSetInterface.html#S"><span·class="id"·title="module">S</span></a>.<br/> | 783 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.FSets.FSetInterface.html#S"><span·class="id"·title="module">S</span></a>.<br/> |
784 | <br/> | 784 | <br/> |
785 | </div> | 785 | </div> |
786 | <div·class="doc"> | 786 | <div·class="doc"> |
787 | <a·id="lab | 787 | <a·id="lab1050"></a><h2·class="section">Some·subtyping·tests</h2> |
788 | <pre> | 788 | <pre> |
789 | WSfun·--->·WS | 789 | WSfun·--->·WS |
790 | ·|·········| | 790 | ·|·········| |
791 | ·|·········| | 791 | ·|·········| |
792 | ·V·········V | 792 | ·V·········V |
793 | Sfun··--->·S | 793 | Sfun··--->·S |
Offset 799, 15 lines modified | Offset 799, 15 lines modified | ||
799 | Module·Sfun_WSfun·(E:OrderedType)(M·:·Sfun·E)·<:·WSfun·E·:=·M. | 799 | Module·Sfun_WSfun·(E:OrderedType)(M·:·Sfun·E)·<:·WSfun·E·:=·M. |
800 | Module·S_Sfun·(M·:·S)·<:·Sfun·M.E·:=·M. | 800 | Module·S_Sfun·(M·:·S)·<:·Sfun·M.E·:=·M. |
801 | Module·WS_WSfun·(M·:·WS)·<:·WSfun·M.E·:=·M. | 801 | Module·WS_WSfun·(M·:·WS)·<:·WSfun·M.E·:=·M. |
802 | </pre> | 802 | </pre> |
803 | <div·class="paragraph">·</div> | 803 | <div·class="paragraph">·</div> |
804 | <a·id="lab | 804 | <a·id="lab1051"></a><h1·class="section">Dependent·signature</h1> |
805 | <div·class="paragraph">·</div> | 805 | <div·class="paragraph">·</div> |
806 | ····Signature·<span·class="inlinecode"><span·class="id"·title="var">Sdep</span></span>·presents·ordered·sets·using·dependent·types· | 806 | ····Signature·<span·class="inlinecode"><span·class="id"·title="var">Sdep</span></span>·presents·ordered·sets·using·dependent·types· |
807 | </div> | 807 | </div> |
808 | <div·class="code"> | 808 | <div·class="code"> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1119"></a><h1·class="section">Finite·sets·library</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·This·file·proposes·an·implementation·of·the·non-dependent | 51 | ·This·file·proposes·an·implementation·of·the·non-dependent |
52 | ····interface·<span·class="inlinecode"><span·class="id"·title="var">FSetInterface.S</span></span>·using·strictly·ordered·list.· | 52 | ····interface·<span·class="inlinecode"><span·class="id"·title="var">FSetInterface.S</span></span>·using·strictly·ordered·list.· |
53 | </div> | 53 | </div> |
54 | <div·class="code"> | 54 | <div·class="code"> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab964"></a><h1·class="section">Finite·sets·library</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·This·functor·derives·additional·properties·from·<span·class="inlinecode"><span·class="id"·title="var">FSetInterface.S</span></span>. | 51 | ·This·functor·derives·additional·properties·from·<span·class="inlinecode"><span·class="id"·title="var">FSetInterface.S</span></span>. |
52 | ····Contrary·to·the·functor·in·<span·class="inlinecode"><span·class="id"·title="var">FSetEqProperties</span></span>·it·uses | 52 | ····Contrary·to·the·functor·in·<span·class="inlinecode"><span·class="id"·title="var">FSetEqProperties</span></span>·it·uses |
53 | ····predicates·over·sets·instead·of·sets·operations,·i.e. | 53 | ····predicates·over·sets·instead·of·sets·operations,·i.e. |
54 | ····<span·class="inlinecode"><span·class="id"·title="var">In</span></span>·<span·class="inlinecode"><span·class="id"·title="var">x</span></span>·<span·class="inlinecode"><span·class="id"·title="var">s</span></span>·instead·of·<span·class="inlinecode"><span·class="id"·title="var">mem</span></span>·<span·class="inlinecode"><span·class="id"·title="var">x</span></span>·<span·class="inlinecode"><span·class="id"·title="var">s</span>=<span·class="id"·title="var">true</span></span>, | 54 | ····<span·class="inlinecode"><span·class="id"·title="var">In</span></span>·<span·class="inlinecode"><span·class="id"·title="var">x</span></span>·<span·class="inlinecode"><span·class="id"·title="var">s</span></span>·instead·of·<span·class="inlinecode"><span·class="id"·title="var">mem</span></span>·<span·class="inlinecode"><span·class="id"·title="var">x</span></span>·<span·class="inlinecode"><span·class="id"·title="var">s</span>=<span·class="id"·title="var">true</span></span>, |
Offset 337, 30 lines modified | Offset 337, 30 lines modified | ||
337 | <span·class="id"·title="var">remove_diff_singleton</span>·<span·class="id"·title="var">diff_inter_empty</span>·<span·class="id"·title="var">diff_inter_all</span>·<span·class="id"·title="var">Add_add</span>·<span·class="id"·title="var">Add_remove</span><br/> | 337 | <span·class="id"·title="var">remove_diff_singleton</span>·<span·class="id"·title="var">diff_inter_empty</span>·<span·class="id"·title="var">diff_inter_all</span>·<span·class="id"·title="var">Add_add</span>·<span·class="id"·title="var">Add_remove</span><br/> |
338 | <span·class="id"·title="var">Equal_remove</span>·<span·class="id"·title="var">add_add</span>·:·<span·class="id"·title="tactic">set</span>.<br/> | 338 | <span·class="id"·title="var">Equal_remove</span>·<span·class="id"·title="var">add_add</span>·:·<span·class="id"·title="tactic">set</span>.<br/> |
339 | <br/> | 339 | <br/> |
340 | </div> | 340 | </div> |
341 | <div·class="doc"> | 341 | <div·class="doc"> |
342 | <a·id="lab | 342 | <a·id="lab965"></a><h1·class="section">Properties·of·elements</h1> |
343 | </div> | 343 | </div> |
344 | <div·class="code"> | 344 | <div·class="code"> |
345 | <br/> | 345 | <br/> |
346 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WProperties_fun.elements_Empty"·class="idref"·href="#WProperties_fun.elements_Empty"><span·class="id"·title="lemma">elements_Empty</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="s:26"·class="idref"·href="#s:26"><span·class="id"·title="binder">s</span></a>,·<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.Empty"><span·class="id"·title="definition">Empty</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#s:26"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.elements"><span·class="id"·title="axiom">elements</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#s:26"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#nil"><span·class="id"·title="constructor">nil</span></a>.<br/> | 346 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WProperties_fun.elements_Empty"·class="idref"·href="#WProperties_fun.elements_Empty"><span·class="id"·title="lemma">elements_Empty</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="s:26"·class="idref"·href="#s:26"><span·class="id"·title="binder">s</span></a>,·<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.Empty"><span·class="id"·title="definition">Empty</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#s:26"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.elements"><span·class="id"·title="axiom">elements</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#s:26"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#nil"><span·class="id"·title="constructor">nil</span></a>.<br/> |
347 | <br/> | 347 | <br/> |
348 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WProperties_fun.elements_empty"·class="idref"·href="#WProperties_fun.elements_empty"><span·class="id"·title="lemma">elements_empty</span></a>·:·<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.elements"><span·class="id"·title="axiom">elements</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.empty"><span·class="id"·title="axiom">empty</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#nil"><span·class="id"·title="constructor">nil</span></a>.<br/> | 348 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WProperties_fun.elements_empty"·class="idref"·href="#WProperties_fun.elements_empty"><span·class="id"·title="lemma">elements_empty</span></a>·:·<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.elements"><span·class="id"·title="axiom">elements</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.empty"><span·class="id"·title="axiom">empty</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#nil"><span·class="id"·title="constructor">nil</span></a>.<br/> |
349 | <br/> | 349 | <br/> |
350 | </div> | 350 | </div> |
351 | <div·class="doc"> | 351 | <div·class="doc"> |
352 | <a·id="lab | 352 | <a·id="lab966"></a><h1·class="section">Conversions·between·lists·and·sets</h1> |
353 | </div> | 353 | </div> |
354 | <div·class="code"> | 354 | <div·class="code"> |
355 | <br/> | 355 | <br/> |
356 | <span·class="id"·title="keyword">Definition</span>·<a·id="WProperties_fun.of_list"·class="idref"·href="#WProperties_fun.of_list"><span·class="id"·title="definition">of_list</span></a>·(<a·id="l:29"·class="idref"·href="#l:29"><span·class="id"·title="binder">l</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.elt"><span·class="id"·title="definition">elt</span></a>)·:=·<a·class="idref"·href="Coq.Lists.List.html#fold_right"><span·class="id"·title="definition">List.fold_right</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.add"><span·class="id"·title="axiom">add</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.empty"><span·class="id"·title="axiom">empty</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#l:29"><span·class="id"·title="variable">l</span></a>.<br/> | 356 | <span·class="id"·title="keyword">Definition</span>·<a·id="WProperties_fun.of_list"·class="idref"·href="#WProperties_fun.of_list"><span·class="id"·title="definition">of_list</span></a>·(<a·id="l:29"·class="idref"·href="#l:29"><span·class="id"·title="binder">l</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.elt"><span·class="id"·title="definition">elt</span></a>)·:=·<a·class="idref"·href="Coq.Lists.List.html#fold_right"><span·class="id"·title="definition">List.fold_right</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.add"><span·class="id"·title="axiom">add</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.empty"><span·class="id"·title="axiom">empty</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#l:29"><span·class="id"·title="variable">l</span></a>.<br/> |
Offset 376, 15 lines modified | Offset 376, 15 lines modified | ||
376 | <br/> | 376 | <br/> |
377 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WProperties_fun.of_list_3"·class="idref"·href="#WProperties_fun.of_list_3"><span·class="id"·title="lemma">of_list_3</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="s:33"·class="idref"·href="#s:33"><span·class="id"·title="binder">s</span></a>,·<a·class="idref"·href="Coq.FSets.FSetProperties.html#WProperties_fun.of_list"><span·class="id"·title="definition">of_list</span></a>·(<a·class="idref"·href="Coq.FSets.FSetProperties.html#WProperties_fun.to_list"><span·class="id"·title="definition">to_list</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#s:33"><span·class="id"·title="variable">s</span></a>)·<a·class="idref"·href="Coq.FSets.FSetInterface.html#524861ae1935246b07f20fd2e08f1d55"><span·class="id"·title="notation">[=]</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#s:33"><span·class="id"·title="variable">s</span></a>.<br/> | 377 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WProperties_fun.of_list_3"·class="idref"·href="#WProperties_fun.of_list_3"><span·class="id"·title="lemma">of_list_3</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="s:33"·class="idref"·href="#s:33"><span·class="id"·title="binder">s</span></a>,·<a·class="idref"·href="Coq.FSets.FSetProperties.html#WProperties_fun.of_list"><span·class="id"·title="definition">of_list</span></a>·(<a·class="idref"·href="Coq.FSets.FSetProperties.html#WProperties_fun.to_list"><span·class="id"·title="definition">to_list</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#s:33"><span·class="id"·title="variable">s</span></a>)·<a·class="idref"·href="Coq.FSets.FSetInterface.html#524861ae1935246b07f20fd2e08f1d55"><span·class="id"·title="notation">[=]</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#s:33"><span·class="id"·title="variable">s</span></a>.<br/> |
378 | <br/> | 378 | <br/> |
379 | </div> | 379 | </div> |
380 | <div·class="doc"> | 380 | <div·class="doc"> |
381 | <a·id="lab | 381 | <a·id="lab967"></a><h1·class="section">Fold</h1> |
382 | </div> | 382 | </div> |
383 | <div·class="code"> | 383 | <div·class="code"> |
384 | <br/> | 384 | <br/> |
385 | <span·class="id"·title="keyword">Section</span>·<a·id="WProperties_fun.Fold"·class="idref"·href="#WProperties_fun.Fold"><span·class="id"·title="section">Fold</span></a>.<br/> | 385 | <span·class="id"·title="keyword">Section</span>·<a·id="WProperties_fun.Fold"·class="idref"·href="#WProperties_fun.Fold"><span·class="id"·title="section">Fold</span></a>.<br/> |
Offset 404, 15 lines modified | Offset 404, 15 lines modified | ||
404 | <span·class="id"·title="keyword">Notation</span>·<a·id="WProperties_fun.NoDup"·class="idref"·href="#WProperties_fun.NoDup"><span·class="id"·title="abbreviation">NoDup</span></a>·:=·(<a·class="idref"·href="Coq.Lists.SetoidList.html#NoDupA"><span·class="id"·title="inductive">NoDupA</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#E.eq"><span·class="id"·title="axiom">E.eq</span></a>).<br/> | 404 | <span·class="id"·title="keyword">Notation</span>·<a·id="WProperties_fun.NoDup"·class="idref"·href="#WProperties_fun.NoDup"><span·class="id"·title="abbreviation">NoDup</span></a>·:=·(<a·class="idref"·href="Coq.Lists.SetoidList.html#NoDupA"><span·class="id"·title="inductive">NoDupA</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#E.eq"><span·class="id"·title="axiom">E.eq</span></a>).<br/> |
405 | <span·class="id"·title="keyword">Notation</span>·<a·id="WProperties_fun.InA"·class="idref"·href="#WProperties_fun.InA"><span·class="id"·title="abbreviation">InA</span></a>·:=·(<a·class="idref"·href="Coq.Lists.SetoidList.html#InA"><span·class="id"·title="inductive">InA</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#E.eq"><span·class="id"·title="axiom">E.eq</span></a>).<br/> | 405 | <span·class="id"·title="keyword">Notation</span>·<a·id="WProperties_fun.InA"·class="idref"·href="#WProperties_fun.InA"><span·class="id"·title="abbreviation">InA</span></a>·:=·(<a·class="idref"·href="Coq.Lists.SetoidList.html#InA"><span·class="id"·title="inductive">InA</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#E.eq"><span·class="id"·title="axiom">E.eq</span></a>).<br/> |
406 | <br/> | 406 | <br/> |
407 | </div> | 407 | </div> |
408 | <div·class="doc"> | 408 | <div·class="doc"> |
409 | <a·id="lab | 409 | <a·id="lab968"></a><h2·class="section">Induction·principles·for·fold·(contributed·by·S.·Lescuyer)</h2> |
410 | <div·class="paragraph">·</div> | 410 | <div·class="paragraph">·</div> |
411 | ·In·the·following·lemma,·the·step·hypothesis·is·deliberately·restricted | 411 | ·In·the·following·lemma,·the·step·hypothesis·is·deliberately·restricted |
412 | ······to·the·precise·set·s·we·are·considering.· | 412 | ······to·the·precise·set·s·we·are·considering.· |
413 | </div> | 413 | </div> |
414 | <div·class="code"> | 414 | <div·class="code"> |
Offset 510, 15 lines modified | Offset 510, 15 lines modified | ||
510 | <br/> | 510 | <br/> |
511 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WProperties_fun.fold_identity"·class="idref"·href="#WProperties_fun.fold_identity"><span·class="id"·title="lemma">fold_identity</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="s:120"·class="idref"·href="#s:120"><span·class="id"·title="binder">s</span></a>,·<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.add"><span·class="id"·title="axiom">add</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#s:120"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.empty"><span·class="id"·title="axiom">empty</span></a>·<a·class="idref"·href="Coq.FSets.FSetInterface.html#524861ae1935246b07f20fd2e08f1d55"><span·class="id"·title="notation">[=]</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#s:120"><span·class="id"·title="variable">s</span></a>.<br/> | 511 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WProperties_fun.fold_identity"·class="idref"·href="#WProperties_fun.fold_identity"><span·class="id"·title="lemma">fold_identity</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="s:120"·class="idref"·href="#s:120"><span·class="id"·title="binder">s</span></a>,·<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.add"><span·class="id"·title="axiom">add</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#s:120"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.empty"><span·class="id"·title="axiom">empty</span></a>·<a·class="idref"·href="Coq.FSets.FSetInterface.html#524861ae1935246b07f20fd2e08f1d55"><span·class="id"·title="notation">[=]</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#s:120"><span·class="id"·title="variable">s</span></a>.<br/> |
512 | <br/> | 512 | <br/> |
513 | </div> | 513 | </div> |
514 | <div·class="doc"> | 514 | <div·class="doc"> |
515 | <a·id="lab | 515 | <a·id="lab969"></a><h2·class="section">Alternative·(weaker)·specifications·for·<span·class="inlinecode"><span·class="id"·title="tactic">fold</span></span></h2> |
516 | <div·class="paragraph">·</div> | 516 | <div·class="paragraph">·</div> |
517 | ·When·<span·class="inlinecode"><span·class="id"·title="var">FSets</span></span>·was·first·designed,·the·order·in·which·Ocaml's·<span·class="inlinecode"><span·class="id"·title="var">Set.fold</span></span> | 517 | ·When·<span·class="inlinecode"><span·class="id"·title="var">FSets</span></span>·was·first·designed,·the·order·in·which·Ocaml's·<span·class="inlinecode"><span·class="id"·title="var">Set.fold</span></span> |
518 | ······takes·the·set·elements·was·unspecified.·This·specification·reflects | 518 | ······takes·the·set·elements·was·unspecified.·This·specification·reflects |
519 | ······this·fact: | 519 | ······this·fact: |
520 | ·· | 520 | ·· |
Offset 582, 15 lines modified | Offset 582, 15 lines modified | ||
582 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WProperties_fun.fold_commutes"·class="idref"·href="#WProperties_fun.fold_commutes"><span·class="id"·title="lemma">fold_commutes</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="i:161"·class="idref"·href="#i:161"><span·class="id"·title="binder">i</span></a>·<a·id="s:162"·class="idref"·href="#s:162"><span·class="id"·title="binder">s</span></a>·<a·id="x:163"·class="idref"·href="#x:163"><span·class="id"·title="binder">x</span></a>,<br/> | 582 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WProperties_fun.fold_commutes"·class="idref"·href="#WProperties_fun.fold_commutes"><span·class="id"·title="lemma">fold_commutes</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="i:161"·class="idref"·href="#i:161"><span·class="id"·title="binder">i</span></a>·<a·id="s:162"·class="idref"·href="#s:162"><span·class="id"·title="binder">s</span></a>·<a·id="x:163"·class="idref"·href="#x:163"><span·class="id"·title="binder">x</span></a>,<br/> |
583 | <a·class="idref"·href="Coq.FSets.FSetProperties.html#WProperties_fun.Fold.Fold_More.eqA"><span·class="id"·title="variable">eqA</span></a>·(<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#WProperties_fun.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#s:162"><span·class="id"·title="variable">s</span></a>·(<a·class="idref"·href="Coq.FSets.FSetProperties.html#WProperties_fun.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#x:163"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#i:161"><span·class="id"·title="variable">i</span></a>))·(<a·class="idref"·href="Coq.FSets.FSetProperties.html#WProperties_fun.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#x:163"><span·class="id"·title="variable">x</span></a>·(<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#WProperties_fun.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#s:162"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#i:161"><span·class="id"·title="variable">i</span></a>)).<br/> | 583 | <a·class="idref"·href="Coq.FSets.FSetProperties.html#WProperties_fun.Fold.Fold_More.eqA"><span·class="id"·title="variable">eqA</span></a>·(<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#WProperties_fun.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#s:162"><span·class="id"·title="variable">s</span></a>·(<a·class="idref"·href="Coq.FSets.FSetProperties.html#WProperties_fun.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#x:163"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#i:161"><span·class="id"·title="variable">i</span></a>))·(<a·class="idref"·href="Coq.FSets.FSetProperties.html#WProperties_fun.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#x:163"><span·class="id"·title="variable">x</span></a>·(<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#WProperties_fun.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#s:162"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#i:161"><span·class="id"·title="variable">i</span></a>)).<br/> |
584 | <br/> | 584 | <br/> |
585 | </div> | 585 | </div> |
586 | <div·class="doc"> | 586 | <div·class="doc"> |
587 | <a·id="lab | 587 | <a·id="lab970"></a><h2·class="section">Fold·is·a·morphism</h2> |
588 | </div> | 588 | </div> |
589 | <div·class="code"> | 589 | <div·class="code"> |
590 | <br/> | 590 | <br/> |
591 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WProperties_fun.fold_init"·class="idref"·href="#WProperties_fun.fold_init"><span·class="id"·title="lemma">fold_init</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="i:168"·class="idref"·href="#i:168"><span·class="id"·title="binder">i</span></a>·<a·id="i':169"·class="idref"·href="#i':169"><span·class="id"·title="binder">i'</span></a>·<a·id="s:170"·class="idref"·href="#s:170"><span·class="id"·title="binder">s</span></a>,·<a·class="idref"·href="Coq.FSets.FSetProperties.html#WProperties_fun.Fold.Fold_More.eqA"><span·class="id"·title="variable">eqA</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#i:168"><span·class="id"·title="variable">i</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#i':169"><span·class="id"·title="variable">i'</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 591 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WProperties_fun.fold_init"·class="idref"·href="#WProperties_fun.fold_init"><span·class="id"·title="lemma">fold_init</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="i:168"·class="idref"·href="#i:168"><span·class="id"·title="binder">i</span></a>·<a·id="i':169"·class="idref"·href="#i':169"><span·class="id"·title="binder">i'</span></a>·<a·id="s:170"·class="idref"·href="#s:170"><span·class="id"·title="binder">s</span></a>,·<a·class="idref"·href="Coq.FSets.FSetProperties.html#WProperties_fun.Fold.Fold_More.eqA"><span·class="id"·title="variable">eqA</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#i:168"><span·class="id"·title="variable">i</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#i':169"><span·class="id"·title="variable">i'</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
592 | <a·class="idref"·href="Coq.FSets.FSetProperties.html#WProperties_fun.Fold.Fold_More.eqA"><span·class="id"·title="variable">eqA</span></a>·(<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#WProperties_fun.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#s:170"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#i:168"><span·class="id"·title="variable">i</span></a>)·(<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#WProperties_fun.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#s:170"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#i':169"><span·class="id"·title="variable">i'</span></a>).<br/> | 592 | <a·class="idref"·href="Coq.FSets.FSetProperties.html#WProperties_fun.Fold.Fold_More.eqA"><span·class="id"·title="variable">eqA</span></a>·(<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#WProperties_fun.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#s:170"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#i:168"><span·class="id"·title="variable">i</span></a>)·(<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#WProperties_fun.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#s:170"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#i':169"><span·class="id"·title="variable">i'</span></a>).<br/> |
Offset 599, 15 lines modified | Offset 599, 15 lines modified | ||
599 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WProperties_fun.fold_equal"·class="idref"·href="#WProperties_fun.fold_equal"><span·class="id"·title="lemma">fold_equal</span></a>·:<br/> | 599 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WProperties_fun.fold_equal"·class="idref"·href="#WProperties_fun.fold_equal"><span·class="id"·title="lemma">fold_equal</span></a>·:<br/> |
600 | <span·class="id"·title="keyword">forall</span>·<a·id="i:171"·class="idref"·href="#i:171"><span·class="id"·title="binder">i</span></a>·<a·id="s:172"·class="idref"·href="#s:172"><span·class="id"·title="binder">s</span></a>·<a·id="s':173"·class="idref"·href="#s':173"><span·class="id"·title="binder">s'</span></a>,·<a·class="idref"·href="Coq.FSets.FSetProperties.html#s:172"><span·class="id"·title="variable">s</span></a><a·class="idref"·href="Coq.FSets.FSetInterface.html#524861ae1935246b07f20fd2e08f1d55"><span·class="id"·title="notation">[=]</span></a><a·class="idref"·href="Coq.FSets.FSetProperties.html#s':173"><span·class="id"·title="variable">s'</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#WProperties_fun.Fold.Fold_More.eqA"><span·class="id"·title="variable">eqA</span></a>·(<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#WProperties_fun.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#s:172"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#i:171"><span·class="id"·title="variable">i</span></a>)·(<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#WProperties_fun.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#s':173"><span·class="id"·title="variable">s'</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#i:171"><span·class="id"·title="variable">i</span></a>).<br/> | 600 | <span·class="id"·title="keyword">forall</span>·<a·id="i:171"·class="idref"·href="#i:171"><span·class="id"·title="binder">i</span></a>·<a·id="s:172"·class="idref"·href="#s:172"><span·class="id"·title="binder">s</span></a>·<a·id="s':173"·class="idref"·href="#s':173"><span·class="id"·title="binder">s'</span></a>,·<a·class="idref"·href="Coq.FSets.FSetProperties.html#s:172"><span·class="id"·title="variable">s</span></a><a·class="idref"·href="Coq.FSets.FSetInterface.html#524861ae1935246b07f20fd2e08f1d55"><span·class="id"·title="notation">[=]</span></a><a·class="idref"·href="Coq.FSets.FSetProperties.html#s':173"><span·class="id"·title="variable">s'</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#WProperties_fun.Fold.Fold_More.eqA"><span·class="id"·title="variable">eqA</span></a>·(<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#WProperties_fun.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#s:172"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#i:171"><span·class="id"·title="variable">i</span></a>)·(<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#WProperties_fun.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#s':173"><span·class="id"·title="variable">s'</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#i:171"><span·class="id"·title="variable">i</span></a>).<br/> |
601 | <br/> | 601 | <br/> |
602 | </div> | 602 | </div> |
603 | <div·class="doc"> | 603 | <div·class="doc"> |
604 | <a·id="lab | 604 | <a·id="lab971"></a><h2·class="section">Fold·and·other·set·operators</h2> |
605 | </div> | 605 | </div> |
606 | <div·class="code"> | 606 | <div·class="code"> |
607 | <br/> | 607 | <br/> |
608 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WProperties_fun.fold_empty"·class="idref"·href="#WProperties_fun.fold_empty"><span·class="id"·title="lemma">fold_empty</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="i:174"·class="idref"·href="#i:174"><span·class="id"·title="binder">i</span></a>,·<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#WProperties_fun.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.empty"><span·class="id"·title="axiom">empty</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#i:174"><span·class="id"·title="variable">i</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#i:174"><span·class="id"·title="variable">i</span></a>.<br/> | 608 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WProperties_fun.fold_empty"·class="idref"·href="#WProperties_fun.fold_empty"><span·class="id"·title="lemma">fold_empty</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="i:174"·class="idref"·href="#i:174"><span·class="id"·title="binder">i</span></a>,·<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#WProperties_fun.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#M.empty"><span·class="id"·title="axiom">empty</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#i:174"><span·class="id"·title="variable">i</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#i:174"><span·class="id"·title="variable">i</span></a>.<br/> |
Offset 651, 31 lines modified | Offset 651, 31 lines modified | ||
Max diff block lines reached; 11505/28370 bytes (40.55%) of diff not shown. |
Offset 45, 28 lines modified | Offset 45, 28 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1114"></a><h1·class="section">Finite·sets·library·:·conversion·to·old·<span·class="inlinecode"><span·class="id"·title="var">Finite_sets</span></span></h1> |
50 | </div> | 50 | </div> |
51 | <div·class="code"> | 51 | <div·class="code"> |
52 | <br/> | 52 | <br/> |
53 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Sets.Ensembles.html#"><span·class="id"·title="library">Ensembles</span></a>·<a·class="idref"·href="Coq.Sets.Finite_sets.html#"><span·class="id"·title="library">Finite_sets</span></a>.<br/> | 53 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Sets.Ensembles.html#"><span·class="id"·title="library">Ensembles</span></a>·<a·class="idref"·href="Coq.Sets.Finite_sets.html#"><span·class="id"·title="library">Finite_sets</span></a>.<br/> |
54 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.FSets.FSetInterface.html#"><span·class="id"·title="library">FSetInterface</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#"><span·class="id"·title="library">FSetProperties</span></a>·<a·class="idref"·href="Coq.Structures.OrderedTypeEx.html#"><span·class="id"·title="library">OrderedTypeEx</span></a>·<a·class="idref"·href="Coq.Structures.DecidableTypeEx.html#"><span·class="id"·title="library">DecidableTypeEx</span></a>.<br/> | 54 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.FSets.FSetInterface.html#"><span·class="id"·title="library">FSetInterface</span></a>·<a·class="idref"·href="Coq.FSets.FSetProperties.html#"><span·class="id"·title="library">FSetProperties</span></a>·<a·class="idref"·href="Coq.Structures.OrderedTypeEx.html#"><span·class="id"·title="library">OrderedTypeEx</span></a>·<a·class="idref"·href="Coq.Structures.DecidableTypeEx.html#"><span·class="id"·title="library">DecidableTypeEx</span></a>.<br/> |
55 | <br/> | 55 | <br/> |
56 | </div> | 56 | </div> |
57 | <div·class="doc"> | 57 | <div·class="doc"> |
58 | <a·id="lab | 58 | <a·id="lab1115"></a><h1·class="section">Going·from·<span·class="inlinecode"><span·class="id"·title="var">FSets</span></span>·with·usual·Leibniz·equality</h1> |
59 | ····to·the·good·old·<span·class="inlinecode"><span·class="id"·title="var">Ensembles</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">Finite_sets</span></span>·theory.· | 59 | ····to·the·good·old·<span·class="inlinecode"><span·class="id"·title="var">Ensembles</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">Finite_sets</span></span>·theory.· |
60 | </div> | 60 | </div> |
61 | <div·class="code"> | 61 | <div·class="code"> |
62 | <br/> | 62 | <br/> |
63 | <span·class="id"·title="keyword">Module</span>·<a·id="WS_to_Finite_set"·class="idref"·href="#WS_to_Finite_set"><span·class="id"·title="module">WS_to_Finite_set</span></a>·(<span·class="id"·title="var">U</span>:<a·class="idref"·href="Coq.Structures.DecidableTypeEx.html#UsualDecidableType"><span·class="id"·title="module">UsualDecidableType</span></a>)(<span·class="id"·title="var">M</span>:·<a·class="idref"·href="Coq.FSets.FSetInterface.html#WSfun"><span·class="id"·title="module">WSfun</span></a>·<a·class="idref"·href="Coq.FSets.FSetToFiniteSet.html#U"><span·class="id"·title="module">U</span></a>).<br/> | 63 | <span·class="id"·title="keyword">Module</span>·<a·id="WS_to_Finite_set"·class="idref"·href="#WS_to_Finite_set"><span·class="id"·title="module">WS_to_Finite_set</span></a>·(<span·class="id"·title="var">U</span>:<a·class="idref"·href="Coq.Structures.DecidableTypeEx.html#UsualDecidableType"><span·class="id"·title="module">UsualDecidableType</span></a>)(<span·class="id"·title="var">M</span>:·<a·class="idref"·href="Coq.FSets.FSetInterface.html#WSfun"><span·class="id"·title="module">WSfun</span></a>·<a·class="idref"·href="Coq.FSets.FSetToFiniteSet.html#U"><span·class="id"·title="module">U</span></a>).<br/> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1043"></a><h1·class="section">Finite·sets·library</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·This·file·proposes·an·implementation·of·the·non-dependent | 51 | ·This·file·proposes·an·implementation·of·the·non-dependent |
52 | ····interface·<span·class="inlinecode"><span·class="id"·title="var">FSetInterface.WS</span></span>·using·lists·without·redundancy.· | 52 | ····interface·<span·class="inlinecode"><span·class="id"·title="var">FSetInterface.WS</span></span>·using·lists·without·redundancy.· |
53 | </div> | 53 | </div> |
54 | <div·class="code"> | 54 | <div·class="code"> |
Offset 48, 15 lines modified | Offset 48, 15 lines modified | ||
48 | <br/> | 48 | <br/> |
49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.ZArith.ZArith.html#"><span·class="id"·title="library">ZArith</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#"><span·class="id"·title="library">Uint63</span></a>·<a·class="idref"·href="Coq.Floats.SpecFloat.html#"><span·class="id"·title="library">SpecFloat</span></a>·<a·class="idref"·href="Coq.Floats.PrimFloat.html#"><span·class="id"·title="library">PrimFloat</span></a>·<a·class="idref"·href="Coq.Floats.FloatOps.html#"><span·class="id"·title="library">FloatOps</span></a>.<br/> | 49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.ZArith.ZArith.html#"><span·class="id"·title="library">ZArith</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#"><span·class="id"·title="library">Uint63</span></a>·<a·class="idref"·href="Coq.Floats.SpecFloat.html#"><span·class="id"·title="library">SpecFloat</span></a>·<a·class="idref"·href="Coq.Floats.PrimFloat.html#"><span·class="id"·title="library">PrimFloat</span></a>·<a·class="idref"·href="Coq.Floats.FloatOps.html#"><span·class="id"·title="library">FloatOps</span></a>.<br/> |
50 | <br/> | 50 | <br/> |
51 | </div> | 51 | </div> |
52 | <div·class="doc"> | 52 | <div·class="doc"> |
53 | <a·id="lab | 53 | <a·id="lab957"></a><h1·class="section">Properties·of·the·primitive·operators·for·the·Binary64·format</h1> |
54 | </div> | 54 | </div> |
55 | <div·class="code"> | 55 | <div·class="code"> |
56 | <br/> | 56 | <br/> |
57 | <span·class="id"·title="keyword">Notation</span>·<a·id="valid_binary"·class="idref"·href="#valid_binary"><span·class="id"·title="abbreviation">valid_binary</span></a>·:=·(<a·class="idref"·href="Coq.Floats.SpecFloat.html#valid_binary"><span·class="id"·title="definition">valid_binary</span></a>·<a·class="idref"·href="Coq.Floats.FloatOps.html#prec"><span·class="id"·title="definition">prec</span></a>·<a·class="idref"·href="Coq.Floats.FloatOps.html#emax"><span·class="id"·title="definition">emax</span></a>).<br/> | 57 | <span·class="id"·title="keyword">Notation</span>·<a·id="valid_binary"·class="idref"·href="#valid_binary"><span·class="id"·title="abbreviation">valid_binary</span></a>·:=·(<a·class="idref"·href="Coq.Floats.SpecFloat.html#valid_binary"><span·class="id"·title="definition">valid_binary</span></a>·<a·class="idref"·href="Coq.Floats.FloatOps.html#prec"><span·class="id"·title="definition">prec</span></a>·<a·class="idref"·href="Coq.Floats.FloatOps.html#emax"><span·class="id"·title="definition">emax</span></a>).<br/> |
Offset 49, 15 lines modified | Offset 49, 15 lines modified | ||
49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.ZArith.ZArith.html#"><span·class="id"·title="library">ZArith</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#"><span·class="id"·title="library">Uint63</span></a>·<a·class="idref"·href="Coq.Floats.SpecFloat.html#"><span·class="id"·title="library">SpecFloat</span></a>·<a·class="idref"·href="Coq.Floats.PrimFloat.html#"><span·class="id"·title="library">PrimFloat</span></a>·<a·class="idref"·href="Coq.Floats.FloatOps.html#"><span·class="id"·title="library">FloatOps</span></a>·<a·class="idref"·href="Coq.Floats.FloatAxioms.html#"><span·class="id"·title="library">FloatAxioms</span></a>.<br/> | 49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.ZArith.ZArith.html#"><span·class="id"·title="library">ZArith</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#"><span·class="id"·title="library">Uint63</span></a>·<a·class="idref"·href="Coq.Floats.SpecFloat.html#"><span·class="id"·title="library">SpecFloat</span></a>·<a·class="idref"·href="Coq.Floats.PrimFloat.html#"><span·class="id"·title="library">PrimFloat</span></a>·<a·class="idref"·href="Coq.Floats.FloatOps.html#"><span·class="id"·title="library">FloatOps</span></a>·<a·class="idref"·href="Coq.Floats.FloatAxioms.html#"><span·class="id"·title="library">FloatAxioms</span></a>.<br/> |
50 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.micromega.Psatz.html#"><span·class="id"·title="library">Psatz</span></a>.<br/> | 50 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.micromega.Psatz.html#"><span·class="id"·title="library">Psatz</span></a>.<br/> |
51 | <br/> | 51 | <br/> |
52 | </div> | 52 | </div> |
53 | <div·class="doc"> | 53 | <div·class="doc"> |
54 | <a·id="lab | 54 | <a·id="lab959"></a><h1·class="section">Support·results·involving·frexp·and·ldexp</h1> |
55 | </div> | 55 | </div> |
56 | <div·class="code"> | 56 | <div·class="code"> |
57 | <br/> | 57 | <br/> |
58 | <span·class="id"·title="keyword">Lemma</span>·<a·id="shift_value"·class="idref"·href="#shift_value"><span·class="id"·title="lemma">shift_value</span></a>·:·<a·class="idref"·href="Coq.Floats.FloatOps.html#shift"><span·class="id"·title="definition">shift</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·(2<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a><a·class="idref"·href="Coq.Floats.FloatOps.html#emax"><span·class="id"·title="definition">emax</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Floats.FloatOps.html#prec"><span·class="id"·title="definition">prec</span></a>)%<span·class="id"·title="var">Z</span>.<br/> | 58 | <span·class="id"·title="keyword">Lemma</span>·<a·id="shift_value"·class="idref"·href="#shift_value"><span·class="id"·title="lemma">shift_value</span></a>·:·<a·class="idref"·href="Coq.Floats.FloatOps.html#shift"><span·class="id"·title="definition">shift</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·(2<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a><a·class="idref"·href="Coq.Floats.FloatOps.html#emax"><span·class="id"·title="definition">emax</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Floats.FloatOps.html#prec"><span·class="id"·title="definition">prec</span></a>)%<span·class="id"·title="var">Z</span>.<br/> |
Offset 48, 15 lines modified | Offset 48, 15 lines modified | ||
48 | <br/> | 48 | <br/> |
49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.ZArith.ZArith.html#"><span·class="id"·title="library">ZArith</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#"><span·class="id"·title="library">Uint63</span></a>·<a·class="idref"·href="Coq.Floats.SpecFloat.html#"><span·class="id"·title="library">SpecFloat</span></a>·<a·class="idref"·href="Coq.Floats.PrimFloat.html#"><span·class="id"·title="library">PrimFloat</span></a>.<br/> | 49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.ZArith.ZArith.html#"><span·class="id"·title="library">ZArith</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#"><span·class="id"·title="library">Uint63</span></a>·<a·class="idref"·href="Coq.Floats.SpecFloat.html#"><span·class="id"·title="library">SpecFloat</span></a>·<a·class="idref"·href="Coq.Floats.PrimFloat.html#"><span·class="id"·title="library">PrimFloat</span></a>.<br/> |
50 | <br/> | 50 | <br/> |
51 | </div> | 51 | </div> |
52 | <div·class="doc"> | 52 | <div·class="doc"> |
53 | <a·id="lab | 53 | <a·id="lab958"></a><h1·class="section">Derived·operations·and·mapping·between·primitive·<span·class="inlinecode"><span·class="id"·title="var">float</span></span>s·and·<span·class="inlinecode"><span·class="id"·title="var">spec_float</span></span>s</h1> |
54 | </div> | 54 | </div> |
55 | <div·class="code"> | 55 | <div·class="code"> |
56 | <br/> | 56 | <br/> |
57 | <span·class="id"·title="keyword">Definition</span>·<a·id="prec"·class="idref"·href="#prec"><span·class="id"·title="definition">prec</span></a>·:=·53%<span·class="id"·title="var">Z</span>.<br/> | 57 | <span·class="id"·title="keyword">Definition</span>·<a·id="prec"·class="idref"·href="#prec"><span·class="id"·title="definition">prec</span></a>·:=·53%<span·class="id"·title="var">Z</span>.<br/> |
58 | <span·class="id"·title="keyword">Definition</span>·<a·id="emax"·class="idref"·href="#emax"><span·class="id"·title="definition">emax</span></a>·:=·1024%<span·class="id"·title="var">Z</span>.<br/> | 58 | <span·class="id"·title="keyword">Definition</span>·<a·id="emax"·class="idref"·href="#emax"><span·class="id"·title="definition">emax</span></a>·:=·1024%<span·class="id"·title="var">Z</span>.<br/> |
Offset 48, 24 lines modified | Offset 48, 24 lines modified | ||
48 | <br/> | 48 | <br/> |
49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.PrimInt63.html#"><span·class="id"·title="library">PrimInt63</span></a>·<a·class="idref"·href="Coq.Floats.FloatClass.html#"><span·class="id"·title="library">FloatClass</span></a>.<br/> | 49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.PrimInt63.html#"><span·class="id"·title="library">PrimInt63</span></a>·<a·class="idref"·href="Coq.Floats.FloatClass.html#"><span·class="id"·title="library">FloatClass</span></a>.<br/> |
50 | <br/> | 50 | <br/> |
51 | </div> | 51 | </div> |
52 | <div·class="doc"> | 52 | <div·class="doc"> |
53 | <a·id="lab | 53 | <a·id="lab946"></a><h1·class="section">Definition·of·the·interface·for·primitive·floating-point·arithmetic</h1> |
54 | <div·class="paragraph">·</div> | 54 | <div·class="paragraph">·</div> |
55 | This·interface·provides·processor·operators·for·the·Binary64·format·of·the | 55 | This·interface·provides·processor·operators·for·the·Binary64·format·of·the |
56 | IEEE·754-2008·standard.· | 56 | IEEE·754-2008·standard.· |
57 | <div·class="paragraph">·</div> | 57 | <div·class="paragraph">·</div> |
58 | <a·id="lab | 58 | <a·id="lab947"></a><h2·class="section">Type·definition·for·the·co-domain·of·<span·class="inlinecode"><span·class="id"·title="var">compare</span></span></h2> |
59 | </div> | 59 | </div> |
60 | <div·class="code"> | 60 | <div·class="code"> |
61 | <span·class="id"·title="keyword">Variant</span>·<a·id="float_comparison"·class="idref"·href="#float_comparison"><span·class="id"·title="inductive">float_comparison</span></a>·:·<span·class="id"·title="keyword">Set</span>·:=·<a·id="FEq"·class="idref"·href="#FEq"><span·class="id"·title="constructor">FEq</span></a>·|·<a·id="FLt"·class="idref"·href="#FLt"><span·class="id"·title="constructor">FLt</span></a>·|·<a·id="FGt"·class="idref"·href="#FGt"><span·class="id"·title="constructor">FGt</span></a>·|·<a·id="FNotComparable"·class="idref"·href="#FNotComparable"><span·class="id"·title="constructor">FNotComparable</span></a>.<br/> | 61 | <span·class="id"·title="keyword">Variant</span>·<a·id="float_comparison"·class="idref"·href="#float_comparison"><span·class="id"·title="inductive">float_comparison</span></a>·:·<span·class="id"·title="keyword">Set</span>·:=·<a·id="FEq"·class="idref"·href="#FEq"><span·class="id"·title="constructor">FEq</span></a>·|·<a·id="FLt"·class="idref"·href="#FLt"><span·class="id"·title="constructor">FLt</span></a>·|·<a·id="FGt"·class="idref"·href="#FGt"><span·class="id"·title="constructor">FGt</span></a>·|·<a·id="FNotComparable"·class="idref"·href="#FNotComparable"><span·class="id"·title="constructor">FNotComparable</span></a>.<br/> |
62 | <br/> | 62 | <br/> |
63 | <span·class="id"·title="keyword">Register</span>·<span·class="id"·title="var">float_comparison</span>·<span·class="id"·title="keyword">as</span>·<span·class="id"·title="var">kernel.ind_f_cmp</span>.<br/> | 63 | <span·class="id"·title="keyword">Register</span>·<span·class="id"·title="var">float_comparison</span>·<span·class="id"·title="keyword">as</span>·<span·class="id"·title="var">kernel.ind_f_cmp</span>.<br/> |
Offset 73, 15 lines modified | Offset 73, 15 lines modified | ||
73 | <br/> | 73 | <br/> |
74 | <span·class="id"·title="keyword">Register</span>·<span·class="id"·title="var">float_class</span>·<span·class="id"·title="keyword">as</span>·<span·class="id"·title="var">kernel.ind_f_class</span>.<br/> | 74 | <span·class="id"·title="keyword">Register</span>·<span·class="id"·title="var">float_class</span>·<span·class="id"·title="keyword">as</span>·<span·class="id"·title="var">kernel.ind_f_class</span>.<br/> |
75 | <br/> | 75 | <br/> |
76 | </div> | 76 | </div> |
77 | <div·class="doc"> | 77 | <div·class="doc"> |
78 | <a·id="lab | 78 | <a·id="lab948"></a><h2·class="section">The·main·type</h2> |
79 | ·<span·class="inlinecode"><span·class="id"·title="var">float</span></span>:·primitive·type·for·Binary64·floating-point·numbers.· | 79 | ·<span·class="inlinecode"><span·class="id"·title="var">float</span></span>:·primitive·type·for·Binary64·floating-point·numbers.· |
80 | </div> | 80 | </div> |
81 | <div·class="code"> | 81 | <div·class="code"> |
82 | <span·class="id"·title="keyword">Primitive</span>·<a·id="float"·class="idref"·href="#float"><span·class="id"·title="axiom">float</span></a>·:=·#<span·class="id"·title="var">float64_type</span>.<br/> | 82 | <span·class="id"·title="keyword">Primitive</span>·<a·id="float"·class="idref"·href="#float"><span·class="id"·title="axiom">float</span></a>·:=·#<span·class="id"·title="var">float64_type</span>.<br/> |
83 | <span·class="id"·title="keyword">Register</span>·<span·class="id"·title="var">float</span>·<span·class="id"·title="keyword">as</span>·<span·class="id"·title="var">num.float.type</span>.<br/> | 83 | <span·class="id"·title="keyword">Register</span>·<span·class="id"·title="var">float</span>·<span·class="id"·title="keyword">as</span>·<span·class="id"·title="var">num.float.type</span>.<br/> |
84 | <br/> | 84 | <br/> |
Offset 91, 30 lines modified | Offset 91, 30 lines modified | ||
91 | <span·class="id"·title="keyword">Definition</span>·<a·id="printer"·class="idref"·href="#printer"><span·class="id"·title="definition">printer</span></a>·(<a·id="x:5"·class="idref"·href="#x:5"><span·class="id"·title="binder">x</span></a>·:·<a·class="idref"·href="Coq.Floats.PrimFloat.html#float_wrapper"><span·class="id"·title="record">float_wrapper</span></a>)·:·<span·class="id"·title="var">float</span>·:=·<a·class="idref"·href="Coq.Floats.PrimFloat.html#float_wrap"><span·class="id"·title="projection">float_wrap</span></a>·<a·class="idref"·href="Coq.Floats.PrimFloat.html#x:5"><span·class="id"·title="variable">x</span></a>.<br/> | 91 | <span·class="id"·title="keyword">Definition</span>·<a·id="printer"·class="idref"·href="#printer"><span·class="id"·title="definition">printer</span></a>·(<a·id="x:5"·class="idref"·href="#x:5"><span·class="id"·title="binder">x</span></a>·:·<a·class="idref"·href="Coq.Floats.PrimFloat.html#float_wrapper"><span·class="id"·title="record">float_wrapper</span></a>)·:·<span·class="id"·title="var">float</span>·:=·<a·class="idref"·href="Coq.Floats.PrimFloat.html#float_wrap"><span·class="id"·title="projection">float_wrap</span></a>·<a·class="idref"·href="Coq.Floats.PrimFloat.html#x:5"><span·class="id"·title="variable">x</span></a>.<br/> |
92 | <span·class="id"·title="keyword">Definition</span>·<a·id="parser"·class="idref"·href="#parser"><span·class="id"·title="definition">parser</span></a>·(<a·id="x:6"·class="idref"·href="#x:6"><span·class="id"·title="binder">x</span></a>·:·<span·class="id"·title="var">float</span>)·:·<span·class="id"·title="var">float</span>·:=·<a·class="idref"·href="Coq.Floats.PrimFloat.html#x:6"><span·class="id"·title="variable">x</span></a>.<br/> | 92 | <span·class="id"·title="keyword">Definition</span>·<a·id="parser"·class="idref"·href="#parser"><span·class="id"·title="definition">parser</span></a>·(<a·id="x:6"·class="idref"·href="#x:6"><span·class="id"·title="binder">x</span></a>·:·<span·class="id"·title="var">float</span>)·:·<span·class="id"·title="var">float</span>·:=·<a·class="idref"·href="Coq.Floats.PrimFloat.html#x:6"><span·class="id"·title="variable">x</span></a>.<br/> |
93 | <br/> | 93 | <br/> |
94 | </div> | 94 | </div> |
95 | <div·class="doc"> | 95 | <div·class="doc"> |
96 | <a·id="lab | 96 | <a·id="lab949"></a><h2·class="section">Syntax·support</h2> |
97 | </div> | 97 | </div> |
98 | <div·class="code"> | 98 | <div·class="code"> |
99 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Import</span>·<a·id="PrimFloatNotationsInternalA"·class="idref"·href="#PrimFloatNotationsInternalA"><span·class="id"·title="module">PrimFloatNotationsInternalA</span></a>.<br/> | 99 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Import</span>·<a·id="PrimFloatNotationsInternalA"·class="idref"·href="#PrimFloatNotationsInternalA"><span·class="id"·title="module">PrimFloatNotationsInternalA</span></a>.<br/> |
100 | <span·class="id"·title="keyword">Declare·Scope</span>·<span·class="id"·title="var">float_scope</span>.<br/> | 100 | <span·class="id"·title="keyword">Declare·Scope</span>·<span·class="id"·title="var">float_scope</span>.<br/> |
101 | <span·class="id"·title="keyword">Delimit</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">float_scope</span>·<span·class="id"·title="keyword">with</span>·<span·class="id"·title="var">float</span>.<br/> | 101 | <span·class="id"·title="keyword">Delimit</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">float_scope</span>·<span·class="id"·title="keyword">with</span>·<span·class="id"·title="var">float</span>.<br/> |
102 | <span·class="id"·title="keyword">Bind·Scope</span>·<span·class="id"·title="var">float_scope</span>·<span·class="id"·title="keyword">with</span>·<span·class="id"·title="var">float</span>.<br/> | 102 | <span·class="id"·title="keyword">Bind·Scope</span>·<span·class="id"·title="var">float_scope</span>·<span·class="id"·title="keyword">with</span>·<span·class="id"·title="var">float</span>.<br/> |
103 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Floats.PrimFloat.html#PrimFloatNotationsInternalA"><span·class="id"·title="module">PrimFloatNotationsInternalA</span></a>.<br/> | 103 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Floats.PrimFloat.html#PrimFloatNotationsInternalA"><span·class="id"·title="module">PrimFloatNotationsInternalA</span></a>.<br/> |
104 | <span·class="id"·title="keyword">Number·Notation</span>·<span·class="id"·title="var">float</span>·<a·class="idref"·href="Coq.Floats.PrimFloat.html#parser"><span·class="id"·title="definition">parser</span></a>·<a·class="idref"·href="Coq.Floats.PrimFloat.html#printer"><span·class="id"·title="definition">printer</span></a>·:·<span·class="id"·title="var">float_scope</span>.<br/> | 104 | <span·class="id"·title="keyword">Number·Notation</span>·<span·class="id"·title="var">float</span>·<a·class="idref"·href="Coq.Floats.PrimFloat.html#parser"><span·class="id"·title="definition">parser</span></a>·<a·class="idref"·href="Coq.Floats.PrimFloat.html#printer"><span·class="id"·title="definition">printer</span></a>·:·<span·class="id"·title="var">float_scope</span>.<br/> |
105 | <br/> | 105 | <br/> |
106 | </div> | 106 | </div> |
107 | <div·class="doc"> | 107 | <div·class="doc"> |
108 | <a·id="lab | 108 | <a·id="lab950"></a><h2·class="section">Floating-point·operators</h2> |
109 | </div> | 109 | </div> |
110 | <div·class="code"> | 110 | <div·class="code"> |
111 | <span·class="id"·title="keyword">Primitive</span>·<a·id="classify"·class="idref"·href="#classify"><span·class="id"·title="axiom">classify</span></a>·:=·#<span·class="id"·title="var">float64_classify</span>.<br/> | 111 | <span·class="id"·title="keyword">Primitive</span>·<a·id="classify"·class="idref"·href="#classify"><span·class="id"·title="axiom">classify</span></a>·:=·#<span·class="id"·title="var">float64_classify</span>.<br/> |
112 | <br/> | 112 | <br/> |
113 | <span·class="id"·title="keyword">Primitive</span>·<a·id="abs"·class="idref"·href="#abs"><span·class="id"·title="axiom">abs</span></a>·:=·#<span·class="id"·title="var">float64_abs</span>.<br/> | 113 | <span·class="id"·title="keyword">Primitive</span>·<a·id="abs"·class="idref"·href="#abs"><span·class="id"·title="axiom">abs</span></a>·:=·#<span·class="id"·title="var">float64_abs</span>.<br/> |
Offset 181, 15 lines modified | Offset 181, 15 lines modified | ||
181 | <span·class="id"·title="keyword">Notation</span>·<a·id="6e32edb097de448d43e1d8a509d61efe"·class="idref"·href="#6e32edb097de448d43e1d8a509d61efe"><span·class="id"·title="notation">"</span></a>x·/·y"·:=·(<span·class="id"·title="var">div</span>·<span·class="id"·title="var">x</span>·<span·class="id"·title="var">y</span>)·:·<span·class="id"·title="var">float_scope</span>.<br/> | 181 | <span·class="id"·title="keyword">Notation</span>·<a·id="6e32edb097de448d43e1d8a509d61efe"·class="idref"·href="#6e32edb097de448d43e1d8a509d61efe"><span·class="id"·title="notation">"</span></a>x·/·y"·:=·(<span·class="id"·title="var">div</span>·<span·class="id"·title="var">x</span>·<span·class="id"·title="var">y</span>)·:·<span·class="id"·title="var">float_scope</span>.<br/> |
182 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Floats.PrimFloat.html#PrimFloatNotationsInternalB"><span·class="id"·title="module">PrimFloatNotationsInternalB</span></a>.<br/> | 182 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Floats.PrimFloat.html#PrimFloatNotationsInternalB"><span·class="id"·title="module">PrimFloatNotationsInternalB</span></a>.<br/> |
183 | <br/> | 183 | <br/> |
184 | </div> | 184 | </div> |
185 | <div·class="doc"> | 185 | <div·class="doc"> |
186 | <a·id="lab | 186 | <a·id="lab951"></a><h2·class="section">Conversions</h2> |
187 | <div·class="paragraph">·</div> | 187 | <div·class="paragraph">·</div> |
188 | ·<span·class="inlinecode"><span·class="id"·title="var">of_uint63</span></span>:·convert·a·primitive·unsigned·integer·into·a·float·value. | 188 | ·<span·class="inlinecode"><span·class="id"·title="var">of_uint63</span></span>:·convert·a·primitive·unsigned·integer·into·a·float·value. |
189 | ····The·value·is·rounded·if·need·be.· | 189 | ····The·value·is·rounded·if·need·be.· |
190 | </div> | 190 | </div> |
191 | <div·class="code"> | 191 | <div·class="code"> |
Offset 220, 15 lines modified | Offset 220, 15 lines modified | ||
220 | <div·class="code"> | 220 | <div·class="code"> |
221 | <span·class="id"·title="keyword">Primitive</span>·<a·id="normfr_mantissa"·class="idref"·href="#normfr_mantissa"><span·class="id"·title="axiom">normfr_mantissa</span></a>·:=·#<span·class="id"·title="var">float64_normfr_mantissa</span>.<br/> | 221 | <span·class="id"·title="keyword">Primitive</span>·<a·id="normfr_mantissa"·class="idref"·href="#normfr_mantissa"><span·class="id"·title="axiom">normfr_mantissa</span></a>·:=·#<span·class="id"·title="var">float64_normfr_mantissa</span>.<br/> |
222 | <br/> | 222 | <br/> |
223 | </div> | 223 | </div> |
224 | <div·class="doc"> | 224 | <div·class="doc"> |
225 | <a·id="lab | 225 | <a·id="lab952"></a><h2·class="section">Exponent·manipulation·functions</h2> |
226 | ·<span·class="inlinecode"><span·class="id"·title="var">frshiftexp</span></span>:·convert·a·float·to·fractional·part·in·[0.5,·1.) | 226 | ·<span·class="inlinecode"><span·class="id"·title="var">frshiftexp</span></span>:·convert·a·float·to·fractional·part·in·[0.5,·1.) |
227 | and·integer·part.· | 227 | and·integer·part.· |
228 | </div> | 228 | </div> |
229 | <div·class="code"> | 229 | <div·class="code"> |
230 | <span·class="id"·title="keyword">Primitive</span>·<a·id="frshiftexp"·class="idref"·href="#frshiftexp"><span·class="id"·title="axiom">frshiftexp</span></a>·:=·#<span·class="id"·title="var">float64_frshiftexp</span>.<br/> | 230 | <span·class="id"·title="keyword">Primitive</span>·<a·id="frshiftexp"·class="idref"·href="#frshiftexp"><span·class="id"·title="axiom">frshiftexp</span></a>·:=·#<span·class="id"·title="var">float64_frshiftexp</span>.<br/> |
231 | <br/> | 231 | <br/> |
Offset 240, 15 lines modified | Offset 240, 15 lines modified | ||
240 | <div·class="code"> | 240 | <div·class="code"> |
241 | <span·class="id"·title="keyword">Primitive</span>·<a·id="ldshiftexp"·class="idref"·href="#ldshiftexp"><span·class="id"·title="axiom">ldshiftexp</span></a>·:=·#<span·class="id"·title="var">float64_ldshiftexp</span>.<br/> | 241 | <span·class="id"·title="keyword">Primitive</span>·<a·id="ldshiftexp"·class="idref"·href="#ldshiftexp"><span·class="id"·title="axiom">ldshiftexp</span></a>·:=·#<span·class="id"·title="var">float64_ldshiftexp</span>.<br/> |
242 | <br/> | 242 | <br/> |
243 | </div> | 243 | </div> |
244 | <div·class="doc"> | 244 | <div·class="doc"> |
245 | <a·id="lab | 245 | <a·id="lab953"></a><h2·class="section">Predecesor/Successor·functions</h2> |
246 | <div·class="paragraph">·</div> | 246 | <div·class="paragraph">·</div> |
247 | ·<span·class="inlinecode"><span·class="id"·title="var">next_up</span></span>:·return·the·next·float·towards·positive·infinity.· | 247 | ·<span·class="inlinecode"><span·class="id"·title="var">next_up</span></span>:·return·the·next·float·towards·positive·infinity.· |
248 | </div> | 248 | </div> |
249 | <div·class="code"> | 249 | <div·class="code"> |
250 | <span·class="id"·title="keyword">Primitive</span>·<a·id="next_up"·class="idref"·href="#next_up"><span·class="id"·title="axiom">next_up</span></a>·:=·#<span·class="id"·title="var">float64_next_up</span>.<br/> | 250 | <span·class="id"·title="keyword">Primitive</span>·<a·id="next_up"·class="idref"·href="#next_up"><span·class="id"·title="axiom">next_up</span></a>·:=·#<span·class="id"·title="var">float64_next_up</span>.<br/> |
Offset 262, 15 lines modified | Offset 262, 15 lines modified | ||
262 | <div·class="code"> | 262 | <div·class="code"> |
263 | <span·class="id"·title="keyword">Primitive</span>·<a·id="next_down"·class="idref"·href="#next_down"><span·class="id"·title="axiom">next_down</span></a>·:=·#<span·class="id"·title="var">float64_next_down</span>.<br/> | 263 | <span·class="id"·title="keyword">Primitive</span>·<a·id="next_down"·class="idref"·href="#next_down"><span·class="id"·title="axiom">next_down</span></a>·:=·#<span·class="id"·title="var">float64_next_down</span>.<br/> |
264 | <br/> | 264 | <br/> |
265 | </div> | 265 | </div> |
266 | <div·class="doc"> | 266 | <div·class="doc"> |
Max diff block lines reached; 5155/14566 bytes (35.39%) of diff not shown. |
Offset 48, 24 lines modified | Offset 48, 24 lines modified | ||
48 | <br/> | 48 | <br/> |
49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.ZArith.ZArith.html#"><span·class="id"·title="library">ZArith</span></a>·<a·class="idref"·href="Coq.Floats.FloatClass.html#"><span·class="id"·title="library">FloatClass</span></a>.<br/> | 49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.ZArith.ZArith.html#"><span·class="id"·title="library">ZArith</span></a>·<a·class="idref"·href="Coq.Floats.FloatClass.html#"><span·class="id"·title="library">FloatClass</span></a>.<br/> |
50 | <br/> | 50 | <br/> |
51 | </div> | 51 | </div> |
52 | <div·class="doc"> | 52 | <div·class="doc"> |
53 | <a·id="lab | 53 | <a·id="lab960"></a><h1·class="section">Specification·of·floating-point·arithmetic</h1> |
54 | <div·class="paragraph">·</div> | 54 | <div·class="paragraph">·</div> |
55 | This·specification·is·mostly·borrowed·from·the·<span·class="inlinecode"><span·class="id"·title="var">IEEE754.Binary</span></span>·module | 55 | This·specification·is·mostly·borrowed·from·the·<span·class="inlinecode"><span·class="id"·title="var">IEEE754.Binary</span></span>·module |
56 | of·the·Flocq·library·(see·<a·href="http://flocq.gforge.inria.fr/">http://flocq.gforge.inria.fr/</a>)· | 56 | of·the·Flocq·library·(see·<a·href="http://flocq.gforge.inria.fr/">http://flocq.gforge.inria.fr/</a>)· |
57 | <div·class="paragraph">·</div> | 57 | <div·class="paragraph">·</div> |
58 | <a·id="lab | 58 | <a·id="lab961"></a><h2·class="section">Inductive·specification·of·floating-point·numbers</h2> |
59 | <div·class="paragraph">·</div> | 59 | <div·class="paragraph">·</div> |
60 | Similar·to·<span·class="inlinecode"><span·class="id"·title="var">Flocq.IEEE754.Binary.full_float</span></span>,·but·with·no·NaN·payload.· | 60 | Similar·to·<span·class="inlinecode"><span·class="id"·title="var">Flocq.IEEE754.Binary.full_float</span></span>,·but·with·no·NaN·payload.· |
61 | </div> | 61 | </div> |
62 | <div·class="code"> | 62 | <div·class="code"> |
Offset 75, 15 lines modified | Offset 75, 15 lines modified | ||
75 | |·<a·id="S754_nan"·class="idref"·href="#S754_nan"><span·class="id"·title="constructor">S754_nan</span></a><br/> | 75 | |·<a·id="S754_nan"·class="idref"·href="#S754_nan"><span·class="id"·title="constructor">S754_nan</span></a><br/> |
76 | |·<a·id="S754_finite"·class="idref"·href="#S754_finite"><span·class="id"·title="constructor">S754_finite</span></a>·(<a·id="s:5"·class="idref"·href="#s:5"><span·class="id"·title="binder">s</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>)·(<a·id="m:6"·class="idref"·href="#m:6"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#positive"><span·class="id"·title="inductive">positive</span></a>)·(<a·id="e:7"·class="idref"·href="#e:7"><span·class="id"·title="binder">e</span></a>·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>).<br/> | 76 | |·<a·id="S754_finite"·class="idref"·href="#S754_finite"><span·class="id"·title="constructor">S754_finite</span></a>·(<a·id="s:5"·class="idref"·href="#s:5"><span·class="id"·title="binder">s</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>)·(<a·id="m:6"·class="idref"·href="#m:6"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#positive"><span·class="id"·title="inductive">positive</span></a>)·(<a·id="e:7"·class="idref"·href="#e:7"><span·class="id"·title="binder">e</span></a>·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>).<br/> |
77 | <br/> | 77 | <br/> |
78 | </div> | 78 | </div> |
79 | <div·class="doc"> | 79 | <div·class="doc"> |
80 | <a·id="lab | 80 | <a·id="lab962"></a><h2·class="section">Parameterized·definitions</h2> |
81 | <div·class="paragraph">·</div> | 81 | <div·class="paragraph">·</div> |
82 | <span·class="inlinecode"><span·class="id"·title="var">prec</span></span>·is·the·number·of·bits·of·the·mantissa·including·the·implicit·one; | 82 | <span·class="inlinecode"><span·class="id"·title="var">prec</span></span>·is·the·number·of·bits·of·the·mantissa·including·the·implicit·one; |
83 | <span·class="inlinecode"><span·class="id"·title="var">emax</span></span>·is·the·exponent·of·the·infinities. | 83 | <span·class="inlinecode"><span·class="id"·title="var">emax</span></span>·is·the·exponent·of·the·infinities. |
Offset 238, 15 lines modified | Offset 238, 15 lines modified | ||
238 | <span·class="id"·title="keyword">end</span>.<br/> | 238 | <span·class="id"·title="keyword">end</span>.<br/> |
239 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Floats.SpecFloat.html#FloatOps.Rounding"><span·class="id"·title="section">Rounding</span></a>.<br/> | 239 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Floats.SpecFloat.html#FloatOps.Rounding"><span·class="id"·title="section">Rounding</span></a>.<br/> |
240 | <br/> | 240 | <br/> |
241 | </div> | 241 | </div> |
242 | <div·class="doc"> | 242 | <div·class="doc"> |
243 | <a·id="lab | 243 | <a·id="lab963"></a><h2·class="section">Define·operations</h2> |
244 | </div> | 244 | </div> |
245 | <div·class="code"> | 245 | <div·class="code"> |
246 | <br/> | 246 | <br/> |
247 | <span·class="id"·title="keyword">Definition</span>·<a·id="SFopp"·class="idref"·href="#SFopp"><span·class="id"·title="definition">SFopp</span></a>·<a·id="x:70"·class="idref"·href="#x:70"><span·class="id"·title="binder">x</span></a>·:=<br/> | 247 | <span·class="id"·title="keyword">Definition</span>·<a·id="SFopp"·class="idref"·href="#SFopp"><span·class="id"·title="definition">SFopp</span></a>·<a·id="x:70"·class="idref"·href="#x:70"><span·class="id"·title="binder">x</span></a>·:=<br/> |
248 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Floats.SpecFloat.html#x:70"><span·class="id"·title="variable">x</span></a>·<span·class="id"·title="keyword">with</span><br/> | 248 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Floats.SpecFloat.html#x:70"><span·class="id"·title="variable">x</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab2 | 49 | <a·id="lab245"></a><h1·class="section">Bytes</h1> |
50 | </div> | 50 | </div> |
51 | <div·class="code"> | 51 | <div·class="code"> |
52 | <br/> | 52 | <br/> |
53 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Ltac.html#"><span·class="id"·title="library">Coq.Init.Ltac</span></a>.<br/> | 53 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Ltac.html#"><span·class="id"·title="library">Coq.Init.Ltac</span></a>.<br/> |
54 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Datatypes.html#"><span·class="id"·title="library">Coq.Init.Datatypes</span></a>.<br/> | 54 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Datatypes.html#"><span·class="id"·title="library">Coq.Init.Datatypes</span></a>.<br/> |
Offset 53, 15 lines modified | Offset 53, 15 lines modified | ||
53 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Ltac.html#"><span·class="id"·title="library">Ltac</span></a>.<br/> | 53 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Ltac.html#"><span·class="id"·title="library">Ltac</span></a>.<br/> |
54 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Logic.html#"><span·class="id"·title="library">Logic</span></a>.<br/> | 54 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Logic.html#"><span·class="id"·title="library">Logic</span></a>.<br/> |
55 | <br/> | 55 | <br/> |
56 | </div> | 56 | </div> |
57 | <div·class="doc"> | 57 | <div·class="doc"> |
58 | <a·id="lab2 | 58 | <a·id="lab269"></a><h1·class="section">Datatypes·with·zero·and·one·element</h1> |
59 | <div·class="paragraph">·</div> | 59 | <div·class="paragraph">·</div> |
60 | ·<span·class="inlinecode"><span·class="id"·title="var">Empty_set</span></span>·is·a·datatype·with·no·inhabitant· | 60 | ·<span·class="inlinecode"><span·class="id"·title="var">Empty_set</span></span>·is·a·datatype·with·no·inhabitant· |
61 | </div> | 61 | </div> |
62 | <div·class="code"> | 62 | <div·class="code"> |
Offset 87, 15 lines modified | Offset 87, 15 lines modified | ||
87 | <span·class="id"·title="keyword">Register</span>·<span·class="id"·title="var">unit</span>·<span·class="id"·title="keyword">as</span>·<span·class="id"·title="var">core.unit.type</span>.<br/> | 87 | <span·class="id"·title="keyword">Register</span>·<span·class="id"·title="var">unit</span>·<span·class="id"·title="keyword">as</span>·<span·class="id"·title="var">core.unit.type</span>.<br/> |
88 | <span·class="id"·title="keyword">Register</span>·<span·class="id"·title="var">tt</span>·<span·class="id"·title="keyword">as</span>·<span·class="id"·title="var">core.unit.tt</span>.<br/> | 88 | <span·class="id"·title="keyword">Register</span>·<span·class="id"·title="var">tt</span>·<span·class="id"·title="keyword">as</span>·<span·class="id"·title="var">core.unit.tt</span>.<br/> |
89 | <br/> | 89 | <br/> |
90 | </div> | 90 | </div> |
91 | <div·class="doc"> | 91 | <div·class="doc"> |
92 | <a·id="lab2 | 92 | <a·id="lab270"></a><h1·class="section">The·boolean·datatype</h1> |
93 | <div·class="paragraph">·</div> | 93 | <div·class="paragraph">·</div> |
94 | ·<span·class="inlinecode"><span·class="id"·title="var">bool</span></span>·is·the·datatype·of·the·boolean·values·<span·class="inlinecode"><span·class="id"·title="var">true</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">false</span></span>· | 94 | ·<span·class="inlinecode"><span·class="id"·title="var">bool</span></span>·is·the·datatype·of·the·boolean·values·<span·class="inlinecode"><span·class="id"·title="var">true</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">false</span></span>· |
95 | </div> | 95 | </div> |
96 | <div·class="code"> | 96 | <div·class="code"> |
Offset 258, 15 lines modified | Offset 258, 15 lines modified | ||
258 | <span·class="id"·title="keyword">Register</span>·<span·class="id"·title="var">BoolSpecT</span>·<span·class="id"·title="keyword">as</span>·<span·class="id"·title="var">core.BoolSpec.BoolSpecT</span>.<br/> | 258 | <span·class="id"·title="keyword">Register</span>·<span·class="id"·title="var">BoolSpecT</span>·<span·class="id"·title="keyword">as</span>·<span·class="id"·title="var">core.BoolSpec.BoolSpecT</span>.<br/> |
259 | <span·class="id"·title="keyword">Register</span>·<span·class="id"·title="var">BoolSpecF</span>·<span·class="id"·title="keyword">as</span>·<span·class="id"·title="var">core.BoolSpec.BoolSpecF</span>.<br/> | 259 | <span·class="id"·title="keyword">Register</span>·<span·class="id"·title="var">BoolSpecF</span>·<span·class="id"·title="keyword">as</span>·<span·class="id"·title="var">core.BoolSpec.BoolSpecF</span>.<br/> |
260 | <br/> | 260 | <br/> |
261 | </div> | 261 | </div> |
262 | <div·class="doc"> | 262 | <div·class="doc"> |
263 | <a·id="lab2 | 263 | <a·id="lab271"></a><h1·class="section">Peano·natural·numbers</h1> |
264 | <div·class="paragraph">·</div> | 264 | <div·class="paragraph">·</div> |
265 | ·<span·class="inlinecode"><span·class="id"·title="var">nat</span></span>·is·the·datatype·of·natural·numbers·built·from·<span·class="inlinecode"><span·class="id"·title="var">O</span></span>·and·successor·<span·class="inlinecode"><span·class="id"·title="var">S</span></span>; | 265 | ·<span·class="inlinecode"><span·class="id"·title="var">nat</span></span>·is·the·datatype·of·natural·numbers·built·from·<span·class="inlinecode"><span·class="id"·title="var">O</span></span>·and·successor·<span·class="inlinecode"><span·class="id"·title="var">S</span></span>; |
266 | ····note·that·the·constructor·name·is·the·letter·O. | 266 | ····note·that·the·constructor·name·is·the·letter·O. |
267 | ····Numbers·in·<span·class="inlinecode"><span·class="id"·title="var">nat</span></span>·can·be·denoted·using·a·decimal·notation; | 267 | ····Numbers·in·<span·class="inlinecode"><span·class="id"·title="var">nat</span></span>·can·be·denoted·using·a·decimal·notation; |
268 | ····e.g.·<span·class="inlinecode">3%<span·class="id"·title="var">nat</span></span>·abbreviates·<span·class="inlinecode"><span·class="id"·title="var">S</span></span>·<span·class="inlinecode">(<span·class="id"·title="var">S</span></span>·<span·class="inlinecode">(<span·class="id"·title="var">S</span></span>·<span·class="inlinecode"><span·class="id"·title="var">O</span>))</span>· | 268 | ····e.g.·<span·class="inlinecode">3%<span·class="id"·title="var">nat</span></span>·abbreviates·<span·class="inlinecode"><span·class="id"·title="var">S</span></span>·<span·class="inlinecode">(<span·class="id"·title="var">S</span></span>·<span·class="inlinecode">(<span·class="id"·title="var">S</span></span>·<span·class="inlinecode"><span·class="id"·title="var">O</span>))</span>· |
Offset 293, 15 lines modified | Offset 293, 15 lines modified | ||
293 | <span·class="id"·title="keyword">Register</span>·<span·class="id"·title="var">O</span>·<span·class="id"·title="keyword">as</span>·<span·class="id"·title="var">num.nat.O</span>.<br/> | 293 | <span·class="id"·title="keyword">Register</span>·<span·class="id"·title="var">O</span>·<span·class="id"·title="keyword">as</span>·<span·class="id"·title="var">num.nat.O</span>.<br/> |
294 | <span·class="id"·title="keyword">Register</span>·<span·class="id"·title="var">S</span>·<span·class="id"·title="keyword">as</span>·<span·class="id"·title="var">num.nat.S</span>.<br/> | 294 | <span·class="id"·title="keyword">Register</span>·<span·class="id"·title="var">S</span>·<span·class="id"·title="keyword">as</span>·<span·class="id"·title="var">num.nat.S</span>.<br/> |
295 | <br/> | 295 | <br/> |
296 | </div> | 296 | </div> |
297 | <div·class="doc"> | 297 | <div·class="doc"> |
298 | <a·id="lab2 | 298 | <a·id="lab272"></a><h1·class="section">Container·datatypes</h1> |
299 | </div> | 299 | </div> |
300 | <div·class="code"> | 300 | <div·class="code"> |
301 | <br/> | 301 | <br/> |
302 | <br/> | 302 | <br/> |
Offset 498, 15 lines modified | Offset 498, 15 lines modified | ||
498 | <br/> | 498 | <br/> |
499 | <br/> | 499 | <br/> |
500 | </div> | 500 | </div> |
501 | <div·class="doc"> | 501 | <div·class="doc"> |
502 | <a·id="lab2 | 502 | <a·id="lab273"></a><h1·class="section">The·comparison·datatype</h1> |
503 | </div> | 503 | </div> |
504 | <div·class="code"> | 504 | <div·class="code"> |
505 | <br/> | 505 | <br/> |
506 | <span·class="id"·title="keyword">Inductive</span>·<a·id="comparison"·class="idref"·href="#comparison"><span·class="id"·title="definition,·inductive"><span·id="comparison_rect"·class="id"><span·id="comparison_ind"·class="id"><span·id="comparison_rec"·class="id"><span·id="comparison_sind"·class="id">comparison</span></span></span></span></span></a>·:·<span·class="id"·title="keyword">Set</span>·:=<br/> | 506 | <span·class="id"·title="keyword">Inductive</span>·<a·id="comparison"·class="idref"·href="#comparison"><span·class="id"·title="definition,·inductive"><span·id="comparison_rect"·class="id"><span·id="comparison_ind"·class="id"><span·id="comparison_rec"·class="id"><span·id="comparison_sind"·class="id">comparison</span></span></span></span></span></a>·:·<span·class="id"·title="keyword">Set</span>·:=<br/> |
507 | |·<a·id="Eq"·class="idref"·href="#Eq"><span·class="id"·title="constructor">Eq</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#comparison:103"><span·class="id"·title="inductive">comparison</span></a><br/> | 507 | |·<a·id="Eq"·class="idref"·href="#Eq"><span·class="id"·title="constructor">Eq</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#comparison:103"><span·class="id"·title="inductive">comparison</span></a><br/> |
Offset 616, 15 lines modified | Offset 616, 15 lines modified | ||
616 | <span·class="id"·title="keyword">Lemma</span>·<a·id="CompSpec2Type"·class="idref"·href="#CompSpec2Type"><span·class="id"·title="lemma">CompSpec2Type</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="A:138"·class="idref"·href="#A:138"><span·class="id"·title="binder">A</span></a>·(<a·id="eq:139"·class="idref"·href="#eq:139"><span·class="id"·title="binder">eq</span></a>·<a·id="lt:140"·class="idref"·href="#lt:140"><span·class="id"·title="binder">lt</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#A:138"><span·class="id"·title="variable">A</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.Init.Datatypes.html#A:138"><span·class="id"·title="variable">A</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><span·class="id"·title="keyword">Prop</span>)·<a·id="x:141"·class="idref"·href="#x:141"><span·class="id"·title="binder">x</span></a>·<a·id="y:142"·class="idref"·href="#y:142"><span·class="id"·title="binder">y</span></a>·<a·id="c:143"·class="idref"·href="#c:143"><span·class="id"·title="binder">c</span></a>,<br/> | 616 | <span·class="id"·title="keyword">Lemma</span>·<a·id="CompSpec2Type"·class="idref"·href="#CompSpec2Type"><span·class="id"·title="lemma">CompSpec2Type</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="A:138"·class="idref"·href="#A:138"><span·class="id"·title="binder">A</span></a>·(<a·id="eq:139"·class="idref"·href="#eq:139"><span·class="id"·title="binder">eq</span></a>·<a·id="lt:140"·class="idref"·href="#lt:140"><span·class="id"·title="binder">lt</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#A:138"><span·class="id"·title="variable">A</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.Init.Datatypes.html#A:138"><span·class="id"·title="variable">A</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><span·class="id"·title="keyword">Prop</span>)·<a·id="x:141"·class="idref"·href="#x:141"><span·class="id"·title="binder">x</span></a>·<a·id="y:142"·class="idref"·href="#y:142"><span·class="id"·title="binder">y</span></a>·<a·id="c:143"·class="idref"·href="#c:143"><span·class="id"·title="binder">c</span></a>,<br/> |
617 | <a·class="idref"·href="Coq.Init.Datatypes.html#CompSpec"><span·class="id"·title="definition">CompSpec</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#eq:139"><span·class="id"·title="variable">eq</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#lt:140"><span·class="id"·title="variable">lt</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#x:141"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#y:142"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#c:143"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#CompSpecT"><span·class="id"·title="definition">CompSpecT</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#eq:139"><span·class="id"·title="variable">eq</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#lt:140"><span·class="id"·title="variable">lt</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#x:141"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#y:142"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#c:143"><span·class="id"·title="variable">c</span></a>.<br/> | 617 | <a·class="idref"·href="Coq.Init.Datatypes.html#CompSpec"><span·class="id"·title="definition">CompSpec</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#eq:139"><span·class="id"·title="variable">eq</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#lt:140"><span·class="id"·title="variable">lt</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#x:141"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#y:142"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#c:143"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#CompSpecT"><span·class="id"·title="definition">CompSpecT</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#eq:139"><span·class="id"·title="variable">eq</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#lt:140"><span·class="id"·title="variable">lt</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#x:141"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#y:142"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#c:143"><span·class="id"·title="variable">c</span></a>.<br/> |
618 | · | 618 | · |
619 | <br/> | 619 | <br/> |
620 | </div> | 620 | </div> |
621 | <div·class="doc"> | 621 | <div·class="doc"> |
622 | <a·id="lab2 | 622 | <a·id="lab274"></a><h1·class="section">Misc·Other·Datatypes</h1> |
623 | <div·class="paragraph">·</div> | 623 | <div·class="paragraph">·</div> |
624 | ·<span·class="inlinecode"><span·class="id"·title="var">identity</span></span>·<span·class="inlinecode"><span·class="id"·title="var">A</span></span>·<span·class="inlinecode"><span·class="id"·title="var">a</span></span>·is·the·family·of·datatypes·on·<span·class="inlinecode"><span·class="id"·title="var">A</span></span>·whose·sole·non-empty | 624 | ·<span·class="inlinecode"><span·class="id"·title="var">identity</span></span>·<span·class="inlinecode"><span·class="id"·title="var">A</span></span>·<span·class="inlinecode"><span·class="id"·title="var">a</span></span>·is·the·family·of·datatypes·on·<span·class="inlinecode"><span·class="id"·title="var">A</span></span>·whose·sole·non-empty |
625 | ····member·is·the·singleton·datatype·<span·class="inlinecode"><span·class="id"·title="var">identity</span></span>·<span·class="inlinecode"><span·class="id"·title="var">A</span></span>·<span·class="inlinecode"><span·class="id"·title="var">a</span></span>·<span·class="inlinecode"><span·class="id"·title="var">a</span></span>·whose | 625 | ····member·is·the·singleton·datatype·<span·class="inlinecode"><span·class="id"·title="var">identity</span></span>·<span·class="inlinecode"><span·class="id"·title="var">A</span></span>·<span·class="inlinecode"><span·class="id"·title="var">a</span></span>·<span·class="inlinecode"><span·class="id"·title="var">a</span></span>·whose |
626 | ····sole·inhabitant·is·denoted·<span·class="inlinecode"><span·class="id"·title="var">identity_refl</span></span>·<span·class="inlinecode"><span·class="id"·title="var">A</span></span>·<span·class="inlinecode"><span·class="id"·title="var">a</span></span>· | 626 | ····sole·inhabitant·is·denoted·<span·class="inlinecode"><span·class="id"·title="var">identity_refl</span></span>·<span·class="inlinecode"><span·class="id"·title="var">A</span></span>·<span·class="inlinecode"><span·class="id"·title="var">a</span></span>· |
627 | </div> | 627 | </div> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab2 | 49 | <a·id="lab246"></a><h1·class="section">Decimal·numbers</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·These·numbers·coded·in·base·10·will·be·used·for·parsing·and·printing | 51 | ·These·numbers·coded·in·base·10·will·be·used·for·parsing·and·printing |
52 | ····other·Coq·numeral·datatypes·in·an·human-readable·way. | 52 | ····other·Coq·numeral·datatypes·in·an·human-readable·way. |
53 | ····See·the·<span·class="inlinecode"><span·class="id"·title="var">Number</span></span>·<span·class="inlinecode"><span·class="id"·title="keyword">Notation</span></span>·command. | 53 | ····See·the·<span·class="inlinecode"><span·class="id"·title="var">Number</span></span>·<span·class="inlinecode"><span·class="id"·title="keyword">Notation</span></span>·command. |
54 | ····We·represent·numbers·in·base·10·as·lists·of·decimal·digits, | 54 | ····We·represent·numbers·in·base·10·as·lists·of·decimal·digits, |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab2 | 49 | <a·id="lab268"></a><h1·class="section">Hexadecimal·numbers</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·These·numbers·coded·in·base·16·will·be·used·for·parsing·and·printing | 51 | ·These·numbers·coded·in·base·16·will·be·used·for·parsing·and·printing |
52 | ····other·Coq·numeral·datatypes·in·an·human-readable·way. | 52 | ····other·Coq·numeral·datatypes·in·an·human-readable·way. |
53 | ····See·the·<span·class="inlinecode"><span·class="id"·title="var">Number</span></span>·<span·class="inlinecode"><span·class="id"·title="keyword">Notation</span></span>·command. | 53 | ····See·the·<span·class="inlinecode"><span·class="id"·title="var">Number</span></span>·<span·class="inlinecode"><span·class="id"·title="keyword">Notation</span></span>·command. |
54 | ····We·represent·numbers·in·base·16·as·lists·of·hexadecimal·digits, | 54 | ····We·represent·numbers·in·base·16·as·lists·of·hexadecimal·digits, |
Offset 159, 15 lines modified | Offset 159, 15 lines modified | ||
000009e0:·7222·3e42·3c2f·7370·616e·3e29·203a·203c··r">B</span>)·:·< | 000009e0:·7222·3e42·3c2f·7370·616e·3e29·203a·203c··r">B</span>)·:·< | ||
000009f0:·7370·616e·2063·6c61·7373·3d22·6964·2220··span·class="id"· | 000009f0:·7370·616e·2063·6c61·7373·3d22·6964·2220··span·class="id"· | ||
00000a00:·7469·746c·653d·2276·6172·223e·7479·7065··title="var">type | 00000a00:·7469·746c·653d·2276·6172·223e·7479·7065··title="var">type | ||
00000a10:·5f73·636f·7065·3c2f·7370·616e·3e2e·3c62··_scope</span>.<b | 00000a10:·5f73·636f·7065·3c2f·7370·616e·3e2e·3c62··_scope</span>.<b | ||
00000a20:·722f·3e0a·0a3c·6272·2f3e·0a3c·2f64·6976··r/>..<br/>.</div | 00000a20:·722f·3e0a·0a3c·6272·2f3e·0a3c·2f64·6976··r/>..<br/>.</div | ||
00000a30:·3e0a·0a3c·6469·7620·636c·6173·733d·2264··>..<div·class="d | 00000a30:·3e0a·0a3c·6469·7620·636c·6173·733d·2264··>..<div·class="d | ||
00000a40:·6f63·223e·0a3c·6120·6964·3d22·6c61·6232··oc">.<a·id="lab2 | 00000a40:·6f63·223e·0a3c·6120·6964·3d22·6c61·6232··oc">.<a·id="lab2 | ||
00000a50:·3 | 00000a50:·3631·223e·3c2f·613e·3c68·3120·636c·6173··61"></a><h1·clas | ||
00000a60:·733d·2273·6563·7469·6f6e·223e·5072·6f70··s="section">Prop | 00000a60:·733d·2273·6563·7469·6f6e·223e·5072·6f70··s="section">Prop | ||
00000a70:·6f73·6974·696f·6e61·6c20·636f·6e6e·6563··ositional·connec | 00000a70:·6f73·6974·696f·6e61·6c20·636f·6e6e·6563··ositional·connec | ||
00000a80:·7469·7665·733c·2f68·313e·0a0a·3c64·6976··tives</h1>..<div | 00000a80:·7469·7665·733c·2f68·313e·0a0a·3c64·6976··tives</h1>..<div | ||
00000a90:·2063·6c61·7373·3d22·7061·7261·6772·6170···class="paragrap | 00000a90:·2063·6c61·7373·3d22·7061·7261·6772·6170···class="paragrap | ||
00000aa0:·6822·3e20·3c2f·6469·763e·0a0a·203c·7370··h">·</div>..·<sp | 00000aa0:·6822·3e20·3c2f·6469·763e·0a0a·203c·7370··h">·</div>..·<sp | ||
00000ab0:·616e·2063·6c61·7373·3d22·696e·6c69·6e65··an·class="inline | 00000ab0:·616e·2063·6c61·7373·3d22·696e·6c69·6e65··an·class="inline | ||
00000ac0:·636f·6465·223e·3c73·7061·6e20·636c·6173··code"><span·clas | 00000ac0:·636f·6465·223e·3c73·7061·6e20·636c·6173··code"><span·clas | ||
Offset 4442, 15 lines modified | Offset 4442, 15 lines modified | ||
00011590:·3436·3735·6130·6163·6633·6561·3932·6161··4675a0acf3ea92aa | 00011590:·3436·3735·6130·6163·6633·6561·3932·6161··4675a0acf3ea92aa | ||
000115a0:·6261·6464·223e·3c73·7061·6e20·636c·6173··badd"><span·clas | 000115a0:·6261·6464·223e·3c73·7061·6e20·636c·6173··badd"><span·clas | ||
000115b0:·733d·2269·6422·2074·6974·6c65·3d22·6e6f··s="id"·title="no | 000115b0:·733d·2269·6422·2074·6974·6c65·3d22·6e6f··s="id"·title="no | ||
000115c0:·7461·7469·6f6e·223e·293c·2f73·7061·6e3e··tation">)</span> | 000115c0:·7461·7469·6f6e·223e·293c·2f73·7061·6e3e··tation">)</span> | ||
000115d0:·3c2f·613e·2e3c·6272·2f3e·0a0a·3c62·722f··</a>.<br/>..<br/ | 000115d0:·3c2f·613e·2e3c·6272·2f3e·0a0a·3c62·722f··</a>.<br/>..<br/ | ||
000115e0:·3e0a·3c2f·6469·763e·0a0a·3c64·6976·2063··>.</div>..<div·c | 000115e0:·3e0a·3c2f·6469·763e·0a0a·3c64·6976·2063··>.</div>..<div·c | ||
000115f0:·6c61·7373·3d22·646f·6322·3e0a·3c61·2069··lass="doc">.<a·i | 000115f0:·6c61·7373·3d22·646f·6322·3e0a·3c61·2069··lass="doc">.<a·i | ||
00011600:·643d·226c·6162·323 | 00011600:·643d·226c·6162·3236·3222·3e3c·2f61·3e3c··d="lab262"></a>< | ||
00011610:·6831·2063·6c61·7373·3d22·7365·6374·696f··h1·class="sectio | 00011610:·6831·2063·6c61·7373·3d22·7365·6374·696f··h1·class="sectio | ||
00011620:·6e22·3e46·6972·7374·2d6f·7264·6572·2071··n">First-order·q | 00011620:·6e22·3e46·6972·7374·2d6f·7264·6572·2071··n">First-order·q | ||
00011630:·7561·6e74·6966·6965·7273·3c2f·6831·3e0a··uantifiers</h1>. | 00011630:·7561·6e74·6966·6965·7273·3c2f·6831·3e0a··uantifiers</h1>. | ||
00011640:·0a3c·6469·7620·636c·6173·733d·2270·6172··.<div·class="par | 00011640:·0a3c·6469·7620·636c·6173·733d·2270·6172··.<div·class="par | ||
00011650:·6167·7261·7068·223e·203c·2f64·6976·3e0a··agraph">·</div>. | 00011650:·6167·7261·7068·223e·203c·2f64·6976·3e0a··agraph">·</div>. | ||
00011660:·0a20·3c73·7061·6e20·636c·6173·733d·2269··.·<span·class="i | 00011660:·0a20·3c73·7061·6e20·636c·6173·733d·2269··.·<span·class="i | ||
00011670:·6e6c·696e·6563·6f64·6522·3e3c·7370·616e··nlinecode"><span | 00011670:·6e6c·696e·6563·6f64·6522·3e3c·7370·616e··nlinecode"><span | ||
Offset 6440, 15 lines modified | Offset 6440, 15 lines modified | ||
00019270:·2063·6c61·7373·3d22·6964·2220·7469·746c···class="id"·titl | 00019270:·2063·6c61·7373·3d22·6964·2220·7469·746c···class="id"·titl | ||
00019280:·653d·2273·6563·7469·6f6e·223e·756e·6976··e="section">univ | 00019280:·653d·2273·6563·7469·6f6e·223e·756e·6976··e="section">univ | ||
00019290:·6572·7361·6c5f·7175·616e·7469·6669·6361··ersal_quantifica | 00019290:·6572·7361·6c5f·7175·616e·7469·6669·6361··ersal_quantifica | ||
000192a0:·7469·6f6e·3c2f·7370·616e·3e3c·2f61·3e2e··tion</span></a>. | 000192a0:·7469·6f6e·3c2f·7370·616e·3e3c·2f61·3e2e··tion</span></a>. | ||
000192b0:·3c62·722f·3e0a·0a3c·6272·2f3e·0a3c·2f64··<br/>..<br/>.</d | 000192b0:·3c62·722f·3e0a·0a3c·6272·2f3e·0a3c·2f64··<br/>..<br/>.</d | ||
000192c0:·6976·3e0a·0a3c·6469·7620·636c·6173·733d··iv>..<div·class= | 000192c0:·6976·3e0a·0a3c·6469·7620·636c·6173·733d··iv>..<div·class= | ||
000192d0:·2264·6f63·223e·0a3c·6120·6964·3d22·6c61··"doc">.<a·id="la | 000192d0:·2264·6f63·223e·0a3c·6120·6964·3d22·6c61··"doc">.<a·id="la | ||
000192e0:·6232·3 | 000192e0:·6232·3633·223e·3c2f·613e·3c68·3120·636c··b263"></a><h1·cl | ||
000192f0:·6173·733d·2273·6563·7469·6f6e·223e·4571··ass="section">Eq | 000192f0:·6173·733d·2273·6563·7469·6f6e·223e·4571··ass="section">Eq | ||
00019300:·7561·6c69·7479·3c2f·6831·3e0a·0a3c·6469··uality</h1>..<di | 00019300:·7561·6c69·7479·3c2f·6831·3e0a·0a3c·6469··uality</h1>..<di | ||
00019310:·7620·636c·6173·733d·2270·6172·6167·7261··v·class="paragra | 00019310:·7620·636c·6173·733d·2270·6172·6167·7261··v·class="paragra | ||
00019320:·7068·223e·203c·2f64·6976·3e0a·0a20·3c73··ph">·</div>..·<s | 00019320:·7068·223e·203c·2f64·6976·3e0a·0a20·3c73··ph">·</div>..·<s | ||
00019330:·7061·6e20·636c·6173·733d·2269·6e6c·696e··pan·class="inlin | 00019330:·7061·6e20·636c·6173·733d·2269·6e6c·696e··pan·class="inlin | ||
00019340:·6563·6f64·6522·3e3c·7370·616e·2063·6c61··ecode"><span·cla | 00019340:·6563·6f64·6522·3e3c·7370·616e·2063·6c61··ecode"><span·cla | ||
00019350:·7373·3d22·6964·2220·7469·746c·653d·2276··ss="id"·title="v | 00019350:·7373·3d22·6964·2220·7469·746c·653d·2276··ss="id"·title="v | ||
Offset 16761, 15 lines modified | Offset 16761, 15 lines modified | ||
00041780:·3a74·7970·655f·7363·6f70·653a·785f·272d··:type_scope:x_'- | 00041780:·3a74·7970·655f·7363·6f70·653a·785f·272d··:type_scope:x_'- | ||
00041790:·2667·743b·275f·7822·3e3c·7370·616e·2063··>'_x"><span·c | 00041790:·2667·743b·275f·7822·3e3c·7370·616e·2063··>'_x"><span·c | ||
000417a0:·6c61·7373·3d22·6964·2220·7469·746c·653d··lass="id"·title= | 000417a0:·6c61·7373·3d22·6964·2220·7469·746c·653d··lass="id"·title= | ||
000417b0:·226e·6f74·6174·696f·6e22·3e29·3c2f·7370··"notation">)</sp | 000417b0:·226e·6f74·6174·696f·6e22·3e29·3c2f·7370··"notation">)</sp | ||
000417c0:·616e·3e3c·2f61·3e2e·3c62·722f·3e0a·0a3c··an></a>.<br/>..< | 000417c0:·616e·3e3c·2f61·3e2e·3c62·722f·3e0a·0a3c··an></a>.<br/>..< | ||
000417d0:·6272·2f3e·0a3c·2f64·6976·3e0a·0a3c·6469··br/>.</div>..<di | 000417d0:·6272·2f3e·0a3c·2f64·6976·3e0a·0a3c·6469··br/>.</div>..<di | ||
000417e0:·7620·636c·6173·733d·2264·6f63·223e·0a3c··v·class="doc">.< | 000417e0:·7620·636c·6173·733d·2264·6f63·223e·0a3c··v·class="doc">.< | ||
000417f0:·6120·6964·3d22·6c61·6232·3 | 000417f0:·6120·6964·3d22·6c61·6232·3634·223e·3c2f··a·id="lab264"></ | ||
00041800:·613e·3c68·3120·636c·6173·733d·2273·6563··a><h1·class="sec | 00041800:·613e·3c68·3120·636c·6173·733d·2273·6563··a><h1·class="sec | ||
00041810:·7469·6f6e·223e·4265·696e·6720·696e·6861··tion">Being·inha | 00041810:·7469·6f6e·223e·4265·696e·6720·696e·6861··tion">Being·inha | ||
00041820:·6269·7465·643c·2f68·313e·0a0a·3c64·6976··bited</h1>..<div | 00041820:·6269·7465·643c·2f68·313e·0a0a·3c64·6976··bited</h1>..<div | ||
00041830:·2063·6c61·7373·3d22·7061·7261·6772·6170···class="paragrap | 00041830:·2063·6c61·7373·3d22·7061·7261·6772·6170···class="paragrap | ||
00041840:·6822·3e20·3c2f·6469·763e·0a0a·2054·6865··h">·</div>..·The | 00041840:·6822·3e20·3c2f·6469·763e·0a0a·2054·6865··h">·</div>..·The | ||
00041850:·2070·7265·6469·6361·7465·203c·7370·616e···predicate·<span | 00041850:·2070·7265·6469·6361·7465·203c·7370·616e···predicate·<span | ||
00041860:·2063·6c61·7373·3d22·696e·6c69·6e65·636f···class="inlineco | 00041860:·2063·6c61·7373·3d22·696e·6c69·6e65·636f···class="inlineco |
Offset 50, 15 lines modified | Offset 50, 15 lines modified | ||
50 | <span·class="id"·title="keyword">Require</span>·<a·class="idref"·href="Coq.Init.Decimal.html#"><span·class="id"·title="library">Decimal</span></a>·<a·class="idref"·href="Coq.Init.Hexadecimal.html#"><span·class="id"·title="library">Hexadecimal</span></a>·<a·class="idref"·href="Coq.Init.Number.html#"><span·class="id"·title="library">Number</span></a>.<br/> | 50 | <span·class="id"·title="keyword">Require</span>·<a·class="idref"·href="Coq.Init.Decimal.html#"><span·class="id"·title="library">Decimal</span></a>·<a·class="idref"·href="Coq.Init.Hexadecimal.html#"><span·class="id"·title="library">Hexadecimal</span></a>·<a·class="idref"·href="Coq.Init.Number.html#"><span·class="id"·title="library">Number</span></a>.<br/> |
51 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">nat_scope</span>.<br/> | 51 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">nat_scope</span>.<br/> |
52 | <br/> | 52 | <br/> |
53 | </div> | 53 | </div> |
54 | <div·class="doc"> | 54 | <div·class="doc"> |
55 | <a·id="lab2 | 55 | <a·id="lab247"></a><h1·class="section">Peano·natural·numbers,·definitions·of·operations</h1> |
56 | <div·class="paragraph">·</div> | 56 | <div·class="paragraph">·</div> |
57 | ·This·file·is·meant·to·be·used·as·a·whole·module, | 57 | ·This·file·is·meant·to·be·used·as·a·whole·module, |
58 | ····without·importing·it,·leading·to·qualified·definitions | 58 | ····without·importing·it,·leading·to·qualified·definitions |
59 | ····(e.g.·Nat.pred)· | 59 | ····(e.g.·Nat.pred)· |
60 | </div> | 60 | </div> |
Offset 67, 15 lines modified | Offset 67, 15 lines modified | ||
67 | <br/> | 67 | <br/> |
68 | <span·class="id"·title="keyword">Definition</span>·<a·id="t"·class="idref"·href="#t"><span·class="id"·title="definition">t</span></a>·:=·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>.<br/> | 68 | <span·class="id"·title="keyword">Definition</span>·<a·id="t"·class="idref"·href="#t"><span·class="id"·title="definition">t</span></a>·:=·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>.<br/> |
69 | <br/> | 69 | <br/> |
70 | </div> | 70 | </div> |
71 | <div·class="doc"> | 71 | <div·class="doc"> |
72 | <a·id="lab2 | 72 | <a·id="lab248"></a><h2·class="section">Constants</h2> |
73 | </div> | 73 | </div> |
74 | <div·class="code"> | 74 | <div·class="code"> |
75 | <br/> | 75 | <br/> |
76 | <span·class="id"·title="keyword">Local·Notation</span>·<a·id=":::'0'"·class="idref"·href="#:::'0'"><span·class="id"·title="notation">"</span></a>0"·:=·<a·class="idref"·href="Coq.Init.Datatypes.html#O"><span·class="id"·title="constructor">O</span></a>.<br/> | 76 | <span·class="id"·title="keyword">Local·Notation</span>·<a·id=":::'0'"·class="idref"·href="#:::'0'"><span·class="id"·title="notation">"</span></a>0"·:=·<a·class="idref"·href="Coq.Init.Datatypes.html#O"><span·class="id"·title="constructor">O</span></a>.<br/> |
77 | <span·class="id"·title="keyword">Local·Notation</span>·<a·id=":::'1'"·class="idref"·href="#:::'1'"><span·class="id"·title="notation">"</span></a>1"·:=·(<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#O"><span·class="id"·title="constructor">O</span></a>).<br/> | 77 | <span·class="id"·title="keyword">Local·Notation</span>·<a·id=":::'1'"·class="idref"·href="#:::'1'"><span·class="id"·title="notation">"</span></a>1"·:=·(<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#O"><span·class="id"·title="constructor">O</span></a>).<br/> |
Offset 86, 15 lines modified | Offset 86, 15 lines modified | ||
86 | <span·class="id"·title="keyword">Definition</span>·<a·id="one"·class="idref"·href="#one"><span·class="id"·title="definition">one</span></a>·:=·1.<br/> | 86 | <span·class="id"·title="keyword">Definition</span>·<a·id="one"·class="idref"·href="#one"><span·class="id"·title="definition">one</span></a>·:=·1.<br/> |
87 | <span·class="id"·title="keyword">Definition</span>·<a·id="two"·class="idref"·href="#two"><span·class="id"·title="definition">two</span></a>·:=·2.<br/> | 87 | <span·class="id"·title="keyword">Definition</span>·<a·id="two"·class="idref"·href="#two"><span·class="id"·title="definition">two</span></a>·:=·2.<br/> |
88 | <br/> | 88 | <br/> |
89 | </div> | 89 | </div> |
90 | <div·class="doc"> | 90 | <div·class="doc"> |
91 | <a·id="lab2 | 91 | <a·id="lab249"></a><h2·class="section">Basic·operations</h2> |
92 | </div> | 92 | </div> |
93 | <div·class="code"> | 93 | <div·class="code"> |
94 | <br/> | 94 | <br/> |
95 | <span·class="id"·title="keyword">Definition</span>·<a·id="succ"·class="idref"·href="#succ"><span·class="id"·title="definition">succ</span></a>·:=·<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>.<br/> | 95 | <span·class="id"·title="keyword">Definition</span>·<a·id="succ"·class="idref"·href="#succ"><span·class="id"·title="definition">succ</span></a>·:=·<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>.<br/> |
Offset 155, 15 lines modified | Offset 155, 15 lines modified | ||
155 | <br/> | 155 | <br/> |
156 | <span·class="id"·title="keyword">Register</span>·<span·class="id"·title="var">sub</span>·<span·class="id"·title="keyword">as</span>·<span·class="id"·title="var">num.nat.sub</span>.<br/> | 156 | <span·class="id"·title="keyword">Register</span>·<span·class="id"·title="var">sub</span>·<span·class="id"·title="keyword">as</span>·<span·class="id"·title="var">num.nat.sub</span>.<br/> |
157 | <br/> | 157 | <br/> |
158 | </div> | 158 | </div> |
159 | <div·class="doc"> | 159 | <div·class="doc"> |
160 | <a·id="lab25 | 160 | <a·id="lab250"></a><h2·class="section">Comparisons</h2> |
161 | </div> | 161 | </div> |
162 | <div·class="code"> | 162 | <div·class="code"> |
163 | <br/> | 163 | <br/> |
164 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="eqb"·class="idref"·href="#eqb"><span·class="id"·title="definition">eqb</span></a>·<a·id="n:17"·class="idref"·href="#n:17"><span·class="id"·title="binder">n</span></a>·<a·id="m:18"·class="idref"·href="#m:18"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>·:=<br/> | 164 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="eqb"·class="idref"·href="#eqb"><span·class="id"·title="definition">eqb</span></a>·<a·id="n:17"·class="idref"·href="#n:17"><span·class="id"·title="binder">n</span></a>·<a·id="m:18"·class="idref"·href="#m:18"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>·:=<br/> |
165 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Init.Nat.html#n:17"><span·class="id"·title="variable">n</span></a>,·<a·class="idref"·href="Coq.Init.Nat.html#m:18"><span·class="id"·title="variable">m</span></a>·<span·class="id"·title="keyword">with</span><br/> | 165 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Init.Nat.html#n:17"><span·class="id"·title="variable">n</span></a>,·<a·class="idref"·href="Coq.Init.Nat.html#m:18"><span·class="id"·title="variable">m</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 201, 15 lines modified | Offset 201, 15 lines modified | ||
201 | <br/> | 201 | <br/> |
202 | <span·class="id"·title="keyword">Infix</span>·<a·id="4a243c6f4b9487508e7110341eeedb0b"·class="idref"·href="#4a243c6f4b9487508e7110341eeedb0b"><span·class="id"·title="notation">"</span></a>?="·:=·<a·class="idref"·href="Coq.Init.Nat.html#compare"><span·class="id"·title="definition">compare</span></a>·(<span·class="id"·title="tactic">at</span>·<span·class="id"·title="keyword">level</span>·70)·:·<span·class="id"·title="var">nat_scope</span>.<br/> | 202 | <span·class="id"·title="keyword">Infix</span>·<a·id="4a243c6f4b9487508e7110341eeedb0b"·class="idref"·href="#4a243c6f4b9487508e7110341eeedb0b"><span·class="id"·title="notation">"</span></a>?="·:=·<a·class="idref"·href="Coq.Init.Nat.html#compare"><span·class="id"·title="definition">compare</span></a>·(<span·class="id"·title="tactic">at</span>·<span·class="id"·title="keyword">level</span>·70)·:·<span·class="id"·title="var">nat_scope</span>.<br/> |
203 | <br/> | 203 | <br/> |
204 | </div> | 204 | </div> |
205 | <div·class="doc"> | 205 | <div·class="doc"> |
206 | <a·id="lab25 | 206 | <a·id="lab251"></a><h2·class="section">Minimum,·maximum</h2> |
207 | </div> | 207 | </div> |
208 | <div·class="code"> | 208 | <div·class="code"> |
209 | <br/> | 209 | <br/> |
210 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="max"·class="idref"·href="#max"><span·class="id"·title="definition">max</span></a>·<a·id="n:34"·class="idref"·href="#n:34"><span·class="id"·title="binder">n</span></a>·<a·id="m:35"·class="idref"·href="#m:35"><span·class="id"·title="binder">m</span></a>·:=<br/> | 210 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="max"·class="idref"·href="#max"><span·class="id"·title="definition">max</span></a>·<a·id="n:34"·class="idref"·href="#n:34"><span·class="id"·title="binder">n</span></a>·<a·id="m:35"·class="idref"·href="#m:35"><span·class="id"·title="binder">m</span></a>·:=<br/> |
211 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Init.Nat.html#n:34"><span·class="id"·title="variable">n</span></a>,·<a·class="idref"·href="Coq.Init.Nat.html#m:35"><span·class="id"·title="variable">m</span></a>·<span·class="id"·title="keyword">with</span><br/> | 211 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Init.Nat.html#n:34"><span·class="id"·title="variable">n</span></a>,·<a·class="idref"·href="Coq.Init.Nat.html#m:35"><span·class="id"·title="variable">m</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 226, 15 lines modified | Offset 226, 15 lines modified | ||
226 | |·<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<span·class="id"·title="var">n'</span>,·<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<span·class="id"·title="var">m'</span>·=>·<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·(<a·class="idref"·href="Coq.Init.Nat.html#min:41"><span·class="id"·title="definition">min</span></a>·<span·class="id"·title="var">n'</span>·<span·class="id"·title="var">m'</span>)<br/> | 226 | |·<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<span·class="id"·title="var">n'</span>,·<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<span·class="id"·title="var">m'</span>·=>·<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·(<a·class="idref"·href="Coq.Init.Nat.html#min:41"><span·class="id"·title="definition">min</span></a>·<span·class="id"·title="var">n'</span>·<span·class="id"·title="var">m'</span>)<br/> |
227 | <span·class="id"·title="keyword">end</span>.<br/> | 227 | <span·class="id"·title="keyword">end</span>.<br/> |
228 | <br/> | 228 | <br/> |
229 | </div> | 229 | </div> |
230 | <div·class="doc"> | 230 | <div·class="doc"> |
231 | <a·id="lab25 | 231 | <a·id="lab252"></a><h2·class="section">Parity·tests</h2> |
232 | </div> | 232 | </div> |
233 | <div·class="code"> | 233 | <div·class="code"> |
234 | <br/> | 234 | <br/> |
235 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="even"·class="idref"·href="#even"><span·class="id"·title="definition">even</span></a>·<a·id="n:44"·class="idref"·href="#n:44"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>·:=<br/> | 235 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="even"·class="idref"·href="#even"><span·class="id"·title="definition">even</span></a>·<a·id="n:44"·class="idref"·href="#n:44"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>·:=<br/> |
236 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Init.Nat.html#n:44"><span·class="id"·title="variable">n</span></a>·<span·class="id"·title="keyword">with</span><br/> | 236 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Init.Nat.html#n:44"><span·class="id"·title="variable">n</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 246, 15 lines modified | Offset 246, 15 lines modified | ||
246 | <br/> | 246 | <br/> |
247 | <span·class="id"·title="keyword">Definition</span>·<a·id="odd"·class="idref"·href="#odd"><span·class="id"·title="definition">odd</span></a>·<a·id="n:47"·class="idref"·href="#n:47"><span·class="id"·title="binder">n</span></a>·:=·<a·class="idref"·href="Coq.Init.Datatypes.html#negb"><span·class="id"·title="definition">negb</span></a>·(<a·class="idref"·href="Coq.Init.Nat.html#even"><span·class="id"·title="definition">even</span></a>·<a·class="idref"·href="Coq.Init.Nat.html#n:47"><span·class="id"·title="variable">n</span></a>).<br/> | 247 | <span·class="id"·title="keyword">Definition</span>·<a·id="odd"·class="idref"·href="#odd"><span·class="id"·title="definition">odd</span></a>·<a·id="n:47"·class="idref"·href="#n:47"><span·class="id"·title="binder">n</span></a>·:=·<a·class="idref"·href="Coq.Init.Datatypes.html#negb"><span·class="id"·title="definition">negb</span></a>·(<a·class="idref"·href="Coq.Init.Nat.html#even"><span·class="id"·title="definition">even</span></a>·<a·class="idref"·href="Coq.Init.Nat.html#n:47"><span·class="id"·title="variable">n</span></a>).<br/> |
248 | <br/> | 248 | <br/> |
249 | </div> | 249 | </div> |
250 | <div·class="doc"> | 250 | <div·class="doc"> |
251 | <a·id="lab25 | 251 | <a·id="lab253"></a><h2·class="section">Power</h2> |
252 | </div> | 252 | </div> |
253 | <div·class="code"> | 253 | <div·class="code"> |
254 | <br/> | 254 | <br/> |
255 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="pow"·class="idref"·href="#pow"><span·class="id"·title="definition">pow</span></a>·<a·id="n:48"·class="idref"·href="#n:48"><span·class="id"·title="binder">n</span></a>·<a·id="m:49"·class="idref"·href="#m:49"><span·class="id"·title="binder">m</span></a>·:=<br/> | 255 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="pow"·class="idref"·href="#pow"><span·class="id"·title="definition">pow</span></a>·<a·id="n:48"·class="idref"·href="#n:48"><span·class="id"·title="binder">n</span></a>·<a·id="m:49"·class="idref"·href="#m:49"><span·class="id"·title="binder">m</span></a>·:=<br/> |
256 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Init.Nat.html#m:49"><span·class="id"·title="variable">m</span></a>·<span·class="id"·title="keyword">with</span><br/> | 256 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Init.Nat.html#m:49"><span·class="id"·title="variable">m</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 264, 15 lines modified | Offset 264, 15 lines modified | ||
264 | <br/> | 264 | <br/> |
265 | <span·class="id"·title="keyword">where</span>·<a·id="81fd94e251a61ee523cdd7855774ae7c"·class="idref"·href="#81fd94e251a61ee523cdd7855774ae7c"><span·class="id"·title="notation">"</span></a>n·^·m"·:=·(<a·class="idref"·href="Coq.Init.Nat.html#pow:50"><span·class="id"·title="definition">pow</span></a>·<span·class="id"·title="var">n</span>·<span·class="id"·title="var">m</span>)·:·<span·class="id"·title="var">nat_scope</span>.<br/> | 265 | <span·class="id"·title="keyword">where</span>·<a·id="81fd94e251a61ee523cdd7855774ae7c"·class="idref"·href="#81fd94e251a61ee523cdd7855774ae7c"><span·class="id"·title="notation">"</span></a>n·^·m"·:=·(<a·class="idref"·href="Coq.Init.Nat.html#pow:50"><span·class="id"·title="definition">pow</span></a>·<span·class="id"·title="var">n</span>·<span·class="id"·title="var">m</span>)·:·<span·class="id"·title="var">nat_scope</span>.<br/> |
266 | <br/> | 266 | <br/> |
267 | </div> | 267 | </div> |
268 | <div·class="doc"> | 268 | <div·class="doc"> |
269 | <a·id="lab25 | 269 | <a·id="lab254"></a><h2·class="section">Tail-recursive·versions·of·<span·class="inlinecode"><span·class="id"·title="var">add</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">mul</span></span></h2> |
270 | </div> | 270 | </div> |
271 | <div·class="code"> | 271 | <div·class="code"> |
272 | <br/> | 272 | <br/> |
273 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="tail_add"·class="idref"·href="#tail_add"><span·class="id"·title="definition">tail_add</span></a>·<a·id="n:52"·class="idref"·href="#n:52"><span·class="id"·title="binder">n</span></a>·<a·id="m:53"·class="idref"·href="#m:53"><span·class="id"·title="binder">m</span></a>·:=<br/> | 273 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="tail_add"·class="idref"·href="#tail_add"><span·class="id"·title="definition">tail_add</span></a>·<a·id="n:52"·class="idref"·href="#n:52"><span·class="id"·title="binder">n</span></a>·<a·id="m:53"·class="idref"·href="#m:53"><span·class="id"·title="binder">m</span></a>·:=<br/> |
274 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Init.Nat.html#n:52"><span·class="id"·title="variable">n</span></a>·<span·class="id"·title="keyword">with</span><br/> | 274 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Init.Nat.html#n:52"><span·class="id"·title="variable">n</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Max diff block lines reached; 7657/17103 bytes (44.77%) of diff not shown. |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab2 | 49 | <a·id="lab244"></a><h1·class="section">Decimal·or·Hexadecimal·numbers</h1> |
50 | </div> | 50 | </div> |
51 | <div·class="code"> | 51 | <div·class="code"> |
52 | <br/> | 52 | <br/> |
53 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Decimal.html#"><span·class="id"·title="library">Decimal</span></a>·<a·class="idref"·href="Coq.Init.Hexadecimal.html#"><span·class="id"·title="library">Hexadecimal</span></a>.<br/> | 53 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Decimal.html#"><span·class="id"·title="library">Decimal</span></a>·<a·class="idref"·href="Coq.Init.Hexadecimal.html#"><span·class="id"·title="library">Hexadecimal</span></a>.<br/> |
Offset 51, 15 lines modified | Offset 51, 15 lines modified | ||
51 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Logic.html#"><span·class="id"·title="library">Logic</span></a>.<br/> | 51 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Logic.html#"><span·class="id"·title="library">Logic</span></a>.<br/> |
52 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Specif.html#"><span·class="id"·title="library">Specif</span></a>.<br/> | 52 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Specif.html#"><span·class="id"·title="library">Specif</span></a>.<br/> |
53 | <br/> | 53 | <br/> |
54 | </div> | 54 | </div> |
55 | <div·class="doc"> | 55 | <div·class="doc"> |
56 | <a·id="lab26 | 56 | <a·id="lab266"></a><h1·class="section">Useful·tactics</h1> |
57 | <div·class="paragraph">·</div> | 57 | <div·class="paragraph">·</div> |
58 | ·Ex·falso·quodlibet·:·a·tactic·for·proving·False·instead·of·the·current·goal. | 58 | ·Ex·falso·quodlibet·:·a·tactic·for·proving·False·instead·of·the·current·goal. |
59 | ····This·is·just·a·nicer·name·for·tactics·such·as·<span·class="inlinecode"><span·class="id"·title="tactic">cut</span></span>·<span·class="inlinecode"><span·class="id"·title="var">False</span></span>.· | 59 | ····This·is·just·a·nicer·name·for·tactics·such·as·<span·class="inlinecode"><span·class="id"·title="tactic">cut</span></span>·<span·class="inlinecode"><span·class="id"·title="var">False</span></span>.· |
60 | </div> | 60 | </div> |
61 | <div·class="code"> | 61 | <div·class="code"> |
Offset 372, 15 lines modified | Offset 372, 15 lines modified | ||
372 | <span·class="id"·title="keyword">Tactic·Notation</span>·"dependent"·"destruction"·<span·class="id"·title="var">ident</span>(<span·class="id"·title="var">H</span>)·:=<br/> | 372 | <span·class="id"·title="keyword">Tactic·Notation</span>·"dependent"·"destruction"·<span·class="id"·title="var">ident</span>(<span·class="id"·title="var">H</span>)·:=<br/> |
373 | <span·class="id"·title="tactic">fail</span>·"To·use·dependent·destruction,·first·[Require·Import·Coq.Program.Equality.]".<br/> | 373 | <span·class="id"·title="tactic">fail</span>·"To·use·dependent·destruction,·first·[Require·Import·Coq.Program.Equality.]".<br/> |
374 | <br/> | 374 | <br/> |
375 | </div> | 375 | </div> |
376 | <div·class="doc"> | 376 | <div·class="doc"> |
377 | <a·id="lab26 | 377 | <a·id="lab267"></a><h3·class="section"><span·class="inlinecode"><span·class="id"·title="var">inversion_sigma</span></span></h3> |
378 | ·The·built-in·<span·class="inlinecode"><span·class="id"·title="tactic">inversion</span></span>·will·frequently·leave·equalities·of | 378 | ·The·built-in·<span·class="inlinecode"><span·class="id"·title="tactic">inversion</span></span>·will·frequently·leave·equalities·of |
379 | ····dependent·pairs.··When·the·first·type·in·the·pair·is·an·hProp·or | 379 | ····dependent·pairs.··When·the·first·type·in·the·pair·is·an·hProp·or |
380 | ····otherwise·simplifies,·<span·class="inlinecode"><span·class="id"·title="var">inversion_sigma</span></span>·is·useful;·it·will·replace | 380 | ····otherwise·simplifies,·<span·class="inlinecode"><span·class="id"·title="var">inversion_sigma</span></span>·is·useful;·it·will·replace |
381 | ····the·equality·of·pairs·with·a·pair·of·equalities,·one·involving·a | 381 | ····the·equality·of·pairs·with·a·pair·of·equalities,·one·involving·a |
382 | ····term·casted·along·the·other.··This·might·also·prove·useful·for | 382 | ····term·casted·along·the·other.··This·might·also·prove·useful·for |
383 | ····writing·a·version·of·<span·class="inlinecode"><span·class="id"·title="tactic">inversion</span></span>·/·<span·class="inlinecode"><span·class="id"·title="tactic">dependent</span></span>·<span·class="inlinecode"><span·class="id"·title="tactic">destruction</span></span>·which | 383 | ····writing·a·version·of·<span·class="inlinecode"><span·class="id"·title="tactic">inversion</span></span>·/·<span·class="inlinecode"><span·class="id"·title="tactic">dependent</span></span>·<span·class="inlinecode"><span·class="id"·title="tactic">destruction</span></span>·which |
384 | ····does·not·lose·information,·i.e.,·does·not·turn·a·goal·which·is | 384 | ····does·not·lose·information,·i.e.,·does·not·turn·a·goal·which·is |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab2 | 49 | <a·id="lab265"></a><h1·class="section">The·tauto·and·intuition·tactics</h1> |
50 | </div> | 50 | </div> |
51 | <div·class="code"> | 51 | <div·class="code"> |
52 | <br/> | 52 | <br/> |
53 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Notations.html#"><span·class="id"·title="library">Notations</span></a>.<br/> | 53 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Notations.html#"><span·class="id"·title="library">Notations</span></a>.<br/> |
54 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Ltac.html#"><span·class="id"·title="library">Ltac</span></a>.<br/> | 54 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Ltac.html#"><span·class="id"·title="library">Ltac</span></a>.<br/> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab27 | 49 | <a·id="lab275"></a><h1·class="section">This·module·proves·the·validity·of</h1> |
50 | <ul·class="doclist"> | 50 | <ul·class="doclist"> |
51 | <li>·well-founded·recursion·(also·known·as·course·of·values) | 51 | <li>·well-founded·recursion·(also·known·as·course·of·values) |
52 | </li> | 52 | </li> |
53 | <li>·well-founded·induction | 53 | <li>·well-founded·induction |
Offset 51, 15 lines modified | Offset 51, 15 lines modified | ||
51 | <br/> | 51 | <br/> |
52 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> | 52 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> |
53 | <br/> | 53 | <br/> |
54 | </div> | 54 | </div> |
55 | <div·class="doc"> | 55 | <div·class="doc"> |
56 | <a·id="lab | 56 | <a·id="lab731"></a><h1·class="section">Basics:·definition·of·polymorphic·lists·and·some·operations</h1> |
57 | <div·class="paragraph">·</div> | 57 | <div·class="paragraph">·</div> |
58 | ·The·definition·of·<span·class="inlinecode"><span·class="id"·title="var">list</span></span>·is·now·in·<span·class="inlinecode"><span·class="id"·title="var">Init</span>/<span·class="id"·title="var">Datatypes</span></span>, | 58 | ·The·definition·of·<span·class="inlinecode"><span·class="id"·title="var">list</span></span>·is·now·in·<span·class="inlinecode"><span·class="id"·title="var">Init</span>/<span·class="id"·title="var">Datatypes</span></span>, |
59 | ····as·well·as·the·definitions·of·<span·class="inlinecode"><span·class="id"·title="var">length</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">app</span></span>· | 59 | ····as·well·as·the·definitions·of·<span·class="inlinecode"><span·class="id"·title="var">length</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">app</span></span>· |
60 | </div> | 60 | </div> |
61 | <div·class="code"> | 61 | <div·class="code"> |
Offset 143, 15 lines modified | Offset 143, 15 lines modified | ||
143 | <br/> | 143 | <br/> |
144 | <span·class="id"·title="keyword">Variable</span>·<a·id="Facts.A"·class="idref"·href="#Facts.A"><span·class="id"·title="variable">A</span></a>·:·<span·class="id"·title="keyword">Type</span>.<br/> | 144 | <span·class="id"·title="keyword">Variable</span>·<a·id="Facts.A"·class="idref"·href="#Facts.A"><span·class="id"·title="variable">A</span></a>·:·<span·class="id"·title="keyword">Type</span>.<br/> |
145 | <br/> | 145 | <br/> |
146 | </div> | 146 | </div> |
147 | <div·class="doc"> | 147 | <div·class="doc"> |
148 | <a·id="lab | 148 | <a·id="lab732"></a><h3·class="section">Generic·facts</h3> |
149 | <div·class="paragraph">·</div> | 149 | <div·class="paragraph">·</div> |
150 | ·Discrimination· | 150 | ·Discrimination· |
151 | </div> | 151 | </div> |
152 | <div·class="code"> | 152 | <div·class="code"> |
153 | <span·class="id"·title="keyword">Theorem</span>·<a·id="nil_cons"·class="idref"·href="#nil_cons"><span·class="id"·title="lemma">nil_cons</span></a>·(<a·id="x:16"·class="idref"·href="#x:16"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Lists.List.html#Facts.A"><span·class="id"·title="variable">A</span></a>)·(<a·id="l:17"·class="idref"·href="#l:17"><span·class="id"·title="binder">l</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Lists.List.html#Facts.A"><span·class="id"·title="variable">A</span></a>)·:·<a·class="idref"·href="Coq.Lists.List.html#ae9a5e1034e143b218b09d8e454472bd"><span·class="id"·title="notation">[]</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.Lists.List.html#x:16"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#::list_scope:x_'::'_x"><span·class="id"·title="notation">::</span></a>·<a·class="idref"·href="Coq.Lists.List.html#l:17"><span·class="id"·title="variable">l</span></a>.<br/> | 153 | <span·class="id"·title="keyword">Theorem</span>·<a·id="nil_cons"·class="idref"·href="#nil_cons"><span·class="id"·title="lemma">nil_cons</span></a>·(<a·id="x:16"·class="idref"·href="#x:16"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Lists.List.html#Facts.A"><span·class="id"·title="variable">A</span></a>)·(<a·id="l:17"·class="idref"·href="#l:17"><span·class="id"·title="binder">l</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Lists.List.html#Facts.A"><span·class="id"·title="variable">A</span></a>)·:·<a·class="idref"·href="Coq.Lists.List.html#ae9a5e1034e143b218b09d8e454472bd"><span·class="id"·title="notation">[]</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.Lists.List.html#x:16"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#::list_scope:x_'::'_x"><span·class="id"·title="notation">::</span></a>·<a·class="idref"·href="Coq.Lists.List.html#l:17"><span·class="id"·title="variable">l</span></a>.<br/> |
Offset 178, 30 lines modified | Offset 178, 30 lines modified | ||
178 | <span·class="id"·title="keyword">Theorem</span>·<a·id="length_zero_iff_nil"·class="idref"·href="#length_zero_iff_nil"><span·class="id"·title="lemma">length_zero_iff_nil</span></a>·(<a·id="l:26"·class="idref"·href="#l:26"><span·class="id"·title="binder">l</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Lists.List.html#Facts.A"><span·class="id"·title="variable">A</span></a>):<br/> | 178 | <span·class="id"·title="keyword">Theorem</span>·<a·id="length_zero_iff_nil"·class="idref"·href="#length_zero_iff_nil"><span·class="id"·title="lemma">length_zero_iff_nil</span></a>·(<a·id="l:26"·class="idref"·href="#l:26"><span·class="id"·title="binder">l</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Lists.List.html#Facts.A"><span·class="id"·title="variable">A</span></a>):<br/> |
179 | <a·class="idref"·href="Coq.Init.Datatypes.html#length"><span·class="id"·title="definition">length</span></a>·<a·class="idref"·href="Coq.Lists.List.html#l:26"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Lists.List.html#l:26"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Lists.List.html#ae9a5e1034e143b218b09d8e454472bd"><span·class="id"·title="notation">[]</span></a>.<br/> | 179 | <a·class="idref"·href="Coq.Init.Datatypes.html#length"><span·class="id"·title="definition">length</span></a>·<a·class="idref"·href="Coq.Lists.List.html#l:26"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Lists.List.html#l:26"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Lists.List.html#ae9a5e1034e143b218b09d8e454472bd"><span·class="id"·title="notation">[]</span></a>.<br/> |
180 | <br/> | 180 | <br/> |
181 | </div> | 181 | </div> |
182 | <div·class="doc"> | 182 | <div·class="doc"> |
183 | <a·id="lab | 183 | <a·id="lab733"></a><h3·class="section">Head·and·tail</h3> |
184 | </div> | 184 | </div> |
185 | <div·class="code"> | 185 | <div·class="code"> |
186 | <br/> | 186 | <br/> |
187 | <span·class="id"·title="keyword">Theorem</span>·<a·id="hd_error_nil"·class="idref"·href="#hd_error_nil"><span·class="id"·title="lemma">hd_error_nil</span></a>·:·<a·class="idref"·href="Coq.Lists.List.html#hd_error"><span·class="id"·title="definition">hd_error</span></a>·(@<a·class="idref"·href="Coq.Init.Datatypes.html#nil"><span·class="id"·title="constructor">nil</span></a>·<a·class="idref"·href="Coq.Lists.List.html#Facts.A"><span·class="id"·title="variable">A</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#None"><span·class="id"·title="constructor">None</span></a>.<br/> | 187 | <span·class="id"·title="keyword">Theorem</span>·<a·id="hd_error_nil"·class="idref"·href="#hd_error_nil"><span·class="id"·title="lemma">hd_error_nil</span></a>·:·<a·class="idref"·href="Coq.Lists.List.html#hd_error"><span·class="id"·title="definition">hd_error</span></a>·(@<a·class="idref"·href="Coq.Init.Datatypes.html#nil"><span·class="id"·title="constructor">nil</span></a>·<a·class="idref"·href="Coq.Lists.List.html#Facts.A"><span·class="id"·title="variable">A</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#None"><span·class="id"·title="constructor">None</span></a>.<br/> |
188 | <br/> | 188 | <br/> |
189 | <span·class="id"·title="keyword">Theorem</span>·<a·id="hd_error_cons"·class="idref"·href="#hd_error_cons"><span·class="id"·title="lemma">hd_error_cons</span></a>·(<a·id="l:27"·class="idref"·href="#l:27"><span·class="id"·title="binder">l</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Lists.List.html#Facts.A"><span·class="id"·title="variable">A</span></a>)·(<a·id="x:28"·class="idref"·href="#x:28"><span·class="id"·title="binder">x</span></a>·:·<a·class="idref"·href="Coq.Lists.List.html#Facts.A"><span·class="id"·title="variable">A</span></a>)·:·<a·class="idref"·href="Coq.Lists.List.html#hd_error"><span·class="id"·title="definition">hd_error</span></a>·(<a·class="idref"·href="Coq.Lists.List.html#x:28"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Init.Datatypes.html#::list_scope:x_'::'_x"><span·class="id"·title="notation">::</span></a><a·class="idref"·href="Coq.Lists.List.html#l:27"><span·class="id"·title="variable">l</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#Some"><span·class="id"·title="constructor">Some</span></a>·<a·class="idref"·href="Coq.Lists.List.html#x:28"><span·class="id"·title="variable">x</span></a>.<br/> | 189 | <span·class="id"·title="keyword">Theorem</span>·<a·id="hd_error_cons"·class="idref"·href="#hd_error_cons"><span·class="id"·title="lemma">hd_error_cons</span></a>·(<a·id="l:27"·class="idref"·href="#l:27"><span·class="id"·title="binder">l</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Lists.List.html#Facts.A"><span·class="id"·title="variable">A</span></a>)·(<a·id="x:28"·class="idref"·href="#x:28"><span·class="id"·title="binder">x</span></a>·:·<a·class="idref"·href="Coq.Lists.List.html#Facts.A"><span·class="id"·title="variable">A</span></a>)·:·<a·class="idref"·href="Coq.Lists.List.html#hd_error"><span·class="id"·title="definition">hd_error</span></a>·(<a·class="idref"·href="Coq.Lists.List.html#x:28"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Init.Datatypes.html#::list_scope:x_'::'_x"><span·class="id"·title="notation">::</span></a><a·class="idref"·href="Coq.Lists.List.html#l:27"><span·class="id"·title="variable">l</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#Some"><span·class="id"·title="constructor">Some</span></a>·<a·class="idref"·href="Coq.Lists.List.html#x:28"><span·class="id"·title="variable">x</span></a>.<br/> |
190 | <br/> | 190 | <br/> |
191 | </div> | 191 | </div> |
192 | <div·class="doc"> | 192 | <div·class="doc"> |
193 | <a·id="lab | 193 | <a·id="lab734"></a><h3·class="section">Facts·about·<span·class="inlinecode"><span·class="id"·title="var">app</span></span></h3> |
194 | <div·class="paragraph">·</div> | 194 | <div·class="paragraph">·</div> |
195 | ·Discrimination· | 195 | ·Discrimination· |
196 | </div> | 196 | </div> |
197 | <div·class="code"> | 197 | <div·class="code"> |
198 | <span·class="id"·title="keyword">Theorem</span>·<a·id="app_cons_not_nil"·class="idref"·href="#app_cons_not_nil"><span·class="id"·title="lemma">app_cons_not_nil</span></a>·(<a·id="x:29"·class="idref"·href="#x:29"><span·class="id"·title="binder">x</span></a>·<a·id="y:30"·class="idref"·href="#y:30"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Lists.List.html#Facts.A"><span·class="id"·title="variable">A</span></a>)·(<a·id="a:31"·class="idref"·href="#a:31"><span·class="id"·title="binder">a</span></a>:<a·class="idref"·href="Coq.Lists.List.html#Facts.A"><span·class="id"·title="variable">A</span></a>)·:·<a·class="idref"·href="Coq.Lists.List.html#ae9a5e1034e143b218b09d8e454472bd"><span·class="id"·title="notation">[]</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.Lists.List.html#x:29"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#bc347c51eaf667706ae54503b26d52c6"><span·class="id"·title="notation">++</span></a>·<a·class="idref"·href="Coq.Lists.List.html#a:31"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#::list_scope:x_'::'_x"><span·class="id"·title="notation">::</span></a>·<a·class="idref"·href="Coq.Lists.List.html#y:30"><span·class="id"·title="variable">y</span></a>.<br/> | 198 | <span·class="id"·title="keyword">Theorem</span>·<a·id="app_cons_not_nil"·class="idref"·href="#app_cons_not_nil"><span·class="id"·title="lemma">app_cons_not_nil</span></a>·(<a·id="x:29"·class="idref"·href="#x:29"><span·class="id"·title="binder">x</span></a>·<a·id="y:30"·class="idref"·href="#y:30"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Lists.List.html#Facts.A"><span·class="id"·title="variable">A</span></a>)·(<a·id="a:31"·class="idref"·href="#a:31"><span·class="id"·title="binder">a</span></a>:<a·class="idref"·href="Coq.Lists.List.html#Facts.A"><span·class="id"·title="variable">A</span></a>)·:·<a·class="idref"·href="Coq.Lists.List.html#ae9a5e1034e143b218b09d8e454472bd"><span·class="id"·title="notation">[]</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.Lists.List.html#x:29"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#bc347c51eaf667706ae54503b26d52c6"><span·class="id"·title="notation">++</span></a>·<a·class="idref"·href="Coq.Lists.List.html#a:31"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#::list_scope:x_'::'_x"><span·class="id"·title="notation">::</span></a>·<a·class="idref"·href="Coq.Lists.List.html#y:30"><span·class="id"·title="variable">y</span></a>.<br/> |
Offset 305, 15 lines modified | Offset 305, 15 lines modified | ||
305 | <span·class="id"·title="keyword">Lemma</span>·<a·id="app_inv_tail_iff"·class="idref"·href="#app_inv_tail_iff"><span·class="id"·title="lemma">app_inv_tail_iff</span></a>:<br/> | 305 | <span·class="id"·title="keyword">Lemma</span>·<a·id="app_inv_tail_iff"·class="idref"·href="#app_inv_tail_iff"><span·class="id"·title="lemma">app_inv_tail_iff</span></a>:<br/> |
306 | <span·class="id"·title="keyword">forall</span>·<a·id="l:85"·class="idref"·href="#l:85"><span·class="id"·title="binder">l</span></a>·<a·id="l1:86"·class="idref"·href="#l1:86"><span·class="id"·title="binder">l1</span></a>·<a·id="l2:87"·class="idref"·href="#l2:87"><span·class="id"·title="binder">l2</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Lists.List.html#Facts.A"><span·class="id"·title="variable">A</span></a>,·<a·class="idref"·href="Coq.Lists.List.html#l1:86"><span·class="id"·title="variable">l1</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#bc347c51eaf667706ae54503b26d52c6"><span·class="id"·title="notation">++</span></a>·<a·class="idref"·href="Coq.Lists.List.html#l:85"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Lists.List.html#l2:87"><span·class="id"·title="variable">l2</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#bc347c51eaf667706ae54503b26d52c6"><span·class="id"·title="notation">++</span></a>·<a·class="idref"·href="Coq.Lists.List.html#l:85"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Lists.List.html#l1:86"><span·class="id"·title="variable">l1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Lists.List.html#l2:87"><span·class="id"·title="variable">l2</span></a>.<br/> | 306 | <span·class="id"·title="keyword">forall</span>·<a·id="l:85"·class="idref"·href="#l:85"><span·class="id"·title="binder">l</span></a>·<a·id="l1:86"·class="idref"·href="#l1:86"><span·class="id"·title="binder">l1</span></a>·<a·id="l2:87"·class="idref"·href="#l2:87"><span·class="id"·title="binder">l2</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Lists.List.html#Facts.A"><span·class="id"·title="variable">A</span></a>,·<a·class="idref"·href="Coq.Lists.List.html#l1:86"><span·class="id"·title="variable">l1</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#bc347c51eaf667706ae54503b26d52c6"><span·class="id"·title="notation">++</span></a>·<a·class="idref"·href="Coq.Lists.List.html#l:85"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Lists.List.html#l2:87"><span·class="id"·title="variable">l2</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#bc347c51eaf667706ae54503b26d52c6"><span·class="id"·title="notation">++</span></a>·<a·class="idref"·href="Coq.Lists.List.html#l:85"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Lists.List.html#l1:86"><span·class="id"·title="variable">l1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Lists.List.html#l2:87"><span·class="id"·title="variable">l2</span></a>.<br/> |
307 | <br/> | 307 | <br/> |
308 | </div> | 308 | </div> |
309 | <div·class="doc"> | 309 | <div·class="doc"> |
310 | <a·id="lab | 310 | <a·id="lab735"></a><h3·class="section">Facts·about·<span·class="inlinecode"><span·class="id"·title="var">In</span></span></h3> |
311 | <div·class="paragraph">·</div> | 311 | <div·class="paragraph">·</div> |
312 | ·Characterization·of·<span·class="inlinecode"><span·class="id"·title="var">In</span></span>· | 312 | ·Characterization·of·<span·class="inlinecode"><span·class="id"·title="var">In</span></span>· |
313 | </div> | 313 | </div> |
314 | <div·class="code"> | 314 | <div·class="code"> |
Offset 391, 30 lines modified | Offset 391, 30 lines modified | ||
391 | <br/> | 391 | <br/> |
392 | <span·class="id"·title="keyword">Local·Ltac</span>·<span·class="id"·title="var">Tauto.intuition_solver</span>·::=·<span·class="id"·title="tactic">auto</span>·<span·class="id"·title="keyword">with</span>·<span·class="id"·title="var">datatypes</span>.<br/> | 392 | <span·class="id"·title="keyword">Local·Ltac</span>·<span·class="id"·title="var">Tauto.intuition_solver</span>·::=·<span·class="id"·title="tactic">auto</span>·<span·class="id"·title="keyword">with</span>·<span·class="id"·title="var">datatypes</span>.<br/> |
393 | <br/> | 393 | <br/> |
394 | </div> | 394 | </div> |
395 | <div·class="doc"> | 395 | <div·class="doc"> |
396 | <a·id="lab | 396 | <a·id="lab736"></a><h1·class="section">Operations·on·the·elements·of·a·list</h1> |
397 | </div> | 397 | </div> |
398 | <div·class="code"> | 398 | <div·class="code"> |
399 | <br/> | 399 | <br/> |
400 | <span·class="id"·title="keyword">Section</span>·<a·id="Elts"·class="idref"·href="#Elts"><span·class="id"·title="section">Elts</span></a>.<br/> | 400 | <span·class="id"·title="keyword">Section</span>·<a·id="Elts"·class="idref"·href="#Elts"><span·class="id"·title="section">Elts</span></a>.<br/> |
401 | <br/> | 401 | <br/> |
402 | <span·class="id"·title="keyword">Variable</span>·<a·id="Elts.A"·class="idref"·href="#Elts.A"><span·class="id"·title="variable">A</span></a>·:·<span·class="id"·title="keyword">Type</span>.<br/> | 402 | <span·class="id"·title="keyword">Variable</span>·<a·id="Elts.A"·class="idref"·href="#Elts.A"><span·class="id"·title="variable">A</span></a>·:·<span·class="id"·title="keyword">Type</span>.<br/> |
403 | <br/> | 403 | <br/> |
404 | </div> | 404 | </div> |
405 | <div·class="doc"> | 405 | <div·class="doc"> |
406 | <a·id="lab | 406 | <a·id="lab737"></a><h2·class="section">Nth·element·of·a·list</h2> |
407 | </div> | 407 | </div> |
408 | <div·class="code"> | 408 | <div·class="code"> |
409 | <br/> | 409 | <br/> |
410 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="nth"·class="idref"·href="#nth"><span·class="id"·title="definition">nth</span></a>·(<a·id="n:131"·class="idref"·href="#n:131"><span·class="id"·title="binder">n</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>)·(<a·id="l:132"·class="idref"·href="#l:132"><span·class="id"·title="binder">l</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Lists.List.html#Elts.A"><span·class="id"·title="variable">A</span></a>)·(<a·id="default:133"·class="idref"·href="#default:133"><span·class="id"·title="binder">default</span></a>:<a·class="idref"·href="Coq.Lists.List.html#Elts.A"><span·class="id"·title="variable">A</span></a>)·{<span·class="id"·title="keyword">struct</span>·<span·class="id"·title="var">l</span>}·:·<a·class="idref"·href="Coq.Lists.List.html#Elts.A"><span·class="id"·title="variable">A</span></a>·:=<br/> | 410 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="nth"·class="idref"·href="#nth"><span·class="id"·title="definition">nth</span></a>·(<a·id="n:131"·class="idref"·href="#n:131"><span·class="id"·title="binder">n</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>)·(<a·id="l:132"·class="idref"·href="#l:132"><span·class="id"·title="binder">l</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Lists.List.html#Elts.A"><span·class="id"·title="variable">A</span></a>)·(<a·id="default:133"·class="idref"·href="#default:133"><span·class="id"·title="binder">default</span></a>:<a·class="idref"·href="Coq.Lists.List.html#Elts.A"><span·class="id"·title="variable">A</span></a>)·{<span·class="id"·title="keyword">struct</span>·<span·class="id"·title="var">l</span>}·:·<a·class="idref"·href="Coq.Lists.List.html#Elts.A"><span·class="id"·title="variable">A</span></a>·:=<br/> |
411 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Lists.List.html#n:131"><span·class="id"·title="variable">n</span></a>,·<a·class="idref"·href="Coq.Lists.List.html#l:132"><span·class="id"·title="variable">l</span></a>·<span·class="id"·title="keyword">with</span><br/> | 411 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Lists.List.html#n:131"><span·class="id"·title="variable">n</span></a>,·<a·class="idref"·href="Coq.Lists.List.html#l:132"><span·class="id"·title="variable">l</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 608, 15 lines modified | Offset 608, 15 lines modified | ||
608 | <span·class="id"·title="keyword">Lemma</span>·<a·id="nth_error_nth_None"·class="idref"·href="#nth_error_nth_None"><span·class="id"·title="lemma">nth_error_nth_None</span></a>·(<a·id="l:255"·class="idref"·href="#l:255"><span·class="id"·title="binder">l</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Lists.List.html#Elts.A"><span·class="id"·title="variable">A</span></a>)·(<a·id="n:256"·class="idref"·href="#n:256"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>)·(<a·id="d:257"·class="idref"·href="#d:257"><span·class="id"·title="binder">d</span></a>·:·<a·class="idref"·href="Coq.Lists.List.html#Elts.A"><span·class="id"·title="variable">A</span></a>)·:<br/> | 608 | <span·class="id"·title="keyword">Lemma</span>·<a·id="nth_error_nth_None"·class="idref"·href="#nth_error_nth_None"><span·class="id"·title="lemma">nth_error_nth_None</span></a>·(<a·id="l:255"·class="idref"·href="#l:255"><span·class="id"·title="binder">l</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Lists.List.html#Elts.A"><span·class="id"·title="variable">A</span></a>)·(<a·id="n:256"·class="idref"·href="#n:256"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>)·(<a·id="d:257"·class="idref"·href="#d:257"><span·class="id"·title="binder">d</span></a>·:·<a·class="idref"·href="Coq.Lists.List.html#Elts.A"><span·class="id"·title="variable">A</span></a>)·:<br/> |
609 | <a·class="idref"·href="Coq.Lists.List.html#nth_error"><span·class="id"·title="definition">nth_error</span></a>·<a·class="idref"·href="Coq.Lists.List.html#l:255"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Lists.List.html#n:256"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#None"><span·class="id"·title="constructor">None</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Lists.List.html#nth"><span·class="id"·title="definition">nth</span></a>·<a·class="idref"·href="Coq.Lists.List.html#n:256"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Lists.List.html#l:255"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Lists.List.html#d:257"><span·class="id"·title="variable">d</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Lists.List.html#d:257"><span·class="id"·title="variable">d</span></a>.<br/> | 609 | <a·class="idref"·href="Coq.Lists.List.html#nth_error"><span·class="id"·title="definition">nth_error</span></a>·<a·class="idref"·href="Coq.Lists.List.html#l:255"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Lists.List.html#n:256"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#None"><span·class="id"·title="constructor">None</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Lists.List.html#nth"><span·class="id"·title="definition">nth</span></a>·<a·class="idref"·href="Coq.Lists.List.html#n:256"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Lists.List.html#l:255"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Lists.List.html#d:257"><span·class="id"·title="variable">d</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Lists.List.html#d:257"><span·class="id"·title="variable">d</span></a>.<br/> |
610 | <br/> | 610 | <br/> |
611 | </div> | 611 | </div> |
612 | <div·class="doc"> | 612 | <div·class="doc"> |
613 | <a·id="lab | 613 | <a·id="lab738"></a><h2·class="section">Last·element·of·a·list</h2> |
614 | <div·class="paragraph">·</div> | 614 | <div·class="paragraph">·</div> |
615 | ·<span·class="inlinecode"><span·class="id"·title="var">last</span></span>·<span·class="inlinecode"><span·class="id"·title="var">l</span></span>·<span·class="inlinecode"><span·class="id"·title="var">d</span></span>·returns·the·last·element·of·the·list·<span·class="inlinecode"><span·class="id"·title="var">l</span></span>, | 615 | ·<span·class="inlinecode"><span·class="id"·title="var">last</span></span>·<span·class="inlinecode"><span·class="id"·title="var">l</span></span>·<span·class="inlinecode"><span·class="id"·title="var">d</span></span>·returns·the·last·element·of·the·list·<span·class="inlinecode"><span·class="id"·title="var">l</span></span>, |
616 | ····or·the·default·value·<span·class="inlinecode"><span·class="id"·title="var">d</span></span>·if·<span·class="inlinecode"><span·class="id"·title="var">l</span></span>·is·empty.· | 616 | ····or·the·default·value·<span·class="inlinecode"><span·class="id"·title="var">d</span></span>·if·<span·class="inlinecode"><span·class="id"·title="var">l</span></span>·is·empty.· |
617 | </div> | 617 | </div> |
618 | <div·class="code"> | 618 | <div·class="code"> |
Offset 663, 15 lines modified | Offset 663, 15 lines modified | ||
663 | <br/> | 663 | <br/> |
Max diff block lines reached; 29558/46812 bytes (63.14%) of diff not shown. |
Offset 49, 15 lines modified | Offset 49, 15 lines modified | ||
49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.Lists.List.html#"><span·class="id"·title="library">List</span></a>.<br/> | 49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.Lists.List.html#"><span·class="id"·title="library">List</span></a>.<br/> |
50 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.Sorting.Sorted.html#"><span·class="id"·title="library">Sorted</span></a>.<br/> | 50 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.Sorting.Sorted.html#"><span·class="id"·title="library">Sorted</span></a>.<br/> |
51 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.Setoids.Setoid.html#"><span·class="id"·title="library">Setoid</span></a>·<a·class="idref"·href="Coq.Program.Basics.html#"><span·class="id"·title="library">Basics</span></a>·<a·class="idref"·href="Coq.Classes.Morphisms.html#"><span·class="id"·title="library">Morphisms</span></a>.<br/> | 51 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.Setoids.Setoid.html#"><span·class="id"·title="library">Setoid</span></a>·<a·class="idref"·href="Coq.Program.Basics.html#"><span·class="id"·title="library">Basics</span></a>·<a·class="idref"·href="Coq.Classes.Morphisms.html#"><span·class="id"·title="library">Morphisms</span></a>.<br/> |
52 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> | 52 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> |
53 | </div> | 53 | </div> |
54 | <div·class="doc"> | 54 | <div·class="doc"> |
55 | <a·id="lab | 55 | <a·id="lab730"></a><h1·class="section">Logical·relations·over·lists·with·respect·to·a·setoid·equality</h1> |
56 | ······or·ordering.· | 56 | ······or·ordering.· |
57 | <div·class="paragraph">·</div> | 57 | <div·class="paragraph">·</div> |
58 | ·This·can·be·seen·as·a·complement·of·predicate·<span·class="inlinecode"><span·class="id"·title="var">lelistA</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">sort</span></span> | 58 | ·This·can·be·seen·as·a·complement·of·predicate·<span·class="inlinecode"><span·class="id"·title="var">lelistA</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">sort</span></span> |
59 | ····found·in·<span·class="inlinecode"><span·class="id"·title="var">Sorting</span></span>.· | 59 | ····found·in·<span·class="inlinecode"><span·class="id"·title="var">Sorting</span></span>.· |
60 | </div> | 60 | </div> |
Offset 49, 15 lines modified | Offset 49, 15 lines modified | ||
49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Logic.Eqdep_dec.html#"><span·class="id"·title="library">Eqdep_dec</span></a>.<br/> | 49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Logic.Eqdep_dec.html#"><span·class="id"·title="library">Eqdep_dec</span></a>.<br/> |
50 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Lists.Streams.html#"><span·class="id"·title="library">Streams</span></a>.<br/> | 50 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Lists.Streams.html#"><span·class="id"·title="library">Streams</span></a>.<br/> |
51 | <br/> | 51 | <br/> |
52 | </div> | 52 | </div> |
53 | <div·class="doc"> | 53 | <div·class="doc"> |
54 | <a·id="lab | 54 | <a·id="lab729"></a><h1·class="section">Memoization</h1> |
55 | <div·class="paragraph">·</div> | 55 | <div·class="paragraph">·</div> |
56 | ·Successive·outputs·of·a·given·function·<span·class="inlinecode"><span·class="id"·title="var">f</span></span>·are·stored·in | 56 | ·Successive·outputs·of·a·given·function·<span·class="inlinecode"><span·class="id"·title="var">f</span></span>·are·stored·in |
57 | ····a·stream·in·order·to·avoid·duplicated·computations.· | 57 | ····a·stream·in·order·to·avoid·duplicated·computations.· |
58 | </div> | 58 | </div> |
59 | <div·class="code"> | 59 | <div·class="code"> |
Offset 46, 15 lines modified | Offset 46, 15 lines modified | ||
46 | <div·class="code"> | 46 | <div·class="code"> |
47 | <br/> | 47 | <br/> |
48 | </div> | 48 | </div> |
49 | <div·class="doc"> | 49 | <div·class="doc"> |
50 | Some·facts·and·definitions·concerning·choice·and·description·in | 50 | Some·facts·and·definitions·concerning·choice·and·description·in |
51 | ·······intuitionistic·logic.·<a·id="lab | 51 | ·······intuitionistic·logic.·<a·id="lab568"></a><h1·class="section">References:</h1> |
52 | <div·class="paragraph">·</div> | 52 | <div·class="paragraph">·</div> |
53 | <span·class="inlinecode">[<span·class="id"·title="var">Bell</span>]</span>·John·L.·Bell,·Choice·principles·in·intuitionistic·set·theory, | 53 | <span·class="inlinecode">[<span·class="id"·title="var">Bell</span>]</span>·John·L.·Bell,·Choice·principles·in·intuitionistic·set·theory, |
54 | unpublished. | 54 | unpublished. |
55 | <div·class="paragraph">·</div> | 55 | <div·class="paragraph">·</div> |
Offset 85, 15 lines modified | Offset 85, 15 lines modified | ||
85 | <br/> | 85 | <br/> |
86 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> | 86 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> |
87 | <br/> | 87 | <br/> |
88 | </div> | 88 | </div> |
89 | <div·class="doc"> | 89 | <div·class="doc"> |
90 | <a·id="lab | 90 | <a·id="lab569"></a><h1·class="section">Definitions</h1> |
91 | <div·class="paragraph">·</div> | 91 | <div·class="paragraph">·</div> |
92 | ·Choice,·reification·and·description·schemes· | 92 | ·Choice,·reification·and·description·schemes· |
93 | <div·class="paragraph">·</div> | 93 | <div·class="paragraph">·</div> |
94 | ·We·make·them·all·polymorphic.·Most·of·them·have·existentials·as·conclusion | 94 | ·We·make·them·all·polymorphic.·Most·of·them·have·existentials·as·conclusion |
Offset 112, 15 lines modified | Offset 112, 15 lines modified | ||
112 | <br/> | 112 | <br/> |
113 | <span·class="id"·title="keyword">Variable</span>·<a·id="ChoiceSchemes.P"·class="idref"·href="#ChoiceSchemes.P"><span·class="id"·title="variable">P</span></a>:<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#ChoiceSchemes.A"><span·class="id"·title="variable">A</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><span·class="id"·title="keyword">Prop</span>.<br/> | 113 | <span·class="id"·title="keyword">Variable</span>·<a·id="ChoiceSchemes.P"·class="idref"·href="#ChoiceSchemes.P"><span·class="id"·title="variable">P</span></a>:<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#ChoiceSchemes.A"><span·class="id"·title="variable">A</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><span·class="id"·title="keyword">Prop</span>.<br/> |
114 | <br/> | 114 | <br/> |
115 | </div> | 115 | </div> |
116 | <div·class="doc"> | 116 | <div·class="doc"> |
117 | <a·id="lab | 117 | <a·id="lab570"></a><h2·class="section">Constructive·choice·and·description</h2> |
118 | <div·class="paragraph">·</div> | 118 | <div·class="paragraph">·</div> |
119 | ·AC_rel·=·relational·form·of·the·(non·extensional)·axiom·of·choice | 119 | ·AC_rel·=·relational·form·of·the·(non·extensional)·axiom·of·choice |
120 | ·············(a·"set-theoretic"·axiom·of·choice)· | 120 | ·············(a·"set-theoretic"·axiom·of·choice)· |
121 | </div> | 121 | </div> |
122 | <div·class="code"> | 122 | <div·class="code"> |
Offset 342, 15 lines modified | Offset 342, 15 lines modified | ||
342 | <span·class="id"·title="keyword">forall</span>·<a·id="P:100"·class="idref"·href="#P:100"><span·class="id"·title="binder">P</span></a>:<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#ChoiceSchemes.A"><span·class="id"·title="variable">A</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><span·class="id"·title="keyword">Prop</span>,<br/> | 342 | <span·class="id"·title="keyword">forall</span>·<a·id="P:100"·class="idref"·href="#P:100"><span·class="id"·title="binder">P</span></a>:<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#ChoiceSchemes.A"><span·class="id"·title="variable">A</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><span·class="id"·title="keyword">Prop</span>,<br/> |
343 | <a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Init.Logic.html#a3726bd940c3c0e96cb8e13291e9ded4"><span·class="id"·title="notation">exists</span></a><a·class="idref"·href="Coq.Init.Logic.html#a3726bd940c3c0e96cb8e13291e9ded4"><span·class="id"·title="notation">!</span></a>·<a·id="x:101"·class="idref"·href="#x:101"><span·class="id"·title="binder">x</span></a><a·class="idref"·href="Coq.Init.Logic.html#a3726bd940c3c0e96cb8e13291e9ded4"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#P:100"><span·class="id"·title="variable">P</span></a>·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#x:101"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">{</span></a>·<a·id="x:102"·class="idref"·href="#x:102"><span·class="id"·title="binder">x</span></a><a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">:</span></a><a·class="idref"·href="Coq.Logic.ChoiceFacts.html#ChoiceSchemes.A"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">|</span></a>·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#P:100"><span·class="id"·title="variable">P</span></a>·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#x:102"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">}</span></a>.<br/> | 343 | <a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Init.Logic.html#a3726bd940c3c0e96cb8e13291e9ded4"><span·class="id"·title="notation">exists</span></a><a·class="idref"·href="Coq.Init.Logic.html#a3726bd940c3c0e96cb8e13291e9ded4"><span·class="id"·title="notation">!</span></a>·<a·id="x:101"·class="idref"·href="#x:101"><span·class="id"·title="binder">x</span></a><a·class="idref"·href="Coq.Init.Logic.html#a3726bd940c3c0e96cb8e13291e9ded4"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#P:100"><span·class="id"·title="variable">P</span></a>·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#x:101"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">{</span></a>·<a·id="x:102"·class="idref"·href="#x:102"><span·class="id"·title="binder">x</span></a><a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">:</span></a><a·class="idref"·href="Coq.Logic.ChoiceFacts.html#ChoiceSchemes.A"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">|</span></a>·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#P:100"><span·class="id"·title="variable">P</span></a>·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#x:102"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">}</span></a>.<br/> |
344 | <br/> | 344 | <br/> |
345 | </div> | 345 | </div> |
346 | <div·class="doc"> | 346 | <div·class="doc"> |
347 | <a·id="lab | 347 | <a·id="lab571"></a><h2·class="section">Weakly·classical·choice·and·description</h2> |
348 | <div·class="paragraph">·</div> | 348 | <div·class="paragraph">·</div> |
349 | ·GAC_rel·=·guarded·relational·form·of·the·(non·extensional)·axiom·of·choice· | 349 | ·GAC_rel·=·guarded·relational·form·of·the·(non·extensional)·axiom·of·choice· |
350 | </div> | 350 | </div> |
351 | <div·class="code"> | 351 | <div·class="code"> |
Offset 621, 15 lines modified | Offset 621, 15 lines modified | ||
621 | <div·class="paragraph">·</div> | 621 | <div·class="paragraph">·</div> |
622 | with·no·prerequisite·on·the·non-emptiness·of·domains | 622 | with·no·prerequisite·on·the·non-emptiness·of·domains |
623 | <div·class="paragraph">·</div> | 623 | <div·class="paragraph">·</div> |
624 | <a·id="lab | 624 | <a·id="lab572"></a><h1·class="section">Table·of·contents</h1> |
625 | </div> | 625 | </div> |
626 | <div·class="code"> | 626 | <div·class="code"> |
627 | <br/> | 627 | <br/> |
628 | </div> | 628 | </div> |
Offset 678, 15 lines modified | Offset 678, 15 lines modified | ||
678 | <div·class="paragraph">·</div> | 678 | <div·class="paragraph">·</div> |
679 | 9.2.·AC_fun_setoid·=·AC_fun·+·Ext_pred_repr·+·PI | 679 | 9.2.·AC_fun_setoid·=·AC_fun·+·Ext_pred_repr·+·PI |
680 | · | 680 | · |
681 | <div·class="paragraph">·</div> | 681 | <div·class="paragraph">·</div> |
682 | <a·id="lab | 682 | <a·id="lab573"></a><h1·class="section">AC_rel·+·AC!·=·AC_fun</h1> |
683 | <div·class="paragraph">·</div> | 683 | <div·class="paragraph">·</div> |
684 | ···We·show·that·the·functional·formulation·of·the·axiom·of·Choice | 684 | ···We·show·that·the·functional·formulation·of·the·axiom·of·Choice |
685 | ···(usual·formulation·in·type·theory)·is·equivalent·to·its·relational | 685 | ···(usual·formulation·in·type·theory)·is·equivalent·to·its·relational |
686 | ···formulation·(only·formulation·of·set·theory)·+·functional·relation | 686 | ···formulation·(only·formulation·of·set·theory)·+·functional·relation |
Offset 718, 26 lines modified | Offset 718, 26 lines modified | ||
718 | <span·class="id"·title="keyword">forall</span>·<a·id="A:214"·class="idref"·href="#A:214"><span·class="id"·title="binder">A</span></a>·<a·id="B:215"·class="idref"·href="#B:215"><span·class="id"·title="binder">B</span></a>·:·<span·class="id"·title="keyword">Type</span>,·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#FunctionalChoice_on"><span·class="id"·title="definition">FunctionalChoice_on</span></a>·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#A:214"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#B:215"><span·class="id"·title="variable">B</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a><br/> | 718 | <span·class="id"·title="keyword">forall</span>·<a·id="A:214"·class="idref"·href="#A:214"><span·class="id"·title="binder">A</span></a>·<a·id="B:215"·class="idref"·href="#B:215"><span·class="id"·title="binder">B</span></a>·:·<span·class="id"·title="keyword">Type</span>,·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#FunctionalChoice_on"><span·class="id"·title="definition">FunctionalChoice_on</span></a>·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#A:214"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#B:215"><span·class="id"·title="variable">B</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a><br/> |
719 | <a·class="idref"·href="Coq.Logic.ChoiceFacts.html#RelationalChoice_on"><span·class="id"·title="definition">RelationalChoice_on</span></a>·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#A:214"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#B:215"><span·class="id"·title="variable">B</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#FunctionalRelReification_on"><span·class="id"·title="definition">FunctionalRelReification_on</span></a>·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#A:214"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#B:215"><span·class="id"·title="variable">B</span></a>.<br/> | 719 | <a·class="idref"·href="Coq.Logic.ChoiceFacts.html#RelationalChoice_on"><span·class="id"·title="definition">RelationalChoice_on</span></a>·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#A:214"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#B:215"><span·class="id"·title="variable">B</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#FunctionalRelReification_on"><span·class="id"·title="definition">FunctionalRelReification_on</span></a>·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#A:214"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#B:215"><span·class="id"·title="variable">B</span></a>.<br/> |
720 | <br/> | 720 | <br/> |
721 | </div> | 721 | </div> |
722 | <div·class="doc"> | 722 | <div·class="doc"> |
723 | <a·id="lab | 723 | <a·id="lab574"></a><h1·class="section">Connection·between·the·guarded,·non·guarded·and·omniscient·choices</h1> |
724 | <div·class="paragraph">·</div> | 724 | <div·class="paragraph">·</div> |
725 | ·We·show·that·the·guarded·formulations·of·the·axiom·of·choice | 725 | ·We·show·that·the·guarded·formulations·of·the·axiom·of·choice |
726 | ···are·equivalent·to·their·"omniscient"·variant·and·comes·from·the·non·guarded | 726 | ···are·equivalent·to·their·"omniscient"·variant·and·comes·from·the·non·guarded |
727 | ···formulation·in·presence·either·of·the·independence·of·general·premises | 727 | ···formulation·in·presence·either·of·the·independence·of·general·premises |
728 | ···or·subset·types·(themselves·derivable·from·subtypes·thanks·to·proof- | 728 | ···or·subset·types·(themselves·derivable·from·subtypes·thanks·to·proof- |
729 | ···irrelevance)· | 729 | ···irrelevance)· |
730 | <div·class="paragraph">·</div> | 730 | <div·class="paragraph">·</div> |
731 | <a·id="lab | 731 | <a·id="lab575"></a><h2·class="section">AC_rel·+·PI·->·GAC_rel·and·AC_rel·+·IGP·->·GAC_rel·and·GAC_rel·=·OAC_rel</h2> |
732 | </div> | 732 | </div> |
733 | <div·class="code"> | 733 | <div·class="code"> |
734 | <br/> | 734 | <br/> |
735 | <span·class="id"·title="keyword">Lemma</span>·<a·id="rel_choice_and_proof_irrel_imp_guarded_rel_choice"·class="idref"·href="#rel_choice_and_proof_irrel_imp_guarded_rel_choice"><span·class="id"·title="lemma">rel_choice_and_proof_irrel_imp_guarded_rel_choice</span></a>·:<br/> | 735 | <span·class="id"·title="keyword">Lemma</span>·<a·id="rel_choice_and_proof_irrel_imp_guarded_rel_choice"·class="idref"·href="#rel_choice_and_proof_irrel_imp_guarded_rel_choice"><span·class="id"·title="lemma">rel_choice_and_proof_irrel_imp_guarded_rel_choice</span></a>·:<br/> |
736 | <a·class="idref"·href="Coq.Logic.ChoiceFacts.html#RelationalChoice"><span·class="id"·title="abbreviation">RelationalChoice</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#ProofIrrelevance"><span·class="id"·title="definition">ProofIrrelevance</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#GuardedRelationalChoice"><span·class="id"·title="abbreviation">GuardedRelationalChoice</span></a>.<br/> | 736 | <a·class="idref"·href="Coq.Logic.ChoiceFacts.html#RelationalChoice"><span·class="id"·title="abbreviation">RelationalChoice</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#ProofIrrelevance"><span·class="id"·title="definition">ProofIrrelevance</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#GuardedRelationalChoice"><span·class="id"·title="abbreviation">GuardedRelationalChoice</span></a>.<br/> |
Offset 767, 15 lines modified | Offset 767, 15 lines modified | ||
767 | <span·class="id"·title="keyword">Corollary</span>·<a·id="guarded_iff_omniscient_rel_choice"·class="idref"·href="#guarded_iff_omniscient_rel_choice"><span·class="id"·title="lemma">guarded_iff_omniscient_rel_choice</span></a>·:<br/> | 767 | <span·class="id"·title="keyword">Corollary</span>·<a·id="guarded_iff_omniscient_rel_choice"·class="idref"·href="#guarded_iff_omniscient_rel_choice"><span·class="id"·title="lemma">guarded_iff_omniscient_rel_choice</span></a>·:<br/> |
768 | <a·class="idref"·href="Coq.Logic.ChoiceFacts.html#GuardedRelationalChoice"><span·class="id"·title="abbreviation">GuardedRelationalChoice</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#OmniscientRelationalChoice"><span·class="id"·title="abbreviation">OmniscientRelationalChoice</span></a>.<br/> | 768 | <a·class="idref"·href="Coq.Logic.ChoiceFacts.html#GuardedRelationalChoice"><span·class="id"·title="abbreviation">GuardedRelationalChoice</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#OmniscientRelationalChoice"><span·class="id"·title="abbreviation">OmniscientRelationalChoice</span></a>.<br/> |
769 | <br/> | 769 | <br/> |
Max diff block lines reached; 31817/41506 bytes (76.66%) of diff not shown. |
Offset 129, 15 lines modified | Offset 129, 15 lines modified | ||
129 | <br/> | 129 | <br/> |
130 | <span·class="id"·title="keyword">Opaque</span>·<a·class="idref"·href="Coq.Logic.ClassicalEpsilon.html#epsilon"><span·class="id"·title="definition">epsilon</span></a>.<br/> | 130 | <span·class="id"·title="keyword">Opaque</span>·<a·class="idref"·href="Coq.Logic.ClassicalEpsilon.html#epsilon"><span·class="id"·title="definition">epsilon</span></a>.<br/> |
131 | <br/> | 131 | <br/> |
132 | </div> | 132 | </div> |
133 | <div·class="doc"> | 133 | <div·class="doc"> |
134 | <a·id="lab | 134 | <a·id="lab560"></a><h3·class="section">Weaker·lemmas·(compatibility·lemmas)</h3> |
135 | </div> | 135 | </div> |
136 | <div·class="code"> | 136 | <div·class="code"> |
137 | <br/> | 137 | <br/> |
138 | <span·class="id"·title="keyword">Theorem</span>·<a·id="choice"·class="idref"·href="#choice"><span·class="id"·title="lemma">choice</span></a>·:<br/> | 138 | <span·class="id"·title="keyword">Theorem</span>·<a·id="choice"·class="idref"·href="#choice"><span·class="id"·title="lemma">choice</span></a>·:<br/> |
139 | <span·class="id"·title="keyword">forall</span>·(<a·id="A:38"·class="idref"·href="#A:38"><span·class="id"·title="binder">A</span></a>·<a·id="B:39"·class="idref"·href="#B:39"><span·class="id"·title="binder">B</span></a>·:·<span·class="id"·title="keyword">Type</span>)·(<a·id="R:40"·class="idref"·href="#R:40"><span·class="id"·title="binder">R</span></a>·:·<a·class="idref"·href="Coq.Logic.ClassicalEpsilon.html#A:38"><span·class="id"·title="variable">A</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.Logic.ClassicalEpsilon.html#B:39"><span·class="id"·title="variable">B</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><span·class="id"·title="keyword">Prop</span>),<br/> | 139 | <span·class="id"·title="keyword">forall</span>·(<a·id="A:38"·class="idref"·href="#A:38"><span·class="id"·title="binder">A</span></a>·<a·id="B:39"·class="idref"·href="#B:39"><span·class="id"·title="binder">B</span></a>·:·<span·class="id"·title="keyword">Type</span>)·(<a·id="R:40"·class="idref"·href="#R:40"><span·class="id"·title="binder">R</span></a>·:·<a·class="idref"·href="Coq.Logic.ClassicalEpsilon.html#A:38"><span·class="id"·title="variable">A</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.Logic.ClassicalEpsilon.html#B:39"><span·class="id"·title="variable">B</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><span·class="id"·title="keyword">Prop</span>),<br/> |
Offset 110, 15 lines modified | Offset 110, 15 lines modified | ||
110 | <div·class="paragraph">·</div> | 110 | <div·class="paragraph">·</div> |
111 | 4.2·Classical·logic·=·choice·of·representatives·in·a·partition·of·bool | 111 | 4.2·Classical·logic·=·choice·of·representatives·in·a·partition·of·bool |
112 | <div·class="paragraph">·</div> | 112 | <div·class="paragraph">·</div> |
113 | <a·id="lab | 113 | <a·id="lab545"></a><h1·class="section">Prop·degeneracy·=·excluded-middle·+·prop·extensionality</h1> |
114 | <div·class="paragraph">·</div> | 114 | <div·class="paragraph">·</div> |
115 | ·i.e.········<span·class="inlinecode">(<span·class="id"·title="keyword">forall</span></span>·<span·class="inlinecode"><span·class="id"·title="var">A</span>,</span>·<span·class="inlinecode"><span·class="id"·title="var">A</span>=<span·class="id"·title="var">True</span></span>·<span·class="inlinecode">\/</span>·<span·class="inlinecode"><span·class="id"·title="var">A</span>=<span·class="id"·title="var">False</span>)</span> | 115 | ·i.e.········<span·class="inlinecode">(<span·class="id"·title="keyword">forall</span></span>·<span·class="inlinecode"><span·class="id"·title="var">A</span>,</span>·<span·class="inlinecode"><span·class="id"·title="var">A</span>=<span·class="id"·title="var">True</span></span>·<span·class="inlinecode">\/</span>·<span·class="inlinecode"><span·class="id"·title="var">A</span>=<span·class="id"·title="var">False</span>)</span> |
116 | ·························<span·class="inlinecode"><-></span> | 116 | ·························<span·class="inlinecode"><-></span> |
117 | ·······<span·class="inlinecode">(<span·class="id"·title="keyword">forall</span></span>·<span·class="inlinecode"><span·class="id"·title="var">A</span>,</span>·<span·class="inlinecode"><span·class="id"·title="var">A</span>\/~<span·class="id"·title="var">A</span>)</span>·<span·class="inlinecode">/\</span>·<span·class="inlinecode">(<span·class="id"·title="keyword">forall</span></span>·<span·class="inlinecode"><span·class="id"·title="var">A</span></span>·<span·class="inlinecode"><span·class="id"·title="var">B</span>,</span>·<span·class="inlinecode">(<span·class="id"·title="var">A</span><-><span·class="id"·title="var">B</span>)</span>·<span·class="inlinecode">-></span>·<span·class="inlinecode"><span·class="id"·title="var">A</span>=<span·class="id"·title="var">B</span>)</span> | 117 | ·······<span·class="inlinecode">(<span·class="id"·title="keyword">forall</span></span>·<span·class="inlinecode"><span·class="id"·title="var">A</span>,</span>·<span·class="inlinecode"><span·class="id"·title="var">A</span>\/~<span·class="id"·title="var">A</span>)</span>·<span·class="inlinecode">/\</span>·<span·class="inlinecode">(<span·class="id"·title="keyword">forall</span></span>·<span·class="inlinecode"><span·class="id"·title="var">A</span></span>·<span·class="inlinecode"><span·class="id"·title="var">B</span>,</span>·<span·class="inlinecode">(<span·class="id"·title="var">A</span><-><span·class="id"·title="var">B</span>)</span>·<span·class="inlinecode">-></span>·<span·class="inlinecode"><span·class="id"·title="var">A</span>=<span·class="id"·title="var">B</span>)</span> |
Offset 186, 19 lines modified | Offset 186, 19 lines modified | ||
186 | <span·class="id"·title="keyword">Lemma</span>·<a·id="provable_prop_ext"·class="idref"·href="#provable_prop_ext"><span·class="id"·title="lemma">provable_prop_ext</span></a>·:<br/> | 186 | <span·class="id"·title="keyword">Lemma</span>·<a·id="provable_prop_ext"·class="idref"·href="#provable_prop_ext"><span·class="id"·title="lemma">provable_prop_ext</span></a>·:<br/> |
187 | <a·class="idref"·href="Coq.Logic.ClassicalFacts.html#prop_extensionality"><span·class="id"·title="definition">prop_extensionality</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.ClassicalFacts.html#provable_prop_extensionality"><span·class="id"·title="definition">provable_prop_extensionality</span></a>.<br/> | 187 | <a·class="idref"·href="Coq.Logic.ClassicalFacts.html#prop_extensionality"><span·class="id"·title="definition">prop_extensionality</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.ClassicalFacts.html#provable_prop_extensionality"><span·class="id"·title="definition">provable_prop_extensionality</span></a>.<br/> |
188 | <br/> | 188 | <br/> |
189 | </div> | 189 | </div> |
190 | <div·class="doc"> | 190 | <div·class="doc"> |
191 | <a·id="lab | 191 | <a·id="lab546"></a><h1·class="section">Classical·logic·and·proof-irrelevance</h1> |
192 | <div·class="paragraph">·</div> | 192 | <div·class="paragraph">·</div> |
193 | <a·id="lab | 193 | <a·id="lab547"></a><h2·class="section">CC·|-·prop·ext·+·A·inhabited·->·(A·=·A->A)·->·A·has·fixpoint</h2> |
194 | <div·class="paragraph">·</div> | 194 | <div·class="paragraph">·</div> |
195 | ·We·successively·show·that: | 195 | ·We·successively·show·that: |
196 | <div·class="paragraph">·</div> | 196 | <div·class="paragraph">·</div> |
Offset 243, 15 lines modified | Offset 243, 15 lines modified | ||
243 | <div·class="doc"> | 243 | <div·class="doc"> |
244 | Remark:·<span·class="inlinecode"><span·class="id"·title="var">prop_extensionality</span></span>·can·be·replaced·in·lemma·<span·class="inlinecode"><span·class="id"·title="var">ext_prop_fixpoint</span></span> | 244 | Remark:·<span·class="inlinecode"><span·class="id"·title="var">prop_extensionality</span></span>·can·be·replaced·in·lemma·<span·class="inlinecode"><span·class="id"·title="var">ext_prop_fixpoint</span></span> |
245 | ····by·the·weakest·property·<span·class="inlinecode"><span·class="id"·title="var">provable_prop_extensionality</span></span>. | 245 | ····by·the·weakest·property·<span·class="inlinecode"><span·class="id"·title="var">provable_prop_extensionality</span></span>. |
246 | <div·class="paragraph">·</div> | 246 | <div·class="paragraph">·</div> |
247 | <a·id="lab | 247 | <a·id="lab548"></a><h2·class="section">CC·|-·prop_ext·/\·dep·elim·on·bool·->·proof-irrelevance</h2> |
248 | <div·class="paragraph">·</div> | 248 | <div·class="paragraph">·</div> |
249 | ·<span·class="inlinecode"><span·class="id"·title="var">proof_irrelevance</span></span>·asserts·equality·of·all·proofs·of·a·given·formula· | 249 | ·<span·class="inlinecode"><span·class="id"·title="var">proof_irrelevance</span></span>·asserts·equality·of·all·proofs·of·a·given·formula· |
250 | </div> | 250 | </div> |
251 | <div·class="code"> | 251 | <div·class="code"> |
252 | <span·class="id"·title="keyword">Definition</span>·<a·id="proof_irrelevance"·class="idref"·href="#proof_irrelevance"><span·class="id"·title="definition">proof_irrelevance</span></a>·:=·<span·class="id"·title="keyword">forall</span>·(<a·id="A:42"·class="idref"·href="#A:42"><span·class="id"·title="binder">A</span></a>:<span·class="id"·title="keyword">Prop</span>)·(<a·id="a1:43"·class="idref"·href="#a1:43"><span·class="id"·title="binder">a1</span></a>·<a·id="a2:44"·class="idref"·href="#a2:44"><span·class="id"·title="binder">a2</span></a>:<a·class="idref"·href="Coq.Logic.ClassicalFacts.html#A:42"><span·class="id"·title="variable">A</span></a>),·<a·class="idref"·href="Coq.Logic.ClassicalFacts.html#a1:43"><span·class="id"·title="variable">a1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Logic.ClassicalFacts.html#a2:44"><span·class="id"·title="variable">a2</span></a>.<br/> | 252 | <span·class="id"·title="keyword">Definition</span>·<a·id="proof_irrelevance"·class="idref"·href="#proof_irrelevance"><span·class="id"·title="definition">proof_irrelevance</span></a>·:=·<span·class="id"·title="keyword">forall</span>·(<a·id="A:42"·class="idref"·href="#A:42"><span·class="id"·title="binder">A</span></a>:<span·class="id"·title="keyword">Prop</span>)·(<a·id="a1:43"·class="idref"·href="#a1:43"><span·class="id"·title="binder">a1</span></a>·<a·id="a2:44"·class="idref"·href="#a2:44"><span·class="id"·title="binder">a2</span></a>:<a·class="idref"·href="Coq.Logic.ClassicalFacts.html#A:42"><span·class="id"·title="variable">A</span></a>),·<a·class="idref"·href="Coq.Logic.ClassicalFacts.html#a1:43"><span·class="id"·title="variable">a1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Logic.ClassicalFacts.html#a2:44"><span·class="id"·title="variable">a2</span></a>.<br/> |
Offset 340, 15 lines modified | Offset 340, 15 lines modified | ||
340 | <div·class="doc"> | 340 | <div·class="doc"> |
341 | Remark:·<span·class="inlinecode"><span·class="id"·title="var">prop_extensionality</span></span>·can·be·replaced·in·lemma | 341 | Remark:·<span·class="inlinecode"><span·class="id"·title="var">prop_extensionality</span></span>·can·be·replaced·in·lemma |
342 | ····<span·class="inlinecode"><span·class="id"·title="var">ext_prop_dep_proof_irrel_gen</span></span>·by·the·weakest·property | 342 | ····<span·class="inlinecode"><span·class="id"·title="var">ext_prop_dep_proof_irrel_gen</span></span>·by·the·weakest·property |
343 | ····<span·class="inlinecode"><span·class="id"·title="var">provable_prop_extensionality</span></span>. | 343 | ····<span·class="inlinecode"><span·class="id"·title="var">provable_prop_extensionality</span></span>. |
344 | <div·class="paragraph">·</div> | 344 | <div·class="paragraph">·</div> |
345 | <a·id="lab | 345 | <a·id="lab549"></a><h2·class="section">CIC·|-·prop.·ext.·->·proof-irrelevance</h2> |
346 | <div·class="paragraph">·</div> | 346 | <div·class="paragraph">·</div> |
347 | ·In·the·Calculus·of·Inductive·Constructions,·inductively·defined·booleans | 347 | ·In·the·Calculus·of·Inductive·Constructions,·inductively·defined·booleans |
348 | ····enjoy·dependent·case·analysis,·hence·directly·proof-irrelevance·from | 348 | ····enjoy·dependent·case·analysis,·hence·directly·proof-irrelevance·from |
349 | ····propositional·extensionality. | 349 | ····propositional·extensionality. |
Offset 394, 15 lines modified | Offset 394, 15 lines modified | ||
394 | ··<span·class="inlinecode">[<span·class="id"·title="var">Berardi90</span>]</span>·Stefano·Berardi,·"Type·dependence·and·constructive | 394 | ··<span·class="inlinecode">[<span·class="id"·title="var">Berardi90</span>]</span>·Stefano·Berardi,·"Type·dependence·and·constructive |
395 | ··mathematics",·Ph.·D.·thesis,·Dipartimento·Matematica,·Università·di | 395 | ··mathematics",·Ph.·D.·thesis,·Dipartimento·Matematica,·Università·di |
396 | ··Torino,·1990. | 396 | ··Torino,·1990. |
397 | <div·class="paragraph">·</div> | 397 | <div·class="paragraph">·</div> |
398 | <a·id="lab | 398 | <a·id="lab550"></a><h2·class="section">CC·|-·excluded-middle·+·dep·elim·on·bool·->·proof-irrelevance</h2> |
399 | <div·class="paragraph">·</div> | 399 | <div·class="paragraph">·</div> |
400 | ·This·is·a·proof·in·the·pure·Calculus·of·Construction·that | 400 | ·This·is·a·proof·in·the·pure·Calculus·of·Construction·that |
401 | ····classical·logic·in·<span·class="inlinecode"><span·class="id"·title="keyword">Prop</span></span>·+·dependent·elimination·of·disjunction·entails | 401 | ····classical·logic·in·<span·class="inlinecode"><span·class="id"·title="keyword">Prop</span></span>·+·dependent·elimination·of·disjunction·entails |
402 | ····proof-irrelevance. | 402 | ····proof-irrelevance. |
Offset 566, 15 lines modified | Offset 566, 15 lines modified | ||
566 | <br/> | 566 | <br/> |
567 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Logic.ClassicalFacts.html#Proof_irrelevance_WEM_CC"><span·class="id"·title="section">Proof_irrelevance_WEM_CC</span></a>.<br/> | 567 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Logic.ClassicalFacts.html#Proof_irrelevance_WEM_CC"><span·class="id"·title="section">Proof_irrelevance_WEM_CC</span></a>.<br/> |
568 | <br/> | 568 | <br/> |
569 | </div> | 569 | </div> |
570 | <div·class="doc"> | 570 | <div·class="doc"> |
571 | <a·id="lab | 571 | <a·id="lab551"></a><h2·class="section">CIC·|-·excluded-middle·->·proof-irrelevance</h2> |
572 | <div·class="paragraph">·</div> | 572 | <div·class="paragraph">·</div> |
573 | <div·class="paragraph">·</div> | 573 | <div·class="paragraph">·</div> |
574 | ····Since,·dependent·elimination·is·derivable·in·the·Calculus·of | 574 | ····Since,·dependent·elimination·is·derivable·in·the·Calculus·of |
Offset 631, 15 lines modified | Offset 631, 15 lines modified | ||
631 | Remark:·in·the·Set-impredicative·CCI,·Hurkens'·paradox·still·holds·with | 631 | Remark:·in·the·Set-impredicative·CCI,·Hurkens'·paradox·still·holds·with |
632 | ····<span·class="inlinecode"><span·class="id"·title="var">bool</span></span>·in·<span·class="inlinecode"><span·class="id"·title="keyword">Set</span></span>·and·since·<span·class="inlinecode">~<span·class="id"·title="var">true</span>=<span·class="id"·title="var">false</span></span>·for·<span·class="inlinecode"><span·class="id"·title="var">true</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">false</span></span> | 632 | ····<span·class="inlinecode"><span·class="id"·title="var">bool</span></span>·in·<span·class="inlinecode"><span·class="id"·title="keyword">Set</span></span>·and·since·<span·class="inlinecode">~<span·class="id"·title="var">true</span>=<span·class="id"·title="var">false</span></span>·for·<span·class="inlinecode"><span·class="id"·title="var">true</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">false</span></span> |
633 | ····in·<span·class="inlinecode"><span·class="id"·title="var">bool</span></span>·from·<span·class="inlinecode"><span·class="id"·title="keyword">Set</span></span>,·we·get·the·inconsistency·of | 633 | ····in·<span·class="inlinecode"><span·class="id"·title="var">bool</span></span>·from·<span·class="inlinecode"><span·class="id"·title="keyword">Set</span></span>,·we·get·the·inconsistency·of |
634 | ····<span·class="inlinecode"><span·class="id"·title="var">em</span></span>·<span·class="inlinecode">:</span>·<span·class="inlinecode"><span·class="id"·title="keyword">forall</span></span>·<span·class="inlinecode"><span·class="id"·title="var">A</span>:<span·class="id"·title="keyword">Prop</span>,</span>·<span·class="inlinecode">{<span·class="id"·title="var">A</span>}+{~<span·class="id"·title="var">A</span>}</span>·in·the·Set-impredicative·CCI. | 634 | ····<span·class="inlinecode"><span·class="id"·title="var">em</span></span>·<span·class="inlinecode">:</span>·<span·class="inlinecode"><span·class="id"·title="keyword">forall</span></span>·<span·class="inlinecode"><span·class="id"·title="var">A</span>:<span·class="id"·title="keyword">Prop</span>,</span>·<span·class="inlinecode">{<span·class="id"·title="var">A</span>}+{~<span·class="id"·title="var">A</span>}</span>·in·the·Set-impredicative·CCI. |
635 | <div·class="paragraph">·</div> | 635 | <div·class="paragraph">·</div> |
636 | <a·id="lab | 636 | <a·id="lab552"></a><h1·class="section">Weak·classical·axioms</h1> |
637 | <div·class="paragraph">·</div> | 637 | <div·class="paragraph">·</div> |
638 | ·We·show·the·following·increasing·in·the·strength·of·axioms: | 638 | ·We·show·the·following·increasing·in·the·strength·of·axioms: |
639 | <ul·class="doclist"> | 639 | <ul·class="doclist"> |
640 | <li>·weak·excluded-middle·and·classical·De·Morgan's·law | 640 | <li>·weak·excluded-middle·and·classical·De·Morgan's·law |
Offset 653, 15 lines modified | Offset 653, 15 lines modified | ||
653 | <li>·excluded-middle | 653 | <li>·excluded-middle |
654 | </li> | 654 | </li> |
655 | </ul> | 655 | </ul> |
656 | <div·class="paragraph">·</div> | 656 | <div·class="paragraph">·</div> |
657 | <a·id="lab | 657 | <a·id="lab553"></a><h2·class="section">Weak·excluded-middle</h2> |
658 | <div·class="paragraph">·</div> | 658 | <div·class="paragraph">·</div> |
Max diff block lines reached; 6087/15012 bytes (40.55%) of diff not shown. |
Offset 104, 15 lines modified | Offset 104, 15 lines modified | ||
104 | <div·class="code"> | 104 | <div·class="code"> |
105 | <span·class="id"·title="keyword">Require</span>·<a·class="idref"·href="Coq.Logic.ClassicalFacts.html#"><span·class="id"·title="library">ClassicalFacts</span></a>·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#"><span·class="id"·title="library">ChoiceFacts</span></a>.<br/> | 105 | <span·class="id"·title="keyword">Require</span>·<a·class="idref"·href="Coq.Logic.ClassicalFacts.html#"><span·class="id"·title="library">ClassicalFacts</span></a>·<a·class="idref"·href="Coq.Logic.ChoiceFacts.html#"><span·class="id"·title="library">ChoiceFacts</span></a>.<br/> |
106 | <br/> | 106 | <br/> |
107 | </div> | 107 | </div> |
108 | <div·class="doc"> | 108 | <div·class="doc"> |
109 | <a·id="lab | 109 | <a·id="lab565"></a><h1·class="section">Pred.·Ext.·+·Rel.·Axiom·of·Choice·->·Excluded-Middle</h1> |
110 | </div> | 110 | </div> |
111 | <div·class="code"> | 111 | <div·class="code"> |
112 | <br/> | 112 | <br/> |
113 | <span·class="id"·title="keyword">Section</span>·<a·id="PredExt_RelChoice_imp_EM"·class="idref"·href="#PredExt_RelChoice_imp_EM"><span·class="id"·title="section">PredExt_RelChoice_imp_EM</span></a>.<br/> | 113 | <span·class="id"·title="keyword">Section</span>·<a·id="PredExt_RelChoice_imp_EM"·class="idref"·href="#PredExt_RelChoice_imp_EM"><span·class="id"·title="section">PredExt_RelChoice_imp_EM</span></a>.<br/> |
Offset 200, 15 lines modified | Offset 200, 15 lines modified | ||
200 | <br/> | 200 | <br/> |
201 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Logic.Diaconescu.html#PredExt_RelChoice_imp_EM"><span·class="id"·title="section">PredExt_RelChoice_imp_EM</span></a>.<br/> | 201 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Logic.Diaconescu.html#PredExt_RelChoice_imp_EM"><span·class="id"·title="section">PredExt_RelChoice_imp_EM</span></a>.<br/> |
202 | <br/> | 202 | <br/> |
203 | </div> | 203 | </div> |
204 | <div·class="doc"> | 204 | <div·class="doc"> |
205 | <a·id="lab | 205 | <a·id="lab566"></a><h1·class="section">Proof-Irrel.·+·Rel.·Axiom·of·Choice·->·Excl.-Middle·for·Equality</h1> |
206 | <div·class="paragraph">·</div> | 206 | <div·class="paragraph">·</div> |
207 | ·This·is·an·adaptation·of·Diaconescu's·theorem,·exploiting·the | 207 | ·This·is·an·adaptation·of·Diaconescu's·theorem,·exploiting·the |
208 | ····form·of·extensionality·provided·by·proof-irrelevance· | 208 | ····form·of·extensionality·provided·by·proof-irrelevance· |
209 | </div> | 209 | </div> |
210 | <div·class="code"> | 210 | <div·class="code"> |
Offset 307, 15 lines modified | Offset 307, 15 lines modified | ||
307 | <br/> | 307 | <br/> |
308 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Logic.Diaconescu.html#ProofIrrel_RelChoice_imp_EqEM"><span·class="id"·title="section">ProofIrrel_RelChoice_imp_EqEM</span></a>.<br/> | 308 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Logic.Diaconescu.html#ProofIrrel_RelChoice_imp_EqEM"><span·class="id"·title="section">ProofIrrel_RelChoice_imp_EqEM</span></a>.<br/> |
309 | <br/> | 309 | <br/> |
310 | </div> | 310 | </div> |
311 | <div·class="doc"> | 311 | <div·class="doc"> |
312 | <a·id="lab | 312 | <a·id="lab567"></a><h1·class="section">Extensional·Hilbert's·epsilon·description·operator·->·Excluded-Middle</h1> |
313 | <div·class="paragraph">·</div> | 313 | <div·class="paragraph">·</div> |
314 | ·Proof·sketch·from·Bell·<span·class="inlinecode">[<span·class="id"·title="var">Bell93</span>]</span>·(with·thanks·to·P.·Castéran)· | 314 | ·Proof·sketch·from·Bell·<span·class="inlinecode">[<span·class="id"·title="var">Bell93</span>]</span>·(with·thanks·to·P.·Castéran)· |
315 | </div> | 315 | </div> |
316 | <div·class="code"> | 316 | <div·class="code"> |
Offset 112, 15 lines modified | Offset 112, 15 lines modified | ||
112 | ···equalities·assuming·axiom·eq_rect_eq | 112 | ···equalities·assuming·axiom·eq_rect_eq |
113 | <div·class="paragraph">·</div> | 113 | <div·class="paragraph">·</div> |
114 | <div·class="paragraph">·</div> | 114 | <div·class="paragraph">·</div> |
115 | <a·id="lab | 115 | <a·id="lab542"></a><h1·class="section">Definition·of·dependent·equality·and·equivalence·with·equality·of·dependent·pairs</h1> |
116 | </div> | 116 | </div> |
117 | <div·class="code"> | 117 | <div·class="code"> |
118 | <br/> | 118 | <br/> |
119 | <span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Logic.html#EqNotations"><span·class="id"·title="module">EqNotations</span></a>.<br/> | 119 | <span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Logic.html#EqNotations"><span·class="id"·title="module">EqNotations</span></a>.<br/> |
Offset 280, 15 lines modified | Offset 280, 15 lines modified | ||
280 | #[<span·class="id"·title="var">global</span>]<br/> | 280 | #[<span·class="id"·title="var">global</span>]<br/> |
281 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Immediate</span>·<span·class="id"·title="var">eq_dep_sym</span>:·<span·class="id"·title="var">core</span>.<br/> | 281 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Immediate</span>·<span·class="id"·title="var">eq_dep_sym</span>:·<span·class="id"·title="var">core</span>.<br/> |
282 | <br/> | 282 | <br/> |
283 | </div> | 283 | </div> |
284 | <div·class="doc"> | 284 | <div·class="doc"> |
285 | <a·id="lab | 285 | <a·id="lab543"></a><h1·class="section">Eq_rect_eq·<->·Eq_dep_eq·<->·UIP·<->·UIP_refl·<->·K</h1> |
286 | </div> | 286 | </div> |
287 | <div·class="code"> | 287 | <div·class="code"> |
288 | <br/> | 288 | <br/> |
289 | <span·class="id"·title="keyword">Section</span>·<a·id="Equivalences"·class="idref"·href="#Equivalences"><span·class="id"·title="section">Equivalences</span></a>.<br/> | 289 | <span·class="id"·title="keyword">Section</span>·<a·id="Equivalences"·class="idref"·href="#Equivalences"><span·class="id"·title="section">Equivalences</span></a>.<br/> |
Offset 506, 15 lines modified | Offset 506, 15 lines modified | ||
506 | <span·class="id"·title="keyword">Notation</span>·<a·id="Inj_dep_pairT"·class="idref"·href="#Inj_dep_pairT"><span·class="id"·title="abbreviation">Inj_dep_pairT</span></a>·:=·<a·class="idref"·href="Coq.Logic.EqdepFacts.html#Inj_dep_pair"><span·class="id"·title="definition">Inj_dep_pair</span></a>.<br/> | 506 | <span·class="id"·title="keyword">Notation</span>·<a·id="Inj_dep_pairT"·class="idref"·href="#Inj_dep_pairT"><span·class="id"·title="abbreviation">Inj_dep_pairT</span></a>·:=·<a·class="idref"·href="Coq.Logic.EqdepFacts.html#Inj_dep_pair"><span·class="id"·title="definition">Inj_dep_pair</span></a>.<br/> |
507 | <span·class="id"·title="keyword">Notation</span>·<a·id="eq_dep_eq__inj_pairT2"·class="idref"·href="#eq_dep_eq__inj_pairT2"><span·class="id"·title="abbreviation">eq_dep_eq__inj_pairT2</span></a>·:=·<a·class="idref"·href="Coq.Logic.EqdepFacts.html#eq_dep_eq__inj_pair2"><span·class="id"·title="lemma">eq_dep_eq__inj_pair2</span></a>.<br/> | 507 | <span·class="id"·title="keyword">Notation</span>·<a·id="eq_dep_eq__inj_pairT2"·class="idref"·href="#eq_dep_eq__inj_pairT2"><span·class="id"·title="abbreviation">eq_dep_eq__inj_pairT2</span></a>·:=·<a·class="idref"·href="Coq.Logic.EqdepFacts.html#eq_dep_eq__inj_pair2"><span·class="id"·title="lemma">eq_dep_eq__inj_pair2</span></a>.<br/> |
508 | <br/> | 508 | <br/> |
509 | </div> | 509 | </div> |
510 | <div·class="doc"> | 510 | <div·class="doc"> |
511 | <a·id="lab | 511 | <a·id="lab544"></a><h1·class="section">Definition·of·the·functor·that·builds·properties·of·dependent·equalities·assuming·axiom·eq_rect_eq</h1> |
512 | </div> | 512 | </div> |
513 | <div·class="code"> | 513 | <div·class="code"> |
514 | <br/> | 514 | <br/> |
515 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="EqdepElimination"·class="idref"·href="#EqdepElimination"><span·class="id"·title="module">EqdepElimination</span></a>.<br/> | 515 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="EqdepElimination"·class="idref"·href="#EqdepElimination"><span·class="id"·title="module">EqdepElimination</span></a>.<br/> |
Offset 84, 15 lines modified | Offset 84, 15 lines modified | ||
84 | ·····from·a·proof·of·decidability·of·equality·for·a·set·in·Set | 84 | ·····from·a·proof·of·decidability·of·equality·for·a·set·in·Set |
85 | <div·class="paragraph">·</div> | 85 | <div·class="paragraph">·</div> |
86 | <div·class="paragraph">·</div> | 86 | <div·class="paragraph">·</div> |
87 | <a·id="lab | 87 | <a·id="lab597"></a><h1·class="section">Streicher's·K·and·injectivity·of·dependent·pair·hold·on·decidable·types</h1> |
88 | </div> | 88 | </div> |
89 | <div·class="code"> | 89 | <div·class="code"> |
90 | <br/> | 90 | <br/> |
91 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> | 91 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> |
Offset 245, 15 lines modified | Offset 245, 15 lines modified | ||
245 | <br/> | 245 | <br/> |
246 | <span·class="id"·title="keyword">Unset·Implicit·Arguments</span>.<br/> | 246 | <span·class="id"·title="keyword">Unset·Implicit·Arguments</span>.<br/> |
247 | <br/> | 247 | <br/> |
248 | </div> | 248 | </div> |
249 | <div·class="doc"> | 249 | <div·class="doc"> |
250 | <a·id="lab | 250 | <a·id="lab598"></a><h2·class="section">Definition·of·the·functor·that·builds·properties·of·dependent·equalities·on·decidable·sets·in·Type</h2> |
251 | <div·class="paragraph">·</div> | 251 | <div·class="paragraph">·</div> |
252 | ·The·signature·of·decidable·sets·in·<span·class="inlinecode"><span·class="id"·title="keyword">Type</span></span>· | 252 | ·The·signature·of·decidable·sets·in·<span·class="inlinecode"><span·class="id"·title="keyword">Type</span></span>· |
253 | </div> | 253 | </div> |
254 | <div·class="code"> | 254 | <div·class="code"> |
Offset 369, 15 lines modified | Offset 369, 15 lines modified | ||
369 | <br/> | 369 | <br/> |
370 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Logic.Eqdep_dec.html#DecidableEqDep"><span·class="id"·title="module">DecidableEqDep</span></a>.<br/> | 370 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Logic.Eqdep_dec.html#DecidableEqDep"><span·class="id"·title="module">DecidableEqDep</span></a>.<br/> |
371 | <br/> | 371 | <br/> |
372 | </div> | 372 | </div> |
373 | <div·class="doc"> | 373 | <div·class="doc"> |
374 | <a·id="lab | 374 | <a·id="lab599"></a><h2·class="section">Definition·of·the·functor·that·builds·properties·of·dependent·equalities·on·decidable·sets·in·Set</h2> |
375 | <div·class="paragraph">·</div> | 375 | <div·class="paragraph">·</div> |
376 | ·The·signature·of·decidable·sets·in·<span·class="inlinecode"><span·class="id"·title="keyword">Set</span></span>· | 376 | ·The·signature·of·decidable·sets·in·<span·class="inlinecode"><span·class="id"·title="keyword">Set</span></span>· |
377 | </div> | 377 | </div> |
378 | <div·class="code"> | 378 | <div·class="code"> |
Offset 101, 15 lines modified | Offset 101, 15 lines modified | ||
101 | <br/> | 101 | <br/> |
102 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> | 102 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> |
103 | <br/> | 103 | <br/> |
104 | </div> | 104 | </div> |
105 | <div·class="doc"> | 105 | <div·class="doc"> |
106 | <a·id="lab | 106 | <a·id="lab561"></a><h1·class="section">Definitions</h1> |
107 | <div·class="paragraph">·</div> | 107 | <div·class="paragraph">·</div> |
108 | ·Being·an·inverse· | 108 | ·Being·an·inverse· |
109 | </div> | 109 | </div> |
110 | <div·class="code"> | 110 | <div·class="code"> |
Offset 193, 27 lines modified | Offset 193, 27 lines modified | ||
193 | <span·class="id"·title="keyword">Local·Notation</span>·<a·id="BijectivityBijectiveComp"·class="idref"·href="#BijectivityBijectiveComp"><span·class="id"·title="abbreviation">BijectivityBijectiveComp</span></a>·:=·(<span·class="id"·title="keyword">forall</span>·<a·id="A:35"·class="idref"·href="#A:35"><span·class="id"·title="binder">A</span></a>·<a·id="B:36"·class="idref"·href="#B:36"><span·class="id"·title="binder">B</span></a>·<a·id="C:37"·class="idref"·href="#C:37"><span·class="id"·title="binder">C</span></a>·(<a·id="f:38"·class="idref"·href="#f:38"><span·class="id"·title="binder">f</span></a>:<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#A:35"><span·class="id"·title="variable">A</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#B:36"><span·class="id"·title="variable">B</span></a>)·<a·id="g:39"·class="idref"·href="#g:39"><span·class="id"·title="binder">g</span></a>,<br/> | 193 | <span·class="id"·title="keyword">Local·Notation</span>·<a·id="BijectivityBijectiveComp"·class="idref"·href="#BijectivityBijectiveComp"><span·class="id"·title="abbreviation">BijectivityBijectiveComp</span></a>·:=·(<span·class="id"·title="keyword">forall</span>·<a·id="A:35"·class="idref"·href="#A:35"><span·class="id"·title="binder">A</span></a>·<a·id="B:36"·class="idref"·href="#B:36"><span·class="id"·title="binder">B</span></a>·<a·id="C:37"·class="idref"·href="#C:37"><span·class="id"·title="binder">C</span></a>·(<a·id="f:38"·class="idref"·href="#f:38"><span·class="id"·title="binder">f</span></a>:<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#A:35"><span·class="id"·title="variable">A</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#B:36"><span·class="id"·title="variable">B</span></a>)·<a·id="g:39"·class="idref"·href="#g:39"><span·class="id"·title="binder">g</span></a>,<br/> |
194 | <a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#is_inverse"><span·class="id"·title="definition">is_inverse</span></a>·<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#f:38"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#g:39"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#is_inverse"><span·class="id"·title="definition">is_inverse</span></a>·(<span·class="id"·title="var">A</span>:=<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#B:36"><span·class="id"·title="variable">B</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#C:37"><span·class="id"·title="variable">C</span></a>)·(<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#action"><span·class="id"·title="definition">action</span></a>·<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#f:38"><span·class="id"·title="variable">f</span></a>)·(<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#action"><span·class="id"·title="definition">action</span></a>·<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#g:39"><span·class="id"·title="variable">g</span></a>)).<br/> | 194 | <a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#is_inverse"><span·class="id"·title="definition">is_inverse</span></a>·<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#f:38"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#g:39"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#is_inverse"><span·class="id"·title="definition">is_inverse</span></a>·(<span·class="id"·title="var">A</span>:=<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#B:36"><span·class="id"·title="variable">B</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#C:37"><span·class="id"·title="variable">C</span></a>)·(<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#action"><span·class="id"·title="definition">action</span></a>·<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#f:38"><span·class="id"·title="variable">f</span></a>)·(<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#action"><span·class="id"·title="definition">action</span></a>·<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#g:39"><span·class="id"·title="variable">g</span></a>)).<br/> |
195 | <br/> | 195 | <br/> |
196 | </div> | 196 | </div> |
197 | <div·class="doc"> | 197 | <div·class="doc"> |
198 | <a·id="lab | 198 | <a·id="lab562"></a><h1·class="section">Functional·extensionality·<->·Equality·of·projections·from·diagonal</h1> |
199 | </div> | 199 | </div> |
200 | <div·class="code"> | 200 | <div·class="code"> |
201 | <br/> | 201 | <br/> |
202 | <span·class="id"·title="keyword">Theorem</span>·<a·id="FunctExt_iff_EqDeltaProjs"·class="idref"·href="#FunctExt_iff_EqDeltaProjs"><span·class="id"·title="lemma">FunctExt_iff_EqDeltaProjs</span></a>·:·<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#FunctionalExtensionality"><span·class="id"·title="abbreviation">FunctionalExtensionality</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#EqDeltaProjs"><span·class="id"·title="abbreviation">EqDeltaProjs</span></a>.<br/> | 202 | <span·class="id"·title="keyword">Theorem</span>·<a·id="FunctExt_iff_EqDeltaProjs"·class="idref"·href="#FunctExt_iff_EqDeltaProjs"><span·class="id"·title="lemma">FunctExt_iff_EqDeltaProjs</span></a>·:·<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#FunctionalExtensionality"><span·class="id"·title="abbreviation">FunctionalExtensionality</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#EqDeltaProjs"><span·class="id"·title="abbreviation">EqDeltaProjs</span></a>.<br/> |
203 | <br/> | 203 | <br/> |
204 | </div> | 204 | </div> |
205 | <div·class="doc"> | 205 | <div·class="doc"> |
206 | <a·id="lab | 206 | <a·id="lab563"></a><h1·class="section">Functional·extensionality·<->·Unicity·of·bijection·inverse</h1> |
207 | </div> | 207 | </div> |
208 | <div·class="code"> | 208 | <div·class="code"> |
209 | <br/> | 209 | <br/> |
210 | <span·class="id"·title="keyword">Lemma</span>·<a·id="FunctExt_UniqInverse"·class="idref"·href="#FunctExt_UniqInverse"><span·class="id"·title="lemma">FunctExt_UniqInverse</span></a>·:·<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#FunctionalExtensionality"><span·class="id"·title="abbreviation">FunctionalExtensionality</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#UniqueInverse"><span·class="id"·title="abbreviation">UniqueInverse</span></a>.<br/> | 210 | <span·class="id"·title="keyword">Lemma</span>·<a·id="FunctExt_UniqInverse"·class="idref"·href="#FunctExt_UniqInverse"><span·class="id"·title="lemma">FunctExt_UniqInverse</span></a>·:·<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#FunctionalExtensionality"><span·class="id"·title="abbreviation">FunctionalExtensionality</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#UniqueInverse"><span·class="id"·title="abbreviation">UniqueInverse</span></a>.<br/> |
Offset 223, 15 lines modified | Offset 223, 15 lines modified | ||
223 | <br/> | 223 | <br/> |
224 | <span·class="id"·title="keyword">Theorem</span>·<a·id="FunctExt_iff_UniqInverse"·class="idref"·href="#FunctExt_iff_UniqInverse"><span·class="id"·title="lemma">FunctExt_iff_UniqInverse</span></a>·:·<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#FunctionalExtensionality"><span·class="id"·title="abbreviation">FunctionalExtensionality</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#UniqueInverse"><span·class="id"·title="abbreviation">UniqueInverse</span></a>.<br/> | 224 | <span·class="id"·title="keyword">Theorem</span>·<a·id="FunctExt_iff_UniqInverse"·class="idref"·href="#FunctExt_iff_UniqInverse"><span·class="id"·title="lemma">FunctExt_iff_UniqInverse</span></a>·:·<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#FunctionalExtensionality"><span·class="id"·title="abbreviation">FunctionalExtensionality</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#UniqueInverse"><span·class="id"·title="abbreviation">UniqueInverse</span></a>.<br/> |
225 | <br/> | 225 | <br/> |
226 | </div> | 226 | </div> |
227 | <div·class="doc"> | 227 | <div·class="doc"> |
228 | <a·id="lab | 228 | <a·id="lab564"></a><h1·class="section">Functional·extensionality·<->·Bijectivity·of·bijective·composition</h1> |
229 | </div> | 229 | </div> |
230 | <div·class="code"> | 230 | <div·class="code"> |
231 | <br/> | 231 | <br/> |
232 | <span·class="id"·title="keyword">Lemma</span>·<a·id="FunctExt_BijComp"·class="idref"·href="#FunctExt_BijComp"><span·class="id"·title="lemma">FunctExt_BijComp</span></a>·:·<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#FunctionalExtensionality"><span·class="id"·title="abbreviation">FunctionalExtensionality</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#BijectivityBijectiveComp"><span·class="id"·title="abbreviation">BijectivityBijectiveComp</span></a>.<br/> | 232 | <span·class="id"·title="keyword">Lemma</span>·<a·id="FunctExt_BijComp"·class="idref"·href="#FunctExt_BijComp"><span·class="id"·title="lemma">FunctExt_BijComp</span></a>·:·<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#FunctionalExtensionality"><span·class="id"·title="abbreviation">FunctionalExtensionality</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.ExtensionalityFacts.html#BijectivityBijectiveComp"><span·class="id"·title="abbreviation">BijectivityBijectiveComp</span></a>.<br/> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab600"></a><h1·class="section">Functions·on·finite·domains</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·Main·result·:·for·functions·<span·class="inlinecode"><span·class="id"·title="var">f</span>:<span·class="id"·title="var">A</span>-><span·class="id"·title="var">A</span></span>·with·finite·<span·class="inlinecode"><span·class="id"·title="var">A</span></span>, | 51 | ·Main·result·:·for·functions·<span·class="inlinecode"><span·class="id"·title="var">f</span>:<span·class="id"·title="var">A</span>-><span·class="id"·title="var">A</span></span>·with·finite·<span·class="inlinecode"><span·class="id"·title="var">A</span></span>, |
52 | ····f·injective·<->·f·bijective·<->·f·surjective.· | 52 | ····f·injective·<->·f·bijective·<->·f·surjective.· |
53 | </div> | 53 | </div> |
54 | <div·class="code"> | 54 | <div·class="code"> |
Offset 172, 15 lines modified | Offset 172, 15 lines modified | ||
172 | <br/> | 172 | <br/> |
173 | <br/> | 173 | <br/> |
174 | </div> | 174 | </div> |
175 | <div·class="doc"> | 175 | <div·class="doc"> |
176 | <a·id="lab | 176 | <a·id="lab606"></a><h1·class="section">A·modular·proof·of·Hurkens's·paradox.</h1> |
177 | <div·class="paragraph">·</div> | 177 | <div·class="paragraph">·</div> |
178 | ·It·relies·on·an·axiomatisation·of·a·shallow·embedding·of·system·U- | 178 | ·It·relies·on·an·axiomatisation·of·a·shallow·embedding·of·system·U- |
179 | ····(i.e.··types·of·U-·are·interpreted·by·types·of·Coq).·The | 179 | ····(i.e.··types·of·U-·are·interpreted·by·types·of·Coq).·The |
180 | ····universes·are·encoded·in·a·style,·due·to·Martin-Löf,·where·they | 180 | ····universes·are·encoded·in·a·style,·due·to·Martin-Löf,·where·they |
181 | ····are·given·by·a·set·of·names·and·a·family·<span·class="inlinecode"><span·class="id"·title="var">El</span>:<span·class="id"·title="var">Name</span>-><span·class="id"·title="keyword">Type</span></span>·which | 181 | ····are·given·by·a·set·of·names·and·a·family·<span·class="inlinecode"><span·class="id"·title="var">El</span>:<span·class="id"·title="var">Name</span>-><span·class="id"·title="keyword">Type</span></span>·which |
Offset 199, 35 lines modified | Offset 199, 35 lines modified | ||
199 | <br/> | 199 | <br/> |
200 | <span·class="id"·title="keyword">Section</span>·<a·id="Generic.Paradox"·class="idref"·href="#Generic.Paradox"><span·class="id"·title="section">Paradox</span></a>.<br/> | 200 | <span·class="id"·title="keyword">Section</span>·<a·id="Generic.Paradox"·class="idref"·href="#Generic.Paradox"><span·class="id"·title="section">Paradox</span></a>.<br/> |
201 | <br/> | 201 | <br/> |
202 | </div> | 202 | </div> |
203 | <div·class="doc"> | 203 | <div·class="doc"> |
204 | <a·id="lab | 204 | <a·id="lab607"></a><h2·class="section">Axiomatisation·of·impredicative·universes·in·a·Martin-Löf·style</h2> |
205 | <div·class="paragraph">·</div> | 205 | <div·class="paragraph">·</div> |
206 | ·System·U-·has·two·impredicative·universes.·In·the·proof·of·the | 206 | ·System·U-·has·two·impredicative·universes.·In·the·proof·of·the |
207 | ····paradox·they·are·slightly·asymmetric·(in·particular·the·reduction | 207 | ····paradox·they·are·slightly·asymmetric·(in·particular·the·reduction |
208 | ····rules·of·the·small·universe·are·not·needed).··Therefore,·the | 208 | ····rules·of·the·small·universe·are·not·needed).··Therefore,·the |
209 | ····axioms·are·duplicated·allowing·for·a·weaker·requirement·than·the | 209 | ····axioms·are·duplicated·allowing·for·a·weaker·requirement·than·the |
210 | ····actual·system·U-.· | 210 | ····actual·system·U-.· |
211 | <div·class="paragraph">·</div> | 211 | <div·class="paragraph">·</div> |
212 | <a·id="lab | 212 | <a·id="lab608"></a><h3·class="section">Large·universe</h3> |
213 | </div> | 213 | </div> |
214 | <div·class="code"> | 214 | <div·class="code"> |
215 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.U1"·class="idref"·href="#Generic.Paradox.U1"><span·class="id"·title="variable">U1</span></a>·:·<span·class="id"·title="keyword">Type</span>.<br/> | 215 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.U1"·class="idref"·href="#Generic.Paradox.U1"><span·class="id"·title="variable">U1</span></a>·:·<span·class="id"·title="keyword">Type</span>.<br/> |
216 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.El1"·class="idref"·href="#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·:·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.U1"><span·class="id"·title="variable">U1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Type</span>.<br/> | 216 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.El1"·class="idref"·href="#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·:·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.U1"><span·class="id"·title="variable">U1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Type</span>.<br/> |
217 | </div> | 217 | </div> |
218 | <div·class="doc"> | 218 | <div·class="doc"> |
219 | <a·id="lab | 219 | <a·id="lab609"></a><h4·class="section">Closure·by·small·product</h4> |
220 | </div> | 220 | </div> |
221 | <div·class="code"> | 221 | <div·class="code"> |
222 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.Forall1"·class="idref"·href="#Generic.Paradox.Forall1"><span·class="id"·title="variable">Forall1</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="u:5"·class="idref"·href="#u:5"><span·class="id"·title="binder">u</span></a>:<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.U1"><span·class="id"·title="variable">U1</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#u:5"><span·class="id"·title="variable">u</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.U1"><span·class="id"·title="variable">U1</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.U1"><span·class="id"·title="variable">U1</span></a>.<br/> | 222 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.Forall1"·class="idref"·href="#Generic.Paradox.Forall1"><span·class="id"·title="variable">Forall1</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="u:5"·class="idref"·href="#u:5"><span·class="id"·title="binder">u</span></a>:<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.U1"><span·class="id"·title="variable">U1</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#u:5"><span·class="id"·title="variable">u</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.U1"><span·class="id"·title="variable">U1</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.U1"><span·class="id"·title="variable">U1</span></a>.<br/> |
223 | <span·class="id"·title="keyword">Notation</span>·<a·id="93c66a444a4bbdfa4bfdf9ff6835b3ee"·class="idref"·href="#93c66a444a4bbdfa4bfdf9ff6835b3ee"><span·class="id"·title="notation">"</span></a>'∀₁'·x·:·A·,·B"·:=·(<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.Forall1"><span·class="id"·title="variable">Forall1</span></a>·<span·class="id"·title="var">A</span>·(<span·class="id"·title="keyword">fun</span>·<a·id="x:8"·class="idref"·href="#x:8"><span·class="id"·title="binder">x</span></a>·=>·<span·class="id"·title="var">B</span>)).<br/> | 223 | <span·class="id"·title="keyword">Notation</span>·<a·id="93c66a444a4bbdfa4bfdf9ff6835b3ee"·class="idref"·href="#93c66a444a4bbdfa4bfdf9ff6835b3ee"><span·class="id"·title="notation">"</span></a>'∀₁'·x·:·A·,·B"·:=·(<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.Forall1"><span·class="id"·title="variable">Forall1</span></a>·<span·class="id"·title="var">A</span>·(<span·class="id"·title="keyword">fun</span>·<a·id="x:8"·class="idref"·href="#x:8"><span·class="id"·title="binder">x</span></a>·=>·<span·class="id"·title="var">B</span>)).<br/> |
224 | <span·class="id"·title="keyword">Notation</span>·<a·id="694e2d3c08fe40b872fc5ba207ec04f2"·class="idref"·href="#694e2d3c08fe40b872fc5ba207ec04f2"><span·class="id"·title="notation">"</span></a>A·'⟶₁'·B"·:=·(<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.Forall1"><span·class="id"·title="variable">Forall1</span></a>·<span·class="id"·title="var">A</span>·(<span·class="id"·title="keyword">fun</span>·<span·class="id"·title="var">_</span>·=>·<span·class="id"·title="var">B</span>)).<br/> | 224 | <span·class="id"·title="keyword">Notation</span>·<a·id="694e2d3c08fe40b872fc5ba207ec04f2"·class="idref"·href="#694e2d3c08fe40b872fc5ba207ec04f2"><span·class="id"·title="notation">"</span></a>A·'⟶₁'·B"·:=·(<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.Forall1"><span·class="id"·title="variable">Forall1</span></a>·<span·class="id"·title="var">A</span>·(<span·class="id"·title="keyword">fun</span>·<span·class="id"·title="var">_</span>·=>·<span·class="id"·title="var">B</span>)).<br/> |
225 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.lam1"·class="idref"·href="#Generic.Paradox.lam1"><span·class="id"·title="variable">lam1</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="u:9"·class="idref"·href="#u:9"><span·class="id"·title="binder">u</span></a>·<a·id="B:10"·class="idref"·href="#B:10"><span·class="id"·title="binder">B</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="x:11"·class="idref"·href="#x:11"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#u:9"><span·class="id"·title="variable">u</span></a>,·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·(<a·class="idref"·href="Coq.Logic.Hurkens.html#B:10"><span·class="id"·title="variable">B</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#x:11"><span·class="id"·title="variable">x</span></a>)<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·(<a·class="idref"·href="Coq.Logic.Hurkens.html#93c66a444a4bbdfa4bfdf9ff6835b3ee"><span·class="id"·title="notation">∀</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#93c66a444a4bbdfa4bfdf9ff6835b3ee"><span·class="id"·title="notation">₁</span></a>·<a·id="x:12"·class="idref"·href="#x:12"><span·class="id"·title="binder">x</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#93c66a444a4bbdfa4bfdf9ff6835b3ee"><span·class="id"·title="notation">:</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#u:9"><span·class="id"·title="variable">u</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#93c66a444a4bbdfa4bfdf9ff6835b3ee"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#B:10"><span·class="id"·title="variable">B</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#x:12"><span·class="id"·title="variable">x</span></a>).<br/> | 225 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.lam1"·class="idref"·href="#Generic.Paradox.lam1"><span·class="id"·title="variable">lam1</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="u:9"·class="idref"·href="#u:9"><span·class="id"·title="binder">u</span></a>·<a·id="B:10"·class="idref"·href="#B:10"><span·class="id"·title="binder">B</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="x:11"·class="idref"·href="#x:11"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#u:9"><span·class="id"·title="variable">u</span></a>,·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·(<a·class="idref"·href="Coq.Logic.Hurkens.html#B:10"><span·class="id"·title="variable">B</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#x:11"><span·class="id"·title="variable">x</span></a>)<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·(<a·class="idref"·href="Coq.Logic.Hurkens.html#93c66a444a4bbdfa4bfdf9ff6835b3ee"><span·class="id"·title="notation">∀</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#93c66a444a4bbdfa4bfdf9ff6835b3ee"><span·class="id"·title="notation">₁</span></a>·<a·id="x:12"·class="idref"·href="#x:12"><span·class="id"·title="binder">x</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#93c66a444a4bbdfa4bfdf9ff6835b3ee"><span·class="id"·title="notation">:</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#u:9"><span·class="id"·title="variable">u</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#93c66a444a4bbdfa4bfdf9ff6835b3ee"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#B:10"><span·class="id"·title="variable">B</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#x:12"><span·class="id"·title="variable">x</span></a>).<br/> |
Offset 235, 15 lines modified | Offset 235, 15 lines modified | ||
235 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.app1"·class="idref"·href="#Generic.Paradox.app1"><span·class="id"·title="variable">app1</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="u:16"·class="idref"·href="#u:16"><span·class="id"·title="binder">u</span></a>·<a·id="B:17"·class="idref"·href="#B:17"><span·class="id"·title="binder">B</span></a>·(<a·id="f:18"·class="idref"·href="#f:18"><span·class="id"·title="binder">f</span></a>:<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·(<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.Forall1"><span·class="id"·title="variable">Forall1</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#u:16"><span·class="id"·title="variable">u</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#B:17"><span·class="id"·title="variable">B</span></a>))·(<a·id="x:19"·class="idref"·href="#x:19"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#u:16"><span·class="id"·title="variable">u</span></a>),·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·(<a·class="idref"·href="Coq.Logic.Hurkens.html#B:17"><span·class="id"·title="variable">B</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#x:19"><span·class="id"·title="variable">x</span></a>).<br/> | 235 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.app1"·class="idref"·href="#Generic.Paradox.app1"><span·class="id"·title="variable">app1</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="u:16"·class="idref"·href="#u:16"><span·class="id"·title="binder">u</span></a>·<a·id="B:17"·class="idref"·href="#B:17"><span·class="id"·title="binder">B</span></a>·(<a·id="f:18"·class="idref"·href="#f:18"><span·class="id"·title="binder">f</span></a>:<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·(<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.Forall1"><span·class="id"·title="variable">Forall1</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#u:16"><span·class="id"·title="variable">u</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#B:17"><span·class="id"·title="variable">B</span></a>))·(<a·id="x:19"·class="idref"·href="#x:19"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#u:16"><span·class="id"·title="variable">u</span></a>),·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·(<a·class="idref"·href="Coq.Logic.Hurkens.html#B:17"><span·class="id"·title="variable">B</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#x:19"><span·class="id"·title="variable">x</span></a>).<br/> |
236 | <span·class="id"·title="keyword">Notation</span>·<a·id="024a937772caef38e05651e49f018fc6"·class="idref"·href="#024a937772caef38e05651e49f018fc6"><span·class="id"·title="notation">"</span></a>f·'·₁'·x"·:=·(<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.app1"><span·class="id"·title="variable">app1</span></a>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">f</span>·<span·class="id"·title="var">x</span>).<br/> | 236 | <span·class="id"·title="keyword">Notation</span>·<a·id="024a937772caef38e05651e49f018fc6"·class="idref"·href="#024a937772caef38e05651e49f018fc6"><span·class="id"·title="notation">"</span></a>f·'·₁'·x"·:=·(<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.app1"><span·class="id"·title="variable">app1</span></a>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">f</span>·<span·class="id"·title="var">x</span>).<br/> |
237 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.beta1"·class="idref"·href="#Generic.Paradox.beta1"><span·class="id"·title="variable">beta1</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="u:22"·class="idref"·href="#u:22"><span·class="id"·title="binder">u</span></a>·<a·id="B:23"·class="idref"·href="#B:23"><span·class="id"·title="binder">B</span></a>·(<a·id="f:25"·class="idref"·href="#f:25"><span·class="id"·title="binder">f</span></a>:<span·class="id"·title="keyword">forall</span>·<a·id="x:24"·class="idref"·href="#x:24"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#u:22"><span·class="id"·title="variable">u</span></a>,·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·(<a·class="idref"·href="Coq.Logic.Hurkens.html#B:23"><span·class="id"·title="variable">B</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#x:24"><span·class="id"·title="variable">x</span></a>))·<a·id="x:26"·class="idref"·href="#x:26"><span·class="id"·title="binder">x</span></a>,<br/> | 237 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.beta1"·class="idref"·href="#Generic.Paradox.beta1"><span·class="id"·title="variable">beta1</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="u:22"·class="idref"·href="#u:22"><span·class="id"·title="binder">u</span></a>·<a·id="B:23"·class="idref"·href="#B:23"><span·class="id"·title="binder">B</span></a>·(<a·id="f:25"·class="idref"·href="#f:25"><span·class="id"·title="binder">f</span></a>:<span·class="id"·title="keyword">forall</span>·<a·id="x:24"·class="idref"·href="#x:24"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#u:22"><span·class="id"·title="variable">u</span></a>,·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·(<a·class="idref"·href="Coq.Logic.Hurkens.html#B:23"><span·class="id"·title="variable">B</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#x:24"><span·class="id"·title="variable">x</span></a>))·<a·id="x:26"·class="idref"·href="#x:26"><span·class="id"·title="binder">x</span></a>,<br/> |
238 | <a·class="idref"·href="Coq.Logic.Hurkens.html#024a937772caef38e05651e49f018fc6"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#1470a9e924e895d0953e36fa53fcb88a"><span·class="id"·title="notation">λ₁</span></a>·<a·id="y:27"·class="idref"·href="#y:27"><span·class="id"·title="binder">y</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#1470a9e924e895d0953e36fa53fcb88a"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#f:25"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#y:27"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#024a937772caef38e05651e49f018fc6"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#024a937772caef38e05651e49f018fc6"><span·class="id"·title="notation">·</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#024a937772caef38e05651e49f018fc6"><span·class="id"·title="notation">₁</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#x:26"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#f:25"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#x:26"><span·class="id"·title="variable">x</span></a>.<br/> | 238 | <a·class="idref"·href="Coq.Logic.Hurkens.html#024a937772caef38e05651e49f018fc6"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#1470a9e924e895d0953e36fa53fcb88a"><span·class="id"·title="notation">λ₁</span></a>·<a·id="y:27"·class="idref"·href="#y:27"><span·class="id"·title="binder">y</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#1470a9e924e895d0953e36fa53fcb88a"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#f:25"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#y:27"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#024a937772caef38e05651e49f018fc6"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#024a937772caef38e05651e49f018fc6"><span·class="id"·title="notation">·</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#024a937772caef38e05651e49f018fc6"><span·class="id"·title="notation">₁</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#x:26"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#f:25"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#x:26"><span·class="id"·title="variable">x</span></a>.<br/> |
239 | </div> | 239 | </div> |
240 | <div·class="doc"> | 240 | <div·class="doc"> |
241 | <a·id="lab | 241 | <a·id="lab610"></a><h4·class="section">Closure·by·large·products</h4> |
242 | ·<span·class="inlinecode"><span·class="id"·title="var">U1</span></span>·only·needs·to·quantify·over·itself.· | 242 | ·<span·class="inlinecode"><span·class="id"·title="var">U1</span></span>·only·needs·to·quantify·over·itself.· |
243 | </div> | 243 | </div> |
244 | <div·class="code"> | 244 | <div·class="code"> |
245 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.ForallU1"·class="idref"·href="#Generic.Paradox.ForallU1"><span·class="id"·title="variable">ForallU1</span></a>·:·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.U1"><span·class="id"·title="variable">U1</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.U1"><span·class="id"·title="variable">U1</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.U1"><span·class="id"·title="variable">U1</span></a>.<br/> | 245 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.ForallU1"·class="idref"·href="#Generic.Paradox.ForallU1"><span·class="id"·title="variable">ForallU1</span></a>·:·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.U1"><span·class="id"·title="variable">U1</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.U1"><span·class="id"·title="variable">U1</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.U1"><span·class="id"·title="variable">U1</span></a>.<br/> |
246 | <span·class="id"·title="keyword">Notation</span>·<a·id="4dd2340270f7207a425b5b7588908785"·class="idref"·href="#4dd2340270f7207a425b5b7588908785"><span·class="id"·title="notation">"</span></a>'∀₂'·A·,·F"·:=·(<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.ForallU1"><span·class="id"·title="variable">ForallU1</span></a>·(<span·class="id"·title="keyword">fun</span>·<a·id="A:32"·class="idref"·href="#A:32"><span·class="id"·title="binder">A</span></a>·=>·<span·class="id"·title="var">F</span>)).<br/> | 246 | <span·class="id"·title="keyword">Notation</span>·<a·id="4dd2340270f7207a425b5b7588908785"·class="idref"·href="#4dd2340270f7207a425b5b7588908785"><span·class="id"·title="notation">"</span></a>'∀₂'·A·,·F"·:=·(<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.ForallU1"><span·class="id"·title="variable">ForallU1</span></a>·(<span·class="id"·title="keyword">fun</span>·<a·id="A:32"·class="idref"·href="#A:32"><span·class="id"·title="binder">A</span></a>·=>·<span·class="id"·title="var">F</span>)).<br/> |
247 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.lamU1"·class="idref"·href="#Generic.Paradox.lamU1"><span·class="id"·title="variable">lamU1</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="F:33"·class="idref"·href="#F:33"><span·class="id"·title="binder">F</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="A:34"·class="idref"·href="#A:34"><span·class="id"·title="binder">A</span></a>:<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.U1"><span·class="id"·title="variable">U1</span></a>,·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·(<a·class="idref"·href="Coq.Logic.Hurkens.html#F:33"><span·class="id"·title="variable">F</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#A:34"><span·class="id"·title="variable">A</span></a>)<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·(<a·class="idref"·href="Coq.Logic.Hurkens.html#4dd2340270f7207a425b5b7588908785"><span·class="id"·title="notation">∀</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#4dd2340270f7207a425b5b7588908785"><span·class="id"·title="notation">₂</span></a>·<a·id="A:35"·class="idref"·href="#A:35"><span·class="id"·title="binder">A</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#4dd2340270f7207a425b5b7588908785"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#F:33"><span·class="id"·title="variable">F</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#A:35"><span·class="id"·title="variable">A</span></a>).<br/> | 247 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.lamU1"·class="idref"·href="#Generic.Paradox.lamU1"><span·class="id"·title="variable">lamU1</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="F:33"·class="idref"·href="#F:33"><span·class="id"·title="binder">F</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="A:34"·class="idref"·href="#A:34"><span·class="id"·title="binder">A</span></a>:<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.U1"><span·class="id"·title="variable">U1</span></a>,·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·(<a·class="idref"·href="Coq.Logic.Hurkens.html#F:33"><span·class="id"·title="variable">F</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#A:34"><span·class="id"·title="variable">A</span></a>)<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·(<a·class="idref"·href="Coq.Logic.Hurkens.html#4dd2340270f7207a425b5b7588908785"><span·class="id"·title="notation">∀</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#4dd2340270f7207a425b5b7588908785"><span·class="id"·title="notation">₂</span></a>·<a·id="A:35"·class="idref"·href="#A:35"><span·class="id"·title="binder">A</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#4dd2340270f7207a425b5b7588908785"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#F:33"><span·class="id"·title="variable">F</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#A:35"><span·class="id"·title="variable">A</span></a>).<br/> |
248 | <span·class="id"·title="keyword">Notation</span>·<a·id="89360f8d6d2f11f4115655ddeef6a69a"·class="idref"·href="#89360f8d6d2f11f4115655ddeef6a69a"><span·class="id"·title="notation">"</span></a>'λ₂'·x·,·u"·:=·(<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.lamU1"><span·class="id"·title="variable">lamU1</span></a>·<span·class="id"·title="var">_</span>·(<span·class="id"·title="keyword">fun</span>·<a·id="x:38"·class="idref"·href="#x:38"><span·class="id"·title="binder">x</span></a>·=>·<span·class="id"·title="var">u</span>)).<br/> | 248 | <span·class="id"·title="keyword">Notation</span>·<a·id="89360f8d6d2f11f4115655ddeef6a69a"·class="idref"·href="#89360f8d6d2f11f4115655ddeef6a69a"><span·class="id"·title="notation">"</span></a>'λ₂'·x·,·u"·:=·(<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.lamU1"><span·class="id"·title="variable">lamU1</span></a>·<span·class="id"·title="var">_</span>·(<span·class="id"·title="keyword">fun</span>·<a·id="x:38"·class="idref"·href="#x:38"><span·class="id"·title="binder">x</span></a>·=>·<span·class="id"·title="var">u</span>)).<br/> |
Offset 252, 54 lines modified | Offset 252, 54 lines modified | ||
252 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.betaU1"·class="idref"·href="#Generic.Paradox.betaU1"><span·class="id"·title="variable">betaU1</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="F:45"·class="idref"·href="#F:45"><span·class="id"·title="binder">F</span></a>·(<a·id="f:47"·class="idref"·href="#f:47"><span·class="id"·title="binder">f</span></a>:<span·class="id"·title="keyword">forall</span>·<a·id="A:46"·class="idref"·href="#A:46"><span·class="id"·title="binder">A</span></a>:<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.U1"><span·class="id"·title="variable">U1</span></a>,·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·(<a·class="idref"·href="Coq.Logic.Hurkens.html#F:45"><span·class="id"·title="variable">F</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#A:46"><span·class="id"·title="variable">A</span></a>))·<a·id="A:48"·class="idref"·href="#A:48"><span·class="id"·title="binder">A</span></a>,<br/> | 252 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.betaU1"·class="idref"·href="#Generic.Paradox.betaU1"><span·class="id"·title="variable">betaU1</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="F:45"·class="idref"·href="#F:45"><span·class="id"·title="binder">F</span></a>·(<a·id="f:47"·class="idref"·href="#f:47"><span·class="id"·title="binder">f</span></a>:<span·class="id"·title="keyword">forall</span>·<a·id="A:46"·class="idref"·href="#A:46"><span·class="id"·title="binder">A</span></a>:<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.U1"><span·class="id"·title="variable">U1</span></a>,·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·(<a·class="idref"·href="Coq.Logic.Hurkens.html#F:45"><span·class="id"·title="variable">F</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#A:46"><span·class="id"·title="variable">A</span></a>))·<a·id="A:48"·class="idref"·href="#A:48"><span·class="id"·title="binder">A</span></a>,<br/> |
253 | <a·class="idref"·href="Coq.Logic.Hurkens.html#9566680d933d0b947152b325a204e365"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#89360f8d6d2f11f4115655ddeef6a69a"><span·class="id"·title="notation">λ₂</span></a>·<a·id="x:49"·class="idref"·href="#x:49"><span·class="id"·title="binder">x</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#89360f8d6d2f11f4115655ddeef6a69a"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#f:47"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#x:49"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#9566680d933d0b947152b325a204e365"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#9566680d933d0b947152b325a204e365"><span·class="id"·title="notation">·</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#9566680d933d0b947152b325a204e365"><span·class="id"·title="notation">₁</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#9566680d933d0b947152b325a204e365"><span·class="id"·title="notation">[</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#A:48"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#9566680d933d0b947152b325a204e365"><span·class="id"·title="notation">]</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#f:47"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#A:48"><span·class="id"·title="variable">A</span></a>.<br/> | 253 | <a·class="idref"·href="Coq.Logic.Hurkens.html#9566680d933d0b947152b325a204e365"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#89360f8d6d2f11f4115655ddeef6a69a"><span·class="id"·title="notation">λ₂</span></a>·<a·id="x:49"·class="idref"·href="#x:49"><span·class="id"·title="binder">x</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#89360f8d6d2f11f4115655ddeef6a69a"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#f:47"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#x:49"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#9566680d933d0b947152b325a204e365"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#9566680d933d0b947152b325a204e365"><span·class="id"·title="notation">·</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#9566680d933d0b947152b325a204e365"><span·class="id"·title="notation">₁</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#9566680d933d0b947152b325a204e365"><span·class="id"·title="notation">[</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#A:48"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#9566680d933d0b947152b325a204e365"><span·class="id"·title="notation">]</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#f:47"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#A:48"><span·class="id"·title="variable">A</span></a>.<br/> |
254 | <br/> | 254 | <br/> |
255 | </div> | 255 | </div> |
256 | <div·class="doc"> | 256 | <div·class="doc"> |
257 | <a·id="lab | 257 | <a·id="lab611"></a><h3·class="section">Small·universe</h3> |
258 | ·The·small·universe·is·an·element·of·the·large·one.· | 258 | ·The·small·universe·is·an·element·of·the·large·one.· |
259 | </div> | 259 | </div> |
260 | <div·class="code"> | 260 | <div·class="code"> |
261 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.u0"·class="idref"·href="#Generic.Paradox.u0"><span·class="id"·title="variable">u0</span></a>·:·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.U1"><span·class="id"·title="variable">U1</span></a>.<br/> | 261 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.u0"·class="idref"·href="#Generic.Paradox.u0"><span·class="id"·title="variable">u0</span></a>·:·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.U1"><span·class="id"·title="variable">U1</span></a>.<br/> |
262 | <span·class="id"·title="keyword">Notation</span>·<a·id="Generic.U0"·class="idref"·href="#Generic.U0"><span·class="id"·title="abbreviation">U0</span></a>·:=·(<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.u0"><span·class="id"·title="variable">u0</span></a>).<br/> | 262 | <span·class="id"·title="keyword">Notation</span>·<a·id="Generic.U0"·class="idref"·href="#Generic.U0"><span·class="id"·title="abbreviation">U0</span></a>·:=·(<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.u0"><span·class="id"·title="variable">u0</span></a>).<br/> |
263 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.El0"·class="idref"·href="#Generic.Paradox.El0"><span·class="id"·title="variable">El0</span></a>·:·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.U0"><span·class="id"·title="abbreviation">U0</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Type</span>.<br/> | 263 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.El0"·class="idref"·href="#Generic.Paradox.El0"><span·class="id"·title="variable">El0</span></a>·:·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.U0"><span·class="id"·title="abbreviation">U0</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Type</span>.<br/> |
264 | </div> | 264 | </div> |
265 | <div·class="doc"> | 265 | <div·class="doc"> |
266 | <a·id="lab | 266 | <a·id="lab612"></a><h4·class="section">Closure·by·small·product</h4> |
267 | ·<span·class="inlinecode"><span·class="id"·title="var">U0</span></span>·does·not·need·reduction·rules· | 267 | ·<span·class="inlinecode"><span·class="id"·title="var">U0</span></span>·does·not·need·reduction·rules· |
268 | </div> | 268 | </div> |
269 | <div·class="code"> | 269 | <div·class="code"> |
270 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.Forall0"·class="idref"·href="#Generic.Paradox.Forall0"><span·class="id"·title="variable">Forall0</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="u:56"·class="idref"·href="#u:56"><span·class="id"·title="binder">u</span></a>:<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.U0"><span·class="id"·title="abbreviation">U0</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El0"><span·class="id"·title="variable">El0</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#u:56"><span·class="id"·title="variable">u</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.U0"><span·class="id"·title="abbreviation">U0</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.U0"><span·class="id"·title="abbreviation">U0</span></a>.<br/> | 270 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.Forall0"·class="idref"·href="#Generic.Paradox.Forall0"><span·class="id"·title="variable">Forall0</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="u:56"·class="idref"·href="#u:56"><span·class="id"·title="binder">u</span></a>:<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.U0"><span·class="id"·title="abbreviation">U0</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El0"><span·class="id"·title="variable">El0</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#u:56"><span·class="id"·title="variable">u</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.U0"><span·class="id"·title="abbreviation">U0</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.U0"><span·class="id"·title="abbreviation">U0</span></a>.<br/> |
271 | <span·class="id"·title="keyword">Notation</span>·<a·id="d964ae79727e66600c1d24238feb6d82"·class="idref"·href="#d964ae79727e66600c1d24238feb6d82"><span·class="id"·title="notation">"</span></a>'∀₀'·x·:·A·,·B"·:=·(<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.Forall0"><span·class="id"·title="variable">Forall0</span></a>·<span·class="id"·title="var">A</span>·(<span·class="id"·title="keyword">fun</span>·<a·id="x:59"·class="idref"·href="#x:59"><span·class="id"·title="binder">x</span></a>·=>·<span·class="id"·title="var">B</span>)).<br/> | 271 | <span·class="id"·title="keyword">Notation</span>·<a·id="d964ae79727e66600c1d24238feb6d82"·class="idref"·href="#d964ae79727e66600c1d24238feb6d82"><span·class="id"·title="notation">"</span></a>'∀₀'·x·:·A·,·B"·:=·(<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.Forall0"><span·class="id"·title="variable">Forall0</span></a>·<span·class="id"·title="var">A</span>·(<span·class="id"·title="keyword">fun</span>·<a·id="x:59"·class="idref"·href="#x:59"><span·class="id"·title="binder">x</span></a>·=>·<span·class="id"·title="var">B</span>)).<br/> |
272 | <span·class="id"·title="keyword">Notation</span>·<a·id="b64cd88d30682836951bfea4873c9d01"·class="idref"·href="#b64cd88d30682836951bfea4873c9d01"><span·class="id"·title="notation">"</span></a>A·'⟶₀'·B"·:=·(<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.Forall0"><span·class="id"·title="variable">Forall0</span></a>·<span·class="id"·title="var">A</span>·(<span·class="id"·title="keyword">fun</span>·<span·class="id"·title="var">_</span>·=>·<span·class="id"·title="var">B</span>)).<br/> | 272 | <span·class="id"·title="keyword">Notation</span>·<a·id="b64cd88d30682836951bfea4873c9d01"·class="idref"·href="#b64cd88d30682836951bfea4873c9d01"><span·class="id"·title="notation">"</span></a>A·'⟶₀'·B"·:=·(<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.Forall0"><span·class="id"·title="variable">Forall0</span></a>·<span·class="id"·title="var">A</span>·(<span·class="id"·title="keyword">fun</span>·<span·class="id"·title="var">_</span>·=>·<span·class="id"·title="var">B</span>)).<br/> |
273 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.lam0"·class="idref"·href="#Generic.Paradox.lam0"><span·class="id"·title="variable">lam0</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="u:60"·class="idref"·href="#u:60"><span·class="id"·title="binder">u</span></a>·<a·id="B:61"·class="idref"·href="#B:61"><span·class="id"·title="binder">B</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="x:62"·class="idref"·href="#x:62"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El0"><span·class="id"·title="variable">El0</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#u:60"><span·class="id"·title="variable">u</span></a>,·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El0"><span·class="id"·title="variable">El0</span></a>·(<a·class="idref"·href="Coq.Logic.Hurkens.html#B:61"><span·class="id"·title="variable">B</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#x:62"><span·class="id"·title="variable">x</span></a>)<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El0"><span·class="id"·title="variable">El0</span></a>·(<a·class="idref"·href="Coq.Logic.Hurkens.html#d964ae79727e66600c1d24238feb6d82"><span·class="id"·title="notation">∀</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#d964ae79727e66600c1d24238feb6d82"><span·class="id"·title="notation">₀</span></a>·<a·id="x:63"·class="idref"·href="#x:63"><span·class="id"·title="binder">x</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#d964ae79727e66600c1d24238feb6d82"><span·class="id"·title="notation">:</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#u:60"><span·class="id"·title="variable">u</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#d964ae79727e66600c1d24238feb6d82"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#B:61"><span·class="id"·title="variable">B</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#x:63"><span·class="id"·title="variable">x</span></a>).<br/> | 273 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.lam0"·class="idref"·href="#Generic.Paradox.lam0"><span·class="id"·title="variable">lam0</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="u:60"·class="idref"·href="#u:60"><span·class="id"·title="binder">u</span></a>·<a·id="B:61"·class="idref"·href="#B:61"><span·class="id"·title="binder">B</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="x:62"·class="idref"·href="#x:62"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El0"><span·class="id"·title="variable">El0</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#u:60"><span·class="id"·title="variable">u</span></a>,·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El0"><span·class="id"·title="variable">El0</span></a>·(<a·class="idref"·href="Coq.Logic.Hurkens.html#B:61"><span·class="id"·title="variable">B</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#x:62"><span·class="id"·title="variable">x</span></a>)<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El0"><span·class="id"·title="variable">El0</span></a>·(<a·class="idref"·href="Coq.Logic.Hurkens.html#d964ae79727e66600c1d24238feb6d82"><span·class="id"·title="notation">∀</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#d964ae79727e66600c1d24238feb6d82"><span·class="id"·title="notation">₀</span></a>·<a·id="x:63"·class="idref"·href="#x:63"><span·class="id"·title="binder">x</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#d964ae79727e66600c1d24238feb6d82"><span·class="id"·title="notation">:</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#u:60"><span·class="id"·title="variable">u</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#d964ae79727e66600c1d24238feb6d82"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#B:61"><span·class="id"·title="variable">B</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#x:63"><span·class="id"·title="variable">x</span></a>).<br/> |
274 | <span·class="id"·title="keyword">Notation</span>·<a·id="db4829df88a21b9cf21483c8351c115a"·class="idref"·href="#db4829df88a21b9cf21483c8351c115a"><span·class="id"·title="notation">"</span></a>'λ₀'·x·,·u"·:=·(<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.lam0"><span·class="id"·title="variable">lam0</span></a>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">_</span>·(<span·class="id"·title="keyword">fun</span>·<a·id="x:66"·class="idref"·href="#x:66"><span·class="id"·title="binder">x</span></a>·=>·<span·class="id"·title="var">u</span>)).<br/> | 274 | <span·class="id"·title="keyword">Notation</span>·<a·id="db4829df88a21b9cf21483c8351c115a"·class="idref"·href="#db4829df88a21b9cf21483c8351c115a"><span·class="id"·title="notation">"</span></a>'λ₀'·x·,·u"·:=·(<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.lam0"><span·class="id"·title="variable">lam0</span></a>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">_</span>·(<span·class="id"·title="keyword">fun</span>·<a·id="x:66"·class="idref"·href="#x:66"><span·class="id"·title="binder">x</span></a>·=>·<span·class="id"·title="var">u</span>)).<br/> |
275 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.app0"·class="idref"·href="#Generic.Paradox.app0"><span·class="id"·title="variable">app0</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="u:67"·class="idref"·href="#u:67"><span·class="id"·title="binder">u</span></a>·<a·id="B:68"·class="idref"·href="#B:68"><span·class="id"·title="binder">B</span></a>·(<a·id="f:69"·class="idref"·href="#f:69"><span·class="id"·title="binder">f</span></a>:<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El0"><span·class="id"·title="variable">El0</span></a>·(<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.Forall0"><span·class="id"·title="variable">Forall0</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#u:67"><span·class="id"·title="variable">u</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#B:68"><span·class="id"·title="variable">B</span></a>))·(<a·id="x:70"·class="idref"·href="#x:70"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El0"><span·class="id"·title="variable">El0</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#u:67"><span·class="id"·title="variable">u</span></a>),·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El0"><span·class="id"·title="variable">El0</span></a>·(<a·class="idref"·href="Coq.Logic.Hurkens.html#B:68"><span·class="id"·title="variable">B</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#x:70"><span·class="id"·title="variable">x</span></a>).<br/> | 275 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.app0"·class="idref"·href="#Generic.Paradox.app0"><span·class="id"·title="variable">app0</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="u:67"·class="idref"·href="#u:67"><span·class="id"·title="binder">u</span></a>·<a·id="B:68"·class="idref"·href="#B:68"><span·class="id"·title="binder">B</span></a>·(<a·id="f:69"·class="idref"·href="#f:69"><span·class="id"·title="binder">f</span></a>:<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El0"><span·class="id"·title="variable">El0</span></a>·(<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.Forall0"><span·class="id"·title="variable">Forall0</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#u:67"><span·class="id"·title="variable">u</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#B:68"><span·class="id"·title="variable">B</span></a>))·(<a·id="x:70"·class="idref"·href="#x:70"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El0"><span·class="id"·title="variable">El0</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#u:67"><span·class="id"·title="variable">u</span></a>),·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El0"><span·class="id"·title="variable">El0</span></a>·(<a·class="idref"·href="Coq.Logic.Hurkens.html#B:68"><span·class="id"·title="variable">B</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#x:70"><span·class="id"·title="variable">x</span></a>).<br/> |
276 | <span·class="id"·title="keyword">Notation</span>·<a·id="abb609e223b832d7163df6b07f35bba1"·class="idref"·href="#abb609e223b832d7163df6b07f35bba1"><span·class="id"·title="notation">"</span></a>f·'·₀'·x"·:=·(<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.app0"><span·class="id"·title="variable">app0</span></a>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">f</span>·<span·class="id"·title="var">x</span>).<br/> | 276 | <span·class="id"·title="keyword">Notation</span>·<a·id="abb609e223b832d7163df6b07f35bba1"·class="idref"·href="#abb609e223b832d7163df6b07f35bba1"><span·class="id"·title="notation">"</span></a>f·'·₀'·x"·:=·(<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.app0"><span·class="id"·title="variable">app0</span></a>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">f</span>·<span·class="id"·title="var">x</span>).<br/> |
277 | </div> | 277 | </div> |
278 | <div·class="doc"> | 278 | <div·class="doc"> |
279 | <a·id="lab | 279 | <a·id="lab613"></a><h4·class="section">Closure·by·large·products</h4> |
280 | </div> | 280 | </div> |
281 | <div·class="code"> | 281 | <div·class="code"> |
282 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.ForallU0"·class="idref"·href="#Generic.Paradox.ForallU0"><span·class="id"·title="variable">ForallU0</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="u:73"·class="idref"·href="#u:73"><span·class="id"·title="binder">u</span></a>:<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.U1"><span·class="id"·title="variable">U1</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#u:73"><span·class="id"·title="variable">u</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.U0"><span·class="id"·title="abbreviation">U0</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.U0"><span·class="id"·title="abbreviation">U0</span></a>.<br/> | 282 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.ForallU0"·class="idref"·href="#Generic.Paradox.ForallU0"><span·class="id"·title="variable">ForallU0</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="u:73"·class="idref"·href="#u:73"><span·class="id"·title="binder">u</span></a>:<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.U1"><span·class="id"·title="variable">U1</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#u:73"><span·class="id"·title="variable">u</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.U0"><span·class="id"·title="abbreviation">U0</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.U0"><span·class="id"·title="abbreviation">U0</span></a>.<br/> |
283 | <span·class="id"·title="keyword">Notation</span>·<a·id="0f63ed2479c2d698dc69cb055d1ca0ce"·class="idref"·href="#0f63ed2479c2d698dc69cb055d1ca0ce"><span·class="id"·title="notation">"</span></a>'∀₀¹'·A·:·U·,·F"·:=·(<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.ForallU0"><span·class="id"·title="variable">ForallU0</span></a>·<span·class="id"·title="var">U</span>·(<span·class="id"·title="keyword">fun</span>·<a·id="A:76"·class="idref"·href="#A:76"><span·class="id"·title="binder">A</span></a>·=>·<span·class="id"·title="var">F</span>)).<br/> | 283 | <span·class="id"·title="keyword">Notation</span>·<a·id="0f63ed2479c2d698dc69cb055d1ca0ce"·class="idref"·href="#0f63ed2479c2d698dc69cb055d1ca0ce"><span·class="id"·title="notation">"</span></a>'∀₀¹'·A·:·U·,·F"·:=·(<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.ForallU0"><span·class="id"·title="variable">ForallU0</span></a>·<span·class="id"·title="var">U</span>·(<span·class="id"·title="keyword">fun</span>·<a·id="A:76"·class="idref"·href="#A:76"><span·class="id"·title="binder">A</span></a>·=>·<span·class="id"·title="var">F</span>)).<br/> |
284 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.lamU0"·class="idref"·href="#Generic.Paradox.lamU0"><span·class="id"·title="variable">lamU0</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="U:77"·class="idref"·href="#U:77"><span·class="id"·title="binder">U</span></a>·<a·id="F:78"·class="idref"·href="#F:78"><span·class="id"·title="binder">F</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="A:79"·class="idref"·href="#A:79"><span·class="id"·title="binder">A</span></a>:<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#U:77"><span·class="id"·title="variable">U</span></a>,·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El0"><span·class="id"·title="variable">El0</span></a>·(<a·class="idref"·href="Coq.Logic.Hurkens.html#F:78"><span·class="id"·title="variable">F</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#A:79"><span·class="id"·title="variable">A</span></a>)<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El0"><span·class="id"·title="variable">El0</span></a>·(<a·class="idref"·href="Coq.Logic.Hurkens.html#0f63ed2479c2d698dc69cb055d1ca0ce"><span·class="id"·title="notation">∀</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#0f63ed2479c2d698dc69cb055d1ca0ce"><span·class="id"·title="notation">₀¹</span></a>·<a·id="A:80"·class="idref"·href="#A:80"><span·class="id"·title="binder">A</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#0f63ed2479c2d698dc69cb055d1ca0ce"><span·class="id"·title="notation">:</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#U:77"><span·class="id"·title="variable">U</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#0f63ed2479c2d698dc69cb055d1ca0ce"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#F:78"><span·class="id"·title="variable">F</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#A:80"><span·class="id"·title="variable">A</span></a>).<br/> | 284 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.lamU0"·class="idref"·href="#Generic.Paradox.lamU0"><span·class="id"·title="variable">lamU0</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="U:77"·class="idref"·href="#U:77"><span·class="id"·title="binder">U</span></a>·<a·id="F:78"·class="idref"·href="#F:78"><span·class="id"·title="binder">F</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="A:79"·class="idref"·href="#A:79"><span·class="id"·title="binder">A</span></a>:<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#U:77"><span·class="id"·title="variable">U</span></a>,·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El0"><span·class="id"·title="variable">El0</span></a>·(<a·class="idref"·href="Coq.Logic.Hurkens.html#F:78"><span·class="id"·title="variable">F</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#A:79"><span·class="id"·title="variable">A</span></a>)<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El0"><span·class="id"·title="variable">El0</span></a>·(<a·class="idref"·href="Coq.Logic.Hurkens.html#0f63ed2479c2d698dc69cb055d1ca0ce"><span·class="id"·title="notation">∀</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#0f63ed2479c2d698dc69cb055d1ca0ce"><span·class="id"·title="notation">₀¹</span></a>·<a·id="A:80"·class="idref"·href="#A:80"><span·class="id"·title="binder">A</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#0f63ed2479c2d698dc69cb055d1ca0ce"><span·class="id"·title="notation">:</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#U:77"><span·class="id"·title="variable">U</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#0f63ed2479c2d698dc69cb055d1ca0ce"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#F:78"><span·class="id"·title="variable">F</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#A:80"><span·class="id"·title="variable">A</span></a>).<br/> |
285 | <span·class="id"·title="keyword">Notation</span>·<a·id="445d40c6866861f70f030884478fa029"·class="idref"·href="#445d40c6866861f70f030884478fa029"><span·class="id"·title="notation">"</span></a>'λ₀¹'·x·,·u"·:=·(<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.lamU0"><span·class="id"·title="variable">lamU0</span></a>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">_</span>·(<span·class="id"·title="keyword">fun</span>·<a·id="x:83"·class="idref"·href="#x:83"><span·class="id"·title="binder">x</span></a>·=>·<span·class="id"·title="var">u</span>)).<br/> | 285 | <span·class="id"·title="keyword">Notation</span>·<a·id="445d40c6866861f70f030884478fa029"·class="idref"·href="#445d40c6866861f70f030884478fa029"><span·class="id"·title="notation">"</span></a>'λ₀¹'·x·,·u"·:=·(<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.lamU0"><span·class="id"·title="variable">lamU0</span></a>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">_</span>·(<span·class="id"·title="keyword">fun</span>·<a·id="x:83"·class="idref"·href="#x:83"><span·class="id"·title="binder">x</span></a>·=>·<span·class="id"·title="var">u</span>)).<br/> |
286 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.appU0"·class="idref"·href="#Generic.Paradox.appU0"><span·class="id"·title="variable">appU0</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="U:84"·class="idref"·href="#U:84"><span·class="id"·title="binder">U</span></a>·<a·id="F:85"·class="idref"·href="#F:85"><span·class="id"·title="binder">F</span></a>·(<a·id="f:87"·class="idref"·href="#f:87"><span·class="id"·title="binder">f</span></a>:<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El0"><span·class="id"·title="variable">El0</span></a>(<a·class="idref"·href="Coq.Logic.Hurkens.html#0f63ed2479c2d698dc69cb055d1ca0ce"><span·class="id"·title="notation">∀</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#0f63ed2479c2d698dc69cb055d1ca0ce"><span·class="id"·title="notation">₀¹</span></a>·<a·id="A:86"·class="idref"·href="#A:86"><span·class="id"·title="binder">A</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#0f63ed2479c2d698dc69cb055d1ca0ce"><span·class="id"·title="notation">:</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#U:84"><span·class="id"·title="variable">U</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#0f63ed2479c2d698dc69cb055d1ca0ce"><span·class="id"·title="notation">,</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#F:85"><span·class="id"·title="variable">F</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#A:86"><span·class="id"·title="variable">A</span></a>))·(<a·id="A:88"·class="idref"·href="#A:88"><span·class="id"·title="binder">A</span></a>:<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#U:84"><span·class="id"·title="variable">U</span></a>),·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El0"><span·class="id"·title="variable">El0</span></a>·(<a·class="idref"·href="Coq.Logic.Hurkens.html#F:85"><span·class="id"·title="variable">F</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#A:88"><span·class="id"·title="variable">A</span></a>).<br/> | 286 | <span·class="id"·title="keyword">Variable</span>·<a·id="Generic.Paradox.appU0"·class="idref"·href="#Generic.Paradox.appU0"><span·class="id"·title="variable">appU0</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="U:84"·class="idref"·href="#U:84"><span·class="id"·title="binder">U</span></a>·<a·id="F:85"·class="idref"·href="#F:85"><span·class="id"·title="binder">F</span></a>·(<a·id="f:87"·class="idref"·href="#f:87"><span·class="id"·title="binder">f</span></a>:<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El0"><span·class="id"·title="variable">El0</span></a>(<a·class="idref"·href="Coq.Logic.Hurkens.html#0f63ed2479c2d698dc69cb055d1ca0ce"><span·class="id"·title="notation">∀</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#0f63ed2479c2d698dc69cb055d1ca0ce"><span·class="id"·title="notation">₀¹</span></a>·<a·id="A:86"·class="idref"·href="#A:86"><span·class="id"·title="binder">A</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#0f63ed2479c2d698dc69cb055d1ca0ce"><span·class="id"·title="notation">:</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#U:84"><span·class="id"·title="variable">U</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#0f63ed2479c2d698dc69cb055d1ca0ce"><span·class="id"·title="notation">,</span></a><a·class="idref"·href="Coq.Logic.Hurkens.html#F:85"><span·class="id"·title="variable">F</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#A:86"><span·class="id"·title="variable">A</span></a>))·(<a·id="A:88"·class="idref"·href="#A:88"><span·class="id"·title="binder">A</span></a>:<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El1"><span·class="id"·title="variable">El1</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#U:84"><span·class="id"·title="variable">U</span></a>),·<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.El0"><span·class="id"·title="variable">El0</span></a>·(<a·class="idref"·href="Coq.Logic.Hurkens.html#F:85"><span·class="id"·title="variable">F</span></a>·<a·class="idref"·href="Coq.Logic.Hurkens.html#A:88"><span·class="id"·title="variable">A</span></a>).<br/> |
287 | <span·class="id"·title="keyword">Notation</span>·<a·id="d3f4e16d7ba734384b86362c88888b46"·class="idref"·href="#d3f4e16d7ba734384b86362c88888b46"><span·class="id"·title="notation">"</span></a>f·'·₀'·[·A·]"·:=·(<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.appU0"><span·class="id"·title="variable">appU0</span></a>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">f</span>·<span·class="id"·title="var">A</span>).<br/> | 287 | <span·class="id"·title="keyword">Notation</span>·<a·id="d3f4e16d7ba734384b86362c88888b46"·class="idref"·href="#d3f4e16d7ba734384b86362c88888b46"><span·class="id"·title="notation">"</span></a>f·'·₀'·[·A·]"·:=·(<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.appU0"><span·class="id"·title="variable">appU0</span></a>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">f</span>·<span·class="id"·title="var">A</span>).<br/> |
288 | <br/> | 288 | <br/> |
289 | </div> | 289 | </div> |
290 | <div·class="doc"> | 290 | <div·class="doc"> |
291 | <a·id="lab | 291 | <a·id="lab614"></a><h2·class="section">Automating·the·rewrite·rules·of·our·encoding.</h2> |
292 | </div> | 292 | </div> |
293 | <div·class="code"> | 293 | <div·class="code"> |
294 | <span·class="id"·title="keyword">Local·Ltac</span>·<span·class="id"·title="var">simplify</span>·:=<br/> | 294 | <span·class="id"·title="keyword">Local·Ltac</span>·<span·class="id"·title="var">simplify</span>·:=<br/> |
295 | <br/> | 295 | <br/> |
296 | (<span·class="id"·title="tactic">repeat</span>·<span·class="id"·title="tactic">rewrite</span>·?<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.beta1"><span·class="id"·title="variable">beta1</span></a>,·?<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.betaU1"><span·class="id"·title="variable">betaU1</span></a>);<br/> | 296 | (<span·class="id"·title="tactic">repeat</span>·<span·class="id"·title="tactic">rewrite</span>·?<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.beta1"><span·class="id"·title="variable">beta1</span></a>,·?<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.betaU1"><span·class="id"·title="variable">betaU1</span></a>);<br/> |
297 | <span·class="id"·title="tactic">lazy</span>·<span·class="id"·title="keyword">beta</span>.<br/> | 297 | <span·class="id"·title="tactic">lazy</span>·<span·class="id"·title="keyword">beta</span>.<br/> |
Offset 309, 28 lines modified | Offset 309, 28 lines modified | ||
309 | (<span·class="id"·title="tactic">repeat</span>·<span·class="id"·title="tactic">rewrite</span>·?<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.beta1"><span·class="id"·title="variable">beta1</span></a>,·?<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.betaU1"><span·class="id"·title="variable">betaU1</span></a>·<span·class="id"·title="tactic">in</span>·<span·class="id"·title="var">h</span>);<br/> | 309 | (<span·class="id"·title="tactic">repeat</span>·<span·class="id"·title="tactic">rewrite</span>·?<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.beta1"><span·class="id"·title="variable">beta1</span></a>,·?<a·class="idref"·href="Coq.Logic.Hurkens.html#Generic.Paradox.betaU1"><span·class="id"·title="variable">betaU1</span></a>·<span·class="id"·title="tactic">in</span>·<span·class="id"·title="var">h</span>);<br/> |
310 | <span·class="id"·title="tactic">lazy</span>·<span·class="id"·title="keyword">beta</span>·<span·class="id"·title="tactic">in</span>·<span·class="id"·title="var">h</span>.<br/> | 310 | <span·class="id"·title="tactic">lazy</span>·<span·class="id"·title="keyword">beta</span>·<span·class="id"·title="tactic">in</span>·<span·class="id"·title="var">h</span>.<br/> |
311 | <br/> | 311 | <br/> |
Max diff block lines reached; 60539/98569 bytes (61.42%) of diff not shown. |
Offset 113, 15 lines modified | Offset 113, 15 lines modified | ||
113 | <br/> | 113 | <br/> |
114 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> | 114 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> |
115 | <br/> | 115 | <br/> |
116 | </div> | 116 | </div> |
117 | <div·class="doc"> | 117 | <div·class="doc"> |
118 | <a·id="lab | 118 | <a·id="lab601"></a><h1·class="section">Definitions</h1> |
119 | <div·class="paragraph">·</div> | 119 | <div·class="paragraph">·</div> |
120 | ·Propositional·extensionality· | 120 | ·Propositional·extensionality· |
121 | </div> | 121 | </div> |
122 | <div·class="code"> | 122 | <div·class="code"> |
Offset 177, 19 lines modified | Offset 177, 19 lines modified | ||
177 | <span·class="id"·title="keyword">Local·Notation</span>·<a·id="PropositionalFunctionalExtensionality"·class="idref"·href="#PropositionalFunctionalExtensionality"><span·class="id"·title="abbreviation">PropositionalFunctionalExtensionality</span></a>·:=<br/> | 177 | <span·class="id"·title="keyword">Local·Notation</span>·<a·id="PropositionalFunctionalExtensionality"·class="idref"·href="#PropositionalFunctionalExtensionality"><span·class="id"·title="abbreviation">PropositionalFunctionalExtensionality</span></a>·:=<br/> |
178 | (<span·class="id"·title="keyword">forall</span>·(<a·id="A:9"·class="idref"·href="#A:9"><span·class="id"·title="binder">A</span></a>:<span·class="id"·title="keyword">Type</span>)·(<a·id="P:10"·class="idref"·href="#P:10"><span·class="id"·title="binder">P</span></a>·<a·id="Q:11"·class="idref"·href="#Q:11"><span·class="id"·title="binder">Q</span></a>·:·<a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#A:9"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>),·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="x:12"·class="idref"·href="#x:12"><span·class="id"·title="binder">x</span></a>,·<a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#P:10"><span·class="id"·title="variable">P</span></a>·<a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#x:12"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#Q:11"><span·class="id"·title="variable">Q</span></a>·<a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#x:12"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#P:10"><span·class="id"·title="variable">P</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#Q:11"><span·class="id"·title="variable">Q</span></a>).<br/> | 178 | (<span·class="id"·title="keyword">forall</span>·(<a·id="A:9"·class="idref"·href="#A:9"><span·class="id"·title="binder">A</span></a>:<span·class="id"·title="keyword">Type</span>)·(<a·id="P:10"·class="idref"·href="#P:10"><span·class="id"·title="binder">P</span></a>·<a·id="Q:11"·class="idref"·href="#Q:11"><span·class="id"·title="binder">Q</span></a>·:·<a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#A:9"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>),·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="x:12"·class="idref"·href="#x:12"><span·class="id"·title="binder">x</span></a>,·<a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#P:10"><span·class="id"·title="variable">P</span></a>·<a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#x:12"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#Q:11"><span·class="id"·title="variable">Q</span></a>·<a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#x:12"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#P:10"><span·class="id"·title="variable">P</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#Q:11"><span·class="id"·title="variable">Q</span></a>).<br/> |
179 | <br/> | 179 | <br/> |
180 | </div> | 180 | </div> |
181 | <div·class="doc"> | 181 | <div·class="doc"> |
182 | <a·id="lab | 182 | <a·id="lab602"></a><h1·class="section">Propositional·and·predicate·extensionality</h1> |
183 | <div·class="paragraph">·</div> | 183 | <div·class="paragraph">·</div> |
184 | <a·id="lab | 184 | <a·id="lab603"></a><h2·class="section">Predicate·extensionality·<->·Propositional·extensionality·+·Propositional·functional·extensionality</h2> |
185 | </div> | 185 | </div> |
186 | <div·class="code"> | 186 | <div·class="code"> |
187 | <br/> | 187 | <br/> |
188 | <span·class="id"·title="keyword">Lemma</span>·<a·id="PredExt_imp_PropExt"·class="idref"·href="#PredExt_imp_PropExt"><span·class="id"·title="lemma">PredExt_imp_PropExt</span></a>·:·<a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#PredicateExtensionality"><span·class="id"·title="abbreviation">PredicateExtensionality</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#PropositionalExtensionality"><span·class="id"·title="abbreviation">PropositionalExtensionality</span></a>.<br/> | 188 | <span·class="id"·title="keyword">Lemma</span>·<a·id="PredExt_imp_PropExt"·class="idref"·href="#PredExt_imp_PropExt"><span·class="id"·title="lemma">PredExt_imp_PropExt</span></a>·:·<a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#PredicateExtensionality"><span·class="id"·title="abbreviation">PredicateExtensionality</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#PropositionalExtensionality"><span·class="id"·title="abbreviation">PropositionalExtensionality</span></a>.<br/> |
Offset 204, 27 lines modified | Offset 204, 27 lines modified | ||
204 | <span·class="id"·title="keyword">Theorem</span>·<a·id="PropExt_and_PropFunExt_iff_PredExt"·class="idref"·href="#PropExt_and_PropFunExt_iff_PredExt"><span·class="id"·title="lemma">PropExt_and_PropFunExt_iff_PredExt</span></a>·:<br/> | 204 | <span·class="id"·title="keyword">Theorem</span>·<a·id="PropExt_and_PropFunExt_iff_PredExt"·class="idref"·href="#PropExt_and_PropFunExt_iff_PredExt"><span·class="id"·title="lemma">PropExt_and_PropFunExt_iff_PredExt</span></a>·:<br/> |
205 | <a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#PropositionalExtensionality"><span·class="id"·title="abbreviation">PropositionalExtensionality</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#PropositionalFunctionalExtensionality"><span·class="id"·title="abbreviation">PropositionalFunctionalExtensionality</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#PredicateExtensionality"><span·class="id"·title="abbreviation">PredicateExtensionality</span></a>.<br/> | 205 | <a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#PropositionalExtensionality"><span·class="id"·title="abbreviation">PropositionalExtensionality</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#PropositionalFunctionalExtensionality"><span·class="id"·title="abbreviation">PropositionalFunctionalExtensionality</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#PredicateExtensionality"><span·class="id"·title="abbreviation">PredicateExtensionality</span></a>.<br/> |
206 | <br/> | 206 | <br/> |
207 | </div> | 207 | </div> |
208 | <div·class="doc"> | 208 | <div·class="doc"> |
209 | <a·id="lab | 209 | <a·id="lab604"></a><h2·class="section">Propositional·extensionality·and·provable·proposition·extensionality</h2> |
210 | </div> | 210 | </div> |
211 | <div·class="code"> | 211 | <div·class="code"> |
212 | <br/> | 212 | <br/> |
213 | <span·class="id"·title="keyword">Lemma</span>·<a·id="PropExt_imp_ProvPropExt"·class="idref"·href="#PropExt_imp_ProvPropExt"><span·class="id"·title="lemma">PropExt_imp_ProvPropExt</span></a>·:·<a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#PropositionalExtensionality"><span·class="id"·title="abbreviation">PropositionalExtensionality</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#ProvablePropositionExtensionality"><span·class="id"·title="abbreviation">ProvablePropositionExtensionality</span></a>.<br/> | 213 | <span·class="id"·title="keyword">Lemma</span>·<a·id="PropExt_imp_ProvPropExt"·class="idref"·href="#PropExt_imp_ProvPropExt"><span·class="id"·title="lemma">PropExt_imp_ProvPropExt</span></a>·:·<a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#PropositionalExtensionality"><span·class="id"·title="abbreviation">PropositionalExtensionality</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#ProvablePropositionExtensionality"><span·class="id"·title="abbreviation">ProvablePropositionExtensionality</span></a>.<br/> |
214 | <br/> | 214 | <br/> |
215 | </div> | 215 | </div> |
216 | <div·class="doc"> | 216 | <div·class="doc"> |
217 | <a·id="lab | 217 | <a·id="lab605"></a><h2·class="section">Propositional·extensionality·and·refutable·proposition·extensionality</h2> |
218 | </div> | 218 | </div> |
219 | <div·class="code"> | 219 | <div·class="code"> |
220 | <br/> | 220 | <br/> |
221 | <span·class="id"·title="keyword">Lemma</span>·<a·id="PropExt_imp_RefutPropExt"·class="idref"·href="#PropExt_imp_RefutPropExt"><span·class="id"·title="lemma">PropExt_imp_RefutPropExt</span></a>·:·<a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#PropositionalExtensionality"><span·class="id"·title="abbreviation">PropositionalExtensionality</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#RefutablePropositionExtensionality"><span·class="id"·title="abbreviation">RefutablePropositionExtensionality</span></a>.<br/> | 221 | <span·class="id"·title="keyword">Lemma</span>·<a·id="PropExt_imp_RefutPropExt"·class="idref"·href="#PropExt_imp_RefutPropExt"><span·class="id"·title="lemma">PropExt_imp_RefutPropExt</span></a>·:·<a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#PropositionalExtensionality"><span·class="id"·title="abbreviation">PropositionalExtensionality</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Logic.PropExtensionalityFacts.html#RefutablePropositionExtensionality"><span·class="id"·title="abbreviation">RefutablePropositionExtensionality</span></a>.<br/> |
222 | </div> | 222 | </div> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab541"></a><h1·class="section">Basic·facts·about·Prop·as·a·type</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·An·intuitionistic·theorem·from·topos·theory·<span·class="inlinecode">[<span·class="id"·title="var">LambekScott</span>]</span> | 51 | ·An·intuitionistic·theorem·from·topos·theory·<span·class="inlinecode">[<span·class="id"·title="var">LambekScott</span>]</span> |
52 | <div·class="paragraph">·</div> | 52 | <div·class="paragraph">·</div> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab559"></a><h1·class="section">The·Set·universe·seen·as·a·synonym·for·Type</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·After·loading·this·file,·Set·becomes·just·another·name·for·Type. | 51 | ·After·loading·this·file,·Set·becomes·just·another·name·for·Type. |
52 | ····This·allows·easily·performing·a·Set-to-Type·migration,·or·at·least | 52 | ····This·allows·easily·performing·a·Set-to-Type·migration,·or·at·least |
53 | ····test·whether·a·development·relies·or·not·on·specific·features·of | 53 | ····test·whether·a·development·relies·or·not·on·specific·features·of |
54 | ····Set:·simply·insert·some·Require·Export·of·this·file·at·starting | 54 | ····Set:·simply·insert·some·Require·Export·of·this·file·at·starting |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab1 | 49 | <a·id="lab1"></a><h1·class="section">MSetAVL·:·Implementation·of·MSetInterface·via·AVL·trees</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·This·module·implements·finite·sets·using·AVL·trees. | 51 | ·This·module·implements·finite·sets·using·AVL·trees. |
52 | ····It·follows·the·implementation·from·Ocaml's·standard·library, | 52 | ····It·follows·the·implementation·from·Ocaml's·standard·library, |
53 | <div·class="paragraph">·</div> | 53 | <div·class="paragraph">·</div> |
Offset 87, 29 lines modified | Offset 87, 29 lines modified | ||
87 | <br/> | 87 | <br/> |
88 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> | 88 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> |
89 | <br/> | 89 | <br/> |
90 | </div> | 90 | </div> |
91 | <div·class="doc"> | 91 | <div·class="doc"> |
92 | <a·id="lab | 92 | <a·id="lab2"></a><h1·class="section">Ops·:·the·pure·functions</h1> |
93 | </div> | 93 | </div> |
94 | <div·class="code"> | 94 | <div·class="code"> |
95 | <br/> | 95 | <br/> |
96 | <span·class="id"·title="keyword">Module</span>·<a·id="Ops"·class="idref"·href="#Ops"><span·class="id"·title="module">Ops</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">I</span>:<a·class="idref"·href="Coq.ZArith.Int.html#Int"><span·class="id"·title="module">Int</span></a>)(<span·class="id"·title="var">X</span>:<a·class="idref"·href="Coq.Structures.Orders.html#OrderedType"><span·class="id"·title="module">OrderedType</span></a>)·<:·<a·class="idref"·href="Coq.MSets.MSetInterface.html#Ops"><span·class="id"·title="module">MSetInterface.Ops</span></a>·<a·class="idref"·href="Coq.MSets.MSetAVL.html#X"><span·class="id"·title="module">X</span></a>.<br/> | 96 | <span·class="id"·title="keyword">Module</span>·<a·id="Ops"·class="idref"·href="#Ops"><span·class="id"·title="module">Ops</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">I</span>:<a·class="idref"·href="Coq.ZArith.Int.html#Int"><span·class="id"·title="module">Int</span></a>)(<span·class="id"·title="var">X</span>:<a·class="idref"·href="Coq.Structures.Orders.html#OrderedType"><span·class="id"·title="module">OrderedType</span></a>)·<:·<a·class="idref"·href="Coq.MSets.MSetInterface.html#Ops"><span·class="id"·title="module">MSetInterface.Ops</span></a>·<a·class="idref"·href="Coq.MSets.MSetAVL.html#X"><span·class="id"·title="module">X</span></a>.<br/> |
97 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">Int_scope</span>.<br/> | 97 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">Int_scope</span>.<br/> |
98 | <span·class="id"·title="keyword">Local·Notation</span>·<a·id="Ops.int"·class="idref"·href="#Ops.int"><span·class="id"·title="abbreviation">int</span></a>·:=·<a·class="idref"·href="Coq.MSets.MSetAVL.html#I.t"><span·class="id"·title="axiom">I.t</span></a>.<br/> | 98 | <span·class="id"·title="keyword">Local·Notation</span>·<a·id="Ops.int"·class="idref"·href="#Ops.int"><span·class="id"·title="abbreviation">int</span></a>·:=·<a·class="idref"·href="Coq.MSets.MSetAVL.html#I.t"><span·class="id"·title="axiom">I.t</span></a>.<br/> |
99 | <br/> | 99 | <br/> |
100 | </div> | 100 | </div> |
101 | <div·class="doc"> | 101 | <div·class="doc"> |
102 | <a·id="lab | 102 | <a·id="lab3"></a><h2·class="section">Generic·trees·instantiated·with·integer·height</h2> |
103 | <div·class="paragraph">·</div> | 103 | <div·class="paragraph">·</div> |
104 | ·We·reuse·a·generic·definition·of·trees·where·the·information | 104 | ·We·reuse·a·generic·definition·of·trees·where·the·information |
105 | ····parameter·is·a·<span·class="inlinecode"><span·class="id"·title="var">Int.t</span></span>.·Functions·like·mem·or·fold·are·also | 105 | ····parameter·is·a·<span·class="inlinecode"><span·class="id"·title="var">Int.t</span></span>.·Functions·like·mem·or·fold·are·also |
106 | ····provided·by·this·generic·functor.· | 106 | ····provided·by·this·generic·functor.· |
107 | </div> | 107 | </div> |
Offset 121, 15 lines modified | Offset 121, 15 lines modified | ||
121 | <br/> | 121 | <br/> |
122 | <span·class="id"·title="keyword">Definition</span>·<a·id="Ops.t"·class="idref"·href="#Ops.t"><span·class="id"·title="definition">t</span></a>·:=·<a·class="idref"·href="Coq.MSets.MSetAVL.html#Ops.tree"><span·class="id"·title="inductive">tree</span></a>.<br/> | 122 | <span·class="id"·title="keyword">Definition</span>·<a·id="Ops.t"·class="idref"·href="#Ops.t"><span·class="id"·title="definition">t</span></a>·:=·<a·class="idref"·href="Coq.MSets.MSetAVL.html#Ops.tree"><span·class="id"·title="inductive">tree</span></a>.<br/> |
123 | <br/> | 123 | <br/> |
124 | </div> | 124 | </div> |
125 | <div·class="doc"> | 125 | <div·class="doc"> |
126 | <a·id="lab | 126 | <a·id="lab4"></a><h2·class="section">Height·of·trees</h2> |
127 | </div> | 127 | </div> |
128 | <div·class="code"> | 128 | <div·class="code"> |
129 | <br/> | 129 | <br/> |
130 | <span·class="id"·title="keyword">Definition</span>·<a·id="Ops.height"·class="idref"·href="#Ops.height"><span·class="id"·title="definition">height</span></a>·(<a·id="s:1"·class="idref"·href="#s:1"><span·class="id"·title="binder">s</span></a>·:·<a·class="idref"·href="Coq.MSets.MSetAVL.html#Ops.t"><span·class="id"·title="definition">t</span></a>)·:·<a·class="idref"·href="Coq.MSets.MSetAVL.html#Ops.int"><span·class="id"·title="abbreviation">int</span></a>·:=<br/> | 130 | <span·class="id"·title="keyword">Definition</span>·<a·id="Ops.height"·class="idref"·href="#Ops.height"><span·class="id"·title="definition">height</span></a>·(<a·id="s:1"·class="idref"·href="#s:1"><span·class="id"·title="binder">s</span></a>·:·<a·class="idref"·href="Coq.MSets.MSetAVL.html#Ops.t"><span·class="id"·title="definition">t</span></a>)·:·<a·class="idref"·href="Coq.MSets.MSetAVL.html#Ops.int"><span·class="id"·title="abbreviation">int</span></a>·:=<br/> |
131 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.MSets.MSetAVL.html#s:1"><span·class="id"·title="variable">s</span></a>·<span·class="id"·title="keyword">with</span><br/> | 131 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.MSets.MSetAVL.html#s:1"><span·class="id"·title="variable">s</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 137, 27 lines modified | Offset 137, 27 lines modified | ||
137 | |·<a·class="idref"·href="Coq.MSets.MSetAVL.html#Ops.Node"><span·class="id"·title="constructor">Node</span></a>·<span·class="id"·title="var">h</span>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">_</span>·=>·<span·class="id"·title="var">h</span><br/> | 137 | |·<a·class="idref"·href="Coq.MSets.MSetAVL.html#Ops.Node"><span·class="id"·title="constructor">Node</span></a>·<span·class="id"·title="var">h</span>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">_</span>·=>·<span·class="id"·title="var">h</span><br/> |
138 | <span·class="id"·title="keyword">end</span>.<br/> | 138 | <span·class="id"·title="keyword">end</span>.<br/> |
139 | <br/> | 139 | <br/> |
140 | </div> | 140 | </div> |
141 | <div·class="doc"> | 141 | <div·class="doc"> |
142 | <a·id="lab | 142 | <a·id="lab5"></a><h2·class="section">Singleton·set</h2> |
143 | </div> | 143 | </div> |
144 | <div·class="code"> | 144 | <div·class="code"> |
145 | <br/> | 145 | <br/> |
146 | <span·class="id"·title="keyword">Definition</span>·<a·id="Ops.singleton"·class="idref"·href="#Ops.singleton"><span·class="id"·title="definition">singleton</span></a>·<a·id="x:3"·class="idref"·href="#x:3"><span·class="id"·title="binder">x</span></a>·:=·<a·class="idref"·href="Coq.MSets.MSetAVL.html#Ops.Node"><span·class="id"·title="constructor">Node</span></a>·1·<a·class="idref"·href="Coq.MSets.MSetAVL.html#Ops.Leaf"><span·class="id"·title="constructor">Leaf</span></a>·<a·class="idref"·href="Coq.MSets.MSetAVL.html#x:3"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.MSets.MSetAVL.html#Ops.Leaf"><span·class="id"·title="constructor">Leaf</span></a>.<br/> | 146 | <span·class="id"·title="keyword">Definition</span>·<a·id="Ops.singleton"·class="idref"·href="#Ops.singleton"><span·class="id"·title="definition">singleton</span></a>·<a·id="x:3"·class="idref"·href="#x:3"><span·class="id"·title="binder">x</span></a>·:=·<a·class="idref"·href="Coq.MSets.MSetAVL.html#Ops.Node"><span·class="id"·title="constructor">Node</span></a>·1·<a·class="idref"·href="Coq.MSets.MSetAVL.html#Ops.Leaf"><span·class="id"·title="constructor">Leaf</span></a>·<a·class="idref"·href="Coq.MSets.MSetAVL.html#x:3"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.MSets.MSetAVL.html#Ops.Leaf"><span·class="id"·title="constructor">Leaf</span></a>.<br/> |
147 | <br/> | 147 | <br/> |
148 | </div> | 148 | </div> |
149 | <div·class="doc"> | 149 | <div·class="doc"> |
150 | <a·id="lab | 150 | <a·id="lab6"></a><h2·class="section">Helper·functions</h2> |
151 | <div·class="paragraph">·</div> | 151 | <div·class="paragraph">·</div> |
152 | ·<span·class="inlinecode"><span·class="id"·title="var">create</span></span>·<span·class="inlinecode"><span·class="id"·title="var">l</span></span>·<span·class="inlinecode"><span·class="id"·title="var">x</span></span>·<span·class="inlinecode"><span·class="id"·title="var">r</span></span>·creates·a·node,·assuming·<span·class="inlinecode"><span·class="id"·title="var">l</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">r</span></span> | 152 | ·<span·class="inlinecode"><span·class="id"·title="var">create</span></span>·<span·class="inlinecode"><span·class="id"·title="var">l</span></span>·<span·class="inlinecode"><span·class="id"·title="var">x</span></span>·<span·class="inlinecode"><span·class="id"·title="var">r</span></span>·creates·a·node,·assuming·<span·class="inlinecode"><span·class="id"·title="var">l</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">r</span></span> |
153 | ····to·be·balanced·and·<span·class="inlinecode">|<span·class="id"·title="var">height</span></span>·<span·class="inlinecode"><span·class="id"·title="var">l</span></span>·<span·class="inlinecode">-</span>·<span·class="inlinecode"><span·class="id"·title="var">height</span></span>·<span·class="inlinecode"><span·class="id"·title="var">r</span>|</span>·<span·class="inlinecode"><=</span>·<span·class="inlinecode">2</span>.· | 153 | ····to·be·balanced·and·<span·class="inlinecode">|<span·class="id"·title="var">height</span></span>·<span·class="inlinecode"><span·class="id"·title="var">l</span></span>·<span·class="inlinecode">-</span>·<span·class="inlinecode"><span·class="id"·title="var">height</span></span>·<span·class="inlinecode"><span·class="id"·title="var">r</span>|</span>·<span·class="inlinecode"><=</span>·<span·class="inlinecode">2</span>.· |
154 | </div> | 154 | </div> |
155 | <div·class="code"> | 155 | <div·class="code"> |
Offset 212, 15 lines modified | Offset 212, 15 lines modified | ||
212 | <span·class="id"·title="keyword">else</span><br/> | 212 | <span·class="id"·title="keyword">else</span><br/> |
213 | <a·class="idref"·href="Coq.MSets.MSetAVL.html#Ops.create"><span·class="id"·title="definition">create</span></a>·<a·class="idref"·href="Coq.MSets.MSetAVL.html#l:7"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.MSets.MSetAVL.html#x:8"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.MSets.MSetAVL.html#r:9"><span·class="id"·title="variable">r</span></a>.<br/> | 213 | <a·class="idref"·href="Coq.MSets.MSetAVL.html#Ops.create"><span·class="id"·title="definition">create</span></a>·<a·class="idref"·href="Coq.MSets.MSetAVL.html#l:7"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.MSets.MSetAVL.html#x:8"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.MSets.MSetAVL.html#r:9"><span·class="id"·title="variable">r</span></a>.<br/> |
214 | <br/> | 214 | <br/> |
215 | </div> | 215 | </div> |
216 | <div·class="doc"> | 216 | <div·class="doc"> |
217 | <a·id="lab | 217 | <a·id="lab7"></a><h2·class="section">Insertion</h2> |
218 | </div> | 218 | </div> |
219 | <div·class="code"> | 219 | <div·class="code"> |
220 | <br/> | 220 | <br/> |
221 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Ops.add"·class="idref"·href="#Ops.add"><span·class="id"·title="definition">add</span></a>·<a·id="x:16"·class="idref"·href="#x:16"><span·class="id"·title="binder">x</span></a>·<a·id="s:17"·class="idref"·href="#s:17"><span·class="id"·title="binder">s</span></a>·:=·<span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.MSets.MSetAVL.html#s:17"><span·class="id"·title="variable">s</span></a>·<span·class="id"·title="keyword">with</span><br/> | 221 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Ops.add"·class="idref"·href="#Ops.add"><span·class="id"·title="definition">add</span></a>·<a·id="x:16"·class="idref"·href="#x:16"><span·class="id"·title="binder">x</span></a>·<a·id="s:17"·class="idref"·href="#s:17"><span·class="id"·title="binder">s</span></a>·:=·<span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.MSets.MSetAVL.html#s:17"><span·class="id"·title="variable">s</span></a>·<span·class="id"·title="keyword">with</span><br/> |
222 | |·<a·class="idref"·href="Coq.MSets.MSetAVL.html#Ops.Leaf"><span·class="id"·title="constructor">Leaf</span></a>·=>·<a·class="idref"·href="Coq.MSets.MSetAVL.html#Ops.Node"><span·class="id"·title="constructor">Node</span></a>·1·<a·class="idref"·href="Coq.MSets.MSetAVL.html#Ops.Leaf"><span·class="id"·title="constructor">Leaf</span></a>·<a·class="idref"·href="Coq.MSets.MSetAVL.html#x:16"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.MSets.MSetAVL.html#Ops.Leaf"><span·class="id"·title="constructor">Leaf</span></a><br/> | 222 | |·<a·class="idref"·href="Coq.MSets.MSetAVL.html#Ops.Leaf"><span·class="id"·title="constructor">Leaf</span></a>·=>·<a·class="idref"·href="Coq.MSets.MSetAVL.html#Ops.Node"><span·class="id"·title="constructor">Node</span></a>·1·<a·class="idref"·href="Coq.MSets.MSetAVL.html#Ops.Leaf"><span·class="id"·title="constructor">Leaf</span></a>·<a·class="idref"·href="Coq.MSets.MSetAVL.html#x:16"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.MSets.MSetAVL.html#Ops.Leaf"><span·class="id"·title="constructor">Leaf</span></a><br/> |
Offset 232, 15 lines modified | Offset 232, 15 lines modified | ||
232 | <span·class="id"·title="keyword">end</span><br/> | 232 | <span·class="id"·title="keyword">end</span><br/> |
233 | <span·class="id"·title="keyword">end</span>.<br/> | 233 | <span·class="id"·title="keyword">end</span>.<br/> |
234 | <br/> | 234 | <br/> |
235 | </div> | 235 | </div> |
236 | <div·class="doc"> | 236 | <div·class="doc"> |
237 | <a·id="lab | 237 | <a·id="lab8"></a><h2·class="section">Join</h2> |
238 | <div·class="paragraph">·</div> | 238 | <div·class="paragraph">·</div> |
239 | ····Same·as·<span·class="inlinecode"><span·class="id"·title="var">bal</span></span>·but·does·not·assume·anything·regarding·heights | 239 | ····Same·as·<span·class="inlinecode"><span·class="id"·title="var">bal</span></span>·but·does·not·assume·anything·regarding·heights |
240 | ····of·<span·class="inlinecode"><span·class="id"·title="var">l</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">r</span></span>. | 240 | ····of·<span·class="inlinecode"><span·class="id"·title="var">l</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">r</span></span>. |
Offset 261, 15 lines modified | Offset 261, 15 lines modified | ||
261 | <span·class="id"·title="keyword">end</span><br/> | 261 | <span·class="id"·title="keyword">end</span><br/> |
262 | <span·class="id"·title="keyword">end</span>.<br/> | 262 | <span·class="id"·title="keyword">end</span>.<br/> |
263 | <br/> | 263 | <br/> |
264 | </div> | 264 | </div> |
Max diff block lines reached; 64209/72815 bytes (88.18%) of diff not shown. |
Offset 71, 15 lines modified | Offset 71, 15 lines modified | ||
71 | <span·class="id"·title="keyword">Module</span>·<a·id="WDecideOn"·class="idref"·href="#WDecideOn"><span·class="id"·title="module">WDecideOn</span></a>·(<span·class="id"·title="var">E</span>·:·<a·class="idref"·href="Coq.Structures.Equalities.html#DecidableType"><span·class="id"·title="module">DecidableType</span></a>)(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">M</span>·:·<a·class="idref"·href="Coq.MSets.MSetInterface.html#WSetsOn"><span·class="id"·title="module">WSetsOn</span></a>·<a·class="idref"·href="Coq.MSets.MSetDecide.html#E"><span·class="id"·title="module">E</span></a>).<br/> | 71 | <span·class="id"·title="keyword">Module</span>·<a·id="WDecideOn"·class="idref"·href="#WDecideOn"><span·class="id"·title="module">WDecideOn</span></a>·(<span·class="id"·title="var">E</span>·:·<a·class="idref"·href="Coq.Structures.Equalities.html#DecidableType"><span·class="id"·title="module">DecidableType</span></a>)(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">M</span>·:·<a·class="idref"·href="Coq.MSets.MSetInterface.html#WSetsOn"><span·class="id"·title="module">WSetsOn</span></a>·<a·class="idref"·href="Coq.MSets.MSetDecide.html#E"><span·class="id"·title="module">E</span></a>).<br/> |
72 | <span·class="id"·title="keyword">Module</span>·<a·id="WDecideOn.F"·class="idref"·href="#WDecideOn.F"><span·class="id"·title="module">F</span></a>·:=·<a·class="idref"·href="Coq.MSets.MSetFacts.html#WFactsOn"><span·class="id"·title="module">MSetFacts.WFactsOn</span></a>·<a·class="idref"·href="Coq.MSets.MSetDecide.html#E"><span·class="id"·title="module">E</span></a>·<a·class="idref"·href="Coq.MSets.MSetDecide.html#M"><span·class="id"·title="module">M</span></a>.<br/> | 72 | <span·class="id"·title="keyword">Module</span>·<a·id="WDecideOn.F"·class="idref"·href="#WDecideOn.F"><span·class="id"·title="module">F</span></a>·:=·<a·class="idref"·href="Coq.MSets.MSetFacts.html#WFactsOn"><span·class="id"·title="module">MSetFacts.WFactsOn</span></a>·<a·class="idref"·href="Coq.MSets.MSetDecide.html#E"><span·class="id"·title="module">E</span></a>·<a·class="idref"·href="Coq.MSets.MSetDecide.html#M"><span·class="id"·title="module">M</span></a>.<br/> |
73 | <br/> | 73 | <br/> |
74 | </div> | 74 | </div> |
75 | <div·class="doc"> | 75 | <div·class="doc"> |
76 | <a·id="lab | 76 | <a·id="lab76"></a><h1·class="section">Overview</h1> |
77 | ····This·functor·defines·the·tactic·<span·class="inlinecode"><span·class="id"·title="var">fsetdec</span></span>,·which·will | 77 | ····This·functor·defines·the·tactic·<span·class="inlinecode"><span·class="id"·title="var">fsetdec</span></span>,·which·will |
78 | ····solve·any·valid·goal·of·the·form | 78 | ····solve·any·valid·goal·of·the·form |
79 | <pre> | 79 | <pre> |
80 | ····forall·s1·...·sn, | 80 | ····forall·s1·...·sn, |
81 | ····forall·x1·...·xm, | 81 | ····forall·x1·...·xm, |
82 | ····P1·->·...·->·Pk·->·P | 82 | ····P1·->·...·->·Pk·->·P |
Offset 177, 41 lines modified | Offset 177, 41 lines modified | ||
177 | </pre> | 177 | </pre> |
178 | </li> | 178 | </li> |
179 | </ul> | 179 | </ul> |
180 | <div·class="paragraph">·</div> | 180 | <div·class="paragraph">·</div> |
181 | <a·id="lab | 181 | <a·id="lab77"></a><h1·class="section">Facts·and·Tactics·for·Propositional·Logic</h1> |
182 | ······These·lemmas·and·tactics·are·in·a·module·so·that·they·do | 182 | ······These·lemmas·and·tactics·are·in·a·module·so·that·they·do |
183 | ······not·affect·the·namespace·if·you·import·the·enclosing | 183 | ······not·affect·the·namespace·if·you·import·the·enclosing |
184 | ······module·<span·class="inlinecode"><span·class="id"·title="var">Decide</span></span>.· | 184 | ······module·<span·class="inlinecode"><span·class="id"·title="var">Decide</span></span>.· |
185 | </div> | 185 | </div> |
186 | <div·class="code"> | 186 | <div·class="code"> |
187 | <span·class="id"·title="keyword">Module</span>·<a·id="WDecideOn.MSetLogicalFacts"·class="idref"·href="#WDecideOn.MSetLogicalFacts"><span·class="id"·title="module">MSetLogicalFacts</span></a>.<br/> | 187 | <span·class="id"·title="keyword">Module</span>·<a·id="WDecideOn.MSetLogicalFacts"·class="idref"·href="#WDecideOn.MSetLogicalFacts"><span·class="id"·title="module">MSetLogicalFacts</span></a>.<br/> |
188 | <span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.Logic.Decidable.html#"><span·class="id"·title="module">Decidable</span></a>.<br/> | 188 | <span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.Logic.Decidable.html#"><span·class="id"·title="module">Decidable</span></a>.<br/> |
189 | <span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.Setoids.Setoid.html#"><span·class="id"·title="module">Setoid</span></a>.<br/> | 189 | <span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.Setoids.Setoid.html#"><span·class="id"·title="module">Setoid</span></a>.<br/> |
190 | <br/> | 190 | <br/> |
191 | </div> | 191 | </div> |
192 | <div·class="doc"> | 192 | <div·class="doc"> |
193 | <a·id="lab | 193 | <a·id="lab78"></a><h2·class="section">Lemmas·and·Tactics·About·Decidable·Propositions</h2> |
194 | <div·class="paragraph">·</div> | 194 | <div·class="paragraph">·</div> |
195 | <a·id="lab | 195 | <a·id="lab79"></a><h2·class="section">Propositional·Equivalences·Involving·Negation</h2> |
196 | ········These·are·all·written·with·the·unfolded·form·of | 196 | ········These·are·all·written·with·the·unfolded·form·of |
197 | ········negation,·since·I·am·not·sure·if·setoid·rewriting·will | 197 | ········negation,·since·I·am·not·sure·if·setoid·rewriting·will |
198 | ········always·perform·conversion.· | 198 | ········always·perform·conversion.· |
199 | <div·class="paragraph">·</div> | 199 | <div·class="paragraph">·</div> |
200 | <a·id="lab | 200 | <a·id="lab80"></a><h2·class="section">Tactics·for·Negations</h2> |
201 | </div> | 201 | </div> |
202 | <div·class="code"> | 202 | <div·class="code"> |
203 | <br/> | 203 | <br/> |
204 | <span·class="id"·title="keyword">Tactic·Notation</span>·"fold"·"any"·"not"·:=<br/> | 204 | <span·class="id"·title="keyword">Tactic·Notation</span>·"fold"·"any"·"not"·:=<br/> |
205 | <span·class="id"·title="tactic">repeat</span>·(<br/> | 205 | <span·class="id"·title="tactic">repeat</span>·(<br/> |
Offset 454, 28 lines modified | Offset 454, 28 lines modified | ||
454 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.MSets.MSetDecide.html#WDecideOn.MSetLogicalFacts"><span·class="id"·title="module">MSetLogicalFacts</span></a>.<br/> | 454 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.MSets.MSetDecide.html#WDecideOn.MSetLogicalFacts"><span·class="id"·title="module">MSetLogicalFacts</span></a>.<br/> |
455 | <span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.MSets.MSetDecide.html#WDecideOn.MSetLogicalFacts"><span·class="id"·title="module">MSetLogicalFacts</span></a>.<br/> | 455 | <span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.MSets.MSetDecide.html#WDecideOn.MSetLogicalFacts"><span·class="id"·title="module">MSetLogicalFacts</span></a>.<br/> |
456 | <br/> | 456 | <br/> |
457 | </div> | 457 | </div> |
458 | <div·class="doc"> | 458 | <div·class="doc"> |
459 | <a·id="lab | 459 | <a·id="lab81"></a><h1·class="section">Auxiliary·Tactics</h1> |
460 | ······Again,·these·lemmas·and·tactics·are·in·a·module·so·that | 460 | ······Again,·these·lemmas·and·tactics·are·in·a·module·so·that |
461 | ······they·do·not·affect·the·namespace·if·you·import·the | 461 | ······they·do·not·affect·the·namespace·if·you·import·the |
462 | ······enclosing·module·<span·class="inlinecode"><span·class="id"·title="var">Decide</span></span>.·· | 462 | ······enclosing·module·<span·class="inlinecode"><span·class="id"·title="var">Decide</span></span>.·· |
463 | </div> | 463 | </div> |
464 | <div·class="code"> | 464 | <div·class="code"> |
465 | <span·class="id"·title="keyword">Module</span>·<a·id="WDecideOn.MSetDecideAuxiliary"·class="idref"·href="#WDecideOn.MSetDecideAuxiliary"><span·class="id"·title="module">MSetDecideAuxiliary</span></a>.<br/> | 465 | <span·class="id"·title="keyword">Module</span>·<a·id="WDecideOn.MSetDecideAuxiliary"·class="idref"·href="#WDecideOn.MSetDecideAuxiliary"><span·class="id"·title="module">MSetDecideAuxiliary</span></a>.<br/> |
466 | <br/> | 466 | <br/> |
467 | </div> | 467 | </div> |
468 | <div·class="doc"> | 468 | <div·class="doc"> |
469 | <a·id="lab | 469 | <a·id="lab82"></a><h2·class="section">Generic·Tactics</h2> |
470 | ········We·begin·by·defining·a·few·generic,·useful·tactics.· | 470 | ········We·begin·by·defining·a·few·generic,·useful·tactics.· |
471 | <div·class="paragraph">·</div> | 471 | <div·class="paragraph">·</div> |
472 | ·remove·logical·hypothesis·inter-dependencies·(fix·2136).· | 472 | ·remove·logical·hypothesis·inter-dependencies·(fix·2136).· |
473 | </div> | 473 | </div> |
474 | <div·class="code"> | 474 | <div·class="code"> |
Offset 584, 15 lines modified | Offset 584, 15 lines modified | ||
584 | |·<span·class="id"·title="var">H</span>:·<span·class="id"·title="var">_</span>·|-·<span·class="id"·title="var">_</span>·=>·<span·class="id"·title="tactic">progress</span>·(<span·class="id"·title="var">decompose</span>·<span·class="id"·title="var">record</span>·<span·class="id"·title="var">H</span>);·<span·class="id"·title="tactic">clear</span>·<span·class="id"·title="var">H</span><br/> | 584 | |·<span·class="id"·title="var">H</span>:·<span·class="id"·title="var">_</span>·|-·<span·class="id"·title="var">_</span>·=>·<span·class="id"·title="tactic">progress</span>·(<span·class="id"·title="var">decompose</span>·<span·class="id"·title="var">record</span>·<span·class="id"·title="var">H</span>);·<span·class="id"·title="tactic">clear</span>·<span·class="id"·title="var">H</span><br/> |
585 | <span·class="id"·title="keyword">end</span>).<br/> | 585 | <span·class="id"·title="keyword">end</span>).<br/> |
586 | <br/> | 586 | <br/> |
587 | </div> | 587 | </div> |
588 | <div·class="doc"> | 588 | <div·class="doc"> |
589 | <a·id="lab | 589 | <a·id="lab83"></a><h2·class="section">Discarding·Irrelevant·Hypotheses</h2> |
590 | ········We·will·want·to·clear·the·context·of·any | 590 | ········We·will·want·to·clear·the·context·of·any |
591 | ········non-MSet-related·hypotheses·in·order·to·increase·the | 591 | ········non-MSet-related·hypotheses·in·order·to·increase·the |
592 | ········speed·of·the·tactic.··To·do·this,·we·will·need·to·be | 592 | ········speed·of·the·tactic.··To·do·this,·we·will·need·to·be |
593 | ········able·to·decide·which·are·relevant.··We·do·this·by·making | 593 | ········able·to·decide·which·are·relevant.··We·do·this·by·making |
594 | ········a·simple·inductive·definition·classifying·the | 594 | ········a·simple·inductive·definition·classifying·the |
595 | ········propositions·of·interest.· | 595 | ········propositions·of·interest.· |
Offset 664, 15 lines modified | Offset 664, 15 lines modified | ||
664 | <span·class="id"·title="keyword">else</span>·<span·class="id"·title="tactic">clear</span>·<span·class="id"·title="var">H</span><br/> | 664 | <span·class="id"·title="keyword">else</span>·<span·class="id"·title="tactic">clear</span>·<span·class="id"·title="var">H</span><br/> |
665 | <span·class="id"·title="keyword">end</span>).<br/> | 665 | <span·class="id"·title="keyword">end</span>).<br/> |
666 | <br/> | 666 | <br/> |
667 | </div> | 667 | </div> |
668 | <div·class="doc"> | 668 | <div·class="doc"> |
669 | <a·id="lab | 669 | <a·id="lab84"></a><h2·class="section">Turning·Set·Operators·into·Propositional·Connectives</h2> |
670 | ········The·lemmas·from·<span·class="inlinecode"><span·class="id"·title="var">MSetFacts</span></span>·will·be·used·to·break·down | 670 | ········The·lemmas·from·<span·class="inlinecode"><span·class="id"·title="var">MSetFacts</span></span>·will·be·used·to·break·down |
671 | ········set·operations·into·propositional·formulas·built·over | 671 | ········set·operations·into·propositional·formulas·built·over |
672 | ········the·predicates·<span·class="inlinecode"><span·class="id"·title="var">In</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">E.eq</span></span>·applied·only·to | 672 | ········the·predicates·<span·class="inlinecode"><span·class="id"·title="var">In</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">E.eq</span></span>·applied·only·to |
673 | ········variables.··We·are·going·to·use·them·with·<span·class="inlinecode"><span·class="id"·title="tactic">autorewrite</span></span>. | 673 | ········variables.··We·are·going·to·use·them·with·<span·class="inlinecode"><span·class="id"·title="tactic">autorewrite</span></span>. |
674 | ········ | 674 | ········ |
675 | </div> | 675 | </div> |
Offset 690, 15 lines modified | Offset 690, 15 lines modified | ||
690 | <br/> | 690 | <br/> |
691 | <span·class="id"·title="keyword">Global·Hint·Rewrite</span>·<a·class="idref"·href="Coq.MSets.MSetDecide.html#WDecideOn.MSetDecideAuxiliary.eq_refl_iff"><span·class="id"·title="lemma">eq_refl_iff</span></a>·:·<span·class="id"·title="var">set_eq_simpl</span>.<br/> | 691 | <span·class="id"·title="keyword">Global·Hint·Rewrite</span>·<a·class="idref"·href="Coq.MSets.MSetDecide.html#WDecideOn.MSetDecideAuxiliary.eq_refl_iff"><span·class="id"·title="lemma">eq_refl_iff</span></a>·:·<span·class="id"·title="var">set_eq_simpl</span>.<br/> |
692 | <br/> | 692 | <br/> |
693 | </div> | 693 | </div> |
694 | <div·class="doc"> | 694 | <div·class="doc"> |
695 | <a·id="lab | 695 | <a·id="lab85"></a><h2·class="section">Decidability·of·MSet·Propositions</h2> |
Max diff block lines reached; 7264/14955 bytes (48.57%) of diff not shown. |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab1 | 49 | <a·id="lab102"></a><h1·class="section">Finite·sets·library</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·This·module·proves·many·properties·of·finite·sets·that | 51 | ·This·module·proves·many·properties·of·finite·sets·that |
52 | ····are·consequences·of·the·axiomatization·in·<span·class="inlinecode"><span·class="id"·title="var">FsetInterface</span></span> | 52 | ····are·consequences·of·the·axiomatization·in·<span·class="inlinecode"><span·class="id"·title="var">FsetInterface</span></span> |
53 | ····Contrary·to·the·functor·in·<span·class="inlinecode"><span·class="id"·title="var">FsetProperties</span></span>·it·uses | 53 | ····Contrary·to·the·functor·in·<span·class="inlinecode"><span·class="id"·title="var">FsetProperties</span></span>·it·uses |
54 | ····sets·operations·instead·of·predicates·over·sets,·i.e. | 54 | ····sets·operations·instead·of·predicates·over·sets,·i.e. |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab1 | 49 | <a·id="lab103"></a><h1·class="section">Finite·sets·library</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·This·functor·derives·additional·facts·from·<span·class="inlinecode"><span·class="id"·title="var">MSetInterface.S</span></span>.·These | 51 | ·This·functor·derives·additional·facts·from·<span·class="inlinecode"><span·class="id"·title="var">MSetInterface.S</span></span>.·These |
52 | ··facts·are·mainly·the·specifications·of·<span·class="inlinecode"><span·class="id"·title="var">MSetInterface.S</span></span>·written·using | 52 | ··facts·are·mainly·the·specifications·of·<span·class="inlinecode"><span·class="id"·title="var">MSetInterface.S</span></span>·written·using |
53 | ··different·styles:·equivalence·and·boolean·equalities. | 53 | ··different·styles:·equivalence·and·boolean·equalities. |
54 | ··Moreover,·we·prove·that·<span·class="inlinecode"><span·class="id"·title="var">E.Eq</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">Equal</span></span>·are·setoid·equalities. | 54 | ··Moreover,·we·prove·that·<span·class="inlinecode"><span·class="id"·title="var">E.Eq</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">Equal</span></span>·are·setoid·equalities. |
Offset 84, 15 lines modified | Offset 84, 15 lines modified | ||
84 | <span·class="id"·title="keyword">Notation</span>·<a·id="WFactsOn.eq_dec"·class="idref"·href="#WFactsOn.eq_dec"><span·class="id"·title="abbreviation">eq_dec</span></a>·:=·<a·class="idref"·href="Coq.MSets.MSetFacts.html#E.eq_dec"><span·class="id"·title="axiom">E.eq_dec</span></a>.<br/> | 84 | <span·class="id"·title="keyword">Notation</span>·<a·id="WFactsOn.eq_dec"·class="idref"·href="#WFactsOn.eq_dec"><span·class="id"·title="abbreviation">eq_dec</span></a>·:=·<a·class="idref"·href="Coq.MSets.MSetFacts.html#E.eq_dec"><span·class="id"·title="axiom">E.eq_dec</span></a>.<br/> |
85 | <span·class="id"·title="keyword">Definition</span>·<a·id="WFactsOn.eqb"·class="idref"·href="#WFactsOn.eqb"><span·class="id"·title="definition">eqb</span></a>·<a·id="x:1"·class="idref"·href="#x:1"><span·class="id"·title="binder">x</span></a>·<a·id="y:2"·class="idref"·href="#y:2"><span·class="id"·title="binder">y</span></a>·:=·<span·class="id"·title="keyword">if</span>·<a·class="idref"·href="Coq.MSets.MSetFacts.html#WFactsOn.eq_dec"><span·class="id"·title="abbreviation">eq_dec</span></a>·<a·class="idref"·href="Coq.MSets.MSetFacts.html#x:1"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.MSets.MSetFacts.html#y:2"><span·class="id"·title="variable">y</span></a>·<span·class="id"·title="keyword">then</span>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<span·class="id"·title="keyword">else</span>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>.<br/> | 85 | <span·class="id"·title="keyword">Definition</span>·<a·id="WFactsOn.eqb"·class="idref"·href="#WFactsOn.eqb"><span·class="id"·title="definition">eqb</span></a>·<a·id="x:1"·class="idref"·href="#x:1"><span·class="id"·title="binder">x</span></a>·<a·id="y:2"·class="idref"·href="#y:2"><span·class="id"·title="binder">y</span></a>·:=·<span·class="id"·title="keyword">if</span>·<a·class="idref"·href="Coq.MSets.MSetFacts.html#WFactsOn.eq_dec"><span·class="id"·title="abbreviation">eq_dec</span></a>·<a·class="idref"·href="Coq.MSets.MSetFacts.html#x:1"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.MSets.MSetFacts.html#y:2"><span·class="id"·title="variable">y</span></a>·<span·class="id"·title="keyword">then</span>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<span·class="id"·title="keyword">else</span>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>.<br/> |
86 | <br/> | 86 | <br/> |
87 | </div> | 87 | </div> |
88 | <div·class="doc"> | 88 | <div·class="doc"> |
89 | <a·id="lab1 | 89 | <a·id="lab104"></a><h1·class="section">Specifications·written·using·implications·:</h1> |
90 | ······this·used·to·be·the·default·interface.· | 90 | ······this·used·to·be·the·default·interface.· |
91 | </div> | 91 | </div> |
92 | <div·class="code"> | 92 | <div·class="code"> |
93 | <br/> | 93 | <br/> |
94 | <span·class="id"·title="keyword">Section</span>·<a·id="WFactsOn.ImplSpec"·class="idref"·href="#WFactsOn.ImplSpec"><span·class="id"·title="section">ImplSpec</span></a>.<br/> | 94 | <span·class="id"·title="keyword">Section</span>·<a·id="WFactsOn.ImplSpec"·class="idref"·href="#WFactsOn.ImplSpec"><span·class="id"·title="section">ImplSpec</span></a>.<br/> |
Offset 201, 15 lines modified | Offset 201, 15 lines modified | ||
201 | <span·class="id"·title="var">filter_1</span>·<span·class="id"·title="var">filter_2</span>·<span·class="id"·title="var">for_all_2</span>·<span·class="id"·title="var">exists_2</span>·<span·class="id"·title="var">elements_2</span><br/> | 201 | <span·class="id"·title="var">filter_1</span>·<span·class="id"·title="var">filter_2</span>·<span·class="id"·title="var">for_all_2</span>·<span·class="id"·title="var">exists_2</span>·<span·class="id"·title="var">elements_2</span><br/> |
202 | :·<span·class="id"·title="tactic">set</span>.<br/> | 202 | :·<span·class="id"·title="tactic">set</span>.<br/> |
203 | <br/> | 203 | <br/> |
204 | </div> | 204 | </div> |
205 | <div·class="doc"> | 205 | <div·class="doc"> |
206 | <a·id="lab1 | 206 | <a·id="lab105"></a><h1·class="section">Specifications·written·using·equivalences·:</h1> |
207 | ······this·is·now·provided·by·the·default·interface.· | 207 | ······this·is·now·provided·by·the·default·interface.· |
208 | </div> | 208 | </div> |
209 | <div·class="code"> | 209 | <div·class="code"> |
210 | <br/> | 210 | <br/> |
211 | <span·class="id"·title="keyword">Section</span>·<a·id="WFactsOn.IffSpec"·class="idref"·href="#WFactsOn.IffSpec"><span·class="id"·title="section">IffSpec</span></a>.<br/> | 211 | <span·class="id"·title="keyword">Section</span>·<a·id="WFactsOn.IffSpec"·class="idref"·href="#WFactsOn.IffSpec"><span·class="id"·title="section">IffSpec</span></a>.<br/> |
Offset 290, 15 lines modified | Offset 290, 15 lines modified | ||
290 | ||·<span·class="id"·title="tactic">rewrite</span>·<a·class="idref"·href="Coq.MSets.MSetFacts.html#WFactsOn.union_iff"><span·class="id"·title="abbreviation">union_iff</span></a>·||·<span·class="id"·title="tactic">rewrite</span>·<a·class="idref"·href="Coq.MSets.MSetFacts.html#WFactsOn.inter_iff"><span·class="id"·title="abbreviation">inter_iff</span></a>·||·<span·class="id"·title="tactic">rewrite</span>·<a·class="idref"·href="Coq.MSets.MSetFacts.html#WFactsOn.diff_iff"><span·class="id"·title="abbreviation">diff_iff</span></a><br/> | 290 | ||·<span·class="id"·title="tactic">rewrite</span>·<a·class="idref"·href="Coq.MSets.MSetFacts.html#WFactsOn.union_iff"><span·class="id"·title="abbreviation">union_iff</span></a>·||·<span·class="id"·title="tactic">rewrite</span>·<a·class="idref"·href="Coq.MSets.MSetFacts.html#WFactsOn.inter_iff"><span·class="id"·title="abbreviation">inter_iff</span></a>·||·<span·class="id"·title="tactic">rewrite</span>·<a·class="idref"·href="Coq.MSets.MSetFacts.html#WFactsOn.diff_iff"><span·class="id"·title="abbreviation">diff_iff</span></a><br/> |
291 | ||·<span·class="id"·title="tactic">rewrite</span>·<a·class="idref"·href="Coq.MSets.MSetFacts.html#WFactsOn.empty_iff"><span·class="id"·title="lemma">empty_iff</span></a>)).<br/> | 291 | ||·<span·class="id"·title="tactic">rewrite</span>·<a·class="idref"·href="Coq.MSets.MSetFacts.html#WFactsOn.empty_iff"><span·class="id"·title="lemma">empty_iff</span></a>)).<br/> |
292 | <br/> | 292 | <br/> |
293 | </div> | 293 | </div> |
294 | <div·class="doc"> | 294 | <div·class="doc"> |
295 | <a·id="lab1 | 295 | <a·id="lab106"></a><h1·class="section">Specifications·written·using·boolean·predicates</h1> |
296 | </div> | 296 | </div> |
297 | <div·class="code"> | 297 | <div·class="code"> |
298 | <br/> | 298 | <br/> |
299 | <span·class="id"·title="keyword">Section</span>·<a·id="WFactsOn.BoolSpec"·class="idref"·href="#WFactsOn.BoolSpec"><span·class="id"·title="section">BoolSpec</span></a>.<br/> | 299 | <span·class="id"·title="keyword">Section</span>·<a·id="WFactsOn.BoolSpec"·class="idref"·href="#WFactsOn.BoolSpec"><span·class="id"·title="section">BoolSpec</span></a>.<br/> |
300 | <span·class="id"·title="keyword">Variable</span>·<a·id="WFactsOn.BoolSpec.s"·class="idref"·href="#WFactsOn.BoolSpec.s"><span·class="id"·title="variable">s</span></a>·<a·id="WFactsOn.BoolSpec.s'"·class="idref"·href="#WFactsOn.BoolSpec.s'"><span·class="id"·title="variable">s'</span></a>·<a·id="WFactsOn.BoolSpec.s''"·class="idref"·href="#WFactsOn.BoolSpec.s''"><span·class="id"·title="variable">s''</span></a>·:·<a·class="idref"·href="Coq.MSets.MSetFacts.html#M.t"><span·class="id"·title="axiom">t</span></a>.<br/> | 300 | <span·class="id"·title="keyword">Variable</span>·<a·id="WFactsOn.BoolSpec.s"·class="idref"·href="#WFactsOn.BoolSpec.s"><span·class="id"·title="variable">s</span></a>·<a·id="WFactsOn.BoolSpec.s'"·class="idref"·href="#WFactsOn.BoolSpec.s'"><span·class="id"·title="variable">s'</span></a>·<a·id="WFactsOn.BoolSpec.s''"·class="idref"·href="#WFactsOn.BoolSpec.s''"><span·class="id"·title="variable">s''</span></a>·:·<a·class="idref"·href="Coq.MSets.MSetFacts.html#M.t"><span·class="id"·title="axiom">t</span></a>.<br/> |
Offset 354, 15 lines modified | Offset 354, 15 lines modified | ||
354 | <br/> | 354 | <br/> |
355 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.MSets.MSetFacts.html#WFactsOn.BoolSpec"><span·class="id"·title="section">BoolSpec</span></a>.<br/> | 355 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.MSets.MSetFacts.html#WFactsOn.BoolSpec"><span·class="id"·title="section">BoolSpec</span></a>.<br/> |
356 | <br/> | 356 | <br/> |
357 | </div> | 357 | </div> |
358 | <div·class="doc"> | 358 | <div·class="doc"> |
359 | <a·id="lab1 | 359 | <a·id="lab107"></a><h1·class="section">Declarations·of·morphisms·with·respects·to·<span·class="inlinecode"><span·class="id"·title="var">E.eq</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">Equal</span></span></h1> |
360 | </div> | 360 | </div> |
361 | <div·class="code"> | 361 | <div·class="code"> |
362 | <br/> | 362 | <br/> |
363 | #[<span·class="id"·title="var">global</span>]<br/> | 363 | #[<span·class="id"·title="var">global</span>]<br/> |
364 | <span·class="id"·title="keyword">Instance</span>·<a·id="WFactsOn.In_m"·class="idref"·href="#WFactsOn.In_m"><span·class="id"·title="instance">In_m</span></a>·:·<a·class="idref"·href="Coq.Classes.Morphisms.html#Proper"><span·class="id"·title="class">Proper</span></a>·(<a·class="idref"·href="Coq.MSets.MSetFacts.html#E.eq"><span·class="id"·title="axiom">E.eq</span></a><a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a><a·class="idref"·href="Coq.MSets.MSetFacts.html#M.Equal"><span·class="id"·title="definition">Equal</span></a><a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a><a·class="idref"·href="Coq.Init.Logic.html#iff"><span·class="id"·title="definition">iff</span></a>)·<a·class="idref"·href="Coq.MSets.MSetFacts.html#M.In"><span·class="id"·title="axiom">In</span></a>.<br/> | 364 | <span·class="id"·title="keyword">Instance</span>·<a·id="WFactsOn.In_m"·class="idref"·href="#WFactsOn.In_m"><span·class="id"·title="instance">In_m</span></a>·:·<a·class="idref"·href="Coq.Classes.Morphisms.html#Proper"><span·class="id"·title="class">Proper</span></a>·(<a·class="idref"·href="Coq.MSets.MSetFacts.html#E.eq"><span·class="id"·title="axiom">E.eq</span></a><a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a><a·class="idref"·href="Coq.MSets.MSetFacts.html#M.Equal"><span·class="id"·title="definition">Equal</span></a><a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a><a·class="idref"·href="Coq.Init.Logic.html#iff"><span·class="id"·title="definition">iff</span></a>)·<a·class="idref"·href="Coq.MSets.MSetFacts.html#M.In"><span·class="id"·title="axiom">In</span></a>.<br/> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab49"></a><h1·class="section">MSetGenTree·:·sets·via·generic·trees</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ····This·module·factorizes·common·parts·in·implementations | 51 | ····This·module·factorizes·common·parts·in·implementations |
52 | ····of·finite·sets·as·AVL·trees·and·as·Red-Black·trees.·The·nodes | 52 | ····of·finite·sets·as·AVL·trees·and·as·Red-Black·trees.·The·nodes |
53 | ····of·the·trees·defined·here·include·an·generic·information | 53 | ····of·the·trees·defined·here·include·an·generic·information |
Offset 103, 15 lines modified | Offset 103, 15 lines modified | ||
103 | <span·class="id"·title="keyword">Parameter</span>·<a·id="InfoTyp.t"·class="idref"·href="#InfoTyp.t"><span·class="id"·title="axiom">t</span></a>·:·<span·class="id"·title="keyword">Set</span>.<br/> | 103 | <span·class="id"·title="keyword">Parameter</span>·<a·id="InfoTyp.t"·class="idref"·href="#InfoTyp.t"><span·class="id"·title="axiom">t</span></a>·:·<span·class="id"·title="keyword">Set</span>.<br/> |
104 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#InfoTyp"><span·class="id"·title="module">InfoTyp</span></a>.<br/> | 104 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#InfoTyp"><span·class="id"·title="module">InfoTyp</span></a>.<br/> |
105 | <br/> | 105 | <br/> |
106 | </div> | 106 | </div> |
107 | <div·class="doc"> | 107 | <div·class="doc"> |
108 | <a·id="lab | 108 | <a·id="lab50"></a><h1·class="section">Ops·:·the·pure·functions</h1> |
109 | </div> | 109 | </div> |
110 | <div·class="code"> | 110 | <div·class="code"> |
111 | <br/> | 111 | <br/> |
112 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="Ops"·class="idref"·href="#Ops"><span·class="id"·title="module">Ops</span></a>·(<span·class="id"·title="var">X</span>:<a·class="idref"·href="Coq.Structures.Orders.html#OrderedType"><span·class="id"·title="module">OrderedType</span></a>)(<span·class="id"·title="var">Info</span>:<a·class="idref"·href="Coq.MSets.MSetGenTree.html#InfoTyp"><span·class="id"·title="module">InfoTyp</span></a>).<br/> | 112 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="Ops"·class="idref"·href="#Ops"><span·class="id"·title="module">Ops</span></a>·(<span·class="id"·title="var">X</span>:<a·class="idref"·href="Coq.Structures.Orders.html#OrderedType"><span·class="id"·title="module">OrderedType</span></a>)(<span·class="id"·title="var">Info</span>:<a·class="idref"·href="Coq.MSets.MSetGenTree.html#InfoTyp"><span·class="id"·title="module">InfoTyp</span></a>).<br/> |
Offset 125, 15 lines modified | Offset 125, 15 lines modified | ||
125 | |·<a·id="Ops.Leaf"·class="idref"·href="#Ops.Leaf"><span·class="id"·title="constructor">Leaf</span></a>·:·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#tree:3"><span·class="id"·title="inductive">tree</span></a><br/> | 125 | |·<a·id="Ops.Leaf"·class="idref"·href="#Ops.Leaf"><span·class="id"·title="constructor">Leaf</span></a>·:·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#tree:3"><span·class="id"·title="inductive">tree</span></a><br/> |
126 | |·<a·id="Ops.Node"·class="idref"·href="#Ops.Node"><span·class="id"·title="constructor">Node</span></a>·:·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#Info.t"><span·class="id"·title="axiom">Info.t</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#tree:3"><span·class="id"·title="inductive">tree</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#X.t"><span·class="id"·title="axiom">X.t</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#tree:3"><span·class="id"·title="inductive">tree</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#tree:3"><span·class="id"·title="inductive">tree</span></a>.<br/> | 126 | |·<a·id="Ops.Node"·class="idref"·href="#Ops.Node"><span·class="id"·title="constructor">Node</span></a>·:·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#Info.t"><span·class="id"·title="axiom">Info.t</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#tree:3"><span·class="id"·title="inductive">tree</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#X.t"><span·class="id"·title="axiom">X.t</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#tree:3"><span·class="id"·title="inductive">tree</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#tree:3"><span·class="id"·title="inductive">tree</span></a>.<br/> |
127 | <br/> | 127 | <br/> |
128 | </div> | 128 | </div> |
129 | <div·class="doc"> | 129 | <div·class="doc"> |
130 | <a·id="lab | 130 | <a·id="lab51"></a><h2·class="section">The·empty·set·and·emptyness·test</h2> |
131 | </div> | 131 | </div> |
132 | <div·class="code"> | 132 | <div·class="code"> |
133 | <br/> | 133 | <br/> |
134 | <span·class="id"·title="keyword">Definition</span>·<a·id="Ops.empty"·class="idref"·href="#Ops.empty"><span·class="id"·title="definition">empty</span></a>·:=·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#Ops.Leaf"><span·class="id"·title="constructor">Leaf</span></a>.<br/> | 134 | <span·class="id"·title="keyword">Definition</span>·<a·id="Ops.empty"·class="idref"·href="#Ops.empty"><span·class="id"·title="definition">empty</span></a>·:=·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#Ops.Leaf"><span·class="id"·title="constructor">Leaf</span></a>.<br/> |
Offset 144, 15 lines modified | Offset 144, 15 lines modified | ||
144 | |·<span·class="id"·title="var">_</span>·=>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a><br/> | 144 | |·<span·class="id"·title="var">_</span>·=>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a><br/> |
145 | <span·class="id"·title="keyword">end</span>.<br/> | 145 | <span·class="id"·title="keyword">end</span>.<br/> |
146 | <br/> | 146 | <br/> |
147 | </div> | 147 | </div> |
148 | <div·class="doc"> | 148 | <div·class="doc"> |
149 | <a·id="lab | 149 | <a·id="lab52"></a><h2·class="section">Membership·test</h2> |
150 | <div·class="paragraph">·</div> | 150 | <div·class="paragraph">·</div> |
151 | ·The·<span·class="inlinecode"><span·class="id"·title="var">mem</span></span>·function·is·deciding·membership.·It·exploits·the | 151 | ·The·<span·class="inlinecode"><span·class="id"·title="var">mem</span></span>·function·is·deciding·membership.·It·exploits·the |
152 | ····binary·search·tree·invariant·to·achieve·logarithmic·complexity.· | 152 | ····binary·search·tree·invariant·to·achieve·logarithmic·complexity.· |
153 | </div> | 153 | </div> |
154 | <div·class="code"> | 154 | <div·class="code"> |
Offset 169, 15 lines modified | Offset 169, 15 lines modified | ||
169 | <span·class="id"·title="keyword">end</span><br/> | 169 | <span·class="id"·title="keyword">end</span><br/> |
170 | <span·class="id"·title="keyword">end</span>.<br/> | 170 | <span·class="id"·title="keyword">end</span>.<br/> |
171 | <br/> | 171 | <br/> |
172 | </div> | 172 | </div> |
173 | <div·class="doc"> | 173 | <div·class="doc"> |
174 | <a·id="lab | 174 | <a·id="lab53"></a><h2·class="section">Minimal,·maximal,·arbitrary·elements</h2> |
175 | </div> | 175 | </div> |
176 | <div·class="code"> | 176 | <div·class="code"> |
177 | <br/> | 177 | <br/> |
178 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Ops.min_elt"·class="idref"·href="#Ops.min_elt"><span·class="id"·title="definition">min_elt</span></a>·(<a·id="t:11"·class="idref"·href="#t:11"><span·class="id"·title="binder">t</span></a>·:·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#Ops.tree"><span·class="id"·title="inductive">tree</span></a>)·:·<a·class="idref"·href="Coq.Init.Datatypes.html#option"><span·class="id"·title="inductive">option</span></a>·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#Ops.elt"><span·class="id"·title="definition">elt</span></a>·:=<br/> | 178 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Ops.min_elt"·class="idref"·href="#Ops.min_elt"><span·class="id"·title="definition">min_elt</span></a>·(<a·id="t:11"·class="idref"·href="#t:11"><span·class="id"·title="binder">t</span></a>·:·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#Ops.tree"><span·class="id"·title="inductive">tree</span></a>)·:·<a·class="idref"·href="Coq.Init.Datatypes.html#option"><span·class="id"·title="inductive">option</span></a>·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#Ops.elt"><span·class="id"·title="definition">elt</span></a>·:=<br/> |
179 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#t:11"><span·class="id"·title="variable">t</span></a>·<span·class="id"·title="keyword">with</span><br/> | 179 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#t:11"><span·class="id"·title="variable">t</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 197, 15 lines modified | Offset 197, 15 lines modified | ||
197 | <br/> | 197 | <br/> |
198 | <span·class="id"·title="keyword">Definition</span>·<a·id="Ops.choose"·class="idref"·href="#Ops.choose"><span·class="id"·title="definition">choose</span></a>·:=·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#Ops.min_elt"><span·class="id"·title="definition">min_elt</span></a>.<br/> | 198 | <span·class="id"·title="keyword">Definition</span>·<a·id="Ops.choose"·class="idref"·href="#Ops.choose"><span·class="id"·title="definition">choose</span></a>·:=·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#Ops.min_elt"><span·class="id"·title="definition">min_elt</span></a>.<br/> |
199 | <br/> | 199 | <br/> |
200 | </div> | 200 | </div> |
201 | <div·class="doc"> | 201 | <div·class="doc"> |
202 | <a·id="lab | 202 | <a·id="lab54"></a><h2·class="section">Iteration·on·elements</h2> |
203 | </div> | 203 | </div> |
204 | <div·class="code"> | 204 | <div·class="code"> |
205 | <br/> | 205 | <br/> |
206 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Ops.fold"·class="idref"·href="#Ops.fold"><span·class="id"·title="definition">fold</span></a>·{<a·id="A:17"·class="idref"·href="#A:17"><span·class="id"·title="binder">A</span></a>:·<span·class="id"·title="keyword">Type</span>}·(<a·id="f:18"·class="idref"·href="#f:18"><span·class="id"·title="binder">f</span></a>:·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#Ops.elt"><span·class="id"·title="definition">elt</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#A:17"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#A:17"><span·class="id"·title="variable">A</span></a>)·(<a·id="t:19"·class="idref"·href="#t:19"><span·class="id"·title="binder">t</span></a>:·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#Ops.tree"><span·class="id"·title="inductive">tree</span></a>)·(<a·id="base:20"·class="idref"·href="#base:20"><span·class="id"·title="binder">base</span></a>:·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#A:17"><span·class="id"·title="variable">A</span></a>)·:·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#A:17"><span·class="id"·title="variable">A</span></a>·:=<br/> | 206 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Ops.fold"·class="idref"·href="#Ops.fold"><span·class="id"·title="definition">fold</span></a>·{<a·id="A:17"·class="idref"·href="#A:17"><span·class="id"·title="binder">A</span></a>:·<span·class="id"·title="keyword">Type</span>}·(<a·id="f:18"·class="idref"·href="#f:18"><span·class="id"·title="binder">f</span></a>:·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#Ops.elt"><span·class="id"·title="definition">elt</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#A:17"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#A:17"><span·class="id"·title="variable">A</span></a>)·(<a·id="t:19"·class="idref"·href="#t:19"><span·class="id"·title="binder">t</span></a>:·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#Ops.tree"><span·class="id"·title="inductive">tree</span></a>)·(<a·id="base:20"·class="idref"·href="#base:20"><span·class="id"·title="binder">base</span></a>:·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#A:17"><span·class="id"·title="variable">A</span></a>)·:·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#A:17"><span·class="id"·title="variable">A</span></a>·:=<br/> |
207 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#t:19"><span·class="id"·title="variable">t</span></a>·<span·class="id"·title="keyword">with</span><br/> | 207 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#t:19"><span·class="id"·title="variable">t</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 254, 15 lines modified | Offset 254, 15 lines modified | ||
254 | |·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#Ops.Node"><span·class="id"·title="constructor">Node</span></a>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">l</span>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">r</span>·=>·<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·(<a·class="idref"·href="Coq.Init.Peano.html#min"><span·class="id"·title="abbreviation">min</span></a>·(<a·class="idref"·href="Coq.MSets.MSetGenTree.html#mindepth:38"><span·class="id"·title="definition">mindepth</span></a>·<span·class="id"·title="var">l</span>)·(<a·class="idref"·href="Coq.MSets.MSetGenTree.html#mindepth:38"><span·class="id"·title="definition">mindepth</span></a>·<span·class="id"·title="var">r</span>))<br/> | 254 | |·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#Ops.Node"><span·class="id"·title="constructor">Node</span></a>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">l</span>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">r</span>·=>·<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·(<a·class="idref"·href="Coq.Init.Peano.html#min"><span·class="id"·title="abbreviation">min</span></a>·(<a·class="idref"·href="Coq.MSets.MSetGenTree.html#mindepth:38"><span·class="id"·title="definition">mindepth</span></a>·<span·class="id"·title="var">l</span>)·(<a·class="idref"·href="Coq.MSets.MSetGenTree.html#mindepth:38"><span·class="id"·title="definition">mindepth</span></a>·<span·class="id"·title="var">r</span>))<br/> |
255 | <span·class="id"·title="keyword">end</span>.<br/> | 255 | <span·class="id"·title="keyword">end</span>.<br/> |
256 | <br/> | 256 | <br/> |
257 | </div> | 257 | </div> |
258 | <div·class="doc"> | 258 | <div·class="doc"> |
259 | <a·id="lab | 259 | <a·id="lab55"></a><h2·class="section">Testing·universal·or·existential·properties.</h2> |
260 | <div·class="paragraph">·</div> | 260 | <div·class="paragraph">·</div> |
261 | ·We·do·not·use·the·standard·boolean·operators·of·Coq, | 261 | ·We·do·not·use·the·standard·boolean·operators·of·Coq, |
262 | ····but·lazy·ones.· | 262 | ····but·lazy·ones.· |
263 | </div> | 263 | </div> |
264 | <div·class="code"> | 264 | <div·class="code"> |
Offset 279, 15 lines modified | Offset 279, 15 lines modified | ||
279 | |·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#Ops.Node"><span·class="id"·title="constructor">Node</span></a>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">l</span>·<span·class="id"·title="var">x</span>·<span·class="id"·title="var">r</span>·=>·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#f:44"><span·class="id"·title="variable">f</span></a>·<span·class="id"·title="var">x</span>·<a·class="idref"·href="Coq.Bool.Bool.html#0355f6c50df14bfb34d066e9a1089633"><span·class="id"·title="notation">|||</span></a>·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#exists_:46"><span·class="id"·title="definition">exists_</span></a>·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#f:44"><span·class="id"·title="variable">f</span></a>·<span·class="id"·title="var">l</span>·<a·class="idref"·href="Coq.Bool.Bool.html#0355f6c50df14bfb34d066e9a1089633"><span·class="id"·title="notation">|||</span></a>·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#exists_:46"><span·class="id"·title="definition">exists_</span></a>·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#f:44"><span·class="id"·title="variable">f</span></a>·<span·class="id"·title="var">r</span><br/> | 279 | |·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#Ops.Node"><span·class="id"·title="constructor">Node</span></a>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">l</span>·<span·class="id"·title="var">x</span>·<span·class="id"·title="var">r</span>·=>·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#f:44"><span·class="id"·title="variable">f</span></a>·<span·class="id"·title="var">x</span>·<a·class="idref"·href="Coq.Bool.Bool.html#0355f6c50df14bfb34d066e9a1089633"><span·class="id"·title="notation">|||</span></a>·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#exists_:46"><span·class="id"·title="definition">exists_</span></a>·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#f:44"><span·class="id"·title="variable">f</span></a>·<span·class="id"·title="var">l</span>·<a·class="idref"·href="Coq.Bool.Bool.html#0355f6c50df14bfb34d066e9a1089633"><span·class="id"·title="notation">|||</span></a>·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#exists_:46"><span·class="id"·title="definition">exists_</span></a>·<a·class="idref"·href="Coq.MSets.MSetGenTree.html#f:44"><span·class="id"·title="variable">f</span></a>·<span·class="id"·title="var">r</span><br/> |
280 | <span·class="id"·title="keyword">end</span>.<br/> | 280 | <span·class="id"·title="keyword">end</span>.<br/> |
281 | <br/> | 281 | <br/> |
282 | </div> | 282 | </div> |
283 | <div·class="doc"> | 283 | <div·class="doc"> |
284 | <a·id="lab | 284 | <a·id="lab56"></a><h2·class="section">Comparison·of·trees</h2> |
285 | <div·class="paragraph">·</div> | 285 | <div·class="paragraph">·</div> |
286 | ·The·algorithm·here·has·been·suggested·by·Xavier·Leroy, | 286 | ·The·algorithm·here·has·been·suggested·by·Xavier·Leroy, |
287 | ····and·transformed·into·c.p.s.·by·Benjamin·Grégoire. | 287 | ····and·transformed·into·c.p.s.·by·Benjamin·Grégoire. |
288 | ····The·original·ocaml·code·(with·non-structural·recursive·calls) | 288 | ····The·original·ocaml·code·(with·non-structural·recursive·calls) |
289 | ····has·also·been·formalized·(thanks·to·Function+measure),·see | 289 | ····has·also·been·formalized·(thanks·to·Function+measure),·see |
Max diff block lines reached; 51520/61977 bytes (83.13%) of diff not shown. |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab1 | 49 | <a·id="lab152"></a><h1·class="section">Finite·set·library</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·Set·interfaces,·inspired·by·the·one·of·Ocaml.·When·compared·with | 51 | ·Set·interfaces,·inspired·by·the·one·of·Ocaml.·When·compared·with |
52 | ····Ocaml,·the·main·differences·are: | 52 | ····Ocaml,·the·main·differences·are: |
53 | <ul·class="doclist"> | 53 | <ul·class="doclist"> |
54 | <li>·the·lack·of·<span·class="inlinecode"><span·class="id"·title="var">iter</span></span>·function,·useless·since·Coq·is·purely·functional | 54 | <li>·the·lack·of·<span·class="inlinecode"><span·class="id"·title="var">iter</span></span>·function,·useless·since·Coq·is·purely·functional |
Offset 314, 15 lines modified | Offset 314, 15 lines modified | ||
314 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.MSets.MSetInterface.html#HasWOps"><span·class="id"·title="module">HasWOps</span></a>.<br/> | 314 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.MSets.MSetInterface.html#HasWOps"><span·class="id"·title="module">HasWOps</span></a>.<br/> |
315 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.MSets.MSetInterface.html#WOps"><span·class="id"·title="module">WOps</span></a>.<br/> | 315 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.MSets.MSetInterface.html#WOps"><span·class="id"·title="module">WOps</span></a>.<br/> |
316 | <br/> | 316 | <br/> |
317 | </div> | 317 | </div> |
318 | <div·class="doc"> | 318 | <div·class="doc"> |
319 | <a·id="lab1 | 319 | <a·id="lab153"></a><h2·class="section">Functorial·signature·for·weak·sets</h2> |
320 | <div·class="paragraph">·</div> | 320 | <div·class="paragraph">·</div> |
321 | ····Weak·sets·are·sets·without·ordering·on·base·elements,·only | 321 | ····Weak·sets·are·sets·without·ordering·on·base·elements,·only |
322 | ····a·decidable·equality.· | 322 | ····a·decidable·equality.· |
323 | </div> | 323 | </div> |
Offset 428, 15 lines modified | Offset 428, 15 lines modified | ||
428 | <br/> | 428 | <br/> |
429 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.MSets.MSetInterface.html#WSetsOn"><span·class="id"·title="module">WSetsOn</span></a>.<br/> | 429 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.MSets.MSetInterface.html#WSetsOn"><span·class="id"·title="module">WSetsOn</span></a>.<br/> |
430 | <br/> | 430 | <br/> |
431 | </div> | 431 | </div> |
432 | <div·class="doc"> | 432 | <div·class="doc"> |
433 | <a·id="lab1 | 433 | <a·id="lab154"></a><h2·class="section">Static·signature·for·weak·sets</h2> |
434 | <div·class="paragraph">·</div> | 434 | <div·class="paragraph">·</div> |
435 | ····Similar·to·the·functorial·signature·<span·class="inlinecode"><span·class="id"·title="var">WSetsOn</span></span>,·except·that·the | 435 | ····Similar·to·the·functorial·signature·<span·class="inlinecode"><span·class="id"·title="var">WSetsOn</span></span>,·except·that·the |
436 | ····module·<span·class="inlinecode"><span·class="id"·title="var">E</span></span>·of·base·elements·is·incorporated·in·the·signature.· | 436 | ····module·<span·class="inlinecode"><span·class="id"·title="var">E</span></span>·of·base·elements·is·incorporated·in·the·signature.· |
437 | </div> | 437 | </div> |
Offset 448, 15 lines modified | Offset 448, 15 lines modified | ||
448 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.MSets.MSetInterface.html#WSetsOn"><span·class="id"·title="module">WSetsOn</span></a>·<a·class="idref"·href="Coq.MSets.MSetInterface.html#WSets.E"><span·class="id"·title="module">E</span></a>.<br/> | 448 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.MSets.MSetInterface.html#WSetsOn"><span·class="id"·title="module">WSetsOn</span></a>·<a·class="idref"·href="Coq.MSets.MSetInterface.html#WSets.E"><span·class="id"·title="module">E</span></a>.<br/> |
449 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.MSets.MSetInterface.html#WSets"><span·class="id"·title="module">WSets</span></a>.<br/> | 449 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.MSets.MSetInterface.html#WSets"><span·class="id"·title="module">WSets</span></a>.<br/> |
450 | <br/> | 450 | <br/> |
451 | </div> | 451 | </div> |
452 | <div·class="doc"> | 452 | <div·class="doc"> |
453 | <a·id="lab1 | 453 | <a·id="lab155"></a><h2·class="section">Functorial·signature·for·sets·on·ordered·elements</h2> |
454 | <div·class="paragraph">·</div> | 454 | <div·class="paragraph">·</div> |
455 | ····Based·on·<span·class="inlinecode"><span·class="id"·title="var">WSetsOn</span></span>,·plus·ordering·on·sets·and·<span·class="inlinecode"><span·class="id"·title="var">min_elt</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">max_elt</span></span> | 455 | ····Based·on·<span·class="inlinecode"><span·class="id"·title="var">WSetsOn</span></span>,·plus·ordering·on·sets·and·<span·class="inlinecode"><span·class="id"·title="var">min_elt</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">max_elt</span></span> |
456 | ····and·some·stronger·specifications·for·other·functions.· | 456 | ····and·some·stronger·specifications·for·other·functions.· |
457 | </div> | 457 | </div> |
Offset 560, 15 lines modified | Offset 560, 15 lines modified | ||
560 | <br/> | 560 | <br/> |
561 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.MSets.MSetInterface.html#SetsOn"><span·class="id"·title="module">SetsOn</span></a>.<br/> | 561 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.MSets.MSetInterface.html#SetsOn"><span·class="id"·title="module">SetsOn</span></a>.<br/> |
562 | <br/> | 562 | <br/> |
563 | </div> | 563 | </div> |
564 | <div·class="doc"> | 564 | <div·class="doc"> |
565 | <a·id="lab1 | 565 | <a·id="lab156"></a><h2·class="section">Static·signature·for·sets·on·ordered·elements</h2> |
566 | <div·class="paragraph">·</div> | 566 | <div·class="paragraph">·</div> |
567 | ····Similar·to·the·functorial·signature·<span·class="inlinecode"><span·class="id"·title="var">SetsOn</span></span>,·except·that·the | 567 | ····Similar·to·the·functorial·signature·<span·class="inlinecode"><span·class="id"·title="var">SetsOn</span></span>,·except·that·the |
568 | ····module·<span·class="inlinecode"><span·class="id"·title="var">E</span></span>·of·base·elements·is·incorporated·in·the·signature.· | 568 | ····module·<span·class="inlinecode"><span·class="id"·title="var">E</span></span>·of·base·elements·is·incorporated·in·the·signature.· |
569 | </div> | 569 | </div> |
Offset 583, 15 lines modified | Offset 583, 15 lines modified | ||
583 | <br/> | 583 | <br/> |
584 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="S"·class="idref"·href="#S"><span·class="id"·title="module">S</span></a>·:=·<a·class="idref"·href="Coq.MSets.MSetInterface.html#Sets"><span·class="id"·title="module">Sets</span></a>.<br/> | 584 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="S"·class="idref"·href="#S"><span·class="id"·title="module">S</span></a>·:=·<a·class="idref"·href="Coq.MSets.MSetInterface.html#Sets"><span·class="id"·title="module">Sets</span></a>.<br/> |
585 | <br/> | 585 | <br/> |
586 | </div> | 586 | </div> |
587 | <div·class="doc"> | 587 | <div·class="doc"> |
588 | <a·id="lab1 | 588 | <a·id="lab157"></a><h2·class="section">Some·subtyping·tests</h2> |
589 | <pre> | 589 | <pre> |
590 | WSetsOn·--->·WSets | 590 | WSetsOn·--->·WSets |
591 | ·|···········| | 591 | ·|···········| |
592 | ·|···········| | 592 | ·|···········| |
593 | ·V···········V | 593 | ·V···········V |
594 | SetsOn··--->·Sets | 594 | SetsOn··--->·Sets |
Offset 600, 15 lines modified | Offset 600, 15 lines modified | ||
600 | Module·Sfun_WSfun·(E:OrderedType)(M·:·SetsOn·E)·<:·WSetsOn·E·:=·M. | 600 | Module·Sfun_WSfun·(E:OrderedType)(M·:·SetsOn·E)·<:·WSetsOn·E·:=·M. |
601 | Module·S_Sfun·(M·:·Sets)·<:·SetsOn·M.E·:=·M. | 601 | Module·S_Sfun·(M·:·Sets)·<:·SetsOn·M.E·:=·M. |
602 | Module·WS_WSfun·(M·:·WSets)·<:·WSetsOn·M.E·:=·M. | 602 | Module·WS_WSfun·(M·:·WSets)·<:·WSetsOn·M.E·:=·M. |
603 | </pre> | 603 | </pre> |
604 | <div·class="paragraph">·</div> | 604 | <div·class="paragraph">·</div> |
605 | <a·id="lab1 | 605 | <a·id="lab158"></a><h2·class="section">Signatures·for·set·representations·with·ill-formed·values.</h2> |
606 | <div·class="paragraph">·</div> | 606 | <div·class="paragraph">·</div> |
607 | ···Motivation: | 607 | ···Motivation: |
608 | <div·class="paragraph">·</div> | 608 | <div·class="paragraph">·</div> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab92"></a><h1·class="section">Finite·sets·library</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·This·file·proposes·an·implementation·of·the·non-dependent | 51 | ·This·file·proposes·an·implementation·of·the·non-dependent |
52 | ····interface·<span·class="inlinecode"><span·class="id"·title="var">MSetInterface.S</span></span>·using·strictly·ordered·list.· | 52 | ····interface·<span·class="inlinecode"><span·class="id"·title="var">MSetInterface.S</span></span>·using·strictly·ordered·list.· |
53 | </div> | 53 | </div> |
54 | <div·class="code"> | 54 | <div·class="code"> |
Offset 62, 15 lines modified | Offset 62, 15 lines modified | ||
62 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.MSets.MSetInterface.html#"><span·class="id"·title="library">MSetInterface</span></a>·<a·class="idref"·href="Coq.Structures.OrdersFacts.html#"><span·class="id"·title="library">OrdersFacts</span></a>·<a·class="idref"·href="Coq.Structures.OrdersLists.html#"><span·class="id"·title="library">OrdersLists</span></a>.<br/> | 62 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.MSets.MSetInterface.html#"><span·class="id"·title="library">MSetInterface</span></a>·<a·class="idref"·href="Coq.Structures.OrdersFacts.html#"><span·class="id"·title="library">OrdersFacts</span></a>·<a·class="idref"·href="Coq.Structures.OrdersLists.html#"><span·class="id"·title="library">OrdersLists</span></a>.<br/> |
63 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> | 63 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> |
64 | <br/> | 64 | <br/> |
65 | </div> | 65 | </div> |
66 | <div·class="doc"> | 66 | <div·class="doc"> |
67 | <a·id="lab | 67 | <a·id="lab93"></a><h1·class="section">Functions·over·lists</h1> |
68 | <div·class="paragraph">·</div> | 68 | <div·class="paragraph">·</div> |
69 | ···First,·we·provide·sets·as·lists·which·are·not·necessarily·sorted. | 69 | ···First,·we·provide·sets·as·lists·which·are·not·necessarily·sorted. |
70 | ···The·specs·are·proved·under·the·additional·condition·of·being·sorted. | 70 | ···The·specs·are·proved·under·the·additional·condition·of·being·sorted. |
71 | ···And·the·functions·returning·sets·are·proved·to·preserve·this·invariant.· | 71 | ···And·the·functions·returning·sets·are·proved·to·preserve·this·invariant.· |
Offset 90, 15 lines modified | Offset 90, 15 lines modified | ||
90 | <br/> | 90 | <br/> |
91 | <span·class="id"·title="keyword">Definition</span>·<a·id="Ops.is_empty"·class="idref"·href="#Ops.is_empty"><span·class="id"·title="definition">is_empty</span></a>·(<a·id="l:1"·class="idref"·href="#l:1"><span·class="id"·title="binder">l</span></a>·:·<a·class="idref"·href="Coq.MSets.MSetList.html#Ops.t"><span·class="id"·title="definition">t</span></a>)·:=·<span·class="id"·title="keyword">if</span>·<a·class="idref"·href="Coq.MSets.MSetList.html#l:1"><span·class="id"·title="variable">l</span></a>·<span·class="id"·title="keyword">then</span>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<span·class="id"·title="keyword">else</span>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>.<br/> | 91 | <span·class="id"·title="keyword">Definition</span>·<a·id="Ops.is_empty"·class="idref"·href="#Ops.is_empty"><span·class="id"·title="definition">is_empty</span></a>·(<a·id="l:1"·class="idref"·href="#l:1"><span·class="id"·title="binder">l</span></a>·:·<a·class="idref"·href="Coq.MSets.MSetList.html#Ops.t"><span·class="id"·title="definition">t</span></a>)·:=·<span·class="id"·title="keyword">if</span>·<a·class="idref"·href="Coq.MSets.MSetList.html#l:1"><span·class="id"·title="variable">l</span></a>·<span·class="id"·title="keyword">then</span>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<span·class="id"·title="keyword">else</span>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>.<br/> |
92 | <br/> | 92 | <br/> |
93 | </div> | 93 | </div> |
94 | <div·class="doc"> | 94 | <div·class="doc"> |
95 | <a·id="lab | 95 | <a·id="lab94"></a><h2·class="section">The·set·operations.</h2> |
96 | </div> | 96 | </div> |
97 | <div·class="code"> | 97 | <div·class="code"> |
98 | <br/> | 98 | <br/> |
99 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Ops.mem"·class="idref"·href="#Ops.mem"><span·class="id"·title="definition">mem</span></a>·<a·id="x:2"·class="idref"·href="#x:2"><span·class="id"·title="binder">x</span></a>·<a·id="s:3"·class="idref"·href="#s:3"><span·class="id"·title="binder">s</span></a>·:=<br/> | 99 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Ops.mem"·class="idref"·href="#Ops.mem"><span·class="id"·title="definition">mem</span></a>·<a·id="x:2"·class="idref"·href="#x:2"><span·class="id"·title="binder">x</span></a>·<a·id="s:3"·class="idref"·href="#s:3"><span·class="id"·title="binder">s</span></a>·:=<br/> |
100 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.MSets.MSetList.html#s:3"><span·class="id"·title="variable">s</span></a>·<span·class="id"·title="keyword">with</span><br/> | 100 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.MSets.MSetList.html#s:3"><span·class="id"·title="variable">s</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 298, 15 lines modified | Offset 298, 15 lines modified | ||
298 | <br/> | 298 | <br/> |
299 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.MSets.MSetList.html#Ops"><span·class="id"·title="module">Ops</span></a>·<a·class="idref"·href="Coq.MSets.MSetList.html#X"><span·class="id"·title="module">X</span></a>.<br/> | 299 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.MSets.MSetList.html#Ops"><span·class="id"·title="module">Ops</span></a>·<a·class="idref"·href="Coq.MSets.MSetList.html#X"><span·class="id"·title="module">X</span></a>.<br/> |
300 | <br/> | 300 | <br/> |
301 | </div> | 301 | </div> |
302 | <div·class="doc"> | 302 | <div·class="doc"> |
303 | <a·id="lab | 303 | <a·id="lab95"></a><h2·class="section">Proofs·of·set·operation·specifications.</h2> |
304 | </div> | 304 | </div> |
305 | <div·class="code"> | 305 | <div·class="code"> |
306 | <br/> | 306 | <br/> |
307 | <span·class="id"·title="keyword">Section</span>·<a·id="MakeRaw.ForNotations"·class="idref"·href="#MakeRaw.ForNotations"><span·class="id"·title="section">ForNotations</span></a>.<br/> | 307 | <span·class="id"·title="keyword">Section</span>·<a·id="MakeRaw.ForNotations"·class="idref"·href="#MakeRaw.ForNotations"><span·class="id"·title="section">ForNotations</span></a>.<br/> |
Offset 639, 15 lines modified | Offset 639, 15 lines modified | ||
639 | <br/> | 639 | <br/> |
640 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.MSets.MSetList.html#MakeRaw"><span·class="id"·title="module">MakeRaw</span></a>.<br/> | 640 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.MSets.MSetList.html#MakeRaw"><span·class="id"·title="module">MakeRaw</span></a>.<br/> |
641 | <br/> | 641 | <br/> |
642 | </div> | 642 | </div> |
643 | <div·class="doc"> | 643 | <div·class="doc"> |
644 | <a·id="lab | 644 | <a·id="lab96"></a><h1·class="section">Encapsulation</h1> |
645 | <div·class="paragraph">·</div> | 645 | <div·class="paragraph">·</div> |
646 | ···Now,·in·order·to·really·provide·a·functor·implementing·<span·class="inlinecode"><span·class="id"·title="var">S</span></span>,·we | 646 | ···Now,·in·order·to·really·provide·a·functor·implementing·<span·class="inlinecode"><span·class="id"·title="var">S</span></span>,·we |
647 | ···need·to·encapsulate·everything·into·a·type·of·strictly·ordered·lists.· | 647 | ···need·to·encapsulate·everything·into·a·type·of·strictly·ordered·lists.· |
648 | </div> | 648 | </div> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab35"></a><h1·class="section">Finite·sets·library</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·This·functor·derives·additional·properties·from·<span·class="inlinecode"><span·class="id"·title="var">MSetInterface.S</span></span>. | 51 | ·This·functor·derives·additional·properties·from·<span·class="inlinecode"><span·class="id"·title="var">MSetInterface.S</span></span>. |
52 | ····Contrary·to·the·functor·in·<span·class="inlinecode"><span·class="id"·title="var">MSetEqProperties</span></span>·it·uses | 52 | ····Contrary·to·the·functor·in·<span·class="inlinecode"><span·class="id"·title="var">MSetEqProperties</span></span>·it·uses |
53 | ····predicates·over·sets·instead·of·sets·operations,·i.e. | 53 | ····predicates·over·sets·instead·of·sets·operations,·i.e. |
54 | ····<span·class="inlinecode"><span·class="id"·title="var">In</span></span>·<span·class="inlinecode"><span·class="id"·title="var">x</span></span>·<span·class="inlinecode"><span·class="id"·title="var">s</span></span>·instead·of·<span·class="inlinecode"><span·class="id"·title="var">mem</span></span>·<span·class="inlinecode"><span·class="id"·title="var">x</span></span>·<span·class="inlinecode"><span·class="id"·title="var">s</span>=<span·class="id"·title="var">true</span></span>, | 54 | ····<span·class="inlinecode"><span·class="id"·title="var">In</span></span>·<span·class="inlinecode"><span·class="id"·title="var">x</span></span>·<span·class="inlinecode"><span·class="id"·title="var">s</span></span>·instead·of·<span·class="inlinecode"><span·class="id"·title="var">mem</span></span>·<span·class="inlinecode"><span·class="id"·title="var">x</span></span>·<span·class="inlinecode"><span·class="id"·title="var">s</span>=<span·class="id"·title="var">true</span></span>, |
Offset 338, 30 lines modified | Offset 338, 30 lines modified | ||
338 | <span·class="id"·title="var">remove_diff_singleton</span>·<span·class="id"·title="var">diff_inter_empty</span>·<span·class="id"·title="var">diff_inter_all</span>·<span·class="id"·title="var">Add_add</span>·<span·class="id"·title="var">Add_remove</span><br/> | 338 | <span·class="id"·title="var">remove_diff_singleton</span>·<span·class="id"·title="var">diff_inter_empty</span>·<span·class="id"·title="var">diff_inter_all</span>·<span·class="id"·title="var">Add_add</span>·<span·class="id"·title="var">Add_remove</span><br/> |
339 | <span·class="id"·title="var">Equal_remove</span>·<span·class="id"·title="var">add_add</span>·:·<span·class="id"·title="tactic">set</span>.<br/> | 339 | <span·class="id"·title="var">Equal_remove</span>·<span·class="id"·title="var">add_add</span>·:·<span·class="id"·title="tactic">set</span>.<br/> |
340 | <br/> | 340 | <br/> |
341 | </div> | 341 | </div> |
342 | <div·class="doc"> | 342 | <div·class="doc"> |
343 | <a·id="lab | 343 | <a·id="lab36"></a><h1·class="section">Properties·of·elements</h1> |
344 | </div> | 344 | </div> |
345 | <div·class="code"> | 345 | <div·class="code"> |
346 | <br/> | 346 | <br/> |
347 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WPropertiesOn.elements_Empty"·class="idref"·href="#WPropertiesOn.elements_Empty"><span·class="id"·title="lemma">elements_Empty</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="s:26"·class="idref"·href="#s:26"><span·class="id"·title="binder">s</span></a>,·<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.Empty"><span·class="id"·title="definition">Empty</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#s:26"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.elements"><span·class="id"·title="axiom">elements</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#s:26"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#nil"><span·class="id"·title="constructor">nil</span></a>.<br/> | 347 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WPropertiesOn.elements_Empty"·class="idref"·href="#WPropertiesOn.elements_Empty"><span·class="id"·title="lemma">elements_Empty</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="s:26"·class="idref"·href="#s:26"><span·class="id"·title="binder">s</span></a>,·<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.Empty"><span·class="id"·title="definition">Empty</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#s:26"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.elements"><span·class="id"·title="axiom">elements</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#s:26"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#nil"><span·class="id"·title="constructor">nil</span></a>.<br/> |
348 | <br/> | 348 | <br/> |
349 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WPropertiesOn.elements_empty"·class="idref"·href="#WPropertiesOn.elements_empty"><span·class="id"·title="lemma">elements_empty</span></a>·:·<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.elements"><span·class="id"·title="axiom">elements</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.empty"><span·class="id"·title="axiom">empty</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#nil"><span·class="id"·title="constructor">nil</span></a>.<br/> | 349 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WPropertiesOn.elements_empty"·class="idref"·href="#WPropertiesOn.elements_empty"><span·class="id"·title="lemma">elements_empty</span></a>·:·<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.elements"><span·class="id"·title="axiom">elements</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.empty"><span·class="id"·title="axiom">empty</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#nil"><span·class="id"·title="constructor">nil</span></a>.<br/> |
350 | <br/> | 350 | <br/> |
351 | </div> | 351 | </div> |
352 | <div·class="doc"> | 352 | <div·class="doc"> |
353 | <a·id="lab | 353 | <a·id="lab37"></a><h1·class="section">Conversions·between·lists·and·sets</h1> |
354 | </div> | 354 | </div> |
355 | <div·class="code"> | 355 | <div·class="code"> |
356 | <br/> | 356 | <br/> |
357 | <span·class="id"·title="keyword">Definition</span>·<a·id="WPropertiesOn.of_list"·class="idref"·href="#WPropertiesOn.of_list"><span·class="id"·title="definition">of_list</span></a>·(<a·id="l:29"·class="idref"·href="#l:29"><span·class="id"·title="binder">l</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.elt"><span·class="id"·title="definition">elt</span></a>)·:=·<a·class="idref"·href="Coq.Lists.List.html#fold_right"><span·class="id"·title="definition">List.fold_right</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.add"><span·class="id"·title="axiom">add</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.empty"><span·class="id"·title="axiom">empty</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#l:29"><span·class="id"·title="variable">l</span></a>.<br/> | 357 | <span·class="id"·title="keyword">Definition</span>·<a·id="WPropertiesOn.of_list"·class="idref"·href="#WPropertiesOn.of_list"><span·class="id"·title="definition">of_list</span></a>·(<a·id="l:29"·class="idref"·href="#l:29"><span·class="id"·title="binder">l</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.elt"><span·class="id"·title="definition">elt</span></a>)·:=·<a·class="idref"·href="Coq.Lists.List.html#fold_right"><span·class="id"·title="definition">List.fold_right</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.add"><span·class="id"·title="axiom">add</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.empty"><span·class="id"·title="axiom">empty</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#l:29"><span·class="id"·title="variable">l</span></a>.<br/> |
Offset 377, 15 lines modified | Offset 377, 15 lines modified | ||
377 | <br/> | 377 | <br/> |
378 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WPropertiesOn.of_list_3"·class="idref"·href="#WPropertiesOn.of_list_3"><span·class="id"·title="lemma">of_list_3</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="s:33"·class="idref"·href="#s:33"><span·class="id"·title="binder">s</span></a>,·<a·class="idref"·href="Coq.MSets.MSetProperties.html#WPropertiesOn.of_list"><span·class="id"·title="definition">of_list</span></a>·(<a·class="idref"·href="Coq.MSets.MSetProperties.html#WPropertiesOn.to_list"><span·class="id"·title="definition">to_list</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#s:33"><span·class="id"·title="variable">s</span></a>)·<a·class="idref"·href="Coq.MSets.MSetInterface.html#e76abbc315753bea06f53821068cb210"><span·class="id"·title="notation">[=]</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#s:33"><span·class="id"·title="variable">s</span></a>.<br/> | 378 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WPropertiesOn.of_list_3"·class="idref"·href="#WPropertiesOn.of_list_3"><span·class="id"·title="lemma">of_list_3</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="s:33"·class="idref"·href="#s:33"><span·class="id"·title="binder">s</span></a>,·<a·class="idref"·href="Coq.MSets.MSetProperties.html#WPropertiesOn.of_list"><span·class="id"·title="definition">of_list</span></a>·(<a·class="idref"·href="Coq.MSets.MSetProperties.html#WPropertiesOn.to_list"><span·class="id"·title="definition">to_list</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#s:33"><span·class="id"·title="variable">s</span></a>)·<a·class="idref"·href="Coq.MSets.MSetInterface.html#e76abbc315753bea06f53821068cb210"><span·class="id"·title="notation">[=]</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#s:33"><span·class="id"·title="variable">s</span></a>.<br/> |
379 | <br/> | 379 | <br/> |
380 | </div> | 380 | </div> |
381 | <div·class="doc"> | 381 | <div·class="doc"> |
382 | <a·id="lab | 382 | <a·id="lab38"></a><h1·class="section">Fold</h1> |
383 | </div> | 383 | </div> |
384 | <div·class="code"> | 384 | <div·class="code"> |
385 | <br/> | 385 | <br/> |
386 | <span·class="id"·title="keyword">Section</span>·<a·id="WPropertiesOn.Fold"·class="idref"·href="#WPropertiesOn.Fold"><span·class="id"·title="section">Fold</span></a>.<br/> | 386 | <span·class="id"·title="keyword">Section</span>·<a·id="WPropertiesOn.Fold"·class="idref"·href="#WPropertiesOn.Fold"><span·class="id"·title="section">Fold</span></a>.<br/> |
Offset 405, 15 lines modified | Offset 405, 15 lines modified | ||
405 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WPropertiesOn.fold_spec_right"·class="idref"·href="#WPropertiesOn.fold_spec_right"><span·class="id"·title="lemma">fold_spec_right</span></a>·(<a·id="s:34"·class="idref"·href="#s:34"><span·class="id"·title="binder">s</span></a>:<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.t"><span·class="id"·title="axiom">t</span></a>)(<a·id="A:35"·class="idref"·href="#A:35"><span·class="id"·title="binder">A</span></a>:<span·class="id"·title="keyword">Type</span>)(<a·id="i:36"·class="idref"·href="#i:36"><span·class="id"·title="binder">i</span></a>:<a·class="idref"·href="Coq.MSets.MSetProperties.html#A:35"><span·class="id"·title="variable">A</span></a>)(<a·id="f:37"·class="idref"·href="#f:37"><span·class="id"·title="binder">f</span></a>·:·<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.elt"><span·class="id"·title="definition">elt</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#A:35"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#A:35"><span·class="id"·title="variable">A</span></a>)·:<br/> | 405 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WPropertiesOn.fold_spec_right"·class="idref"·href="#WPropertiesOn.fold_spec_right"><span·class="id"·title="lemma">fold_spec_right</span></a>·(<a·id="s:34"·class="idref"·href="#s:34"><span·class="id"·title="binder">s</span></a>:<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.t"><span·class="id"·title="axiom">t</span></a>)(<a·id="A:35"·class="idref"·href="#A:35"><span·class="id"·title="binder">A</span></a>:<span·class="id"·title="keyword">Type</span>)(<a·id="i:36"·class="idref"·href="#i:36"><span·class="id"·title="binder">i</span></a>:<a·class="idref"·href="Coq.MSets.MSetProperties.html#A:35"><span·class="id"·title="variable">A</span></a>)(<a·id="f:37"·class="idref"·href="#f:37"><span·class="id"·title="binder">f</span></a>·:·<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.elt"><span·class="id"·title="definition">elt</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#A:35"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#A:35"><span·class="id"·title="variable">A</span></a>)·:<br/> |
406 | <a·class="idref"·href="Coq.MSets.MSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#f:37"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#s:34"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#i:36"><span·class="id"·title="variable">i</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Lists.List.html#fold_right"><span·class="id"·title="definition">List.fold_right</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#f:37"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#i:36"><span·class="id"·title="variable">i</span></a>·(<a·class="idref"·href="Coq.Lists.List.html#rev"><span·class="id"·title="definition">rev</span></a>·(<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.elements"><span·class="id"·title="axiom">elements</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#s:34"><span·class="id"·title="variable">s</span></a>)).<br/> | 406 | <a·class="idref"·href="Coq.MSets.MSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#f:37"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#s:34"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#i:36"><span·class="id"·title="variable">i</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Lists.List.html#fold_right"><span·class="id"·title="definition">List.fold_right</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#f:37"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#i:36"><span·class="id"·title="variable">i</span></a>·(<a·class="idref"·href="Coq.Lists.List.html#rev"><span·class="id"·title="definition">rev</span></a>·(<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.elements"><span·class="id"·title="axiom">elements</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#s:34"><span·class="id"·title="variable">s</span></a>)).<br/> |
407 | <br/> | 407 | <br/> |
408 | </div> | 408 | </div> |
409 | <div·class="doc"> | 409 | <div·class="doc"> |
410 | <a·id="lab | 410 | <a·id="lab39"></a><h2·class="section">Induction·principles·for·fold·(contributed·by·S.·Lescuyer)</h2> |
411 | <div·class="paragraph">·</div> | 411 | <div·class="paragraph">·</div> |
412 | ·In·the·following·lemma,·the·step·hypothesis·is·deliberately·restricted | 412 | ·In·the·following·lemma,·the·step·hypothesis·is·deliberately·restricted |
413 | ······to·the·precise·set·s·we·are·considering.· | 413 | ······to·the·precise·set·s·we·are·considering.· |
414 | </div> | 414 | </div> |
415 | <div·class="code"> | 415 | <div·class="code"> |
Offset 511, 15 lines modified | Offset 511, 15 lines modified | ||
511 | <br/> | 511 | <br/> |
512 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WPropertiesOn.fold_identity"·class="idref"·href="#WPropertiesOn.fold_identity"><span·class="id"·title="lemma">fold_identity</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="s:120"·class="idref"·href="#s:120"><span·class="id"·title="binder">s</span></a>,·<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.add"><span·class="id"·title="axiom">add</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#s:120"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.empty"><span·class="id"·title="axiom">empty</span></a>·<a·class="idref"·href="Coq.MSets.MSetInterface.html#e76abbc315753bea06f53821068cb210"><span·class="id"·title="notation">[=]</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#s:120"><span·class="id"·title="variable">s</span></a>.<br/> | 512 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WPropertiesOn.fold_identity"·class="idref"·href="#WPropertiesOn.fold_identity"><span·class="id"·title="lemma">fold_identity</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="s:120"·class="idref"·href="#s:120"><span·class="id"·title="binder">s</span></a>,·<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.add"><span·class="id"·title="axiom">add</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#s:120"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.empty"><span·class="id"·title="axiom">empty</span></a>·<a·class="idref"·href="Coq.MSets.MSetInterface.html#e76abbc315753bea06f53821068cb210"><span·class="id"·title="notation">[=]</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#s:120"><span·class="id"·title="variable">s</span></a>.<br/> |
513 | <br/> | 513 | <br/> |
514 | </div> | 514 | </div> |
515 | <div·class="doc"> | 515 | <div·class="doc"> |
516 | <a·id="lab | 516 | <a·id="lab40"></a><h2·class="section">Alternative·(weaker)·specifications·for·<span·class="inlinecode"><span·class="id"·title="tactic">fold</span></span></h2> |
517 | <div·class="paragraph">·</div> | 517 | <div·class="paragraph">·</div> |
518 | ·When·<span·class="inlinecode"><span·class="id"·title="var">MSets</span></span>·was·first·designed,·the·order·in·which·Ocaml's·<span·class="inlinecode"><span·class="id"·title="var">Set.fold</span></span> | 518 | ·When·<span·class="inlinecode"><span·class="id"·title="var">MSets</span></span>·was·first·designed,·the·order·in·which·Ocaml's·<span·class="inlinecode"><span·class="id"·title="var">Set.fold</span></span> |
519 | ······takes·the·set·elements·was·unspecified.·This·specification·reflects | 519 | ······takes·the·set·elements·was·unspecified.·This·specification·reflects |
520 | ······this·fact: | 520 | ······this·fact: |
521 | ·· | 521 | ·· |
Offset 583, 15 lines modified | Offset 583, 15 lines modified | ||
583 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WPropertiesOn.fold_commutes"·class="idref"·href="#WPropertiesOn.fold_commutes"><span·class="id"·title="lemma">fold_commutes</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="i:161"·class="idref"·href="#i:161"><span·class="id"·title="binder">i</span></a>·<a·id="s:162"·class="idref"·href="#s:162"><span·class="id"·title="binder">s</span></a>·<a·id="x:163"·class="idref"·href="#x:163"><span·class="id"·title="binder">x</span></a>,<br/> | 583 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WPropertiesOn.fold_commutes"·class="idref"·href="#WPropertiesOn.fold_commutes"><span·class="id"·title="lemma">fold_commutes</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="i:161"·class="idref"·href="#i:161"><span·class="id"·title="binder">i</span></a>·<a·id="s:162"·class="idref"·href="#s:162"><span·class="id"·title="binder">s</span></a>·<a·id="x:163"·class="idref"·href="#x:163"><span·class="id"·title="binder">x</span></a>,<br/> |
584 | <a·class="idref"·href="Coq.MSets.MSetProperties.html#WPropertiesOn.Fold.Fold_More.eqA"><span·class="id"·title="variable">eqA</span></a>·(<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#WPropertiesOn.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#s:162"><span·class="id"·title="variable">s</span></a>·(<a·class="idref"·href="Coq.MSets.MSetProperties.html#WPropertiesOn.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#x:163"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#i:161"><span·class="id"·title="variable">i</span></a>))·(<a·class="idref"·href="Coq.MSets.MSetProperties.html#WPropertiesOn.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#x:163"><span·class="id"·title="variable">x</span></a>·(<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#WPropertiesOn.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#s:162"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#i:161"><span·class="id"·title="variable">i</span></a>)).<br/> | 584 | <a·class="idref"·href="Coq.MSets.MSetProperties.html#WPropertiesOn.Fold.Fold_More.eqA"><span·class="id"·title="variable">eqA</span></a>·(<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#WPropertiesOn.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#s:162"><span·class="id"·title="variable">s</span></a>·(<a·class="idref"·href="Coq.MSets.MSetProperties.html#WPropertiesOn.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#x:163"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#i:161"><span·class="id"·title="variable">i</span></a>))·(<a·class="idref"·href="Coq.MSets.MSetProperties.html#WPropertiesOn.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#x:163"><span·class="id"·title="variable">x</span></a>·(<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#WPropertiesOn.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#s:162"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#i:161"><span·class="id"·title="variable">i</span></a>)).<br/> |
585 | <br/> | 585 | <br/> |
586 | </div> | 586 | </div> |
587 | <div·class="doc"> | 587 | <div·class="doc"> |
588 | <a·id="lab | 588 | <a·id="lab41"></a><h2·class="section">Fold·is·a·morphism</h2> |
589 | </div> | 589 | </div> |
590 | <div·class="code"> | 590 | <div·class="code"> |
591 | <br/> | 591 | <br/> |
592 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WPropertiesOn.fold_init"·class="idref"·href="#WPropertiesOn.fold_init"><span·class="id"·title="lemma">fold_init</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="i:168"·class="idref"·href="#i:168"><span·class="id"·title="binder">i</span></a>·<a·id="i':169"·class="idref"·href="#i':169"><span·class="id"·title="binder">i'</span></a>·<a·id="s:170"·class="idref"·href="#s:170"><span·class="id"·title="binder">s</span></a>,·<a·class="idref"·href="Coq.MSets.MSetProperties.html#WPropertiesOn.Fold.Fold_More.eqA"><span·class="id"·title="variable">eqA</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#i:168"><span·class="id"·title="variable">i</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#i':169"><span·class="id"·title="variable">i'</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 592 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WPropertiesOn.fold_init"·class="idref"·href="#WPropertiesOn.fold_init"><span·class="id"·title="lemma">fold_init</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="i:168"·class="idref"·href="#i:168"><span·class="id"·title="binder">i</span></a>·<a·id="i':169"·class="idref"·href="#i':169"><span·class="id"·title="binder">i'</span></a>·<a·id="s:170"·class="idref"·href="#s:170"><span·class="id"·title="binder">s</span></a>,·<a·class="idref"·href="Coq.MSets.MSetProperties.html#WPropertiesOn.Fold.Fold_More.eqA"><span·class="id"·title="variable">eqA</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#i:168"><span·class="id"·title="variable">i</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#i':169"><span·class="id"·title="variable">i'</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
593 | <a·class="idref"·href="Coq.MSets.MSetProperties.html#WPropertiesOn.Fold.Fold_More.eqA"><span·class="id"·title="variable">eqA</span></a>·(<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#WPropertiesOn.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#s:170"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#i:168"><span·class="id"·title="variable">i</span></a>)·(<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#WPropertiesOn.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#s:170"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#i':169"><span·class="id"·title="variable">i'</span></a>).<br/> | 593 | <a·class="idref"·href="Coq.MSets.MSetProperties.html#WPropertiesOn.Fold.Fold_More.eqA"><span·class="id"·title="variable">eqA</span></a>·(<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#WPropertiesOn.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#s:170"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#i:168"><span·class="id"·title="variable">i</span></a>)·(<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#WPropertiesOn.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#s:170"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#i':169"><span·class="id"·title="variable">i'</span></a>).<br/> |
Offset 600, 15 lines modified | Offset 600, 15 lines modified | ||
600 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WPropertiesOn.fold_equal"·class="idref"·href="#WPropertiesOn.fold_equal"><span·class="id"·title="lemma">fold_equal</span></a>·:<br/> | 600 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WPropertiesOn.fold_equal"·class="idref"·href="#WPropertiesOn.fold_equal"><span·class="id"·title="lemma">fold_equal</span></a>·:<br/> |
601 | <span·class="id"·title="keyword">forall</span>·<a·id="i:171"·class="idref"·href="#i:171"><span·class="id"·title="binder">i</span></a>·<a·id="s:172"·class="idref"·href="#s:172"><span·class="id"·title="binder">s</span></a>·<a·id="s':173"·class="idref"·href="#s':173"><span·class="id"·title="binder">s'</span></a>,·<a·class="idref"·href="Coq.MSets.MSetProperties.html#s:172"><span·class="id"·title="variable">s</span></a><a·class="idref"·href="Coq.MSets.MSetInterface.html#e76abbc315753bea06f53821068cb210"><span·class="id"·title="notation">[=]</span></a><a·class="idref"·href="Coq.MSets.MSetProperties.html#s':173"><span·class="id"·title="variable">s'</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#WPropertiesOn.Fold.Fold_More.eqA"><span·class="id"·title="variable">eqA</span></a>·(<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#WPropertiesOn.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#s:172"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#i:171"><span·class="id"·title="variable">i</span></a>)·(<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#WPropertiesOn.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#s':173"><span·class="id"·title="variable">s'</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#i:171"><span·class="id"·title="variable">i</span></a>).<br/> | 601 | <span·class="id"·title="keyword">forall</span>·<a·id="i:171"·class="idref"·href="#i:171"><span·class="id"·title="binder">i</span></a>·<a·id="s:172"·class="idref"·href="#s:172"><span·class="id"·title="binder">s</span></a>·<a·id="s':173"·class="idref"·href="#s':173"><span·class="id"·title="binder">s'</span></a>,·<a·class="idref"·href="Coq.MSets.MSetProperties.html#s:172"><span·class="id"·title="variable">s</span></a><a·class="idref"·href="Coq.MSets.MSetInterface.html#e76abbc315753bea06f53821068cb210"><span·class="id"·title="notation">[=]</span></a><a·class="idref"·href="Coq.MSets.MSetProperties.html#s':173"><span·class="id"·title="variable">s'</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#WPropertiesOn.Fold.Fold_More.eqA"><span·class="id"·title="variable">eqA</span></a>·(<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#WPropertiesOn.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#s:172"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#i:171"><span·class="id"·title="variable">i</span></a>)·(<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#WPropertiesOn.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#s':173"><span·class="id"·title="variable">s'</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#i:171"><span·class="id"·title="variable">i</span></a>).<br/> |
602 | <br/> | 602 | <br/> |
603 | </div> | 603 | </div> |
604 | <div·class="doc"> | 604 | <div·class="doc"> |
605 | <a·id="lab | 605 | <a·id="lab42"></a><h2·class="section">Fold·and·other·set·operators</h2> |
606 | </div> | 606 | </div> |
607 | <div·class="code"> | 607 | <div·class="code"> |
608 | <br/> | 608 | <br/> |
609 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WPropertiesOn.fold_empty"·class="idref"·href="#WPropertiesOn.fold_empty"><span·class="id"·title="lemma">fold_empty</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="i:174"·class="idref"·href="#i:174"><span·class="id"·title="binder">i</span></a>,·<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#WPropertiesOn.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.empty"><span·class="id"·title="axiom">empty</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#i:174"><span·class="id"·title="variable">i</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#i:174"><span·class="id"·title="variable">i</span></a>.<br/> | 609 | <span·class="id"·title="keyword">Lemma</span>·<a·id="WPropertiesOn.fold_empty"·class="idref"·href="#WPropertiesOn.fold_empty"><span·class="id"·title="lemma">fold_empty</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="i:174"·class="idref"·href="#i:174"><span·class="id"·title="binder">i</span></a>,·<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.fold"><span·class="id"·title="axiom">fold</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#WPropertiesOn.Fold.Fold_More.f"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#M.empty"><span·class="id"·title="axiom">empty</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#i:174"><span·class="id"·title="variable">i</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#i:174"><span·class="id"·title="variable">i</span></a>.<br/> |
Offset 652, 31 lines modified | Offset 652, 31 lines modified | ||
Max diff block lines reached; 11473/30057 bytes (38.17%) of diff not shown. |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab1 | 49 | <a·id="lab108"></a><h1·class="section">MSetRBT·:·Implementation·of·MSetInterface·via·Red-Black·trees</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·Initial·author:·Andrew·W.·Appel,·2011. | 51 | ·Initial·author:·Andrew·W.·Appel,·2011. |
52 | ····Extra·modifications·by:·Pierre·Letouzey | 52 | ····Extra·modifications·by:·Pierre·Letouzey |
53 | <div·class="paragraph">·</div> | 53 | <div·class="paragraph">·</div> |
Offset 149, 27 lines modified | Offset 149, 27 lines modified | ||
149 | <span·class="id"·title="keyword">Definition</span>·<a·id="Color.t"·class="idref"·href="#Color.t"><span·class="id"·title="definition">t</span></a>·:=·<a·class="idref"·href="Coq.MSets.MSetRBT.html#color"><span·class="id"·title="inductive">color</span></a>.<br/> | 149 | <span·class="id"·title="keyword">Definition</span>·<a·id="Color.t"·class="idref"·href="#Color.t"><span·class="id"·title="definition">t</span></a>·:=·<a·class="idref"·href="Coq.MSets.MSetRBT.html#color"><span·class="id"·title="inductive">color</span></a>.<br/> |
150 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#Color"><span·class="id"·title="module">Color</span></a>.<br/> | 150 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#Color"><span·class="id"·title="module">Color</span></a>.<br/> |
151 | <br/> | 151 | <br/> |
152 | </div> | 152 | </div> |
153 | <div·class="doc"> | 153 | <div·class="doc"> |
154 | <a·id="lab1 | 154 | <a·id="lab109"></a><h1·class="section">Ops·:·the·pure·functions</h1> |
155 | </div> | 155 | </div> |
156 | <div·class="code"> | 156 | <div·class="code"> |
157 | <br/> | 157 | <br/> |
158 | <span·class="id"·title="keyword">Module</span>·<a·id="Ops"·class="idref"·href="#Ops"><span·class="id"·title="module">Ops</span></a>·(<span·class="id"·title="var">X</span>:<a·class="idref"·href="Coq.Structures.Orders.html#OrderedType"><span·class="id"·title="module">Orders.OrderedType</span></a>)·<:·<a·class="idref"·href="Coq.MSets.MSetInterface.html#Ops"><span·class="id"·title="module">MSetInterface.Ops</span></a>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#X"><span·class="id"·title="module">X</span></a>.<br/> | 158 | <span·class="id"·title="keyword">Module</span>·<a·id="Ops"·class="idref"·href="#Ops"><span·class="id"·title="module">Ops</span></a>·(<span·class="id"·title="var">X</span>:<a·class="idref"·href="Coq.Structures.Orders.html#OrderedType"><span·class="id"·title="module">Orders.OrderedType</span></a>)·<:·<a·class="idref"·href="Coq.MSets.MSetInterface.html#Ops"><span·class="id"·title="module">MSetInterface.Ops</span></a>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#X"><span·class="id"·title="module">X</span></a>.<br/> |
159 | <br/> | 159 | <br/> |
160 | </div> | 160 | </div> |
161 | <div·class="doc"> | 161 | <div·class="doc"> |
162 | <a·id="lab11 | 162 | <a·id="lab110"></a><h2·class="section">Generic·trees·instantiated·with·color</h2> |
163 | <div·class="paragraph">·</div> | 163 | <div·class="paragraph">·</div> |
164 | ·We·reuse·a·generic·definition·of·trees·where·the·information | 164 | ·We·reuse·a·generic·definition·of·trees·where·the·information |
165 | ····parameter·is·a·color.·Functions·like·mem·or·fold·are·also | 165 | ····parameter·is·a·color.·Functions·like·mem·or·fold·are·also |
166 | ····provided·by·this·generic·functor.· | 166 | ····provided·by·this·generic·functor.· |
167 | </div> | 167 | </div> |
Offset 183, 27 lines modified | Offset 183, 27 lines modified | ||
183 | <span·class="id"·title="keyword">Local·Notation</span>·<a·id="Ops.Rd"·class="idref"·href="#Ops.Rd"><span·class="id"·title="abbreviation">Rd</span></a>·:=·(<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.Node"><span·class="id"·title="constructor">Node</span></a>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#Red"><span·class="id"·title="constructor">Red</span></a>).<br/> | 183 | <span·class="id"·title="keyword">Local·Notation</span>·<a·id="Ops.Rd"·class="idref"·href="#Ops.Rd"><span·class="id"·title="abbreviation">Rd</span></a>·:=·(<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.Node"><span·class="id"·title="constructor">Node</span></a>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#Red"><span·class="id"·title="constructor">Red</span></a>).<br/> |
184 | <span·class="id"·title="keyword">Local·Notation</span>·<a·id="Ops.Bk"·class="idref"·href="#Ops.Bk"><span·class="id"·title="abbreviation">Bk</span></a>·:=·(<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.Node"><span·class="id"·title="constructor">Node</span></a>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#Black"><span·class="id"·title="constructor">Black</span></a>).<br/> | 184 | <span·class="id"·title="keyword">Local·Notation</span>·<a·id="Ops.Bk"·class="idref"·href="#Ops.Bk"><span·class="id"·title="abbreviation">Bk</span></a>·:=·(<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.Node"><span·class="id"·title="constructor">Node</span></a>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#Black"><span·class="id"·title="constructor">Black</span></a>).<br/> |
185 | <br/> | 185 | <br/> |
186 | </div> | 186 | </div> |
187 | <div·class="doc"> | 187 | <div·class="doc"> |
188 | <a·id="lab11 | 188 | <a·id="lab111"></a><h2·class="section">Basic·tree</h2> |
189 | </div> | 189 | </div> |
190 | <div·class="code"> | 190 | <div·class="code"> |
191 | <br/> | 191 | <br/> |
192 | <span·class="id"·title="keyword">Definition</span>·<a·id="Ops.singleton"·class="idref"·href="#Ops.singleton"><span·class="id"·title="definition">singleton</span></a>·(<a·id="k:13"·class="idref"·href="#k:13"><span·class="id"·title="binder">k</span></a>:·<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.elt"><span·class="id"·title="definition">elt</span></a>)·:·<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.tree"><span·class="id"·title="inductive">tree</span></a>·:=·<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.Bk"><span·class="id"·title="abbreviation">Bk</span></a>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.Leaf"><span·class="id"·title="constructor">Leaf</span></a>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#k:13"><span·class="id"·title="variable">k</span></a>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.Leaf"><span·class="id"·title="constructor">Leaf</span></a>.<br/> | 192 | <span·class="id"·title="keyword">Definition</span>·<a·id="Ops.singleton"·class="idref"·href="#Ops.singleton"><span·class="id"·title="definition">singleton</span></a>·(<a·id="k:13"·class="idref"·href="#k:13"><span·class="id"·title="binder">k</span></a>:·<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.elt"><span·class="id"·title="definition">elt</span></a>)·:·<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.tree"><span·class="id"·title="inductive">tree</span></a>·:=·<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.Bk"><span·class="id"·title="abbreviation">Bk</span></a>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.Leaf"><span·class="id"·title="constructor">Leaf</span></a>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#k:13"><span·class="id"·title="variable">k</span></a>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.Leaf"><span·class="id"·title="constructor">Leaf</span></a>.<br/> |
193 | <br/> | 193 | <br/> |
194 | </div> | 194 | </div> |
195 | <div·class="doc"> | 195 | <div·class="doc"> |
196 | <a·id="lab11 | 196 | <a·id="lab112"></a><h2·class="section">Changing·root·color</h2> |
197 | </div> | 197 | </div> |
198 | <div·class="code"> | 198 | <div·class="code"> |
199 | <br/> | 199 | <br/> |
200 | <span·class="id"·title="keyword">Definition</span>·<a·id="Ops.makeBlack"·class="idref"·href="#Ops.makeBlack"><span·class="id"·title="definition">makeBlack</span></a>·<a·id="t:14"·class="idref"·href="#t:14"><span·class="id"·title="binder">t</span></a>·:=<br/> | 200 | <span·class="id"·title="keyword">Definition</span>·<a·id="Ops.makeBlack"·class="idref"·href="#Ops.makeBlack"><span·class="id"·title="definition">makeBlack</span></a>·<a·id="t:14"·class="idref"·href="#t:14"><span·class="id"·title="binder">t</span></a>·:=<br/> |
201 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#t:14"><span·class="id"·title="variable">t</span></a>·<span·class="id"·title="keyword">with</span><br/> | 201 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#t:14"><span·class="id"·title="variable">t</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 218, 15 lines modified | Offset 218, 15 lines modified | ||
218 | |·<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.Node"><span·class="id"·title="constructor">Node</span></a>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">a</span>·<span·class="id"·title="var">x</span>·<span·class="id"·title="var">b</span>·=>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.Rd"><span·class="id"·title="abbreviation">Rd</span></a>·<span·class="id"·title="var">a</span>·<span·class="id"·title="var">x</span>·<span·class="id"·title="var">b</span><br/> | 218 | |·<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.Node"><span·class="id"·title="constructor">Node</span></a>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">a</span>·<span·class="id"·title="var">x</span>·<span·class="id"·title="var">b</span>·=>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.Rd"><span·class="id"·title="abbreviation">Rd</span></a>·<span·class="id"·title="var">a</span>·<span·class="id"·title="var">x</span>·<span·class="id"·title="var">b</span><br/> |
219 | <span·class="id"·title="keyword">end</span>.<br/> | 219 | <span·class="id"·title="keyword">end</span>.<br/> |
220 | <br/> | 220 | <br/> |
221 | </div> | 221 | </div> |
222 | <div·class="doc"> | 222 | <div·class="doc"> |
223 | <a·id="lab11 | 223 | <a·id="lab113"></a><h2·class="section">Balancing</h2> |
224 | <div·class="paragraph">·</div> | 224 | <div·class="paragraph">·</div> |
225 | ·We·adapt·when·one·side·is·not·a·true·red-black·tree. | 225 | ·We·adapt·when·one·side·is·not·a·true·red-black·tree. |
226 | ····Both·sides·have·the·same·black·depth.· | 226 | ····Both·sides·have·the·same·black·depth.· |
227 | </div> | 227 | </div> |
228 | <div·class="code"> | 228 | <div·class="code"> |
Offset 299, 15 lines modified | Offset 299, 15 lines modified | ||
299 | <span·class="id"·title="keyword">end</span><br/> | 299 | <span·class="id"·title="keyword">end</span><br/> |
300 | <span·class="id"·title="keyword">end</span>.<br/> | 300 | <span·class="id"·title="keyword">end</span>.<br/> |
301 | <br/> | 301 | <br/> |
302 | </div> | 302 | </div> |
303 | <div·class="doc"> | 303 | <div·class="doc"> |
304 | <a·id="lab11 | 304 | <a·id="lab114"></a><h2·class="section">Insertion</h2> |
305 | </div> | 305 | </div> |
306 | <div·class="code"> | 306 | <div·class="code"> |
307 | <br/> | 307 | <br/> |
308 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Ops.ins"·class="idref"·href="#Ops.ins"><span·class="id"·title="definition">ins</span></a>·<a·id="x:40"·class="idref"·href="#x:40"><span·class="id"·title="binder">x</span></a>·<a·id="s:41"·class="idref"·href="#s:41"><span·class="id"·title="binder">s</span></a>·:=<br/> | 308 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Ops.ins"·class="idref"·href="#Ops.ins"><span·class="id"·title="definition">ins</span></a>·<a·id="x:40"·class="idref"·href="#x:40"><span·class="id"·title="binder">x</span></a>·<a·id="s:41"·class="idref"·href="#s:41"><span·class="id"·title="binder">s</span></a>·:=<br/> |
309 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#s:41"><span·class="id"·title="variable">s</span></a>·<span·class="id"·title="keyword">with</span><br/> | 309 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#s:41"><span·class="id"·title="variable">s</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 331, 15 lines modified | Offset 331, 15 lines modified | ||
331 | <br/> | 331 | <br/> |
332 | <span·class="id"·title="keyword">Definition</span>·<a·id="Ops.add"·class="idref"·href="#Ops.add"><span·class="id"·title="definition">add</span></a>·<a·id="x:46"·class="idref"·href="#x:46"><span·class="id"·title="binder">x</span></a>·<a·id="s:47"·class="idref"·href="#s:47"><span·class="id"·title="binder">s</span></a>·:=·<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.makeBlack"><span·class="id"·title="definition">makeBlack</span></a>·(<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.ins"><span·class="id"·title="definition">ins</span></a>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#x:46"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#s:47"><span·class="id"·title="variable">s</span></a>).<br/> | 332 | <span·class="id"·title="keyword">Definition</span>·<a·id="Ops.add"·class="idref"·href="#Ops.add"><span·class="id"·title="definition">add</span></a>·<a·id="x:46"·class="idref"·href="#x:46"><span·class="id"·title="binder">x</span></a>·<a·id="s:47"·class="idref"·href="#s:47"><span·class="id"·title="binder">s</span></a>·:=·<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.makeBlack"><span·class="id"·title="definition">makeBlack</span></a>·(<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.ins"><span·class="id"·title="definition">ins</span></a>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#x:46"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#s:47"><span·class="id"·title="variable">s</span></a>).<br/> |
333 | <br/> | 333 | <br/> |
334 | </div> | 334 | </div> |
335 | <div·class="doc"> | 335 | <div·class="doc"> |
336 | <a·id="lab115 | 336 | <a·id="lab115"></a><h2·class="section">Deletion</h2> |
337 | </div> | 337 | </div> |
338 | <div·class="code"> | 338 | <div·class="code"> |
339 | <br/> | 339 | <br/> |
340 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Ops.append"·class="idref"·href="#Ops.append"><span·class="id"·title="definition">append</span></a>·(<a·id="l:48"·class="idref"·href="#l:48"><span·class="id"·title="binder">l</span></a>:<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.tree"><span·class="id"·title="inductive">tree</span></a>)·:·<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.tree"><span·class="id"·title="inductive">tree</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.tree"><span·class="id"·title="inductive">tree</span></a>·:=<br/> | 340 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Ops.append"·class="idref"·href="#Ops.append"><span·class="id"·title="definition">append</span></a>·(<a·id="l:48"·class="idref"·href="#l:48"><span·class="id"·title="binder">l</span></a>:<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.tree"><span·class="id"·title="inductive">tree</span></a>)·:·<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.tree"><span·class="id"·title="inductive">tree</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.tree"><span·class="id"·title="inductive">tree</span></a>·:=<br/> |
341 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#l:48"><span·class="id"·title="variable">l</span></a>·<span·class="id"·title="keyword">with</span><br/> | 341 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#l:48"><span·class="id"·title="variable">l</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 391, 15 lines modified | Offset 391, 15 lines modified | ||
391 | <br/> | 391 | <br/> |
392 | <span·class="id"·title="keyword">Definition</span>·<a·id="Ops.remove"·class="idref"·href="#Ops.remove"><span·class="id"·title="definition">remove</span></a>·<a·id="x:67"·class="idref"·href="#x:67"><span·class="id"·title="binder">x</span></a>·<a·id="t:68"·class="idref"·href="#t:68"><span·class="id"·title="binder">t</span></a>·:=·<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.makeBlack"><span·class="id"·title="definition">makeBlack</span></a>·(<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.del"><span·class="id"·title="definition">del</span></a>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#x:67"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#t:68"><span·class="id"·title="variable">t</span></a>).<br/> | 392 | <span·class="id"·title="keyword">Definition</span>·<a·id="Ops.remove"·class="idref"·href="#Ops.remove"><span·class="id"·title="definition">remove</span></a>·<a·id="x:67"·class="idref"·href="#x:67"><span·class="id"·title="binder">x</span></a>·<a·id="t:68"·class="idref"·href="#t:68"><span·class="id"·title="binder">t</span></a>·:=·<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.makeBlack"><span·class="id"·title="definition">makeBlack</span></a>·(<a·class="idref"·href="Coq.MSets.MSetRBT.html#Ops.del"><span·class="id"·title="definition">del</span></a>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#x:67"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.MSets.MSetRBT.html#t:68"><span·class="id"·title="variable">t</span></a>).<br/> |
393 | <br/> | 393 | <br/> |
394 | </div> | 394 | </div> |
395 | <div·class="doc"> | 395 | <div·class="doc"> |
Max diff block lines reached; 78372/87546 bytes (89.52%) of diff not shown. |
Offset 45, 28 lines modified | Offset 45, 28 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab1 | 49 | <a·id="lab150"></a><h1·class="section">Finite·sets·library·:·conversion·to·old·<span·class="inlinecode"><span·class="id"·title="var">Finite_sets</span></span></h1> |
50 | </div> | 50 | </div> |
51 | <div·class="code"> | 51 | <div·class="code"> |
52 | <br/> | 52 | <br/> |
53 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Sets.Ensembles.html#"><span·class="id"·title="library">Ensembles</span></a>·<a·class="idref"·href="Coq.Sets.Finite_sets.html#"><span·class="id"·title="library">Finite_sets</span></a>.<br/> | 53 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Sets.Ensembles.html#"><span·class="id"·title="library">Ensembles</span></a>·<a·class="idref"·href="Coq.Sets.Finite_sets.html#"><span·class="id"·title="library">Finite_sets</span></a>.<br/> |
54 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.MSets.MSetInterface.html#"><span·class="id"·title="library">MSetInterface</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#"><span·class="id"·title="library">MSetProperties</span></a>·<a·class="idref"·href="Coq.Structures.OrdersEx.html#"><span·class="id"·title="library">OrdersEx</span></a>.<br/> | 54 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.MSets.MSetInterface.html#"><span·class="id"·title="library">MSetInterface</span></a>·<a·class="idref"·href="Coq.MSets.MSetProperties.html#"><span·class="id"·title="library">MSetProperties</span></a>·<a·class="idref"·href="Coq.Structures.OrdersEx.html#"><span·class="id"·title="library">OrdersEx</span></a>.<br/> |
55 | <br/> | 55 | <br/> |
56 | </div> | 56 | </div> |
57 | <div·class="doc"> | 57 | <div·class="doc"> |
58 | <a·id="lab1 | 58 | <a·id="lab151"></a><h1·class="section">Going·from·<span·class="inlinecode"><span·class="id"·title="var">MSets</span></span>·with·usual·Leibniz·equality</h1> |
59 | ····to·the·good·old·<span·class="inlinecode"><span·class="id"·title="var">Ensembles</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">Finite_sets</span></span>·theory.· | 59 | ····to·the·good·old·<span·class="inlinecode"><span·class="id"·title="var">Ensembles</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">Finite_sets</span></span>·theory.· |
60 | </div> | 60 | </div> |
61 | <div·class="code"> | 61 | <div·class="code"> |
62 | <br/> | 62 | <br/> |
63 | <span·class="id"·title="keyword">Module</span>·<a·id="WS_to_Finite_set"·class="idref"·href="#WS_to_Finite_set"><span·class="id"·title="module">WS_to_Finite_set</span></a>·(<span·class="id"·title="var">U</span>:<a·class="idref"·href="Coq.Structures.Equalities.html#UsualDecidableType"><span·class="id"·title="module">UsualDecidableType</span></a>)(<span·class="id"·title="var">M</span>:·<a·class="idref"·href="Coq.MSets.MSetInterface.html#WSetsOn"><span·class="id"·title="module">WSetsOn</span></a>·<a·class="idref"·href="Coq.MSets.MSetToFiniteSet.html#U"><span·class="id"·title="module">U</span></a>).<br/> | 63 | <span·class="id"·title="keyword">Module</span>·<a·id="WS_to_Finite_set"·class="idref"·href="#WS_to_Finite_set"><span·class="id"·title="module">WS_to_Finite_set</span></a>·(<span·class="id"·title="var">U</span>:<a·class="idref"·href="Coq.Structures.Equalities.html#UsualDecidableType"><span·class="id"·title="module">UsualDecidableType</span></a>)(<span·class="id"·title="var">M</span>:·<a·class="idref"·href="Coq.MSets.MSetInterface.html#WSetsOn"><span·class="id"·title="module">WSetsOn</span></a>·<a·class="idref"·href="Coq.MSets.MSetToFiniteSet.html#U"><span·class="id"·title="module">U</span></a>).<br/> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab97"></a><h1·class="section">Finite·sets·library</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·This·file·proposes·an·implementation·of·the·non-dependent | 51 | ·This·file·proposes·an·implementation·of·the·non-dependent |
52 | ····interface·<span·class="inlinecode"><span·class="id"·title="var">MSetWeakInterface.S</span></span>·using·lists·without·redundancy.· | 52 | ····interface·<span·class="inlinecode"><span·class="id"·title="var">MSetWeakInterface.S</span></span>·using·lists·without·redundancy.· |
53 | </div> | 53 | </div> |
54 | <div·class="code"> | 54 | <div·class="code"> |
Offset 65, 25 lines modified | Offset 65, 25 lines modified | ||
65 | <br/> | 65 | <br/> |
66 | <span·class="id"·title="keyword">Local·Ltac</span>·<span·class="id"·title="var">Tauto.intuition_solver</span>·::=·<span·class="id"·title="tactic">auto</span>·<span·class="id"·title="keyword">with</span>·<span·class="id"·title="var">typeclass_instances</span>.<br/> | 66 | <span·class="id"·title="keyword">Local·Ltac</span>·<span·class="id"·title="var">Tauto.intuition_solver</span>·::=·<span·class="id"·title="tactic">auto</span>·<span·class="id"·title="keyword">with</span>·<span·class="id"·title="var">typeclass_instances</span>.<br/> |
67 | <br/> | 67 | <br/> |
68 | </div> | 68 | </div> |
69 | <div·class="doc"> | 69 | <div·class="doc"> |
70 | <a·id="lab | 70 | <a·id="lab98"></a><h1·class="section">Functions·over·lists</h1> |
71 | <div·class="paragraph">·</div> | 71 | <div·class="paragraph">·</div> |
72 | ···First,·we·provide·sets·as·lists·which·are·(morally)·without·redundancy. | 72 | ···First,·we·provide·sets·as·lists·which·are·(morally)·without·redundancy. |
73 | ···The·specs·are·proved·under·the·additional·condition·of·no·redundancy. | 73 | ···The·specs·are·proved·under·the·additional·condition·of·no·redundancy. |
74 | ···And·the·functions·returning·sets·are·proved·to·preserve·this·invariant.· | 74 | ···And·the·functions·returning·sets·are·proved·to·preserve·this·invariant.· |
75 | <div·class="paragraph">·</div> | 75 | <div·class="paragraph">·</div> |
76 | <a·id="lab | 76 | <a·id="lab99"></a><h2·class="section">The·set·operations.</h2> |
77 | </div> | 77 | </div> |
78 | <div·class="code"> | 78 | <div·class="code"> |
79 | <br/> | 79 | <br/> |
80 | <span·class="id"·title="keyword">Module</span>·<a·id="Ops"·class="idref"·href="#Ops"><span·class="id"·title="module">Ops</span></a>·(<span·class="id"·title="var">X</span>:·<a·class="idref"·href="Coq.Structures.Equalities.html#DecidableType"><span·class="id"·title="module">DecidableType</span></a>)·<:·<a·class="idref"·href="Coq.MSets.MSetInterface.html#WOps"><span·class="id"·title="module">WOps</span></a>·<a·class="idref"·href="Coq.MSets.MSetWeakList.html#X"><span·class="id"·title="module">X</span></a>.<br/> | 80 | <span·class="id"·title="keyword">Module</span>·<a·id="Ops"·class="idref"·href="#Ops"><span·class="id"·title="module">Ops</span></a>·(<span·class="id"·title="var">X</span>:·<a·class="idref"·href="Coq.Structures.Equalities.html#DecidableType"><span·class="id"·title="module">DecidableType</span></a>)·<:·<a·class="idref"·href="Coq.MSets.MSetInterface.html#WOps"><span·class="id"·title="module">WOps</span></a>·<a·class="idref"·href="Coq.MSets.MSetWeakList.html#X"><span·class="id"·title="module">X</span></a>.<br/> |
Offset 190, 15 lines modified | Offset 190, 15 lines modified | ||
190 | <br/> | 190 | <br/> |
191 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.MSets.MSetWeakList.html#Ops"><span·class="id"·title="module">Ops</span></a>.<br/> | 191 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.MSets.MSetWeakList.html#Ops"><span·class="id"·title="module">Ops</span></a>.<br/> |
192 | <br/> | 192 | <br/> |
193 | </div> | 193 | </div> |
194 | <div·class="doc"> | 194 | <div·class="doc"> |
195 | <a·id="lab1 | 195 | <a·id="lab100"></a><h2·class="section">Proofs·of·set·operation·specifications.</h2> |
196 | </div> | 196 | </div> |
197 | <div·class="code"> | 197 | <div·class="code"> |
198 | <br/> | 198 | <br/> |
199 | <span·class="id"·title="keyword">Module</span>·<a·id="MakeRaw"·class="idref"·href="#MakeRaw"><span·class="id"·title="module">MakeRaw</span></a>·(<span·class="id"·title="var">X</span>:<a·class="idref"·href="Coq.Structures.Equalities.html#DecidableType"><span·class="id"·title="module">DecidableType</span></a>)·<:·<a·class="idref"·href="Coq.MSets.MSetInterface.html#WRawSets"><span·class="id"·title="module">WRawSets</span></a>·<a·class="idref"·href="Coq.MSets.MSetWeakList.html#X"><span·class="id"·title="module">X</span></a>.<br/> | 199 | <span·class="id"·title="keyword">Module</span>·<a·id="MakeRaw"·class="idref"·href="#MakeRaw"><span·class="id"·title="module">MakeRaw</span></a>·(<span·class="id"·title="var">X</span>:<a·class="idref"·href="Coq.Structures.Equalities.html#DecidableType"><span·class="id"·title="module">DecidableType</span></a>)·<:·<a·class="idref"·href="Coq.MSets.MSetInterface.html#WRawSets"><span·class="id"·title="module">WRawSets</span></a>·<a·class="idref"·href="Coq.MSets.MSetWeakList.html#X"><span·class="id"·title="module">X</span></a>.<br/> |
200 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.MSets.MSetWeakList.html#Ops"><span·class="id"·title="module">Ops</span></a>·<a·class="idref"·href="Coq.MSets.MSetWeakList.html#X"><span·class="id"·title="module">X</span></a>.<br/> | 200 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.MSets.MSetWeakList.html#Ops"><span·class="id"·title="module">Ops</span></a>·<a·class="idref"·href="Coq.MSets.MSetWeakList.html#X"><span·class="id"·title="module">X</span></a>.<br/> |
Offset 422, 15 lines modified | Offset 422, 15 lines modified | ||
422 | <br/> | 422 | <br/> |
423 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.MSets.MSetWeakList.html#MakeRaw"><span·class="id"·title="module">MakeRaw</span></a>.<br/> | 423 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.MSets.MSetWeakList.html#MakeRaw"><span·class="id"·title="module">MakeRaw</span></a>.<br/> |
424 | <br/> | 424 | <br/> |
425 | </div> | 425 | </div> |
426 | <div·class="doc"> | 426 | <div·class="doc"> |
427 | <a·id="lab1 | 427 | <a·id="lab101"></a><h1·class="section">Encapsulation</h1> |
428 | <div·class="paragraph">·</div> | 428 | <div·class="paragraph">·</div> |
429 | ···Now,·in·order·to·really·provide·a·functor·implementing·<span·class="inlinecode"><span·class="id"·title="var">S</span></span>,·we | 429 | ···Now,·in·order·to·really·provide·a·functor·implementing·<span·class="inlinecode"><span·class="id"·title="var">S</span></span>,·we |
430 | ···need·to·encapsulate·everything·into·a·type·of·lists·without·redundancy.· | 430 | ···need·to·encapsulate·everything·into·a·type·of·lists·without·redundancy.· |
431 | </div> | 431 | </div> |
Offset 51, 15 lines modified | Offset 51, 15 lines modified | ||
51 | <a·class="idref"·href="Coq.Structures.Equalities.html#"><span·class="id"·title="library">Equalities</span></a>·<a·class="idref"·href="Coq.Structures.OrdersFacts.html#"><span·class="id"·title="library">OrdersFacts</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#"><span·class="id"·title="library">GenericMinMax</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#"><span·class="id"·title="library">Bool</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NAxioms.html#"><span·class="id"·title="library">NAxioms</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NMaxMin.html#"><span·class="id"·title="library">NMaxMin</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NProperties.html#"><span·class="id"·title="library">NProperties</span></a>.<br/> | 51 | <a·class="idref"·href="Coq.Structures.Equalities.html#"><span·class="id"·title="library">Equalities</span></a>·<a·class="idref"·href="Coq.Structures.OrdersFacts.html#"><span·class="id"·title="library">OrdersFacts</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#"><span·class="id"·title="library">GenericMinMax</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#"><span·class="id"·title="library">Bool</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NAxioms.html#"><span·class="id"·title="library">NAxioms</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NMaxMin.html#"><span·class="id"·title="library">NMaxMin</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NProperties.html#"><span·class="id"·title="library">NProperties</span></a>.<br/> |
52 | <span·class="id"·title="keyword">Require</span>·<a·class="idref"·href="Coq.NArith.BinNatDef.html#"><span·class="id"·title="library">BinNatDef</span></a>.<br/> | 52 | <span·class="id"·title="keyword">Require</span>·<a·class="idref"·href="Coq.NArith.BinNatDef.html#"><span·class="id"·title="library">BinNatDef</span></a>.<br/> |
53 | <br/> | 53 | <br/> |
54 | </div> | 54 | </div> |
55 | <div·class="doc"> | 55 | <div·class="doc"> |
56 | <a·id="lab | 56 | <a·id="lab698"></a><h1·class="section">Binary·natural·numbers,·operations·and·properties</h1> |
57 | <div·class="paragraph">·</div> | 57 | <div·class="paragraph">·</div> |
58 | ·The·type·<span·class="inlinecode"><span·class="id"·title="var">N</span></span>·and·its·constructors·<span·class="inlinecode"><span·class="id"·title="var">N0</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">Npos</span></span>·are·now | 58 | ·The·type·<span·class="inlinecode"><span·class="id"·title="var">N</span></span>·and·its·constructors·<span·class="inlinecode"><span·class="id"·title="var">N0</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">Npos</span></span>·are·now |
59 | ····defined·in·<span·class="inlinecode"><span·class="id"·title="var">BinNums.v</span></span>· | 59 | ····defined·in·<span·class="inlinecode"><span·class="id"·title="var">BinNums.v</span></span>· |
60 | <div·class="paragraph">·</div> | 60 | <div·class="paragraph">·</div> |
Offset 891, 15 lines modified | Offset 891, 15 lines modified | ||
891 | <br/> | 891 | <br/> |
892 | <span·class="id"·title="keyword">Lemma</span>·<a·id="N.pred_div2_up"·class="idref"·href="#N.pred_div2_up"><span·class="id"·title="lemma">pred_div2_up</span></a>·<a·id="p:270"·class="idref"·href="#p:270"><span·class="id"·title="binder">p</span></a>·:·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.pred_N"><span·class="id"·title="definition">Pos.pred_N</span></a>·(<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.div2_up"><span·class="id"·title="definition">Pos.div2_up</span></a>·<a·class="idref"·href="Coq.NArith.BinNat.html#p:270"><span·class="id"·title="variable">p</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.NArith.BinNat.html#N.div2"><span·class="id"·title="definition">div2</span></a>·(<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.pred_N"><span·class="id"·title="definition">Pos.pred_N</span></a>·<a·class="idref"·href="Coq.NArith.BinNat.html#p:270"><span·class="id"·title="variable">p</span></a>).<br/> | 892 | <span·class="id"·title="keyword">Lemma</span>·<a·id="N.pred_div2_up"·class="idref"·href="#N.pred_div2_up"><span·class="id"·title="lemma">pred_div2_up</span></a>·<a·id="p:270"·class="idref"·href="#p:270"><span·class="id"·title="binder">p</span></a>·:·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.pred_N"><span·class="id"·title="definition">Pos.pred_N</span></a>·(<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.div2_up"><span·class="id"·title="definition">Pos.div2_up</span></a>·<a·class="idref"·href="Coq.NArith.BinNat.html#p:270"><span·class="id"·title="variable">p</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.NArith.BinNat.html#N.div2"><span·class="id"·title="definition">div2</span></a>·(<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.pred_N"><span·class="id"·title="definition">Pos.pred_N</span></a>·<a·class="idref"·href="Coq.NArith.BinNat.html#p:270"><span·class="id"·title="variable">p</span></a>).<br/> |
893 | <br/> | 893 | <br/> |
894 | </div> | 894 | </div> |
895 | <div·class="doc"> | 895 | <div·class="doc"> |
896 | <a·id="lab | 896 | <a·id="lab699"></a><h2·class="section">Properties·of·<span·class="inlinecode"><span·class="id"·title="var">iter</span></span></h2> |
897 | </div> | 897 | </div> |
898 | <div·class="code"> | 898 | <div·class="code"> |
899 | <br/> | 899 | <br/> |
900 | <span·class="id"·title="keyword">Lemma</span>·<a·id="N.iter_swap_gen"·class="idref"·href="#N.iter_swap_gen"><span·class="id"·title="lemma">iter_swap_gen</span></a>·<a·id="A:271"·class="idref"·href="#A:271"><span·class="id"·title="binder">A</span></a>·<a·id="B:272"·class="idref"·href="#B:272"><span·class="id"·title="binder">B</span></a>·(<a·id="f:273"·class="idref"·href="#f:273"><span·class="id"·title="binder">f</span></a>:<a·class="idref"·href="Coq.NArith.BinNat.html#A:271"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.NArith.BinNat.html#B:272"><span·class="id"·title="variable">B</span></a>)·(<a·id="g:274"·class="idref"·href="#g:274"><span·class="id"·title="binder">g</span></a>:<a·class="idref"·href="Coq.NArith.BinNat.html#A:271"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.NArith.BinNat.html#A:271"><span·class="id"·title="variable">A</span></a>)·(<a·id="h:275"·class="idref"·href="#h:275"><span·class="id"·title="binder">h</span></a>:<a·class="idref"·href="Coq.NArith.BinNat.html#B:272"><span·class="id"·title="variable">B</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.NArith.BinNat.html#B:272"><span·class="id"·title="variable">B</span></a>)·:<br/> | 900 | <span·class="id"·title="keyword">Lemma</span>·<a·id="N.iter_swap_gen"·class="idref"·href="#N.iter_swap_gen"><span·class="id"·title="lemma">iter_swap_gen</span></a>·<a·id="A:271"·class="idref"·href="#A:271"><span·class="id"·title="binder">A</span></a>·<a·id="B:272"·class="idref"·href="#B:272"><span·class="id"·title="binder">B</span></a>·(<a·id="f:273"·class="idref"·href="#f:273"><span·class="id"·title="binder">f</span></a>:<a·class="idref"·href="Coq.NArith.BinNat.html#A:271"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.NArith.BinNat.html#B:272"><span·class="id"·title="variable">B</span></a>)·(<a·id="g:274"·class="idref"·href="#g:274"><span·class="id"·title="binder">g</span></a>:<a·class="idref"·href="Coq.NArith.BinNat.html#A:271"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.NArith.BinNat.html#A:271"><span·class="id"·title="variable">A</span></a>)·(<a·id="h:275"·class="idref"·href="#h:275"><span·class="id"·title="binder">h</span></a>:<a·class="idref"·href="Coq.NArith.BinNat.html#B:272"><span·class="id"·title="variable">B</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.NArith.BinNat.html#B:272"><span·class="id"·title="variable">B</span></a>)·:<br/> |
901 | <a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="a:276"·class="idref"·href="#a:276"><span·class="id"·title="binder">a</span></a>,·<a·class="idref"·href="Coq.NArith.BinNat.html#f:273"><span·class="id"·title="variable">f</span></a>·(<a·class="idref"·href="Coq.NArith.BinNat.html#g:274"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.NArith.BinNat.html#a:276"><span·class="id"·title="variable">a</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.NArith.BinNat.html#h:275"><span·class="id"·title="variable">h</span></a>·(<a·class="idref"·href="Coq.NArith.BinNat.html#f:273"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.NArith.BinNat.html#a:276"><span·class="id"·title="variable">a</span></a>)<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">forall</span>·<a·id="n:277"·class="idref"·href="#n:277"><span·class="id"·title="binder">n</span></a>·<a·id="a:278"·class="idref"·href="#a:278"><span·class="id"·title="binder">a</span></a>,<br/> | 901 | <a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="a:276"·class="idref"·href="#a:276"><span·class="id"·title="binder">a</span></a>,·<a·class="idref"·href="Coq.NArith.BinNat.html#f:273"><span·class="id"·title="variable">f</span></a>·(<a·class="idref"·href="Coq.NArith.BinNat.html#g:274"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.NArith.BinNat.html#a:276"><span·class="id"·title="variable">a</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.NArith.BinNat.html#h:275"><span·class="id"·title="variable">h</span></a>·(<a·class="idref"·href="Coq.NArith.BinNat.html#f:273"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.NArith.BinNat.html#a:276"><span·class="id"·title="variable">a</span></a>)<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">forall</span>·<a·id="n:277"·class="idref"·href="#n:277"><span·class="id"·title="binder">n</span></a>·<a·id="a:278"·class="idref"·href="#a:278"><span·class="id"·title="binder">a</span></a>,<br/> |
Offset 57, 56 lines modified | Offset 57, 56 lines modified | ||
57 | <span·class="id"·title="keyword">Local·Notation</span>·<a·id=":::'1'"·class="idref"·href="#:::'1'"><span·class="id"·title="notation">"</span></a>1"·:=·(<a·class="idref"·href="Coq.Numbers.BinNums.html#Npos"><span·class="id"·title="constructor">Npos</span></a>·1).<br/> | 57 | <span·class="id"·title="keyword">Local·Notation</span>·<a·id=":::'1'"·class="idref"·href="#:::'1'"><span·class="id"·title="notation">"</span></a>1"·:=·(<a·class="idref"·href="Coq.Numbers.BinNums.html#Npos"><span·class="id"·title="constructor">Npos</span></a>·1).<br/> |
58 | <span·class="id"·title="keyword">Local·Notation</span>·<a·id=":::'2'"·class="idref"·href="#:::'2'"><span·class="id"·title="notation">"</span></a>2"·:=·(<a·class="idref"·href="Coq.Numbers.BinNums.html#Npos"><span·class="id"·title="constructor">Npos</span></a>·2).<br/> | 58 | <span·class="id"·title="keyword">Local·Notation</span>·<a·id=":::'2'"·class="idref"·href="#:::'2'"><span·class="id"·title="notation">"</span></a>2"·:=·(<a·class="idref"·href="Coq.Numbers.BinNums.html#Npos"><span·class="id"·title="constructor">Npos</span></a>·2).<br/> |
59 | <br/> | 59 | <br/> |
60 | </div> | 60 | </div> |
61 | <div·class="doc"> | 61 | <div·class="doc"> |
62 | <a·id="lab | 62 | <a·id="lab702"></a><h1·class="section">Binary·natural·numbers,·definitions·of·operations</h1> |
63 | </div> | 63 | </div> |
64 | <div·class="code"> | 64 | <div·class="code"> |
65 | <br/> | 65 | <br/> |
66 | <span·class="id"·title="keyword">Module</span>·<a·id="N"·class="idref"·href="#N"><span·class="id"·title="module">N</span></a>.<br/> | 66 | <span·class="id"·title="keyword">Module</span>·<a·id="N"·class="idref"·href="#N"><span·class="id"·title="module">N</span></a>.<br/> |
67 | <br/> | 67 | <br/> |
68 | <span·class="id"·title="keyword">Definition</span>·<a·id="N.t"·class="idref"·href="#N.t"><span·class="id"·title="definition">t</span></a>·:=·<a·class="idref"·href="Coq.Numbers.BinNums.html#N"><span·class="id"·title="inductive">N</span></a>.<br/> | 68 | <span·class="id"·title="keyword">Definition</span>·<a·id="N.t"·class="idref"·href="#N.t"><span·class="id"·title="definition">t</span></a>·:=·<a·class="idref"·href="Coq.Numbers.BinNums.html#N"><span·class="id"·title="inductive">N</span></a>.<br/> |
69 | <br/> | 69 | <br/> |
70 | </div> | 70 | </div> |
71 | <div·class="doc"> | 71 | <div·class="doc"> |
72 | <a·id="lab | 72 | <a·id="lab703"></a><h2·class="section">Nicer·name·<span·class="inlinecode"><span·class="id"·title="var">N.pos</span></span>·for·constructor·<span·class="inlinecode"><span·class="id"·title="var">Npos</span></span></h2> |
73 | </div> | 73 | </div> |
74 | <div·class="code"> | 74 | <div·class="code"> |
75 | <br/> | 75 | <br/> |
76 | <span·class="id"·title="keyword">Notation</span>·<a·id="N.pos"·class="idref"·href="#N.pos"><span·class="id"·title="abbreviation">pos</span></a>·:=·<a·class="idref"·href="Coq.Numbers.BinNums.html#Npos"><span·class="id"·title="constructor">Npos</span></a>.<br/> | 76 | <span·class="id"·title="keyword">Notation</span>·<a·id="N.pos"·class="idref"·href="#N.pos"><span·class="id"·title="abbreviation">pos</span></a>·:=·<a·class="idref"·href="Coq.Numbers.BinNums.html#Npos"><span·class="id"·title="constructor">Npos</span></a>.<br/> |
77 | <br/> | 77 | <br/> |
78 | </div> | 78 | </div> |
79 | <div·class="doc"> | 79 | <div·class="doc"> |
80 | <a·id="lab | 80 | <a·id="lab704"></a><h2·class="section">Constants</h2> |
81 | </div> | 81 | </div> |
82 | <div·class="code"> | 82 | <div·class="code"> |
83 | <br/> | 83 | <br/> |
84 | <span·class="id"·title="keyword">Definition</span>·<a·id="N.zero"·class="idref"·href="#N.zero"><span·class="id"·title="definition">zero</span></a>·:=·0.<br/> | 84 | <span·class="id"·title="keyword">Definition</span>·<a·id="N.zero"·class="idref"·href="#N.zero"><span·class="id"·title="definition">zero</span></a>·:=·0.<br/> |
85 | <span·class="id"·title="keyword">Definition</span>·<a·id="N.one"·class="idref"·href="#N.one"><span·class="id"·title="definition">one</span></a>·:=·1.<br/> | 85 | <span·class="id"·title="keyword">Definition</span>·<a·id="N.one"·class="idref"·href="#N.one"><span·class="id"·title="definition">one</span></a>·:=·1.<br/> |
86 | <span·class="id"·title="keyword">Definition</span>·<a·id="N.two"·class="idref"·href="#N.two"><span·class="id"·title="definition">two</span></a>·:=·2.<br/> | 86 | <span·class="id"·title="keyword">Definition</span>·<a·id="N.two"·class="idref"·href="#N.two"><span·class="id"·title="definition">two</span></a>·:=·2.<br/> |
87 | <br/> | 87 | <br/> |
88 | </div> | 88 | </div> |
89 | <div·class="doc"> | 89 | <div·class="doc"> |
90 | <a·id="lab | 90 | <a·id="lab705"></a><h2·class="section">Operation·<span·class="inlinecode"><span·class="id"·title="var">x</span></span>·<span·class="inlinecode">-></span>·<span·class="inlinecode">2*<span·class="id"·title="var">x</span>+1</span></h2> |
91 | </div> | 91 | </div> |
92 | <div·class="code"> | 92 | <div·class="code"> |
93 | <br/> | 93 | <br/> |
94 | <span·class="id"·title="keyword">Definition</span>·<a·id="N.succ_double"·class="idref"·href="#N.succ_double"><span·class="id"·title="definition">succ_double</span></a>·<a·id="x:1"·class="idref"·href="#x:1"><span·class="id"·title="binder">x</span></a>·:=<br/> | 94 | <span·class="id"·title="keyword">Definition</span>·<a·id="N.succ_double"·class="idref"·href="#N.succ_double"><span·class="id"·title="definition">succ_double</span></a>·<a·id="x:1"·class="idref"·href="#x:1"><span·class="id"·title="binder">x</span></a>·:=<br/> |
95 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.NArith.BinNatDef.html#x:1"><span·class="id"·title="variable">x</span></a>·<span·class="id"·title="keyword">with</span><br/> | 95 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.NArith.BinNatDef.html#x:1"><span·class="id"·title="variable">x</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 114, 15 lines modified | Offset 114, 15 lines modified | ||
114 | |·<a·class="idref"·href="Coq.NArith.BinNatDef.html#N.pos"><span·class="id"·title="abbreviation">pos</span></a>·<span·class="id"·title="var">p</span>·=>·<a·class="idref"·href="Coq.NArith.BinNatDef.html#N.pos"><span·class="id"·title="abbreviation">pos</span></a>·<span·class="id"·title="var">p</span><a·class="idref"·href="Coq.PArith.BinPosDef.html#119ad21c8e0c4947cd973f1f72e5feea"><span·class="id"·title="notation">~1</span></a><br/> | 114 | |·<a·class="idref"·href="Coq.NArith.BinNatDef.html#N.pos"><span·class="id"·title="abbreviation">pos</span></a>·<span·class="id"·title="var">p</span>·=>·<a·class="idref"·href="Coq.NArith.BinNatDef.html#N.pos"><span·class="id"·title="abbreviation">pos</span></a>·<span·class="id"·title="var">p</span><a·class="idref"·href="Coq.PArith.BinPosDef.html#119ad21c8e0c4947cd973f1f72e5feea"><span·class="id"·title="notation">~1</span></a><br/> |
115 | <span·class="id"·title="keyword">end</span>.<br/> | 115 | <span·class="id"·title="keyword">end</span>.<br/> |
116 | <br/> | 116 | <br/> |
117 | </div> | 117 | </div> |
118 | <div·class="doc"> | 118 | <div·class="doc"> |
119 | <a·id="lab | 119 | <a·id="lab706"></a><h2·class="section">Operation·<span·class="inlinecode"><span·class="id"·title="var">x</span></span>·<span·class="inlinecode">-></span>·<span·class="inlinecode">2*<span·class="id"·title="var">x</span></span></h2> |
120 | </div> | 120 | </div> |
121 | <div·class="code"> | 121 | <div·class="code"> |
122 | <br/> | 122 | <br/> |
123 | <span·class="id"·title="keyword">Definition</span>·<a·id="N.double"·class="idref"·href="#N.double"><span·class="id"·title="definition">double</span></a>·<a·id="n:3"·class="idref"·href="#n:3"><span·class="id"·title="binder">n</span></a>·:=<br/> | 123 | <span·class="id"·title="keyword">Definition</span>·<a·id="N.double"·class="idref"·href="#N.double"><span·class="id"·title="definition">double</span></a>·<a·id="n:3"·class="idref"·href="#n:3"><span·class="id"·title="binder">n</span></a>·:=<br/> |
124 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.NArith.BinNatDef.html#n:3"><span·class="id"·title="variable">n</span></a>·<span·class="id"·title="keyword">with</span><br/> | 124 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.NArith.BinNatDef.html#n:3"><span·class="id"·title="variable">n</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 130, 15 lines modified | Offset 130, 15 lines modified | ||
130 | |·<a·class="idref"·href="Coq.NArith.BinNatDef.html#N.pos"><span·class="id"·title="abbreviation">pos</span></a>·<span·class="id"·title="var">p</span>·=>·<a·class="idref"·href="Coq.NArith.BinNatDef.html#N.pos"><span·class="id"·title="abbreviation">pos</span></a>·<span·class="id"·title="var">p</span><a·class="idref"·href="Coq.PArith.BinPosDef.html#35713fcadfdd66af247cbf95acf859fa"><span·class="id"·title="notation">~0</span></a><br/> | 130 | |·<a·class="idref"·href="Coq.NArith.BinNatDef.html#N.pos"><span·class="id"·title="abbreviation">pos</span></a>·<span·class="id"·title="var">p</span>·=>·<a·class="idref"·href="Coq.NArith.BinNatDef.html#N.pos"><span·class="id"·title="abbreviation">pos</span></a>·<span·class="id"·title="var">p</span><a·class="idref"·href="Coq.PArith.BinPosDef.html#35713fcadfdd66af247cbf95acf859fa"><span·class="id"·title="notation">~0</span></a><br/> |
131 | <span·class="id"·title="keyword">end</span>.<br/> | 131 | <span·class="id"·title="keyword">end</span>.<br/> |
132 | <br/> | 132 | <br/> |
133 | </div> | 133 | </div> |
134 | <div·class="doc"> | 134 | <div·class="doc"> |
135 | <a·id="lab | 135 | <a·id="lab707"></a><h2·class="section">Successor</h2> |
136 | </div> | 136 | </div> |
137 | <div·class="code"> | 137 | <div·class="code"> |
138 | <br/> | 138 | <br/> |
139 | <span·class="id"·title="keyword">Definition</span>·<a·id="N.succ"·class="idref"·href="#N.succ"><span·class="id"·title="definition">succ</span></a>·<a·id="n:5"·class="idref"·href="#n:5"><span·class="id"·title="binder">n</span></a>·:=<br/> | 139 | <span·class="id"·title="keyword">Definition</span>·<a·id="N.succ"·class="idref"·href="#N.succ"><span·class="id"·title="definition">succ</span></a>·<a·id="n:5"·class="idref"·href="#n:5"><span·class="id"·title="binder">n</span></a>·:=<br/> |
140 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.NArith.BinNatDef.html#n:5"><span·class="id"·title="variable">n</span></a>·<span·class="id"·title="keyword">with</span><br/> | 140 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.NArith.BinNatDef.html#n:5"><span·class="id"·title="variable">n</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 146, 15 lines modified | Offset 146, 15 lines modified | ||
146 | |·<a·class="idref"·href="Coq.NArith.BinNatDef.html#N.pos"><span·class="id"·title="abbreviation">pos</span></a>·<span·class="id"·title="var">p</span>·=>·<a·class="idref"·href="Coq.NArith.BinNatDef.html#N.pos"><span·class="id"·title="abbreviation">pos</span></a>·(<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.succ"><span·class="id"·title="definition">Pos.succ</span></a>·<span·class="id"·title="var">p</span>)<br/> | 146 | |·<a·class="idref"·href="Coq.NArith.BinNatDef.html#N.pos"><span·class="id"·title="abbreviation">pos</span></a>·<span·class="id"·title="var">p</span>·=>·<a·class="idref"·href="Coq.NArith.BinNatDef.html#N.pos"><span·class="id"·title="abbreviation">pos</span></a>·(<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.succ"><span·class="id"·title="definition">Pos.succ</span></a>·<span·class="id"·title="var">p</span>)<br/> |
147 | <span·class="id"·title="keyword">end</span>.<br/> | 147 | <span·class="id"·title="keyword">end</span>.<br/> |
148 | <br/> | 148 | <br/> |
149 | </div> | 149 | </div> |
150 | <div·class="doc"> | 150 | <div·class="doc"> |
151 | <a·id="lab | 151 | <a·id="lab708"></a><h2·class="section">Predecessor</h2> |
152 | </div> | 152 | </div> |
153 | <div·class="code"> | 153 | <div·class="code"> |
154 | <br/> | 154 | <br/> |
155 | <span·class="id"·title="keyword">Definition</span>·<a·id="N.pred"·class="idref"·href="#N.pred"><span·class="id"·title="definition">pred</span></a>·<a·id="n:7"·class="idref"·href="#n:7"><span·class="id"·title="binder">n</span></a>·:=<br/> | 155 | <span·class="id"·title="keyword">Definition</span>·<a·id="N.pred"·class="idref"·href="#N.pred"><span·class="id"·title="definition">pred</span></a>·<a·id="n:7"·class="idref"·href="#n:7"><span·class="id"·title="binder">n</span></a>·:=<br/> |
156 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.NArith.BinNatDef.html#n:7"><span·class="id"·title="variable">n</span></a>·<span·class="id"·title="keyword">with</span><br/> | 156 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.NArith.BinNatDef.html#n:7"><span·class="id"·title="variable">n</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 162, 15 lines modified | Offset 162, 15 lines modified | ||
162 | |·<a·class="idref"·href="Coq.NArith.BinNatDef.html#N.pos"><span·class="id"·title="abbreviation">pos</span></a>·<span·class="id"·title="var">p</span>·=>·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.pred_N"><span·class="id"·title="definition">Pos.pred_N</span></a>·<span·class="id"·title="var">p</span><br/> | 162 | |·<a·class="idref"·href="Coq.NArith.BinNatDef.html#N.pos"><span·class="id"·title="abbreviation">pos</span></a>·<span·class="id"·title="var">p</span>·=>·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.pred_N"><span·class="id"·title="definition">Pos.pred_N</span></a>·<span·class="id"·title="var">p</span><br/> |
163 | <span·class="id"·title="keyword">end</span>.<br/> | 163 | <span·class="id"·title="keyword">end</span>.<br/> |
164 | <br/> | 164 | <br/> |
165 | </div> | 165 | </div> |
166 | <div·class="doc"> | 166 | <div·class="doc"> |
167 | <a·id="lab | 167 | <a·id="lab709"></a><h2·class="section">The·successor·of·a·<span·class="inlinecode"><span·class="id"·title="var">N</span></span>·can·be·seen·as·a·<span·class="inlinecode"><span·class="id"·title="var">positive</span></span></h2> |
168 | </div> | 168 | </div> |
169 | <div·class="code"> | 169 | <div·class="code"> |
170 | <br/> | 170 | <br/> |
171 | <span·class="id"·title="keyword">Definition</span>·<a·id="N.succ_pos"·class="idref"·href="#N.succ_pos"><span·class="id"·title="definition">succ_pos</span></a>·(<a·id="n:9"·class="idref"·href="#n:9"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#N"><span·class="id"·title="inductive">N</span></a>)·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#positive"><span·class="id"·title="inductive">positive</span></a>·:=<br/> | 171 | <span·class="id"·title="keyword">Definition</span>·<a·id="N.succ_pos"·class="idref"·href="#N.succ_pos"><span·class="id"·title="definition">succ_pos</span></a>·(<a·id="n:9"·class="idref"·href="#n:9"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#N"><span·class="id"·title="inductive">N</span></a>)·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#positive"><span·class="id"·title="inductive">positive</span></a>·:=<br/> |
172 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.NArith.BinNatDef.html#n:9"><span·class="id"·title="variable">n</span></a>·<span·class="id"·title="keyword">with</span><br/> | 172 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.NArith.BinNatDef.html#n:9"><span·class="id"·title="variable">n</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 178, 15 lines modified | Offset 178, 15 lines modified | ||
178 | |·<a·class="idref"·href="Coq.NArith.BinNatDef.html#N.pos"><span·class="id"·title="abbreviation">pos</span></a>·<span·class="id"·title="var">p</span>·=>·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.succ"><span·class="id"·title="definition">Pos.succ</span></a>·<span·class="id"·title="var">p</span><br/> | 178 | |·<a·class="idref"·href="Coq.NArith.BinNatDef.html#N.pos"><span·class="id"·title="abbreviation">pos</span></a>·<span·class="id"·title="var">p</span>·=>·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.succ"><span·class="id"·title="definition">Pos.succ</span></a>·<span·class="id"·title="var">p</span><br/> |
179 | <span·class="id"·title="keyword">end</span>.<br/> | 179 | <span·class="id"·title="keyword">end</span>.<br/> |
180 | <br/> | 180 | <br/> |
181 | </div> | 181 | </div> |
Max diff block lines reached; 785/10403 bytes (7.55%) of diff not shown. |
Offset 48, 15 lines modified | Offset 48, 15 lines modified | ||
48 | <br/> | 48 | <br/> |
49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.PArith.BinPos.html#"><span·class="id"·title="library">BinPos</span></a>·<a·class="idref"·href="Coq.NArith.BinNat.html#"><span·class="id"·title="library">BinNat</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#"><span·class="id"·title="library">PeanoNat</span></a>·<a·class="idref"·href="Coq.PArith.Pnat.html#"><span·class="id"·title="library">Pnat</span></a>.<br/> | 49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.PArith.BinPos.html#"><span·class="id"·title="library">BinPos</span></a>·<a·class="idref"·href="Coq.NArith.BinNat.html#"><span·class="id"·title="library">BinNat</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#"><span·class="id"·title="library">PeanoNat</span></a>·<a·class="idref"·href="Coq.PArith.Pnat.html#"><span·class="id"·title="library">Pnat</span></a>.<br/> |
50 | <br/> | 50 | <br/> |
51 | </div> | 51 | </div> |
52 | <div·class="doc"> | 52 | <div·class="doc"> |
53 | <a·id="lab | 53 | <a·id="lab700"></a><h1·class="section">Conversions·from·<span·class="inlinecode"><span·class="id"·title="var">N</span></span>·to·<span·class="inlinecode"><span·class="id"·title="var">nat</span></span></h1> |
54 | </div> | 54 | </div> |
55 | <div·class="code"> | 55 | <div·class="code"> |
56 | <br/> | 56 | <br/> |
57 | <span·class="id"·title="keyword">Module</span>·<a·id="N2Nat"·class="idref"·href="#N2Nat"><span·class="id"·title="module">N2Nat</span></a>.<br/> | 57 | <span·class="id"·title="keyword">Module</span>·<a·id="N2Nat"·class="idref"·href="#N2Nat"><span·class="id"·title="module">N2Nat</span></a>.<br/> |
Offset 164, 15 lines modified | Offset 164, 15 lines modified | ||
164 | <a·class="idref"·href="Coq.NArith.Nnat.html#id"><span·class="id"·title="lemma">N2Nat.id</span></a><br/> | 164 | <a·class="idref"·href="Coq.NArith.Nnat.html#id"><span·class="id"·title="lemma">N2Nat.id</span></a><br/> |
165 | :·<span·class="id"·title="var">Nnat</span>.<br/> | 165 | :·<span·class="id"·title="var">Nnat</span>.<br/> |
166 | <br/> | 166 | <br/> |
167 | </div> | 167 | </div> |
168 | <div·class="doc"> | 168 | <div·class="doc"> |
169 | <a·id="lab | 169 | <a·id="lab701"></a><h1·class="section">Conversions·from·<span·class="inlinecode"><span·class="id"·title="var">nat</span></span>·to·<span·class="inlinecode"><span·class="id"·title="var">N</span></span></h1> |
170 | </div> | 170 | </div> |
171 | <div·class="code"> | 171 | <div·class="code"> |
172 | <br/> | 172 | <br/> |
173 | <span·class="id"·title="keyword">Module</span>·<a·id="Nat2N"·class="idref"·href="#Nat2N"><span·class="id"·title="module">Nat2N</span></a>.<br/> | 173 | <span·class="id"·title="keyword">Module</span>·<a·id="Nat2N"·class="idref"·href="#Nat2N"><span·class="id"·title="module">Nat2N</span></a>.<br/> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1210"></a><h1·class="section">Alternative·Binary·Number·Notations</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·Faster·but·less·safe·parsers·and·printers·of·<span·class="inlinecode"><span·class="id"·title="var">positive</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">N</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">Z</span></span>.· | 51 | ·Faster·but·less·safe·parsers·and·printers·of·<span·class="inlinecode"><span·class="id"·title="var">positive</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">N</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">Z</span></span>.· |
52 | <div·class="paragraph">·</div> | 52 | <div·class="paragraph">·</div> |
53 | ·By·default,·literals·in·types·<span·class="inlinecode"><span·class="id"·title="var">positive</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">N</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">Z</span></span>·are·parsed·and | 53 | ·By·default,·literals·in·types·<span·class="inlinecode"><span·class="id"·title="var">positive</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">N</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">Z</span></span>·are·parsed·and |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1224"></a><h1·class="section">Binary·Numerical·Datatypes</h1> |
50 | </div> | 50 | </div> |
51 | <div·class="code"> | 51 | <div·class="code"> |
52 | <br/> | 52 | <br/> |
53 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> | 53 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1248"></a><h1·class="section">Signature·and·specification·of·bounded·integers</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·This·file·specifies·<span·class="inlinecode"><span·class="id"·title="var">d</span></span>-bit·integers·as·<span·class="inlinecode"><span·class="id"·title="var">Z</span>/<span·class="id"·title="var">nZ</span></span>·with·<span·class="inlinecode"><span·class="id"·title="var">n</span>=2^<span·class="id"·title="var">d</span></span>· | 51 | ·This·file·specifies·<span·class="inlinecode"><span·class="id"·title="var">d</span></span>-bit·integers·as·<span·class="inlinecode"><span·class="id"·title="var">Z</span>/<span·class="id"·title="var">nZ</span></span>·with·<span·class="inlinecode"><span·class="id"·title="var">n</span>=2^<span·class="id"·title="var">d</span></span>· |
52 | </div> | 52 | </div> |
53 | <div·class="code"> | 53 | <div·class="code"> |
Offset 53, 15 lines modified | Offset 53, 15 lines modified | ||
53 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Numbers.Cyclic.Abstract.CyclicAxioms.html#"><span·class="id"·title="library">CyclicAxioms</span></a>.<br/> | 53 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Numbers.Cyclic.Abstract.CyclicAxioms.html#"><span·class="id"·title="library">CyclicAxioms</span></a>.<br/> |
54 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.micromega.Lia.html#"><span·class="id"·title="library">Lia</span></a>.<br/> | 54 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.micromega.Lia.html#"><span·class="id"·title="library">Lia</span></a>.<br/> |
55 | <br/> | 55 | <br/> |
56 | </div> | 56 | </div> |
57 | <div·class="doc"> | 57 | <div·class="doc"> |
58 | <a·id="lab | 58 | <a·id="lab1247"></a><h1·class="section">From·<span·class="inlinecode"><span·class="id"·title="var">CyclicType</span></span>·to·<span·class="inlinecode"><span·class="id"·title="var">NZAxiomsSig</span></span></h1> |
59 | <div·class="paragraph">·</div> | 59 | <div·class="paragraph">·</div> |
60 | ·A·<span·class="inlinecode"><span·class="id"·title="var">Z</span>/<span·class="id"·title="var">nZ</span></span>·representation·given·by·a·module·type·<span·class="inlinecode"><span·class="id"·title="var">CyclicType</span></span> | 60 | ·A·<span·class="inlinecode"><span·class="id"·title="var">Z</span>/<span·class="id"·title="var">nZ</span></span>·representation·given·by·a·module·type·<span·class="inlinecode"><span·class="id"·title="var">CyclicType</span></span> |
61 | ····implements·<span·class="inlinecode"><span·class="id"·title="var">NZAxiomsSig</span></span>,·e.g.·the·common·properties·between | 61 | ····implements·<span·class="inlinecode"><span·class="id"·title="var">NZAxiomsSig</span></span>,·e.g.·the·common·properties·between |
62 | ····N·and·Z·with·no·ordering.·Notice·that·the·<span·class="inlinecode"><span·class="id"·title="var">n</span></span>·in·<span·class="inlinecode"><span·class="id"·title="var">Z</span>/<span·class="id"·title="var">nZ</span></span>·is | 62 | ····N·and·Z·with·no·ordering.·Notice·that·the·<span·class="inlinecode"><span·class="id"·title="var">n</span></span>·in·<span·class="inlinecode"><span·class="id"·title="var">Z</span>/<span·class="id"·title="var">nZ</span></span>·is |
63 | ····a·power·of·2. | 63 | ····a·power·of·2. |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1246"></a><h1·class="section">Uint63·numbers·defines·indeed·a·cyclic·structure·:·Z/(2^63)Z</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | <div·class="paragraph">·</div> | 51 | <div·class="paragraph">·</div> |
52 | Author:·Arnaud·Spiwack·(+·Pierre·Letouzey) | 52 | Author:·Arnaud·Spiwack·(+·Pierre·Letouzey) |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1245"></a><h1·class="section">Uint63·numbers·defines·Z/(2^63)Z,·and·can·hence·be·equipped</h1> |
50 | ······with·a·ring·structure·and·a·ring·tactic· | 50 | ······with·a·ring·structure·and·a·ring·tactic· |
51 | </div> | 51 | </div> |
52 | <div·class="code"> | 52 | <div·class="code"> |
53 | <br/> | 53 | <br/> |
54 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Cyclic63.html#"><span·class="id"·title="library">Cyclic63</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Abstract.CyclicAxioms.html#"><span·class="id"·title="library">CyclicAxioms</span></a>.<br/> | 54 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Cyclic63.html#"><span·class="id"·title="library">Cyclic63</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Abstract.CyclicAxioms.html#"><span·class="id"·title="library">CyclicAxioms</span></a>.<br/> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1223"></a><h1·class="section">DecimalFacts·:·some·facts·about·Decimal·numbers</h1> |
50 | </div> | 50 | </div> |
51 | <div·class="code"> | 51 | <div·class="code"> |
52 | <br/> | 52 | <br/> |
53 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Decimal.html#"><span·class="id"·title="library">Decimal</span></a>·<a·class="idref"·href="Coq.Arith.Arith.html#"><span·class="id"·title="library">Arith</span></a>·<a·class="idref"·href="Coq.ZArith.ZArith.html#"><span·class="id"·title="library">ZArith</span></a>.<br/> | 53 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Decimal.html#"><span·class="id"·title="library">Decimal</span></a>·<a·class="idref"·href="Coq.Arith.Arith.html#"><span·class="id"·title="library">Arith</span></a>·<a·class="idref"·href="Coq.ZArith.ZArith.html#"><span·class="id"·title="library">ZArith</span></a>.<br/> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1213"></a><h1·class="section">DecimalN</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ····Proofs·that·conversions·between·decimal·numbers·and·<span·class="inlinecode"><span·class="id"·title="var">N</span></span> | 51 | ····Proofs·that·conversions·between·decimal·numbers·and·<span·class="inlinecode"><span·class="id"·title="var">N</span></span> |
52 | ····are·bijections· | 52 | ····are·bijections· |
53 | </div> | 53 | </div> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1253"></a><h1·class="section">DecimalNat</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ····Proofs·that·conversions·between·decimal·numbers·and·<span·class="inlinecode"><span·class="id"·title="var">nat</span></span> | 51 | ····Proofs·that·conversions·between·decimal·numbers·and·<span·class="inlinecode"><span·class="id"·title="var">nat</span></span> |
52 | ····are·bijections.· | 52 | ····are·bijections.· |
53 | </div> | 53 | </div> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1222"></a><h1·class="section">DecimalPos</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ····Proofs·that·conversions·between·decimal·numbers·and·<span·class="inlinecode"><span·class="id"·title="var">positive</span></span> | 51 | ····Proofs·that·conversions·between·decimal·numbers·and·<span·class="inlinecode"><span·class="id"·title="var">positive</span></span> |
52 | ····are·bijections.· | 52 | ····are·bijections.· |
53 | </div> | 53 | </div> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1225"></a><h1·class="section">DecimalQ</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ····Proofs·that·conversions·between·decimal·numbers·and·<span·class="inlinecode"><span·class="id"·title="var">Q</span></span> | 51 | ····Proofs·that·conversions·between·decimal·numbers·and·<span·class="inlinecode"><span·class="id"·title="var">Q</span></span> |
52 | ····are·bijections.· | 52 | ····are·bijections.· |
53 | </div> | 53 | </div> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1212"></a><h1·class="section">DecimalR</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ····Proofs·that·conversions·between·decimal·numbers·and·<span·class="inlinecode"><span·class="id"·title="var">R</span></span> | 51 | ····Proofs·that·conversions·between·decimal·numbers·and·<span·class="inlinecode"><span·class="id"·title="var">R</span></span> |
52 | ····are·bijections.· | 52 | ····are·bijections.· |
53 | </div> | 53 | </div> |
Offset 48, 15 lines modified | Offset 48, 15 lines modified | ||
48 | <br/> | 48 | <br/> |
49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Decimal.html#"><span·class="id"·title="library">Decimal</span></a>·<a·class="idref"·href="Coq.Strings.Ascii.html#"><span·class="id"·title="library">Ascii</span></a>·<a·class="idref"·href="Coq.Strings.String.html#"><span·class="id"·title="library">String</span></a>.<br/> | 49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Decimal.html#"><span·class="id"·title="library">Decimal</span></a>·<a·class="idref"·href="Coq.Strings.Ascii.html#"><span·class="id"·title="library">Ascii</span></a>·<a·class="idref"·href="Coq.Strings.String.html#"><span·class="id"·title="library">String</span></a>.<br/> |
50 | <br/> | 50 | <br/> |
51 | </div> | 51 | </div> |
52 | <div·class="doc"> | 52 | <div·class="doc"> |
53 | <a·id="lab | 53 | <a·id="lab1214"></a><h1·class="section">Conversion·between·decimal·numbers·and·Coq·strings</h1> |
54 | <div·class="paragraph">·</div> | 54 | <div·class="paragraph">·</div> |
55 | ·Pretty·straightforward,·which·is·precisely·the·point·of·the | 55 | ·Pretty·straightforward,·which·is·precisely·the·point·of·the |
56 | ····<span·class="inlinecode"><span·class="id"·title="var">Decimal.int</span></span>·datatype.·The·only·catch·is·<span·class="inlinecode"><span·class="id"·title="var">Decimal.Nil</span></span>·:·we·could | 56 | ····<span·class="inlinecode"><span·class="id"·title="var">Decimal.int</span></span>·datatype.·The·only·catch·is·<span·class="inlinecode"><span·class="id"·title="var">Decimal.Nil</span></span>·:·we·could |
57 | ····choose·to·convert·it·as·<span·class="inlinecode">""</span>·or·as·<span·class="inlinecode">"0"</span>.·In·the·first·case,·it·is | 57 | ····choose·to·convert·it·as·<span·class="inlinecode">""</span>·or·as·<span·class="inlinecode">"0"</span>.·In·the·first·case,·it·is |
58 | ····awkward·to·consider·""·(or·"-")·as·a·number,·while·in·the·second·case | 58 | ····awkward·to·consider·""·(or·"-")·as·a·number,·while·in·the·second·case |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1211"></a><h1·class="section">DecimalZ</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ····Proofs·that·conversions·between·decimal·numbers·and·<span·class="inlinecode"><span·class="id"·title="var">Z</span></span> | 51 | ····Proofs·that·conversions·between·decimal·numbers·and·<span·class="inlinecode"><span·class="id"·title="var">Z</span></span> |
52 | ····are·bijections.· | 52 | ····are·bijections.· |
53 | </div> | 53 | </div> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1209"></a><h1·class="section">HexadecimalFacts·:·some·facts·about·Hexadecimal·numbers</h1> |
50 | </div> | 50 | </div> |
51 | <div·class="code"> | 51 | <div·class="code"> |
52 | <br/> | 52 | <br/> |
53 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Hexadecimal.html#"><span·class="id"·title="library">Hexadecimal</span></a>·<a·class="idref"·href="Coq.Arith.Arith.html#"><span·class="id"·title="library">Arith</span></a>·<a·class="idref"·href="Coq.ZArith.ZArith.html#"><span·class="id"·title="library">ZArith</span></a>.<br/> | 53 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Hexadecimal.html#"><span·class="id"·title="library">Hexadecimal</span></a>·<a·class="idref"·href="Coq.Arith.Arith.html#"><span·class="id"·title="library">Arith</span></a>·<a·class="idref"·href="Coq.ZArith.ZArith.html#"><span·class="id"·title="library">ZArith</span></a>.<br/> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1227"></a><h1·class="section">HexadecimalN</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ····Proofs·that·conversions·between·hexadecimal·numbers·and·<span·class="inlinecode"><span·class="id"·title="var">N</span></span> | 51 | ····Proofs·that·conversions·between·hexadecimal·numbers·and·<span·class="inlinecode"><span·class="id"·title="var">N</span></span> |
52 | ····are·bijections· | 52 | ····are·bijections· |
53 | </div> | 53 | </div> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1250"></a><h1·class="section">HexadecimalNat</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ····Proofs·that·conversions·between·hexadecimal·numbers·and·<span·class="inlinecode"><span·class="id"·title="var">nat</span></span> | 51 | ····Proofs·that·conversions·between·hexadecimal·numbers·and·<span·class="inlinecode"><span·class="id"·title="var">nat</span></span> |
52 | ····are·bijections.· | 52 | ····are·bijections.· |
53 | </div> | 53 | </div> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1251"></a><h1·class="section">HexadecimalPos</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ····Proofs·that·conversions·between·hexadecimal·numbers·and·<span·class="inlinecode"><span·class="id"·title="var">positive</span></span> | 51 | ····Proofs·that·conversions·between·hexadecimal·numbers·and·<span·class="inlinecode"><span·class="id"·title="var">positive</span></span> |
52 | ····are·bijections.· | 52 | ····are·bijections.· |
53 | </div> | 53 | </div> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1228"></a><h1·class="section">HexadecimalQ</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ····Proofs·that·conversions·between·hexadecimal·numbers·and·<span·class="inlinecode"><span·class="id"·title="var">Q</span></span> | 51 | ····Proofs·that·conversions·between·hexadecimal·numbers·and·<span·class="inlinecode"><span·class="id"·title="var">Q</span></span> |
52 | ····are·bijections.· | 52 | ····are·bijections.· |
53 | </div> | 53 | </div> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1249"></a><h1·class="section">HexadecimalR</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ····Proofs·that·conversions·between·hexadecimal·numbers·and·<span·class="inlinecode"><span·class="id"·title="var">R</span></span> | 51 | ····Proofs·that·conversions·between·hexadecimal·numbers·and·<span·class="inlinecode"><span·class="id"·title="var">R</span></span> |
52 | ····are·bijections.· | 52 | ····are·bijections.· |
53 | </div> | 53 | </div> |
Offset 48, 15 lines modified | Offset 48, 15 lines modified | ||
48 | <br/> | 48 | <br/> |
49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Hexadecimal.html#"><span·class="id"·title="library">Hexadecimal</span></a>·<a·class="idref"·href="Coq.Strings.Ascii.html#"><span·class="id"·title="library">Ascii</span></a>·<a·class="idref"·href="Coq.Strings.String.html#"><span·class="id"·title="library">String</span></a>.<br/> | 49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Hexadecimal.html#"><span·class="id"·title="library">Hexadecimal</span></a>·<a·class="idref"·href="Coq.Strings.Ascii.html#"><span·class="id"·title="library">Ascii</span></a>·<a·class="idref"·href="Coq.Strings.String.html#"><span·class="id"·title="library">String</span></a>.<br/> |
50 | <br/> | 50 | <br/> |
51 | </div> | 51 | </div> |
52 | <div·class="doc"> | 52 | <div·class="doc"> |
53 | <a·id="lab | 53 | <a·id="lab1226"></a><h1·class="section">Conversion·between·hexadecimal·numbers·and·Coq·strings</h1> |
54 | <div·class="paragraph">·</div> | 54 | <div·class="paragraph">·</div> |
55 | ·Pretty·straightforward,·which·is·precisely·the·point·of·the | 55 | ·Pretty·straightforward,·which·is·precisely·the·point·of·the |
56 | ····<span·class="inlinecode"><span·class="id"·title="var">Hexadecimal.int</span></span>·datatype.·The·only·catch·is·<span·class="inlinecode"><span·class="id"·title="var">Hexadecimal.Nil</span></span>·:·we·could | 56 | ····<span·class="inlinecode"><span·class="id"·title="var">Hexadecimal.int</span></span>·datatype.·The·only·catch·is·<span·class="inlinecode"><span·class="id"·title="var">Hexadecimal.Nil</span></span>·:·we·could |
57 | ····choose·to·convert·it·as·<span·class="inlinecode">""</span>·or·as·<span·class="inlinecode">"0"</span>.·In·the·first·case,·it·is | 57 | ····choose·to·convert·it·as·<span·class="inlinecode">""</span>·or·as·<span·class="inlinecode">"0"</span>.·In·the·first·case,·it·is |
58 | ····awkward·to·consider·""·(or·"-")·as·a·number,·while·in·the·second·case | 58 | ····awkward·to·consider·""·(or·"-")·as·a·number,·while·in·the·second·case |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1252"></a><h1·class="section">HexadecimalZ</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ····Proofs·that·conversions·between·hexadecimal·numbers·and·<span·class="inlinecode"><span·class="id"·title="var">Z</span></span> | 51 | ····Proofs·that·conversions·between·hexadecimal·numbers·and·<span·class="inlinecode"><span·class="id"·title="var">Z</span></span> |
52 | ····are·bijections.· | 52 | ····are·bijections.· |
53 | </div> | 53 | </div> |
Offset 469, 15 lines modified | Offset 469, 15 lines modified | ||
469 | <a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">exists</span></a>·<a·id="n:114"·class="idref"·href="#n:114"><span·class="id"·title="binder">n</span></a><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">,</span></a>·<span·class="id"·title="keyword">forall</span>·<a·id="m:115"·class="idref"·href="#m:115"><span·class="id"·title="binder">m</span></a>,·0<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZBits.html#m:115"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZBits.html#f:113"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZBits.html#m:115"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZBits.html#n:114"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZBits.html#08f35bb78d3f8b8e58903b9564c9213c"><span·class="id"·title="notation">.[</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZBits.html#m:115"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZBits.html#08f35bb78d3f8b8e58903b9564c9213c"><span·class="id"·title="notation">]</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a><br/> | 469 | <a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">exists</span></a>·<a·id="n:114"·class="idref"·href="#n:114"><span·class="id"·title="binder">n</span></a><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">,</span></a>·<span·class="id"·title="keyword">forall</span>·<a·id="m:115"·class="idref"·href="#m:115"><span·class="id"·title="binder">m</span></a>,·0<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZBits.html#m:115"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZBits.html#f:113"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZBits.html#m:115"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZBits.html#n:114"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZBits.html#08f35bb78d3f8b8e58903b9564c9213c"><span·class="id"·title="notation">.[</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZBits.html#m:115"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZBits.html#08f35bb78d3f8b8e58903b9564c9213c"><span·class="id"·title="notation">]</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a><br/> |
470 | <a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">exists</span></a>·<a·id="k:116"·class="idref"·href="#k:116"><span·class="id"·title="binder">k</span></a><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">,</span></a>·<span·class="id"·title="keyword">forall</span>·<a·id="m:117"·class="idref"·href="#m:117"><span·class="id"·title="binder">m</span></a>,·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZBits.html#k:116"><span·class="id"·title="variable">k</span></a><a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZBits.html#m:117"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZBits.html#f:113"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZBits.html#m:117"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZBits.html#f:113"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZBits.html#k:116"><span·class="id"·title="variable">k</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation">)</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>.<br/> | 470 | <a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">exists</span></a>·<a·id="k:116"·class="idref"·href="#k:116"><span·class="id"·title="binder">k</span></a><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">,</span></a>·<span·class="id"·title="keyword">forall</span>·<a·id="m:117"·class="idref"·href="#m:117"><span·class="id"·title="binder">m</span></a>,·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZBits.html#k:116"><span·class="id"·title="variable">k</span></a><a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZBits.html#m:117"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZBits.html#f:113"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZBits.html#m:117"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZBits.html#f:113"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZBits.html#k:116"><span·class="id"·title="variable">k</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation">)</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>.<br/> |
471 | <br/> | 471 | <br/> |
472 | </div> | 472 | </div> |
473 | <div·class="doc"> | 473 | <div·class="doc"> |
474 | <a·id="lab | 474 | <a·id="lab1239"></a><h1·class="section">Properties·of·shifts</h1> |
475 | <div·class="paragraph">·</div> | 475 | <div·class="paragraph">·</div> |
476 | ·First,·a·unified·specification·for·<span·class="inlinecode"><span·class="id"·title="var">shiftl</span></span>·:·the·<span·class="inlinecode"><span·class="id"·title="var">shiftl_spec</span></span> | 476 | ·First,·a·unified·specification·for·<span·class="inlinecode"><span·class="id"·title="var">shiftl</span></span>·:·the·<span·class="inlinecode"><span·class="id"·title="var">shiftl_spec</span></span> |
477 | ···below·(combined·with·<span·class="inlinecode"><span·class="id"·title="var">testbit_neg_r</span></span>)·is·equivalent·to | 477 | ···below·(combined·with·<span·class="inlinecode"><span·class="id"·title="var">testbit_neg_r</span></span>)·is·equivalent·to |
478 | ···<span·class="inlinecode"><span·class="id"·title="var">shiftl_spec_low</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">shiftl_spec_high</span></span>.· | 478 | ···<span·class="inlinecode"><span·class="id"·title="var">shiftl_spec_low</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">shiftl_spec_high</span></span>.· |
479 | </div> | 479 | </div> |
Offset 51, 15 lines modified | Offset 51, 15 lines modified | ||
51 | <span·class="id"·title="keyword">From</span>·<span·class="id"·title="var">Coq.Numbers.Integer.Abstract</span>·<span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZAxioms.html#"><span·class="id"·title="library">ZAxioms</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZMulOrder.html#"><span·class="id"·title="library">ZMulOrder</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZSgnAbs.html#"><span·class="id"·title="library">ZSgnAbs</span></a>.<br/> | 51 | <span·class="id"·title="keyword">From</span>·<span·class="id"·title="var">Coq.Numbers.Integer.Abstract</span>·<span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZAxioms.html#"><span·class="id"·title="library">ZAxioms</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZMulOrder.html#"><span·class="id"·title="library">ZMulOrder</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZSgnAbs.html#"><span·class="id"·title="library">ZSgnAbs</span></a>.<br/> |
52 | <span·class="id"·title="keyword">From</span>·<span·class="id"·title="var">Coq.Numbers.NatInt</span>·<span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#"><span·class="id"·title="library">NZDiv</span></a>.<br/> | 52 | <span·class="id"·title="keyword">From</span>·<span·class="id"·title="var">Coq.Numbers.NatInt</span>·<span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#"><span·class="id"·title="library">NZDiv</span></a>.<br/> |
53 | <br/> | 53 | <br/> |
54 | </div> | 54 | </div> |
55 | <div·class="doc"> | 55 | <div·class="doc"> |
56 | <a·id="lab | 56 | <a·id="lab1241"></a><h1·class="section">Euclidean·Division·for·integers,·Euclid·convention</h1> |
57 | <div·class="paragraph">·</div> | 57 | <div·class="paragraph">·</div> |
58 | ····We·use·here·the·"usual"·formulation·of·the·Euclid·Theorem | 58 | ····We·use·here·the·"usual"·formulation·of·the·Euclid·Theorem |
59 | ····<span·class="inlinecode"><span·class="id"·title="keyword">forall</span></span>·<span·class="inlinecode"><span·class="id"·title="var">a</span></span>·<span·class="inlinecode"><span·class="id"·title="var">b</span>,</span>·<span·class="inlinecode"><span·class="id"·title="var">b</span><>0</span>·<span·class="inlinecode">-></span>·<span·class="inlinecode"><span·class="id"·title="tactic">exists</span></span>·<span·class="inlinecode"><span·class="id"·title="var">r</span></span>·<span·class="inlinecode"><span·class="id"·title="var">q</span>,</span>·<span·class="inlinecode"><span·class="id"·title="var">a</span></span>·<span·class="inlinecode">=</span>·<span·class="inlinecode"><span·class="id"·title="var">b</span>*<span·class="id"·title="var">q</span>+<span·class="id"·title="var">r</span></span>·<span·class="inlinecode">/\</span>·<span·class="inlinecode">0</span>·<span·class="inlinecode"><=</span>·<span·class="inlinecode"><span·class="id"·title="var">r</span></span>·<span·class="inlinecode"><</span>·<span·class="inlinecode">|<span·class="id"·title="var">b</span>|</span>·<span·class="inlinecode"></span> | 59 | ····<span·class="inlinecode"><span·class="id"·title="keyword">forall</span></span>·<span·class="inlinecode"><span·class="id"·title="var">a</span></span>·<span·class="inlinecode"><span·class="id"·title="var">b</span>,</span>·<span·class="inlinecode"><span·class="id"·title="var">b</span><>0</span>·<span·class="inlinecode">-></span>·<span·class="inlinecode"><span·class="id"·title="tactic">exists</span></span>·<span·class="inlinecode"><span·class="id"·title="var">r</span></span>·<span·class="inlinecode"><span·class="id"·title="var">q</span>,</span>·<span·class="inlinecode"><span·class="id"·title="var">a</span></span>·<span·class="inlinecode">=</span>·<span·class="inlinecode"><span·class="id"·title="var">b</span>*<span·class="id"·title="var">q</span>+<span·class="id"·title="var">r</span></span>·<span·class="inlinecode">/\</span>·<span·class="inlinecode">0</span>·<span·class="inlinecode"><=</span>·<span·class="inlinecode"><span·class="id"·title="var">r</span></span>·<span·class="inlinecode"><</span>·<span·class="inlinecode">|<span·class="id"·title="var">b</span>|</span>·<span·class="inlinecode"></span> |
Offset 242, 15 lines modified | Offset 242, 15 lines modified | ||
242 | <br/> | 242 | <br/> |
243 | <span·class="id"·title="keyword">Theorem</span>·<a·id="ZEuclidProp.mod_small"·class="idref"·href="#ZEuclidProp.mod_small"><span·class="id"·title="lemma">mod_small</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:44"·class="idref"·href="#a:44"><span·class="id"·title="binder">a</span></a>·<a·id="b:45"·class="idref"·href="#b:45"><span·class="id"·title="binder">b</span></a>,·0<a·class="idref"·href="Coq.Structures.Orders.html#62fc7208ddb2fa310e7ae9ec2d794c92"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#a:44"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Structures.Orders.html#62fc7208ddb2fa310e7ae9ec2d794c92"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#b:45"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#a:44"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#ZEuclidProp.::euclid:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#b:45"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#a:44"><span·class="id"·title="variable">a</span></a>.<br/> | 243 | <span·class="id"·title="keyword">Theorem</span>·<a·id="ZEuclidProp.mod_small"·class="idref"·href="#ZEuclidProp.mod_small"><span·class="id"·title="lemma">mod_small</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:44"·class="idref"·href="#a:44"><span·class="id"·title="binder">a</span></a>·<a·id="b:45"·class="idref"·href="#b:45"><span·class="id"·title="binder">b</span></a>,·0<a·class="idref"·href="Coq.Structures.Orders.html#62fc7208ddb2fa310e7ae9ec2d794c92"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#a:44"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Structures.Orders.html#62fc7208ddb2fa310e7ae9ec2d794c92"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#b:45"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#a:44"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#ZEuclidProp.::euclid:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#b:45"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#a:44"><span·class="id"·title="variable">a</span></a>.<br/> |
244 | · | 244 | · |
245 | <br/> | 245 | <br/> |
246 | </div> | 246 | </div> |
247 | <div·class="doc"> | 247 | <div·class="doc"> |
248 | <a·id="lab | 248 | <a·id="lab1242"></a><h1·class="section">Basic·values·of·divisions·and·modulo.</h1> |
249 | </div> | 249 | </div> |
250 | <div·class="code"> | 250 | <div·class="code"> |
251 | <br/> | 251 | <br/> |
252 | <span·class="id"·title="keyword">Lemma</span>·<a·id="ZEuclidProp.div_0_l"·class="idref"·href="#ZEuclidProp.div_0_l"><span·class="id"·title="lemma">div_0_l</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:46"·class="idref"·href="#a:46"><span·class="id"·title="binder">a</span></a>,·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#a:46"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#9cff58ff8ba6db8841aeeecf7f406093"><span·class="id"·title="notation">~=</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#834b5e404e0dbb1e40faaa41f94a70b2"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#a:46"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·0.<br/> | 252 | <span·class="id"·title="keyword">Lemma</span>·<a·id="ZEuclidProp.div_0_l"·class="idref"·href="#ZEuclidProp.div_0_l"><span·class="id"·title="lemma">div_0_l</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:46"·class="idref"·href="#a:46"><span·class="id"·title="binder">a</span></a>,·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#a:46"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#9cff58ff8ba6db8841aeeecf7f406093"><span·class="id"·title="notation">~=</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#834b5e404e0dbb1e40faaa41f94a70b2"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#a:46"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·0.<br/> |
Offset 278, 15 lines modified | Offset 278, 15 lines modified | ||
278 | <br/> | 278 | <br/> |
279 | <span·class="id"·title="keyword">Theorem</span>·<a·id="ZEuclidProp.div_unique_exact"·class="idref"·href="#ZEuclidProp.div_unique_exact"><span·class="id"·title="lemma">div_unique_exact</span></a>·<a·id="a:56"·class="idref"·href="#a:56"><span·class="id"·title="binder">a</span></a>·<a·id="b:57"·class="idref"·href="#b:57"><span·class="id"·title="binder">b</span></a>·<a·id="q:58"·class="idref"·href="#q:58"><span·class="id"·title="binder">q</span></a>:·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#b:57"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#9cff58ff8ba6db8841aeeecf7f406093"><span·class="id"·title="notation">~=</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#a:56"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#b:57"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#797430c1791311f6dff109b908d9a13c"><span·class="id"·title="notation">*</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#q:58"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#q:58"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#a:56"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#834b5e404e0dbb1e40faaa41f94a70b2"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#b:57"><span·class="id"·title="variable">b</span></a>.<br/> | 279 | <span·class="id"·title="keyword">Theorem</span>·<a·id="ZEuclidProp.div_unique_exact"·class="idref"·href="#ZEuclidProp.div_unique_exact"><span·class="id"·title="lemma">div_unique_exact</span></a>·<a·id="a:56"·class="idref"·href="#a:56"><span·class="id"·title="binder">a</span></a>·<a·id="b:57"·class="idref"·href="#b:57"><span·class="id"·title="binder">b</span></a>·<a·id="q:58"·class="idref"·href="#q:58"><span·class="id"·title="binder">q</span></a>:·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#b:57"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#9cff58ff8ba6db8841aeeecf7f406093"><span·class="id"·title="notation">~=</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#a:56"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#b:57"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#797430c1791311f6dff109b908d9a13c"><span·class="id"·title="notation">*</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#q:58"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#q:58"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#a:56"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#834b5e404e0dbb1e40faaa41f94a70b2"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#b:57"><span·class="id"·title="variable">b</span></a>.<br/> |
280 | <br/> | 280 | <br/> |
281 | </div> | 281 | </div> |
282 | <div·class="doc"> | 282 | <div·class="doc"> |
283 | <a·id="lab | 283 | <a·id="lab1243"></a><h1·class="section">Order·results·about·mod·and·div</h1> |
284 | <div·class="paragraph">·</div> | 284 | <div·class="paragraph">·</div> |
285 | ·A·modulo·cannot·grow·beyond·its·starting·point.· | 285 | ·A·modulo·cannot·grow·beyond·its·starting·point.· |
286 | </div> | 286 | </div> |
287 | <div·class="code"> | 287 | <div·class="code"> |
Offset 407, 15 lines modified | Offset 407, 15 lines modified | ||
407 | <br/> | 407 | <br/> |
408 | <span·class="id"·title="keyword">Lemma</span>·<a·id="ZEuclidProp.div_le_compat_l"·class="idref"·href="#ZEuclidProp.div_le_compat_l"><span·class="id"·title="lemma">div_le_compat_l</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="p:91"·class="idref"·href="#p:91"><span·class="id"·title="binder">p</span></a>·<a·id="q:92"·class="idref"·href="#q:92"><span·class="id"·title="binder">q</span></a>·<a·id="r:93"·class="idref"·href="#r:93"><span·class="id"·title="binder">r</span></a>,·0<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#p:91"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0<a·class="idref"·href="Coq.Structures.Orders.html#8c602530c59c13bd8ba993c0e201cbd3"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#q:92"><span·class="id"·title="variable">q</span></a><a·class="idref"·href="Coq.Structures.Orders.html#8c602530c59c13bd8ba993c0e201cbd3"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#r:93"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#p:91"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#834b5e404e0dbb1e40faaa41f94a70b2"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#r:93"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#p:91"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#834b5e404e0dbb1e40faaa41f94a70b2"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#q:92"><span·class="id"·title="variable">q</span></a>.<br/> | 408 | <span·class="id"·title="keyword">Lemma</span>·<a·id="ZEuclidProp.div_le_compat_l"·class="idref"·href="#ZEuclidProp.div_le_compat_l"><span·class="id"·title="lemma">div_le_compat_l</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="p:91"·class="idref"·href="#p:91"><span·class="id"·title="binder">p</span></a>·<a·id="q:92"·class="idref"·href="#q:92"><span·class="id"·title="binder">q</span></a>·<a·id="r:93"·class="idref"·href="#r:93"><span·class="id"·title="binder">r</span></a>,·0<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#p:91"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0<a·class="idref"·href="Coq.Structures.Orders.html#8c602530c59c13bd8ba993c0e201cbd3"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#q:92"><span·class="id"·title="variable">q</span></a><a·class="idref"·href="Coq.Structures.Orders.html#8c602530c59c13bd8ba993c0e201cbd3"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#r:93"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#p:91"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#834b5e404e0dbb1e40faaa41f94a70b2"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#r:93"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#p:91"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#834b5e404e0dbb1e40faaa41f94a70b2"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#q:92"><span·class="id"·title="variable">q</span></a>.<br/> |
409 | · | 409 | · |
410 | <br/> | 410 | <br/> |
411 | </div> | 411 | </div> |
412 | <div·class="doc"> | 412 | <div·class="doc"> |
413 | <a·id="lab | 413 | <a·id="lab1244"></a><h1·class="section">Relations·between·usual·operations·and·mod·and·div</h1> |
414 | </div> | 414 | </div> |
415 | <div·class="code"> | 415 | <div·class="code"> |
416 | <br/> | 416 | <br/> |
417 | <span·class="id"·title="keyword">Lemma</span>·<a·id="ZEuclidProp.mod_add"·class="idref"·href="#ZEuclidProp.mod_add"><span·class="id"·title="lemma">mod_add</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="a:94"·class="idref"·href="#a:94"><span·class="id"·title="binder">a</span></a>·<a·id="b:95"·class="idref"·href="#b:95"><span·class="id"·title="binder">b</span></a>·<a·id="c:96"·class="idref"·href="#c:96"><span·class="id"·title="binder">c</span></a>,·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#c:96"><span·class="id"·title="variable">c</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#9cff58ff8ba6db8841aeeecf7f406093"><span·class="id"·title="notation">~=</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 417 | <span·class="id"·title="keyword">Lemma</span>·<a·id="ZEuclidProp.mod_add"·class="idref"·href="#ZEuclidProp.mod_add"><span·class="id"·title="lemma">mod_add</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="a:94"·class="idref"·href="#a:94"><span·class="id"·title="binder">a</span></a>·<a·id="b:95"·class="idref"·href="#b:95"><span·class="id"·title="binder">b</span></a>·<a·id="c:96"·class="idref"·href="#c:96"><span·class="id"·title="binder">c</span></a>,·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#c:96"><span·class="id"·title="variable">c</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#9cff58ff8ba6db8841aeeecf7f406093"><span·class="id"·title="notation">~=</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
418 | <a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#ZEuclidProp.::euclid:x_'mod'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#a:94"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#c2e8aaaa0a712025cad3c7b3ed5aeff2"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#b:95"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#797430c1791311f6dff109b908d9a13c"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#c:96"><span·class="id"·title="variable">c</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#ZEuclidProp.::euclid:x_'mod'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#ZEuclidProp.::euclid:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#c:96"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#a:94"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#ZEuclidProp.::euclid:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#c:96"><span·class="id"·title="variable">c</span></a>.<br/> | 418 | <a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#ZEuclidProp.::euclid:x_'mod'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#a:94"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#c2e8aaaa0a712025cad3c7b3ed5aeff2"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#b:95"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#797430c1791311f6dff109b908d9a13c"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#c:96"><span·class="id"·title="variable">c</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#ZEuclidProp.::euclid:x_'mod'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#ZEuclidProp.::euclid:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#c:96"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#a:94"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#ZEuclidProp.::euclid:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivEucl.html#c:96"><span·class="id"·title="variable">c</span></a>.<br/> |
Offset 48, 15 lines modified | Offset 48, 15 lines modified | ||
48 | <br/> | 48 | <br/> |
49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZAxioms.html#"><span·class="id"·title="library">ZAxioms</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZMulOrder.html#"><span·class="id"·title="library">ZMulOrder</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZSgnAbs.html#"><span·class="id"·title="library">ZSgnAbs</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#"><span·class="id"·title="library">NZDiv</span></a>.<br/> | 49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZAxioms.html#"><span·class="id"·title="library">ZAxioms</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZMulOrder.html#"><span·class="id"·title="library">ZMulOrder</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZSgnAbs.html#"><span·class="id"·title="library">ZSgnAbs</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#"><span·class="id"·title="library">NZDiv</span></a>.<br/> |
50 | <br/> | 50 | <br/> |
51 | </div> | 51 | </div> |
52 | <div·class="doc"> | 52 | <div·class="doc"> |
53 | <a·id="lab | 53 | <a·id="lab1230"></a><h1·class="section">Euclidean·Division·for·integers·(Floor·convention)</h1> |
54 | <div·class="paragraph">·</div> | 54 | <div·class="paragraph">·</div> |
55 | ····We·use·here·the·convention·known·as·Floor,·or·Round-Toward-Bottom, | 55 | ····We·use·here·the·convention·known·as·Floor,·or·Round-Toward-Bottom, |
56 | ····where·<span·class="inlinecode"><span·class="id"·title="var">a</span>/<span·class="id"·title="var">b</span></span>·is·the·closest·integer·below·the·exact·fraction. | 56 | ····where·<span·class="inlinecode"><span·class="id"·title="var">a</span>/<span·class="id"·title="var">b</span></span>·is·the·closest·integer·below·the·exact·fraction. |
57 | ····It·can·be·summarized·by: | 57 | ····It·can·be·summarized·by: |
Offset 280, 15 lines modified | Offset 280, 15 lines modified | ||
280 | <br/> | 280 | <br/> |
281 | <span·class="id"·title="keyword">Theorem</span>·<a·id="ZDivProp.mod_small"·class="idref"·href="#ZDivProp.mod_small"><span·class="id"·title="lemma">mod_small</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:68"·class="idref"·href="#a:68"><span·class="id"·title="binder">a</span></a>·<a·id="b:69"·class="idref"·href="#b:69"><span·class="id"·title="binder">b</span></a>,·0<a·class="idref"·href="Coq.Structures.Orders.html#62fc7208ddb2fa310e7ae9ec2d794c92"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#a:68"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Structures.Orders.html#62fc7208ddb2fa310e7ae9ec2d794c92"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#b:69"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#a:68"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#b:69"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#a:68"><span·class="id"·title="variable">a</span></a>.<br/> | 281 | <span·class="id"·title="keyword">Theorem</span>·<a·id="ZDivProp.mod_small"·class="idref"·href="#ZDivProp.mod_small"><span·class="id"·title="lemma">mod_small</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:68"·class="idref"·href="#a:68"><span·class="id"·title="binder">a</span></a>·<a·id="b:69"·class="idref"·href="#b:69"><span·class="id"·title="binder">b</span></a>,·0<a·class="idref"·href="Coq.Structures.Orders.html#62fc7208ddb2fa310e7ae9ec2d794c92"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#a:68"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Structures.Orders.html#62fc7208ddb2fa310e7ae9ec2d794c92"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#b:69"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#a:68"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#b:69"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#a:68"><span·class="id"·title="variable">a</span></a>.<br/> |
282 | · | 282 | · |
283 | <br/> | 283 | <br/> |
284 | </div> | 284 | </div> |
285 | <div·class="doc"> | 285 | <div·class="doc"> |
286 | <a·id="lab | 286 | <a·id="lab1231"></a><h1·class="section">Basic·values·of·divisions·and·modulo.</h1> |
287 | </div> | 287 | </div> |
288 | <div·class="code"> | 288 | <div·class="code"> |
289 | <br/> | 289 | <br/> |
290 | <span·class="id"·title="keyword">Lemma</span>·<a·id="ZDivProp.div_0_l"·class="idref"·href="#ZDivProp.div_0_l"><span·class="id"·title="lemma">div_0_l</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:70"·class="idref"·href="#a:70"><span·class="id"·title="binder">a</span></a>,·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#a:70"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#9cff58ff8ba6db8841aeeecf7f406093"><span·class="id"·title="notation">~=</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#553b1e0c6dfeea0fb5d9a4a0a1c7f719"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#a:70"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·0.<br/> | 290 | <span·class="id"·title="keyword">Lemma</span>·<a·id="ZDivProp.div_0_l"·class="idref"·href="#ZDivProp.div_0_l"><span·class="id"·title="lemma">div_0_l</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:70"·class="idref"·href="#a:70"><span·class="id"·title="binder">a</span></a>,·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#a:70"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#9cff58ff8ba6db8841aeeecf7f406093"><span·class="id"·title="notation">~=</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#553b1e0c6dfeea0fb5d9a4a0a1c7f719"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#a:70"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·0.<br/> |
Offset 316, 15 lines modified | Offset 316, 15 lines modified | ||
316 | <br/> | 316 | <br/> |
317 | <span·class="id"·title="keyword">Theorem</span>·<a·id="ZDivProp.div_unique_exact"·class="idref"·href="#ZDivProp.div_unique_exact"><span·class="id"·title="lemma">div_unique_exact</span></a>·<a·id="a:80"·class="idref"·href="#a:80"><span·class="id"·title="binder">a</span></a>·<a·id="b:81"·class="idref"·href="#b:81"><span·class="id"·title="binder">b</span></a>·<a·id="q:82"·class="idref"·href="#q:82"><span·class="id"·title="binder">q</span></a>:·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#b:81"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#9cff58ff8ba6db8841aeeecf7f406093"><span·class="id"·title="notation">~=</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#a:80"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#b:81"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#797430c1791311f6dff109b908d9a13c"><span·class="id"·title="notation">*</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#q:82"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#q:82"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#a:80"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#553b1e0c6dfeea0fb5d9a4a0a1c7f719"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#b:81"><span·class="id"·title="variable">b</span></a>.<br/> | 317 | <span·class="id"·title="keyword">Theorem</span>·<a·id="ZDivProp.div_unique_exact"·class="idref"·href="#ZDivProp.div_unique_exact"><span·class="id"·title="lemma">div_unique_exact</span></a>·<a·id="a:80"·class="idref"·href="#a:80"><span·class="id"·title="binder">a</span></a>·<a·id="b:81"·class="idref"·href="#b:81"><span·class="id"·title="binder">b</span></a>·<a·id="q:82"·class="idref"·href="#q:82"><span·class="id"·title="binder">q</span></a>:·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#b:81"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#9cff58ff8ba6db8841aeeecf7f406093"><span·class="id"·title="notation">~=</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#a:80"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#b:81"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#797430c1791311f6dff109b908d9a13c"><span·class="id"·title="notation">*</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#q:82"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#q:82"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#a:80"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#553b1e0c6dfeea0fb5d9a4a0a1c7f719"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#b:81"><span·class="id"·title="variable">b</span></a>.<br/> |
318 | <br/> | 318 | <br/> |
319 | </div> | 319 | </div> |
320 | <div·class="doc"> | 320 | <div·class="doc"> |
321 | <a·id="lab | 321 | <a·id="lab1232"></a><h1·class="section">Order·results·about·mod·and·div</h1> |
322 | <div·class="paragraph">·</div> | 322 | <div·class="paragraph">·</div> |
323 | ·A·modulo·cannot·grow·beyond·its·starting·point.· | 323 | ·A·modulo·cannot·grow·beyond·its·starting·point.· |
324 | </div> | 324 | </div> |
325 | <div·class="code"> | 325 | <div·class="code"> |
Offset 453, 15 lines modified | Offset 453, 15 lines modified | ||
453 | <br/> | 453 | <br/> |
454 | <span·class="id"·title="keyword">Lemma</span>·<a·id="ZDivProp.div_le_compat_l"·class="idref"·href="#ZDivProp.div_le_compat_l"><span·class="id"·title="lemma">div_le_compat_l</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="p:117"·class="idref"·href="#p:117"><span·class="id"·title="binder">p</span></a>·<a·id="q:118"·class="idref"·href="#q:118"><span·class="id"·title="binder">q</span></a>·<a·id="r:119"·class="idref"·href="#r:119"><span·class="id"·title="binder">r</span></a>,·0<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#p:117"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0<a·class="idref"·href="Coq.Structures.Orders.html#8c602530c59c13bd8ba993c0e201cbd3"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#q:118"><span·class="id"·title="variable">q</span></a><a·class="idref"·href="Coq.Structures.Orders.html#8c602530c59c13bd8ba993c0e201cbd3"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#r:119"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#p:117"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#553b1e0c6dfeea0fb5d9a4a0a1c7f719"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#r:119"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#p:117"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#553b1e0c6dfeea0fb5d9a4a0a1c7f719"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#q:118"><span·class="id"·title="variable">q</span></a>.<br/> | 454 | <span·class="id"·title="keyword">Lemma</span>·<a·id="ZDivProp.div_le_compat_l"·class="idref"·href="#ZDivProp.div_le_compat_l"><span·class="id"·title="lemma">div_le_compat_l</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="p:117"·class="idref"·href="#p:117"><span·class="id"·title="binder">p</span></a>·<a·id="q:118"·class="idref"·href="#q:118"><span·class="id"·title="binder">q</span></a>·<a·id="r:119"·class="idref"·href="#r:119"><span·class="id"·title="binder">r</span></a>,·0<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#p:117"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0<a·class="idref"·href="Coq.Structures.Orders.html#8c602530c59c13bd8ba993c0e201cbd3"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#q:118"><span·class="id"·title="variable">q</span></a><a·class="idref"·href="Coq.Structures.Orders.html#8c602530c59c13bd8ba993c0e201cbd3"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#r:119"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#p:117"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#553b1e0c6dfeea0fb5d9a4a0a1c7f719"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#r:119"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#p:117"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#553b1e0c6dfeea0fb5d9a4a0a1c7f719"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#q:118"><span·class="id"·title="variable">q</span></a>.<br/> |
455 | · | 455 | · |
456 | <br/> | 456 | <br/> |
457 | </div> | 457 | </div> |
458 | <div·class="doc"> | 458 | <div·class="doc"> |
459 | <a·id="lab | 459 | <a·id="lab1233"></a><h1·class="section">Relations·between·usual·operations·and·mod·and·div</h1> |
460 | </div> | 460 | </div> |
461 | <div·class="code"> | 461 | <div·class="code"> |
462 | <br/> | 462 | <br/> |
463 | <span·class="id"·title="keyword">Lemma</span>·<a·id="ZDivProp.mod_add"·class="idref"·href="#ZDivProp.mod_add"><span·class="id"·title="lemma">mod_add</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="a:120"·class="idref"·href="#a:120"><span·class="id"·title="binder">a</span></a>·<a·id="b:121"·class="idref"·href="#b:121"><span·class="id"·title="binder">b</span></a>·<a·id="c:122"·class="idref"·href="#c:122"><span·class="id"·title="binder">c</span></a>,·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#c:122"><span·class="id"·title="variable">c</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#9cff58ff8ba6db8841aeeecf7f406093"><span·class="id"·title="notation">~=</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 463 | <span·class="id"·title="keyword">Lemma</span>·<a·id="ZDivProp.mod_add"·class="idref"·href="#ZDivProp.mod_add"><span·class="id"·title="lemma">mod_add</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="a:120"·class="idref"·href="#a:120"><span·class="id"·title="binder">a</span></a>·<a·id="b:121"·class="idref"·href="#b:121"><span·class="id"·title="binder">b</span></a>·<a·id="c:122"·class="idref"·href="#c:122"><span·class="id"·title="binder">c</span></a>,·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#c:122"><span·class="id"·title="variable">c</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#9cff58ff8ba6db8841aeeecf7f406093"><span·class="id"·title="notation">~=</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
464 | <a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#a:120"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#c2e8aaaa0a712025cad3c7b3ed5aeff2"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#b:121"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#797430c1791311f6dff109b908d9a13c"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#c:122"><span·class="id"·title="variable">c</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#c:122"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#a:120"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#c:122"><span·class="id"·title="variable">c</span></a>.<br/> | 464 | <a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#a:120"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#c2e8aaaa0a712025cad3c7b3ed5aeff2"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#b:121"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#797430c1791311f6dff109b908d9a13c"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#c:122"><span·class="id"·title="variable">c</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#c:122"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#a:120"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#c:122"><span·class="id"·title="variable">c</span></a>.<br/> |
Offset 48, 15 lines modified | Offset 48, 15 lines modified | ||
48 | <br/> | 48 | <br/> |
49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZAxioms.html#"><span·class="id"·title="library">ZAxioms</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZMulOrder.html#"><span·class="id"·title="library">ZMulOrder</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZSgnAbs.html#"><span·class="id"·title="library">ZSgnAbs</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#"><span·class="id"·title="library">NZDiv</span></a>.<br/> | 49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZAxioms.html#"><span·class="id"·title="library">ZAxioms</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZMulOrder.html#"><span·class="id"·title="library">ZMulOrder</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZSgnAbs.html#"><span·class="id"·title="library">ZSgnAbs</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#"><span·class="id"·title="library">NZDiv</span></a>.<br/> |
50 | <br/> | 50 | <br/> |
51 | </div> | 51 | </div> |
52 | <div·class="doc"> | 52 | <div·class="doc"> |
53 | <a·id="lab | 53 | <a·id="lab1234"></a><h1·class="section">Euclidean·Division·for·integers·(Trunc·convention)</h1> |
54 | <div·class="paragraph">·</div> | 54 | <div·class="paragraph">·</div> |
55 | ····We·use·here·the·convention·known·as·Trunc,·or·Round-Toward-Zero, | 55 | ····We·use·here·the·convention·known·as·Trunc,·or·Round-Toward-Zero, |
56 | ····where·<span·class="inlinecode"><span·class="id"·title="var">a</span>/<span·class="id"·title="var">b</span></span>·is·the·integer·with·the·largest·absolute·value·to | 56 | ····where·<span·class="inlinecode"><span·class="id"·title="var">a</span>/<span·class="id"·title="var">b</span></span>·is·the·integer·with·the·largest·absolute·value·to |
57 | ····be·between·zero·and·the·exact·fraction.·It·can·be·summarized·by: | 57 | ····be·between·zero·and·the·exact·fraction.·It·can·be·summarized·by: |
Offset 205, 15 lines modified | Offset 205, 15 lines modified | ||
205 | <br/> | 205 | <br/> |
206 | <span·class="id"·title="keyword">Theorem</span>·<a·id="ZQuotProp.rem_small"·class="idref"·href="#ZQuotProp.rem_small"><span·class="id"·title="lemma">rem_small</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:28"·class="idref"·href="#a:28"><span·class="id"·title="binder">a</span></a>·<a·id="b:29"·class="idref"·href="#b:29"><span·class="id"·title="binder">b</span></a>,·0<a·class="idref"·href="Coq.Structures.Orders.html#62fc7208ddb2fa310e7ae9ec2d794c92"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#a:28"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Structures.Orders.html#62fc7208ddb2fa310e7ae9ec2d794c92"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#b:29"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#a:28"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZAxioms.html#QuotRemNotation.:::x_'rem'_x"><span·class="id"·title="notation">rem</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#b:29"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#a:28"><span·class="id"·title="variable">a</span></a>.<br/> | 206 | <span·class="id"·title="keyword">Theorem</span>·<a·id="ZQuotProp.rem_small"·class="idref"·href="#ZQuotProp.rem_small"><span·class="id"·title="lemma">rem_small</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:28"·class="idref"·href="#a:28"><span·class="id"·title="binder">a</span></a>·<a·id="b:29"·class="idref"·href="#b:29"><span·class="id"·title="binder">b</span></a>,·0<a·class="idref"·href="Coq.Structures.Orders.html#62fc7208ddb2fa310e7ae9ec2d794c92"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#a:28"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Structures.Orders.html#62fc7208ddb2fa310e7ae9ec2d794c92"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#b:29"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#a:28"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZAxioms.html#QuotRemNotation.:::x_'rem'_x"><span·class="id"·title="notation">rem</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#b:29"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#a:28"><span·class="id"·title="variable">a</span></a>.<br/> |
207 | · | 207 | · |
208 | <br/> | 208 | <br/> |
209 | </div> | 209 | </div> |
210 | <div·class="doc"> | 210 | <div·class="doc"> |
211 | <a·id="lab | 211 | <a·id="lab1235"></a><h1·class="section">Basic·values·of·divisions·and·modulo.</h1> |
212 | </div> | 212 | </div> |
213 | <div·class="code"> | 213 | <div·class="code"> |
214 | <br/> | 214 | <br/> |
215 | <span·class="id"·title="keyword">Lemma</span>·<a·id="ZQuotProp.quot_0_l"·class="idref"·href="#ZQuotProp.quot_0_l"><span·class="id"·title="lemma">quot_0_l</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:30"·class="idref"·href="#a:30"><span·class="id"·title="binder">a</span></a>,·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#a:30"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#9cff58ff8ba6db8841aeeecf7f406093"><span·class="id"·title="notation">~=</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZAxioms.html#0ac21173a88cb3f0b2c78e8e3159e487"><span·class="id"·title="notation">÷</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#a:30"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·0.<br/> | 215 | <span·class="id"·title="keyword">Lemma</span>·<a·id="ZQuotProp.quot_0_l"·class="idref"·href="#ZQuotProp.quot_0_l"><span·class="id"·title="lemma">quot_0_l</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:30"·class="idref"·href="#a:30"><span·class="id"·title="binder">a</span></a>,·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#a:30"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#9cff58ff8ba6db8841aeeecf7f406093"><span·class="id"·title="notation">~=</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZAxioms.html#0ac21173a88cb3f0b2c78e8e3159e487"><span·class="id"·title="notation">÷</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#a:30"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·0.<br/> |
Offset 303, 15 lines modified | Offset 303, 15 lines modified | ||
303 | <span·class="id"·title="keyword">Lemma</span>·<a·id="ZQuotProp.rem_bound_abs"·class="idref"·href="#ZQuotProp.rem_bound_abs"><span·class="id"·title="lemma">rem_bound_abs</span></a>·:<br/> | 303 | <span·class="id"·title="keyword">Lemma</span>·<a·id="ZQuotProp.rem_bound_abs"·class="idref"·href="#ZQuotProp.rem_bound_abs"><span·class="id"·title="lemma">rem_bound_abs</span></a>·:<br/> |
304 | <span·class="id"·title="keyword">forall</span>·<a·id="a:65"·class="idref"·href="#a:65"><span·class="id"·title="binder">a</span></a>·<a·id="b:66"·class="idref"·href="#b:66"><span·class="id"·title="binder">b</span></a>,·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#b:66"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#9cff58ff8ba6db8841aeeecf7f406093"><span·class="id"·title="notation">~=</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#A.abs"><span·class="id"·title="axiom">abs</span></a>·(<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#a:65"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZAxioms.html#QuotRemNotation.:::x_'rem'_x"><span·class="id"·title="notation">rem</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#b:66"><span·class="id"·title="variable">b</span></a>)·<a·class="idref"·href="Coq.Structures.Orders.html#LtNotation.:::x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#A.abs"><span·class="id"·title="axiom">abs</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#b:66"><span·class="id"·title="variable">b</span></a>.<br/> | 304 | <span·class="id"·title="keyword">forall</span>·<a·id="a:65"·class="idref"·href="#a:65"><span·class="id"·title="binder">a</span></a>·<a·id="b:66"·class="idref"·href="#b:66"><span·class="id"·title="binder">b</span></a>,·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#b:66"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#9cff58ff8ba6db8841aeeecf7f406093"><span·class="id"·title="notation">~=</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#A.abs"><span·class="id"·title="axiom">abs</span></a>·(<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#a:65"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZAxioms.html#QuotRemNotation.:::x_'rem'_x"><span·class="id"·title="notation">rem</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#b:66"><span·class="id"·title="variable">b</span></a>)·<a·class="idref"·href="Coq.Structures.Orders.html#LtNotation.:::x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#A.abs"><span·class="id"·title="axiom">abs</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#b:66"><span·class="id"·title="variable">b</span></a>.<br/> |
305 | <br/> | 305 | <br/> |
306 | </div> | 306 | </div> |
307 | <div·class="doc"> | 307 | <div·class="doc"> |
308 | <a·id="lab | 308 | <a·id="lab1236"></a><h1·class="section">Order·results·about·rem·and·quot</h1> |
309 | <div·class="paragraph">·</div> | 309 | <div·class="paragraph">·</div> |
310 | ·A·modulo·cannot·grow·beyond·its·starting·point.· | 310 | ·A·modulo·cannot·grow·beyond·its·starting·point.· |
311 | </div> | 311 | </div> |
312 | <div·class="code"> | 312 | <div·class="code"> |
Offset 438, 15 lines modified | Offset 438, 15 lines modified | ||
438 | <br/> | 438 | <br/> |
439 | <span·class="id"·title="keyword">Lemma</span>·<a·id="ZQuotProp.quot_le_compat_l"·class="idref"·href="#ZQuotProp.quot_le_compat_l"><span·class="id"·title="lemma">quot_le_compat_l</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="p:105"·class="idref"·href="#p:105"><span·class="id"·title="binder">p</span></a>·<a·id="q:106"·class="idref"·href="#q:106"><span·class="id"·title="binder">q</span></a>·<a·id="r:107"·class="idref"·href="#r:107"><span·class="id"·title="binder">r</span></a>,·0<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#p:105"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0<a·class="idref"·href="Coq.Structures.Orders.html#8c602530c59c13bd8ba993c0e201cbd3"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#q:106"><span·class="id"·title="variable">q</span></a><a·class="idref"·href="Coq.Structures.Orders.html#8c602530c59c13bd8ba993c0e201cbd3"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#r:107"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#p:105"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZAxioms.html#0ac21173a88cb3f0b2c78e8e3159e487"><span·class="id"·title="notation">÷</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#r:107"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#p:105"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZAxioms.html#0ac21173a88cb3f0b2c78e8e3159e487"><span·class="id"·title="notation">÷</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#q:106"><span·class="id"·title="variable">q</span></a>.<br/> | 439 | <span·class="id"·title="keyword">Lemma</span>·<a·id="ZQuotProp.quot_le_compat_l"·class="idref"·href="#ZQuotProp.quot_le_compat_l"><span·class="id"·title="lemma">quot_le_compat_l</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="p:105"·class="idref"·href="#p:105"><span·class="id"·title="binder">p</span></a>·<a·id="q:106"·class="idref"·href="#q:106"><span·class="id"·title="binder">q</span></a>·<a·id="r:107"·class="idref"·href="#r:107"><span·class="id"·title="binder">r</span></a>,·0<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#p:105"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0<a·class="idref"·href="Coq.Structures.Orders.html#8c602530c59c13bd8ba993c0e201cbd3"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#q:106"><span·class="id"·title="variable">q</span></a><a·class="idref"·href="Coq.Structures.Orders.html#8c602530c59c13bd8ba993c0e201cbd3"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#r:107"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#p:105"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZAxioms.html#0ac21173a88cb3f0b2c78e8e3159e487"><span·class="id"·title="notation">÷</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#r:107"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#p:105"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZAxioms.html#0ac21173a88cb3f0b2c78e8e3159e487"><span·class="id"·title="notation">÷</span></a><a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#q:106"><span·class="id"·title="variable">q</span></a>.<br/> |
440 | · | 440 | · |
441 | <br/> | 441 | <br/> |
442 | </div> | 442 | </div> |
443 | <div·class="doc"> | 443 | <div·class="doc"> |
444 | <a·id="lab | 444 | <a·id="lab1237"></a><h1·class="section">Relations·between·usual·operations·and·rem·and·quot</h1> |
445 | <div·class="paragraph">·</div> | 445 | <div·class="paragraph">·</div> |
446 | ·Unlike·with·other·division·conventions,·some·results·here·aren't | 446 | ·Unlike·with·other·division·conventions,·some·results·here·aren't |
447 | ····always·valid,·and·need·to·be·restricted.·For·instance | 447 | ····always·valid,·and·need·to·be·restricted.·For·instance |
448 | ····<span·class="inlinecode">(<span·class="id"·title="var">a</span>+<span·class="id"·title="var">b</span>*<span·class="id"·title="var">c</span>)</span>·<span·class="inlinecode"><span·class="id"·title="var">rem</span></span>·<span·class="inlinecode"><span·class="id"·title="var">c</span></span>·<span·class="inlinecode"><></span>·<span·class="inlinecode"><span·class="id"·title="var">a</span></span>·<span·class="inlinecode"><span·class="id"·title="var">rem</span></span>·<span·class="inlinecode"><span·class="id"·title="var">c</span></span>·for·<span·class="inlinecode"><span·class="id"·title="var">a</span>=9,<span·class="id"·title="var">b</span>=-5,<span·class="id"·title="var">c</span>=2</span>· | 448 | ····<span·class="inlinecode">(<span·class="id"·title="var">a</span>+<span·class="id"·title="var">b</span>*<span·class="id"·title="var">c</span>)</span>·<span·class="inlinecode"><span·class="id"·title="var">rem</span></span>·<span·class="inlinecode"><span·class="id"·title="var">c</span></span>·<span·class="inlinecode"><></span>·<span·class="inlinecode"><span·class="id"·title="var">a</span></span>·<span·class="inlinecode"><span·class="id"·title="var">rem</span></span>·<span·class="inlinecode"><span·class="id"·title="var">c</span></span>·for·<span·class="inlinecode"><span·class="id"·title="var">a</span>=9,<span·class="id"·title="var">b</span>=-5,<span·class="id"·title="var">c</span>=2</span>· |
449 | </div> | 449 | </div> |
Offset 48, 15 lines modified | Offset 48, 15 lines modified | ||
48 | <br/> | 48 | <br/> |
49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZAxioms.html#"><span·class="id"·title="library">ZAxioms</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZMulOrder.html#"><span·class="id"·title="library">ZMulOrder</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZSgnAbs.html#"><span·class="id"·title="library">ZSgnAbs</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZGcd.html#"><span·class="id"·title="library">ZGcd</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#"><span·class="id"·title="library">ZDivTrunc</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#"><span·class="id"·title="library">ZDivFloor</span></a>.<br/> | 49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZAxioms.html#"><span·class="id"·title="library">ZAxioms</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZMulOrder.html#"><span·class="id"·title="library">ZMulOrder</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZSgnAbs.html#"><span·class="id"·title="library">ZSgnAbs</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZGcd.html#"><span·class="id"·title="library">ZGcd</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivTrunc.html#"><span·class="id"·title="library">ZDivTrunc</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZDivFloor.html#"><span·class="id"·title="library">ZDivFloor</span></a>.<br/> |
50 | <br/> | 50 | <br/> |
51 | </div> | 51 | </div> |
52 | <div·class="doc"> | 52 | <div·class="doc"> |
53 | <a·id="lab | 53 | <a·id="lab1240"></a><h1·class="section">Least·Common·Multiple</h1> |
54 | <div·class="paragraph">·</div> | 54 | <div·class="paragraph">·</div> |
55 | ·Unlike·other·functions·around,·we·will·define·lcm·below·instead·of | 55 | ·Unlike·other·functions·around,·we·will·define·lcm·below·instead·of |
56 | ··axiomatizing·it.·Indeed,·there·is·no·"prior·art"·about·lcm·in·the | 56 | ··axiomatizing·it.·Indeed,·there·is·no·"prior·art"·about·lcm·in·the |
57 | ··standard·library·to·be·compliant·with,·and·the·generic·definition | 57 | ··standard·library·to·be·compliant·with,·and·the·generic·definition |
58 | ··of·lcm·via·gcd·is·quite·reasonable. | 58 | ··of·lcm·via·gcd·is·quite·reasonable. |
Offset 48, 15 lines modified | Offset 48, 15 lines modified | ||
48 | <br/> | 48 | <br/> |
49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZAxioms.html#"><span·class="id"·title="library">ZAxioms</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZMulOrder.html#"><span·class="id"·title="library">ZMulOrder</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#"><span·class="id"·title="library">GenericMinMax</span></a>.<br/> | 49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZAxioms.html#"><span·class="id"·title="library">ZAxioms</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZMulOrder.html#"><span·class="id"·title="library">ZMulOrder</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#"><span·class="id"·title="library">GenericMinMax</span></a>.<br/> |
50 | <br/> | 50 | <br/> |
51 | </div> | 51 | </div> |
52 | <div·class="doc"> | 52 | <div·class="doc"> |
53 | <a·id="lab | 53 | <a·id="lab1238"></a><h1·class="section">Properties·of·minimum·and·maximum·specific·to·integer·numbers</h1> |
54 | </div> | 54 | </div> |
55 | <div·class="code"> | 55 | <div·class="code"> |
56 | <br/> | 56 | <br/> |
57 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="ZMaxMinProp"·class="idref"·href="#ZMaxMinProp"><span·class="id"·title="module">ZMaxMinProp</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">Z</span>·:·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZAxioms.html#ZAxiomsMiniSig'"><span·class="id"·title="module">ZAxiomsMiniSig'</span></a>).<br/> | 57 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="ZMaxMinProp"·class="idref"·href="#ZMaxMinProp"><span·class="id"·title="module">ZMaxMinProp</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">Z</span>·:·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZAxioms.html#ZAxiomsMiniSig'"><span·class="id"·title="module">ZAxiomsMiniSig'</span></a>).<br/> |
58 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZMulOrder.html#ZMulOrderProp"><span·class="id"·title="module">ZMulOrderProp</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZMaxMin.html#Z"><span·class="id"·title="module">Z</span></a>.<br/> | 58 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZMulOrder.html#ZMulOrderProp"><span·class="id"·title="module">ZMulOrderProp</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZMaxMin.html#Z"><span·class="id"·title="module">Z</span></a>.<br/> |
Offset 67, 15 lines modified | Offset 67, 15 lines modified | ||
67 | <:·<a·class="idref"·href="Coq.Structures.Equalities.html#UsualDecidableTypeFull"><span·class="id"·title="module">UsualDecidableTypeFull</span></a><br/> | 67 | <:·<a·class="idref"·href="Coq.Structures.Equalities.html#UsualDecidableTypeFull"><span·class="id"·title="module">UsualDecidableTypeFull</span></a><br/> |
68 | :=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z"><span·class="id"·title="module">BinInt.Z</span></a>.<br/> | 68 | :=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z"><span·class="id"·title="module">BinInt.Z</span></a>.<br/> |
69 | <br/> | 69 | <br/> |
70 | </div> | 70 | </div> |
71 | <div·class="doc"> | 71 | <div·class="doc"> |
72 | <a·id="lab | 72 | <a·id="lab1229"></a><h1·class="section">An·<span·class="inlinecode"><span·class="id"·title="var">order</span></span>·tactic·for·integers</h1> |
73 | </div> | 73 | </div> |
74 | <div·class="code"> | 74 | <div·class="code"> |
75 | <br/> | 75 | <br/> |
76 | <span·class="id"·title="keyword">Ltac</span>·<span·class="id"·title="var">z_order</span>·:=·<span·class="id"·title="var">Z.order</span>.<br/> | 76 | <span·class="id"·title="keyword">Ltac</span>·<span·class="id"·title="var">z_order</span>·:=·<span·class="id"·title="var">Z.order</span>.<br/> |
Offset 53, 15 lines modified | Offset 53, 15 lines modified | ||
53 | <br/> | 53 | <br/> |
54 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Lists.List.html#"><span·class="id"·title="library">List</span></a>.<br/> | 54 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Lists.List.html#"><span·class="id"·title="library">List</span></a>.<br/> |
55 | <br/> | 55 | <br/> |
56 | </div> | 56 | </div> |
57 | <div·class="doc"> | 57 | <div·class="doc"> |
58 | <a·id="lab | 58 | <a·id="lab1221"></a><h1·class="section">Generic·dependently-typed·operators·about·<span·class="inlinecode"><span·class="id"·title="var">n</span></span>-ary·functions</h1> |
59 | <div·class="paragraph">·</div> | 59 | <div·class="paragraph">·</div> |
60 | ·The·type·of·<span·class="inlinecode"><span·class="id"·title="var">n</span></span>-ary·function:·<span·class="inlinecode"><span·class="id"·title="var">nfun</span></span>·<span·class="inlinecode"><span·class="id"·title="var">A</span></span>·<span·class="inlinecode"><span·class="id"·title="var">n</span></span>·<span·class="inlinecode"><span·class="id"·title="var">B</span></span>·is | 60 | ·The·type·of·<span·class="inlinecode"><span·class="id"·title="var">n</span></span>-ary·function:·<span·class="inlinecode"><span·class="id"·title="var">nfun</span></span>·<span·class="inlinecode"><span·class="id"·title="var">A</span></span>·<span·class="inlinecode"><span·class="id"·title="var">n</span></span>·<span·class="inlinecode"><span·class="id"·title="var">B</span></span>·is |
61 | ····<span·class="inlinecode"><span·class="id"·title="var">A</span></span>·<span·class="inlinecode">-></span>·<span·class="inlinecode">...</span>·<span·class="inlinecode">-></span>·<span·class="inlinecode"><span·class="id"·title="var">A</span></span>·<span·class="inlinecode">-></span>·<span·class="inlinecode"><span·class="id"·title="var">B</span></span>·with·<span·class="inlinecode"><span·class="id"·title="var">n</span></span>·occurrences·of·<span·class="inlinecode"><span·class="id"·title="var">A</span></span>·in·this·type.· | 61 | ····<span·class="inlinecode"><span·class="id"·title="var">A</span></span>·<span·class="inlinecode">-></span>·<span·class="inlinecode">...</span>·<span·class="inlinecode">-></span>·<span·class="inlinecode"><span·class="id"·title="var">A</span></span>·<span·class="inlinecode">-></span>·<span·class="inlinecode"><span·class="id"·title="var">B</span></span>·with·<span·class="inlinecode"><span·class="id"·title="var">n</span></span>·occurrences·of·<span·class="inlinecode"><span·class="id"·title="var">A</span></span>·in·this·type.· |
62 | </div> | 62 | </div> |
63 | <div·class="code"> | 63 | <div·class="code"> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1208"></a><h1·class="section">Some·properties·of·the·addition·for·modules·implementing·<span·class="inlinecode"><span·class="id"·title="var">NZBasicFunsSig'</span></span></h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | This·file·defines·the·<span·class="inlinecode"><span·class="id"·title="var">NZAddProp</span></span>·functor·type.·This·functor·type·is·meant | 51 | This·file·defines·the·<span·class="inlinecode"><span·class="id"·title="var">NZAddProp</span></span>·functor·type.·This·functor·type·is·meant |
52 | to·be·<span·class="inlinecode"><span·class="id"·title="keyword">Include</span></span>d·in·a·module·implementing·<span·class="inlinecode"><span·class="id"·title="var">NZBasicFunsSig'</span></span>. | 52 | to·be·<span·class="inlinecode"><span·class="id"·title="keyword">Include</span></span>d·in·a·module·implementing·<span·class="inlinecode"><span·class="id"·title="var">NZBasicFunsSig'</span></span>. |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1207"></a><h1·class="section">Properties·of·orders·and·addition·for·modules·implementing·<span·class="inlinecode"><span·class="id"·title="var">NZOrdAxiomsSig'</span></span></h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | This·file·defines·the·<span·class="inlinecode"><span·class="id"·title="var">NZAddOrderProp</span></span>·functor·type,·meant·to·be·<span·class="inlinecode"><span·class="id"·title="keyword">Include</span></span>d | 51 | This·file·defines·the·<span·class="inlinecode"><span·class="id"·title="var">NZAddOrderProp</span></span>·functor·type,·meant·to·be·<span·class="inlinecode"><span·class="id"·title="keyword">Include</span></span>d |
52 | in·a·module·implementing·<span·class="inlinecode"><span·class="id"·title="var">NZOrdAxiomsSig'</span></span>·(see·<span·class="inlinecode"><span·class="id"·title="var">Coq.Numbers.NatInt.NZAxioms</span></span>). | 52 | in·a·module·implementing·<span·class="inlinecode"><span·class="id"·title="var">NZOrdAxiomsSig'</span></span>·(see·<span·class="inlinecode"><span·class="id"·title="var">Coq.Numbers.NatInt.NZAxioms</span></span>). |
Offset 48, 15 lines modified | Offset 48, 15 lines modified | ||
48 | <br/> | 48 | <br/> |
49 | </div> | 49 | </div> |
50 | <div·class="doc"> | 50 | <div·class="doc"> |
51 | Initial·Author·:·Evgeny·Makarov,·INRIA,·2007· | 51 | Initial·Author·:·Evgeny·Makarov,·INRIA,·2007· |
52 | <div·class="paragraph">·</div> | 52 | <div·class="paragraph">·</div> |
53 | <a·id="lab | 53 | <a·id="lab1192"></a><h1·class="section">Axioms·for·a·domain·with·<span·class="inlinecode"><span·class="id"·title="var">zero</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">succ</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">pred</span></span>.</h1> |
54 | </div> | 54 | </div> |
55 | <div·class="code"> | 55 | <div·class="code"> |
56 | <br/> | 56 | <br/> |
57 | <span·class="id"·title="keyword">From</span>·<span·class="id"·title="var">Coq.Structures</span>·<span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.Structures.Equalities.html#"><span·class="id"·title="library">Equalities</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#"><span·class="id"·title="library">Orders</span></a>.<br/> | 57 | <span·class="id"·title="keyword">From</span>·<span·class="id"·title="var">Coq.Structures</span>·<span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.Structures.Equalities.html#"><span·class="id"·title="library">Equalities</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#"><span·class="id"·title="library">Orders</span></a>.<br/> |
Offset 141, 15 lines modified | Offset 141, 15 lines modified | ||
141 | <span·class="id"·title="keyword">forall</span>·<span·class="id"·title="var">x</span>·<span·class="id"·title="var">y</span>·:·<span·class="id"·title="var">t</span>,·<span·class="id"·title="var">CompareSpec</span>·(<span·class="id"·title="var">eq</span>·<span·class="id"·title="var">x</span>·<span·class="id"·title="var">y</span>)·(<span·class="id"·title="var">lt</span>·<span·class="id"·title="var">x</span>·<span·class="id"·title="var">y</span>)·(<span·class="id"·title="var">lt</span>·<span·class="id"·title="var">y</span>·<span·class="id"·title="var">x</span>)·(<span·class="id"·title="var">compare</span>·<span·class="id"·title="var">x</span>·<span·class="id"·title="var">y</span>).<br/> | 141 | <span·class="id"·title="keyword">forall</span>·<span·class="id"·title="var">x</span>·<span·class="id"·title="var">y</span>·:·<span·class="id"·title="var">t</span>,·<span·class="id"·title="var">CompareSpec</span>·(<span·class="id"·title="var">eq</span>·<span·class="id"·title="var">x</span>·<span·class="id"·title="var">y</span>)·(<span·class="id"·title="var">lt</span>·<span·class="id"·title="var">x</span>·<span·class="id"·title="var">y</span>)·(<span·class="id"·title="var">lt</span>·<span·class="id"·title="var">y</span>·<span·class="id"·title="var">x</span>)·(<span·class="id"·title="var">compare</span>·<span·class="id"·title="var">x</span>·<span·class="id"·title="var">y</span>).<br/> |
142 | <span·class="id"·title="keyword">End</span> | 142 | <span·class="id"·title="keyword">End</span> |
143 | <div·class="paragraph">·</div> | 143 | <div·class="paragraph">·</div> |
144 | </span>· | 144 | </span>· |
145 | <div·class="paragraph">·</div> | 145 | <div·class="paragraph">·</div> |
146 | <a·id="lab | 146 | <a·id="lab1193"></a><h2·class="section">Axiomatization·of·a·domain·with·<span·class="inlinecode"><span·class="id"·title="var">zero</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">succ</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">pred</span></span>·and·a·bi-directional·induction·principle.</h2> |
147 | </div> | 147 | </div> |
148 | <div·class="code"> | 148 | <div·class="code"> |
149 | <br/> | 149 | <br/> |
150 | </div> | 150 | </div> |
Offset 223, 15 lines modified | Offset 223, 15 lines modified | ||
223 | <a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#A:10"><span·class="id"·title="variable">A</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="n:11"·class="idref"·href="#n:11"><span·class="id"·title="binder">n</span></a>,·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#A:10"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#n:11"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#A:10"><span·class="id"·title="variable">A</span></a>·(<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#NZ.S"><span·class="id"·title="abbreviation">S</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#n:11"><span·class="id"·title="variable">n</span></a>)<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">forall</span>·<a·id="n:12"·class="idref"·href="#n:12"><span·class="id"·title="binder">n</span></a>,·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#A:10"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#n:12"><span·class="id"·title="variable">n</span></a>.<br/> | 223 | <a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#A:10"><span·class="id"·title="variable">A</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="n:11"·class="idref"·href="#n:11"><span·class="id"·title="binder">n</span></a>,·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#A:10"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#n:11"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#A:10"><span·class="id"·title="variable">A</span></a>·(<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#NZ.S"><span·class="id"·title="abbreviation">S</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#n:11"><span·class="id"·title="variable">n</span></a>)<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">forall</span>·<a·id="n:12"·class="idref"·href="#n:12"><span·class="id"·title="binder">n</span></a>,·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#A:10"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#n:12"><span·class="id"·title="variable">n</span></a>.<br/> |
224 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#IsNZDomain"><span·class="id"·title="module">IsNZDomain</span></a>.<br/> | 224 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#IsNZDomain"><span·class="id"·title="module">IsNZDomain</span></a>.<br/> |
225 | <br/> | 225 | <br/> |
226 | </div> | 226 | </div> |
227 | <div·class="doc"> | 227 | <div·class="doc"> |
228 | <a·id="lab | 228 | <a·id="lab1194"></a><h2·class="section">Axiomatization·of·some·more·constants</h2> |
229 | <div·class="paragraph">·</div> | 229 | <div·class="paragraph">·</div> |
230 | ·Simply·denoting·"1"·for·(S·0)·and·so·on·works·ok·when·implementing | 230 | ·Simply·denoting·"1"·for·(S·0)·and·so·on·works·ok·when·implementing |
231 | ····by·<span·class="inlinecode"><span·class="id"·title="var">nat</span></span>,·but·leaves·some·(<span·class="inlinecode"><span·class="id"·title="var">N.succ</span></span>·<span·class="inlinecode"><span·class="id"·title="var">N0</span></span>)·when·implementing·by·<span·class="inlinecode"><span·class="id"·title="var">N</span></span>. | 231 | ····by·<span·class="inlinecode"><span·class="id"·title="var">nat</span></span>,·but·leaves·some·(<span·class="inlinecode"><span·class="id"·title="var">N.succ</span></span>·<span·class="inlinecode"><span·class="id"·title="var">N0</span></span>)·when·implementing·by·<span·class="inlinecode"><span·class="id"·title="var">N</span></span>. |
232 | </div> | 232 | </div> |
Offset 280, 15 lines modified | Offset 280, 15 lines modified | ||
280 | <li>·three·constants·<span·class="inlinecode">0</span>,·<span·class="inlinecode">1</span>·<span·class="inlinecode">=</span>·<span·class="inlinecode"><span·class="id"·title="var">S</span></span>·<span·class="inlinecode">0</span>,·<span·class="inlinecode">2</span>·<span·class="inlinecode">=</span>·<span·class="inlinecode"><span·class="id"·title="var">S</span></span>·<span·class="inlinecode">1</span> | 280 | <li>·three·constants·<span·class="inlinecode">0</span>,·<span·class="inlinecode">1</span>·<span·class="inlinecode">=</span>·<span·class="inlinecode"><span·class="id"·title="var">S</span></span>·<span·class="inlinecode">0</span>,·<span·class="inlinecode">2</span>·<span·class="inlinecode">=</span>·<span·class="inlinecode"><span·class="id"·title="var">S</span></span>·<span·class="inlinecode">1</span> |
281 | </li> | 281 | </li> |
282 | </ul> | 282 | </ul> |
283 | <div·class="paragraph">·</div> | 283 | <div·class="paragraph">·</div> |
284 | <a·id="lab | 284 | <a·id="lab1195"></a><h2·class="section">Axiomatization·of·basic·operations·:·<span·class="inlinecode">+</span>·<span·class="inlinecode">-</span>·<span·class="inlinecode">*</span></h2> |
285 | </div> | 285 | </div> |
286 | <div·class="code"> | 286 | <div·class="code"> |
287 | <br/> | 287 | <br/> |
288 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="AddSubMul"·class="idref"·href="#AddSubMul"><span·class="id"·title="module">AddSubMul</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">T</span>:<a·class="idref"·href="Coq.Structures.Equalities.html#Typ"><span·class="id"·title="module">Typ</span></a>).<br/> | 288 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="AddSubMul"·class="idref"·href="#AddSubMul"><span·class="id"·title="module">AddSubMul</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">T</span>:<a·class="idref"·href="Coq.Structures.Equalities.html#Typ"><span·class="id"·title="module">Typ</span></a>).<br/> |
289 | <span·class="id"·title="keyword">Parameters</span>·<span·class="id"·title="keyword">Inline</span>·<a·id="AddSubMul.add"·class="idref"·href="#AddSubMul.add"><span·class="id"·title="axiom">add</span></a>·<a·id="AddSubMul.sub"·class="idref"·href="#AddSubMul.sub"><span·class="id"·title="axiom">sub</span></a>·<a·id="AddSubMul.mul"·class="idref"·href="#AddSubMul.mul"><span·class="id"·title="axiom">mul</span></a>·:·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#T.t"><span·class="id"·title="axiom">t</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#T.t"><span·class="id"·title="axiom">t</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#T.t"><span·class="id"·title="axiom">t</span></a>.<br/> | 289 | <span·class="id"·title="keyword">Parameters</span>·<span·class="id"·title="keyword">Inline</span>·<a·id="AddSubMul.add"·class="idref"·href="#AddSubMul.add"><span·class="id"·title="axiom">add</span></a>·<a·id="AddSubMul.sub"·class="idref"·href="#AddSubMul.sub"><span·class="id"·title="axiom">sub</span></a>·<a·id="AddSubMul.mul"·class="idref"·href="#AddSubMul.mul"><span·class="id"·title="axiom">mul</span></a>·:·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#T.t"><span·class="id"·title="axiom">t</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#T.t"><span·class="id"·title="axiom">t</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#T.t"><span·class="id"·title="axiom">t</span></a>.<br/> |
Offset 336, 15 lines modified | Offset 336, 15 lines modified | ||
336 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="NZAxiomsSig"·class="idref"·href="#NZAxiomsSig"><span·class="id"·title="module">NZAxiomsSig</span></a>·:=·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#NZBasicFunsSig"><span·class="id"·title="module">NZBasicFunsSig</span></a>.<br/> | 336 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="NZAxiomsSig"·class="idref"·href="#NZAxiomsSig"><span·class="id"·title="module">NZAxiomsSig</span></a>·:=·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#NZBasicFunsSig"><span·class="id"·title="module">NZBasicFunsSig</span></a>.<br/> |
337 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="NZAxiomsSig'"·class="idref"·href="#NZAxiomsSig'"><span·class="id"·title="module">NZAxiomsSig'</span></a>·:=·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#NZBasicFunsSig'"><span·class="id"·title="module">NZBasicFunsSig'</span></a>.<br/> | 337 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="NZAxiomsSig'"·class="idref"·href="#NZAxiomsSig'"><span·class="id"·title="module">NZAxiomsSig'</span></a>·:=·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#NZBasicFunsSig'"><span·class="id"·title="module">NZBasicFunsSig'</span></a>.<br/> |
338 | <br/> | 338 | <br/> |
339 | </div> | 339 | </div> |
340 | <div·class="doc"> | 340 | <div·class="doc"> |
341 | <a·id="lab | 341 | <a·id="lab1196"></a><h2·class="section">Axiomatization·of·order</h2> |
342 | <div·class="paragraph">·</div> | 342 | <div·class="paragraph">·</div> |
343 | ·The·module·type·<span·class="inlinecode"><span·class="id"·title="var">HasLt</span></span>·(resp.·<span·class="inlinecode"><span·class="id"·title="var">HasLe</span></span>)·is·just·a·type·equipped·with | 343 | ·The·module·type·<span·class="inlinecode"><span·class="id"·title="var">HasLt</span></span>·(resp.·<span·class="inlinecode"><span·class="id"·title="var">HasLe</span></span>)·is·just·a·type·equipped·with |
344 | ····a·relation·<span·class="inlinecode"><span·class="id"·title="var">lt</span></span>·(resp.·<span·class="inlinecode"><span·class="id"·title="var">le</span></span>)·in·<span·class="inlinecode"><span·class="id"·title="keyword">Prop</span></span>.· | 344 | ····a·relation·<span·class="inlinecode"><span·class="id"·title="var">lt</span></span>·(resp.·<span·class="inlinecode"><span·class="id"·title="var">le</span></span>)·in·<span·class="inlinecode"><span·class="id"·title="keyword">Prop</span></span>.· |
345 | </div> | 345 | </div> |
346 | <div·class="code"> | 346 | <div·class="code"> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1203"></a><h1·class="section">Basic·lemmas·about·modules·implementing·<span·class="inlinecode"><span·class="id"·title="var">NZDomainSig'</span></span></h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | This·file·defines·the·functor·type·<span·class="inlinecode"><span·class="id"·title="var">NZBaseProp</span></span>·which·adds·the·following | 51 | This·file·defines·the·functor·type·<span·class="inlinecode"><span·class="id"·title="var">NZBaseProp</span></span>·which·adds·the·following |
52 | lemmas: | 52 | lemmas: |
53 | <ul·class="doclist"> | 53 | <ul·class="doclist"> |
Offset 186, 15 lines modified | Offset 186, 15 lines modified | ||
186 | <br/> | 186 | <br/> |
187 | <span·class="id"·title="keyword">Theorem</span>·<a·id="NZDivProp.mod_small"·class="idref"·href="#NZDivProp.mod_small"><span·class="id"·title="lemma">mod_small</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:47"·class="idref"·href="#a:47"><span·class="id"·title="binder">a</span></a>·<a·id="b:48"·class="idref"·href="#b:48"><span·class="id"·title="binder">b</span></a>,·0<a·class="idref"·href="Coq.Structures.Orders.html#62fc7208ddb2fa310e7ae9ec2d794c92"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#a:47"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Structures.Orders.html#62fc7208ddb2fa310e7ae9ec2d794c92"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#b:48"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#a:47"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#b:48"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#a:47"><span·class="id"·title="variable">a</span></a>.<br/> | 187 | <span·class="id"·title="keyword">Theorem</span>·<a·id="NZDivProp.mod_small"·class="idref"·href="#NZDivProp.mod_small"><span·class="id"·title="lemma">mod_small</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:47"·class="idref"·href="#a:47"><span·class="id"·title="binder">a</span></a>·<a·id="b:48"·class="idref"·href="#b:48"><span·class="id"·title="binder">b</span></a>,·0<a·class="idref"·href="Coq.Structures.Orders.html#62fc7208ddb2fa310e7ae9ec2d794c92"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#a:47"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Structures.Orders.html#62fc7208ddb2fa310e7ae9ec2d794c92"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#b:48"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#a:47"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#b:48"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#a:47"><span·class="id"·title="variable">a</span></a>.<br/> |
188 | <br/> | 188 | <br/> |
189 | </div> | 189 | </div> |
190 | <div·class="doc"> | 190 | <div·class="doc"> |
191 | <a·id="lab | 191 | <a·id="lab1204"></a><h1·class="section">Basic·values·of·divisions·and·modulo.</h1> |
192 | </div> | 192 | </div> |
193 | <div·class="code"> | 193 | <div·class="code"> |
194 | <br/> | 194 | <br/> |
195 | <span·class="id"·title="keyword">Lemma</span>·<a·id="NZDivProp.div_0_l"·class="idref"·href="#NZDivProp.div_0_l"><span·class="id"·title="lemma">div_0_l</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:49"·class="idref"·href="#a:49"><span·class="id"·title="binder">a</span></a>,·0<a·class="idref"·href="Coq.Structures.Orders.html#LtNotation.:::x_'<'_x"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#a:49"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#553b1e0c6dfeea0fb5d9a4a0a1c7f719"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#a:49"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·0.<br/> | 195 | <span·class="id"·title="keyword">Lemma</span>·<a·id="NZDivProp.div_0_l"·class="idref"·href="#NZDivProp.div_0_l"><span·class="id"·title="lemma">div_0_l</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:49"·class="idref"·href="#a:49"><span·class="id"·title="binder">a</span></a>,·0<a·class="idref"·href="Coq.Structures.Orders.html#LtNotation.:::x_'<'_x"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#a:49"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#553b1e0c6dfeea0fb5d9a4a0a1c7f719"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#a:49"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·0.<br/> |
Offset 219, 15 lines modified | Offset 219, 15 lines modified | ||
219 | <br/> | 219 | <br/> |
220 | <span·class="id"·title="keyword">Lemma</span>·<a·id="NZDivProp.mod_mul"·class="idref"·href="#NZDivProp.mod_mul"><span·class="id"·title="lemma">mod_mul</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="a:57"·class="idref"·href="#a:57"><span·class="id"·title="binder">a</span></a>·<a·id="b:58"·class="idref"·href="#b:58"><span·class="id"·title="binder">b</span></a>,·0<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#a:57"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0<a·class="idref"·href="Coq.Structures.Orders.html#LtNotation.:::x_'<'_x"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#b:58"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#a:57"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#797430c1791311f6dff109b908d9a13c"><span·class="id"·title="notation">*</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#b:58"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#b:58"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·0.<br/> | 220 | <span·class="id"·title="keyword">Lemma</span>·<a·id="NZDivProp.mod_mul"·class="idref"·href="#NZDivProp.mod_mul"><span·class="id"·title="lemma">mod_mul</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="a:57"·class="idref"·href="#a:57"><span·class="id"·title="binder">a</span></a>·<a·id="b:58"·class="idref"·href="#b:58"><span·class="id"·title="binder">b</span></a>,·0<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#a:57"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0<a·class="idref"·href="Coq.Structures.Orders.html#LtNotation.:::x_'<'_x"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#b:58"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#a:57"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#797430c1791311f6dff109b908d9a13c"><span·class="id"·title="notation">*</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#b:58"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#b:58"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·0.<br/> |
221 | <br/> | 221 | <br/> |
222 | </div> | 222 | </div> |
223 | <div·class="doc"> | 223 | <div·class="doc"> |
224 | <a·id="lab | 224 | <a·id="lab1205"></a><h1·class="section">Order·results·about·mod·and·div</h1> |
225 | <div·class="paragraph">·</div> | 225 | <div·class="paragraph">·</div> |
226 | ·A·modulo·cannot·grow·beyond·its·starting·point.· | 226 | ·A·modulo·cannot·grow·beyond·its·starting·point.· |
227 | </div> | 227 | </div> |
228 | <div·class="code"> | 228 | <div·class="code"> |
Offset 331, 15 lines modified | Offset 331, 15 lines modified | ||
331 | <span·class="id"·title="keyword">Lemma</span>·<a·id="NZDivProp.div_le_compat_l"·class="idref"·href="#NZDivProp.div_le_compat_l"><span·class="id"·title="lemma">div_le_compat_l</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="p:91"·class="idref"·href="#p:91"><span·class="id"·title="binder">p</span></a>·<a·id="q:92"·class="idref"·href="#q:92"><span·class="id"·title="binder">q</span></a>·<a·id="r:93"·class="idref"·href="#r:93"><span·class="id"·title="binder">r</span></a>,·0<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#p:91"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0<a·class="idref"·href="Coq.Structures.Orders.html#8c602530c59c13bd8ba993c0e201cbd3"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#q:92"><span·class="id"·title="variable">q</span></a><a·class="idref"·href="Coq.Structures.Orders.html#8c602530c59c13bd8ba993c0e201cbd3"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#r:93"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 331 | <span·class="id"·title="keyword">Lemma</span>·<a·id="NZDivProp.div_le_compat_l"·class="idref"·href="#NZDivProp.div_le_compat_l"><span·class="id"·title="lemma">div_le_compat_l</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="p:91"·class="idref"·href="#p:91"><span·class="id"·title="binder">p</span></a>·<a·id="q:92"·class="idref"·href="#q:92"><span·class="id"·title="binder">q</span></a>·<a·id="r:93"·class="idref"·href="#r:93"><span·class="id"·title="binder">r</span></a>,·0<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#p:91"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0<a·class="idref"·href="Coq.Structures.Orders.html#8c602530c59c13bd8ba993c0e201cbd3"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#q:92"><span·class="id"·title="variable">q</span></a><a·class="idref"·href="Coq.Structures.Orders.html#8c602530c59c13bd8ba993c0e201cbd3"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#r:93"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
332 | <a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#p:91"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#553b1e0c6dfeea0fb5d9a4a0a1c7f719"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#r:93"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#p:91"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#553b1e0c6dfeea0fb5d9a4a0a1c7f719"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#q:92"><span·class="id"·title="variable">q</span></a>.<br/> | 332 | <a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#p:91"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#553b1e0c6dfeea0fb5d9a4a0a1c7f719"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#r:93"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#p:91"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#553b1e0c6dfeea0fb5d9a4a0a1c7f719"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#q:92"><span·class="id"·title="variable">q</span></a>.<br/> |
333 | <br/> | 333 | <br/> |
334 | </div> | 334 | </div> |
335 | <div·class="doc"> | 335 | <div·class="doc"> |
336 | <a·id="lab | 336 | <a·id="lab1206"></a><h1·class="section">Relations·between·usual·operations·and·mod·and·div</h1> |
337 | </div> | 337 | </div> |
338 | <div·class="code"> | 338 | <div·class="code"> |
339 | <br/> | 339 | <br/> |
340 | <span·class="id"·title="keyword">Lemma</span>·<a·id="NZDivProp.mod_add"·class="idref"·href="#NZDivProp.mod_add"><span·class="id"·title="lemma">mod_add</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="a:94"·class="idref"·href="#a:94"><span·class="id"·title="binder">a</span></a>·<a·id="b:95"·class="idref"·href="#b:95"><span·class="id"·title="binder">b</span></a>·<a·id="c:96"·class="idref"·href="#c:96"><span·class="id"·title="binder">c</span></a>,·0<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#a:94"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#a:94"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#c2e8aaaa0a712025cad3c7b3ed5aeff2"><span·class="id"·title="notation">+</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#b:95"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#797430c1791311f6dff109b908d9a13c"><span·class="id"·title="notation">*</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#c:96"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0<a·class="idref"·href="Coq.Structures.Orders.html#LtNotation.:::x_'<'_x"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#c:96"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 340 | <span·class="id"·title="keyword">Lemma</span>·<a·id="NZDivProp.mod_add"·class="idref"·href="#NZDivProp.mod_add"><span·class="id"·title="lemma">mod_add</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="a:94"·class="idref"·href="#a:94"><span·class="id"·title="binder">a</span></a>·<a·id="b:95"·class="idref"·href="#b:95"><span·class="id"·title="binder">b</span></a>·<a·id="c:96"·class="idref"·href="#c:96"><span·class="id"·title="binder">c</span></a>,·0<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#a:94"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#a:94"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#c2e8aaaa0a712025cad3c7b3ed5aeff2"><span·class="id"·title="notation">+</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#b:95"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#797430c1791311f6dff109b908d9a13c"><span·class="id"·title="notation">*</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#c:96"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0<a·class="idref"·href="Coq.Structures.Orders.html#LtNotation.:::x_'<'_x"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#c:96"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
341 | <a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#a:94"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#c2e8aaaa0a712025cad3c7b3ed5aeff2"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#b:95"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#797430c1791311f6dff109b908d9a13c"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#c:96"><span·class="id"·title="variable">c</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#c:96"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#a:94"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#c:96"><span·class="id"·title="variable">c</span></a>.<br/> | 341 | <a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#a:94"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#c2e8aaaa0a712025cad3c7b3ed5aeff2"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#b:95"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#797430c1791311f6dff109b908d9a13c"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#c:96"><span·class="id"·title="variable">c</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#c:96"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#a:94"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#c:96"><span·class="id"·title="variable">c</span></a>.<br/> |
Offset 74, 15 lines modified | Offset 74, 15 lines modified | ||
74 | <span·class="id"·title="keyword">Module</span>·<a·id="NZDomainProp"·class="idref"·href="#NZDomainProp"><span·class="id"·title="module">NZDomainProp</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">NZ</span>:<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#NZDomainSig'"><span·class="id"·title="module">NZDomainSig'</span></a>).<br/> | 74 | <span·class="id"·title="keyword">Module</span>·<a·id="NZDomainProp"·class="idref"·href="#NZDomainProp"><span·class="id"·title="module">NZDomainProp</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">NZ</span>:<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#NZDomainSig'"><span·class="id"·title="module">NZDomainSig'</span></a>).<br/> |
75 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.Numbers.NatInt.NZBase.html#NZBaseProp"><span·class="id"·title="module">NZBaseProp</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#NZ"><span·class="id"·title="module">NZ</span></a>.<br/> | 75 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.Numbers.NatInt.NZBase.html#NZBaseProp"><span·class="id"·title="module">NZBaseProp</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#NZ"><span·class="id"·title="module">NZ</span></a>.<br/> |
76 | <br/> | 76 | <br/> |
77 | </div> | 77 | </div> |
78 | <div·class="doc"> | 78 | <div·class="doc"> |
79 | <a·id="lab | 79 | <a·id="lab1197"></a><h1·class="section">Relationship·between·points·thanks·to·<span·class="inlinecode"><span·class="id"·title="var">succ</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">pred</span></span>.</h1> |
80 | <div·class="paragraph">·</div> | 80 | <div·class="paragraph">·</div> |
81 | ·For·any·two·points,·one·is·an·iterated·successor·of·the·other.· | 81 | ·For·any·two·points,·one·is·an·iterated·successor·of·the·other.· |
82 | </div> | 82 | </div> |
83 | <div·class="code"> | 83 | <div·class="code"> |
Offset 125, 15 lines modified | Offset 125, 15 lines modified | ||
125 | <span·class="id"·title="keyword">Lemma</span>·<a·id="NZDomainProp.itersucc0_or_iterpred0"·class="idref"·href="#NZDomainProp.itersucc0_or_iterpred0"><span·class="id"·title="lemma">itersucc0_or_iterpred0</span></a>·:<br/> | 125 | <span·class="id"·title="keyword">Lemma</span>·<a·id="NZDomainProp.itersucc0_or_iterpred0"·class="idref"·href="#NZDomainProp.itersucc0_or_iterpred0"><span·class="id"·title="lemma">itersucc0_or_iterpred0</span></a>·:<br/> |
126 | <span·class="id"·title="keyword">forall</span>·<a·id="n:16"·class="idref"·href="#n:16"><span·class="id"·title="binder">n</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">exists</span></a>·<a·id="p:17"·class="idref"·href="#p:17"><span·class="id"·title="binder">p</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#n:16"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#ecddf82744be1faeed92485fa4c70623"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#NZ.S"><span·class="id"·title="abbreviation">S</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#ecddf82744be1faeed92485fa4c70623"><span·class="id"·title="notation">^</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#p:17"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#ecddf82744be1faeed92485fa4c70623"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#ecddf82744be1faeed92485fa4c70623"><span·class="id"·title="notation">0</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#n:16"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#ecddf82744be1faeed92485fa4c70623"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#NZ.P"><span·class="id"·title="abbreviation">P</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#ecddf82744be1faeed92485fa4c70623"><span·class="id"·title="notation">^</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#p:17"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#ecddf82744be1faeed92485fa4c70623"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#ecddf82744be1faeed92485fa4c70623"><span·class="id"·title="notation">0</span></a>.<br/> | 126 | <span·class="id"·title="keyword">forall</span>·<a·id="n:16"·class="idref"·href="#n:16"><span·class="id"·title="binder">n</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">exists</span></a>·<a·id="p:17"·class="idref"·href="#p:17"><span·class="id"·title="binder">p</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#n:16"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#ecddf82744be1faeed92485fa4c70623"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#NZ.S"><span·class="id"·title="abbreviation">S</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#ecddf82744be1faeed92485fa4c70623"><span·class="id"·title="notation">^</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#p:17"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#ecddf82744be1faeed92485fa4c70623"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#ecddf82744be1faeed92485fa4c70623"><span·class="id"·title="notation">0</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#n:16"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#ecddf82744be1faeed92485fa4c70623"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#NZ.P"><span·class="id"·title="abbreviation">P</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#ecddf82744be1faeed92485fa4c70623"><span·class="id"·title="notation">^</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#p:17"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#ecddf82744be1faeed92485fa4c70623"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#ecddf82744be1faeed92485fa4c70623"><span·class="id"·title="notation">0</span></a>.<br/> |
127 | <br/> | 127 | <br/> |
128 | </div> | 128 | </div> |
129 | <div·class="doc"> | 129 | <div·class="doc"> |
130 | <a·id="lab | 130 | <a·id="lab1198"></a><h1·class="section">Study·of·initial·point·w.r.t.·<span·class="inlinecode"><span·class="id"·title="var">succ</span></span>·(if·any).</h1> |
131 | </div> | 131 | </div> |
132 | <div·class="code"> | 132 | <div·class="code"> |
133 | <br/> | 133 | <br/> |
134 | <span·class="id"·title="keyword">Definition</span>·<a·id="NZDomainProp.initial"·class="idref"·href="#NZDomainProp.initial"><span·class="id"·title="definition">initial</span></a>·<a·id="n:18"·class="idref"·href="#n:18"><span·class="id"·title="binder">n</span></a>·:=·<span·class="id"·title="keyword">forall</span>·<a·id="m:19"·class="idref"·href="#m:19"><span·class="id"·title="binder">m</span></a>,·<a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#n:18"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#9cff58ff8ba6db8841aeeecf7f406093"><span·class="id"·title="notation">~=</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#NZ.S"><span·class="id"·title="abbreviation">S</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#m:19"><span·class="id"·title="variable">m</span></a>.<br/> | 134 | <span·class="id"·title="keyword">Definition</span>·<a·id="NZDomainProp.initial"·class="idref"·href="#NZDomainProp.initial"><span·class="id"·title="definition">initial</span></a>·<a·id="n:18"·class="idref"·href="#n:18"><span·class="id"·title="binder">n</span></a>·:=·<span·class="id"·title="keyword">forall</span>·<a·id="m:19"·class="idref"·href="#m:19"><span·class="id"·title="binder">m</span></a>,·<a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#n:18"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#9cff58ff8ba6db8841aeeecf7f406093"><span·class="id"·title="notation">~=</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#NZ.S"><span·class="id"·title="abbreviation">S</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDomain.html#m:19"><span·class="id"·title="variable">m</span></a>.<br/> |
Offset 249, 15 lines modified | Offset 249, 15 lines modified | ||
249 | <div·class="paragraph">·</div> | 249 | <div·class="paragraph">·</div> |
250 | ·····IIa)·if·<span·class="inlinecode"><span·class="id"·title="tactic">exists</span></span>·<span·class="inlinecode"><span·class="id"·title="var">k</span><><span·class="id"·title="var">O</span>,</span>·<span·class="inlinecode">0</span>·<span·class="inlinecode">==</span>·<span·class="inlinecode"><span·class="id"·title="var">S</span>^<span·class="id"·title="var">k</span></span>·<span·class="inlinecode">0</span>,·then·we·have·a·cyclic·structure·Z/nZ | 250 | ·····IIa)·if·<span·class="inlinecode"><span·class="id"·title="tactic">exists</span></span>·<span·class="inlinecode"><span·class="id"·title="var">k</span><><span·class="id"·title="var">O</span>,</span>·<span·class="inlinecode">0</span>·<span·class="inlinecode">==</span>·<span·class="inlinecode"><span·class="id"·title="var">S</span>^<span·class="id"·title="var">k</span></span>·<span·class="inlinecode">0</span>,·then·we·have·a·cyclic·structure·Z/nZ |
251 | ·····IIb)·otherwise,·we·have·Z | 251 | ·····IIb)·otherwise,·we·have·Z |
252 | <div·class="paragraph">·</div> | 252 | <div·class="paragraph">·</div> |
253 | <a·id="lab | 253 | <a·id="lab1199"></a><h1·class="section">An·alternative·induction·principle·using·<span·class="inlinecode"><span·class="id"·title="var">S</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">P</span></span>.</h1> |
254 | <div·class="paragraph">·</div> | 254 | <div·class="paragraph">·</div> |
255 | ·It·is·weaker·than·<span·class="inlinecode"><span·class="id"·title="var">bi_induction</span></span>.·For·instance·it·cannot·prove·that | 255 | ·It·is·weaker·than·<span·class="inlinecode"><span·class="id"·title="var">bi_induction</span></span>.·For·instance·it·cannot·prove·that |
256 | ····we·can·go·from·one·point·by·many·<span·class="inlinecode"><span·class="id"·title="var">S</span></span>·<i>or</i>·many·<span·class="inlinecode"><span·class="id"·title="var">P</span></span>,·but·only·by·many | 256 | ····we·can·go·from·one·point·by·many·<span·class="inlinecode"><span·class="id"·title="var">S</span></span>·<i>or</i>·many·<span·class="inlinecode"><span·class="id"·title="var">P</span></span>,·but·only·by·many |
257 | ····<span·class="inlinecode"><span·class="id"·title="var">S</span></span>·mixed·with·many·<span·class="inlinecode"><span·class="id"·title="var">P</span></span>.·Think·of·a·model·with·two·copies·of·N: | 257 | ····<span·class="inlinecode"><span·class="id"·title="var">S</span></span>·mixed·with·many·<span·class="inlinecode"><span·class="id"·title="var">P</span></span>.·Think·of·a·model·with·two·copies·of·N: |
Offset 414, 15 lines modified | Offset 414, 15 lines modified | ||
414 | (<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">E</span>·:·<a·class="idref"·href="Coq.Numbers.NatInt.NZPow.html#NZPowProp"><span·class="id"·title="module">NZPowProp</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZLog.html#A"><span·class="id"·title="module">A</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZLog.html#B"><span·class="id"·title="module">B</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZLog.html#D"><span·class="id"·title="module">D</span></a>)<br/> | 414 | (<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">E</span>·:·<a·class="idref"·href="Coq.Numbers.NatInt.NZPow.html#NZPowProp"><span·class="id"·title="module">NZPowProp</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZLog.html#A"><span·class="id"·title="module">A</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZLog.html#B"><span·class="id"·title="module">B</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZLog.html#D"><span·class="id"·title="module">D</span></a>)<br/> |
415 | (<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">F</span>·:·<a·class="idref"·href="Coq.Numbers.NatInt.NZLog.html#NZLog2Prop"><span·class="id"·title="module">NZLog2Prop</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZLog.html#A"><span·class="id"·title="module">A</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZLog.html#B"><span·class="id"·title="module">B</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZLog.html#C"><span·class="id"·title="module">C</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZLog.html#D"><span·class="id"·title="module">D</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZLog.html#E"><span·class="id"·title="module">E</span></a>).<br/> | 415 | (<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">F</span>·:·<a·class="idref"·href="Coq.Numbers.NatInt.NZLog.html#NZLog2Prop"><span·class="id"·title="module">NZLog2Prop</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZLog.html#A"><span·class="id"·title="module">A</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZLog.html#B"><span·class="id"·title="module">B</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZLog.html#C"><span·class="id"·title="module">C</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZLog.html#D"><span·class="id"·title="module">D</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZLog.html#E"><span·class="id"·title="module">E</span></a>).<br/> |
416 | <br/> | 416 | <br/> |
417 | </div> | 417 | </div> |
418 | <div·class="doc"> | 418 | <div·class="doc"> |
419 | <a·id="lab | 419 | <a·id="lab1191"></a><h1·class="section"><span·class="inlinecode"><span·class="id"·title="var">log2_up</span></span>·:·a·binary·logarithm·that·rounds·up·instead·of·down</h1> |
420 | <div·class="paragraph">·</div> | 420 | <div·class="paragraph">·</div> |
421 | ·For·once,·we·define·instead·of·axiomatizing,·thanks·to·log2· | 421 | ·For·once,·we·define·instead·of·axiomatizing,·thanks·to·log2· |
422 | </div> | 422 | </div> |
423 | <div·class="code"> | 423 | <div·class="code"> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1200"></a><h1·class="section">Some·properties·of·the·multiplication·for·modules·implementing·<span·class="inlinecode"><span·class="id"·title="var">NZBasicFunsSig'</span></span></h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | This·file·defines·the·<span·class="inlinecode"><span·class="id"·title="var">NZMulProp</span></span>·functor·type·on·top·of·<span·class="inlinecode"><span·class="id"·title="var">NZAddProp</span></span>.·This | 51 | This·file·defines·the·<span·class="inlinecode"><span·class="id"·title="var">NZMulProp</span></span>·functor·type·on·top·of·<span·class="inlinecode"><span·class="id"·title="var">NZAddProp</span></span>.·This |
52 | functor·type·is·meant·to·be·<span·class="inlinecode"><span·class="id"·title="keyword">Include</span></span>d·in·a·module·implementing·<span·class="inlinecode"><span·class="id"·title="var">NZBasicFunsSig'</span></span>. | 52 | functor·type·is·meant·to·be·<span·class="inlinecode"><span·class="id"·title="keyword">Include</span></span>d·in·a·module·implementing·<span·class="inlinecode"><span·class="id"·title="var">NZBasicFunsSig'</span></span>. |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1202"></a><h1·class="section">Properties·of·orders·and·multiplication·for·modules·implementing·<span·class="inlinecode"><span·class="id"·title="var">NZOrdAxiomsSig'</span></span></h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | This·file·defines·the·<span·class="inlinecode"><span·class="id"·title="var">NZMulOrderProp</span></span>·functor·type,·meant·to·be·<span·class="inlinecode"><span·class="id"·title="keyword">Include</span></span>d | 51 | This·file·defines·the·<span·class="inlinecode"><span·class="id"·title="var">NZMulOrderProp</span></span>·functor·type,·meant·to·be·<span·class="inlinecode"><span·class="id"·title="keyword">Include</span></span>d |
52 | in·a·module·implementing·<span·class="inlinecode"><span·class="id"·title="var">NZOrdAxiomsSig'</span></span>·(see·<span·class="inlinecode"><span·class="id"·title="var">Coq.Numbers.NatInt.NZAxioms</span></span>). | 52 | in·a·module·implementing·<span·class="inlinecode"><span·class="id"·title="var">NZOrdAxiomsSig'</span></span>·(see·<span·class="inlinecode"><span·class="id"·title="var">Coq.Numbers.NatInt.NZAxioms</span></span>). |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab1181"></a><h1·class="section">Lemmas·about·orders·for·modules·implementing·<span·class="inlinecode"><span·class="id"·title="var">NZOrdSig'</span></span></h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | This·file·defines·the·<span·class="inlinecode"><span·class="id"·title="var">NZOrderProp</span></span>·functor·type,·meant·to·be·<span·class="inlinecode"><span·class="id"·title="keyword">Include</span></span>d·in | 51 | This·file·defines·the·<span·class="inlinecode"><span·class="id"·title="var">NZOrderProp</span></span>·functor·type,·meant·to·be·<span·class="inlinecode"><span·class="id"·title="keyword">Include</span></span>d·in |
52 | a·module·implementing·the·<span·class="inlinecode"><span·class="id"·title="var">NZOrdSig'</span></span>·module·type. | 52 | a·module·implementing·the·<span·class="inlinecode"><span·class="id"·title="var">NZOrdSig'</span></span>·module·type. |
Offset 101, 19 lines modified | Offset 101, 19 lines modified | ||
101 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="NZOrderProp"·class="idref"·href="#NZOrderProp"><span·class="id"·title="module">NZOrderProp</span></a><br/> | 101 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="NZOrderProp"·class="idref"·href="#NZOrderProp"><span·class="id"·title="module">NZOrderProp</span></a><br/> |
102 | (<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">NZ</span>·:·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#NZOrdSig'"><span·class="id"·title="module">NZOrdSig'</span></a>)(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">NZBase</span>·:·<a·class="idref"·href="Coq.Numbers.NatInt.NZBase.html#NZBaseProp"><span·class="id"·title="module">NZBaseProp</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#NZ"><span·class="id"·title="module">NZ</span></a>).<br/> | 102 | (<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">NZ</span>·:·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#NZOrdSig'"><span·class="id"·title="module">NZOrdSig'</span></a>)(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">NZBase</span>·:·<a·class="idref"·href="Coq.Numbers.NatInt.NZBase.html#NZBaseProp"><span·class="id"·title="module">NZBaseProp</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#NZ"><span·class="id"·title="module">NZ</span></a>).<br/> |
103 | <br/> | 103 | <br/> |
104 | </div> | 104 | </div> |
105 | <div·class="doc"> | 105 | <div·class="doc"> |
106 | <a·id="lab | 106 | <a·id="lab1182"></a><h2·class="section">Basic·facts·about·<span·class="inlinecode"><span·class="id"·title="var">le</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">lt</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">eq</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">succ</span></span></h2> |
107 | <div·class="paragraph">·</div> | 107 | <div·class="paragraph">·</div> |
108 | <a·id="lab | 108 | <a·id="lab1183"></a><h3·class="section">Direct·consequences·of·the·specifications·of·<span·class="inlinecode"><span·class="id"·title="var">lt</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">le</span></span></h3> |
109 | </div> | 109 | </div> |
110 | <div·class="code"> | 110 | <div·class="code"> |
111 | #[<span·class="id"·title="var">global</span>]<br/> | 111 | #[<span·class="id"·title="var">global</span>]<br/> |
112 | <span·class="id"·title="keyword">Instance</span>·<a·id="NZOrderProp.le_wd"·class="idref"·href="#NZOrderProp.le_wd"><span·class="id"·title="instance">le_wd</span></a>·:·<a·class="idref"·href="Coq.Classes.Morphisms.html#Proper"><span·class="id"·title="class">Proper</span></a>·(<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#NZ.eq"><span·class="id"·title="axiom">eq</span></a><a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#NZ.eq"><span·class="id"·title="axiom">eq</span></a><a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a><a·class="idref"·href="Coq.Init.Logic.html#iff"><span·class="id"·title="definition">iff</span></a>)·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#NZ.le"><span·class="id"·title="axiom">le</span></a>.<br/> | 112 | <span·class="id"·title="keyword">Instance</span>·<a·id="NZOrderProp.le_wd"·class="idref"·href="#NZOrderProp.le_wd"><span·class="id"·title="instance">le_wd</span></a>·:·<a·class="idref"·href="Coq.Classes.Morphisms.html#Proper"><span·class="id"·title="class">Proper</span></a>·(<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#NZ.eq"><span·class="id"·title="axiom">eq</span></a><a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#NZ.eq"><span·class="id"·title="axiom">eq</span></a><a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a><a·class="idref"·href="Coq.Init.Logic.html#iff"><span·class="id"·title="definition">iff</span></a>)·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#NZ.le"><span·class="id"·title="axiom">le</span></a>.<br/> |
113 | <br/> | 113 | <br/> |
Offset 163, 15 lines modified | Offset 163, 15 lines modified | ||
163 | <br/> | 163 | <br/> |
164 | <span·class="id"·title="keyword">Notation</span>·<a·id="NZOrderProp.lt_eq_gt_cases"·class="idref"·href="#NZOrderProp.lt_eq_gt_cases"><span·class="id"·title="abbreviation">lt_eq_gt_cases</span></a>·:=·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#NZOrderProp.lt_trichotomy"><span·class="id"·title="lemma">lt_trichotomy</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> | 164 | <span·class="id"·title="keyword">Notation</span>·<a·id="NZOrderProp.lt_eq_gt_cases"·class="idref"·href="#NZOrderProp.lt_eq_gt_cases"><span·class="id"·title="abbreviation">lt_eq_gt_cases</span></a>·:=·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#NZOrderProp.lt_trichotomy"><span·class="id"·title="lemma">lt_trichotomy</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> |
165 | <br/> | 165 | <br/> |
166 | </div> | 166 | </div> |
167 | <div·class="doc"> | 167 | <div·class="doc"> |
168 | <a·id="lab | 168 | <a·id="lab1184"></a><h3·class="section">Asymmetry·and·transitivity.</h3> |
169 | </div> | 169 | </div> |
170 | <div·class="code"> | 170 | <div·class="code"> |
171 | <br/> | 171 | <br/> |
172 | <span·class="id"·title="keyword">Theorem</span>·<a·id="NZOrderProp.lt_asymm"·class="idref"·href="#NZOrderProp.lt_asymm"><span·class="id"·title="lemma">lt_asymm</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:16"·class="idref"·href="#n:16"><span·class="id"·title="binder">n</span></a>·<a·id="m:17"·class="idref"·href="#m:17"><span·class="id"·title="binder">m</span></a>,·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#n:16"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#LtNotation.:::x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#m:17"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#m:17"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#LtNotation.:::x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#n:16"><span·class="id"·title="variable">n</span></a>.<br/> | 172 | <span·class="id"·title="keyword">Theorem</span>·<a·id="NZOrderProp.lt_asymm"·class="idref"·href="#NZOrderProp.lt_asymm"><span·class="id"·title="lemma">lt_asymm</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:16"·class="idref"·href="#n:16"><span·class="id"·title="binder">n</span></a>·<a·id="m:17"·class="idref"·href="#m:17"><span·class="id"·title="binder">m</span></a>,·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#n:16"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#LtNotation.:::x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#m:17"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#m:17"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#LtNotation.:::x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#n:16"><span·class="id"·title="variable">n</span></a>.<br/> |
Offset 184, 15 lines modified | Offset 184, 15 lines modified | ||
184 | <br/> | 184 | <br/> |
185 | <span·class="id"·title="keyword">Theorem</span>·<a·id="NZOrderProp.le_trans"·class="idref"·href="#NZOrderProp.le_trans"><span·class="id"·title="lemma">le_trans</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:21"·class="idref"·href="#n:21"><span·class="id"·title="binder">n</span></a>·<a·id="m:22"·class="idref"·href="#m:22"><span·class="id"·title="binder">m</span></a>·<a·id="p:23"·class="idref"·href="#p:23"><span·class="id"·title="binder">p</span></a>,·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#n:21"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#m:22"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#m:22"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#p:23"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#n:21"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#p:23"><span·class="id"·title="variable">p</span></a>.<br/> | 185 | <span·class="id"·title="keyword">Theorem</span>·<a·id="NZOrderProp.le_trans"·class="idref"·href="#NZOrderProp.le_trans"><span·class="id"·title="lemma">le_trans</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:21"·class="idref"·href="#n:21"><span·class="id"·title="binder">n</span></a>·<a·id="m:22"·class="idref"·href="#m:22"><span·class="id"·title="binder">m</span></a>·<a·id="p:23"·class="idref"·href="#p:23"><span·class="id"·title="binder">p</span></a>,·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#n:21"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#m:22"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#m:22"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#p:23"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#n:21"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#p:23"><span·class="id"·title="variable">p</span></a>.<br/> |
186 | <br/> | 186 | <br/> |
187 | </div> | 187 | </div> |
188 | <div·class="doc"> | 188 | <div·class="doc"> |
189 | <a·id="lab | 189 | <a·id="lab1185"></a><h3·class="section">Some·type·classes·about·order</h3> |
190 | </div> | 190 | </div> |
191 | <div·class="code"> | 191 | <div·class="code"> |
192 | <br/> | 192 | <br/> |
193 | #[<span·class="id"·title="var">global</span>]<br/> | 193 | #[<span·class="id"·title="var">global</span>]<br/> |
194 | <span·class="id"·title="keyword">Instance</span>·<a·id="NZOrderProp.lt_strorder"·class="idref"·href="#NZOrderProp.lt_strorder"><span·class="id"·title="instance">lt_strorder</span></a>·:·<a·class="idref"·href="Coq.Classes.RelationClasses.html#StrictOrder"><span·class="id"·title="class">StrictOrder</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#NZ.lt"><span·class="id"·title="axiom">lt</span></a>.<br/> | 194 | <span·class="id"·title="keyword">Instance</span>·<a·id="NZOrderProp.lt_strorder"·class="idref"·href="#NZOrderProp.lt_strorder"><span·class="id"·title="instance">lt_strorder</span></a>·:·<a·class="idref"·href="Coq.Classes.RelationClasses.html#StrictOrder"><span·class="id"·title="class">StrictOrder</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#NZ.lt"><span·class="id"·title="axiom">lt</span></a>.<br/> |
Offset 205, 15 lines modified | Offset 205, 15 lines modified | ||
205 | #[<span·class="id"·title="var">global</span>]<br/> | 205 | #[<span·class="id"·title="var">global</span>]<br/> |
206 | <span·class="id"·title="keyword">Instance</span>·<a·id="NZOrderProp.le_partialorder"·class="idref"·href="#NZOrderProp.le_partialorder"><span·class="id"·title="instance">le_partialorder</span></a>·:·<a·class="idref"·href="Coq.Classes.RelationClasses.html#PartialOrder"><span·class="id"·title="class">PartialOrder</span></a>·<span·class="id"·title="var">_</span>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#NZ.le"><span·class="id"·title="axiom">le</span></a>.<br/> | 206 | <span·class="id"·title="keyword">Instance</span>·<a·id="NZOrderProp.le_partialorder"·class="idref"·href="#NZOrderProp.le_partialorder"><span·class="id"·title="instance">le_partialorder</span></a>·:·<a·class="idref"·href="Coq.Classes.RelationClasses.html#PartialOrder"><span·class="id"·title="class">PartialOrder</span></a>·<span·class="id"·title="var">_</span>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#NZ.le"><span·class="id"·title="axiom">le</span></a>.<br/> |
207 | <br/> | 207 | <br/> |
208 | </div> | 208 | </div> |
209 | <div·class="doc"> | 209 | <div·class="doc"> |
210 | <a·id="lab | 210 | <a·id="lab1186"></a><h3·class="section">Making·the·generic·<span·class="inlinecode"><span·class="id"·title="var">order</span></span>·tactic</h3> |
211 | </div> | 211 | </div> |
212 | <div·class="code"> | 212 | <div·class="code"> |
213 | <br/> | 213 | <br/> |
214 | <span·class="id"·title="keyword">Definition</span>·<a·id="NZOrderProp.lt_compat"·class="idref"·href="#NZOrderProp.lt_compat"><span·class="id"·title="definition">lt_compat</span></a>·:=·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#NZ.lt_wd"><span·class="id"·title="axiom">lt_wd</span></a>.<br/> | 214 | <span·class="id"·title="keyword">Definition</span>·<a·id="NZOrderProp.lt_compat"·class="idref"·href="#NZOrderProp.lt_compat"><span·class="id"·title="definition">lt_compat</span></a>·:=·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#NZ.lt_wd"><span·class="id"·title="axiom">lt_wd</span></a>.<br/> |
215 | <span·class="id"·title="keyword">Definition</span>·<a·id="NZOrderProp.lt_total"·class="idref"·href="#NZOrderProp.lt_total"><span·class="id"·title="definition">lt_total</span></a>·:=·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#NZOrderProp.lt_trichotomy"><span·class="id"·title="lemma">lt_trichotomy</span></a>.<br/> | 215 | <span·class="id"·title="keyword">Definition</span>·<a·id="NZOrderProp.lt_total"·class="idref"·href="#NZOrderProp.lt_total"><span·class="id"·title="definition">lt_total</span></a>·:=·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#NZOrderProp.lt_trichotomy"><span·class="id"·title="lemma">lt_trichotomy</span></a>.<br/> |
Offset 232, 15 lines modified | Offset 232, 15 lines modified | ||
232 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#NZOrderProp.Private_OrderTac"><span·class="id"·title="module">Private_OrderTac</span></a>.<br/> | 232 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#NZOrderProp.Private_OrderTac"><span·class="id"·title="module">Private_OrderTac</span></a>.<br/> |
233 | <span·class="id"·title="keyword">Ltac</span>·<span·class="id"·title="var">order</span>·:=·<span·class="id"·title="var">Private_OrderTac.Tac.order</span>.<br/> | 233 | <span·class="id"·title="keyword">Ltac</span>·<span·class="id"·title="var">order</span>·:=·<span·class="id"·title="var">Private_OrderTac.Tac.order</span>.<br/> |
234 | <br/> | 234 | <br/> |
235 | </div> | 235 | </div> |
236 | <div·class="doc"> | 236 | <div·class="doc"> |
237 | <a·id="lab | 237 | <a·id="lab1187"></a><h3·class="section">Some·direct·consequences·of·<span·class="inlinecode"><span·class="id"·title="var">order</span></span></h3> |
238 | </div> | 238 | </div> |
239 | <div·class="code"> | 239 | <div·class="code"> |
240 | <br/> | 240 | <br/> |
241 | <span·class="id"·title="keyword">Theorem</span>·<a·id="NZOrderProp.lt_neq"·class="idref"·href="#NZOrderProp.lt_neq"><span·class="id"·title="lemma">lt_neq</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:24"·class="idref"·href="#n:24"><span·class="id"·title="binder">n</span></a>·<a·id="m:25"·class="idref"·href="#m:25"><span·class="id"·title="binder">m</span></a>,·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#n:24"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#LtNotation.:::x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#m:25"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#n:24"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#9cff58ff8ba6db8841aeeecf7f406093"><span·class="id"·title="notation">~=</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#m:25"><span·class="id"·title="variable">m</span></a>.<br/> | 241 | <span·class="id"·title="keyword">Theorem</span>·<a·id="NZOrderProp.lt_neq"·class="idref"·href="#NZOrderProp.lt_neq"><span·class="id"·title="lemma">lt_neq</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:24"·class="idref"·href="#n:24"><span·class="id"·title="binder">n</span></a>·<a·id="m:25"·class="idref"·href="#m:25"><span·class="id"·title="binder">m</span></a>,·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#n:24"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#LtNotation.:::x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#m:25"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#n:24"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#9cff58ff8ba6db8841aeeecf7f406093"><span·class="id"·title="notation">~=</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#m:25"><span·class="id"·title="variable">m</span></a>.<br/> |
242 | · | 242 | · |
Offset 277, 15 lines modified | Offset 277, 15 lines modified | ||
277 | <br/> | 277 | <br/> |
278 | <span·class="id"·title="keyword">Theorem</span>·<a·id="NZOrderProp.le_antisymm"·class="idref"·href="#NZOrderProp.le_antisymm"><span·class="id"·title="lemma">le_antisymm</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:48"·class="idref"·href="#n:48"><span·class="id"·title="binder">n</span></a>·<a·id="m:49"·class="idref"·href="#m:49"><span·class="id"·title="binder">m</span></a>,·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#n:48"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#m:49"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#m:49"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#n:48"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#n:48"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#m:49"><span·class="id"·title="variable">m</span></a>.<br/> | 278 | <span·class="id"·title="keyword">Theorem</span>·<a·id="NZOrderProp.le_antisymm"·class="idref"·href="#NZOrderProp.le_antisymm"><span·class="id"·title="lemma">le_antisymm</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:48"·class="idref"·href="#n:48"><span·class="id"·title="binder">n</span></a>·<a·id="m:49"·class="idref"·href="#m:49"><span·class="id"·title="binder">m</span></a>,·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#n:48"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#m:49"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#m:49"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#n:48"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#n:48"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#m:49"><span·class="id"·title="variable">m</span></a>.<br/> |
279 | · | 279 | · |
280 | <br/> | 280 | <br/> |
281 | </div> | 281 | </div> |
282 | <div·class="doc"> | 282 | <div·class="doc"> |
283 | <a·id="lab | 283 | <a·id="lab1188"></a><h3·class="section">More·properties·of·<span·class="inlinecode"><</span>·and·<span·class="inlinecode"><=</span>·with·respect·to·<span·class="inlinecode"><span·class="id"·title="var">S</span></span>·and·<span·class="inlinecode">0</span></h3> |
284 | </div> | 284 | </div> |
285 | <div·class="code"> | 285 | <div·class="code"> |
286 | <br/> | 286 | <br/> |
287 | <span·class="id"·title="keyword">Theorem</span>·<a·id="NZOrderProp.le_succ_r"·class="idref"·href="#NZOrderProp.le_succ_r"><span·class="id"·title="lemma">le_succ_r</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:50"·class="idref"·href="#n:50"><span·class="id"·title="binder">n</span></a>·<a·id="m:51"·class="idref"·href="#m:51"><span·class="id"·title="binder">m</span></a>,·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#n:50"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#NZ.S"><span·class="id"·title="abbreviation">S</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#m:51"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#n:50"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#m:51"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#n:50"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#NZ.S"><span·class="id"·title="abbreviation">S</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#m:51"><span·class="id"·title="variable">m</span></a>.<br/> | 287 | <span·class="id"·title="keyword">Theorem</span>·<a·id="NZOrderProp.le_succ_r"·class="idref"·href="#NZOrderProp.le_succ_r"><span·class="id"·title="lemma">le_succ_r</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:50"·class="idref"·href="#n:50"><span·class="id"·title="binder">n</span></a>·<a·id="m:51"·class="idref"·href="#m:51"><span·class="id"·title="binder">m</span></a>,·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#n:50"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#NZ.S"><span·class="id"·title="abbreviation">S</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#m:51"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#n:50"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#m:51"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#n:50"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#NZ.S"><span·class="id"·title="abbreviation">S</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#m:51"><span·class="id"·title="variable">m</span></a>.<br/> |
Offset 333, 15 lines modified | Offset 333, 15 lines modified | ||
333 | <br/> | 333 | <br/> |
334 | <span·class="id"·title="keyword">Theorem</span>·<a·id="NZOrderProp.lt_1_l"·class="idref"·href="#NZOrderProp.lt_1_l"><span·class="id"·title="lemma">lt_1_l</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:62"·class="idref"·href="#n:62"><span·class="id"·title="binder">n</span></a>·<a·id="m:63"·class="idref"·href="#m:63"><span·class="id"·title="binder">m</span></a>,·0·<a·class="idref"·href="Coq.Structures.Orders.html#LtNotation.:::x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#n:62"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#n:62"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#LtNotation.:::x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#m:63"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·1·<a·class="idref"·href="Coq.Structures.Orders.html#LtNotation.:::x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#m:63"><span·class="id"·title="variable">m</span></a>.<br/> | 334 | <span·class="id"·title="keyword">Theorem</span>·<a·id="NZOrderProp.lt_1_l"·class="idref"·href="#NZOrderProp.lt_1_l"><span·class="id"·title="lemma">lt_1_l</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:62"·class="idref"·href="#n:62"><span·class="id"·title="binder">n</span></a>·<a·id="m:63"·class="idref"·href="#m:63"><span·class="id"·title="binder">m</span></a>,·0·<a·class="idref"·href="Coq.Structures.Orders.html#LtNotation.:::x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#n:62"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#n:62"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#LtNotation.:::x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#m:63"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·1·<a·class="idref"·href="Coq.Structures.Orders.html#LtNotation.:::x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZOrder.html#m:63"><span·class="id"·title="variable">m</span></a>.<br/> |
335 | <br/> | 335 | <br/> |
336 | </div> | 336 | </div> |
337 | <div·class="doc"> | 337 | <div·class="doc"> |
338 | <a·id="lab | 338 | <a·id="lab1189"></a><h3·class="section">More·Trichotomy,·decidability·and·double·negation·elimination</h3> |
339 | <div·class="paragraph">·</div> | 339 | <div·class="paragraph">·</div> |
Max diff block lines reached; 2101/20112 bytes (10.45%) of diff not shown. |
Offset 344, 15 lines modified | Offset 344, 15 lines modified | ||
344 | (<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">C</span>·:·<a·class="idref"·href="Coq.Numbers.NatInt.NZMulOrder.html#NZMulOrderProp"><span·class="id"·title="module">NZMulOrderProp</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZSqrt.html#A"><span·class="id"·title="module">A</span></a>)<br/> | 344 | (<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">C</span>·:·<a·class="idref"·href="Coq.Numbers.NatInt.NZMulOrder.html#NZMulOrderProp"><span·class="id"·title="module">NZMulOrderProp</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZSqrt.html#A"><span·class="id"·title="module">A</span></a>)<br/> |
345 | (<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">D</span>·:·<a·class="idref"·href="Coq.Numbers.NatInt.NZSqrt.html#NZSqrtProp"><span·class="id"·title="module">NZSqrtProp</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZSqrt.html#A"><span·class="id"·title="module">A</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZSqrt.html#B"><span·class="id"·title="module">B</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZSqrt.html#C"><span·class="id"·title="module">C</span></a>).<br/> | 345 | (<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">D</span>·:·<a·class="idref"·href="Coq.Numbers.NatInt.NZSqrt.html#NZSqrtProp"><span·class="id"·title="module">NZSqrtProp</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZSqrt.html#A"><span·class="id"·title="module">A</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZSqrt.html#B"><span·class="id"·title="module">B</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZSqrt.html#C"><span·class="id"·title="module">C</span></a>).<br/> |
346 | <br/> | 346 | <br/> |
347 | </div> | 347 | </div> |
348 | <div·class="doc"> | 348 | <div·class="doc"> |
349 | <a·id="lab | 349 | <a·id="lab1201"></a><h1·class="section"><span·class="inlinecode"><span·class="id"·title="var">sqrt_up</span></span>·:·a·square·root·that·rounds·up·instead·of·down</h1> |
350 | </div> | 350 | </div> |
351 | <div·class="code"> | 351 | <div·class="code"> |
352 | <br/> | 352 | <br/> |
353 | <span·class="id"·title="keyword">Local·Notation</span>·<a·id="81ce257586db1a446e3fc4dfd8f6874e"·class="idref"·href="#81ce257586db1a446e3fc4dfd8f6874e"><span·class="id"·title="notation">"</span></a>a·²"·:=·(<span·class="id"·title="var">a</span><a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#797430c1791311f6dff109b908d9a13c"><span·class="id"·title="notation">*</span></a><span·class="id"·title="var">a</span>)·(<span·class="id"·title="tactic">at</span>·<span·class="id"·title="keyword">level</span>·5,·<span·class="id"·title="keyword">no</span>·<span·class="id"·title="keyword">associativity</span>,·<span·class="id"·title="var">format</span>·"a·²").<br/> | 353 | <span·class="id"·title="keyword">Local·Notation</span>·<a·id="81ce257586db1a446e3fc4dfd8f6874e"·class="idref"·href="#81ce257586db1a446e3fc4dfd8f6874e"><span·class="id"·title="notation">"</span></a>a·²"·:=·(<span·class="id"·title="var">a</span><a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#797430c1791311f6dff109b908d9a13c"><span·class="id"·title="notation">*</span></a><span·class="id"·title="var">a</span>)·(<span·class="id"·title="tactic">at</span>·<span·class="id"·title="keyword">level</span>·5,·<span·class="id"·title="keyword">no</span>·<span·class="id"·title="keyword">associativity</span>,·<span·class="id"·title="var">format</span>·"a·²").<br/> |
Offset 154, 15 lines modified | Offset 154, 15 lines modified | ||
154 | <br/> | 154 | <br/> |
155 | <span·class="id"·title="keyword">Theorem</span>·<a·id="NDivProp.mod_small"·class="idref"·href="#NDivProp.mod_small"><span·class="id"·title="lemma">mod_small</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:25"·class="idref"·href="#a:25"><span·class="id"·title="binder">a</span></a>·<a·id="b:26"·class="idref"·href="#b:26"><span·class="id"·title="binder">b</span></a>,·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#a:25"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Structures.Orders.html#LtNotation.:::x_'<'_x"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#b:26"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#a:25"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#b:26"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#a:25"><span·class="id"·title="variable">a</span></a>.<br/> | 155 | <span·class="id"·title="keyword">Theorem</span>·<a·id="NDivProp.mod_small"·class="idref"·href="#NDivProp.mod_small"><span·class="id"·title="lemma">mod_small</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:25"·class="idref"·href="#a:25"><span·class="id"·title="binder">a</span></a>·<a·id="b:26"·class="idref"·href="#b:26"><span·class="id"·title="binder">b</span></a>,·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#a:25"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Structures.Orders.html#LtNotation.:::x_'<'_x"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#b:26"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#a:25"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#b:26"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#a:25"><span·class="id"·title="variable">a</span></a>.<br/> |
156 | · | 156 | · |
157 | <br/> | 157 | <br/> |
158 | </div> | 158 | </div> |
159 | <div·class="doc"> | 159 | <div·class="doc"> |
160 | <a·id="lab | 160 | <a·id="lab1217"></a><h1·class="section">Basic·values·of·divisions·and·modulo.</h1> |
161 | </div> | 161 | </div> |
162 | <div·class="code"> | 162 | <div·class="code"> |
163 | <br/> | 163 | <br/> |
164 | <span·class="id"·title="keyword">Lemma</span>·<a·id="NDivProp.div_0_l"·class="idref"·href="#NDivProp.div_0_l"><span·class="id"·title="lemma">div_0_l</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:27"·class="idref"·href="#a:27"><span·class="id"·title="binder">a</span></a>,·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#a:27"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#9cff58ff8ba6db8841aeeecf7f406093"><span·class="id"·title="notation">~=</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#553b1e0c6dfeea0fb5d9a4a0a1c7f719"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#a:27"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·0.<br/> | 164 | <span·class="id"·title="keyword">Lemma</span>·<a·id="NDivProp.div_0_l"·class="idref"·href="#NDivProp.div_0_l"><span·class="id"·title="lemma">div_0_l</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:27"·class="idref"·href="#a:27"><span·class="id"·title="binder">a</span></a>,·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#a:27"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#9cff58ff8ba6db8841aeeecf7f406093"><span·class="id"·title="notation">~=</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#553b1e0c6dfeea0fb5d9a4a0a1c7f719"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#a:27"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·0.<br/> |
165 | · | 165 | · |
Offset 187, 15 lines modified | Offset 187, 15 lines modified | ||
187 | <br/> | 187 | <br/> |
188 | <span·class="id"·title="keyword">Lemma</span>·<a·id="NDivProp.mod_mul"·class="idref"·href="#NDivProp.mod_mul"><span·class="id"·title="lemma">mod_mul</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="a:35"·class="idref"·href="#a:35"><span·class="id"·title="binder">a</span></a>·<a·id="b:36"·class="idref"·href="#b:36"><span·class="id"·title="binder">b</span></a>,·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#b:36"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#9cff58ff8ba6db8841aeeecf7f406093"><span·class="id"·title="notation">~=</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#a:35"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#797430c1791311f6dff109b908d9a13c"><span·class="id"·title="notation">*</span></a><a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#b:36"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#b:36"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·0.<br/> | 188 | <span·class="id"·title="keyword">Lemma</span>·<a·id="NDivProp.mod_mul"·class="idref"·href="#NDivProp.mod_mul"><span·class="id"·title="lemma">mod_mul</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="a:35"·class="idref"·href="#a:35"><span·class="id"·title="binder">a</span></a>·<a·id="b:36"·class="idref"·href="#b:36"><span·class="id"·title="binder">b</span></a>,·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#b:36"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#9cff58ff8ba6db8841aeeecf7f406093"><span·class="id"·title="notation">~=</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#a:35"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#797430c1791311f6dff109b908d9a13c"><span·class="id"·title="notation">*</span></a><a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#b:36"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#b:36"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·0.<br/> |
189 | · | 189 | · |
190 | <br/> | 190 | <br/> |
191 | </div> | 191 | </div> |
192 | <div·class="doc"> | 192 | <div·class="doc"> |
193 | <a·id="lab | 193 | <a·id="lab1218"></a><h1·class="section">Order·results·about·mod·and·div</h1> |
194 | <div·class="paragraph">·</div> | 194 | <div·class="paragraph">·</div> |
195 | ·A·modulo·cannot·grow·beyond·its·starting·point.· | 195 | ·A·modulo·cannot·grow·beyond·its·starting·point.· |
196 | </div> | 196 | </div> |
197 | <div·class="code"> | 197 | <div·class="code"> |
Offset 285, 15 lines modified | Offset 285, 15 lines modified | ||
285 | <br/> | 285 | <br/> |
286 | <span·class="id"·title="keyword">Lemma</span>·<a·id="NDivProp.div_le_compat_l"·class="idref"·href="#NDivProp.div_le_compat_l"><span·class="id"·title="lemma">div_le_compat_l</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="p:67"·class="idref"·href="#p:67"><span·class="id"·title="binder">p</span></a>·<a·id="q:68"·class="idref"·href="#q:68"><span·class="id"·title="binder">q</span></a>·<a·id="r:69"·class="idref"·href="#r:69"><span·class="id"·title="binder">r</span></a>,·0<a·class="idref"·href="Coq.Structures.Orders.html#8c602530c59c13bd8ba993c0e201cbd3"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#q:68"><span·class="id"·title="variable">q</span></a><a·class="idref"·href="Coq.Structures.Orders.html#8c602530c59c13bd8ba993c0e201cbd3"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#r:69"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#p:67"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#553b1e0c6dfeea0fb5d9a4a0a1c7f719"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#r:69"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#p:67"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#553b1e0c6dfeea0fb5d9a4a0a1c7f719"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#q:68"><span·class="id"·title="variable">q</span></a>.<br/> | 286 | <span·class="id"·title="keyword">Lemma</span>·<a·id="NDivProp.div_le_compat_l"·class="idref"·href="#NDivProp.div_le_compat_l"><span·class="id"·title="lemma">div_le_compat_l</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="p:67"·class="idref"·href="#p:67"><span·class="id"·title="binder">p</span></a>·<a·id="q:68"·class="idref"·href="#q:68"><span·class="id"·title="binder">q</span></a>·<a·id="r:69"·class="idref"·href="#r:69"><span·class="id"·title="binder">r</span></a>,·0<a·class="idref"·href="Coq.Structures.Orders.html#8c602530c59c13bd8ba993c0e201cbd3"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#q:68"><span·class="id"·title="variable">q</span></a><a·class="idref"·href="Coq.Structures.Orders.html#8c602530c59c13bd8ba993c0e201cbd3"><span·class="id"·title="notation"><=</span></a><a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#r:69"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#p:67"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#553b1e0c6dfeea0fb5d9a4a0a1c7f719"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#r:69"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#p:67"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#553b1e0c6dfeea0fb5d9a4a0a1c7f719"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#q:68"><span·class="id"·title="variable">q</span></a>.<br/> |
287 | · | 287 | · |
288 | <br/> | 288 | <br/> |
289 | </div> | 289 | </div> |
290 | <div·class="doc"> | 290 | <div·class="doc"> |
291 | <a·id="lab | 291 | <a·id="lab1219"></a><h1·class="section">Relations·between·usual·operations·and·mod·and·div</h1> |
292 | </div> | 292 | </div> |
293 | <div·class="code"> | 293 | <div·class="code"> |
294 | <br/> | 294 | <br/> |
295 | <span·class="id"·title="keyword">Lemma</span>·<a·id="NDivProp.mod_add"·class="idref"·href="#NDivProp.mod_add"><span·class="id"·title="lemma">mod_add</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="a:70"·class="idref"·href="#a:70"><span·class="id"·title="binder">a</span></a>·<a·id="b:71"·class="idref"·href="#b:71"><span·class="id"·title="binder">b</span></a>·<a·id="c:72"·class="idref"·href="#c:72"><span·class="id"·title="binder">c</span></a>,·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#c:72"><span·class="id"·title="variable">c</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#9cff58ff8ba6db8841aeeecf7f406093"><span·class="id"·title="notation">~=</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 295 | <span·class="id"·title="keyword">Lemma</span>·<a·id="NDivProp.mod_add"·class="idref"·href="#NDivProp.mod_add"><span·class="id"·title="lemma">mod_add</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="a:70"·class="idref"·href="#a:70"><span·class="id"·title="binder">a</span></a>·<a·id="b:71"·class="idref"·href="#b:71"><span·class="id"·title="binder">b</span></a>·<a·id="c:72"·class="idref"·href="#c:72"><span·class="id"·title="binder">c</span></a>,·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#c:72"><span·class="id"·title="variable">c</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#9cff58ff8ba6db8841aeeecf7f406093"><span·class="id"·title="notation">~=</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
296 | <a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#a:70"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#c2e8aaaa0a712025cad3c7b3ed5aeff2"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#b:71"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#797430c1791311f6dff109b908d9a13c"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#c:72"><span·class="id"·title="variable">c</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#c:72"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#a:70"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#c:72"><span·class="id"·title="variable">c</span></a>.<br/> | 296 | <a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#a:70"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#c2e8aaaa0a712025cad3c7b3ed5aeff2"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#b:71"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZAxioms.html#797430c1791311f6dff109b908d9a13c"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#c:72"><span·class="id"·title="variable">c</span></a><a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#c:72"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#a:70"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Numbers.NatInt.NZDiv.html#DivModNotation.:::x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#c:72"><span·class="id"·title="variable">c</span></a>.<br/> |
Offset 48, 15 lines modified | Offset 48, 15 lines modified | ||
48 | <br/> | 48 | <br/> |
49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NAxioms.html#"><span·class="id"·title="library">NAxioms</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NSub.html#"><span·class="id"·title="library">NSub</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#"><span·class="id"·title="library">NDiv</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NGcd.html#"><span·class="id"·title="library">NGcd</span></a>.<br/> | 49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NAxioms.html#"><span·class="id"·title="library">NAxioms</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NSub.html#"><span·class="id"·title="library">NSub</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NDiv.html#"><span·class="id"·title="library">NDiv</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NGcd.html#"><span·class="id"·title="library">NGcd</span></a>.<br/> |
50 | <br/> | 50 | <br/> |
51 | </div> | 51 | </div> |
52 | <div·class="doc"> | 52 | <div·class="doc"> |
53 | <a·id="lab | 53 | <a·id="lab1220"></a><h1·class="section">Least·Common·Multiple</h1> |
54 | <div·class="paragraph">·</div> | 54 | <div·class="paragraph">·</div> |
55 | ·Unlike·other·functions·around,·we·will·define·lcm·below·instead·of | 55 | ·Unlike·other·functions·around,·we·will·define·lcm·below·instead·of |
56 | ··axiomatizing·it.·Indeed,·there·is·no·"prior·art"·about·lcm·in·the | 56 | ··axiomatizing·it.·Indeed,·there·is·no·"prior·art"·about·lcm·in·the |
57 | ··standard·library·to·be·compliant·with,·and·the·generic·definition | 57 | ··standard·library·to·be·compliant·with,·and·the·generic·definition |
58 | ··of·lcm·via·gcd·is·quite·reasonable. | 58 | ··of·lcm·via·gcd·is·quite·reasonable. |
Offset 48, 15 lines modified | Offset 48, 15 lines modified | ||
48 | <br/> | 48 | <br/> |
49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NAxioms.html#"><span·class="id"·title="library">NAxioms</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NSub.html#"><span·class="id"·title="library">NSub</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#"><span·class="id"·title="library">GenericMinMax</span></a>.<br/> | 49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NAxioms.html#"><span·class="id"·title="library">NAxioms</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NSub.html#"><span·class="id"·title="library">NSub</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#"><span·class="id"·title="library">GenericMinMax</span></a>.<br/> |
50 | <br/> | 50 | <br/> |
51 | </div> | 51 | </div> |
52 | <div·class="doc"> | 52 | <div·class="doc"> |
53 | <a·id="lab | 53 | <a·id="lab1216"></a><h1·class="section">Properties·of·minimum·and·maximum·specific·to·natural·numbers</h1> |
54 | </div> | 54 | </div> |
55 | <div·class="code"> | 55 | <div·class="code"> |
56 | <br/> | 56 | <br/> |
57 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="NMaxMinProp"·class="idref"·href="#NMaxMinProp"><span·class="id"·title="module">NMaxMinProp</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">N</span>·:·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NAxioms.html#NAxiomsMiniSig'"><span·class="id"·title="module">NAxiomsMiniSig'</span></a>).<br/> | 57 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="NMaxMinProp"·class="idref"·href="#NMaxMinProp"><span·class="id"·title="module">NMaxMinProp</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">N</span>·:·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NAxioms.html#NAxiomsMiniSig'"><span·class="id"·title="module">NAxiomsMiniSig'</span></a>).<br/> |
58 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NSub.html#NSubProp"><span·class="id"·title="module">NSubProp</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NMaxMin.html#N"><span·class="id"·title="module">N</span></a>.<br/> | 58 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NSub.html#NSubProp"><span·class="id"·title="module">NSubProp</span></a>·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NMaxMin.html#N"><span·class="id"·title="module">N</span></a>.<br/> |
Offset 55, 15 lines modified | Offset 55, 15 lines modified | ||
55 | <br/> | 55 | <br/> |
56 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">N_scope</span>.<br/> | 56 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">N_scope</span>.<br/> |
57 | <br/> | 57 | <br/> |
58 | </div> | 58 | </div> |
59 | <div·class="doc"> | 59 | <div·class="doc"> |
60 | <a·id="lab | 60 | <a·id="lab1215"></a><h1·class="section"><span·class="inlinecode"><span·class="id"·title="var">BinNat.N</span></span>·already·implements·<span·class="inlinecode"><span·class="id"·title="var">NAxiomSig</span></span></h1> |
61 | </div> | 61 | </div> |
62 | <div·class="code"> | 62 | <div·class="code"> |
63 | <br/> | 63 | <br/> |
64 | <span·class="id"·title="keyword">Module</span>·<a·id="N"·class="idref"·href="#N"><span·class="id"·title="module">N</span></a>·<:·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NAxioms.html#NAxiomsSig"><span·class="id"·title="module">NAxiomsSig</span></a>·:=·<a·class="idref"·href="Coq.NArith.BinNat.html#N"><span·class="id"·title="module">N</span></a>.<br/> | 64 | <span·class="id"·title="keyword">Module</span>·<a·id="N"·class="idref"·href="#N"><span·class="id"·title="module">N</span></a>·<:·<a·class="idref"·href="Coq.Numbers.Natural.Abstract.NAxioms.html#NAxiomsSig"><span·class="id"·title="module">NAxiomsSig</span></a>·:=·<a·class="idref"·href="Coq.NArith.BinNat.html#N"><span·class="id"·title="module">N</span></a>.<br/> |
Offset 53, 15 lines modified | Offset 53, 15 lines modified | ||
53 | <br/> | 53 | <br/> |
54 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.PArith.BinPosDef.html#"><span·class="id"·title="library">BinPosDef</span></a>.<br/> | 54 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.PArith.BinPosDef.html#"><span·class="id"·title="library">BinPosDef</span></a>.<br/> |
55 | <br/> | 55 | <br/> |
56 | </div> | 56 | </div> |
57 | <div·class="doc"> | 57 | <div·class="doc"> |
58 | <a·id="lab | 58 | <a·id="lab189"></a><h1·class="section">Binary·positive·numbers,·operations·and·properties</h1> |
59 | <div·class="paragraph">·</div> | 59 | <div·class="paragraph">·</div> |
60 | ·Initial·development·by·Pierre·Crégut,·CNET,·Lannion,·France· | 60 | ·Initial·development·by·Pierre·Crégut,·CNET,·Lannion,·France· |
61 | <div·class="paragraph">·</div> | 61 | <div·class="paragraph">·</div> |
62 | ·The·type·<span·class="inlinecode"><span·class="id"·title="var">positive</span></span>·and·its·constructors·<span·class="inlinecode"><span·class="id"·title="var">xI</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">xO</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">xH</span></span> | 62 | ·The·type·<span·class="inlinecode"><span·class="id"·title="var">positive</span></span>·and·its·constructors·<span·class="inlinecode"><span·class="id"·title="var">xI</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">xO</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">xH</span></span> |
Offset 87, 15 lines modified | Offset 87, 15 lines modified | ||
87 | <:·<a·class="idref"·href="Coq.Structures.Equalities.html#UsualDecidableTypeFull"><span·class="id"·title="module">UsualDecidableTypeFull</span></a><br/> | 87 | <:·<a·class="idref"·href="Coq.Structures.Equalities.html#UsualDecidableTypeFull"><span·class="id"·title="module">UsualDecidableTypeFull</span></a><br/> |
88 | <:·<a·class="idref"·href="Coq.Structures.Orders.html#TotalOrder"><span·class="id"·title="module">TotalOrder</span></a>.<br/> | 88 | <:·<a·class="idref"·href="Coq.Structures.Orders.html#TotalOrder"><span·class="id"·title="module">TotalOrder</span></a>.<br/> |
89 | <br/> | 89 | <br/> |
90 | </div> | 90 | </div> |
91 | <div·class="doc"> | 91 | <div·class="doc"> |
92 | <a·id="lab | 92 | <a·id="lab190"></a><h1·class="section">Definitions·of·operations,·now·in·a·separate·file</h1> |
93 | </div> | 93 | </div> |
94 | <div·class="code"> | 94 | <div·class="code"> |
95 | <br/> | 95 | <br/> |
96 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.PArith.BinPosDef.html#Pos"><span·class="id"·title="module">BinPosDef.Pos</span></a>.<br/> | 96 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.PArith.BinPosDef.html#Pos"><span·class="id"·title="module">BinPosDef.Pos</span></a>.<br/> |
Offset 109, 15 lines modified | Offset 109, 15 lines modified | ||
109 | <br/> | 109 | <br/> |
110 | <br/> | 110 | <br/> |
111 | </div> | 111 | </div> |
112 | <div·class="doc"> | 112 | <div·class="doc"> |
113 | <a·id="lab | 113 | <a·id="lab191"></a><h1·class="section">Logical·Predicates</h1> |
114 | </div> | 114 | </div> |
115 | <div·class="code"> | 115 | <div·class="code"> |
116 | <br/> | 116 | <br/> |
117 | <span·class="id"·title="keyword">Definition</span>·<a·id="Pos.eq"·class="idref"·href="#Pos.eq"><span·class="id"·title="definition">eq</span></a>·:=·@<a·class="idref"·href="Coq.Init.Logic.html#eq"><span·class="id"·title="inductive">Logic.eq</span></a>·<a·class="idref"·href="Coq.Numbers.BinNums.html#positive"><span·class="id"·title="inductive">positive</span></a>.<br/> | 117 | <span·class="id"·title="keyword">Definition</span>·<a·id="Pos.eq"·class="idref"·href="#Pos.eq"><span·class="id"·title="definition">eq</span></a>·:=·@<a·class="idref"·href="Coq.Init.Logic.html#eq"><span·class="id"·title="inductive">Logic.eq</span></a>·<a·class="idref"·href="Coq.Numbers.BinNums.html#positive"><span·class="id"·title="inductive">positive</span></a>.<br/> |
118 | <span·class="id"·title="keyword">Definition</span>·<a·id="Pos.eq_equiv"·class="idref"·href="#Pos.eq_equiv"><span·class="id"·title="definition">eq_equiv</span></a>·:=·@<a·class="idref"·href="Coq.Classes.RelationClasses.html#eq_equivalence"><span·class="id"·title="instance">eq_equivalence</span></a>·<a·class="idref"·href="Coq.Numbers.BinNums.html#positive"><span·class="id"·title="inductive">positive</span></a>.<br/> | 118 | <span·class="id"·title="keyword">Definition</span>·<a·id="Pos.eq_equiv"·class="idref"·href="#Pos.eq_equiv"><span·class="id"·title="definition">eq_equiv</span></a>·:=·@<a·class="idref"·href="Coq.Classes.RelationClasses.html#eq_equivalence"><span·class="id"·title="instance">eq_equivalence</span></a>·<a·class="idref"·href="Coq.Numbers.BinNums.html#positive"><span·class="id"·title="inductive">positive</span></a>.<br/> |
Offset 141, 50 lines modified | Offset 141, 50 lines modified | ||
141 | <span·class="id"·title="keyword">Notation</span>·<a·id="Pos.::positive_scope:x_'<'_x_'<'_x"·class="idref"·href="#Pos.::positive_scope:x_'<'_x_'<'_x"><span·class="id"·title="notation">"</span></a>x·<·y·<·z"·:=·(<span·class="id"·title="var">x</span>·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.::positive_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<span·class="id"·title="var">y</span>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<span·class="id"·title="var">y</span>·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.::positive_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<span·class="id"·title="var">z</span>)·:·<span·class="id"·title="var">positive_scope</span>.<br/> | 141 | <span·class="id"·title="keyword">Notation</span>·<a·id="Pos.::positive_scope:x_'<'_x_'<'_x"·class="idref"·href="#Pos.::positive_scope:x_'<'_x_'<'_x"><span·class="id"·title="notation">"</span></a>x·<·y·<·z"·:=·(<span·class="id"·title="var">x</span>·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.::positive_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<span·class="id"·title="var">y</span>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<span·class="id"·title="var">y</span>·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.::positive_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<span·class="id"·title="var">z</span>)·:·<span·class="id"·title="var">positive_scope</span>.<br/> |
142 | <span·class="id"·title="keyword">Notation</span>·<a·id="30eae3eb4d3ddeda607a70d5afc54c43"·class="idref"·href="#30eae3eb4d3ddeda607a70d5afc54c43"><span·class="id"·title="notation">"</span></a>x·<·y·<=·z"·:=·(<span·class="id"·title="var">x</span>·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.::positive_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<span·class="id"·title="var">y</span>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<span·class="id"·title="var">y</span>·<a·class="idref"·href="Coq.PArith.BinPos.html#7f6b3352e24ef34244d88fe88c6d33f0"><span·class="id"·title="notation"><=</span></a>·<span·class="id"·title="var">z</span>)·:·<span·class="id"·title="var">positive_scope</span>.<br/> | 142 | <span·class="id"·title="keyword">Notation</span>·<a·id="30eae3eb4d3ddeda607a70d5afc54c43"·class="idref"·href="#30eae3eb4d3ddeda607a70d5afc54c43"><span·class="id"·title="notation">"</span></a>x·<·y·<=·z"·:=·(<span·class="id"·title="var">x</span>·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.::positive_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<span·class="id"·title="var">y</span>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<span·class="id"·title="var">y</span>·<a·class="idref"·href="Coq.PArith.BinPos.html#7f6b3352e24ef34244d88fe88c6d33f0"><span·class="id"·title="notation"><=</span></a>·<span·class="id"·title="var">z</span>)·:·<span·class="id"·title="var">positive_scope</span>.<br/> |
143 | <br/> | 143 | <br/> |
144 | </div> | 144 | </div> |
145 | <div·class="doc"> | 145 | <div·class="doc"> |
146 | <a·id="lab | 146 | <a·id="lab192"></a><h1·class="section">Properties·of·operations·over·positive·numbers</h1> |
147 | <div·class="paragraph">·</div> | 147 | <div·class="paragraph">·</div> |
148 | <a·id="lab | 148 | <a·id="lab193"></a><h2·class="section">Decidability·of·equality·on·binary·positive·numbers</h2> |
149 | </div> | 149 | </div> |
150 | <div·class="code"> | 150 | <div·class="code"> |
151 | <br/> | 151 | <br/> |
152 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Pos.eq_dec"·class="idref"·href="#Pos.eq_dec"><span·class="id"·title="lemma">eq_dec</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:9"·class="idref"·href="#x:9"><span·class="id"·title="binder">x</span></a>·<a·id="y:10"·class="idref"·href="#y:10"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#positive"><span·class="id"·title="inductive">positive</span></a>,·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.PArith.BinPos.html#x:9"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#y:10"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.PArith.BinPos.html#x:9"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#y:10"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>.<br/> | 152 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Pos.eq_dec"·class="idref"·href="#Pos.eq_dec"><span·class="id"·title="lemma">eq_dec</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:9"·class="idref"·href="#x:9"><span·class="id"·title="binder">x</span></a>·<a·id="y:10"·class="idref"·href="#y:10"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#positive"><span·class="id"·title="inductive">positive</span></a>,·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.PArith.BinPos.html#x:9"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#y:10"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.PArith.BinPos.html#x:9"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#y:10"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>.<br/> |
153 | <br/> | 153 | <br/> |
154 | </div> | 154 | </div> |
155 | <div·class="doc"> | 155 | <div·class="doc"> |
156 | <a·id="lab | 156 | <a·id="lab194"></a><h1·class="section">Properties·of·successor·on·binary·positive·numbers</h1> |
157 | <div·class="paragraph">·</div> | 157 | <div·class="paragraph">·</div> |
158 | <a·id="lab | 158 | <a·id="lab195"></a><h2·class="section">Specification·of·<span·class="inlinecode"><span·class="id"·title="var">xI</span></span>·in·term·of·<span·class="inlinecode"><span·class="id"·title="var">succ</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">xO</span></span></h2> |
159 | </div> | 159 | </div> |
160 | <div·class="code"> | 160 | <div·class="code"> |
161 | <br/> | 161 | <br/> |
162 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Pos.xI_succ_xO"·class="idref"·href="#Pos.xI_succ_xO"><span·class="id"·title="lemma">xI_succ_xO</span></a>·<a·id="p:11"·class="idref"·href="#p:11"><span·class="id"·title="binder">p</span></a>·:·<a·class="idref"·href="Coq.PArith.BinPos.html#p:11"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.PArith.BinPosDef.html#119ad21c8e0c4947cd973f1f72e5feea"><span·class="id"·title="notation">~1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.succ"><span·class="id"·title="definition">succ</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#p:11"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.PArith.BinPosDef.html#35713fcadfdd66af247cbf95acf859fa"><span·class="id"·title="notation">~0</span></a>.<br/> | 162 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Pos.xI_succ_xO"·class="idref"·href="#Pos.xI_succ_xO"><span·class="id"·title="lemma">xI_succ_xO</span></a>·<a·id="p:11"·class="idref"·href="#p:11"><span·class="id"·title="binder">p</span></a>·:·<a·class="idref"·href="Coq.PArith.BinPos.html#p:11"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.PArith.BinPosDef.html#119ad21c8e0c4947cd973f1f72e5feea"><span·class="id"·title="notation">~1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.succ"><span·class="id"·title="definition">succ</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#p:11"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.PArith.BinPosDef.html#35713fcadfdd66af247cbf95acf859fa"><span·class="id"·title="notation">~0</span></a>.<br/> |
163 | <br/> | 163 | <br/> |
164 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Pos.succ_discr"·class="idref"·href="#Pos.succ_discr"><span·class="id"·title="lemma">succ_discr</span></a>·<a·id="p:12"·class="idref"·href="#p:12"><span·class="id"·title="binder">p</span></a>·:·<a·class="idref"·href="Coq.PArith.BinPos.html#p:12"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.succ"><span·class="id"·title="definition">succ</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#p:12"><span·class="id"·title="variable">p</span></a>.<br/> | 164 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Pos.succ_discr"·class="idref"·href="#Pos.succ_discr"><span·class="id"·title="lemma">succ_discr</span></a>·<a·id="p:12"·class="idref"·href="#p:12"><span·class="id"·title="binder">p</span></a>·:·<a·class="idref"·href="Coq.PArith.BinPos.html#p:12"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.succ"><span·class="id"·title="definition">succ</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#p:12"><span·class="id"·title="variable">p</span></a>.<br/> |
165 | <br/> | 165 | <br/> |
166 | </div> | 166 | </div> |
167 | <div·class="doc"> | 167 | <div·class="doc"> |
168 | <a·id="lab | 168 | <a·id="lab196"></a><h2·class="section">Successor·and·double</h2> |
169 | </div> | 169 | </div> |
170 | <div·class="code"> | 170 | <div·class="code"> |
171 | <br/> | 171 | <br/> |
172 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Pos.pred_double_spec"·class="idref"·href="#Pos.pred_double_spec"><span·class="id"·title="lemma">pred_double_spec</span></a>·<a·id="p:13"·class="idref"·href="#p:13"><span·class="id"·title="binder">p</span></a>·:·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.pred_double"><span·class="id"·title="definition">pred_double</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#p:13"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.pred"><span·class="id"·title="definition">pred</span></a>·(<a·class="idref"·href="Coq.PArith.BinPos.html#p:13"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.PArith.BinPosDef.html#35713fcadfdd66af247cbf95acf859fa"><span·class="id"·title="notation">~0</span></a>).<br/> | 172 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Pos.pred_double_spec"·class="idref"·href="#Pos.pred_double_spec"><span·class="id"·title="lemma">pred_double_spec</span></a>·<a·id="p:13"·class="idref"·href="#p:13"><span·class="id"·title="binder">p</span></a>·:·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.pred_double"><span·class="id"·title="definition">pred_double</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#p:13"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.pred"><span·class="id"·title="definition">pred</span></a>·(<a·class="idref"·href="Coq.PArith.BinPos.html#p:13"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.PArith.BinPosDef.html#35713fcadfdd66af247cbf95acf859fa"><span·class="id"·title="notation">~0</span></a>).<br/> |
Offset 200, 15 lines modified | Offset 200, 15 lines modified | ||
200 | <br/> | 200 | <br/> |
201 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Pos.pred_double_xO_discr"·class="idref"·href="#Pos.pred_double_xO_discr"><span·class="id"·title="lemma">pred_double_xO_discr</span></a>·<a·id="p:17"·class="idref"·href="#p:17"><span·class="id"·title="binder">p</span></a>·:·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.pred_double"><span·class="id"·title="definition">pred_double</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#p:17"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#p:17"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.PArith.BinPosDef.html#35713fcadfdd66af247cbf95acf859fa"><span·class="id"·title="notation">~0</span></a>.<br/> | 201 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Pos.pred_double_xO_discr"·class="idref"·href="#Pos.pred_double_xO_discr"><span·class="id"·title="lemma">pred_double_xO_discr</span></a>·<a·id="p:17"·class="idref"·href="#p:17"><span·class="id"·title="binder">p</span></a>·:·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.pred_double"><span·class="id"·title="definition">pred_double</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#p:17"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#p:17"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.PArith.BinPosDef.html#35713fcadfdd66af247cbf95acf859fa"><span·class="id"·title="notation">~0</span></a>.<br/> |
202 | <br/> | 202 | <br/> |
203 | </div> | 203 | </div> |
204 | <div·class="doc"> | 204 | <div·class="doc"> |
205 | <a·id="lab | 205 | <a·id="lab197"></a><h2·class="section">Successor·and·predecessor</h2> |
206 | </div> | 206 | </div> |
207 | <div·class="code"> | 207 | <div·class="code"> |
208 | <br/> | 208 | <br/> |
209 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Pos.succ_not_1"·class="idref"·href="#Pos.succ_not_1"><span·class="id"·title="lemma">succ_not_1</span></a>·<a·id="p:18"·class="idref"·href="#p:18"><span·class="id"·title="binder">p</span></a>·:·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.succ"><span·class="id"·title="definition">succ</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#p:18"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·1.<br/> | 209 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Pos.succ_not_1"·class="idref"·href="#Pos.succ_not_1"><span·class="id"·title="lemma">succ_not_1</span></a>·<a·id="p:18"·class="idref"·href="#p:18"><span·class="id"·title="binder">p</span></a>·:·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.succ"><span·class="id"·title="definition">succ</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#p:18"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·1.<br/> |
Offset 221, 107 lines modified | Offset 221, 107 lines modified | ||
221 | <br/> | 221 | <br/> |
222 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Pos.succ_pred"·class="idref"·href="#Pos.succ_pred"><span·class="id"·title="lemma">succ_pred</span></a>·<a·id="p:21"·class="idref"·href="#p:21"><span·class="id"·title="binder">p</span></a>·:·<a·class="idref"·href="Coq.PArith.BinPos.html#p:21"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·1·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.succ"><span·class="id"·title="definition">succ</span></a>·(<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.pred"><span·class="id"·title="definition">pred</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#p:21"><span·class="id"·title="variable">p</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#p:21"><span·class="id"·title="variable">p</span></a>.<br/> | 222 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Pos.succ_pred"·class="idref"·href="#Pos.succ_pred"><span·class="id"·title="lemma">succ_pred</span></a>·<a·id="p:21"·class="idref"·href="#p:21"><span·class="id"·title="binder">p</span></a>·:·<a·class="idref"·href="Coq.PArith.BinPos.html#p:21"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·1·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.succ"><span·class="id"·title="definition">succ</span></a>·(<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.pred"><span·class="id"·title="definition">pred</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#p:21"><span·class="id"·title="variable">p</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#p:21"><span·class="id"·title="variable">p</span></a>.<br/> |
223 | <br/> | 223 | <br/> |
224 | </div> | 224 | </div> |
225 | <div·class="doc"> | 225 | <div·class="doc"> |
226 | <a·id="lab | 226 | <a·id="lab198"></a><h2·class="section">Injectivity·of·successor</h2> |
227 | </div> | 227 | </div> |
228 | <div·class="code"> | 228 | <div·class="code"> |
Max diff block lines reached; 123752/137139 bytes (90.24%) of diff not shown. |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab162"></a><h1·class="section">Binary·positive·numbers,·operations</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·Initial·development·by·Pierre·Crégut,·CNET,·Lannion,·France· | 51 | ·Initial·development·by·Pierre·Crégut,·CNET,·Lannion,·France· |
52 | <div·class="paragraph">·</div> | 52 | <div·class="paragraph">·</div> |
53 | ·The·type·<span·class="inlinecode"><span·class="id"·title="var">positive</span></span>·and·its·constructors·<span·class="inlinecode"><span·class="id"·title="var">xI</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">xO</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">xH</span></span> | 53 | ·The·type·<span·class="inlinecode"><span·class="id"·title="var">positive</span></span>·and·its·constructors·<span·class="inlinecode"><span·class="id"·title="var">xI</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">xO</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">xH</span></span> |
Offset 94, 19 lines modified | Offset 94, 19 lines modified | ||
94 | <br/> | 94 | <br/> |
95 | <span·class="id"·title="keyword">Definition</span>·<a·id="Pos.t"·class="idref"·href="#Pos.t"><span·class="id"·title="definition">t</span></a>·:=·<a·class="idref"·href="Coq.Numbers.BinNums.html#positive"><span·class="id"·title="inductive">positive</span></a>.<br/> | 95 | <span·class="id"·title="keyword">Definition</span>·<a·id="Pos.t"·class="idref"·href="#Pos.t"><span·class="id"·title="definition">t</span></a>·:=·<a·class="idref"·href="Coq.Numbers.BinNums.html#positive"><span·class="id"·title="inductive">positive</span></a>.<br/> |
96 | <br/> | 96 | <br/> |
97 | </div> | 97 | </div> |
98 | <div·class="doc"> | 98 | <div·class="doc"> |
99 | <a·id="lab | 99 | <a·id="lab163"></a><h1·class="section">Operations·over·positive·numbers</h1> |
100 | <div·class="paragraph">·</div> | 100 | <div·class="paragraph">·</div> |
101 | <a·id="lab | 101 | <a·id="lab164"></a><h2·class="section">Successor</h2> |
102 | </div> | 102 | </div> |
103 | <div·class="code"> | 103 | <div·class="code"> |
104 | <br/> | 104 | <br/> |
105 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Pos.succ"·class="idref"·href="#Pos.succ"><span·class="id"·title="definition">succ</span></a>·<a·id="x:1"·class="idref"·href="#x:1"><span·class="id"·title="binder">x</span></a>·:=<br/> | 105 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Pos.succ"·class="idref"·href="#Pos.succ"><span·class="id"·title="definition">succ</span></a>·<a·id="x:1"·class="idref"·href="#x:1"><span·class="id"·title="binder">x</span></a>·:=<br/> |
106 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.PArith.BinPosDef.html#x:1"><span·class="id"·title="variable">x</span></a>·<span·class="id"·title="keyword">with</span><br/> | 106 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.PArith.BinPosDef.html#x:1"><span·class="id"·title="variable">x</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 115, 15 lines modified | Offset 115, 15 lines modified | ||
115 | |·1·=>·1<a·class="idref"·href="Coq.PArith.BinPosDef.html#35713fcadfdd66af247cbf95acf859fa"><span·class="id"·title="notation">~0</span></a><br/> | 115 | |·1·=>·1<a·class="idref"·href="Coq.PArith.BinPosDef.html#35713fcadfdd66af247cbf95acf859fa"><span·class="id"·title="notation">~0</span></a><br/> |
116 | <span·class="id"·title="keyword">end</span>.<br/> | 116 | <span·class="id"·title="keyword">end</span>.<br/> |
117 | <br/> | 117 | <br/> |
118 | </div> | 118 | </div> |
119 | <div·class="doc"> | 119 | <div·class="doc"> |
120 | <a·id="lab | 120 | <a·id="lab165"></a><h2·class="section">Addition</h2> |
121 | </div> | 121 | </div> |
122 | <div·class="code"> | 122 | <div·class="code"> |
123 | <br/> | 123 | <br/> |
124 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Pos.add"·class="idref"·href="#Pos.add"><span·class="id"·title="definition">add</span></a>·<a·id="x:4"·class="idref"·href="#x:4"><span·class="id"·title="binder">x</span></a>·<a·id="y:5"·class="idref"·href="#y:5"><span·class="id"·title="binder">y</span></a>·:=<br/> | 124 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Pos.add"·class="idref"·href="#Pos.add"><span·class="id"·title="definition">add</span></a>·<a·id="x:4"·class="idref"·href="#x:4"><span·class="id"·title="binder">x</span></a>·<a·id="y:5"·class="idref"·href="#y:5"><span·class="id"·title="binder">y</span></a>·:=<br/> |
125 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.PArith.BinPosDef.html#x:4"><span·class="id"·title="variable">x</span></a>,·<a·class="idref"·href="Coq.PArith.BinPosDef.html#y:5"><span·class="id"·title="variable">y</span></a>·<span·class="id"·title="keyword">with</span><br/> | 125 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.PArith.BinPosDef.html#x:4"><span·class="id"·title="variable">x</span></a>,·<a·class="idref"·href="Coq.PArith.BinPosDef.html#y:5"><span·class="id"·title="variable">y</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 154, 15 lines modified | Offset 154, 15 lines modified | ||
154 | <br/> | 154 | <br/> |
155 | <span·class="id"·title="keyword">Infix</span>·<a·id="26e668c1e502054bd18e92982f52c00f"·class="idref"·href="#26e668c1e502054bd18e92982f52c00f"><span·class="id"·title="notation">"</span></a>+"·:=·<a·class="idref"·href="Coq.PArith.BinPosDef.html#Pos.add"><span·class="id"·title="definition">add</span></a>·:·<span·class="id"·title="var">positive_scope</span>.<br/> | 155 | <span·class="id"·title="keyword">Infix</span>·<a·id="26e668c1e502054bd18e92982f52c00f"·class="idref"·href="#26e668c1e502054bd18e92982f52c00f"><span·class="id"·title="notation">"</span></a>+"·:=·<a·class="idref"·href="Coq.PArith.BinPosDef.html#Pos.add"><span·class="id"·title="definition">add</span></a>·:·<span·class="id"·title="var">positive_scope</span>.<br/> |
156 | <br/> | 156 | <br/> |
157 | </div> | 157 | </div> |
158 | <div·class="doc"> | 158 | <div·class="doc"> |
159 | <a·id="lab | 159 | <a·id="lab166"></a><h2·class="section">Operation·<span·class="inlinecode"><span·class="id"·title="var">x</span></span>·<span·class="inlinecode">-></span>·<span·class="inlinecode">2*<span·class="id"·title="var">x</span>-1</span></h2> |
160 | </div> | 160 | </div> |
161 | <div·class="code"> | 161 | <div·class="code"> |
162 | <br/> | 162 | <br/> |
163 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Pos.pred_double"·class="idref"·href="#Pos.pred_double"><span·class="id"·title="definition">pred_double</span></a>·<a·id="x:14"·class="idref"·href="#x:14"><span·class="id"·title="binder">x</span></a>·:=<br/> | 163 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Pos.pred_double"·class="idref"·href="#Pos.pred_double"><span·class="id"·title="definition">pred_double</span></a>·<a·id="x:14"·class="idref"·href="#x:14"><span·class="id"·title="binder">x</span></a>·:=<br/> |
164 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.PArith.BinPosDef.html#x:14"><span·class="id"·title="variable">x</span></a>·<span·class="id"·title="keyword">with</span><br/> | 164 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.PArith.BinPosDef.html#x:14"><span·class="id"·title="variable">x</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 171, 15 lines modified | Offset 171, 15 lines modified | ||
171 | |·1·=>·1<br/> | 171 | |·1·=>·1<br/> |
172 | <span·class="id"·title="keyword">end</span>.<br/> | 172 | <span·class="id"·title="keyword">end</span>.<br/> |
173 | <br/> | 173 | <br/> |
174 | </div> | 174 | </div> |
175 | <div·class="doc"> | 175 | <div·class="doc"> |
176 | <a·id="lab | 176 | <a·id="lab167"></a><h2·class="section">Predecessor</h2> |
177 | </div> | 177 | </div> |
178 | <div·class="code"> | 178 | <div·class="code"> |
179 | <br/> | 179 | <br/> |
180 | <span·class="id"·title="keyword">Definition</span>·<a·id="Pos.pred"·class="idref"·href="#Pos.pred"><span·class="id"·title="definition">pred</span></a>·<a·id="x:17"·class="idref"·href="#x:17"><span·class="id"·title="binder">x</span></a>·:=<br/> | 180 | <span·class="id"·title="keyword">Definition</span>·<a·id="Pos.pred"·class="idref"·href="#Pos.pred"><span·class="id"·title="definition">pred</span></a>·<a·id="x:17"·class="idref"·href="#x:17"><span·class="id"·title="binder">x</span></a>·:=<br/> |
181 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.PArith.BinPosDef.html#x:17"><span·class="id"·title="variable">x</span></a>·<span·class="id"·title="keyword">with</span><br/> | 181 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.PArith.BinPosDef.html#x:17"><span·class="id"·title="variable">x</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 188, 15 lines modified | Offset 188, 15 lines modified | ||
188 | |·1·=>·1<br/> | 188 | |·1·=>·1<br/> |
189 | <span·class="id"·title="keyword">end</span>.<br/> | 189 | <span·class="id"·title="keyword">end</span>.<br/> |
190 | <br/> | 190 | <br/> |
191 | </div> | 191 | </div> |
192 | <div·class="doc"> | 192 | <div·class="doc"> |
193 | <a·id="lab | 193 | <a·id="lab168"></a><h2·class="section">The·predecessor·of·a·positive·number·can·be·seen·as·a·<span·class="inlinecode"><span·class="id"·title="var">N</span></span></h2> |
194 | </div> | 194 | </div> |
195 | <div·class="code"> | 195 | <div·class="code"> |
196 | <br/> | 196 | <br/> |
197 | <span·class="id"·title="keyword">Definition</span>·<a·id="Pos.pred_N"·class="idref"·href="#Pos.pred_N"><span·class="id"·title="definition">pred_N</span></a>·<a·id="x:19"·class="idref"·href="#x:19"><span·class="id"·title="binder">x</span></a>·:=<br/> | 197 | <span·class="id"·title="keyword">Definition</span>·<a·id="Pos.pred_N"·class="idref"·href="#Pos.pred_N"><span·class="id"·title="definition">pred_N</span></a>·<a·id="x:19"·class="idref"·href="#x:19"><span·class="id"·title="binder">x</span></a>·:=<br/> |
198 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.PArith.BinPosDef.html#x:19"><span·class="id"·title="variable">x</span></a>·<span·class="id"·title="keyword">with</span><br/> | 198 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.PArith.BinPosDef.html#x:19"><span·class="id"·title="variable">x</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 205, 30 lines modified | Offset 205, 30 lines modified | ||
205 | |·1·=>·<a·class="idref"·href="Coq.Numbers.BinNums.html#N0"><span·class="id"·title="constructor">N0</span></a><br/> | 205 | |·1·=>·<a·class="idref"·href="Coq.Numbers.BinNums.html#N0"><span·class="id"·title="constructor">N0</span></a><br/> |
206 | <span·class="id"·title="keyword">end</span>.<br/> | 206 | <span·class="id"·title="keyword">end</span>.<br/> |
207 | <br/> | 207 | <br/> |
208 | </div> | 208 | </div> |
209 | <div·class="doc"> | 209 | <div·class="doc"> |
210 | <a·id="lab | 210 | <a·id="lab169"></a><h2·class="section">An·auxiliary·type·for·subtraction</h2> |
211 | </div> | 211 | </div> |
212 | <div·class="code"> | 212 | <div·class="code"> |
213 | <br/> | 213 | <br/> |
214 | <span·class="id"·title="keyword">Inductive</span>·<a·id="Pos.mask"·class="idref"·href="#Pos.mask"><span·class="id"·title="definition,·inductive"><span·id="Pos.mask_rect"·class="id"><span·id="Pos.mask_ind"·class="id"><span·id="Pos.mask_rec"·class="id"><span·id="Pos.mask_sind"·class="id">mask</span></span></span></span></span></a>·:·<span·class="id"·title="keyword">Set</span>·:=<br/> | 214 | <span·class="id"·title="keyword">Inductive</span>·<a·id="Pos.mask"·class="idref"·href="#Pos.mask"><span·class="id"·title="definition,·inductive"><span·id="Pos.mask_rect"·class="id"><span·id="Pos.mask_ind"·class="id"><span·id="Pos.mask_rec"·class="id"><span·id="Pos.mask_sind"·class="id">mask</span></span></span></span></span></a>·:·<span·class="id"·title="keyword">Set</span>·:=<br/> |
215 | |·<a·id="Pos.IsNul"·class="idref"·href="#Pos.IsNul"><span·class="id"·title="constructor">IsNul</span></a>·:·<a·class="idref"·href="Coq.PArith.BinPosDef.html#mask:21"><span·class="id"·title="inductive">mask</span></a><br/> | 215 | |·<a·id="Pos.IsNul"·class="idref"·href="#Pos.IsNul"><span·class="id"·title="constructor">IsNul</span></a>·:·<a·class="idref"·href="Coq.PArith.BinPosDef.html#mask:21"><span·class="id"·title="inductive">mask</span></a><br/> |
216 | |·<a·id="Pos.IsPos"·class="idref"·href="#Pos.IsPos"><span·class="id"·title="constructor">IsPos</span></a>·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#positive"><span·class="id"·title="inductive">positive</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.PArith.BinPosDef.html#mask:21"><span·class="id"·title="inductive">mask</span></a><br/> | 216 | |·<a·id="Pos.IsPos"·class="idref"·href="#Pos.IsPos"><span·class="id"·title="constructor">IsPos</span></a>·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#positive"><span·class="id"·title="inductive">positive</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.PArith.BinPosDef.html#mask:21"><span·class="id"·title="inductive">mask</span></a><br/> |
217 | |·<a·id="Pos.IsNeg"·class="idref"·href="#Pos.IsNeg"><span·class="id"·title="constructor">IsNeg</span></a>·:·<a·class="idref"·href="Coq.PArith.BinPosDef.html#mask:21"><span·class="id"·title="inductive">mask</span></a>.<br/> | 217 | |·<a·id="Pos.IsNeg"·class="idref"·href="#Pos.IsNeg"><span·class="id"·title="constructor">IsNeg</span></a>·:·<a·class="idref"·href="Coq.PArith.BinPosDef.html#mask:21"><span·class="id"·title="inductive">mask</span></a>.<br/> |
218 | <br/> | 218 | <br/> |
219 | </div> | 219 | </div> |
220 | <div·class="doc"> | 220 | <div·class="doc"> |
221 | <a·id="lab | 221 | <a·id="lab170"></a><h2·class="section">Operation·<span·class="inlinecode"><span·class="id"·title="var">x</span></span>·<span·class="inlinecode">-></span>·<span·class="inlinecode">2*<span·class="id"·title="var">x</span>+1</span></h2> |
222 | </div> | 222 | </div> |
223 | <div·class="code"> | 223 | <div·class="code"> |
Max diff block lines reached; 29941/38347 bytes (78.08%) of diff not shown. |
Offset 51, 15 lines modified | Offset 51, 15 lines modified | ||
51 | <br/> | 51 | <br/> |
52 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">positive_scope</span>.<br/> | 52 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">positive_scope</span>.<br/> |
53 | <br/> | 53 | <br/> |
54 | </div> | 54 | </div> |
55 | <div·class="doc"> | 55 | <div·class="doc"> |
56 | <a·id="lab | 56 | <a·id="lab159"></a><h1·class="section">DecidableType·structure·for·<span·class="inlinecode"><span·class="id"·title="var">positive</span></span>·numbers</h1> |
57 | </div> | 57 | </div> |
58 | <div·class="code"> | 58 | <div·class="code"> |
59 | <br/> | 59 | <br/> |
60 | <span·class="id"·title="keyword">Module</span>·<a·id="Positive_as_DT"·class="idref"·href="#Positive_as_DT"><span·class="id"·title="module">Positive_as_DT</span></a>·<:·<a·class="idref"·href="Coq.Structures.Equalities.html#UsualDecidableTypeFull"><span·class="id"·title="module">UsualDecidableTypeFull</span></a>·:=·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos"><span·class="id"·title="module">Pos</span></a>.<br/> | 60 | <span·class="id"·title="keyword">Module</span>·<a·id="Positive_as_DT"·class="idref"·href="#Positive_as_DT"><span·class="id"·title="module">Positive_as_DT</span></a>·<:·<a·class="idref"·href="Coq.Structures.Equalities.html#UsualDecidableTypeFull"><span·class="id"·title="module">UsualDecidableTypeFull</span></a>·:=·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos"><span·class="id"·title="module">Pos</span></a>.<br/> |
Offset 67, 15 lines modified | Offset 67, 15 lines modified | ||
67 | </div> | 67 | </div> |
68 | <div·class="doc"> | 68 | <div·class="doc"> |
69 | Note·that·the·last·module·fulfills·by·subtyping·many·other | 69 | Note·that·the·last·module·fulfills·by·subtyping·many·other |
70 | ····interfaces,·such·as·<span·class="inlinecode"><span·class="id"·title="var">DecidableType</span></span>·or·<span·class="inlinecode"><span·class="id"·title="var">EqualityType</span></span>.· | 70 | ····interfaces,·such·as·<span·class="inlinecode"><span·class="id"·title="var">DecidableType</span></span>·or·<span·class="inlinecode"><span·class="id"·title="var">EqualityType</span></span>.· |
71 | <div·class="paragraph">·</div> | 71 | <div·class="paragraph">·</div> |
72 | <a·id="lab | 72 | <a·id="lab160"></a><h1·class="section">OrderedType·structure·for·<span·class="inlinecode"><span·class="id"·title="var">positive</span></span>·numbers</h1> |
73 | </div> | 73 | </div> |
74 | <div·class="code"> | 74 | <div·class="code"> |
75 | <br/> | 75 | <br/> |
76 | <span·class="id"·title="keyword">Module</span>·<a·id="Positive_as_OT"·class="idref"·href="#Positive_as_OT"><span·class="id"·title="module">Positive_as_OT</span></a>·<:·<a·class="idref"·href="Coq.Structures.Orders.html#OrderedTypeFull"><span·class="id"·title="module">OrderedTypeFull</span></a>·:=·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos"><span·class="id"·title="module">Pos</span></a>.<br/> | 76 | <span·class="id"·title="keyword">Module</span>·<a·id="Positive_as_OT"·class="idref"·href="#Positive_as_OT"><span·class="id"·title="module">Positive_as_OT</span></a>·<:·<a·class="idref"·href="Coq.Structures.Orders.html#OrderedTypeFull"><span·class="id"·title="module">OrderedTypeFull</span></a>·:=·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos"><span·class="id"·title="module">Pos</span></a>.<br/> |
Offset 83, 15 lines modified | Offset 83, 15 lines modified | ||
83 | </div> | 83 | </div> |
84 | <div·class="doc"> | 84 | <div·class="doc"> |
85 | Note·that·<span·class="inlinecode"><span·class="id"·title="var">Positive_as_OT</span></span>·can·also·be·seen·as·a·<span·class="inlinecode"><span·class="id"·title="var">UsualOrderedType</span></span> | 85 | Note·that·<span·class="inlinecode"><span·class="id"·title="var">Positive_as_OT</span></span>·can·also·be·seen·as·a·<span·class="inlinecode"><span·class="id"·title="var">UsualOrderedType</span></span> |
86 | ···and·a·<span·class="inlinecode"><span·class="id"·title="var">OrderedType</span></span>·(and·also·as·a·<span·class="inlinecode"><span·class="id"·title="var">DecidableType</span></span>).· | 86 | ···and·a·<span·class="inlinecode"><span·class="id"·title="var">OrderedType</span></span>·(and·also·as·a·<span·class="inlinecode"><span·class="id"·title="var">DecidableType</span></span>).· |
87 | <div·class="paragraph">·</div> | 87 | <div·class="paragraph">·</div> |
88 | <a·id="lab | 88 | <a·id="lab161"></a><h1·class="section">An·<span·class="inlinecode"><span·class="id"·title="var">order</span></span>·tactic·for·positive·numbers</h1> |
89 | </div> | 89 | </div> |
90 | <div·class="code"> | 90 | <div·class="code"> |
91 | <br/> | 91 | <br/> |
92 | <span·class="id"·title="keyword">Module</span>·<a·id="PositiveOrder"·class="idref"·href="#PositiveOrder"><span·class="id"·title="module">PositiveOrder</span></a>·:=·<a·class="idref"·href="Coq.Structures.OrdersTac.html#OTF_to_OrderTac"><span·class="id"·title="module">OTF_to_OrderTac</span></a>·<a·class="idref"·href="Coq.PArith.POrderedType.html#Positive_as_OT"><span·class="id"·title="module">Positive_as_OT</span></a>.<br/> | 92 | <span·class="id"·title="keyword">Module</span>·<a·id="PositiveOrder"·class="idref"·href="#PositiveOrder"><span·class="id"·title="module">PositiveOrder</span></a>·:=·<a·class="idref"·href="Coq.Structures.OrdersTac.html#OTF_to_OrderTac"><span·class="id"·title="module">OTF_to_OrderTac</span></a>·<a·class="idref"·href="Coq.PArith.POrderedType.html#Positive_as_OT"><span·class="id"·title="module">Positive_as_OT</span></a>.<br/> |
93 | <span·class="id"·title="keyword">Ltac</span>·<span·class="id"·title="var">p_order</span>·:=·<span·class="id"·title="var">PositiveOrder.order</span>.<br/> | 93 | <span·class="id"·title="keyword">Ltac</span>·<span·class="id"·title="var">p_order</span>·:=·<span·class="id"·title="var">PositiveOrder.order</span>.<br/> |
Offset 43, 15 lines modified | Offset 43, 15 lines modified | ||
43 | <h1·class="libtitle">Library·Coq.Program.Combinators</h1> | 43 | <h1·class="libtitle">Library·Coq.Program.Combinators</h1> |
44 | <div·class="code"> | 44 | <div·class="code"> |
45 | </div> | 45 | </div> |
46 | <div·class="doc"> | 46 | <div·class="doc"> |
47 | <a·id="lab | 47 | <a·id="lab319"></a><h1·class="section">Proofs·about·standard·combinators,·exports·functional·extensionality.</h1> |
48 | <div·class="paragraph">·</div> | 48 | <div·class="paragraph">·</div> |
49 | ···Author:·Matthieu·Sozeau | 49 | ···Author:·Matthieu·Sozeau |
50 | ···Institution:·LRI,·CNRS·UMR·8623·-·University·Paris·Sud | 50 | ···Institution:·LRI,·CNRS·UMR·8623·-·University·Paris·Sud |
Offset 51, 15 lines modified | Offset 51, 15 lines modified | ||
51 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.ZArith.BinInt.html#"><span·class="id"·title="library">ZArith.BinInt</span></a>.<br/> | 51 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.ZArith.BinInt.html#"><span·class="id"·title="library">ZArith.BinInt</span></a>.<br/> |
52 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.Classes.Morphisms.html#"><span·class="id"·title="library">Morphisms</span></a>·<a·class="idref"·href="Coq.Setoids.Setoid.html#"><span·class="id"·title="library">Setoid</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#"><span·class="id"·title="library">Bool</span></a>.<br/> | 52 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.Classes.Morphisms.html#"><span·class="id"·title="library">Morphisms</span></a>·<a·class="idref"·href="Coq.Setoids.Setoid.html#"><span·class="id"·title="library">Setoid</span></a>·<a·class="idref"·href="Coq.Bool.Bool.html#"><span·class="id"·title="library">Bool</span></a>.<br/> |
53 | <br/> | 53 | <br/> |
54 | </div> | 54 | </div> |
55 | <div·class="doc"> | 55 | <div·class="doc"> |
56 | <a·id="lab | 56 | <a·id="lab516"></a><h1·class="section">Definition·of·<span·class="inlinecode"><span·class="id"·title="var">Q</span></span>·and·basic·properties</h1> |
57 | <div·class="paragraph">·</div> | 57 | <div·class="paragraph">·</div> |
58 | ·Rationals·are·pairs·of·<span·class="inlinecode"><span·class="id"·title="var">Z</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">positive</span></span>·numbers.· | 58 | ·Rationals·are·pairs·of·<span·class="inlinecode"><span·class="id"·title="var">Z</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">positive</span></span>·numbers.· |
59 | </div> | 59 | </div> |
60 | <div·class="code"> | 60 | <div·class="code"> |
Offset 194, 15 lines modified | Offset 194, 15 lines modified | ||
194 | <br/> | 194 | <br/> |
195 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qcompare_spec"·class="idref"·href="#Qcompare_spec"><span·class="id"·title="lemma">Qcompare_spec</span></a>·<a·id="x:33"·class="idref"·href="#x:33"><span·class="id"·title="binder">x</span></a>·<a·id="y:34"·class="idref"·href="#y:34"><span·class="id"·title="binder">y</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#CompareSpec"><span·class="id"·title="inductive">CompareSpec</span></a>·(<a·class="idref"·href="Coq.QArith.QArith_base.html#x:33"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#y:34"><span·class="id"·title="variable">y</span></a>)·(<a·class="idref"·href="Coq.QArith.QArith_base.html#x:33"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#::Q_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#y:34"><span·class="id"·title="variable">y</span></a>)·(<a·class="idref"·href="Coq.QArith.QArith_base.html#y:34"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#::Q_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#x:33"><span·class="id"·title="variable">x</span></a>)·(<a·class="idref"·href="Coq.QArith.QArith_base.html#x:33"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#1d4d04159713e8a1510c1de740564e3d"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#y:34"><span·class="id"·title="variable">y</span></a>).<br/> | 195 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qcompare_spec"·class="idref"·href="#Qcompare_spec"><span·class="id"·title="lemma">Qcompare_spec</span></a>·<a·id="x:33"·class="idref"·href="#x:33"><span·class="id"·title="binder">x</span></a>·<a·id="y:34"·class="idref"·href="#y:34"><span·class="id"·title="binder">y</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#CompareSpec"><span·class="id"·title="inductive">CompareSpec</span></a>·(<a·class="idref"·href="Coq.QArith.QArith_base.html#x:33"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#y:34"><span·class="id"·title="variable">y</span></a>)·(<a·class="idref"·href="Coq.QArith.QArith_base.html#x:33"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#::Q_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#y:34"><span·class="id"·title="variable">y</span></a>)·(<a·class="idref"·href="Coq.QArith.QArith_base.html#y:34"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#::Q_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#x:33"><span·class="id"·title="variable">x</span></a>)·(<a·class="idref"·href="Coq.QArith.QArith_base.html#x:33"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#1d4d04159713e8a1510c1de740564e3d"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#y:34"><span·class="id"·title="variable">y</span></a>).<br/> |
196 | <br/> | 196 | <br/> |
197 | </div> | 197 | </div> |
198 | <div·class="doc"> | 198 | <div·class="doc"> |
199 | <a·id="lab | 199 | <a·id="lab517"></a><h1·class="section">Properties·of·equality.</h1> |
200 | </div> | 200 | </div> |
201 | <div·class="code"> | 201 | <div·class="code"> |
202 | <br/> | 202 | <br/> |
203 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Qeq_refl"·class="idref"·href="#Qeq_refl"><span·class="id"·title="lemma">Qeq_refl</span></a>·<a·id="x:35"·class="idref"·href="#x:35"><span·class="id"·title="binder">x</span></a>·:·<a·class="idref"·href="Coq.QArith.QArith_base.html#x:35"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#x:35"><span·class="id"·title="variable">x</span></a>.<br/> | 203 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Qeq_refl"·class="idref"·href="#Qeq_refl"><span·class="id"·title="lemma">Qeq_refl</span></a>·<a·id="x:35"·class="idref"·href="#x:35"><span·class="id"·title="binder">x</span></a>·:·<a·class="idref"·href="Coq.QArith.QArith_base.html#x:35"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#x:35"><span·class="id"·title="variable">x</span></a>.<br/> |
Offset 286, 15 lines modified | Offset 286, 15 lines modified | ||
286 | #[<span·class="id"·title="var">global</span>]<br/> | 286 | #[<span·class="id"·title="var">global</span>]<br/> |
287 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Resolve</span>·<span·class="id"·title="var">Qnot_eq_sym</span>·:·<span·class="id"·title="var">qarith</span>.<br/> | 287 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Resolve</span>·<span·class="id"·title="var">Qnot_eq_sym</span>·:·<span·class="id"·title="var">qarith</span>.<br/> |
288 | <br/> | 288 | <br/> |
289 | </div> | 289 | </div> |
290 | <div·class="doc"> | 290 | <div·class="doc"> |
291 | <a·id="lab | 291 | <a·id="lab518"></a><h1·class="section">Addition,·multiplication·and·opposite</h1> |
292 | <div·class="paragraph">·</div> | 292 | <div·class="paragraph">·</div> |
293 | ·The·addition,·multiplication·and·opposite·are·defined | 293 | ·The·addition,·multiplication·and·opposite·are·defined |
294 | ···in·the·straightforward·way:· | 294 | ···in·the·straightforward·way:· |
295 | </div> | 295 | </div> |
296 | <div·class="code"> | 296 | <div·class="code"> |
Offset 553, 15 lines modified | Offset 553, 15 lines modified | ||
553 | <br/> | 553 | <br/> |
554 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qmake_Qdiv"·class="idref"·href="#Qmake_Qdiv"><span·class="id"·title="lemma">Qmake_Qdiv</span></a>·<a·id="a:139"·class="idref"·href="#a:139"><span·class="id"·title="binder">a</span></a>·<a·id="b:140"·class="idref"·href="#b:140"><span·class="id"·title="binder">b</span></a>·:·<a·class="idref"·href="Coq.QArith.QArith_base.html#a:139"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#90281ef6c291e34a6461b59eb05ad5cc"><span·class="id"·title="notation">#</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#b:140"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#inject_Z"><span·class="id"·title="definition">inject_Z</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#a:139"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#91b8b0d313b5cdf9c4004b806e61416a"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#inject_Z"><span·class="id"·title="definition">inject_Z</span></a>·(<a·class="idref"·href="Coq.Numbers.BinNums.html#Zpos"><span·class="id"·title="constructor">Zpos</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#b:140"><span·class="id"·title="variable">b</span></a>).<br/> | 554 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qmake_Qdiv"·class="idref"·href="#Qmake_Qdiv"><span·class="id"·title="lemma">Qmake_Qdiv</span></a>·<a·id="a:139"·class="idref"·href="#a:139"><span·class="id"·title="binder">a</span></a>·<a·id="b:140"·class="idref"·href="#b:140"><span·class="id"·title="binder">b</span></a>·:·<a·class="idref"·href="Coq.QArith.QArith_base.html#a:139"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#90281ef6c291e34a6461b59eb05ad5cc"><span·class="id"·title="notation">#</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#b:140"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#inject_Z"><span·class="id"·title="definition">inject_Z</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#a:139"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#91b8b0d313b5cdf9c4004b806e61416a"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#inject_Z"><span·class="id"·title="definition">inject_Z</span></a>·(<a·class="idref"·href="Coq.Numbers.BinNums.html#Zpos"><span·class="id"·title="constructor">Zpos</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#b:140"><span·class="id"·title="variable">b</span></a>).<br/> |
555 | <br/> | 555 | <br/> |
556 | </div> | 556 | </div> |
557 | <div·class="doc"> | 557 | <div·class="doc"> |
558 | <a·id="lab | 558 | <a·id="lab519"></a><h1·class="section">Setoid·compatibility·results</h1> |
559 | </div> | 559 | </div> |
560 | <div·class="code"> | 560 | <div·class="code"> |
561 | <br/> | 561 | <br/> |
562 | #[<span·class="id"·title="var">global</span>]<br/> | 562 | #[<span·class="id"·title="var">global</span>]<br/> |
563 | <span·class="id"·title="keyword">Instance</span>·<a·id="Qplus_comp"·class="idref"·href="#Qplus_comp"><span·class="id"·title="instance">Qplus_comp</span></a>·:·<a·class="idref"·href="Coq.Classes.Morphisms.html#Proper"><span·class="id"·title="class">Proper</span></a>·(<a·class="idref"·href="Coq.QArith.QArith_base.html#Qeq"><span·class="id"·title="definition">Qeq</span></a><a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#Qeq"><span·class="id"·title="definition">Qeq</span></a><a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#Qeq"><span·class="id"·title="definition">Qeq</span></a>)·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qplus"><span·class="id"·title="definition">Qplus</span></a>.<br/> | 563 | <span·class="id"·title="keyword">Instance</span>·<a·id="Qplus_comp"·class="idref"·href="#Qplus_comp"><span·class="id"·title="instance">Qplus_comp</span></a>·:·<a·class="idref"·href="Coq.Classes.Morphisms.html#Proper"><span·class="id"·title="class">Proper</span></a>·(<a·class="idref"·href="Coq.QArith.QArith_base.html#Qeq"><span·class="id"·title="definition">Qeq</span></a><a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#Qeq"><span·class="id"·title="definition">Qeq</span></a><a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#Qeq"><span·class="id"·title="definition">Qeq</span></a>)·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qplus"><span·class="id"·title="definition">Qplus</span></a>.<br/> |
Offset 627, 15 lines modified | Offset 627, 15 lines modified | ||
627 | <br/> | 627 | <br/> |
628 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Q_apart_0_1"·class="idref"·href="#Q_apart_0_1"><span·class="id"·title="lemma">Q_apart_0_1</span></a>·:·<a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~</span></a>·1·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·0.<br/> | 628 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Q_apart_0_1"·class="idref"·href="#Q_apart_0_1"><span·class="id"·title="lemma">Q_apart_0_1</span></a>·:·<a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~</span></a>·1·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·0.<br/> |
629 | <br/> | 629 | <br/> |
630 | </div> | 630 | </div> |
631 | <div·class="doc"> | 631 | <div·class="doc"> |
632 | <a·id="lab | 632 | <a·id="lab520"></a><h1·class="section">Properties·of·<span·class="inlinecode"><span·class="id"·title="var">Qadd</span></span></h1> |
633 | <div·class="paragraph">·</div> | 633 | <div·class="paragraph">·</div> |
634 | ·Addition·is·associative:· | 634 | ·Addition·is·associative:· |
635 | </div> | 635 | </div> |
636 | <div·class="code"> | 636 | <div·class="code"> |
Offset 667, 15 lines modified | Offset 667, 15 lines modified | ||
667 | <br/> | 667 | <br/> |
668 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Qplus_comm"·class="idref"·href="#Qplus_comm"><span·class="id"·title="lemma">Qplus_comm</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:146"·class="idref"·href="#x:146"><span·class="id"·title="binder">x</span></a>·<a·id="y:147"·class="idref"·href="#y:147"><span·class="id"·title="binder">y</span></a>,·<a·class="idref"·href="Coq.QArith.QArith_base.html#x:146"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#4f14570d00eeffbb0b18ccb7e91c8ff8"><span·class="id"·title="notation">+</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#y:147"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#y:147"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#4f14570d00eeffbb0b18ccb7e91c8ff8"><span·class="id"·title="notation">+</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#x:146"><span·class="id"·title="variable">x</span></a>.<br/> | 668 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Qplus_comm"·class="idref"·href="#Qplus_comm"><span·class="id"·title="lemma">Qplus_comm</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:146"·class="idref"·href="#x:146"><span·class="id"·title="binder">x</span></a>·<a·id="y:147"·class="idref"·href="#y:147"><span·class="id"·title="binder">y</span></a>,·<a·class="idref"·href="Coq.QArith.QArith_base.html#x:146"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#4f14570d00eeffbb0b18ccb7e91c8ff8"><span·class="id"·title="notation">+</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#y:147"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#y:147"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#4f14570d00eeffbb0b18ccb7e91c8ff8"><span·class="id"·title="notation">+</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#x:146"><span·class="id"·title="variable">x</span></a>.<br/> |
669 | <br/> | 669 | <br/> |
670 | </div> | 670 | </div> |
671 | <div·class="doc"> | 671 | <div·class="doc"> |
672 | <a·id="lab | 672 | <a·id="lab521"></a><h1·class="section">Properties·of·<span·class="inlinecode"><span·class="id"·title="var">Qopp</span></span></h1> |
673 | </div> | 673 | </div> |
674 | <div·class="code"> | 674 | <div·class="code"> |
675 | <br/> | 675 | <br/> |
676 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qopp_involutive"·class="idref"·href="#Qopp_involutive"><span·class="id"·title="lemma">Qopp_involutive</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="q:148"·class="idref"·href="#q:148"><span·class="id"·title="binder">q</span></a>,·<a·class="idref"·href="Coq.QArith.QArith_base.html#::Q_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#::Q_scope:'-'_x"><span·class="id"·title="notation">-</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#q:148"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#q:148"><span·class="id"·title="variable">q</span></a>.<br/> | 676 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qopp_involutive"·class="idref"·href="#Qopp_involutive"><span·class="id"·title="lemma">Qopp_involutive</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="q:148"·class="idref"·href="#q:148"><span·class="id"·title="binder">q</span></a>,·<a·class="idref"·href="Coq.QArith.QArith_base.html#::Q_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#::Q_scope:'-'_x"><span·class="id"·title="notation">-</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#q:148"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#q:148"><span·class="id"·title="variable">q</span></a>.<br/> |
Offset 698, 15 lines modified | Offset 698, 15 lines modified | ||
698 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qplus_inj_l"·class="idref"·href="#Qplus_inj_l"><span·class="id"·title="lemma">Qplus_inj_l</span></a>·(<a·id="x:153"·class="idref"·href="#x:153"><span·class="id"·title="binder">x</span></a>·<a·id="y:154"·class="idref"·href="#y:154"><span·class="id"·title="binder">y</span></a>·<a·id="z:155"·class="idref"·href="#z:155"><span·class="id"·title="binder">z</span></a>:·<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>):<br/> | 698 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qplus_inj_l"·class="idref"·href="#Qplus_inj_l"><span·class="id"·title="lemma">Qplus_inj_l</span></a>·(<a·id="x:153"·class="idref"·href="#x:153"><span·class="id"·title="binder">x</span></a>·<a·id="y:154"·class="idref"·href="#y:154"><span·class="id"·title="binder">y</span></a>·<a·id="z:155"·class="idref"·href="#z:155"><span·class="id"·title="binder">z</span></a>:·<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>):<br/> |
699 | <a·class="idref"·href="Coq.QArith.QArith_base.html#z:155"><span·class="id"·title="variable">z</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#4f14570d00eeffbb0b18ccb7e91c8ff8"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#x:153"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#z:155"><span·class="id"·title="variable">z</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#4f14570d00eeffbb0b18ccb7e91c8ff8"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#y:154"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#x:153"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#y:154"><span·class="id"·title="variable">y</span></a>.<br/> | 699 | <a·class="idref"·href="Coq.QArith.QArith_base.html#z:155"><span·class="id"·title="variable">z</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#4f14570d00eeffbb0b18ccb7e91c8ff8"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#x:153"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#z:155"><span·class="id"·title="variable">z</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#4f14570d00eeffbb0b18ccb7e91c8ff8"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#y:154"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#x:153"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#y:154"><span·class="id"·title="variable">y</span></a>.<br/> |
700 | <br/> | 700 | <br/> |
701 | </div> | 701 | </div> |
702 | <div·class="doc"> | 702 | <div·class="doc"> |
703 | <a·id="lab | 703 | <a·id="lab522"></a><h1·class="section">Properties·of·<span·class="inlinecode"><span·class="id"·title="var">Qmult</span></span></h1> |
704 | <div·class="paragraph">·</div> | 704 | <div·class="paragraph">·</div> |
705 | ·Multiplication·is·associative:· | 705 | ·Multiplication·is·associative:· |
706 | </div> | 706 | </div> |
707 | <div·class="code"> | 707 | <div·class="code"> |
Offset 780, 15 lines modified | Offset 780, 15 lines modified | ||
780 | <br/> | 780 | <br/> |
781 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Qmult_integral_l"·class="idref"·href="#Qmult_integral_l"><span·class="id"·title="lemma">Qmult_integral_l</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:173"·class="idref"·href="#x:173"><span·class="id"·title="binder">x</span></a>·<a·id="y:174"·class="idref"·href="#y:174"><span·class="id"·title="binder">y</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#x:173"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#x:173"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#a913d2882dcbf2c07ae6ccbc47eaad45"><span·class="id"·title="notation">*</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#y:174"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#y:174"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·0.<br/> | 781 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Qmult_integral_l"·class="idref"·href="#Qmult_integral_l"><span·class="id"·title="lemma">Qmult_integral_l</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:173"·class="idref"·href="#x:173"><span·class="id"·title="binder">x</span></a>·<a·id="y:174"·class="idref"·href="#y:174"><span·class="id"·title="binder">y</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#x:173"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#x:173"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#a913d2882dcbf2c07ae6ccbc47eaad45"><span·class="id"·title="notation">*</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#y:174"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#y:174"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·0.<br/> |
782 | <br/> | 782 | <br/> |
783 | </div> | 783 | </div> |
784 | <div·class="doc"> | 784 | <div·class="doc"> |
785 | <a·id="lab | 785 | <a·id="lab523"></a><h1·class="section">inject_Z·is·a·ring·homomorphism:</h1> |
786 | </div> | 786 | </div> |
787 | <div·class="code"> | 787 | <div·class="code"> |
788 | <br/> | 788 | <br/> |
789 | <span·class="id"·title="keyword">Lemma</span>·<a·id="inject_Z_plus"·class="idref"·href="#inject_Z_plus"><span·class="id"·title="lemma">inject_Z_plus</span></a>·(<a·id="x:175"·class="idref"·href="#x:175"><span·class="id"·title="binder">x</span></a>·<a·id="y:176"·class="idref"·href="#y:176"><span·class="id"·title="binder">y</span></a>:·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>):·<a·class="idref"·href="Coq.QArith.QArith_base.html#inject_Z"><span·class="id"·title="definition">inject_Z</span></a>·(<a·class="idref"·href="Coq.QArith.QArith_base.html#x:175"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#y:176"><span·class="id"·title="variable">y</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#inject_Z"><span·class="id"·title="definition">inject_Z</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#x:175"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#4f14570d00eeffbb0b18ccb7e91c8ff8"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#inject_Z"><span·class="id"·title="definition">inject_Z</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#y:176"><span·class="id"·title="variable">y</span></a>.<br/> | 789 | <span·class="id"·title="keyword">Lemma</span>·<a·id="inject_Z_plus"·class="idref"·href="#inject_Z_plus"><span·class="id"·title="lemma">inject_Z_plus</span></a>·(<a·id="x:175"·class="idref"·href="#x:175"><span·class="id"·title="binder">x</span></a>·<a·id="y:176"·class="idref"·href="#y:176"><span·class="id"·title="binder">y</span></a>:·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>):·<a·class="idref"·href="Coq.QArith.QArith_base.html#inject_Z"><span·class="id"·title="definition">inject_Z</span></a>·(<a·class="idref"·href="Coq.QArith.QArith_base.html#x:175"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#y:176"><span·class="id"·title="variable">y</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#inject_Z"><span·class="id"·title="definition">inject_Z</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#x:175"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#4f14570d00eeffbb0b18ccb7e91c8ff8"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#inject_Z"><span·class="id"·title="definition">inject_Z</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#y:176"><span·class="id"·title="variable">y</span></a>.<br/> |
Max diff block lines reached; 32475/48888 bytes (66.43%) of diff not shown. |
Offset 51, 15 lines modified | Offset 51, 15 lines modified | ||
51 | <br/> | 51 | <br/> |
52 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">Q_scope</span>.<br/> | 52 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">Q_scope</span>.<br/> |
53 | <br/> | 53 | <br/> |
54 | </div> | 54 | </div> |
55 | <div·class="doc"> | 55 | <div·class="doc"> |
56 | <a·id="lab | 56 | <a·id="lab534"></a><h1·class="section">DecidableType·structure·for·rational·numbers</h1> |
57 | </div> | 57 | </div> |
58 | <div·class="code"> | 58 | <div·class="code"> |
59 | <br/> | 59 | <br/> |
60 | <span·class="id"·title="keyword">Module</span>·<a·id="Q_as_DT"·class="idref"·href="#Q_as_DT"><span·class="id"·title="module">Q_as_DT</span></a>·<:·<a·class="idref"·href="Coq.Structures.Equalities.html#DecidableTypeFull"><span·class="id"·title="module">DecidableTypeFull</span></a>.<br/> | 60 | <span·class="id"·title="keyword">Module</span>·<a·id="Q_as_DT"·class="idref"·href="#Q_as_DT"><span·class="id"·title="module">Q_as_DT</span></a>·<:·<a·class="idref"·href="Coq.Structures.Equalities.html#DecidableTypeFull"><span·class="id"·title="module">DecidableTypeFull</span></a>.<br/> |
61 | <span·class="id"·title="keyword">Definition</span>·<a·id="Q_as_DT.t"·class="idref"·href="#Q_as_DT.t"><span·class="id"·title="definition">t</span></a>·:=·<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>.<br/> | 61 | <span·class="id"·title="keyword">Definition</span>·<a·id="Q_as_DT.t"·class="idref"·href="#Q_as_DT.t"><span·class="id"·title="definition">t</span></a>·:=·<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>.<br/> |
Offset 89, 15 lines modified | Offset 89, 15 lines modified | ||
89 | </div> | 89 | </div> |
90 | <div·class="doc"> | 90 | <div·class="doc"> |
91 | Note·that·the·last·module·fulfills·by·subtyping·many·other | 91 | Note·that·the·last·module·fulfills·by·subtyping·many·other |
92 | ····interfaces,·such·as·<span·class="inlinecode"><span·class="id"·title="var">DecidableType</span></span>·or·<span·class="inlinecode"><span·class="id"·title="var">EqualityType</span></span>.· | 92 | ····interfaces,·such·as·<span·class="inlinecode"><span·class="id"·title="var">DecidableType</span></span>·or·<span·class="inlinecode"><span·class="id"·title="var">EqualityType</span></span>.· |
93 | <div·class="paragraph">·</div> | 93 | <div·class="paragraph">·</div> |
94 | <a·id="lab | 94 | <a·id="lab535"></a><h1·class="section">OrderedType·structure·for·rational·numbers</h1> |
95 | </div> | 95 | </div> |
96 | <div·class="code"> | 96 | <div·class="code"> |
97 | <br/> | 97 | <br/> |
98 | <span·class="id"·title="keyword">Module</span>·<a·id="Q_as_OT"·class="idref"·href="#Q_as_OT"><span·class="id"·title="module">Q_as_OT</span></a>·<:·<a·class="idref"·href="Coq.Structures.Orders.html#OrderedTypeFull"><span·class="id"·title="module">OrderedTypeFull</span></a>.<br/> | 98 | <span·class="id"·title="keyword">Module</span>·<a·id="Q_as_OT"·class="idref"·href="#Q_as_OT"><span·class="id"·title="module">Q_as_OT</span></a>·<:·<a·class="idref"·href="Coq.Structures.Orders.html#OrderedTypeFull"><span·class="id"·title="module">OrderedTypeFull</span></a>.<br/> |
99 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.QArith.QOrderedType.html#Q_as_DT"><span·class="id"·title="module">Q_as_DT</span></a>.<br/> | 99 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.QArith.QOrderedType.html#Q_as_DT"><span·class="id"·title="module">Q_as_DT</span></a>.<br/> |
Offset 120, 15 lines modified | Offset 120, 15 lines modified | ||
120 | <br/> | 120 | <br/> |
121 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.QArith.QOrderedType.html#Q_as_OT"><span·class="id"·title="module">Q_as_OT</span></a>.<br/> | 121 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.QArith.QOrderedType.html#Q_as_OT"><span·class="id"·title="module">Q_as_OT</span></a>.<br/> |
122 | <br/> | 122 | <br/> |
123 | </div> | 123 | </div> |
124 | <div·class="doc"> | 124 | <div·class="doc"> |
125 | <a·id="lab | 125 | <a·id="lab536"></a><h1·class="section">An·<span·class="inlinecode"><span·class="id"·title="var">order</span></span>·tactic·for·<span·class="inlinecode"><span·class="id"·title="var">Q</span></span>·numbers</h1> |
126 | </div> | 126 | </div> |
127 | <div·class="code"> | 127 | <div·class="code"> |
128 | <br/> | 128 | <br/> |
129 | <span·class="id"·title="keyword">Module</span>·<a·id="QOrder"·class="idref"·href="#QOrder"><span·class="id"·title="module">QOrder</span></a>·:=·<a·class="idref"·href="Coq.Structures.OrdersTac.html#OTF_to_OrderTac"><span·class="id"·title="module">OTF_to_OrderTac</span></a>·<a·class="idref"·href="Coq.QArith.QOrderedType.html#Q_as_OT"><span·class="id"·title="module">Q_as_OT</span></a>.<br/> | 129 | <span·class="id"·title="keyword">Module</span>·<a·id="QOrder"·class="idref"·href="#QOrder"><span·class="id"·title="module">QOrder</span></a>·:=·<a·class="idref"·href="Coq.Structures.OrdersTac.html#OTF_to_OrderTac"><span·class="id"·title="module">OTF_to_OrderTac</span></a>·<a·class="idref"·href="Coq.QArith.QOrderedType.html#Q_as_OT"><span·class="id"·title="module">Q_as_OT</span></a>.<br/> |
130 | <span·class="id"·title="keyword">Ltac</span>·<span·class="id"·title="var">q_order</span>·:=·<span·class="id"·title="var">QOrder.order</span>.<br/> | 130 | <span·class="id"·title="keyword">Ltac</span>·<span·class="id"·title="var">q_order</span>·:=·<span·class="id"·title="var">QOrder.order</span>.<br/> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab496"></a><h1·class="section">An·absolute·value·for·normalized·rational·numbers.</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·Contributed·by·Cédric·Auger· | 51 | ·Contributed·by·Cédric·Auger· |
52 | </div> | 52 | </div> |
53 | <div·class="code"> | 53 | <div·class="code"> |
Offset 50, 15 lines modified | Offset 50, 15 lines modified | ||
50 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.QArith.QArith_base.html#"><span·class="id"·title="library">QArith_base</span></a>.<br/> | 50 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.QArith.QArith_base.html#"><span·class="id"·title="library">QArith_base</span></a>.<br/> |
51 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.setoid_ring.NArithRing.html#"><span·class="id"·title="library">NArithRing</span></a>.<br/> | 51 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.setoid_ring.NArithRing.html#"><span·class="id"·title="library">NArithRing</span></a>.<br/> |
52 | <br/> | 52 | <br/> |
53 | </div> | 53 | </div> |
54 | <div·class="doc"> | 54 | <div·class="doc"> |
55 | <a·id="lab | 55 | <a·id="lab537"></a><h1·class="section">field·and·ring·tactics·for·rational·numbers</h1> |
56 | </div> | 56 | </div> |
57 | <div·class="code"> | 57 | <div·class="code"> |
58 | <br/> | 58 | <br/> |
59 | <span·class="id"·title="keyword">Definition</span>·<a·id="Qsrt"·class="idref"·href="#Qsrt"><span·class="id"·title="definition">Qsrt</span></a>·:·<a·class="idref"·href="Coq.setoid_ring.Ring_theory.html#ring_theory"><span·class="id"·title="record">ring_theory</span></a>·0·1·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qplus"><span·class="id"·title="definition">Qplus</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qmult"><span·class="id"·title="definition">Qmult</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qminus"><span·class="id"·title="definition">Qminus</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qopp"><span·class="id"·title="definition">Qopp</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qeq"><span·class="id"·title="definition">Qeq</span></a>.<br/> | 59 | <span·class="id"·title="keyword">Definition</span>·<a·id="Qsrt"·class="idref"·href="#Qsrt"><span·class="id"·title="definition">Qsrt</span></a>·:·<a·class="idref"·href="Coq.setoid_ring.Ring_theory.html#ring_theory"><span·class="id"·title="record">ring_theory</span></a>·0·1·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qplus"><span·class="id"·title="definition">Qplus</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qmult"><span·class="id"·title="definition">Qmult</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qminus"><span·class="id"·title="definition">Qminus</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qopp"><span·class="id"·title="definition">Qopp</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qeq"><span·class="id"·title="definition">Qeq</span></a>.<br/> |
Offset 48, 15 lines modified | Offset 48, 15 lines modified | ||
48 | <br/> | 48 | <br/> |
49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.QArith.QArith_base.html#"><span·class="id"·title="library">QArith_base</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#"><span·class="id"·title="library">Orders</span></a>·<a·class="idref"·href="Coq.QArith.QOrderedType.html#"><span·class="id"·title="library">QOrderedType</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#"><span·class="id"·title="library">GenericMinMax</span></a>.<br/> | 49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.QArith.QArith_base.html#"><span·class="id"·title="library">QArith_base</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#"><span·class="id"·title="library">Orders</span></a>·<a·class="idref"·href="Coq.QArith.QOrderedType.html#"><span·class="id"·title="library">QOrderedType</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#"><span·class="id"·title="library">GenericMinMax</span></a>.<br/> |
50 | <br/> | 50 | <br/> |
51 | </div> | 51 | </div> |
52 | <div·class="doc"> | 52 | <div·class="doc"> |
53 | <a·id="lab | 53 | <a·id="lab494"></a><h1·class="section">Maximum·and·Minimum·of·two·rational·numbers</h1> |
54 | </div> | 54 | </div> |
55 | <div·class="code"> | 55 | <div·class="code"> |
56 | <br/> | 56 | <br/> |
57 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">Q_scope</span>.<br/> | 57 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">Q_scope</span>.<br/> |
Offset 97, 15 lines modified | Offset 97, 15 lines modified | ||
97 | <br/> | 97 | <br/> |
98 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#MinMaxProperties"><span·class="id"·title="module">MinMaxProperties</span></a>·<a·class="idref"·href="Coq.QArith.QOrderedType.html#Q_as_OT"><span·class="id"·title="module">Q_as_OT</span></a>·<a·class="idref"·href="Coq.QArith.Qminmax.html#QHasMinMax"><span·class="id"·title="module">QHasMinMax</span></a>.<br/> | 98 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#MinMaxProperties"><span·class="id"·title="module">MinMaxProperties</span></a>·<a·class="idref"·href="Coq.QArith.QOrderedType.html#Q_as_OT"><span·class="id"·title="module">Q_as_OT</span></a>·<a·class="idref"·href="Coq.QArith.Qminmax.html#QHasMinMax"><span·class="id"·title="module">QHasMinMax</span></a>.<br/> |
99 | <br/> | 99 | <br/> |
100 | </div> | 100 | </div> |
101 | <div·class="doc"> | 101 | <div·class="doc"> |
102 | <a·id="lab | 102 | <a·id="lab495"></a><h1·class="section">Properties·specific·to·the·<span·class="inlinecode"><span·class="id"·title="var">Q</span></span>·domain</h1> |
103 | <div·class="paragraph">·</div> | 103 | <div·class="paragraph">·</div> |
104 | ·Compatibilities·(consequences·of·monotonicity)· | 104 | ·Compatibilities·(consequences·of·monotonicity)· |
105 | </div> | 105 | </div> |
106 | <div·class="code"> | 106 | <div·class="code"> |
Offset 48, 64 lines modified | Offset 48, 64 lines modified | ||
48 | <br/> | 48 | <br/> |
49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.ZArith.Zpow_facts.html#"><span·class="id"·title="library">Zpow_facts</span></a>·<a·class="idref"·href="Coq.QArith.Qfield.html#"><span·class="id"·title="library">Qfield</span></a>·<a·class="idref"·href="Coq.QArith.Qreduction.html#"><span·class="id"·title="library">Qreduction</span></a>.<br/> | 49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.ZArith.Zpow_facts.html#"><span·class="id"·title="library">Zpow_facts</span></a>·<a·class="idref"·href="Coq.QArith.Qfield.html#"><span·class="id"·title="library">Qfield</span></a>·<a·class="idref"·href="Coq.QArith.Qreduction.html#"><span·class="id"·title="library">Qreduction</span></a>.<br/> |
50 | <br/> | 50 | <br/> |
51 | </div> | 51 | </div> |
52 | <div·class="doc"> | 52 | <div·class="doc"> |
53 | <a·id="lab | 53 | <a·id="lab497"></a><h1·class="section">Properties·of·Qpower_positive</h1> |
54 | <div·class="paragraph">·</div> | 54 | <div·class="paragraph">·</div> |
55 | <a·id="lab | 55 | <a·id="lab498"></a><h2·class="section">Values·of·Qpower_positive·for·specific·arguments</h2> |
56 | </div> | 56 | </div> |
57 | <div·class="code"> | 57 | <div·class="code"> |
58 | <br/> | 58 | <br/> |
59 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qpower_positive_1"·class="idref"·href="#Qpower_positive_1"><span·class="id"·title="lemma">Qpower_positive_1</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:1"·class="idref"·href="#n:1"><span·class="id"·title="binder">n</span></a>,·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·1·<a·class="idref"·href="Coq.QArith.Qpower.html#n:1"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·1.<br/> | 59 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qpower_positive_1"·class="idref"·href="#Qpower_positive_1"><span·class="id"·title="lemma">Qpower_positive_1</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:1"·class="idref"·href="#n:1"><span·class="id"·title="binder">n</span></a>,·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·1·<a·class="idref"·href="Coq.QArith.Qpower.html#n:1"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·1.<br/> |
60 | <br/> | 60 | <br/> |
61 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qpower_positive_0"·class="idref"·href="#Qpower_positive_0"><span·class="id"·title="lemma">Qpower_positive_0</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:2"·class="idref"·href="#n:2"><span·class="id"·title="binder">n</span></a>,·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·0·<a·class="idref"·href="Coq.QArith.Qpower.html#n:2"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·0.<br/> | 61 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qpower_positive_0"·class="idref"·href="#Qpower_positive_0"><span·class="id"·title="lemma">Qpower_positive_0</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:2"·class="idref"·href="#n:2"><span·class="id"·title="binder">n</span></a>,·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·0·<a·class="idref"·href="Coq.QArith.Qpower.html#n:2"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·0.<br/> |
62 | <br/> | 62 | <br/> |
63 | </div> | 63 | </div> |
64 | <div·class="doc"> | 64 | <div·class="doc"> |
65 | <a·id="lab | 65 | <a·id="lab499"></a><h2·class="section">Relation·of·Qpower_positive·to·zero</h2> |
66 | </div> | 66 | </div> |
67 | <div·class="code"> | 67 | <div·class="code"> |
68 | <br/> | 68 | <br/> |
69 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qpower_not_0_positive"·class="idref"·href="#Qpower_not_0_positive"><span·class="id"·title="lemma">Qpower_not_0_positive</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="a:3"·class="idref"·href="#a:3"><span·class="id"·title="binder">a</span></a>·<a·id="n:4"·class="idref"·href="#n:4"><span·class="id"·title="binder">n</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~</span></a><a·class="idref"·href="Coq.QArith.Qpower.html#a:3"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#a:3"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#n:4"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·0.<br/> | 69 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qpower_not_0_positive"·class="idref"·href="#Qpower_not_0_positive"><span·class="id"·title="lemma">Qpower_not_0_positive</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="a:3"·class="idref"·href="#a:3"><span·class="id"·title="binder">a</span></a>·<a·id="n:4"·class="idref"·href="#n:4"><span·class="id"·title="binder">n</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~</span></a><a·class="idref"·href="Coq.QArith.Qpower.html#a:3"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#a:3"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#n:4"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·0.<br/> |
70 | <br/> | 70 | <br/> |
71 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qpower_pos_positive"·class="idref"·href="#Qpower_pos_positive"><span·class="id"·title="lemma">Qpower_pos_positive</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="p:5"·class="idref"·href="#p:5"><span·class="id"·title="binder">p</span></a>·<a·id="n:6"·class="idref"·href="#n:6"><span·class="id"·title="binder">n</span></a>,·0·<a·class="idref"·href="Coq.QArith.QArith_base.html#bb2ae1e3b1d37b46a15737373eedf343"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#p:5"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0·<a·class="idref"·href="Coq.QArith.QArith_base.html#bb2ae1e3b1d37b46a15737373eedf343"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#p:5"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#n:6"><span·class="id"·title="variable">n</span></a>.<br/> | 71 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qpower_pos_positive"·class="idref"·href="#Qpower_pos_positive"><span·class="id"·title="lemma">Qpower_pos_positive</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="p:5"·class="idref"·href="#p:5"><span·class="id"·title="binder">p</span></a>·<a·id="n:6"·class="idref"·href="#n:6"><span·class="id"·title="binder">n</span></a>,·0·<a·class="idref"·href="Coq.QArith.QArith_base.html#bb2ae1e3b1d37b46a15737373eedf343"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#p:5"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0·<a·class="idref"·href="Coq.QArith.QArith_base.html#bb2ae1e3b1d37b46a15737373eedf343"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#p:5"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#n:6"><span·class="id"·title="variable">n</span></a>.<br/> |
72 | <br/> | 72 | <br/> |
73 | </div> | 73 | </div> |
74 | <div·class="doc"> | 74 | <div·class="doc"> |
75 | <a·id="lab | 75 | <a·id="lab500"></a><h2·class="section">Qpower_positive·and·multiplication,·exponent·subtraction</h2> |
76 | </div> | 76 | </div> |
77 | <div·class="code"> | 77 | <div·class="code"> |
78 | <br/> | 78 | <br/> |
79 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qmult_power_positive"·class="idref"·href="#Qmult_power_positive"><span·class="id"·title="lemma">Qmult_power_positive</span></a>··:·<span·class="id"·title="keyword">forall</span>·<a·id="a:7"·class="idref"·href="#a:7"><span·class="id"·title="binder">a</span></a>·<a·id="b:8"·class="idref"·href="#b:8"><span·class="id"·title="binder">b</span></a>·<a·id="n:9"·class="idref"·href="#n:9"><span·class="id"·title="binder">n</span></a>,·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·(<a·class="idref"·href="Coq.QArith.Qpower.html#a:7"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#a913d2882dcbf2c07ae6ccbc47eaad45"><span·class="id"·title="notation">*</span></a><a·class="idref"·href="Coq.QArith.Qpower.html#b:8"><span·class="id"·title="variable">b</span></a>)·<a·class="idref"·href="Coq.QArith.Qpower.html#n:9"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#a913d2882dcbf2c07ae6ccbc47eaad45"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#a:7"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#n:9"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#a913d2882dcbf2c07ae6ccbc47eaad45"><span·class="id"·title="notation">)*(</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#b:8"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#n:9"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#a913d2882dcbf2c07ae6ccbc47eaad45"><span·class="id"·title="notation">)</span></a>.<br/> | 79 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qmult_power_positive"·class="idref"·href="#Qmult_power_positive"><span·class="id"·title="lemma">Qmult_power_positive</span></a>··:·<span·class="id"·title="keyword">forall</span>·<a·id="a:7"·class="idref"·href="#a:7"><span·class="id"·title="binder">a</span></a>·<a·id="b:8"·class="idref"·href="#b:8"><span·class="id"·title="binder">b</span></a>·<a·id="n:9"·class="idref"·href="#n:9"><span·class="id"·title="binder">n</span></a>,·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·(<a·class="idref"·href="Coq.QArith.Qpower.html#a:7"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#a913d2882dcbf2c07ae6ccbc47eaad45"><span·class="id"·title="notation">*</span></a><a·class="idref"·href="Coq.QArith.Qpower.html#b:8"><span·class="id"·title="variable">b</span></a>)·<a·class="idref"·href="Coq.QArith.Qpower.html#n:9"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#a913d2882dcbf2c07ae6ccbc47eaad45"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#a:7"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#n:9"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#a913d2882dcbf2c07ae6ccbc47eaad45"><span·class="id"·title="notation">)*(</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#b:8"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#n:9"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#a913d2882dcbf2c07ae6ccbc47eaad45"><span·class="id"·title="notation">)</span></a>.<br/> |
80 | <br/> | 80 | <br/> |
81 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qpower_plus_positive"·class="idref"·href="#Qpower_plus_positive"><span·class="id"·title="lemma">Qpower_plus_positive</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="a:10"·class="idref"·href="#a:10"><span·class="id"·title="binder">a</span></a>·<a·id="n:11"·class="idref"·href="#n:11"><span·class="id"·title="binder">n</span></a>·<a·id="m:12"·class="idref"·href="#m:12"><span·class="id"·title="binder">m</span></a>,·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#a:10"><span·class="id"·title="variable">a</span></a>·(<a·class="idref"·href="Coq.QArith.Qpower.html#n:11"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.PArith.BinPos.html#50efadf7a9f9d41adb2b162cbba3bda7"><span·class="id"·title="notation">+</span></a><a·class="idref"·href="Coq.QArith.Qpower.html#m:12"><span·class="id"·title="variable">m</span></a>)·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#a913d2882dcbf2c07ae6ccbc47eaad45"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#a:10"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#n:11"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#a913d2882dcbf2c07ae6ccbc47eaad45"><span·class="id"·title="notation">)*(</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#a:10"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#m:12"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#a913d2882dcbf2c07ae6ccbc47eaad45"><span·class="id"·title="notation">)</span></a>.<br/> | 81 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qpower_plus_positive"·class="idref"·href="#Qpower_plus_positive"><span·class="id"·title="lemma">Qpower_plus_positive</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="a:10"·class="idref"·href="#a:10"><span·class="id"·title="binder">a</span></a>·<a·id="n:11"·class="idref"·href="#n:11"><span·class="id"·title="binder">n</span></a>·<a·id="m:12"·class="idref"·href="#m:12"><span·class="id"·title="binder">m</span></a>,·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#a:10"><span·class="id"·title="variable">a</span></a>·(<a·class="idref"·href="Coq.QArith.Qpower.html#n:11"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.PArith.BinPos.html#50efadf7a9f9d41adb2b162cbba3bda7"><span·class="id"·title="notation">+</span></a><a·class="idref"·href="Coq.QArith.Qpower.html#m:12"><span·class="id"·title="variable">m</span></a>)·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#a913d2882dcbf2c07ae6ccbc47eaad45"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#a:10"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#n:11"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#a913d2882dcbf2c07ae6ccbc47eaad45"><span·class="id"·title="notation">)*(</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#a:10"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#m:12"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#a913d2882dcbf2c07ae6ccbc47eaad45"><span·class="id"·title="notation">)</span></a>.<br/> |
82 | <br/> | 82 | <br/> |
83 | </div> | 83 | </div> |
84 | <div·class="doc"> | 84 | <div·class="doc"> |
85 | <a·id="lab | 85 | <a·id="lab501"></a><h2·class="section">Qpower_positive·and·inversion,·division,·exponent·subtraction</h2> |
86 | </div> | 86 | </div> |
87 | <div·class="code"> | 87 | <div·class="code"> |
88 | <br/> | 88 | <br/> |
89 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qinv_power_positive"·class="idref"·href="#Qinv_power_positive"><span·class="id"·title="lemma">Qinv_power_positive</span></a>··:·<span·class="id"·title="keyword">forall</span>·<a·id="a:13"·class="idref"·href="#a:13"><span·class="id"·title="binder">a</span></a>·<a·id="n:14"·class="idref"·href="#n:14"><span·class="id"·title="binder">n</span></a>,·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·(<a·class="idref"·href="Coq.QArith.QArith_base.html#8bbb7e6c4363db1e6ff873634c45a65e"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.QArith.Qpower.html#a:13"><span·class="id"·title="variable">a</span></a>)·<a·class="idref"·href="Coq.QArith.Qpower.html#n:14"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#8bbb7e6c4363db1e6ff873634c45a65e"><span·class="id"·title="notation">/(</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#a:13"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#n:14"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#8bbb7e6c4363db1e6ff873634c45a65e"><span·class="id"·title="notation">)</span></a>.<br/> | 89 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qinv_power_positive"·class="idref"·href="#Qinv_power_positive"><span·class="id"·title="lemma">Qinv_power_positive</span></a>··:·<span·class="id"·title="keyword">forall</span>·<a·id="a:13"·class="idref"·href="#a:13"><span·class="id"·title="binder">a</span></a>·<a·id="n:14"·class="idref"·href="#n:14"><span·class="id"·title="binder">n</span></a>,·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·(<a·class="idref"·href="Coq.QArith.QArith_base.html#8bbb7e6c4363db1e6ff873634c45a65e"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.QArith.Qpower.html#a:13"><span·class="id"·title="variable">a</span></a>)·<a·class="idref"·href="Coq.QArith.Qpower.html#n:14"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#8bbb7e6c4363db1e6ff873634c45a65e"><span·class="id"·title="notation">/(</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#a:13"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#n:14"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#8bbb7e6c4363db1e6ff873634c45a65e"><span·class="id"·title="notation">)</span></a>.<br/> |
Offset 114, 28 lines modified | Offset 114, 28 lines modified | ||
114 | (<a·class="idref"·href="Coq.QArith.Qpower.html#m:17"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#::positive_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#n:16"><span·class="id"·title="variable">n</span></a>)%<span·class="id"·title="var">positive</span>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 114 | (<a·class="idref"·href="Coq.QArith.Qpower.html#m:17"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#::positive_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#n:16"><span·class="id"·title="variable">n</span></a>)%<span·class="id"·title="var">positive</span>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
115 | <a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#a:15"><span·class="id"·title="variable">a</span></a>·(<a·class="idref"·href="Coq.QArith.Qpower.html#n:16"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.PArith.BinPos.html#::positive_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a><a·class="idref"·href="Coq.QArith.Qpower.html#m:17"><span·class="id"·title="variable">m</span></a>)%<span·class="id"·title="var">positive</span>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#91b8b0d313b5cdf9c4004b806e61416a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#a:15"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#n:16"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#91b8b0d313b5cdf9c4004b806e61416a"><span·class="id"·title="notation">)/(</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#a:15"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#m:17"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#91b8b0d313b5cdf9c4004b806e61416a"><span·class="id"·title="notation">)</span></a>.<br/> | 115 | <a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#a:15"><span·class="id"·title="variable">a</span></a>·(<a·class="idref"·href="Coq.QArith.Qpower.html#n:16"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.PArith.BinPos.html#::positive_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a><a·class="idref"·href="Coq.QArith.Qpower.html#m:17"><span·class="id"·title="variable">m</span></a>)%<span·class="id"·title="var">positive</span>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#91b8b0d313b5cdf9c4004b806e61416a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#a:15"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#n:16"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#91b8b0d313b5cdf9c4004b806e61416a"><span·class="id"·title="notation">)/(</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#a:15"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#m:17"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#91b8b0d313b5cdf9c4004b806e61416a"><span·class="id"·title="notation">)</span></a>.<br/> |
116 | <br/> | 116 | <br/> |
117 | </div> | 117 | </div> |
118 | <div·class="doc"> | 118 | <div·class="doc"> |
119 | <a·id="lab | 119 | <a·id="lab502"></a><h2·class="section">Qpower·and·exponent·multiplication</h2> |
120 | </div> | 120 | </div> |
121 | <div·class="code"> | 121 | <div·class="code"> |
122 | <br/> | 122 | <br/> |
123 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qpower_mult_positive"·class="idref"·href="#Qpower_mult_positive"><span·class="id"·title="lemma">Qpower_mult_positive</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="a:18"·class="idref"·href="#a:18"><span·class="id"·title="binder">a</span></a>·<a·id="n:19"·class="idref"·href="#n:19"><span·class="id"·title="binder">n</span></a>·<a·id="m:20"·class="idref"·href="#m:20"><span·class="id"·title="binder">m</span></a>,<br/> | 123 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qpower_mult_positive"·class="idref"·href="#Qpower_mult_positive"><span·class="id"·title="lemma">Qpower_mult_positive</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="a:18"·class="idref"·href="#a:18"><span·class="id"·title="binder">a</span></a>·<a·id="n:19"·class="idref"·href="#n:19"><span·class="id"·title="binder">n</span></a>·<a·id="m:20"·class="idref"·href="#m:20"><span·class="id"·title="binder">m</span></a>,<br/> |
124 | <a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#a:18"><span·class="id"·title="variable">a</span></a>·(<a·class="idref"·href="Coq.QArith.Qpower.html#n:19"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.PArith.BinPos.html#83db3fa9f059c10cb623a122cf097cd0"><span·class="id"·title="notation">*</span></a><a·class="idref"·href="Coq.QArith.Qpower.html#m:20"><span·class="id"·title="variable">m</span></a>)·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·(<a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#a:18"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#n:19"><span·class="id"·title="variable">n</span></a>)·<a·class="idref"·href="Coq.QArith.Qpower.html#m:20"><span·class="id"·title="variable">m</span></a>.<br/> | 124 | <a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#a:18"><span·class="id"·title="variable">a</span></a>·(<a·class="idref"·href="Coq.QArith.Qpower.html#n:19"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.PArith.BinPos.html#83db3fa9f059c10cb623a122cf097cd0"><span·class="id"·title="notation">*</span></a><a·class="idref"·href="Coq.QArith.Qpower.html#m:20"><span·class="id"·title="variable">m</span></a>)·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·(<a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#a:18"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#n:19"><span·class="id"·title="variable">n</span></a>)·<a·class="idref"·href="Coq.QArith.Qpower.html#m:20"><span·class="id"·title="variable">m</span></a>.<br/> |
125 | <br/> | 125 | <br/> |
126 | </div> | 126 | </div> |
127 | <div·class="doc"> | 127 | <div·class="doc"> |
128 | <a·id="lab | 128 | <a·id="lab503"></a><h2·class="section">Qpower_positive·decomposition</h2> |
129 | </div> | 129 | </div> |
130 | <div·class="code"> | 130 | <div·class="code"> |
131 | <br/> | 131 | <br/> |
132 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qpower_decomp_positive"·class="idref"·href="#Qpower_decomp_positive"><span·class="id"·title="lemma">Qpower_decomp_positive</span></a>·<a·id="p:21"·class="idref"·href="#p:21"><span·class="id"·title="binder">p</span></a>·<a·id="x:22"·class="idref"·href="#x:22"><span·class="id"·title="binder">x</span></a>·<a·id="y:23"·class="idref"·href="#y:23"><span·class="id"·title="binder">y</span></a>·:<br/> | 132 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qpower_decomp_positive"·class="idref"·href="#Qpower_decomp_positive"><span·class="id"·title="lemma">Qpower_decomp_positive</span></a>·<a·id="p:21"·class="idref"·href="#p:21"><span·class="id"·title="binder">p</span></a>·<a·id="x:22"·class="idref"·href="#x:22"><span·class="id"·title="binder">x</span></a>·<a·id="y:23"·class="idref"·href="#y:23"><span·class="id"·title="binder">y</span></a>·:<br/> |
133 | <a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·(<a·class="idref"·href="Coq.QArith.Qpower.html#x:22"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#90281ef6c291e34a6461b59eb05ad5cc"><span·class="id"·title="notation">#</span></a><a·class="idref"·href="Coq.QArith.Qpower.html#y:23"><span·class="id"·title="variable">y</span></a>)·<a·class="idref"·href="Coq.QArith.Qpower.html#p:21"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#x:22"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#14ef112b66e341f773bd1e9d05816f43"><span·class="id"·title="notation">^</span></a>·<a·class="idref"·href="Coq.Numbers.BinNums.html#Zpos"><span·class="id"·title="constructor">Zpos</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#p:21"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#90281ef6c291e34a6461b59eb05ad5cc"><span·class="id"·title="notation">#</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#90281ef6c291e34a6461b59eb05ad5cc"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.QArith.Qpower.html#y:23"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#72c1e614b36b07dc51a712bc261ee813"><span·class="id"·title="notation">^</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#p:21"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#90281ef6c291e34a6461b59eb05ad5cc"><span·class="id"·title="notation">)</span></a>.<br/> | 133 | <a·class="idref"·href="Coq.QArith.QArith_base.html#Qpower_positive"><span·class="id"·title="definition">Qpower_positive</span></a>·(<a·class="idref"·href="Coq.QArith.Qpower.html#x:22"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#90281ef6c291e34a6461b59eb05ad5cc"><span·class="id"·title="notation">#</span></a><a·class="idref"·href="Coq.QArith.Qpower.html#y:23"><span·class="id"·title="variable">y</span></a>)·<a·class="idref"·href="Coq.QArith.Qpower.html#p:21"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#x:22"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#14ef112b66e341f773bd1e9d05816f43"><span·class="id"·title="notation">^</span></a>·<a·class="idref"·href="Coq.Numbers.BinNums.html#Zpos"><span·class="id"·title="constructor">Zpos</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#p:21"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#90281ef6c291e34a6461b59eb05ad5cc"><span·class="id"·title="notation">#</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#90281ef6c291e34a6461b59eb05ad5cc"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.QArith.Qpower.html#y:23"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#72c1e614b36b07dc51a712bc261ee813"><span·class="id"·title="notation">^</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#p:21"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#90281ef6c291e34a6461b59eb05ad5cc"><span·class="id"·title="notation">)</span></a>.<br/> |
Offset 143, 19 lines modified | Offset 143, 19 lines modified | ||
143 | <br/> | 143 | <br/> |
144 | <span·class="id"·title="keyword">Notation</span>·<a·id="Qpower_decomp"·class="idref"·href="#Qpower_decomp"><span·class="id"·title="abbreviation">Qpower_decomp</span></a>·:=·<a·class="idref"·href="Coq.QArith.Qpower.html#Qpower_decomp_positive"><span·class="id"·title="lemma">Qpower_decomp_positive</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> | 144 | <span·class="id"·title="keyword">Notation</span>·<a·id="Qpower_decomp"·class="idref"·href="#Qpower_decomp"><span·class="id"·title="abbreviation">Qpower_decomp</span></a>·:=·<a·class="idref"·href="Coq.QArith.Qpower.html#Qpower_decomp_positive"><span·class="id"·title="lemma">Qpower_decomp_positive</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> |
145 | <br/> | 145 | <br/> |
146 | </div> | 146 | </div> |
147 | <div·class="doc"> | 147 | <div·class="doc"> |
148 | <a·id="lab | 148 | <a·id="lab504"></a><h1·class="section">Properties·of·Qpower</h1> |
149 | <div·class="paragraph">·</div> | 149 | <div·class="paragraph">·</div> |
150 | <a·id="lab | 150 | <a·id="lab505"></a><h2·class="section">Values·of·Qpower·for·specific·arguments</h2> |
151 | </div> | 151 | </div> |
152 | <div·class="code"> | 152 | <div·class="code"> |
153 | <br/> | 153 | <br/> |
154 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qpower_0"·class="idref"·href="#Qpower_0"><span·class="id"·title="lemma">Qpower_0</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:24"·class="idref"·href="#n:24"><span·class="id"·title="binder">n</span></a>,·(<a·class="idref"·href="Coq.QArith.Qpower.html#n:24"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>0)%<span·class="id"·title="var">Z</span>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0<a·class="idref"·href="Coq.QArith.QArith_base.html#29252aa5a762eddf72f5ba706a9f72cb"><span·class="id"·title="notation">^</span></a><a·class="idref"·href="Coq.QArith.Qpower.html#n:24"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·0.<br/> | 154 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qpower_0"·class="idref"·href="#Qpower_0"><span·class="id"·title="lemma">Qpower_0</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:24"·class="idref"·href="#n:24"><span·class="id"·title="binder">n</span></a>,·(<a·class="idref"·href="Coq.QArith.Qpower.html#n:24"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>0)%<span·class="id"·title="var">Z</span>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0<a·class="idref"·href="Coq.QArith.QArith_base.html#29252aa5a762eddf72f5ba706a9f72cb"><span·class="id"·title="notation">^</span></a><a·class="idref"·href="Coq.QArith.Qpower.html#n:24"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·0.<br/> |
Offset 170, 15 lines modified | Offset 170, 15 lines modified | ||
170 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qpower_1_r"·class="idref"·href="#Qpower_1_r"><span·class="id"·title="lemma">Qpower_1_r</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="q:27"·class="idref"·href="#q:27"><span·class="id"·title="binder">q</span></a>:<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>,<br/> | 170 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qpower_1_r"·class="idref"·href="#Qpower_1_r"><span·class="id"·title="lemma">Qpower_1_r</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="q:27"·class="idref"·href="#q:27"><span·class="id"·title="binder">q</span></a>:<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>,<br/> |
171 | <a·class="idref"·href="Coq.QArith.Qpower.html#q:27"><span·class="id"·title="variable">q</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#29252aa5a762eddf72f5ba706a9f72cb"><span·class="id"·title="notation">^</span></a>1·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#q:27"><span·class="id"·title="variable">q</span></a>.<br/> | 171 | <a·class="idref"·href="Coq.QArith.Qpower.html#q:27"><span·class="id"·title="variable">q</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#29252aa5a762eddf72f5ba706a9f72cb"><span·class="id"·title="notation">^</span></a>1·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.QArith.Qpower.html#q:27"><span·class="id"·title="variable">q</span></a>.<br/> |
172 | <br/> | 172 | <br/> |
173 | </div> | 173 | </div> |
174 | <div·class="doc"> | 174 | <div·class="doc"> |
175 | <a·id="lab | 175 | <a·id="lab506"></a><h2·class="section">Relation·of·Qpower·to·zero</h2> |
176 | </div> | 176 | </div> |
177 | <div·class="code"> | 177 | <div·class="code"> |
178 | <br/> | 178 | <br/> |
Max diff block lines reached; 37421/59703 bytes (62.68%) of diff not shown. |
Offset 54, 15 lines modified | Offset 54, 15 lines modified | ||
54 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.micromega.Lra.html#"><span·class="id"·title="library">Lra</span></a>.<br/> | 54 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.micromega.Lra.html#"><span·class="id"·title="library">Lra</span></a>.<br/> |
55 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">R_scope</span>.<br/> | 55 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">R_scope</span>.<br/> |
56 | <br/> | 56 | <br/> |
57 | </div> | 57 | </div> |
58 | <div·class="doc"> | 58 | <div·class="doc"> |
59 | <a·id="lab | 59 | <a·id="lab880"></a><h1·class="section">Formalization·of·alternated·series</h1> |
60 | </div> | 60 | </div> |
61 | <div·class="code"> | 61 | <div·class="code"> |
62 | <span·class="id"·title="keyword">Definition</span>·<a·id="tg_alt"·class="idref"·href="#tg_alt"><span·class="id"·title="definition">tg_alt</span></a>·(<a·id="Un:1"·class="idref"·href="#Un:1"><span·class="id"·title="binder">Un</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="i:2"·class="idref"·href="#i:2"><span·class="id"·title="binder">i</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Rfunctions.html#1fc859ef9f60fc2e3a52c48371d07707"><span·class="id"·title="notation">(</span></a>-1<a·class="idref"·href="Coq.Reals.Rfunctions.html#1fc859ef9f60fc2e3a52c48371d07707"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#1fc859ef9f60fc2e3a52c48371d07707"><span·class="id"·title="notation">^</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#i:2"><span·class="id"·title="variable">i</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#Un:1"><span·class="id"·title="variable">Un</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#i:2"><span·class="id"·title="variable">i</span></a>.<br/> | 62 | <span·class="id"·title="keyword">Definition</span>·<a·id="tg_alt"·class="idref"·href="#tg_alt"><span·class="id"·title="definition">tg_alt</span></a>·(<a·id="Un:1"·class="idref"·href="#Un:1"><span·class="id"·title="binder">Un</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="i:2"·class="idref"·href="#i:2"><span·class="id"·title="binder">i</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Rfunctions.html#1fc859ef9f60fc2e3a52c48371d07707"><span·class="id"·title="notation">(</span></a>-1<a·class="idref"·href="Coq.Reals.Rfunctions.html#1fc859ef9f60fc2e3a52c48371d07707"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#1fc859ef9f60fc2e3a52c48371d07707"><span·class="id"·title="notation">^</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#i:2"><span·class="id"·title="variable">i</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#Un:1"><span·class="id"·title="variable">Un</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#i:2"><span·class="id"·title="variable">i</span></a>.<br/> |
63 | <span·class="id"·title="keyword">Definition</span>·<a·id="positivity_seq"·class="idref"·href="#positivity_seq"><span·class="id"·title="definition">positivity_seq</span></a>·(<a·id="Un:3"·class="idref"·href="#Un:3"><span·class="id"·title="binder">Un</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<span·class="id"·title="keyword">Prop</span>·:=·<span·class="id"·title="keyword">forall</span>·<a·id="n:4"·class="idref"·href="#n:4"><span·class="id"·title="binder">n</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>,·0·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#Un:3"><span·class="id"·title="variable">Un</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#n:4"><span·class="id"·title="variable">n</span></a>.<br/> | 63 | <span·class="id"·title="keyword">Definition</span>·<a·id="positivity_seq"·class="idref"·href="#positivity_seq"><span·class="id"·title="definition">positivity_seq</span></a>·(<a·id="Un:3"·class="idref"·href="#Un:3"><span·class="id"·title="binder">Un</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<span·class="id"·title="keyword">Prop</span>·:=·<span·class="id"·title="keyword">forall</span>·<a·id="n:4"·class="idref"·href="#n:4"><span·class="id"·title="binder">n</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>,·0·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#Un:3"><span·class="id"·title="variable">Un</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#n:4"><span·class="id"·title="variable">n</span></a>.<br/> |
64 | <br/> | 64 | <br/> |
Offset 117, 15 lines modified | Offset 117, 15 lines modified | ||
117 | <a·class="idref"·href="Coq.Reals.Rseries.html#Un_cv"><span·class="id"·title="definition">Un_cv</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#Un:29"><span·class="id"·title="variable">Un</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 117 | <a·class="idref"·href="Coq.Reals.Rseries.html#Un_cv"><span·class="id"·title="definition">Un_cv</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#Un:29"><span·class="id"·title="variable">Un</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
118 | <a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">{</span></a>·<a·id="l:30"·class="idref"·href="#l:30"><span·class="id"·title="binder">l</span></a><a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">:</span></a><a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">|</span></a>·<a·class="idref"·href="Coq.Reals.Rseries.html#Un_cv"><span·class="id"·title="definition">Un_cv</span></a>·(<span·class="id"·title="keyword">fun</span>·<a·id="N:31"·class="idref"·href="#N:31"><span·class="id"·title="binder">N</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·=>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#sum_f_R0"><span·class="id"·title="definition">sum_f_R0</span></a>·(<a·class="idref"·href="Coq.Reals.AltSeries.html#tg_alt"><span·class="id"·title="definition">tg_alt</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#Un:29"><span·class="id"·title="variable">Un</span></a>)·<a·class="idref"·href="Coq.Reals.AltSeries.html#N:31"><span·class="id"·title="variable">N</span></a>)·<a·class="idref"·href="Coq.Reals.AltSeries.html#l:30"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">}</span></a>.<br/> | 118 | <a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">{</span></a>·<a·id="l:30"·class="idref"·href="#l:30"><span·class="id"·title="binder">l</span></a><a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">:</span></a><a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">|</span></a>·<a·class="idref"·href="Coq.Reals.Rseries.html#Un_cv"><span·class="id"·title="definition">Un_cv</span></a>·(<span·class="id"·title="keyword">fun</span>·<a·id="N:31"·class="idref"·href="#N:31"><span·class="id"·title="binder">N</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·=>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#sum_f_R0"><span·class="id"·title="definition">sum_f_R0</span></a>·(<a·class="idref"·href="Coq.Reals.AltSeries.html#tg_alt"><span·class="id"·title="definition">tg_alt</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#Un:29"><span·class="id"·title="variable">Un</span></a>)·<a·class="idref"·href="Coq.Reals.AltSeries.html#N:31"><span·class="id"·title="variable">N</span></a>)·<a·class="idref"·href="Coq.Reals.AltSeries.html#l:30"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">}</span></a>.<br/> |
119 | <br/> | 119 | <br/> |
120 | </div> | 120 | </div> |
121 | <div·class="doc"> | 121 | <div·class="doc"> |
122 | <a·id="lab | 122 | <a·id="lab881"></a><h1·class="section">Convergence·of·alternated·series</h1> |
123 | </div> | 123 | </div> |
124 | <div·class="code"> | 124 | <div·class="code"> |
125 | <span·class="id"·title="keyword">Theorem</span>·<a·id="alternated_series"·class="idref"·href="#alternated_series"><span·class="id"·title="lemma">alternated_series</span></a>·:<br/> | 125 | <span·class="id"·title="keyword">Theorem</span>·<a·id="alternated_series"·class="idref"·href="#alternated_series"><span·class="id"·title="lemma">alternated_series</span></a>·:<br/> |
126 | <span·class="id"·title="keyword">forall</span>·<a·id="Un:32"·class="idref"·href="#Un:32"><span·class="id"·title="binder">Un</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,<br/> | 126 | <span·class="id"·title="keyword">forall</span>·<a·id="Un:32"·class="idref"·href="#Un:32"><span·class="id"·title="binder">Un</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,<br/> |
127 | <a·class="idref"·href="Coq.Reals.SeqProp.html#Un_decreasing"><span·class="id"·title="definition">Un_decreasing</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#Un:32"><span·class="id"·title="variable">Un</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 127 | <a·class="idref"·href="Coq.Reals.SeqProp.html#Un_decreasing"><span·class="id"·title="definition">Un_decreasing</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#Un:32"><span·class="id"·title="variable">Un</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
128 | <a·class="idref"·href="Coq.Reals.Rseries.html#Un_cv"><span·class="id"·title="definition">Un_cv</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#Un:32"><span·class="id"·title="variable">Un</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 128 | <a·class="idref"·href="Coq.Reals.Rseries.html#Un_cv"><span·class="id"·title="definition">Un_cv</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#Un:32"><span·class="id"·title="variable">Un</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
Offset 139, 15 lines modified | Offset 139, 15 lines modified | ||
139 | <a·class="idref"·href="Coq.Reals.Rseries.html#Un_cv"><span·class="id"·title="definition">Un_cv</span></a>·(<span·class="id"·title="keyword">fun</span>·<a·id="N:38"·class="idref"·href="#N:38"><span·class="id"·title="binder">N</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·=>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#sum_f_R0"><span·class="id"·title="definition">sum_f_R0</span></a>·(<a·class="idref"·href="Coq.Reals.AltSeries.html#tg_alt"><span·class="id"·title="definition">tg_alt</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#Un:35"><span·class="id"·title="variable">Un</span></a>)·<a·class="idref"·href="Coq.Reals.AltSeries.html#N:38"><span·class="id"·title="variable">N</span></a>)·<a·class="idref"·href="Coq.Reals.AltSeries.html#l:36"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 139 | <a·class="idref"·href="Coq.Reals.Rseries.html#Un_cv"><span·class="id"·title="definition">Un_cv</span></a>·(<span·class="id"·title="keyword">fun</span>·<a·id="N:38"·class="idref"·href="#N:38"><span·class="id"·title="binder">N</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·=>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#sum_f_R0"><span·class="id"·title="definition">sum_f_R0</span></a>·(<a·class="idref"·href="Coq.Reals.AltSeries.html#tg_alt"><span·class="id"·title="definition">tg_alt</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#Un:35"><span·class="id"·title="variable">Un</span></a>)·<a·class="idref"·href="Coq.Reals.AltSeries.html#N:38"><span·class="id"·title="variable">N</span></a>)·<a·class="idref"·href="Coq.Reals.AltSeries.html#l:36"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
140 | <a·class="idref"·href="Coq.Reals.Rfunctions.html#sum_f_R0"><span·class="id"·title="definition">sum_f_R0</span></a>·(<a·class="idref"·href="Coq.Reals.AltSeries.html#tg_alt"><span·class="id"·title="definition">tg_alt</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#Un:35"><span·class="id"·title="variable">Un</span></a>)·(<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·(2·<a·class="idref"·href="Coq.Init.Peano.html#ea2ff3d561159081cea6fb2e8113cc54"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#N:37"><span·class="id"·title="variable">N</span></a>))·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#l:36"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#sum_f_R0"><span·class="id"·title="definition">sum_f_R0</span></a>·(<a·class="idref"·href="Coq.Reals.AltSeries.html#tg_alt"><span·class="id"·title="definition">tg_alt</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#Un:35"><span·class="id"·title="variable">Un</span></a>)·(2·<a·class="idref"·href="Coq.Init.Peano.html#ea2ff3d561159081cea6fb2e8113cc54"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#N:37"><span·class="id"·title="variable">N</span></a>).<br/> | 140 | <a·class="idref"·href="Coq.Reals.Rfunctions.html#sum_f_R0"><span·class="id"·title="definition">sum_f_R0</span></a>·(<a·class="idref"·href="Coq.Reals.AltSeries.html#tg_alt"><span·class="id"·title="definition">tg_alt</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#Un:35"><span·class="id"·title="variable">Un</span></a>)·(<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·(2·<a·class="idref"·href="Coq.Init.Peano.html#ea2ff3d561159081cea6fb2e8113cc54"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#N:37"><span·class="id"·title="variable">N</span></a>))·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#l:36"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#sum_f_R0"><span·class="id"·title="definition">sum_f_R0</span></a>·(<a·class="idref"·href="Coq.Reals.AltSeries.html#tg_alt"><span·class="id"·title="definition">tg_alt</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#Un:35"><span·class="id"·title="variable">Un</span></a>)·(2·<a·class="idref"·href="Coq.Init.Peano.html#ea2ff3d561159081cea6fb2e8113cc54"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#N:37"><span·class="id"·title="variable">N</span></a>).<br/> |
141 | <br/> | 141 | <br/> |
142 | </div> | 142 | </div> |
143 | <div·class="doc"> | 143 | <div·class="doc"> |
144 | <a·id="lab | 144 | <a·id="lab882"></a><h1·class="section">Application·:·construction·of·PI</h1> |
145 | </div> | 145 | </div> |
146 | <div·class="code"> | 146 | <div·class="code"> |
147 | <br/> | 147 | <br/> |
148 | <span·class="id"·title="keyword">Definition</span>·<a·id="PI_tg"·class="idref"·href="#PI_tg"><span·class="id"·title="definition">PI_tg</span></a>·(<a·id="n:47"·class="idref"·href="#n:47"><span·class="id"·title="binder">n</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>)·:=·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#2299a6ef56270a66cc1b95489d0f6e3a"><span·class="id"·title="notation">/</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#INR"><span·class="id"·title="definition">INR</span></a>·(2·<a·class="idref"·href="Coq.Init.Peano.html#ea2ff3d561159081cea6fb2e8113cc54"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#n:47"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Peano.html#0dacc1786c5ba797d47dd85006231633"><span·class="id"·title="notation">+</span></a>·1).<br/> | 148 | <span·class="id"·title="keyword">Definition</span>·<a·id="PI_tg"·class="idref"·href="#PI_tg"><span·class="id"·title="definition">PI_tg</span></a>·(<a·id="n:47"·class="idref"·href="#n:47"><span·class="id"·title="binder">n</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>)·:=·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#2299a6ef56270a66cc1b95489d0f6e3a"><span·class="id"·title="notation">/</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#INR"><span·class="id"·title="definition">INR</span></a>·(2·<a·class="idref"·href="Coq.Init.Peano.html#ea2ff3d561159081cea6fb2e8113cc54"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.AltSeries.html#n:47"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Peano.html#0dacc1786c5ba797d47dd85006231633"><span·class="id"·title="notation">+</span></a>·1).<br/> |
Offset 404, 15 lines modified | Offset 404, 15 lines modified | ||
404 | :·<a·class="idref"·href="Coq.Classes.CMorphisms.html#Proper"><span·class="id"·title="class">CMorphisms.Proper</span></a><br/> | 404 | :·<a·class="idref"·href="Coq.Classes.CMorphisms.html#Proper"><span·class="id"·title="class">CMorphisms.Proper</span></a><br/> |
405 | (<a·class="idref"·href="Coq.Classes.CMorphisms.html#respectful"><span·class="id"·title="definition">CMorphisms.respectful</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qeq"><span·class="id"·title="definition">Qeq</span></a>·<a·class="idref"·href="Coq.Reals.Cauchy.ConstructiveCauchyReals.html#CRealEq"><span·class="id"·title="definition">CRealEq</span></a>)·<a·class="idref"·href="Coq.Reals.Cauchy.ConstructiveCauchyReals.html#inject_Q"><span·class="id"·title="definition">inject_Q</span></a>.<br/> | 405 | (<a·class="idref"·href="Coq.Classes.CMorphisms.html#respectful"><span·class="id"·title="definition">CMorphisms.respectful</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qeq"><span·class="id"·title="definition">Qeq</span></a>·<a·class="idref"·href="Coq.Reals.Cauchy.ConstructiveCauchyReals.html#CRealEq"><span·class="id"·title="definition">CRealEq</span></a>)·<a·class="idref"·href="Coq.Reals.Cauchy.ConstructiveCauchyReals.html#inject_Q"><span·class="id"·title="definition">inject_Q</span></a>.<br/> |
406 | <br/> | 406 | <br/> |
407 | </div> | 407 | </div> |
408 | <div·class="doc"> | 408 | <div·class="doc"> |
409 | <a·id="lab | 409 | <a·id="lab900"></a><h1·class="section">Algebraic·operations</h1> |
410 | <div·class="paragraph">·</div> | 410 | <div·class="paragraph">·</div> |
411 | ·We·reduce·the·rational·numbers·to·accelerate·calculations.· | 411 | ·We·reduce·the·rational·numbers·to·accelerate·calculations.· |
412 | </div> | 412 | </div> |
413 | <div·class="code"> | 413 | <div·class="code"> |
414 | <span·class="id"·title="keyword">Definition</span>·<a·id="CReal_plus_seq"·class="idref"·href="#CReal_plus_seq"><span·class="id"·title="definition">CReal_plus_seq</span></a>·(<a·id="x:112"·class="idref"·href="#x:112"><span·class="id"·title="binder">x</span></a>·<a·id="y:113"·class="idref"·href="#y:113"><span·class="id"·title="binder">y</span></a>·:·<a·class="idref"·href="Coq.Reals.Cauchy.ConstructiveCauchyReals.html#CReal"><span·class="id"·title="record">CReal</span></a>)·:=<br/> | 414 | <span·class="id"·title="keyword">Definition</span>·<a·id="CReal_plus_seq"·class="idref"·href="#CReal_plus_seq"><span·class="id"·title="definition">CReal_plus_seq</span></a>·(<a·id="x:112"·class="idref"·href="#x:112"><span·class="id"·title="binder">x</span></a>·<a·id="y:113"·class="idref"·href="#y:113"><span·class="id"·title="binder">y</span></a>·:·<a·class="idref"·href="Coq.Reals.Cauchy.ConstructiveCauchyReals.html#CReal"><span·class="id"·title="record">CReal</span></a>)·:=<br/> |
Offset 5556, 16 lines modified | Offset 5556, 16 lines modified | ||
00015b30:·6976·6543·6175·6368·7952·6561·6c73·4d75··iveCauchyRealsMu | 00015b30:·6976·6543·6175·6368·7952·6561·6c73·4d75··iveCauchyRealsMu | ||
00015b40:·6c74·2e68·746d·6c23·783a·3130·3522·3e3c··lt.html#x:105">< | 00015b40:·6c74·2e68·746d·6c23·783a·3130·3522·3e3c··lt.html#x:105">< | ||
00015b50:·7370·616e·2063·6c61·7373·3d22·6964·2220··span·class="id"· | 00015b50:·7370·616e·2063·6c61·7373·3d22·6964·2220··span·class="id"· | ||
00015b60:·7469·746c·653d·2276·6172·6961·626c·6522··title="variable" | 00015b60:·7469·746c·653d·2276·6172·6961·626c·6522··title="variable" | ||
00015b70:·3e78·3c2f·7370·616e·3e3c·2f61·3e2e·3c62··>x</span></a>.<b | 00015b70:·3e78·3c2f·7370·616e·3e3c·2f61·3e2e·3c62··>x</span></a>.<b | ||
00015b80:·722f·3e0a·0a3c·6272·2f3e·0a3c·2f64·6976··r/>..<br/>.</div | 00015b80:·722f·3e0a·0a3c·6272·2f3e·0a3c·2f64·6976··r/>..<br/>.</div | ||
00015b90:·3e0a·0a3c·6469·7620·636c·6173·733d·2264··>..<div·class="d | 00015b90:·3e0a·0a3c·6469·7620·636c·6173·733d·2264··>..<div·class="d | ||
00015ba0:·6f63·223e·0a3c·6120·6964·3d22·6c61·623 | 00015ba0:·6f63·223e·0a3c·6120·6964·3d22·6c61·6238··oc">.<a·id="lab8 | ||
00015bb0:·3 | 00015bb0:·3934·223e·3c2f·613e·3c68·3120·636c·6173··94"></a><h1·clas | ||
00015bc0:·733d·2273·6563·7469·6f6e·223e·4669·656c··s="section">Fiel | 00015bc0:·733d·2273·6563·7469·6f6e·223e·4669·656c··s="section">Fiel | ||
00015bd0:·643c·2f68·313e·0a0a·3c2f·6469·763e·0a3c··d</h1>..</div>.< | 00015bd0:·643c·2f68·313e·0a0a·3c2f·6469·763e·0a3c··d</h1>..</div>.< | ||
00015be0:·6469·7620·636c·6173·733d·2263·6f64·6522··div·class="code" | 00015be0:·6469·7620·636c·6173·733d·2263·6f64·6522··div·class="code" | ||
00015bf0:·3e0a·0a3c·6272·2f3e·0a3c·7370·616e·2063··>..<br/>.<span·c | 00015bf0:·3e0a·0a3c·6272·2f3e·0a3c·7370·616e·2063··>..<br/>.<span·c | ||
00015c00:·6c61·7373·3d22·6964·2220·7469·746c·653d··lass="id"·title= | 00015c00:·6c61·7373·3d22·6964·2220·7469·746c·653d··lass="id"·title= | ||
00015c10:·226b·6579·776f·7264·223e·4c65·6d6d·613c··"keyword">Lemma< | 00015c10:·226b·6579·776f·7264·223e·4c65·6d6d·613c··"keyword">Lemma< | ||
00015c20:·2f73·7061·6e3e·203c·6120·6964·3d22·4352··/span>·<a·id="CR | 00015c20:·2f73·7061·6e3e·203c·6120·6964·3d22·4352··/span>·<a·id="CR |
Offset 51, 15 lines modified | Offset 51, 15 lines modified | ||
51 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.micromega.Lia.html#"><span·class="id"·title="library">Lia</span></a>.<br/> | 51 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.micromega.Lia.html#"><span·class="id"·title="library">Lia</span></a>.<br/> |
52 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.micromega.Lqa.html#"><span·class="id"·title="library">Lqa</span></a>.·<span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Reals.Cauchy.PosExtra.html#"><span·class="id"·title="library">PosExtra</span></a>.<br/> | 52 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.micromega.Lqa.html#"><span·class="id"·title="library">Lqa</span></a>.·<span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Reals.Cauchy.PosExtra.html#"><span·class="id"·title="library">PosExtra</span></a>.<br/> |
53 | <br/> | 53 | <br/> |
54 | </div> | 54 | </div> |
55 | <div·class="doc"> | 55 | <div·class="doc"> |
56 | <a·id="lab | 56 | <a·id="lab895"></a><h1·class="section">Power·of·2·open·and·closed·upper·and·lower·bounds·for·<span·class="inlinecode"><span·class="id"·title="var">q</span></span>·<span·class="inlinecode">:</span>·<span·class="inlinecode"><span·class="id"·title="var">Q</span></span></h1> |
57 | </div> | 57 | </div> |
58 | <div·class="code"> | 58 | <div·class="code"> |
59 | <br/> | 59 | <br/> |
60 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Pos_log2floor_plus1"·class="idref"·href="#Pos_log2floor_plus1"><span·class="id"·title="definition">Pos_log2floor_plus1</span></a>·(<a·id="p:1"·class="idref"·href="#p:1"><span·class="id"·title="binder">p</span></a>·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#positive"><span·class="id"·title="inductive">positive</span></a>)·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#positive"><span·class="id"·title="inductive">positive</span></a>·:=<br/> | 60 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Pos_log2floor_plus1"·class="idref"·href="#Pos_log2floor_plus1"><span·class="id"·title="definition">Pos_log2floor_plus1</span></a>·(<a·id="p:1"·class="idref"·href="#p:1"><span·class="id"·title="binder">p</span></a>·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#positive"><span·class="id"·title="inductive">positive</span></a>)·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#positive"><span·class="id"·title="inductive">positive</span></a>·:=<br/> |
61 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Reals.Cauchy.QExtra.html#p:1"><span·class="id"·title="variable">p</span></a>·<span·class="id"·title="keyword">with</span><br/> | 61 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Reals.Cauchy.QExtra.html#p:1"><span·class="id"·title="variable">p</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 92, 15 lines modified | Offset 92, 15 lines modified | ||
92 | |·1%<span·class="id"·title="var">positive</span>······=>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a><br/> | 92 | |·1%<span·class="id"·title="var">positive</span>······=>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a><br/> |
93 | <span·class="id"·title="keyword">end</span>.<br/> | 93 | <span·class="id"·title="keyword">end</span>.<br/> |
94 | <br/> | 94 | <br/> |
95 | </div> | 95 | </div> |
96 | <div·class="doc"> | 96 | <div·class="doc"> |
97 | <a·id="lab | 97 | <a·id="lab896"></a><h2·class="section">Power·of·two·closed·upper·bound·<span·class="inlinecode"><span·class="id"·title="var">q</span></span>·<span·class="inlinecode"><=</span>·<span·class="inlinecode">2^<span·class="id"·title="var">z</span></span></h2> |
98 | </div> | 98 | </div> |
99 | <div·class="code"> | 99 | <div·class="code"> |
100 | <br/> | 100 | <br/> |
101 | <span·class="id"·title="keyword">Definition</span>·<a·id="Qbound_le_ZExp2"·class="idref"·href="#Qbound_le_ZExp2"><span·class="id"·title="definition">Qbound_le_ZExp2</span></a>·(<a·id="q:12"·class="idref"·href="#q:12"><span·class="id"·title="binder">q</span></a>·:·<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>)·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>·:=<br/> | 101 | <span·class="id"·title="keyword">Definition</span>·<a·id="Qbound_le_ZExp2"·class="idref"·href="#Qbound_le_ZExp2"><span·class="id"·title="definition">Qbound_le_ZExp2</span></a>·(<a·id="q:12"·class="idref"·href="#q:12"><span·class="id"·title="binder">q</span></a>·:·<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>)·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>·:=<br/> |
102 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qnum"><span·class="id"·title="projection">Qnum</span></a>·<a·class="idref"·href="Coq.Reals.Cauchy.QExtra.html#q:12"><span·class="id"·title="variable">q</span></a>·<span·class="id"·title="keyword">with</span><br/> | 102 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qnum"><span·class="id"·title="projection">Qnum</span></a>·<a·class="idref"·href="Coq.Reals.Cauchy.QExtra.html#q:12"><span·class="id"·title="variable">q</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 121, 15 lines modified | Offset 121, 15 lines modified | ||
121 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qbound_leabs_ZExp2_spec"·class="idref"·href="#Qbound_leabs_ZExp2_spec"><span·class="id"·title="lemma">Qbound_leabs_ZExp2_spec</span></a>·:·<span·class="id"·title="keyword">forall</span>·(<a·id="q:15"·class="idref"·href="#q:15"><span·class="id"·title="binder">q</span></a>·:·<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>),<br/> | 121 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qbound_leabs_ZExp2_spec"·class="idref"·href="#Qbound_leabs_ZExp2_spec"><span·class="id"·title="lemma">Qbound_leabs_ZExp2_spec</span></a>·:·<span·class="id"·title="keyword">forall</span>·(<a·id="q:15"·class="idref"·href="#q:15"><span·class="id"·title="binder">q</span></a>·:·<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>),<br/> |
122 | (<a·class="idref"·href="Coq.QArith.Qabs.html#Qabs"><span·class="id"·title="definition">Qabs</span></a>·<a·class="idref"·href="Coq.Reals.Cauchy.QExtra.html#q:15"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#bb2ae1e3b1d37b46a15737373eedf343"><span·class="id"·title="notation"><=</span></a>·2<a·class="idref"·href="Coq.QArith.QArith_base.html#29252aa5a762eddf72f5ba706a9f72cb"><span·class="id"·title="notation">^(</span></a><a·class="idref"·href="Coq.Reals.Cauchy.QExtra.html#Qbound_leabs_ZExp2"><span·class="id"·title="definition">Qbound_leabs_ZExp2</span></a>·<a·class="idref"·href="Coq.Reals.Cauchy.QExtra.html#q:15"><span·class="id"·title="variable">q</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#29252aa5a762eddf72f5ba706a9f72cb"><span·class="id"·title="notation">)</span></a>)%<span·class="id"·title="var">Q</span>.<br/> | 122 | (<a·class="idref"·href="Coq.QArith.Qabs.html#Qabs"><span·class="id"·title="definition">Qabs</span></a>·<a·class="idref"·href="Coq.Reals.Cauchy.QExtra.html#q:15"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#bb2ae1e3b1d37b46a15737373eedf343"><span·class="id"·title="notation"><=</span></a>·2<a·class="idref"·href="Coq.QArith.QArith_base.html#29252aa5a762eddf72f5ba706a9f72cb"><span·class="id"·title="notation">^(</span></a><a·class="idref"·href="Coq.Reals.Cauchy.QExtra.html#Qbound_leabs_ZExp2"><span·class="id"·title="definition">Qbound_leabs_ZExp2</span></a>·<a·class="idref"·href="Coq.Reals.Cauchy.QExtra.html#q:15"><span·class="id"·title="variable">q</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#29252aa5a762eddf72f5ba706a9f72cb"><span·class="id"·title="notation">)</span></a>)%<span·class="id"·title="var">Q</span>.<br/> |
123 | <br/> | 123 | <br/> |
124 | </div> | 124 | </div> |
125 | <div·class="doc"> | 125 | <div·class="doc"> |
126 | <a·id="lab | 126 | <a·id="lab897"></a><h2·class="section">Power·of·two·open·upper·bound·<span·class="inlinecode"><span·class="id"·title="var">q</span></span>·<span·class="inlinecode"><</span>·<span·class="inlinecode">2^<span·class="id"·title="var">z</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">Qabs</span></span>·<span·class="inlinecode"><span·class="id"·title="var">q</span></span>·<span·class="inlinecode"><</span>·<span·class="inlinecode">2^<span·class="id"·title="var">z</span></span></h2> |
127 | <div·class="paragraph">·</div> | 127 | <div·class="paragraph">·</div> |
128 | ·Compute·a·z·such·that·q<2^z. | 128 | ·Compute·a·z·such·that·q<2^z. |
129 | ····z·shall·be·close·to·as·small·as·possible,·but·we·need·a·compromise·between | 129 | ····z·shall·be·close·to·as·small·as·possible,·but·we·need·a·compromise·between |
130 | ····the·tighness·of·the·bound·and·the·computation·speed·and·proof·complexity. | 130 | ····the·tighness·of·the·bound·and·the·computation·speed·and·proof·complexity. |
131 | ····Looking·just·at·the·log2·of·the·numerator·and·denominator,·this·is·a·tight·bound | 131 | ····Looking·just·at·the·log2·of·the·numerator·and·denominator,·this·is·a·tight·bound |
Offset 167, 15 lines modified | Offset 167, 15 lines modified | ||
167 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qbound_ltabs_ZExp2_spec"·class="idref"·href="#Qbound_ltabs_ZExp2_spec"><span·class="id"·title="lemma">Qbound_ltabs_ZExp2_spec</span></a>·:·<span·class="id"·title="keyword">forall</span>·(<a·id="q:19"·class="idref"·href="#q:19"><span·class="id"·title="binder">q</span></a>·:·<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>),<br/> | 167 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qbound_ltabs_ZExp2_spec"·class="idref"·href="#Qbound_ltabs_ZExp2_spec"><span·class="id"·title="lemma">Qbound_ltabs_ZExp2_spec</span></a>·:·<span·class="id"·title="keyword">forall</span>·(<a·id="q:19"·class="idref"·href="#q:19"><span·class="id"·title="binder">q</span></a>·:·<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>),<br/> |
168 | (<a·class="idref"·href="Coq.QArith.Qabs.html#Qabs"><span·class="id"·title="definition">Qabs</span></a>·<a·class="idref"·href="Coq.Reals.Cauchy.QExtra.html#q:19"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#::Q_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·2<a·class="idref"·href="Coq.QArith.QArith_base.html#29252aa5a762eddf72f5ba706a9f72cb"><span·class="id"·title="notation">^(</span></a><a·class="idref"·href="Coq.Reals.Cauchy.QExtra.html#Qbound_ltabs_ZExp2"><span·class="id"·title="definition">Qbound_ltabs_ZExp2</span></a>·<a·class="idref"·href="Coq.Reals.Cauchy.QExtra.html#q:19"><span·class="id"·title="variable">q</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#29252aa5a762eddf72f5ba706a9f72cb"><span·class="id"·title="notation">)</span></a>)%<span·class="id"·title="var">Q</span>.<br/> | 168 | (<a·class="idref"·href="Coq.QArith.Qabs.html#Qabs"><span·class="id"·title="definition">Qabs</span></a>·<a·class="idref"·href="Coq.Reals.Cauchy.QExtra.html#q:19"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#::Q_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·2<a·class="idref"·href="Coq.QArith.QArith_base.html#29252aa5a762eddf72f5ba706a9f72cb"><span·class="id"·title="notation">^(</span></a><a·class="idref"·href="Coq.Reals.Cauchy.QExtra.html#Qbound_ltabs_ZExp2"><span·class="id"·title="definition">Qbound_ltabs_ZExp2</span></a>·<a·class="idref"·href="Coq.Reals.Cauchy.QExtra.html#q:19"><span·class="id"·title="variable">q</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#29252aa5a762eddf72f5ba706a9f72cb"><span·class="id"·title="notation">)</span></a>)%<span·class="id"·title="var">Q</span>.<br/> |
169 | <br/> | 169 | <br/> |
170 | </div> | 170 | </div> |
171 | <div·class="doc"> | 171 | <div·class="doc"> |
172 | <a·id="lab | 172 | <a·id="lab898"></a><h2·class="section">Power·of·2·open·lower·bounds·for·<span·class="inlinecode">2^<span·class="id"·title="var">z</span></span>·<span·class="inlinecode"><</span>·<span·class="inlinecode"><span·class="id"·title="var">q</span></span>·and·<span·class="inlinecode">2^<span·class="id"·title="var">z</span></span>·<span·class="inlinecode"><</span>·<span·class="inlinecode"><span·class="id"·title="var">Qabs</span></span>·<span·class="inlinecode"><span·class="id"·title="var">q</span></span></h2> |
173 | <div·class="paragraph">·</div> | 173 | <div·class="paragraph">·</div> |
174 | ·Note:·the·-2·is·required·cause·of·the·Qlt·limit. | 174 | ·Note:·the·-2·is·required·cause·of·the·Qlt·limit. |
175 | ····In·case·q·is·a·power·of·two,·the·lower·and·upper·bound·must·be·a·factor·of·4·apart· | 175 | ····In·case·q·is·a·power·of·two,·the·lower·and·upper·bound·must·be·a·factor·of·4·apart· |
176 | </div> | 176 | </div> |
177 | <div·class="code"> | 177 | <div·class="code"> |
Offset 198, 15 lines modified | Offset 198, 15 lines modified | ||
198 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qlowbound_ltabs_ZExp2_spec"·class="idref"·href="#Qlowbound_ltabs_ZExp2_spec"><span·class="id"·title="lemma">Qlowbound_ltabs_ZExp2_spec</span></a>·:·<span·class="id"·title="keyword">forall</span>·(<a·id="q:25"·class="idref"·href="#q:25"><span·class="id"·title="binder">q</span></a>·:·<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>)·(<a·id="Hqgt0:26"·class="idref"·href="#Hqgt0:26"><span·class="id"·title="binder">Hqgt0</span></a>·:·<a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~</span></a>·<a·class="idref"·href="Coq.Reals.Cauchy.QExtra.html#q:25"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·0),<br/> | 198 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Qlowbound_ltabs_ZExp2_spec"·class="idref"·href="#Qlowbound_ltabs_ZExp2_spec"><span·class="id"·title="lemma">Qlowbound_ltabs_ZExp2_spec</span></a>·:·<span·class="id"·title="keyword">forall</span>·(<a·id="q:25"·class="idref"·href="#q:25"><span·class="id"·title="binder">q</span></a>·:·<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>)·(<a·id="Hqgt0:26"·class="idref"·href="#Hqgt0:26"><span·class="id"·title="binder">Hqgt0</span></a>·:·<a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~</span></a>·<a·class="idref"·href="Coq.Reals.Cauchy.QExtra.html#q:25"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#0eaf04f08ecf51ebfc2703f9e1d22838"><span·class="id"·title="notation">==</span></a>·0),<br/> |
199 | (2<a·class="idref"·href="Coq.QArith.QArith_base.html#29252aa5a762eddf72f5ba706a9f72cb"><span·class="id"·title="notation">^(</span></a><a·class="idref"·href="Coq.Reals.Cauchy.QExtra.html#Qlowbound_ltabs_ZExp2"><span·class="id"·title="definition">Qlowbound_ltabs_ZExp2</span></a>·<a·class="idref"·href="Coq.Reals.Cauchy.QExtra.html#q:25"><span·class="id"·title="variable">q</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#29252aa5a762eddf72f5ba706a9f72cb"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#::Q_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.QArith.Qabs.html#Qabs"><span·class="id"·title="definition">Qabs</span></a>·<a·class="idref"·href="Coq.Reals.Cauchy.QExtra.html#q:25"><span·class="id"·title="variable">q</span></a>)%<span·class="id"·title="var">Q</span>.<br/> | 199 | (2<a·class="idref"·href="Coq.QArith.QArith_base.html#29252aa5a762eddf72f5ba706a9f72cb"><span·class="id"·title="notation">^(</span></a><a·class="idref"·href="Coq.Reals.Cauchy.QExtra.html#Qlowbound_ltabs_ZExp2"><span·class="id"·title="definition">Qlowbound_ltabs_ZExp2</span></a>·<a·class="idref"·href="Coq.Reals.Cauchy.QExtra.html#q:25"><span·class="id"·title="variable">q</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#29252aa5a762eddf72f5ba706a9f72cb"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#::Q_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.QArith.Qabs.html#Qabs"><span·class="id"·title="definition">Qabs</span></a>·<a·class="idref"·href="Coq.Reals.Cauchy.QExtra.html#q:25"><span·class="id"·title="variable">q</span></a>)%<span·class="id"·title="var">Q</span>.<br/> |
200 | <br/> | 200 | <br/> |
201 | </div> | 201 | </div> |
202 | <div·class="doc"> | 202 | <div·class="doc"> |
203 | <a·id="lab | 203 | <a·id="lab899"></a><h2·class="section">Existential·formulations·of·power·of·2·lower·and·upper·bounds</h2> |
204 | </div> | 204 | </div> |
205 | <div·class="code"> | 205 | <div·class="code"> |
206 | <br/> | 206 | <br/> |
207 | <span·class="id"·title="keyword">Definition</span>·<a·id="QarchimedeanExp2_Z"·class="idref"·href="#QarchimedeanExp2_Z"><span·class="id"·title="definition">QarchimedeanExp2_Z</span></a>·(<a·id="q:27"·class="idref"·href="#q:27"><span·class="id"·title="binder">q</span></a>·:·<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>)<br/> | 207 | <span·class="id"·title="keyword">Definition</span>·<a·id="QarchimedeanExp2_Z"·class="idref"·href="#QarchimedeanExp2_Z"><span·class="id"·title="definition">QarchimedeanExp2_Z</span></a>·(<a·id="q:27"·class="idref"·href="#q:27"><span·class="id"·title="binder">q</span></a>·:·<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>)<br/> |
208 | :··<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">{</span></a><a·id="z:28"·class="idref"·href="#z:28"><span·class="id"·title="binder">z</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">:</span></a>·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">|</span></a>·(<a·class="idref"·href="Coq.Reals.Cauchy.QExtra.html#q:27"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#::Q_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·2<a·class="idref"·href="Coq.QArith.QArith_base.html#29252aa5a762eddf72f5ba706a9f72cb"><span·class="id"·title="notation">^</span></a><a·class="idref"·href="Coq.Reals.Cauchy.QExtra.html#z:28"><span·class="id"·title="variable">z</span></a>)%<span·class="id"·title="var">Q</span><a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">}</span></a><br/> | 208 | :··<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">{</span></a><a·id="z:28"·class="idref"·href="#z:28"><span·class="id"·title="binder">z</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">:</span></a>·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">|</span></a>·(<a·class="idref"·href="Coq.Reals.Cauchy.QExtra.html#q:27"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#::Q_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·2<a·class="idref"·href="Coq.QArith.QArith_base.html#29252aa5a762eddf72f5ba706a9f72cb"><span·class="id"·title="notation">^</span></a><a·class="idref"·href="Coq.Reals.Cauchy.QExtra.html#z:28"><span·class="id"·title="variable">z</span></a>)%<span·class="id"·title="var">Q</span><a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">}</span></a><br/> |
Offset 59, 15 lines modified | Offset 59, 15 lines modified | ||
59 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Reals.Cauchy.QExtra.html#"><span·class="id"·title="library">QExtra</span></a>.<br/> | 59 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Reals.Cauchy.QExtra.html#"><span·class="id"·title="library">QExtra</span></a>.<br/> |
60 | <span·class="id"·title="keyword">Require</span>·<a·class="idref"·href="Coq.Classes.CMorphisms.html#"><span·class="id"·title="library">CMorphisms</span></a>.<br/> | 60 | <span·class="id"·title="keyword">Require</span>·<a·class="idref"·href="Coq.Classes.CMorphisms.html#"><span·class="id"·title="library">CMorphisms</span></a>.<br/> |
61 | <br/> | 61 | <br/> |
62 | </div> | 62 | </div> |
63 | <div·class="doc"> | 63 | <div·class="doc"> |
64 | <a·id="lab83"></a><h1·class="section">Q·Auxiliary·Lemmas</h1> | 64 | <a·id="lab883"></a><h1·class="section">Q·Auxiliary·Lemmas</h1> |
65 | </div> | 65 | </div> |
66 | <div·class="code"> | 66 | <div·class="code"> |
67 | <br/> | 67 | <br/> |
68 | <br/> | 68 | <br/> |
Offset 82, 19 lines modified | Offset 82, 19 lines modified | ||
82 | <span·class="id"·title="keyword">Local·Lemma</span>·<a·id="Qpower_2_neg_le_one"·class="idref"·href="#Qpower_2_neg_le_one"><span·class="id"·title="lemma">Qpower_2_neg_le_one</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:3"·class="idref"·href="#n:3"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>,<br/> | 82 | <span·class="id"·title="keyword">Local·Lemma</span>·<a·id="Qpower_2_neg_le_one"·class="idref"·href="#Qpower_2_neg_le_one"><span·class="id"·title="lemma">Qpower_2_neg_le_one</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:3"·class="idref"·href="#n:3"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>,<br/> |
83 | (2·<a·class="idref"·href="Coq.QArith.QArith_base.html#29252aa5a762eddf72f5ba706a9f72cb"><span·class="id"·title="notation">^</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#29252aa5a762eddf72f5ba706a9f72cb"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.of_nat"><span·class="id"·title="definition">Z.of_nat</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#n:3"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#29252aa5a762eddf72f5ba706a9f72cb"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#bb2ae1e3b1d37b46a15737373eedf343"><span·class="id"·title="notation"><=</span></a>·1)%<span·class="id"·title="var">Q</span>.<br/> | 83 | (2·<a·class="idref"·href="Coq.QArith.QArith_base.html#29252aa5a762eddf72f5ba706a9f72cb"><span·class="id"·title="notation">^</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#29252aa5a762eddf72f5ba706a9f72cb"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.of_nat"><span·class="id"·title="definition">Z.of_nat</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#n:3"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.QArith.QArith_base.html#29252aa5a762eddf72f5ba706a9f72cb"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#bb2ae1e3b1d37b46a15737373eedf343"><span·class="id"·title="notation"><=</span></a>·1)%<span·class="id"·title="var">Q</span>.<br/> |
84 | <br/> | 84 | <br/> |
85 | </div> | 85 | </div> |
86 | <div·class="doc"> | 86 | <div·class="doc"> |
87 | <a·id="lab84"></a><h1·class="section">Dedekind·cuts</h1> | 87 | <a·id="lab884"></a><h1·class="section">Dedekind·cuts</h1> |
88 | <div·class="paragraph">·</div> | 88 | <div·class="paragraph">·</div> |
89 | <a·id="lab85"></a><h2·class="section">Definition</h2> | 89 | <a·id="lab885"></a><h2·class="section">Definition</h2> |
90 | <div·class="paragraph">·</div> | 90 | <div·class="paragraph">·</div> |
91 | <div·class="paragraph">·</div> | 91 | <div·class="paragraph">·</div> |
92 | ···Classical·Dedekind·reals.·With·the·3·logical·axioms·funext, | 92 | ···Classical·Dedekind·reals.·With·the·3·logical·axioms·funext, |
Offset 128, 15 lines modified | Offset 128, 15 lines modified | ||
128 | <br/> | 128 | <br/> |
129 | <a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="q:18"·class="idref"·href="#q:18"><span·class="id"·title="binder">q</span></a>:<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>,·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#f:13"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#q:18"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="r:19"·class="idref"·href="#r:19"><span·class="id"·title="binder">r</span></a>:<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>,·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qle"><span·class="id"·title="definition">Qle</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#r:19"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#q:18"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#f:13"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#r:19"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a><a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">)</span></a><a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">)</span></a>.<br/> | 129 | <a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="q:18"·class="idref"·href="#q:18"><span·class="id"·title="binder">q</span></a>:<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>,·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#f:13"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#q:18"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="r:19"·class="idref"·href="#r:19"><span·class="id"·title="binder">r</span></a>:<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>,·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qle"><span·class="id"·title="definition">Qle</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#r:19"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#q:18"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#f:13"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#r:19"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a><a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">)</span></a><a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">)</span></a>.<br/> |
130 | <br/> | 130 | <br/> |
131 | </div> | 131 | </div> |
132 | <div·class="doc"> | 132 | <div·class="doc"> |
133 | <a·id="lab86"></a><h2·class="section">Properties</h2> | 133 | <a·id="lab886"></a><h2·class="section">Properties</h2> |
134 | </div> | 134 | </div> |
135 | <div·class="code"> | 135 | <div·class="code"> |
136 | <br/> | 136 | <br/> |
137 | <span·class="id"·title="keyword">Lemma</span>·<a·id="isLowerCut_hprop"·class="idref"·href="#isLowerCut_hprop"><span·class="id"·title="lemma">isLowerCut_hprop</span></a>·:·<span·class="id"·title="keyword">forall</span>·(<a·id="f:20"·class="idref"·href="#f:20"><span·class="id"·title="binder">f</span></a>·:·<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>),<br/> | 137 | <span·class="id"·title="keyword">Lemma</span>·<a·id="isLowerCut_hprop"·class="idref"·href="#isLowerCut_hprop"><span·class="id"·title="lemma">isLowerCut_hprop</span></a>·:·<span·class="id"·title="keyword">forall</span>·(<a·id="f:20"·class="idref"·href="#f:20"><span·class="id"·title="binder">f</span></a>·:·<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>),<br/> |
138 | <a·class="idref"·href="Coq.Logic.HLevels.html#IsHProp"><span·class="id"·title="definition">IsHProp</span></a>·(<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#isLowerCut"><span·class="id"·title="definition">isLowerCut</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#f:20"><span·class="id"·title="variable">f</span></a>).<br/> | 138 | <a·class="idref"·href="Coq.Logic.HLevels.html#IsHProp"><span·class="id"·title="definition">IsHProp</span></a>·(<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#isLowerCut"><span·class="id"·title="definition">isLowerCut</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#f:20"><span·class="id"·title="variable">f</span></a>).<br/> |
Offset 160, 50 lines modified | Offset 160, 50 lines modified | ||
160 | <a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#f:32"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#r:34"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a><br/> | 160 | <a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#f:32"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#r:34"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a><br/> |
161 | <a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qlt"><span·class="id"·title="definition">Qlt</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#q:33"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#r:34"><span·class="id"·title="variable">r</span></a>.<br/> | 161 | <a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#Qlt"><span·class="id"·title="definition">Qlt</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#q:33"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#r:34"><span·class="id"·title="variable">r</span></a>.<br/> |
162 | <br/> | 162 | <br/> |
163 | </div> | 163 | </div> |
164 | <div·class="doc"> | 164 | <div·class="doc"> |
165 | <a·id="lab87"></a><h1·class="section">Classical·Dedekind·reals</h1> | 165 | <a·id="lab887"></a><h1·class="section">Classical·Dedekind·reals</h1> |
166 | <div·class="paragraph">·</div> | 166 | <div·class="paragraph">·</div> |
167 | <a·id="lab88"></a><h2·class="section">Definition</h2> | 167 | <a·id="lab888"></a><h2·class="section">Definition</h2> |
168 | </div> | 168 | </div> |
169 | <div·class="code"> | 169 | <div·class="code"> |
170 | <br/> | 170 | <br/> |
171 | <span·class="id"·title="keyword">Definition</span>·<a·id="DReal"·class="idref"·href="#DReal"><span·class="id"·title="definition">DReal</span></a>·:·<span·class="id"·title="keyword">Set</span><br/> | 171 | <span·class="id"·title="keyword">Definition</span>·<a·id="DReal"·class="idref"·href="#DReal"><span·class="id"·title="definition">DReal</span></a>·:·<span·class="id"·title="keyword">Set</span><br/> |
172 | :=·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">{</span></a>·<a·id="f:35"·class="idref"·href="#f:35"><span·class="id"·title="binder">f</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">:</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">|</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#isLowerCut"><span·class="id"·title="definition">isLowerCut</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#f:35"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">}</span></a>.<br/> | 172 | :=·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">{</span></a>·<a·id="f:35"·class="idref"·href="#f:35"><span·class="id"·title="binder">f</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">:</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">|</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#isLowerCut"><span·class="id"·title="definition">isLowerCut</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#f:35"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">}</span></a>.<br/> |
173 | <br/> | 173 | <br/> |
174 | </div> | 174 | </div> |
175 | <div·class="doc"> | 175 | <div·class="doc"> |
176 | <a·id="lab89"></a><h2·class="section">Induction·principle</h2> | 176 | <a·id="lab889"></a><h2·class="section">Induction·principle</h2> |
177 | </div> | 177 | </div> |
178 | <div·class="code"> | 178 | <div·class="code"> |
179 | <br/> | 179 | <br/> |
180 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="DRealQlim_rec"·class="idref"·href="#DRealQlim_rec"><span·class="id"·title="definition">DRealQlim_rec</span></a>·(<a·id="f:36"·class="idref"·href="#f:36"><span·class="id"·title="binder">f</span></a>·:·<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>)·(<a·id="low:37"·class="idref"·href="#low:37"><span·class="id"·title="binder">low</span></a>·:·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#isLowerCut"><span·class="id"·title="definition">isLowerCut</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#f:36"><span·class="id"·title="variable">f</span></a>)·(<a·id="n:38"·class="idref"·href="#n:38"><span·class="id"·title="binder">n</span></a>·<a·id="p:39"·class="idref"·href="#p:39"><span·class="id"·title="binder">p</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>)·{·<span·class="id"·title="keyword">struct</span>·<span·class="id"·title="var">p</span>·}<br/> | 180 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="DRealQlim_rec"·class="idref"·href="#DRealQlim_rec"><span·class="id"·title="definition">DRealQlim_rec</span></a>·(<a·id="f:36"·class="idref"·href="#f:36"><span·class="id"·title="binder">f</span></a>·:·<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>)·(<a·id="low:37"·class="idref"·href="#low:37"><span·class="id"·title="binder">low</span></a>·:·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#isLowerCut"><span·class="id"·title="definition">isLowerCut</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#f:36"><span·class="id"·title="variable">f</span></a>)·(<a·id="n:38"·class="idref"·href="#n:38"><span·class="id"·title="binder">n</span></a>·<a·id="p:39"·class="idref"·href="#p:39"><span·class="id"·title="binder">p</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>)·{·<span·class="id"·title="keyword">struct</span>·<span·class="id"·title="var">p</span>·}<br/> |
181 | :·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#f:36"><span·class="id"·title="variable">f</span></a>·(<a·class="idref"·href="Coq.Init.Specif.html#proj1_sig"><span·class="id"·title="definition">proj1_sig</span></a>·(<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#lowerCutBelow"><span·class="id"·title="lemma">lowerCutBelow</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#f:36"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#low:37"><span·class="id"·title="variable">low</span></a>)·<a·class="idref"·href="Coq.QArith.QArith_base.html#4f14570d00eeffbb0b18ccb7e91c8ff8"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#4f14570d00eeffbb0b18ccb7e91c8ff8"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#Z.of_nat"><span·class="id"·title="definition">Z.of_nat</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#p:39"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#90281ef6c291e34a6461b59eb05ad5cc"><span·class="id"·title="notation">#</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.of_nat"><span·class="id"·title="definition">Pos.of_nat</span></a>·(<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#n:38"><span·class="id"·title="variable">n</span></a>)<a·class="idref"·href="Coq.QArith.QArith_base.html#4f14570d00eeffbb0b18ccb7e91c8ff8"><span·class="id"·title="notation">)</span></a>)%<span·class="id"·title="var">Q</span>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a><br/> | 181 | :·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#f:36"><span·class="id"·title="variable">f</span></a>·(<a·class="idref"·href="Coq.Init.Specif.html#proj1_sig"><span·class="id"·title="definition">proj1_sig</span></a>·(<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#lowerCutBelow"><span·class="id"·title="lemma">lowerCutBelow</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#f:36"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#low:37"><span·class="id"·title="variable">low</span></a>)·<a·class="idref"·href="Coq.QArith.QArith_base.html#4f14570d00eeffbb0b18ccb7e91c8ff8"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#4f14570d00eeffbb0b18ccb7e91c8ff8"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#Z.of_nat"><span·class="id"·title="definition">Z.of_nat</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#p:39"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#90281ef6c291e34a6461b59eb05ad5cc"><span·class="id"·title="notation">#</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.of_nat"><span·class="id"·title="definition">Pos.of_nat</span></a>·(<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#n:38"><span·class="id"·title="variable">n</span></a>)<a·class="idref"·href="Coq.QArith.QArith_base.html#4f14570d00eeffbb0b18ccb7e91c8ff8"><span·class="id"·title="notation">)</span></a>)%<span·class="id"·title="var">Q</span>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a><br/> |
182 | <a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">{</span></a>·<a·id="q:40"·class="idref"·href="#q:40"><span·class="id"·title="binder">q</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">:</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">|</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#f:36"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#q:40"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#f:36"><span·class="id"·title="variable">f</span></a>·(<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#q:40"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#4f14570d00eeffbb0b18ccb7e91c8ff8"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#4f14570d00eeffbb0b18ccb7e91c8ff8"><span·class="id"·title="notation">(</span></a>1·<a·class="idref"·href="Coq.QArith.QArith_base.html#90281ef6c291e34a6461b59eb05ad5cc"><span·class="id"·title="notation">#</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.of_nat"><span·class="id"·title="definition">Pos.of_nat</span></a>·(<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#n:38"><span·class="id"·title="variable">n</span></a>)<a·class="idref"·href="Coq.QArith.QArith_base.html#4f14570d00eeffbb0b18ccb7e91c8ff8"><span·class="id"·title="notation">)</span></a>)%<span·class="id"·title="var">Q</span>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">}</span></a>.<br/> | 182 | <a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">{</span></a>·<a·id="q:40"·class="idref"·href="#q:40"><span·class="id"·title="binder">q</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">:</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">|</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#f:36"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#q:40"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#f:36"><span·class="id"·title="variable">f</span></a>·(<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#q:40"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#4f14570d00eeffbb0b18ccb7e91c8ff8"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#4f14570d00eeffbb0b18ccb7e91c8ff8"><span·class="id"·title="notation">(</span></a>1·<a·class="idref"·href="Coq.QArith.QArith_base.html#90281ef6c291e34a6461b59eb05ad5cc"><span·class="id"·title="notation">#</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.of_nat"><span·class="id"·title="definition">Pos.of_nat</span></a>·(<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#n:38"><span·class="id"·title="variable">n</span></a>)<a·class="idref"·href="Coq.QArith.QArith_base.html#4f14570d00eeffbb0b18ccb7e91c8ff8"><span·class="id"·title="notation">)</span></a>)%<span·class="id"·title="var">Q</span>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">}</span></a>.<br/> |
183 | <br/> | 183 | <br/> |
184 | </div> | 184 | </div> |
185 | <div·class="doc"> | 185 | <div·class="doc"> |
186 | <a·id="lab90"></a><h2·class="section">Conversion·to·and·from·constructive·Cauchy·real·CReal</h2> | 186 | <a·id="lab890"></a><h2·class="section">Conversion·to·and·from·constructive·Cauchy·real·CReal</h2> |
187 | <div·class="paragraph">·</div> | 187 | <div·class="paragraph">·</div> |
188 | <a·id="lab91"></a><h3·class="section">Conversion·from·CReal·to·DReal</h3> | 188 | <a·id="lab891"></a><h3·class="section">Conversion·from·CReal·to·DReal</h3> |
189 | </div> | 189 | </div> |
190 | <div·class="code"> | 190 | <div·class="code"> |
191 | <br/> | 191 | <br/> |
192 | <span·class="id"·title="keyword">Lemma</span>·<a·id="DRealAbstr_aux"·class="idref"·href="#DRealAbstr_aux"><span·class="id"·title="lemma">DRealAbstr_aux</span></a>·:<br/> | 192 | <span·class="id"·title="keyword">Lemma</span>·<a·id="DRealAbstr_aux"·class="idref"·href="#DRealAbstr_aux"><span·class="id"·title="lemma">DRealAbstr_aux</span></a>·:<br/> |
193 | <span·class="id"·title="keyword">forall</span>·<a·id="x:42"·class="idref"·href="#x:42"><span·class="id"·title="binder">x</span></a>·<a·id="H:43"·class="idref"·href="#H:43"><span·class="id"·title="binder">H</span></a>,<br/> | 193 | <span·class="id"·title="keyword">forall</span>·<a·id="x:42"·class="idref"·href="#x:42"><span·class="id"·title="binder">x</span></a>·<a·id="H:43"·class="idref"·href="#H:43"><span·class="id"·title="binder">H</span></a>,<br/> |
Offset 214, 15 lines modified | Offset 214, 15 lines modified | ||
214 | <br/> | 214 | <br/> |
215 | <span·class="id"·title="keyword">Definition</span>·<a·id="DRealAbstr"·class="idref"·href="#DRealAbstr"><span·class="id"·title="definition">DRealAbstr</span></a>·:·<a·class="idref"·href="Coq.Reals.Cauchy.ConstructiveCauchyReals.html#CReal"><span·class="id"·title="record">CReal</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#DReal"><span·class="id"·title="definition">DReal</span></a>.<br/> | 215 | <span·class="id"·title="keyword">Definition</span>·<a·id="DRealAbstr"·class="idref"·href="#DRealAbstr"><span·class="id"·title="definition">DRealAbstr</span></a>·:·<a·class="idref"·href="Coq.Reals.Cauchy.ConstructiveCauchyReals.html#CReal"><span·class="id"·title="record">CReal</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#DReal"><span·class="id"·title="definition">DReal</span></a>.<br/> |
216 | <br/> | 216 | <br/> |
217 | </div> | 217 | </div> |
218 | <div·class="doc"> | 218 | <div·class="doc"> |
219 | <a·id="lab92"></a><h3·class="section">Conversion·from·DReal·to·CReal</h3> | 219 | <a·id="lab892"></a><h3·class="section">Conversion·from·DReal·to·CReal</h3> |
220 | </div> | 220 | </div> |
221 | <div·class="code"> | 221 | <div·class="code"> |
222 | <br/> | 222 | <br/> |
223 | <span·class="id"·title="keyword">Definition</span>·<a·id="DRealQlim"·class="idref"·href="#DRealQlim"><span·class="id"·title="definition">DRealQlim</span></a>·(<a·id="x:70"·class="idref"·href="#x:70"><span·class="id"·title="binder">x</span></a>·:·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#DReal"><span·class="id"·title="definition">DReal</span></a>)·(<a·id="n:71"·class="idref"·href="#n:71"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>)<br/> | 223 | <span·class="id"·title="keyword">Definition</span>·<a·id="DRealQlim"·class="idref"·href="#DRealQlim"><span·class="id"·title="definition">DRealQlim</span></a>·(<a·id="x:70"·class="idref"·href="#x:70"><span·class="id"·title="binder">x</span></a>·:·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#DReal"><span·class="id"·title="definition">DReal</span></a>)·(<a·id="n:71"·class="idref"·href="#n:71"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>)<br/> |
224 | :·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">{</span></a>·<a·id="q:72"·class="idref"·href="#q:72"><span·class="id"·title="binder">q</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">:</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">|</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#proj1_sig"><span·class="id"·title="definition">proj1_sig</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#x:70"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#q:72"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#proj1_sig"><span·class="id"·title="definition">proj1_sig</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#x:70"><span·class="id"·title="variable">x</span></a>·(<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#q:72"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#4f14570d00eeffbb0b18ccb7e91c8ff8"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#4f14570d00eeffbb0b18ccb7e91c8ff8"><span·class="id"·title="notation">(</span></a>1<a·class="idref"·href="Coq.QArith.QArith_base.html#90281ef6c291e34a6461b59eb05ad5cc"><span·class="id"·title="notation">#</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.of_nat"><span·class="id"·title="definition">Pos.of_nat</span></a>·(<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#n:71"><span·class="id"·title="variable">n</span></a>)<a·class="idref"·href="Coq.QArith.QArith_base.html#4f14570d00eeffbb0b18ccb7e91c8ff8"><span·class="id"·title="notation">)</span></a>)%<span·class="id"·title="var">Q</span>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">}</span></a>.<br/> | 224 | :·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">{</span></a>·<a·id="q:72"·class="idref"·href="#q:72"><span·class="id"·title="binder">q</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">:</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">|</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#proj1_sig"><span·class="id"·title="definition">proj1_sig</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#x:70"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#q:72"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#proj1_sig"><span·class="id"·title="definition">proj1_sig</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#x:70"><span·class="id"·title="variable">x</span></a>·(<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#q:72"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#4f14570d00eeffbb0b18ccb7e91c8ff8"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.QArith.QArith_base.html#4f14570d00eeffbb0b18ccb7e91c8ff8"><span·class="id"·title="notation">(</span></a>1<a·class="idref"·href="Coq.QArith.QArith_base.html#90281ef6c291e34a6461b59eb05ad5cc"><span·class="id"·title="notation">#</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.of_nat"><span·class="id"·title="definition">Pos.of_nat</span></a>·(<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#n:71"><span·class="id"·title="variable">n</span></a>)<a·class="idref"·href="Coq.QArith.QArith_base.html#4f14570d00eeffbb0b18ccb7e91c8ff8"><span·class="id"·title="notation">)</span></a>)%<span·class="id"·title="var">Q</span>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">}</span></a>.<br/> |
Offset 265, 15 lines modified | Offset 265, 15 lines modified | ||
265 | <a·class="idref"·href="Coq.Reals.Cauchy.ConstructiveCauchyReals.html#bound"><span·class="id"·title="projection">bound</span></a>·:=·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#CReal_of_DReal_bound"><span·class="id"·title="lemma">CReal_of_DReal_bound</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#x:90"><span·class="id"·title="variable">x</span></a><br/> | 265 | <a·class="idref"·href="Coq.Reals.Cauchy.ConstructiveCauchyReals.html#bound"><span·class="id"·title="projection">bound</span></a>·:=·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#CReal_of_DReal_bound"><span·class="id"·title="lemma">CReal_of_DReal_bound</span></a>·<a·class="idref"·href="Coq.Reals.ClassicalDedekindReals.html#x:90"><span·class="id"·title="variable">x</span></a><br/> |
266 | |}.<br/> | 266 | |}.<br/> |
267 | <br/> | 267 | <br/> |
268 | </div> | 268 | </div> |
269 | <div·class="doc"> | 269 | <div·class="doc"> |
270 | <a·id="lab93"></a><h2·class="section">Order·for·DReal</h2> | 270 | <a·id="lab893"></a><h2·class="section">Order·for·DReal</h2> |
Max diff block lines reached; 1992/23106 bytes (8.62%) of diff not shown. |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab833"></a><h1·class="section">Basic·lemmas·for·the·classical·real·numbers</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·This·file·provides·several·hundred·basic·lemmas·about·foundamental | 51 | ·This·file·provides·several·hundred·basic·lemmas·about·foundamental |
52 | ····operations·on·R: | 52 | ····operations·on·R: |
53 | <ul·class="doclist"> | 53 | <ul·class="doclist"> |
54 | <li>·addition·denoted·by·<span·class="inlinecode"><span·class="id"·title="var">Rplus</span></span>·(notation:·infix·<span·class="inlinecode">+</span>), | 54 | <li>·addition·denoted·by·<span·class="inlinecode"><span·class="id"·title="var">Rplus</span></span>·(notation:·infix·<span·class="inlinecode">+</span>), |
Offset 133, 15 lines modified | Offset 133, 15 lines modified | ||
133 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">Z_scope</span>.<br/> | 133 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">Z_scope</span>.<br/> |
134 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">R_scope</span>.<br/> | 134 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">R_scope</span>.<br/> |
135 | <br/> | 135 | <br/> |
136 | </div> | 136 | </div> |
137 | <div·class="doc"> | 137 | <div·class="doc"> |
138 | <a·id="lab | 138 | <a·id="lab834"></a><h2·class="section">Relation·between·orders·and·equality</h2> |
139 | <div·class="paragraph">·</div> | 139 | <div·class="paragraph">·</div> |
140 | ·Reflexivity·of·the·large·orders· | 140 | ·Reflexivity·of·the·large·orders· |
141 | </div> | 141 | </div> |
142 | <div·class="code"> | 142 | <div·class="code"> |
Offset 223, 31 lines modified | Offset 223, 31 lines modified | ||
223 | <br/> | 223 | <br/> |
224 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Rdichotomy"·class="idref"·href="#Rdichotomy"><span·class="id"·title="lemma">Rdichotomy</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="r1:19"·class="idref"·href="#r1:19"><span·class="id"·title="binder">r1</span></a>·<a·id="r2:20"·class="idref"·href="#r2:20"><span·class="id"·title="binder">r2</span></a>,·<a·class="idref"·href="Coq.Reals.RIneq.html#r1:19"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:20"><span·class="id"·title="variable">r2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r1:19"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:20"><span·class="id"·title="variable">r2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r1:19"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:20"><span·class="id"·title="variable">r2</span></a>.<br/> | 224 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Rdichotomy"·class="idref"·href="#Rdichotomy"><span·class="id"·title="lemma">Rdichotomy</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="r1:19"·class="idref"·href="#r1:19"><span·class="id"·title="binder">r1</span></a>·<a·id="r2:20"·class="idref"·href="#r2:20"><span·class="id"·title="binder">r2</span></a>,·<a·class="idref"·href="Coq.Reals.RIneq.html#r1:19"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:20"><span·class="id"·title="variable">r2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r1:19"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:20"><span·class="id"·title="variable">r2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r1:19"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:20"><span·class="id"·title="variable">r2</span></a>.<br/> |
225 | <br/> | 225 | <br/> |
226 | </div> | 226 | </div> |
227 | <div·class="doc"> | 227 | <div·class="doc"> |
228 | <a·id="lab | 228 | <a·id="lab835"></a><h2·class="section">Strong·decidable·equality</h2> |
229 | </div> | 229 | </div> |
230 | <div·class="code"> | 230 | <div·class="code"> |
231 | <br/> | 231 | <br/> |
232 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Req_dec_T"·class="idref"·href="#Req_dec_T"><span·class="id"·title="lemma">Req_dec_T</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="r1:21"·class="idref"·href="#r1:21"><span·class="id"·title="binder">r1</span></a>·<a·id="r2:22"·class="idref"·href="#r2:22"><span·class="id"·title="binder">r2</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.Reals.RIneq.html#r1:21"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:22"><span·class="id"·title="variable">r2</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.Reals.RIneq.html#r1:21"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:22"><span·class="id"·title="variable">r2</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>.<br/> | 232 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Req_dec_T"·class="idref"·href="#Req_dec_T"><span·class="id"·title="lemma">Req_dec_T</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="r1:21"·class="idref"·href="#r1:21"><span·class="id"·title="binder">r1</span></a>·<a·id="r2:22"·class="idref"·href="#r2:22"><span·class="id"·title="binder">r2</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.Reals.RIneq.html#r1:21"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:22"><span·class="id"·title="variable">r2</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.Reals.RIneq.html#r1:21"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:22"><span·class="id"·title="variable">r2</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>.<br/> |
233 | <br/> | 233 | <br/> |
234 | </div> | 234 | </div> |
235 | <div·class="doc"> | 235 | <div·class="doc"> |
236 | <a·id="lab | 236 | <a·id="lab836"></a><h2·class="section">Relating·<span·class="inlinecode"><</span>,·<span·class="inlinecode">></span>,·<span·class="inlinecode"><=</span>·and·<span·class="inlinecode">>=</span></h2> |
237 | <div·class="paragraph">·</div> | 237 | <div·class="paragraph">·</div> |
238 | <a·id="lab | 238 | <a·id="lab837"></a><h3·class="section">Relating·strict·and·large·orders</h3> |
239 | </div> | 239 | </div> |
240 | <div·class="code"> | 240 | <div·class="code"> |
241 | <br/> | 241 | <br/> |
242 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Rlt_le"·class="idref"·href="#Rlt_le"><span·class="id"·title="lemma">Rlt_le</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="r1:23"·class="idref"·href="#r1:23"><span·class="id"·title="binder">r1</span></a>·<a·id="r2:24"·class="idref"·href="#r2:24"><span·class="id"·title="binder">r2</span></a>,·<a·class="idref"·href="Coq.Reals.RIneq.html#r1:23"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:24"><span·class="id"·title="variable">r2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r1:23"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:24"><span·class="id"·title="variable">r2</span></a>.<br/> | 242 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Rlt_le"·class="idref"·href="#Rlt_le"><span·class="id"·title="lemma">Rlt_le</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="r1:23"·class="idref"·href="#r1:23"><span·class="id"·title="binder">r1</span></a>·<a·id="r2:24"·class="idref"·href="#r2:24"><span·class="id"·title="binder">r2</span></a>,·<a·class="idref"·href="Coq.Reals.RIneq.html#r1:23"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:24"><span·class="id"·title="variable">r2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r1:23"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:24"><span·class="id"·title="variable">r2</span></a>.<br/> |
243 | ·#[<span·class="id"·title="var">global</span>]<br/> | 243 | ·#[<span·class="id"·title="var">global</span>]<br/> |
Offset 344, 15 lines modified | Offset 344, 15 lines modified | ||
344 | ·#[<span·class="id"·title="var">global</span>]<br/> | 344 | ·#[<span·class="id"·title="var">global</span>]<br/> |
345 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Immediate</span>·<span·class="id"·title="var">Req_ge_sym</span>:·<span·class="id"·title="var">real</span>.<br/> | 345 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Immediate</span>·<span·class="id"·title="var">Req_ge_sym</span>:·<span·class="id"·title="var">real</span>.<br/> |
346 | <br/> | 346 | <br/> |
347 | </div> | 347 | </div> |
348 | <div·class="doc"> | 348 | <div·class="doc"> |
349 | <a·id="lab | 349 | <a·id="lab838"></a><h3·class="section">Asymmetry</h3> |
350 | <div·class="paragraph">·</div> | 350 | <div·class="paragraph">·</div> |
351 | ·Remark:·<span·class="inlinecode"><span·class="id"·title="var">Rlt_asym</span></span>·is·in·<span·class="inlinecode"><span·class="id"·title="var">Raxioms.v</span></span>· | 351 | ·Remark:·<span·class="inlinecode"><span·class="id"·title="var">Rlt_asym</span></span>·is·in·<span·class="inlinecode"><span·class="id"·title="var">Raxioms.v</span></span>· |
352 | </div> | 352 | </div> |
353 | <div·class="code"> | 353 | <div·class="code"> |
Offset 365, 15 lines modified | Offset 365, 15 lines modified | ||
365 | <br/> | 365 | <br/> |
366 | #[<span·class="id"·title="var">export</span>]·<span·class="id"·title="keyword">Instance</span>·<a·id="Rgt_Asymmetric"·class="idref"·href="#Rgt_Asymmetric"><span·class="id"·title="instance">Rgt_Asymmetric</span></a>·:·<a·class="idref"·href="Coq.Classes.RelationClasses.html#Asymmetric"><span·class="id"·title="class">Asymmetric</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#Rgt"><span·class="id"·title="definition">Rgt</span></a>·|·10·:=·<a·class="idref"·href="Coq.Reals.RIneq.html#Rgt_asym"><span·class="id"·title="lemma">Rgt_asym</span></a>.<br/> | 366 | #[<span·class="id"·title="var">export</span>]·<span·class="id"·title="keyword">Instance</span>·<a·id="Rgt_Asymmetric"·class="idref"·href="#Rgt_Asymmetric"><span·class="id"·title="instance">Rgt_Asymmetric</span></a>·:·<a·class="idref"·href="Coq.Classes.RelationClasses.html#Asymmetric"><span·class="id"·title="class">Asymmetric</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#Rgt"><span·class="id"·title="definition">Rgt</span></a>·|·10·:=·<a·class="idref"·href="Coq.Reals.RIneq.html#Rgt_asym"><span·class="id"·title="lemma">Rgt_asym</span></a>.<br/> |
367 | <br/> | 367 | <br/> |
368 | </div> | 368 | </div> |
369 | <div·class="doc"> | 369 | <div·class="doc"> |
370 | <a·id="lab | 370 | <a·id="lab839"></a><h3·class="section">Antisymmetry</h3> |
371 | </div> | 371 | </div> |
372 | <div·class="code"> | 372 | <div·class="code"> |
373 | <br/> | 373 | <br/> |
374 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Rle_antisym"·class="idref"·href="#Rle_antisym"><span·class="id"·title="lemma">Rle_antisym</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="r1:73"·class="idref"·href="#r1:73"><span·class="id"·title="binder">r1</span></a>·<a·id="r2:74"·class="idref"·href="#r2:74"><span·class="id"·title="binder">r2</span></a>,·<a·class="idref"·href="Coq.Reals.RIneq.html#r1:73"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:74"><span·class="id"·title="variable">r2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:74"><span·class="id"·title="variable">r2</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r1:73"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r1:73"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:74"><span·class="id"·title="variable">r2</span></a>.<br/> | 374 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Rle_antisym"·class="idref"·href="#Rle_antisym"><span·class="id"·title="lemma">Rle_antisym</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="r1:73"·class="idref"·href="#r1:73"><span·class="id"·title="binder">r1</span></a>·<a·id="r2:74"·class="idref"·href="#r2:74"><span·class="id"·title="binder">r2</span></a>,·<a·class="idref"·href="Coq.Reals.RIneq.html#r1:73"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:74"><span·class="id"·title="variable">r2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:74"><span·class="id"·title="variable">r2</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r1:73"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r1:73"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:74"><span·class="id"·title="variable">r2</span></a>.<br/> |
375 | #[<span·class="id"·title="var">global</span>]<br/> | 375 | #[<span·class="id"·title="var">global</span>]<br/> |
Offset 394, 15 lines modified | Offset 394, 15 lines modified | ||
394 | <br/> | 394 | <br/> |
395 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Rge_ge_eq"·class="idref"·href="#Rge_ge_eq"><span·class="id"·title="lemma">Rge_ge_eq</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="r1:79"·class="idref"·href="#r1:79"><span·class="id"·title="binder">r1</span></a>·<a·id="r2:80"·class="idref"·href="#r2:80"><span·class="id"·title="binder">r2</span></a>,·<a·class="idref"·href="Coq.Reals.RIneq.html#r1:79"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#7822f196a19e8673dbc60a529f728eb7"><span·class="id"·title="notation">>=</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:80"><span·class="id"·title="variable">r2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:80"><span·class="id"·title="variable">r2</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#7822f196a19e8673dbc60a529f728eb7"><span·class="id"·title="notation">>=</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r1:79"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r1:79"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:80"><span·class="id"·title="variable">r2</span></a>.<br/> | 395 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Rge_ge_eq"·class="idref"·href="#Rge_ge_eq"><span·class="id"·title="lemma">Rge_ge_eq</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="r1:79"·class="idref"·href="#r1:79"><span·class="id"·title="binder">r1</span></a>·<a·id="r2:80"·class="idref"·href="#r2:80"><span·class="id"·title="binder">r2</span></a>,·<a·class="idref"·href="Coq.Reals.RIneq.html#r1:79"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#7822f196a19e8673dbc60a529f728eb7"><span·class="id"·title="notation">>=</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:80"><span·class="id"·title="variable">r2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:80"><span·class="id"·title="variable">r2</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#7822f196a19e8673dbc60a529f728eb7"><span·class="id"·title="notation">>=</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r1:79"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r1:79"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:80"><span·class="id"·title="variable">r2</span></a>.<br/> |
396 | <br/> | 396 | <br/> |
397 | </div> | 397 | </div> |
398 | <div·class="doc"> | 398 | <div·class="doc"> |
399 | <a·id="lab | 399 | <a·id="lab840"></a><h3·class="section">Compatibility·with·equality</h3> |
400 | </div> | 400 | </div> |
401 | <div·class="code"> | 401 | <div·class="code"> |
402 | <br/> | 402 | <br/> |
403 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Rlt_eq_compat"·class="idref"·href="#Rlt_eq_compat"><span·class="id"·title="lemma">Rlt_eq_compat</span></a>·:<br/> | 403 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Rlt_eq_compat"·class="idref"·href="#Rlt_eq_compat"><span·class="id"·title="lemma">Rlt_eq_compat</span></a>·:<br/> |
404 | <span·class="id"·title="keyword">forall</span>·<a·id="r1:81"·class="idref"·href="#r1:81"><span·class="id"·title="binder">r1</span></a>·<a·id="r2:82"·class="idref"·href="#r2:82"><span·class="id"·title="binder">r2</span></a>·<a·id="r3:83"·class="idref"·href="#r3:83"><span·class="id"·title="binder">r3</span></a>·<a·id="r4:84"·class="idref"·href="#r4:84"><span·class="id"·title="binder">r4</span></a>,·<a·class="idref"·href="Coq.Reals.RIneq.html#r1:81"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:82"><span·class="id"·title="variable">r2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:82"><span·class="id"·title="variable">r2</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r4:84"><span·class="id"·title="variable">r4</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r4:84"><span·class="id"·title="variable">r4</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r3:83"><span·class="id"·title="variable">r3</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r1:81"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r3:83"><span·class="id"·title="variable">r3</span></a>.<br/> | 404 | <span·class="id"·title="keyword">forall</span>·<a·id="r1:81"·class="idref"·href="#r1:81"><span·class="id"·title="binder">r1</span></a>·<a·id="r2:82"·class="idref"·href="#r2:82"><span·class="id"·title="binder">r2</span></a>·<a·id="r3:83"·class="idref"·href="#r3:83"><span·class="id"·title="binder">r3</span></a>·<a·id="r4:84"·class="idref"·href="#r4:84"><span·class="id"·title="binder">r4</span></a>,·<a·class="idref"·href="Coq.Reals.RIneq.html#r1:81"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:82"><span·class="id"·title="variable">r2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:82"><span·class="id"·title="variable">r2</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r4:84"><span·class="id"·title="variable">r4</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r4:84"><span·class="id"·title="variable">r4</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r3:83"><span·class="id"·title="variable">r3</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r1:81"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r3:83"><span·class="id"·title="variable">r3</span></a>.<br/> |
Offset 411, 15 lines modified | Offset 411, 15 lines modified | ||
411 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Rgt_eq_compat"·class="idref"·href="#Rgt_eq_compat"><span·class="id"·title="lemma">Rgt_eq_compat</span></a>·:<br/> | 411 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Rgt_eq_compat"·class="idref"·href="#Rgt_eq_compat"><span·class="id"·title="lemma">Rgt_eq_compat</span></a>·:<br/> |
412 | <span·class="id"·title="keyword">forall</span>·<a·id="r1:85"·class="idref"·href="#r1:85"><span·class="id"·title="binder">r1</span></a>·<a·id="r2:86"·class="idref"·href="#r2:86"><span·class="id"·title="binder">r2</span></a>·<a·id="r3:87"·class="idref"·href="#r3:87"><span·class="id"·title="binder">r3</span></a>·<a·id="r4:88"·class="idref"·href="#r4:88"><span·class="id"·title="binder">r4</span></a>,·<a·class="idref"·href="Coq.Reals.RIneq.html#r1:85"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:86"><span·class="id"·title="variable">r2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:86"><span·class="id"·title="variable">r2</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r4:88"><span·class="id"·title="variable">r4</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r4:88"><span·class="id"·title="variable">r4</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r3:87"><span·class="id"·title="variable">r3</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r1:85"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r3:87"><span·class="id"·title="variable">r3</span></a>.<br/> | 412 | <span·class="id"·title="keyword">forall</span>·<a·id="r1:85"·class="idref"·href="#r1:85"><span·class="id"·title="binder">r1</span></a>·<a·id="r2:86"·class="idref"·href="#r2:86"><span·class="id"·title="binder">r2</span></a>·<a·id="r3:87"·class="idref"·href="#r3:87"><span·class="id"·title="binder">r3</span></a>·<a·id="r4:88"·class="idref"·href="#r4:88"><span·class="id"·title="binder">r4</span></a>,·<a·class="idref"·href="Coq.Reals.RIneq.html#r1:85"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:86"><span·class="id"·title="variable">r2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r2:86"><span·class="id"·title="variable">r2</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r4:88"><span·class="id"·title="variable">r4</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r4:88"><span·class="id"·title="variable">r4</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r3:87"><span·class="id"·title="variable">r3</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r1:85"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#r3:87"><span·class="id"·title="variable">r3</span></a>.<br/> |
413 | · | 413 | · |
414 | <br/> | 414 | <br/> |
415 | </div> | 415 | </div> |
416 | <div·class="doc"> | 416 | <div·class="doc"> |
417 | <a·id="lab | 417 | <a·id="lab841"></a><h3·class="section">Transitivity</h3> |
418 | <div·class="paragraph">·</div> | 418 | <div·class="paragraph">·</div> |
419 | ·Remark:·<span·class="inlinecode"><span·class="id"·title="var">Rlt_trans</span></span>·is·in·Raxioms· | 419 | ·Remark:·<span·class="inlinecode"><span·class="id"·title="var">Rlt_trans</span></span>·is·in·Raxioms· |
420 | </div> | 420 | </div> |
421 | <div·class="code"> | 421 | <div·class="code"> |
422 | #[<span·class="id"·title="var">export</span>]·<span·class="id"·title="keyword">Instance</span>·<a·id="Rlt_Transitive"·class="idref"·href="#Rlt_Transitive"><span·class="id"·title="instance">Rlt_Transitive</span></a>·:·<a·class="idref"·href="Coq.Classes.RelationClasses.html#Transitive"><span·class="id"·title="class">Transitive</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.Rlt"><span·class="id"·title="axiom">Rlt</span></a>·|·10·:=·<a·class="idref"·href="Coq.Reals.Raxioms.html#Rlt_trans"><span·class="id"·title="lemma">Rlt_trans</span></a>.<br/> | 422 | #[<span·class="id"·title="var">export</span>]·<span·class="id"·title="keyword">Instance</span>·<a·id="Rlt_Transitive"·class="idref"·href="#Rlt_Transitive"><span·class="id"·title="instance">Rlt_Transitive</span></a>·:·<a·class="idref"·href="Coq.Classes.RelationClasses.html#Transitive"><span·class="id"·title="class">Transitive</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.Rlt"><span·class="id"·title="axiom">Rlt</span></a>·|·10·:=·<a·class="idref"·href="Coq.Reals.Raxioms.html#Rlt_trans"><span·class="id"·title="lemma">Rlt_trans</span></a>.<br/> |
Max diff block lines reached; 103623/120696 bytes (85.85%) of diff not shown. |
Offset 51, 15 lines modified | Offset 51, 15 lines modified | ||
51 | <br/> | 51 | <br/> |
52 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">R_scope</span>.<br/> | 52 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">R_scope</span>.<br/> |
53 | <br/> | 53 | <br/> |
54 | </div> | 54 | </div> |
55 | <div·class="doc"> | 55 | <div·class="doc"> |
56 | <a·id="lab | 56 | <a·id="lab827"></a><h1·class="section">DecidableType·structure·for·real·numbers</h1> |
57 | </div> | 57 | </div> |
58 | <div·class="code"> | 58 | <div·class="code"> |
59 | <br/> | 59 | <br/> |
60 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Req_dec"·class="idref"·href="#Req_dec"><span·class="id"·title="lemma">Req_dec</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="r1:1"·class="idref"·href="#r1:1"><span·class="id"·title="binder">r1</span></a>·<a·id="r2:2"·class="idref"·href="#r2:2"><span·class="id"·title="binder">r2</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.Reals.ROrderedType.html#r1:1"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.ROrderedType.html#r2:2"><span·class="id"·title="variable">r2</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.Reals.ROrderedType.html#r1:1"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.Reals.ROrderedType.html#r2:2"><span·class="id"·title="variable">r2</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>.<br/> | 60 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Req_dec"·class="idref"·href="#Req_dec"><span·class="id"·title="lemma">Req_dec</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="r1:1"·class="idref"·href="#r1:1"><span·class="id"·title="binder">r1</span></a>·<a·id="r2:2"·class="idref"·href="#r2:2"><span·class="id"·title="binder">r2</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.Reals.ROrderedType.html#r1:1"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.ROrderedType.html#r2:2"><span·class="id"·title="variable">r2</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.Reals.ROrderedType.html#r1:1"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.Reals.ROrderedType.html#r2:2"><span·class="id"·title="variable">r2</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>.<br/> |
Offset 86, 15 lines modified | Offset 86, 15 lines modified | ||
86 | ····interfaces,·such·as·<span·class="inlinecode"><span·class="id"·title="var">DecidableType</span></span>·or·<span·class="inlinecode"><span·class="id"·title="var">EqualityType</span></span>.· | 86 | ····interfaces,·such·as·<span·class="inlinecode"><span·class="id"·title="var">DecidableType</span></span>·or·<span·class="inlinecode"><span·class="id"·title="var">EqualityType</span></span>.· |
87 | <div·class="paragraph">·</div> | 87 | <div·class="paragraph">·</div> |
88 | ·Note·that·<span·class="inlinecode"><span·class="id"·title="var">R_as_DT</span></span>·can·also·be·seen·as·a·<span·class="inlinecode"><span·class="id"·title="var">DecidableType</span></span> | 88 | ·Note·that·<span·class="inlinecode"><span·class="id"·title="var">R_as_DT</span></span>·can·also·be·seen·as·a·<span·class="inlinecode"><span·class="id"·title="var">DecidableType</span></span> |
89 | ····and·a·<span·class="inlinecode"><span·class="id"·title="var">DecidableTypeOrig</span></span>.· | 89 | ····and·a·<span·class="inlinecode"><span·class="id"·title="var">DecidableTypeOrig</span></span>.· |
90 | <div·class="paragraph">·</div> | 90 | <div·class="paragraph">·</div> |
91 | <a·id="lab | 91 | <a·id="lab828"></a><h1·class="section">OrderedType·structure·for·binary·integers</h1> |
92 | </div> | 92 | </div> |
93 | <div·class="code"> | 93 | <div·class="code"> |
94 | <br/> | 94 | <br/> |
95 | <span·class="id"·title="keyword">Definition</span>·<a·id="Rcompare"·class="idref"·href="#Rcompare"><span·class="id"·title="definition">Rcompare</span></a>·<a·id="x:7"·class="idref"·href="#x:7"><span·class="id"·title="binder">x</span></a>·<a·id="y:8"·class="idref"·href="#y:8"><span·class="id"·title="binder">y</span></a>·:=<br/> | 95 | <span·class="id"·title="keyword">Definition</span>·<a·id="Rcompare"·class="idref"·href="#Rcompare"><span·class="id"·title="definition">Rcompare</span></a>·<a·id="x:7"·class="idref"·href="#x:7"><span·class="id"·title="binder">x</span></a>·<a·id="y:8"·class="idref"·href="#y:8"><span·class="id"·title="binder">y</span></a>·:=<br/> |
96 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#total_order_T"><span·class="id"·title="lemma">total_order_T</span></a>·<a·class="idref"·href="Coq.Reals.ROrderedType.html#x:7"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.ROrderedType.html#y:8"><span·class="id"·title="variable">y</span></a>·<span·class="id"·title="keyword">with</span><br/> | 96 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#total_order_T"><span·class="id"·title="lemma">total_order_T</span></a>·<a·class="idref"·href="Coq.Reals.ROrderedType.html#x:7"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.ROrderedType.html#y:8"><span·class="id"·title="variable">y</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 134, 15 lines modified | Offset 134, 15 lines modified | ||
134 | </div> | 134 | </div> |
135 | <div·class="doc"> | 135 | <div·class="doc"> |
136 | Note·that·<span·class="inlinecode"><span·class="id"·title="var">R_as_OT</span></span>·can·also·be·seen·as·a·<span·class="inlinecode"><span·class="id"·title="var">UsualOrderedType</span></span> | 136 | Note·that·<span·class="inlinecode"><span·class="id"·title="var">R_as_OT</span></span>·can·also·be·seen·as·a·<span·class="inlinecode"><span·class="id"·title="var">UsualOrderedType</span></span> |
137 | ···and·a·<span·class="inlinecode"><span·class="id"·title="var">OrderedType</span></span>·(and·also·as·a·<span·class="inlinecode"><span·class="id"·title="var">DecidableType</span></span>).· | 137 | ···and·a·<span·class="inlinecode"><span·class="id"·title="var">OrderedType</span></span>·(and·also·as·a·<span·class="inlinecode"><span·class="id"·title="var">DecidableType</span></span>).· |
138 | <div·class="paragraph">·</div> | 138 | <div·class="paragraph">·</div> |
139 | <a·id="lab | 139 | <a·id="lab829"></a><h1·class="section">An·<span·class="inlinecode"><span·class="id"·title="var">order</span></span>·tactic·for·real·numbers</h1> |
140 | </div> | 140 | </div> |
141 | <div·class="code"> | 141 | <div·class="code"> |
142 | <br/> | 142 | <br/> |
143 | <span·class="id"·title="keyword">Module</span>·<a·id="ROrder"·class="idref"·href="#ROrder"><span·class="id"·title="module">ROrder</span></a>·:=·<a·class="idref"·href="Coq.Structures.OrdersTac.html#OTF_to_OrderTac"><span·class="id"·title="module">OTF_to_OrderTac</span></a>·<a·class="idref"·href="Coq.Reals.ROrderedType.html#R_as_OT"><span·class="id"·title="module">R_as_OT</span></a>.<br/> | 143 | <span·class="id"·title="keyword">Module</span>·<a·id="ROrder"·class="idref"·href="#ROrder"><span·class="id"·title="module">ROrder</span></a>·:=·<a·class="idref"·href="Coq.Structures.OrdersTac.html#OTF_to_OrderTac"><span·class="id"·title="module">OTF_to_OrderTac</span></a>·<a·class="idref"·href="Coq.Reals.ROrderedType.html#R_as_OT"><span·class="id"·title="module">R_as_OT</span></a>.<br/> |
144 | <span·class="id"·title="keyword">Ltac</span>·<span·class="id"·title="var">r_order</span>·:=·<span·class="id"·title="var">ROrder.order</span>.<br/> | 144 | <span·class="id"·title="keyword">Ltac</span>·<span·class="id"·title="var">r_order</span>·:=·<span·class="id"·title="var">ROrder.order</span>.<br/> |
Offset 58, 15 lines modified | Offset 58, 15 lines modified | ||
58 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.ZArith.ZArith.html#"><span·class="id"·title="library">ZArith</span></a>·<a·class="idref"·href="Coq.micromega.Ztac.html#"><span·class="id"·title="library">Ztac</span></a>.<br/> | 58 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.ZArith.ZArith.html#"><span·class="id"·title="library">ZArith</span></a>·<a·class="idref"·href="Coq.micromega.Ztac.html#"><span·class="id"·title="library">Ztac</span></a>.<br/> |
59 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">R_scope</span>.<br/> | 59 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">R_scope</span>.<br/> |
60 | <br/> | 60 | <br/> |
61 | </div> | 61 | </div> |
62 | <div·class="doc"> | 62 | <div·class="doc"> |
63 | <a·id="lab | 63 | <a·id="lab808"></a><h1·class="section">Fractional·part</h1> |
64 | <div·class="paragraph">·</div> | 64 | <div·class="paragraph">·</div> |
65 | </div> | 65 | </div> |
66 | <div·class="code"> | 66 | <div·class="code"> |
67 | <span·class="id"·title="keyword">Definition</span>·<a·id="Int_part"·class="idref"·href="#Int_part"><span·class="id"·title="definition">Int_part</span></a>·(<a·id="r:1"·class="idref"·href="#r:1"><span·class="id"·title="binder">r</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>·:=·(<a·class="idref"·href="Coq.Reals.Rdefinitions.html#up"><span·class="id"·title="definition">up</span></a>·<a·class="idref"·href="Coq.Reals.R_Ifp.html#r:1"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·1)%<span·class="id"·title="var">Z</span>.<br/> | 67 | <span·class="id"·title="keyword">Definition</span>·<a·id="Int_part"·class="idref"·href="#Int_part"><span·class="id"·title="definition">Int_part</span></a>·(<a·id="r:1"·class="idref"·href="#r:1"><span·class="id"·title="binder">r</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>·:=·(<a·class="idref"·href="Coq.Reals.Rdefinitions.html#up"><span·class="id"·title="definition">up</span></a>·<a·class="idref"·href="Coq.Reals.R_Ifp.html#r:1"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·1)%<span·class="id"·title="var">Z</span>.<br/> |
Offset 93, 15 lines modified | Offset 93, 15 lines modified | ||
93 | <br/> | 93 | <br/> |
94 | <span·class="id"·title="keyword">Lemma</span>·<a·id="base_fp"·class="idref"·href="#base_fp"><span·class="id"·title="lemma">base_fp</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="r:10"·class="idref"·href="#r:10"><span·class="id"·title="binder">r</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.R_Ifp.html#frac_part"><span·class="id"·title="definition">frac_part</span></a>·<a·class="idref"·href="Coq.Reals.R_Ifp.html#r:10"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#7822f196a19e8673dbc60a529f728eb7"><span·class="id"·title="notation">>=</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.Reals.R_Ifp.html#frac_part"><span·class="id"·title="definition">frac_part</span></a>·<a·class="idref"·href="Coq.Reals.R_Ifp.html#r:10"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·1.<br/> | 94 | <span·class="id"·title="keyword">Lemma</span>·<a·id="base_fp"·class="idref"·href="#base_fp"><span·class="id"·title="lemma">base_fp</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="r:10"·class="idref"·href="#r:10"><span·class="id"·title="binder">r</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.R_Ifp.html#frac_part"><span·class="id"·title="definition">frac_part</span></a>·<a·class="idref"·href="Coq.Reals.R_Ifp.html#r:10"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#7822f196a19e8673dbc60a529f728eb7"><span·class="id"·title="notation">>=</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.Reals.R_Ifp.html#frac_part"><span·class="id"·title="definition">frac_part</span></a>·<a·class="idref"·href="Coq.Reals.R_Ifp.html#r:10"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·1.<br/> |
95 | <br/> | 95 | <br/> |
96 | </div> | 96 | </div> |
97 | <div·class="doc"> | 97 | <div·class="doc"> |
98 | <a·id="lab | 98 | <a·id="lab809"></a><h1·class="section">Properties</h1> |
99 | <div·class="paragraph">·</div> | 99 | <div·class="paragraph">·</div> |
100 | </div> | 100 | </div> |
101 | <div·class="code"> | 101 | <div·class="code"> |
102 | <span·class="id"·title="keyword">Lemma</span>·<a·id="base_Int_part"·class="idref"·href="#base_Int_part"><span·class="id"·title="lemma">base_Int_part</span></a>·:<br/> | 102 | <span·class="id"·title="keyword">Lemma</span>·<a·id="base_Int_part"·class="idref"·href="#base_Int_part"><span·class="id"·title="lemma">base_Int_part</span></a>·:<br/> |
Offset 51, 15 lines modified | Offset 51, 15 lines modified | ||
51 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Reals.Rsqrt_def.html#"><span·class="id"·title="library">Rsqrt_def</span></a>.<br/> | 51 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Reals.Rsqrt_def.html#"><span·class="id"·title="library">Rsqrt_def</span></a>.<br/> |
52 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">R_scope</span>.<br/> | 52 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">R_scope</span>.<br/> |
53 | <br/> | 53 | <br/> |
54 | </div> | 54 | </div> |
55 | <div·class="doc"> | 55 | <div·class="doc"> |
56 | <a·id="lab | 56 | <a·id="lab781"></a><h1·class="section">Continuous·extension·of·Rsqrt·on·R</h1> |
57 | </div> | 57 | </div> |
58 | <div·class="code"> | 58 | <div·class="code"> |
59 | <span·class="id"·title="keyword">Definition</span>·<a·id="sqrt"·class="idref"·href="#sqrt"><span·class="id"·title="definition">sqrt</span></a>·(<a·id="x:1"·class="idref"·href="#x:1"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=<br/> | 59 | <span·class="id"·title="keyword">Definition</span>·<a·id="sqrt"·class="idref"·href="#sqrt"><span·class="id"·title="definition">sqrt</span></a>·(<a·id="x:1"·class="idref"·href="#x:1"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=<br/> |
60 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#Rcase_abs"><span·class="id"·title="lemma">Rcase_abs</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#x:1"><span·class="id"·title="variable">x</span></a>·<span·class="id"·title="keyword">with</span><br/> | 60 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#Rcase_abs"><span·class="id"·title="lemma">Rcase_abs</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#x:1"><span·class="id"·title="variable">x</span></a>·<span·class="id"·title="keyword">with</span><br/> |
61 | |·<a·class="idref"·href="Coq.Init.Specif.html#left"><span·class="id"·title="constructor">left</span></a>·<span·class="id"·title="var">_</span>·=>·0<br/> | 61 | |·<a·class="idref"·href="Coq.Init.Specif.html#left"><span·class="id"·title="constructor">left</span></a>·<span·class="id"·title="var">_</span>·=>·0<br/> |
62 | |·<a·class="idref"·href="Coq.Init.Specif.html#right"><span·class="id"·title="constructor">right</span></a>·<span·class="id"·title="var">a</span>·=>·<a·class="idref"·href="Coq.Reals.Rsqrt_def.html#Rsqrt"><span·class="id"·title="definition">Rsqrt</span></a>·(<a·class="idref"·href="Coq.Reals.RIneq.html#mknonnegreal"><span·class="id"·title="constructor">mknonnegreal</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#x:1"><span·class="id"·title="variable">x</span></a>·(<a·class="idref"·href="Coq.Reals.RIneq.html#Rge_le"><span·class="id"·title="lemma">Rge_le</span></a>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">a</span>))<br/> | 62 | |·<a·class="idref"·href="Coq.Init.Specif.html#right"><span·class="id"·title="constructor">right</span></a>·<span·class="id"·title="var">a</span>·=>·<a·class="idref"·href="Coq.Reals.Rsqrt_def.html#Rsqrt"><span·class="id"·title="definition">Rsqrt</span></a>·(<a·class="idref"·href="Coq.Reals.RIneq.html#mknonnegreal"><span·class="id"·title="constructor">mknonnegreal</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#x:1"><span·class="id"·title="variable">x</span></a>·(<a·class="idref"·href="Coq.Reals.RIneq.html#Rge_le"><span·class="id"·title="lemma">Rge_le</span></a>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">_</span>·<span·class="id"·title="var">a</span>))<br/> |
Offset 192, 15 lines modified | Offset 192, 15 lines modified | ||
192 | <span·class="id"·title="keyword">forall</span>·<a·id="a:52"·class="idref"·href="#a:52"><span·class="id"·title="binder">a</span></a>·<a·id="b:53"·class="idref"·href="#b:53"><span·class="id"·title="binder">b</span></a>·<a·id="c:54"·class="idref"·href="#c:54"><span·class="id"·title="binder">c</span></a>·<a·id="d:55"·class="idref"·href="#d:55"><span·class="id"·title="binder">d</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,<br/> | 192 | <span·class="id"·title="keyword">forall</span>·<a·id="a:52"·class="idref"·href="#a:52"><span·class="id"·title="binder">a</span></a>·<a·id="b:53"·class="idref"·href="#b:53"><span·class="id"·title="binder">b</span></a>·<a·id="c:54"·class="idref"·href="#c:54"><span·class="id"·title="binder">c</span></a>·<a·id="d:55"·class="idref"·href="#d:55"><span·class="id"·title="binder">d</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,<br/> |
193 | <a·class="idref"·href="Coq.Reals.R_sqrt.html#a:52"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#c:54"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#b:53"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#d:55"><span·class="id"·title="variable">d</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#sqrt"><span·class="id"·title="definition">sqrt</span></a>·(<a·class="idref"·href="Coq.Reals.RIneq.html#Rsqr"><span·class="id"·title="definition">Rsqr</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#a:52"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#Rsqr"><span·class="id"·title="definition">Rsqr</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#b:53"><span·class="id"·title="variable">b</span></a>)·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#sqrt"><span·class="id"·title="definition">sqrt</span></a>·(<a·class="idref"·href="Coq.Reals.RIneq.html#Rsqr"><span·class="id"·title="definition">Rsqr</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#c:54"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#Rsqr"><span·class="id"·title="definition">Rsqr</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#d:55"><span·class="id"·title="variable">d</span></a>).<br/> | 193 | <a·class="idref"·href="Coq.Reals.R_sqrt.html#a:52"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#c:54"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#b:53"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#d:55"><span·class="id"·title="variable">d</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#sqrt"><span·class="id"·title="definition">sqrt</span></a>·(<a·class="idref"·href="Coq.Reals.RIneq.html#Rsqr"><span·class="id"·title="definition">Rsqr</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#a:52"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#Rsqr"><span·class="id"·title="definition">Rsqr</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#b:53"><span·class="id"·title="variable">b</span></a>)·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#sqrt"><span·class="id"·title="definition">sqrt</span></a>·(<a·class="idref"·href="Coq.Reals.RIneq.html#Rsqr"><span·class="id"·title="definition">Rsqr</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#c:54"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#Rsqr"><span·class="id"·title="definition">Rsqr</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#d:55"><span·class="id"·title="variable">d</span></a>).<br/> |
194 | <br/> | 194 | <br/> |
195 | </div> | 195 | </div> |
196 | <div·class="doc"> | 196 | <div·class="doc"> |
197 | <a·id="lab | 197 | <a·id="lab782"></a><h1·class="section">Resolution·of·<span·class="inlinecode"><span·class="id"·title="var">a</span>*<span·class="id"·title="var">X</span>^2+<span·class="id"·title="var">b</span>*<span·class="id"·title="var">X</span>+<span·class="id"·title="var">c</span>=0</span></h1> |
198 | </div> | 198 | </div> |
199 | <div·class="code"> | 199 | <div·class="code"> |
200 | <br/> | 200 | <br/> |
201 | <span·class="id"·title="keyword">Definition</span>·<a·id="Delta"·class="idref"·href="#Delta"><span·class="id"·title="definition">Delta</span></a>·(<a·id="a:56"·class="idref"·href="#a:56"><span·class="id"·title="binder">a</span></a>:<a·class="idref"·href="Coq.Reals.RIneq.html#nonzeroreal"><span·class="id"·title="record">nonzeroreal</span></a>)·(<a·id="b:57"·class="idref"·href="#b:57"><span·class="id"·title="binder">b</span></a>·<a·id="c:58"·class="idref"·href="#c:58"><span·class="id"·title="binder">c</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.RIneq.html#Rsqr"><span·class="id"·title="definition">Rsqr</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#b:57"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·4·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#a:56"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#c:58"><span·class="id"·title="variable">c</span></a>.<br/> | 201 | <span·class="id"·title="keyword">Definition</span>·<a·id="Delta"·class="idref"·href="#Delta"><span·class="id"·title="definition">Delta</span></a>·(<a·id="a:56"·class="idref"·href="#a:56"><span·class="id"·title="binder">a</span></a>:<a·class="idref"·href="Coq.Reals.RIneq.html#nonzeroreal"><span·class="id"·title="record">nonzeroreal</span></a>)·(<a·id="b:57"·class="idref"·href="#b:57"><span·class="id"·title="binder">b</span></a>·<a·id="c:58"·class="idref"·href="#c:58"><span·class="id"·title="binder">c</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.RIneq.html#Rsqr"><span·class="id"·title="definition">Rsqr</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#b:57"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·4·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#a:56"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#c:58"><span·class="id"·title="variable">c</span></a>.<br/> |
Offset 53, 15 lines modified | Offset 53, 15 lines modified | ||
53 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">R_scope</span>.<br/> | 53 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">R_scope</span>.<br/> |
54 | <span·class="id"·title="keyword">Implicit</span>·<span·class="id"·title="keyword">Type</span>·<span·class="id"·title="var">f</span>·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>.<br/> | 54 | <span·class="id"·title="keyword">Implicit</span>·<span·class="id"·title="keyword">Type</span>·<span·class="id"·title="var">f</span>·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>.<br/> |
55 | <br/> | 55 | <br/> |
56 | </div> | 56 | </div> |
57 | <div·class="doc"> | 57 | <div·class="doc"> |
58 | <a·id="lab | 58 | <a·id="lab786"></a><h1·class="section">Basic·operations·on·functions</h1> |
59 | </div> | 59 | </div> |
60 | <div·class="code"> | 60 | <div·class="code"> |
61 | <span·class="id"·title="keyword">Definition</span>·<a·id="plus_fct"·class="idref"·href="#plus_fct"><span·class="id"·title="definition">plus_fct</span></a>·<a·id="f1:1"·class="idref"·href="#f1:1"><span·class="id"·title="binder">f1</span></a>·<a·id="f2:2"·class="idref"·href="#f2:2"><span·class="id"·title="binder">f2</span></a>·(<a·id="x:3"·class="idref"·href="#x:3"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f1:1"><span·class="id"·title="variable">f1</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:3"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f2:2"><span·class="id"·title="variable">f2</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:3"><span·class="id"·title="variable">x</span></a>.<br/> | 61 | <span·class="id"·title="keyword">Definition</span>·<a·id="plus_fct"·class="idref"·href="#plus_fct"><span·class="id"·title="definition">plus_fct</span></a>·<a·id="f1:1"·class="idref"·href="#f1:1"><span·class="id"·title="binder">f1</span></a>·<a·id="f2:2"·class="idref"·href="#f2:2"><span·class="id"·title="binder">f2</span></a>·(<a·id="x:3"·class="idref"·href="#x:3"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f1:1"><span·class="id"·title="variable">f1</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:3"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f2:2"><span·class="id"·title="variable">f2</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:3"><span·class="id"·title="variable">x</span></a>.<br/> |
62 | <span·class="id"·title="keyword">Definition</span>·<a·id="opp_fct"·class="idref"·href="#opp_fct"><span·class="id"·title="definition">opp_fct</span></a>·<a·id="f:4"·class="idref"·href="#f:4"><span·class="id"·title="binder">f</span></a>·(<a·id="x:5"·class="idref"·href="#x:5"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:4"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:5"><span·class="id"·title="variable">x</span></a>.<br/> | 62 | <span·class="id"·title="keyword">Definition</span>·<a·id="opp_fct"·class="idref"·href="#opp_fct"><span·class="id"·title="definition">opp_fct</span></a>·<a·id="f:4"·class="idref"·href="#f:4"><span·class="id"·title="binder">f</span></a>·(<a·id="x:5"·class="idref"·href="#x:5"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:4"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:5"><span·class="id"·title="variable">x</span></a>.<br/> |
63 | <span·class="id"·title="keyword">Definition</span>·<a·id="mult_fct"·class="idref"·href="#mult_fct"><span·class="id"·title="definition">mult_fct</span></a>·<a·id="f1:6"·class="idref"·href="#f1:6"><span·class="id"·title="binder">f1</span></a>·<a·id="f2:7"·class="idref"·href="#f2:7"><span·class="id"·title="binder">f2</span></a>·(<a·id="x:8"·class="idref"·href="#x:8"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f1:6"><span·class="id"·title="variable">f1</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:8"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f2:7"><span·class="id"·title="variable">f2</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:8"><span·class="id"·title="variable">x</span></a>.<br/> | 63 | <span·class="id"·title="keyword">Definition</span>·<a·id="mult_fct"·class="idref"·href="#mult_fct"><span·class="id"·title="definition">mult_fct</span></a>·<a·id="f1:6"·class="idref"·href="#f1:6"><span·class="id"·title="binder">f1</span></a>·<a·id="f2:7"·class="idref"·href="#f2:7"><span·class="id"·title="binder">f2</span></a>·(<a·id="x:8"·class="idref"·href="#x:8"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f1:6"><span·class="id"·title="variable">f1</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:8"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f2:7"><span·class="id"·title="variable">f2</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:8"><span·class="id"·title="variable">x</span></a>.<br/> |
64 | <span·class="id"·title="keyword">Definition</span>·<a·id="mult_real_fct"·class="idref"·href="#mult_real_fct"><span·class="id"·title="definition">mult_real_fct</span></a>·(<a·id="a:9"·class="idref"·href="#a:9"><span·class="id"·title="binder">a</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·<a·id="f:10"·class="idref"·href="#f:10"><span·class="id"·title="binder">f</span></a>·(<a·id="x:11"·class="idref"·href="#x:11"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#a:9"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:10"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:11"><span·class="id"·title="variable">x</span></a>.<br/> | 64 | <span·class="id"·title="keyword">Definition</span>·<a·id="mult_real_fct"·class="idref"·href="#mult_real_fct"><span·class="id"·title="definition">mult_real_fct</span></a>·(<a·id="a:9"·class="idref"·href="#a:9"><span·class="id"·title="binder">a</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·<a·id="f:10"·class="idref"·href="#f:10"><span·class="id"·title="binder">f</span></a>·(<a·id="x:11"·class="idref"·href="#x:11"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#a:9"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:10"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:11"><span·class="id"·title="variable">x</span></a>.<br/> |
Offset 102, 15 lines modified | Offset 102, 15 lines modified | ||
102 | <span·class="id"·title="keyword">Definition</span>·<a·id="fct_cte"·class="idref"·href="#fct_cte"><span·class="id"·title="definition">fct_cte</span></a>·(<a·id="a:28"·class="idref"·href="#a:28"><span·class="id"·title="binder">a</span></a>·<a·id="x:29"·class="idref"·href="#x:29"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#a:28"><span·class="id"·title="variable">a</span></a>.<br/> | 102 | <span·class="id"·title="keyword">Definition</span>·<a·id="fct_cte"·class="idref"·href="#fct_cte"><span·class="id"·title="definition">fct_cte</span></a>·(<a·id="a:28"·class="idref"·href="#a:28"><span·class="id"·title="binder">a</span></a>·<a·id="x:29"·class="idref"·href="#x:29"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#a:28"><span·class="id"·title="variable">a</span></a>.<br/> |
103 | <span·class="id"·title="keyword">Definition</span>·<a·id="id"·class="idref"·href="#id"><span·class="id"·title="definition">id</span></a>·(<a·id="x:30"·class="idref"·href="#x:30"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:=·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:30"><span·class="id"·title="variable">x</span></a>.<br/> | 103 | <span·class="id"·title="keyword">Definition</span>·<a·id="id"·class="idref"·href="#id"><span·class="id"·title="definition">id</span></a>·(<a·id="x:30"·class="idref"·href="#x:30"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:=·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:30"><span·class="id"·title="variable">x</span></a>.<br/> |
104 | <br/> | 104 | <br/> |
105 | </div> | 105 | </div> |
106 | <div·class="doc"> | 106 | <div·class="doc"> |
107 | <a·id="lab | 107 | <a·id="lab787"></a><h1·class="section">Variations·of·functions</h1> |
108 | </div> | 108 | </div> |
109 | <div·class="code"> | 109 | <div·class="code"> |
110 | <span·class="id"·title="keyword">Definition</span>·<a·id="increasing"·class="idref"·href="#increasing"><span·class="id"·title="definition">increasing</span></a>·<a·id="f:31"·class="idref"·href="#f:31"><span·class="id"·title="binder">f</span></a>·:·<span·class="id"·title="keyword">Prop</span>·:=·<span·class="id"·title="keyword">forall</span>·<a·id="x:32"·class="idref"·href="#x:32"><span·class="id"·title="binder">x</span></a>·<a·id="y:33"·class="idref"·href="#y:33"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:32"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#y:33"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:31"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:32"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:31"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#y:33"><span·class="id"·title="variable">y</span></a>.<br/> | 110 | <span·class="id"·title="keyword">Definition</span>·<a·id="increasing"·class="idref"·href="#increasing"><span·class="id"·title="definition">increasing</span></a>·<a·id="f:31"·class="idref"·href="#f:31"><span·class="id"·title="binder">f</span></a>·:·<span·class="id"·title="keyword">Prop</span>·:=·<span·class="id"·title="keyword">forall</span>·<a·id="x:32"·class="idref"·href="#x:32"><span·class="id"·title="binder">x</span></a>·<a·id="y:33"·class="idref"·href="#y:33"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:32"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#y:33"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:31"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:32"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:31"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#y:33"><span·class="id"·title="variable">y</span></a>.<br/> |
111 | <span·class="id"·title="keyword">Definition</span>·<a·id="decreasing"·class="idref"·href="#decreasing"><span·class="id"·title="definition">decreasing</span></a>·<a·id="f:34"·class="idref"·href="#f:34"><span·class="id"·title="binder">f</span></a>·:·<span·class="id"·title="keyword">Prop</span>·:=·<span·class="id"·title="keyword">forall</span>·<a·id="x:35"·class="idref"·href="#x:35"><span·class="id"·title="binder">x</span></a>·<a·id="y:36"·class="idref"·href="#y:36"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:35"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#y:36"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:34"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#y:36"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:34"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:35"><span·class="id"·title="variable">x</span></a>.<br/> | 111 | <span·class="id"·title="keyword">Definition</span>·<a·id="decreasing"·class="idref"·href="#decreasing"><span·class="id"·title="definition">decreasing</span></a>·<a·id="f:34"·class="idref"·href="#f:34"><span·class="id"·title="binder">f</span></a>·:·<span·class="id"·title="keyword">Prop</span>·:=·<span·class="id"·title="keyword">forall</span>·<a·id="x:35"·class="idref"·href="#x:35"><span·class="id"·title="binder">x</span></a>·<a·id="y:36"·class="idref"·href="#y:36"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:35"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#y:36"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:34"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#y:36"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:34"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:35"><span·class="id"·title="variable">x</span></a>.<br/> |
112 | <span·class="id"·title="keyword">Definition</span>·<a·id="strict_increasing"·class="idref"·href="#strict_increasing"><span·class="id"·title="definition">strict_increasing</span></a>·<a·id="f:37"·class="idref"·href="#f:37"><span·class="id"·title="binder">f</span></a>·:·<span·class="id"·title="keyword">Prop</span>·:=·<span·class="id"·title="keyword">forall</span>·<a·id="x:38"·class="idref"·href="#x:38"><span·class="id"·title="binder">x</span></a>·<a·id="y:39"·class="idref"·href="#y:39"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:38"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#y:39"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:37"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:38"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:37"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#y:39"><span·class="id"·title="variable">y</span></a>.<br/> | 112 | <span·class="id"·title="keyword">Definition</span>·<a·id="strict_increasing"·class="idref"·href="#strict_increasing"><span·class="id"·title="definition">strict_increasing</span></a>·<a·id="f:37"·class="idref"·href="#f:37"><span·class="id"·title="binder">f</span></a>·:·<span·class="id"·title="keyword">Prop</span>·:=·<span·class="id"·title="keyword">forall</span>·<a·id="x:38"·class="idref"·href="#x:38"><span·class="id"·title="binder">x</span></a>·<a·id="y:39"·class="idref"·href="#y:39"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:38"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#y:39"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:37"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:38"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:37"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#y:39"><span·class="id"·title="variable">y</span></a>.<br/> |
113 | <span·class="id"·title="keyword">Definition</span>·<a·id="strict_decreasing"·class="idref"·href="#strict_decreasing"><span·class="id"·title="definition">strict_decreasing</span></a>·<a·id="f:40"·class="idref"·href="#f:40"><span·class="id"·title="binder">f</span></a>·:·<span·class="id"·title="keyword">Prop</span>·:=·<span·class="id"·title="keyword">forall</span>·<a·id="x:41"·class="idref"·href="#x:41"><span·class="id"·title="binder">x</span></a>·<a·id="y:42"·class="idref"·href="#y:42"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:41"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#y:42"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:40"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#y:42"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:40"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:41"><span·class="id"·title="variable">x</span></a>.<br/> | 113 | <span·class="id"·title="keyword">Definition</span>·<a·id="strict_decreasing"·class="idref"·href="#strict_decreasing"><span·class="id"·title="definition">strict_decreasing</span></a>·<a·id="f:40"·class="idref"·href="#f:40"><span·class="id"·title="binder">f</span></a>·:·<span·class="id"·title="keyword">Prop</span>·:=·<span·class="id"·title="keyword">forall</span>·<a·id="x:41"·class="idref"·href="#x:41"><span·class="id"·title="binder">x</span></a>·<a·id="y:42"·class="idref"·href="#y:42"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:41"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#y:42"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:40"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#y:42"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:40"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:41"><span·class="id"·title="variable">x</span></a>.<br/> |
Offset 123, 15 lines modified | Offset 123, 15 lines modified | ||
123 | <span·class="id"·title="keyword">Definition</span>·<a·id="constant_D_eq"·class="idref"·href="#constant_D_eq"><span·class="id"·title="definition">constant_D_eq</span></a>·<a·id="f:47"·class="idref"·href="#f:47"><span·class="id"·title="binder">f</span></a>·(<a·id="D:48"·class="idref"·href="#D:48"><span·class="id"·title="binder">D</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>)·(<a·id="c:49"·class="idref"·href="#c:49"><span·class="id"·title="binder">c</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<span·class="id"·title="keyword">Prop</span>·:=<br/> | 123 | <span·class="id"·title="keyword">Definition</span>·<a·id="constant_D_eq"·class="idref"·href="#constant_D_eq"><span·class="id"·title="definition">constant_D_eq</span></a>·<a·id="f:47"·class="idref"·href="#f:47"><span·class="id"·title="binder">f</span></a>·(<a·id="D:48"·class="idref"·href="#D:48"><span·class="id"·title="binder">D</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>)·(<a·id="c:49"·class="idref"·href="#c:49"><span·class="id"·title="binder">c</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<span·class="id"·title="keyword">Prop</span>·:=<br/> |
124 | <span·class="id"·title="keyword">forall</span>·<a·id="x:50"·class="idref"·href="#x:50"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#D:48"><span·class="id"·title="variable">D</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:50"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:47"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:50"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#c:49"><span·class="id"·title="variable">c</span></a>.<br/> | 124 | <span·class="id"·title="keyword">forall</span>·<a·id="x:50"·class="idref"·href="#x:50"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#D:48"><span·class="id"·title="variable">D</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:50"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:47"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:50"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#c:49"><span·class="id"·title="variable">c</span></a>.<br/> |
125 | <br/> | 125 | <br/> |
126 | </div> | 126 | </div> |
127 | <div·class="doc"> | 127 | <div·class="doc"> |
128 | <a·id="lab | 128 | <a·id="lab788"></a><h1·class="section">Definition·of·continuity·as·a·limit</h1> |
129 | <div·class="paragraph">·</div> | 129 | <div·class="paragraph">·</div> |
130 | </div> | 130 | </div> |
131 | <div·class="code"> | 131 | <div·class="code"> |
132 | <span·class="id"·title="keyword">Definition</span>·<a·id="continuity_pt"·class="idref"·href="#continuity_pt"><span·class="id"·title="definition">continuity_pt</span></a>·<a·id="f:51"·class="idref"·href="#f:51"><span·class="id"·title="binder">f</span></a>·(<a·id="x0:52"·class="idref"·href="#x0:52"><span·class="id"·title="binder">x0</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<span·class="id"·title="keyword">Prop</span>·:=·<a·class="idref"·href="Coq.Reals.Rderiv.html#continue_in"><span·class="id"·title="definition">continue_in</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:51"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#no_cond"><span·class="id"·title="definition">no_cond</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x0:52"><span·class="id"·title="variable">x0</span></a>.<br/> | 132 | <span·class="id"·title="keyword">Definition</span>·<a·id="continuity_pt"·class="idref"·href="#continuity_pt"><span·class="id"·title="definition">continuity_pt</span></a>·<a·id="f:51"·class="idref"·href="#f:51"><span·class="id"·title="binder">f</span></a>·(<a·id="x0:52"·class="idref"·href="#x0:52"><span·class="id"·title="binder">x0</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<span·class="id"·title="keyword">Prop</span>·:=·<a·class="idref"·href="Coq.Reals.Rderiv.html#continue_in"><span·class="id"·title="definition">continue_in</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:51"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#no_cond"><span·class="id"·title="definition">no_cond</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x0:52"><span·class="id"·title="variable">x0</span></a>.<br/> |
Offset 227, 15 lines modified | Offset 227, 15 lines modified | ||
227 | <span·class="id"·title="keyword">Lemma</span>·<a·id="continuity_comp"·class="idref"·href="#continuity_comp"><span·class="id"·title="lemma">continuity_comp</span></a>·:<br/> | 227 | <span·class="id"·title="keyword">Lemma</span>·<a·id="continuity_comp"·class="idref"·href="#continuity_comp"><span·class="id"·title="lemma">continuity_comp</span></a>·:<br/> |
228 | <span·class="id"·title="keyword">forall</span>·<a·id="f1:109"·class="idref"·href="#f1:109"><span·class="id"·title="binder">f1</span></a>·<a·id="f2:110"·class="idref"·href="#f2:110"><span·class="id"·title="binder">f2</span></a>,·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#continuity"><span·class="id"·title="definition">continuity</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f1:109"><span·class="id"·title="variable">f1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#continuity"><span·class="id"·title="definition">continuity</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f2:110"><span·class="id"·title="variable">f2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#continuity"><span·class="id"·title="definition">continuity</span></a>·(<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f2:110"><span·class="id"·title="variable">f2</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#::Rfun_scope:x_'o'_x"><span·class="id"·title="notation">o</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f1:109"><span·class="id"·title="variable">f1</span></a>).<br/> | 228 | <span·class="id"·title="keyword">forall</span>·<a·id="f1:109"·class="idref"·href="#f1:109"><span·class="id"·title="binder">f1</span></a>·<a·id="f2:110"·class="idref"·href="#f2:110"><span·class="id"·title="binder">f2</span></a>,·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#continuity"><span·class="id"·title="definition">continuity</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f1:109"><span·class="id"·title="variable">f1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#continuity"><span·class="id"·title="definition">continuity</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f2:110"><span·class="id"·title="variable">f2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#continuity"><span·class="id"·title="definition">continuity</span></a>·(<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f2:110"><span·class="id"·title="variable">f2</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#::Rfun_scope:x_'o'_x"><span·class="id"·title="notation">o</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f1:109"><span·class="id"·title="variable">f1</span></a>).<br/> |
229 | <br/> | 229 | <br/> |
230 | </div> | 230 | </div> |
231 | <div·class="doc"> | 231 | <div·class="doc"> |
232 | <a·id="lab | 232 | <a·id="lab789"></a><h1·class="section">Derivative's·definition·using·Landau's·kernel</h1> |
233 | </div> | 233 | </div> |
234 | <div·class="code"> | 234 | <div·class="code"> |
235 | <br/> | 235 | <br/> |
236 | <span·class="id"·title="keyword">Definition</span>·<a·id="derivable_pt_lim"·class="idref"·href="#derivable_pt_lim"><span·class="id"·title="definition">derivable_pt_lim</span></a>·<a·id="f:111"·class="idref"·href="#f:111"><span·class="id"·title="binder">f</span></a>·(<a·id="x:112"·class="idref"·href="#x:112"><span·class="id"·title="binder">x</span></a>·<a·id="l:113"·class="idref"·href="#l:113"><span·class="id"·title="binder">l</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<span·class="id"·title="keyword">Prop</span>·:=<br/> | 236 | <span·class="id"·title="keyword">Definition</span>·<a·id="derivable_pt_lim"·class="idref"·href="#derivable_pt_lim"><span·class="id"·title="definition">derivable_pt_lim</span></a>·<a·id="f:111"·class="idref"·href="#f:111"><span·class="id"·title="binder">f</span></a>·(<a·id="x:112"·class="idref"·href="#x:112"><span·class="id"·title="binder">x</span></a>·<a·id="l:113"·class="idref"·href="#l:113"><span·class="id"·title="binder">l</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<span·class="id"·title="keyword">Prop</span>·:=<br/> |
237 | <span·class="id"·title="keyword">forall</span>·<a·id="eps:114"·class="idref"·href="#eps:114"><span·class="id"·title="binder">eps</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,<br/> | 237 | <span·class="id"·title="keyword">forall</span>·<a·id="eps:114"·class="idref"·href="#eps:114"><span·class="id"·title="binder">eps</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,<br/> |
Offset 267, 15 lines modified | Offset 267, 15 lines modified | ||
267 | <span·class="id"·title="keyword">Definition</span>·<a·id="antiderivative"·class="idref"·href="#antiderivative"><span·class="id"·title="definition">antiderivative</span></a>·<a·id="f:131"·class="idref"·href="#f:131"><span·class="id"·title="binder">f</span></a>·(<a·id="g:132"·class="idref"·href="#g:132"><span·class="id"·title="binder">g</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="a:133"·class="idref"·href="#a:133"><span·class="id"·title="binder">a</span></a>·<a·id="b:134"·class="idref"·href="#b:134"><span·class="id"·title="binder">b</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<span·class="id"·title="keyword">Prop</span>·:=<br/> | 267 | <span·class="id"·title="keyword">Definition</span>·<a·id="antiderivative"·class="idref"·href="#antiderivative"><span·class="id"·title="definition">antiderivative</span></a>·<a·id="f:131"·class="idref"·href="#f:131"><span·class="id"·title="binder">f</span></a>·(<a·id="g:132"·class="idref"·href="#g:132"><span·class="id"·title="binder">g</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="a:133"·class="idref"·href="#a:133"><span·class="id"·title="binder">a</span></a>·<a·id="b:134"·class="idref"·href="#b:134"><span·class="id"·title="binder">b</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<span·class="id"·title="keyword">Prop</span>·:=<br/> |
268 | <a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="x:135"·class="idref"·href="#x:135"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,<br/> | 268 | <a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="x:135"·class="idref"·href="#x:135"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,<br/> |
269 | <a·class="idref"·href="Coq.Reals.Ranalysis1.html#a:133"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:135"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#b:134"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>··<a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">exists</span></a>·<a·id="pr:136"·class="idref"·href="#pr:136"><span·class="id"·title="binder">pr</span></a>·:·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#derivable_pt"><span·class="id"·title="definition">derivable_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#g:132"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:135"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:131"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:135"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#derive_pt"><span·class="id"·title="definition">derive_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#g:132"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:135"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#pr:136"><span·class="id"·title="variable">pr</span></a><a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a><br/> | 269 | <a·class="idref"·href="Coq.Reals.Ranalysis1.html#a:133"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:135"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#b:134"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>··<a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">exists</span></a>·<a·id="pr:136"·class="idref"·href="#pr:136"><span·class="id"·title="binder">pr</span></a>·:·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#derivable_pt"><span·class="id"·title="definition">derivable_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#g:132"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:135"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:131"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:135"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#derive_pt"><span·class="id"·title="definition">derive_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#g:132"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:135"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#pr:136"><span·class="id"·title="variable">pr</span></a><a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a><br/> |
270 | <a·class="idref"·href="Coq.Reals.Ranalysis1.html#a:133"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#b:134"><span·class="id"·title="variable">b</span></a>.<br/> | 270 | <a·class="idref"·href="Coq.Reals.Ranalysis1.html#a:133"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#b:134"><span·class="id"·title="variable">b</span></a>.<br/> |
271 | </div> | 271 | </div> |
272 | <div·class="doc"> | 272 | <div·class="doc"> |
273 | <a·id="lab | 273 | <a·id="lab790"></a><h1·class="section">Class·of·differential·functions</h1> |
274 | </div> | 274 | </div> |
275 | <div·class="code"> | 275 | <div·class="code"> |
276 | <span·class="id"·title="keyword">Record</span>·<a·id="Differential"·class="idref"·href="#Differential"><span·class="id"·title="record">Differential</span></a>·:·<span·class="id"·title="keyword">Type</span>·:=·<span·class="id"·title="var">mkDifferential</span><br/> | 276 | <span·class="id"·title="keyword">Record</span>·<a·id="Differential"·class="idref"·href="#Differential"><span·class="id"·title="record">Differential</span></a>·:·<span·class="id"·title="keyword">Type</span>·:=·<span·class="id"·title="var">mkDifferential</span><br/> |
277 | {<a·id="d1"·class="idref"·href="#d1"><span·class="id"·title="projection">d1</span></a>·:>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>;·<a·id="cond_diff"·class="idref"·href="#cond_diff"><span·class="id"·title="projection">cond_diff</span></a>·:·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#derivable"><span·class="id"·title="definition">derivable</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#d1:138"><span·class="id"·title="method">d1</span></a>}.<br/> | 277 | {<a·id="d1"·class="idref"·href="#d1"><span·class="id"·title="projection">d1</span></a>·:>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>;·<a·id="cond_diff"·class="idref"·href="#cond_diff"><span·class="id"·title="projection">cond_diff</span></a>·:·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#derivable"><span·class="id"·title="definition">derivable</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#d1:138"><span·class="id"·title="method">d1</span></a>}.<br/> |
278 | <br/> | 278 | <br/> |
Offset 323, 15 lines modified | Offset 323, 15 lines modified | ||
323 | <span·class="id"·title="keyword">forall</span>·<a·id="f:178"·class="idref"·href="#f:178"><span·class="id"·title="binder">f</span></a>·(<a·id="x:179"·class="idref"·href="#x:179"><span·class="id"·title="binder">x</span></a>·<a·id="l:180"·class="idref"·href="#l:180"><span·class="id"·title="binder">l</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="pr:181"·class="idref"·href="#pr:181"><span·class="id"·title="binder">pr</span></a>:<a·class="idref"·href="Coq.Reals.Ranalysis1.html#derivable_pt"><span·class="id"·title="definition">derivable_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:178"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:179"><span·class="id"·title="variable">x</span></a>),<br/> | 323 | <span·class="id"·title="keyword">forall</span>·<a·id="f:178"·class="idref"·href="#f:178"><span·class="id"·title="binder">f</span></a>·(<a·id="x:179"·class="idref"·href="#x:179"><span·class="id"·title="binder">x</span></a>·<a·id="l:180"·class="idref"·href="#l:180"><span·class="id"·title="binder">l</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="pr:181"·class="idref"·href="#pr:181"><span·class="id"·title="binder">pr</span></a>:<a·class="idref"·href="Coq.Reals.Ranalysis1.html#derivable_pt"><span·class="id"·title="definition">derivable_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:178"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:179"><span·class="id"·title="variable">x</span></a>),<br/> |
324 | <a·class="idref"·href="Coq.Reals.Ranalysis1.html#derive_pt"><span·class="id"·title="definition">derive_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:178"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:179"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#pr:181"><span·class="id"·title="variable">pr</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#l:180"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#derivable_pt_lim"><span·class="id"·title="definition">derivable_pt_lim</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:178"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:179"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#l:180"><span·class="id"·title="variable">l</span></a>.<br/> | 324 | <a·class="idref"·href="Coq.Reals.Ranalysis1.html#derive_pt"><span·class="id"·title="definition">derive_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:178"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:179"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#pr:181"><span·class="id"·title="variable">pr</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#l:180"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#derivable_pt_lim"><span·class="id"·title="definition">derivable_pt_lim</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:178"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:179"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#l:180"><span·class="id"·title="variable">l</span></a>.<br/> |
325 | <br/> | 325 | <br/> |
326 | </div> | 326 | </div> |
327 | <div·class="doc"> | 327 | <div·class="doc"> |
328 | <a·id="lab | 328 | <a·id="lab791"></a><h1·class="section">Equivalence·of·this·definition·with·the·one·using·limit·concept</h1> |
329 | </div> | 329 | </div> |
330 | <div·class="code"> | 330 | <div·class="code"> |
331 | <span·class="id"·title="keyword">Lemma</span>·<a·id="derive_pt_D_in"·class="idref"·href="#derive_pt_D_in"><span·class="id"·title="lemma">derive_pt_D_in</span></a>·:<br/> | 331 | <span·class="id"·title="keyword">Lemma</span>·<a·id="derive_pt_D_in"·class="idref"·href="#derive_pt_D_in"><span·class="id"·title="lemma">derive_pt_D_in</span></a>·:<br/> |
332 | <span·class="id"·title="keyword">forall</span>·<a·id="f:182"·class="idref"·href="#f:182"><span·class="id"·title="binder">f</span></a>·(<a·id="df:183"·class="idref"·href="#df:183"><span·class="id"·title="binder">df</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="x:184"·class="idref"·href="#x:184"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="pr:185"·class="idref"·href="#pr:185"><span·class="id"·title="binder">pr</span></a>:<a·class="idref"·href="Coq.Reals.Ranalysis1.html#derivable_pt"><span·class="id"·title="definition">derivable_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:182"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:184"><span·class="id"·title="variable">x</span></a>),<br/> | 332 | <span·class="id"·title="keyword">forall</span>·<a·id="f:182"·class="idref"·href="#f:182"><span·class="id"·title="binder">f</span></a>·(<a·id="df:183"·class="idref"·href="#df:183"><span·class="id"·title="binder">df</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="x:184"·class="idref"·href="#x:184"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="pr:185"·class="idref"·href="#pr:185"><span·class="id"·title="binder">pr</span></a>:<a·class="idref"·href="Coq.Reals.Ranalysis1.html#derivable_pt"><span·class="id"·title="definition">derivable_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:182"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:184"><span·class="id"·title="variable">x</span></a>),<br/> |
333 | <a·class="idref"·href="Coq.Reals.Rderiv.html#D_in"><span·class="id"·title="definition">D_in</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:182"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#df:183"><span·class="id"·title="variable">df</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#no_cond"><span·class="id"·title="definition">no_cond</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:184"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#derive_pt"><span·class="id"·title="definition">derive_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:182"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:184"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#pr:185"><span·class="id"·title="variable">pr</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#df:183"><span·class="id"·title="variable">df</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:184"><span·class="id"·title="variable">x</span></a>.<br/> | 333 | <a·class="idref"·href="Coq.Reals.Rderiv.html#D_in"><span·class="id"·title="definition">D_in</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:182"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#df:183"><span·class="id"·title="variable">df</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#no_cond"><span·class="id"·title="definition">no_cond</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:184"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#derive_pt"><span·class="id"·title="definition">derive_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:182"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:184"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#pr:185"><span·class="id"·title="variable">pr</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#df:183"><span·class="id"·title="variable">df</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:184"><span·class="id"·title="variable">x</span></a>.<br/> |
Offset 354, 15 lines modified | Offset 354, 15 lines modified | ||
354 | <a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="z:200"·class="idref"·href="#z:200"><span·class="id"·title="binder">z</span></a>,·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#a:197"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#z:200"><span·class="id"·title="variable">z</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#b:198"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:194"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#z:200"><span·class="id"·title="variable">z</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#g:195"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#z:200"><span·class="id"·title="variable">z</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 354 | <a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="z:200"·class="idref"·href="#z:200"><span·class="id"·title="binder">z</span></a>,·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#a:197"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#z:200"><span·class="id"·title="variable">z</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#b:198"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:194"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#z:200"><span·class="id"·title="variable">z</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#g:195"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#z:200"><span·class="id"·title="variable">z</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
355 | <a·class="idref"·href="Coq.Reals.Ranalysis1.html#derivable_pt_lim"><span·class="id"·title="definition">derivable_pt_lim</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:194"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:196"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#l:199"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#derivable_pt_lim"><span·class="id"·title="definition">derivable_pt_lim</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#g:195"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:196"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#l:199"><span·class="id"·title="variable">l</span></a>.<br/> | 355 | <a·class="idref"·href="Coq.Reals.Ranalysis1.html#derivable_pt_lim"><span·class="id"·title="definition">derivable_pt_lim</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:194"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:196"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#l:199"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#derivable_pt_lim"><span·class="id"·title="definition">derivable_pt_lim</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#g:195"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:196"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#l:199"><span·class="id"·title="variable">l</span></a>.<br/> |
356 | <br/> | 356 | <br/> |
357 | </div> | 357 | </div> |
358 | <div·class="doc"> | 358 | <div·class="doc"> |
359 | <a·id="lab | 359 | <a·id="lab792"></a><h1·class="section">derivability·->·continuity</h1> |
360 | </div> | 360 | </div> |
361 | <div·class="code"> | 361 | <div·class="code"> |
362 | <span·class="id"·title="keyword">Lemma</span>·<a·id="derivable_derive"·class="idref"·href="#derivable_derive"><span·class="id"·title="lemma">derivable_derive</span></a>·:<br/> | 362 | <span·class="id"·title="keyword">Lemma</span>·<a·id="derivable_derive"·class="idref"·href="#derivable_derive"><span·class="id"·title="lemma">derivable_derive</span></a>·:<br/> |
363 | <span·class="id"·title="keyword">forall</span>·<a·id="f:201"·class="idref"·href="#f:201"><span·class="id"·title="binder">f</span></a>·(<a·id="x:202"·class="idref"·href="#x:202"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="pr:203"·class="idref"·href="#pr:203"><span·class="id"·title="binder">pr</span></a>:<a·class="idref"·href="Coq.Reals.Ranalysis1.html#derivable_pt"><span·class="id"·title="definition">derivable_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:201"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:202"><span·class="id"·title="variable">x</span></a>),··<a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">exists</span></a>·<a·id="l:204"·class="idref"·href="#l:204"><span·class="id"·title="binder">l</span></a>·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#derive_pt"><span·class="id"·title="definition">derive_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:201"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:202"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#pr:203"><span·class="id"·title="variable">pr</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#l:204"><span·class="id"·title="variable">l</span></a>.<br/> | 363 | <span·class="id"·title="keyword">forall</span>·<a·id="f:201"·class="idref"·href="#f:201"><span·class="id"·title="binder">f</span></a>·(<a·id="x:202"·class="idref"·href="#x:202"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="pr:203"·class="idref"·href="#pr:203"><span·class="id"·title="binder">pr</span></a>:<a·class="idref"·href="Coq.Reals.Ranalysis1.html#derivable_pt"><span·class="id"·title="definition">derivable_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:201"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:202"><span·class="id"·title="variable">x</span></a>),··<a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">exists</span></a>·<a·id="l:204"·class="idref"·href="#l:204"><span·class="id"·title="binder">l</span></a>·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#derive_pt"><span·class="id"·title="definition">derive_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:201"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#x:202"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#pr:203"><span·class="id"·title="variable">pr</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#l:204"><span·class="id"·title="variable">l</span></a>.<br/> |
364 | <br/> | 364 | <br/> |
Offset 372, 19 lines modified | Offset 372, 19 lines modified | ||
372 | <br/> | 372 | <br/> |
373 | <span·class="id"·title="keyword">Theorem</span>·<a·id="derivable_continuous"·class="idref"·href="#derivable_continuous"><span·class="id"·title="lemma">derivable_continuous</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="f:207"·class="idref"·href="#f:207"><span·class="id"·title="binder">f</span></a>,·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#derivable"><span·class="id"·title="definition">derivable</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:207"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#continuity"><span·class="id"·title="definition">continuity</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:207"><span·class="id"·title="variable">f</span></a>.<br/> | 373 | <span·class="id"·title="keyword">Theorem</span>·<a·id="derivable_continuous"·class="idref"·href="#derivable_continuous"><span·class="id"·title="lemma">derivable_continuous</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="f:207"·class="idref"·href="#f:207"><span·class="id"·title="binder">f</span></a>,·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#derivable"><span·class="id"·title="definition">derivable</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:207"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#continuity"><span·class="id"·title="definition">continuity</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#f:207"><span·class="id"·title="variable">f</span></a>.<br/> |
374 | <br/> | 374 | <br/> |
375 | </div> | 375 | </div> |
376 | <div·class="doc"> | 376 | <div·class="doc"> |
377 | <a·id="lab | 377 | <a·id="lab793"></a><h1·class="section">Main·rules</h1> |
378 | <div·class="paragraph">·</div> | 378 | <div·class="paragraph">·</div> |
379 | <a·id="lab | 379 | <a·id="lab794"></a><h2·class="section">Rules·for·derivable_pt_lim·(value·of·the·derivative·at·a·point)</h2> |
380 | </div> | 380 | </div> |
381 | <div·class="code"> | 381 | <div·class="code"> |
Max diff block lines reached; 16645/52958 bytes (31.43%) of diff not shown. |
Offset 59, 15 lines modified | Offset 59, 15 lines modified | ||
59 | <br/> | 59 | <br/> |
60 | <span·class="id"·title="keyword">Local·Ltac</span>·<span·class="id"·title="var">Tauto.intuition_solver</span>·::=·<span·class="id"·title="tactic">auto</span>·<span·class="id"·title="keyword">with</span>·<span·class="id"·title="var">rorders</span>·<span·class="id"·title="var">real</span>.<br/> | 60 | <span·class="id"·title="keyword">Local·Ltac</span>·<span·class="id"·title="var">Tauto.intuition_solver</span>·::=·<span·class="id"·title="tactic">auto</span>·<span·class="id"·title="keyword">with</span>·<span·class="id"·title="var">rorders</span>·<span·class="id"·title="var">real</span>.<br/> |
61 | <br/> | 61 | <br/> |
62 | </div> | 62 | </div> |
63 | <div·class="doc"> | 63 | <div·class="doc"> |
64 | <a·id="lab | 64 | <a·id="lab813"></a><h1·class="section">Preliminaries·lemmas</h1> |
65 | </div> | 65 | </div> |
66 | <div·class="code"> | 66 | <div·class="code"> |
67 | <br/> | 67 | <br/> |
68 | <span·class="id"·title="keyword">Lemma</span>·<a·id="f_incr_implies_g_incr_interv"·class="idref"·href="#f_incr_implies_g_incr_interv"><span·class="id"·title="lemma">f_incr_implies_g_incr_interv</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="f:1"·class="idref"·href="#f:1"><span·class="id"·title="binder">f</span></a>·<a·id="g:2"·class="idref"·href="#g:2"><span·class="id"·title="binder">g</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<span·class="id"·title="keyword">forall</span>·<a·id="lb:3"·class="idref"·href="#lb:3"><span·class="id"·title="binder">lb</span></a>·<a·id="ub:4"·class="idref"·href="#ub:4"><span·class="id"·title="binder">ub</span></a>,<br/> | 68 | <span·class="id"·title="keyword">Lemma</span>·<a·id="f_incr_implies_g_incr_interv"·class="idref"·href="#f_incr_implies_g_incr_interv"><span·class="id"·title="lemma">f_incr_implies_g_incr_interv</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="f:1"·class="idref"·href="#f:1"><span·class="id"·title="binder">f</span></a>·<a·id="g:2"·class="idref"·href="#g:2"><span·class="id"·title="binder">g</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<span·class="id"·title="keyword">forall</span>·<a·id="lb:3"·class="idref"·href="#lb:3"><span·class="id"·title="binder">lb</span></a>·<a·id="ub:4"·class="idref"·href="#ub:4"><span·class="id"·title="binder">ub</span></a>,<br/> |
69 | <a·class="idref"·href="Coq.Reals.Ranalysis5.html#lb:3"><span·class="id"·title="variable">lb</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#ub:4"><span·class="id"·title="variable">ub</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 69 | <a·class="idref"·href="Coq.Reals.Ranalysis5.html#lb:3"><span·class="id"·title="variable">lb</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#ub:4"><span·class="id"·title="variable">ub</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
Offset 135, 19 lines modified | Offset 135, 19 lines modified | ||
135 | <a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="x:166"·class="idref"·href="#x:166"><span·class="id"·title="binder">x</span></a>,·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#lb:163"><span·class="id"·title="variable">lb</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>··<a·class="idref"·href="Coq.Reals.Ranalysis5.html#x:166"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#ub:164"><span·class="id"·title="variable">ub</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#continuity_pt"><span·class="id"·title="definition">continuity_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#f:162"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#x:166"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 135 | <a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="x:166"·class="idref"·href="#x:166"><span·class="id"·title="binder">x</span></a>,·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#lb:163"><span·class="id"·title="variable">lb</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>··<a·class="idref"·href="Coq.Reals.Ranalysis5.html#x:166"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#ub:164"><span·class="id"·title="variable">ub</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#continuity_pt"><span·class="id"·title="definition">continuity_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#f:162"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#x:166"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
136 | <a·class="idref"·href="Coq.Init.Specif.html#bc4528e836ab0e91ea7e942fb09e898f"><span·class="id"·title="notation">{</span></a><a·id="x:167"·class="idref"·href="#x:167"><span·class="id"·title="binder">x</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#bc4528e836ab0e91ea7e942fb09e898f"><span·class="id"·title="notation">|</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#lb:163"><span·class="id"·title="variable">lb</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#x:167"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#ub:164"><span·class="id"·title="variable">ub</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#f:162"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#x:167"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#y:165"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.Init.Specif.html#bc4528e836ab0e91ea7e942fb09e898f"><span·class="id"·title="notation">}</span></a>.<br/> | 136 | <a·class="idref"·href="Coq.Init.Specif.html#bc4528e836ab0e91ea7e942fb09e898f"><span·class="id"·title="notation">{</span></a><a·id="x:167"·class="idref"·href="#x:167"><span·class="id"·title="binder">x</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#bc4528e836ab0e91ea7e942fb09e898f"><span·class="id"·title="notation">|</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#lb:163"><span·class="id"·title="variable">lb</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#x:167"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#ub:164"><span·class="id"·title="variable">ub</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#f:162"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#x:167"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#y:165"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.Init.Specif.html#bc4528e836ab0e91ea7e942fb09e898f"><span·class="id"·title="notation">}</span></a>.<br/> |
137 | <br/> | 137 | <br/> |
138 | </div> | 138 | </div> |
139 | <div·class="doc"> | 139 | <div·class="doc"> |
140 | <a·id="lab | 140 | <a·id="lab814"></a><h2·class="section">The·derivative·of·a·reciprocal·function</h2> |
141 | <div·class="paragraph">·</div> | 141 | <div·class="paragraph">·</div> |
142 | <a·id="lab | 142 | <a·id="lab815"></a><h1·class="section">Continuity·of·the·reciprocal·function</h1> |
143 | </div> | 143 | </div> |
144 | <div·class="code"> | 144 | <div·class="code"> |
145 | <br/> | 145 | <br/> |
146 | <span·class="id"·title="keyword">Lemma</span>·<a·id="continuity_pt_recip_prelim"·class="idref"·href="#continuity_pt_recip_prelim"><span·class="id"·title="lemma">continuity_pt_recip_prelim</span></a>·:·<span·class="id"·title="keyword">forall</span>·(<a·id="f:178"·class="idref"·href="#f:178"><span·class="id"·title="binder">f</span></a>·<a·id="g:179"·class="idref"·href="#g:179"><span·class="id"·title="binder">g</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="lb:180"·class="idref"·href="#lb:180"><span·class="id"·title="binder">lb</span></a>·<a·id="ub:181"·class="idref"·href="#ub:181"><span·class="id"·title="binder">ub</span></a>·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="Pr1:182"·class="idref"·href="#Pr1:182"><span·class="id"·title="binder">Pr1</span></a>:<a·class="idref"·href="Coq.Reals.Ranalysis5.html#lb:180"><span·class="id"·title="variable">lb</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#ub:181"><span·class="id"·title="variable">ub</span></a>),<br/> | 146 | <span·class="id"·title="keyword">Lemma</span>·<a·id="continuity_pt_recip_prelim"·class="idref"·href="#continuity_pt_recip_prelim"><span·class="id"·title="lemma">continuity_pt_recip_prelim</span></a>·:·<span·class="id"·title="keyword">forall</span>·(<a·id="f:178"·class="idref"·href="#f:178"><span·class="id"·title="binder">f</span></a>·<a·id="g:179"·class="idref"·href="#g:179"><span·class="id"·title="binder">g</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="lb:180"·class="idref"·href="#lb:180"><span·class="id"·title="binder">lb</span></a>·<a·id="ub:181"·class="idref"·href="#ub:181"><span·class="id"·title="binder">ub</span></a>·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="Pr1:182"·class="idref"·href="#Pr1:182"><span·class="id"·title="binder">Pr1</span></a>:<a·class="idref"·href="Coq.Reals.Ranalysis5.html#lb:180"><span·class="id"·title="variable">lb</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#ub:181"><span·class="id"·title="variable">ub</span></a>),<br/> |
147 | <a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="x:183"·class="idref"·href="#x:183"><span·class="id"·title="binder">x</span></a>·<a·id="y:184"·class="idref"·href="#y:184"><span·class="id"·title="binder">y</span></a>,·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#lb:180"><span·class="id"·title="variable">lb</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#x:183"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#x:183"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#y:184"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#y:184"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#ub:181"><span·class="id"·title="variable">ub</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#f:178"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#x:183"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#f:178"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#y:184"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 147 | <a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="x:183"·class="idref"·href="#x:183"><span·class="id"·title="binder">x</span></a>·<a·id="y:184"·class="idref"·href="#y:184"><span·class="id"·title="binder">y</span></a>,·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#lb:180"><span·class="id"·title="variable">lb</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#x:183"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#x:183"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#y:184"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#y:184"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#ub:181"><span·class="id"·title="variable">ub</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#f:178"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#x:183"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#f:178"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#y:184"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
Offset 167, 15 lines modified | Offset 167, 15 lines modified | ||
167 | <a·class="idref"·href="Coq.Reals.Ranalysis5.html#f:242"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#lb:244"><span·class="id"·title="variable">lb</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#b:252"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#f:242"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#ub:245"><span·class="id"·title="variable">ub</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 167 | <a·class="idref"·href="Coq.Reals.Ranalysis5.html#f:242"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#lb:244"><span·class="id"·title="variable">lb</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#b:252"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#f:242"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#ub:245"><span·class="id"·title="variable">ub</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
168 | <a·class="idref"·href="Coq.Reals.Ranalysis1.html#continuity_pt"><span·class="id"·title="definition">continuity_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#g:243"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#b:252"><span·class="id"·title="variable">b</span></a>.<br/> | 168 | <a·class="idref"·href="Coq.Reals.Ranalysis1.html#continuity_pt"><span·class="id"·title="definition">continuity_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#g:243"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#b:252"><span·class="id"·title="variable">b</span></a>.<br/> |
169 | <br/> | 169 | <br/> |
170 | </div> | 170 | </div> |
171 | <div·class="doc"> | 171 | <div·class="doc"> |
172 | <a·id="lab | 172 | <a·id="lab816"></a><h1·class="section">Derivability·of·the·reciprocal·function</h1> |
173 | </div> | 173 | </div> |
174 | <div·class="code"> | 174 | <div·class="code"> |
175 | <br/> | 175 | <br/> |
176 | <span·class="id"·title="keyword">Lemma</span>·<a·id="derivable_pt_lim_recip_interv"·class="idref"·href="#derivable_pt_lim_recip_interv"><span·class="id"·title="lemma">derivable_pt_lim_recip_interv</span></a>·:·<span·class="id"·title="keyword">forall</span>·(<a·id="f:255"·class="idref"·href="#f:255"><span·class="id"·title="binder">f</span></a>·<a·id="g:256"·class="idref"·href="#g:256"><span·class="id"·title="binder">g</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="lb:257"·class="idref"·href="#lb:257"><span·class="id"·title="binder">lb</span></a>·<a·id="ub:258"·class="idref"·href="#ub:258"><span·class="id"·title="binder">ub</span></a>·<a·id="x:259"·class="idref"·href="#x:259"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)<br/> | 176 | <span·class="id"·title="keyword">Lemma</span>·<a·id="derivable_pt_lim_recip_interv"·class="idref"·href="#derivable_pt_lim_recip_interv"><span·class="id"·title="lemma">derivable_pt_lim_recip_interv</span></a>·:·<span·class="id"·title="keyword">forall</span>·(<a·id="f:255"·class="idref"·href="#f:255"><span·class="id"·title="binder">f</span></a>·<a·id="g:256"·class="idref"·href="#g:256"><span·class="id"·title="binder">g</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="lb:257"·class="idref"·href="#lb:257"><span·class="id"·title="binder">lb</span></a>·<a·id="ub:258"·class="idref"·href="#ub:258"><span·class="id"·title="binder">ub</span></a>·<a·id="x:259"·class="idref"·href="#x:259"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)<br/> |
177 | (<a·id="Prf:261"·class="idref"·href="#Prf:261"><span·class="id"·title="binder">Prf</span></a>:<span·class="id"·title="keyword">forall</span>·<a·id="a:260"·class="idref"·href="#a:260"><span·class="id"·title="binder">a</span></a>·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#g:256"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#lb:257"><span·class="id"·title="variable">lb</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#a:260"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#g:256"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#ub:258"><span·class="id"·title="variable">ub</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#derivable_pt"><span·class="id"·title="definition">derivable_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#f:255"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#a:260"><span·class="id"·title="variable">a</span></a>)·(<a·id="Prg:262"·class="idref"·href="#Prg:262"><span·class="id"·title="binder">Prg</span></a>·:·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#continuity_pt"><span·class="id"·title="definition">continuity_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#g:256"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#x:259"><span·class="id"·title="variable">x</span></a>),<br/> | 177 | (<a·id="Prf:261"·class="idref"·href="#Prf:261"><span·class="id"·title="binder">Prf</span></a>:<span·class="id"·title="keyword">forall</span>·<a·id="a:260"·class="idref"·href="#a:260"><span·class="id"·title="binder">a</span></a>·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#g:256"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#lb:257"><span·class="id"·title="variable">lb</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#a:260"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#g:256"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#ub:258"><span·class="id"·title="variable">ub</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#derivable_pt"><span·class="id"·title="definition">derivable_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#f:255"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#a:260"><span·class="id"·title="variable">a</span></a>)·(<a·id="Prg:262"·class="idref"·href="#Prg:262"><span·class="id"·title="binder">Prg</span></a>·:·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#continuity_pt"><span·class="id"·title="definition">continuity_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#g:256"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#x:259"><span·class="id"·title="variable">x</span></a>),<br/> |
Offset 241, 15 lines modified | Offset 241, 15 lines modified | ||
241 | <a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 241 | <a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
242 | <a·class="idref"·href="Coq.Reals.Ranalysis1.html#derivable_pt"><span·class="id"·title="definition">derivable_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#g:341"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#x:344"><span·class="id"·title="variable">x</span></a>.<br/> | 242 | <a·class="idref"·href="Coq.Reals.Ranalysis1.html#derivable_pt"><span·class="id"·title="definition">derivable_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#g:341"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#x:344"><span·class="id"·title="variable">x</span></a>.<br/> |
243 | <br/> | 243 | <br/> |
244 | </div> | 244 | </div> |
245 | <div·class="doc"> | 245 | <div·class="doc"> |
246 | <a·id="lab | 246 | <a·id="lab817"></a><h1·class="section">Value·of·the·derivative·of·the·reciprocal·function</h1> |
247 | </div> | 247 | </div> |
248 | <div·class="code"> | 248 | <div·class="code"> |
249 | <br/> | 249 | <br/> |
250 | <span·class="id"·title="keyword">Lemma</span>·<a·id="derive_pt_recip_interv_prelim0"·class="idref"·href="#derive_pt_recip_interv_prelim0"><span·class="id"·title="lemma">derive_pt_recip_interv_prelim0</span></a>·(<a·id="f:356"·class="idref"·href="#f:356"><span·class="id"·title="binder">f</span></a>·<a·id="g:357"·class="idref"·href="#g:357"><span·class="id"·title="binder">g</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="lb:358"·class="idref"·href="#lb:358"><span·class="id"·title="binder">lb</span></a>·<a·id="ub:359"·class="idref"·href="#ub:359"><span·class="id"·title="binder">ub</span></a>·<a·id="x:360"·class="idref"·href="#x:360"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)<br/> | 250 | <span·class="id"·title="keyword">Lemma</span>·<a·id="derive_pt_recip_interv_prelim0"·class="idref"·href="#derive_pt_recip_interv_prelim0"><span·class="id"·title="lemma">derive_pt_recip_interv_prelim0</span></a>·(<a·id="f:356"·class="idref"·href="#f:356"><span·class="id"·title="binder">f</span></a>·<a·id="g:357"·class="idref"·href="#g:357"><span·class="id"·title="binder">g</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="lb:358"·class="idref"·href="#lb:358"><span·class="id"·title="binder">lb</span></a>·<a·id="ub:359"·class="idref"·href="#ub:359"><span·class="id"·title="binder">ub</span></a>·<a·id="x:360"·class="idref"·href="#x:360"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)<br/> |
251 | (<a·id="Prf:361"·class="idref"·href="#Prf:361"><span·class="id"·title="binder">Prf</span></a>:<a·class="idref"·href="Coq.Reals.Ranalysis1.html#derivable_pt"><span·class="id"·title="definition">derivable_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#f:356"><span·class="id"·title="variable">f</span></a>·(<a·class="idref"·href="Coq.Reals.Ranalysis5.html#g:357"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#x:360"><span·class="id"·title="variable">x</span></a>))·(<a·id="Prg:362"·class="idref"·href="#Prg:362"><span·class="id"·title="binder">Prg</span></a>:<a·class="idref"·href="Coq.Reals.Ranalysis1.html#derivable_pt"><span·class="id"·title="definition">derivable_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#g:357"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#x:360"><span·class="id"·title="variable">x</span></a>)<br/> | 251 | (<a·id="Prf:361"·class="idref"·href="#Prf:361"><span·class="id"·title="binder">Prf</span></a>:<a·class="idref"·href="Coq.Reals.Ranalysis1.html#derivable_pt"><span·class="id"·title="definition">derivable_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#f:356"><span·class="id"·title="variable">f</span></a>·(<a·class="idref"·href="Coq.Reals.Ranalysis5.html#g:357"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#x:360"><span·class="id"·title="variable">x</span></a>))·(<a·id="Prg:362"·class="idref"·href="#Prg:362"><span·class="id"·title="binder">Prg</span></a>:<a·class="idref"·href="Coq.Reals.Ranalysis1.html#derivable_pt"><span·class="id"·title="definition">derivable_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#g:357"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#x:360"><span·class="id"·title="variable">x</span></a>)<br/> |
Offset 317, 15 lines modified | Offset 317, 15 lines modified | ||
317 | 1·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">/</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Reals.Ranalysis1.html#derive_pt"><span·class="id"·title="definition">derive_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#f:408"><span·class="id"·title="variable">f</span></a>·(<a·class="idref"·href="Coq.Reals.Ranalysis5.html#g:409"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#x:412"><span·class="id"·title="variable">x</span></a>)·(<a·class="idref"·href="Coq.Reals.Ranalysis5.html#Prf:421"><span·class="id"·title="variable">Prf</span></a>·(<a·class="idref"·href="Coq.Reals.Ranalysis5.html#g:409"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#x:412"><span·class="id"·title="variable">x</span></a>)·(<a·class="idref"·href="Coq.Reals.Ranalysis5.html#derive_pt_recip_interv_prelim1_1_decr"><span·class="id"·title="lemma">derive_pt_recip_interv_prelim1_1_decr</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#f:408"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#g:409"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#lb:410"><span·class="id"·title="variable">lb</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#ub:411"><span·class="id"·title="variable">ub</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#x:412"><span·class="id"·title="variable">x</span></a><br/> | 317 | 1·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">/</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Reals.Ranalysis1.html#derive_pt"><span·class="id"·title="definition">derive_pt</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#f:408"><span·class="id"·title="variable">f</span></a>·(<a·class="idref"·href="Coq.Reals.Ranalysis5.html#g:409"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#x:412"><span·class="id"·title="variable">x</span></a>)·(<a·class="idref"·href="Coq.Reals.Ranalysis5.html#Prf:421"><span·class="id"·title="variable">Prf</span></a>·(<a·class="idref"·href="Coq.Reals.Ranalysis5.html#g:409"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#x:412"><span·class="id"·title="variable">x</span></a>)·(<a·class="idref"·href="Coq.Reals.Ranalysis5.html#derive_pt_recip_interv_prelim1_1_decr"><span·class="id"·title="lemma">derive_pt_recip_interv_prelim1_1_decr</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#f:408"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#g:409"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#lb:410"><span·class="id"·title="variable">lb</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#ub:411"><span·class="id"·title="variable">ub</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#x:412"><span·class="id"·title="variable">x</span></a><br/> |
318 | <a·class="idref"·href="Coq.Reals.Ranalysis5.html#lb_lt_ub:413"><span·class="id"·title="variable">lb_lt_ub</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#x_encad:414"><span·class="id"·title="variable">x_encad</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#f_decr:417"><span·class="id"·title="variable">f_decr</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#g_wf:419"><span·class="id"·title="variable">g_wf</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#f_eq_g:423"><span·class="id"·title="variable">f_eq_g</span></a>))<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">)</span></a>.<br/> | 318 | <a·class="idref"·href="Coq.Reals.Ranalysis5.html#lb_lt_ub:413"><span·class="id"·title="variable">lb_lt_ub</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#x_encad:414"><span·class="id"·title="variable">x_encad</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#f_decr:417"><span·class="id"·title="variable">f_decr</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#g_wf:419"><span·class="id"·title="variable">g_wf</span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis5.html#f_eq_g:423"><span·class="id"·title="variable">f_eq_g</span></a>))<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">)</span></a>.<br/> |
319 | <br/> | 319 | <br/> |
320 | </div> | 320 | </div> |
321 | <div·class="doc"> | 321 | <div·class="doc"> |
322 | <a·id="lab18 | 322 | <a·id="lab818"></a><h1·class="section">Existence·of·the·derivative·of·a·function·which·is·the·limit·of·a·sequence·of·functions</h1> |
323 | </div> | 323 | </div> |
324 | <div·class="code"> | 324 | <div·class="code"> |
325 | <br/> | 325 | <br/> |
326 | <br/> | 326 | <br/> |
Offset 311, 21 lines modified | Offset 311, 21 lines modified | ||
00001360:·6173·733d·2269·6422·2074·6974·6c65·3d22··ass="id"·title=" | 00001360:·6173·733d·2269·6422·2074·6974·6c65·3d22··ass="id"·title=" | ||
00001370:·7661·7222·3e72·6561·6c3c·2f73·7061·6e3e··var">real</span> | 00001370:·7661·7222·3e72·6561·6c3c·2f73·7061·6e3e··var">real</span> | ||
00001380:·203c·7370·616e·2063·6c61·7373·3d22·6964···<span·class="id | 00001380:·203c·7370·616e·2063·6c61·7373·3d22·6964···<span·class="id | ||
00001390:·2220·7469·746c·653d·2276·6172·223e·6172··"·title="var">ar | 00001390:·2220·7469·746c·653d·2276·6172·223e·6172··"·title="var">ar | ||
000013a0:·6974·683c·2f73·7061·6e3e·2e3c·6272·2f3e··ith</span>.<br/> | 000013a0:·6974·683c·2f73·7061·6e3e·2e3c·6272·2f3e··ith</span>.<br/> | ||
000013b0:·0a0a·3c62·722f·3e0a·3c2f·6469·763e·0a0a··..<br/>.</div>.. | 000013b0:·0a0a·3c62·722f·3e0a·3c2f·6469·763e·0a0a··..<br/>.</div>.. | ||
000013c0:·3c64·6976·2063·6c61·7373·3d22·646f·6322··<div·class="doc" | 000013c0:·3c64·6976·2063·6c61·7373·3d22·646f·6322··<div·class="doc" | ||
000013d0:·3e0a·3c61·2069·643d·226c·6162·3 | 000013d0:·3e0a·3c61·2069·643d·226c·6162·3930·3122··>.<a·id="lab901" | ||
000013e0:·3e3c·2f61·3e3c·6831·2063·6c61·7373·3d22··></a><h1·class=" | 000013e0:·3e3c·2f61·3e3c·6831·2063·6c61·7373·3d22··></a><h1·class=" | ||
000013f0:·7365·6374·696f·6e22·3e50·7265·6c69·6d69··section">Prelimi | 000013f0:·7365·6374·696f·6e22·3e50·7265·6c69·6d69··section">Prelimi | ||
00001400:·6e61·7269·6573·3c2f·6831·3e0a·0a3c·6469··naries</h1>..<di | 00001400:·6e61·7269·6573·3c2f·6831·3e0a·0a3c·6469··naries</h1>..<di | ||
00001410:·7620·636c·6173·733d·2270·6172·6167·7261··v·class="paragra | 00001410:·7620·636c·6173·733d·2270·6172·6167·7261··v·class="paragra | ||
00001420:·7068·223e·203c·2f64·6976·3e0a·0a3c·6120··ph">·</div>..<a· | 00001420:·7068·223e·203c·2f64·6976·3e0a·0a3c·6120··ph">·</div>..<a· | ||
00001430:·6964·3d22·6c61·623 | 00001430:·6964·3d22·6c61·6239·3032·223e·3c2f·613e··id="lab902"></a> | ||
00001440:·3c68·3220·636c·6173·733d·2273·6563·7469··<h2·class="secti | 00001440:·3c68·3220·636c·6173·733d·2273·6563·7469··<h2·class="secti | ||
00001450:·6f6e·223e·5661·7269·6f75·7320·6765·6e65··on">Various·gene | 00001450:·6f6e·223e·5661·7269·6f75·7320·6765·6e65··on">Various·gene | ||
00001460:·7269·6320·6c65·6d6d·6173·2077·6869·6368··ric·lemmas·which | 00001460:·7269·6320·6c65·6d6d·6173·2077·6869·6368··ric·lemmas·which | ||
00001470:·2070·726f·6261·626c·7920·7368·6f75·6c64···probably·should | 00001470:·2070·726f·6261·626c·7920·7368·6f75·6c64···probably·should | ||
00001480:·2067·6f20·736f·6d65·7768·6572·6520·656c···go·somewhere·el | 00001480:·2067·6f20·736f·6d65·7768·6572·6520·656c···go·somewhere·el | ||
00001490:·7365·3c2f·6832·3e0a·0a3c·2f64·6976·3e0a··se</h2>..</div>. | 00001490:·7365·3c2f·6832·3e0a·0a3c·2f64·6976·3e0a··se</h2>..</div>. | ||
000014a0:·3c64·6976·2063·6c61·7373·3d22·636f·6465··<div·class="code | 000014a0:·3c64·6976·2063·6c61·7373·3d22·636f·6465··<div·class="code | ||
Offset 1612, 22 lines modified | Offset 1612, 22 lines modified | ||
000064b0:·3539·6566·3966·3630·6663·3265·3361·3532··59ef9f60fc2e3a52 | 000064b0:·3539·6566·3966·3630·6663·3265·3361·3532··59ef9f60fc2e3a52 | ||
000064c0:·6334·3833·3731·6430·3737·3037·223e·3c73··c48371d07707"><s | 000064c0:·6334·3833·3731·6430·3737·3037·223e·3c73··c48371d07707"><s | ||
000064d0:·7061·6e20·636c·6173·733d·2269·6422·2074··pan·class="id"·t | 000064d0:·7061·6e20·636c·6173·733d·2269·6422·2074··pan·class="id"·t | ||
000064e0:·6974·6c65·3d22·6e6f·7461·7469·6f6e·223e··itle="notation"> | 000064e0:·6974·6c65·3d22·6e6f·7461·7469·6f6e·223e··itle="notation"> | ||
000064f0:·5e3c·2f73·7061·6e3e·3c2f·613e·322e·3c62··^</span></a>2.<b | 000064f0:·5e3c·2f73·7061·6e3e·3c2f·613e·322e·3c62··^</span></a>2.<b | ||
00006500:·722f·3e0a·0a3c·6272·2f3e·0a3c·2f64·6976··r/>..<br/>.</div | 00006500:·722f·3e0a·0a3c·6272·2f3e·0a3c·2f64·6976··r/>..<br/>.</div | ||
00006510:·3e0a·0a3c·6469·7620·636c·6173·733d·2264··>..<div·class="d | 00006510:·3e0a·0a3c·6469·7620·636c·6173·733d·2264··>..<div·class="d | ||
00006520:·6f63·223e·0a3c·6120·6964·3d22·6c61·623 | 00006520:·6f63·223e·0a3c·6120·6964·3d22·6c61·6239··oc">.<a·id="lab9 | ||
00006530:·3 | 00006530:·3033·223e·3c2f·613e·3c68·3220·636c·6173··03"></a><h2·clas | ||
00006540:·733d·2273·6563·7469·6f6e·223e·5072·6f70··s="section">Prop | 00006540:·733d·2273·6563·7469·6f6e·223e·5072·6f70··s="section">Prop | ||
00006550:·6572·7469·6573·206f·6620·7461·6e67·656e··erties·of·tangen | 00006550:·6572·7469·6573·206f·6620·7461·6e67·656e··erties·of·tangen | ||
00006560:·743c·2f68·323e·0a0a·3c64·6976·2063·6c61··t</h2>..<div·cla | 00006560:·743c·2f68·323e·0a0a·3c64·6976·2063·6c61··t</h2>..<div·cla | ||
00006570:·7373·3d22·7061·7261·6772·6170·6822·3e20··ss="paragraph">· | 00006570:·7373·3d22·7061·7261·6772·6170·6822·3e20··ss="paragraph">· | ||
00006580:·3c2f·6469·763e·0a0a·3c61·2069·643d·226c··</div>..<a·id="l | 00006580:·3c2f·6469·763e·0a0a·3c61·2069·643d·226c··</div>..<a·id="l | ||
00006590:·6162·3 | 00006590:·6162·3930·3422·3e3c·2f61·3e3c·6833·2063··ab904"></a><h3·c | ||
000065a0:·6c61·7373·3d22·7365·6374·696f·6e22·3e44··lass="section">D | 000065a0:·6c61·7373·3d22·7365·6374·696f·6e22·3e44··lass="section">D | ||
000065b0:·6572·6976·6174·6976·6520·6f66·2074·616e··erivative·of·tan | 000065b0:·6572·6976·6174·6976·6520·6f66·2074·616e··erivative·of·tan | ||
000065c0:·6765·6e74·3c2f·6833·3e0a·0a3c·2f64·6976··gent</h3>..</div | 000065c0:·6765·6e74·3c2f·6833·3e0a·0a3c·2f64·6976··gent</h3>..</div | ||
000065d0:·3e0a·3c64·6976·2063·6c61·7373·3d22·636f··>.<div·class="co | 000065d0:·3e0a·3c64·6976·2063·6c61·7373·3d22·636f··>.<div·class="co | ||
000065e0:·6465·223e·0a0a·3c62·722f·3e0a·3c73·7061··de">..<br/>.<spa | 000065e0:·6465·223e·0a0a·3c62·722f·3e0a·3c73·7061··de">..<br/>.<spa | ||
000065f0:·6e20·636c·6173·733d·2269·6422·2074·6974··n·class="id"·tit | 000065f0:·6e20·636c·6173·733d·2269·6422·2074·6974··n·class="id"·tit | ||
00006600:·6c65·3d22·6b65·7977·6f72·6422·3e4c·656d··le="keyword">Lem | 00006600:·6c65·3d22·6b65·7977·6f72·6422·3e4c·656d··le="keyword">Lem | ||
Offset 1907, 15 lines modified | Offset 1907, 15 lines modified | ||
00007720:·6334·3833·3731·6430·3737·3037·223e·3c73··c48371d07707"><s | 00007720:·6334·3833·3731·6430·3737·3037·223e·3c73··c48371d07707"><s | ||
00007730:·7061·6e20·636c·6173·733d·2269·6422·2074··pan·class="id"·t | 00007730:·7061·6e20·636c·6173·733d·2269·6422·2074··pan·class="id"·t | ||
00007740:·6974·6c65·3d22·6e6f·7461·7469·6f6e·223e··itle="notation"> | 00007740:·6974·6c65·3d22·6e6f·7461·7469·6f6e·223e··itle="notation"> | ||
00007750:·295e·3c2f·7370·616e·3e3c·2f61·3e32·2e3c··)^</span></a>2.< | 00007750:·295e·3c2f·7370·616e·3e3c·2f61·3e32·2e3c··)^</span></a>2.< | ||
00007760:·6272·2f3e·0a0a·3c62·722f·3e0a·3c2f·6469··br/>..<br/>.</di | 00007760:·6272·2f3e·0a0a·3c62·722f·3e0a·3c2f·6469··br/>..<br/>.</di | ||
00007770:·763e·0a0a·3c64·6976·2063·6c61·7373·3d22··v>..<div·class=" | 00007770:·763e·0a0a·3c64·6976·2063·6c61·7373·3d22··v>..<div·class=" | ||
00007780:·646f·6322·3e0a·3c61·2069·643d·226c·6162··doc">.<a·id="lab | 00007780:·646f·6322·3e0a·3c61·2069·643d·226c·6162··doc">.<a·id="lab | ||
00007790:·3 | 00007790:·3930·3522·3e3c·2f61·3e3c·6833·2063·6c61··905"></a><h3·cla | ||
000077a0:·7373·3d22·7365·6374·696f·6e22·3e50·726f··ss="section">Pro | 000077a0:·7373·3d22·7365·6374·696f·6e22·3e50·726f··ss="section">Pro | ||
000077b0:·6f66·2074·6861·7420·7461·6e67·656e·7420··of·that·tangent· | 000077b0:·6f66·2074·6861·7420·7461·6e67·656e·7420··of·that·tangent· | ||
000077c0:·6973·2061·2062·696a·6563·7469·6f6e·3c2f··is·a·bijection</ | 000077c0:·6973·2061·2062·696a·6563·7469·6f6e·3c2f··is·a·bijection</ | ||
000077d0:·6833·3e0a·0a3c·2f64·6976·3e0a·3c64·6976··h3>..</div>.<div | 000077d0:·6833·3e0a·0a3c·2f64·6976·3e0a·3c64·6976··h3>..</div>.<div | ||
000077e0:·2063·6c61·7373·3d22·636f·6465·223e·0a0a···class="code">.. | 000077e0:·2063·6c61·7373·3d22·636f·6465·223e·0a0a···class="code">.. | ||
000077f0:·3c62·722f·3e0a·0a3c·6272·2f3e·0a3c·7370··<br/>..<br/>.<sp | 000077f0:·3c62·722f·3e0a·0a3c·6272·2f3e·0a3c·7370··<br/>..<br/>.<sp | ||
00007800:·616e·2063·6c61·7373·3d22·6964·2220·7469··an·class="id"·ti | 00007800:·616e·2063·6c61·7373·3d22·6964·2220·7469··an·class="id"·ti | ||
Offset 3260, 22 lines modified | Offset 3260, 22 lines modified | ||
0000cbb0:·3238·6538·3336·6162·3065·3931·6561·3765··28e836ab0e91ea7e | 0000cbb0:·3238·6538·3336·6162·3065·3931·6561·3765··28e836ab0e91ea7e | ||
0000cbc0:·3934·3266·6230·3965·3839·3866·223e·3c73··942fb09e898f"><s | 0000cbc0:·3934·3266·6230·3965·3839·3866·223e·3c73··942fb09e898f"><s | ||
0000cbd0:·7061·6e20·636c·6173·733d·2269·6422·2074··pan·class="id"·t | 0000cbd0:·7061·6e20·636c·6173·733d·2269·6422·2074··pan·class="id"·t | ||
0000cbe0:·6974·6c65·3d22·6e6f·7461·7469·6f6e·223e··itle="notation"> | 0000cbe0:·6974·6c65·3d22·6e6f·7461·7469·6f6e·223e··itle="notation"> | ||
0000cbf0:·7d3c·2f73·7061·6e3e·3c2f·613e·2e3c·6272··}</span></a>.<br | 0000cbf0:·7d3c·2f73·7061·6e3e·3c2f·613e·2e3c·6272··}</span></a>.<br | ||
0000cc00:·2f3e·0a0a·3c62·722f·3e0a·3c2f·6469·763e··/>..<br/>.</div> | 0000cc00:·2f3e·0a0a·3c62·722f·3e0a·3c2f·6469·763e··/>..<br/>.</div> | ||
0000cc10:·0a0a·3c64·6976·2063·6c61·7373·3d22·646f··..<div·class="do | 0000cc10:·0a0a·3c64·6976·2063·6c61·7373·3d22·646f··..<div·class="do | ||
0000cc20:·6322·3e0a·3c61·2069·643d·226c·6162·3 | 0000cc20:·6322·3e0a·3c61·2069·643d·226c·6162·3930··c">.<a·id="lab90 | ||
0000cc30:·3 | 0000cc30:·3622·3e3c·2f61·3e3c·6831·2063·6c61·7373··6"></a><h1·class | ||
0000cc40:·3d22·7365·6374·696f·6e22·3e44·6566·696e··="section">Defin | 0000cc40:·3d22·7365·6374·696f·6e22·3e44·6566·696e··="section">Defin | ||
0000cc50:·6974·696f·6e20·6f66·2061·7263·7461·6e67··ition·of·arctang | 0000cc50:·6974·696f·6e20·6f66·2061·7263·7461·6e67··ition·of·arctang | ||
0000cc60:·656e·743c·2f68·313e·0a0a·3c64·6976·2063··ent</h1>..<div·c | 0000cc60:·656e·743c·2f68·313e·0a0a·3c64·6976·2063··ent</h1>..<div·c | ||
0000cc70:·6c61·7373·3d22·7061·7261·6772·6170·6822··lass="paragraph" | 0000cc70:·6c61·7373·3d22·7061·7261·6772·6170·6822··lass="paragraph" | ||
0000cc80:·3e20·3c2f·6469·763e·0a0a·3c61·2069·643d··>·</div>..<a·id= | 0000cc80:·3e20·3c2f·6469·763e·0a0a·3c61·2069·643d··>·</div>..<a·id= | ||
0000cc90:·226c·6162·3 | 0000cc90:·226c·6162·3930·3722·3e3c·2f61·3e3c·6832··"lab907"></a><h2 | ||
0000cca0:·2063·6c61·7373·3d22·7365·6374·696f·6e22···class="section" | 0000cca0:·2063·6c61·7373·3d22·7365·6374·696f·6e22···class="section" | ||
0000ccb0:·3e44·6566·696e·6974·696f·6e20·6f66·2061··>Definition·of·a | 0000ccb0:·3e44·6566·696e·6974·696f·6e20·6f66·2061··>Definition·of·a | ||
0000ccc0:·7263·7461·6e67·656e·7420·6173·2074·6865··rctangent·as·the | 0000ccc0:·7263·7461·6e67·656e·7420·6173·2074·6865··rctangent·as·the | ||
0000ccd0:·2072·6563·6970·726f·6361·6c20·6675·6e63···reciprocal·func | 0000ccd0:·2072·6563·6970·726f·6361·6c20·6675·6e63···reciprocal·func | ||
0000cce0:·7469·6f6e·206f·6620·7461·6e67·656e·7420··tion·of·tangent· | 0000cce0:·7469·6f6e·206f·6620·7461·6e67·656e·7420··tion·of·tangent· | ||
0000ccf0:·616e·6420·7072·6f6f·6620·6f66·2074·6869··and·proof·of·thi | 0000ccf0:·616e·6420·7072·6f6f·6620·6f66·2074·6869··and·proof·of·thi | ||
0000cd00:·7320·7374·6174·7573·3c2f·6832·3e0a·0a3c··s·status</h2>..< | 0000cd00:·7320·7374·6174·7573·3c2f·6832·3e0a·0a3c··s·status</h2>..< | ||
Offset 4682, 16 lines modified | Offset 4682, 16 lines modified | ||
00012490:·7373·3d22·6964·2220·7469·746c·653d·2276··ss="id"·title="v | 00012490:·7373·3d22·6964·2220·7469·746c·653d·2276··ss="id"·title="v | ||
000124a0:·6172·6961·626c·6522·3e78·3c2f·7370·616e··ariable">x</span | 000124a0:·6172·6961·626c·6522·3e78·3c2f·7370·616e··ariable">x</span | ||
000124b0:·3e3c·2f61·3e29·253c·7370·616e·2063·6c61··></a>)%<span·cla | 000124b0:·3e3c·2f61·3e29·253c·7370·616e·2063·6c61··></a>)%<span·cla | ||
000124c0:·7373·3d22·6964·2220·7469·746c·653d·2276··ss="id"·title="v | 000124c0:·7373·3d22·6964·2220·7469·746c·653d·2276··ss="id"·title="v | ||
000124d0:·6172·223e·523c·2f73·7061·6e3e·2e3c·6272··ar">R</span>.<br | 000124d0:·6172·223e·523c·2f73·7061·6e3e·2e3c·6272··ar">R</span>.<br | ||
000124e0:·2f3e·0a0a·3c62·722f·3e0a·3c2f·6469·763e··/>..<br/>.</div> | 000124e0:·2f3e·0a0a·3c62·722f·3e0a·3c2f·6469·763e··/>..<br/>.</div> | ||
000124f0:·0a0a·3c64·6976·2063·6c61·7373·3d22·646f··..<div·class="do | 000124f0:·0a0a·3c64·6976·2063·6c61·7373·3d22·646f··..<div·class="do | ||
00012500:·6322·3e0a·3c61·2069·643d·226c·6162·3 | 00012500:·6322·3e0a·3c61·2069·643d·226c·6162·3930··c">.<a·id="lab90 | ||
00012510:·3 | 00012510:·3822·3e3c·2f61·3e3c·6832·2063·6c61·7373··8"></a><h2·class | ||
00012520:·3d22·7365·6374·696f·6e22·3e44·6572·6976··="section">Deriv | 00012520:·3d22·7365·6374·696f·6e22·3e44·6572·6976··="section">Deriv | ||
00012530:·6174·6976·6520·6f66·2061·7263·7461·6e67··ative·of·arctang | 00012530:·6174·6976·6520·6f66·2061·7263·7461·6e67··ative·of·arctang | ||
00012540:·656e·743c·2f68·323e·0a0a·3c2f·6469·763e··ent</h2>..</div> | 00012540:·656e·743c·2f68·323e·0a0a·3c2f·6469·763e··ent</h2>..</div> | ||
00012550:·0a3c·6469·7620·636c·6173·733d·2263·6f64··.<div·class="cod | 00012550:·0a3c·6469·7620·636c·6173·733d·2263·6f64··.<div·class="cod | ||
00012560:·6522·3e0a·0a3c·6272·2f3e·0a3c·7370·616e··e">..<br/>.<span | 00012560:·6522·3e0a·0a3c·6272·2f3e·0a3c·7370·616e··e">..<br/>.<span | ||
00012570:·2063·6c61·7373·3d22·6964·2220·7469·746c···class="id"·titl | 00012570:·2063·6c61·7373·3d22·6964·2220·7469·746c···class="id"·titl | ||
00012580:·653d·226b·6579·776f·7264·223e·4c65·6d6d··e="keyword">Lemm | 00012580:·653d·226b·6579·776f·7264·223e·4c65·6d6d··e="keyword">Lemm | ||
Offset 4890, 15 lines modified | Offset 4890, 15 lines modified | ||
00013190:·6331·6239·3534·3839·6430·6636·6533·6122··c1b95489d0f6e3a" | 00013190:·6331·6239·3534·3839·6430·6636·6533·6122··c1b95489d0f6e3a" | ||
000131a0:·3e3c·7370·616e·2063·6c61·7373·3d22·6964··><span·class="id | 000131a0:·3e3c·7370·616e·2063·6c61·7373·3d22·6964··><span·class="id | ||
000131b0:·2220·7469·746c·653d·226e·6f74·6174·696f··"·title="notatio | 000131b0:·2220·7469·746c·653d·226e·6f74·6174·696f··"·title="notatio | ||
000131c0:·6e22·3e29·3c2f·7370·616e·3e3c·2f61·3e29··n">)</span></a>) | 000131c0:·6e22·3e29·3c2f·7370·616e·3e3c·2f61·3e29··n">)</span></a>) | ||
000131d0:·2e3c·6272·2f3e·0a0a·3c62·722f·3e0a·3c2f··.<br/>..<br/>.</ | 000131d0:·2e3c·6272·2f3e·0a0a·3c62·722f·3e0a·3c2f··.<br/>..<br/>.</ | ||
000131e0:·6469·763e·0a0a·3c64·6976·2063·6c61·7373··div>..<div·class | 000131e0:·6469·763e·0a0a·3c64·6976·2063·6c61·7373··div>..<div·class | ||
000131f0:·3d22·646f·6322·3e0a·3c61·2069·643d·226c··="doc">.<a·id="l | 000131f0:·3d22·646f·6322·3e0a·3c61·2069·643d·226c··="doc">.<a·id="l | ||
00013200:·6162·3 | 00013200:·6162·3930·3922·3e3c·2f61·3e3c·6832·2063··ab909"></a><h2·c | ||
00013210:·6c61·7373·3d22·7365·6374·696f·6e22·3e44··lass="section">D | 00013210:·6c61·7373·3d22·7365·6374·696f·6e22·3e44··lass="section">D | ||
00013220:·6566·696e·6974·696f·6e20·6f66·2074·6865··efinition·of·the | 00013220:·6566·696e·6974·696f·6e20·6f66·2074·6865··efinition·of·the | ||
00013230:·2061·7263·7461·6e67·656e·7420·6675·6e63···arctangent·func | 00013230:·2061·7263·7461·6e67·656e·7420·6675·6e63···arctangent·func | ||
00013240:·7469·6f6e·2061·7320·7468·6520·7375·6d20··tion·as·the·sum· | 00013240:·7469·6f6e·2061·7320·7468·6520·7375·6d20··tion·as·the·sum· | ||
00013250:·6f66·2074·6865·2061·7263·7461·6e20·706f··of·the·arctan·po | 00013250:·6f66·2074·6865·2061·7263·7461·6e20·706f··of·the·arctan·po | ||
00013260:·7765·7220·7365·7269·6573·3c2f·6832·3e0a··wer·series</h2>. | 00013260:·7765·7220·7365·7269·6573·3c2f·6832·3e0a··wer·series</h2>. | ||
00013270:·0a3c·2f64·6976·3e0a·3c64·6976·2063·6c61··.</div>.<div·cla | 00013270:·0a3c·2f64·6976·3e0a·3c64·6976·2063·6c61··.</div>.<div·cla | ||
Offset 5917, 15 lines modified | Offset 5917, 15 lines modified | ||
000171c0:·3e78·3c2f·7370·616e·3e3c·2f61·3e3c·6272··>x</span></a><br | 000171c0:·3e78·3c2f·7370·616e·3e3c·2f61·3e3c·6272··>x</span></a><br | ||
000171d0:·2f3e·0a26·6e62·7370·3b3c·7370·616e·2063··/>. <span·c | 000171d0:·2f3e·0a26·6e62·7370·3b3c·7370·616e·2063··/>. <span·c | ||
000171e0:·6c61·7373·3d22·6964·2220·7469·746c·653d··lass="id"·title= | 000171e0:·6c61·7373·3d22·6964·2220·7469·746c·653d··lass="id"·title= | ||
000171f0:·226b·6579·776f·7264·223e·656e·643c·2f73··"keyword">end</s | 000171f0:·226b·6579·776f·7264·223e·656e·643c·2f73··"keyword">end</s | ||
00017200:·7061·6e3e·2e3c·6272·2f3e·0a0a·3c62·722f··pan>.<br/>..<br/ | 00017200:·7061·6e3e·2e3c·6272·2f3e·0a0a·3c62·722f··pan>.<br/>..<br/ | ||
00017210:·3e0a·3c2f·6469·763e·0a0a·3c64·6976·2063··>.</div>..<div·c | 00017210:·3e0a·3c2f·6469·763e·0a0a·3c64·6976·2063··>.</div>..<div·c | ||
00017220:·6c61·7373·3d22·646f·6322·3e0a·3c61·2069··lass="doc">.<a·i | 00017220:·6c61·7373·3d22·646f·6322·3e0a·3c61·2069··lass="doc">.<a·i | ||
00017230:·643d·226c·6162·3 | 00017230:·643d·226c·6162·3931·3022·3e3c·2f61·3e3c··d="lab910"></a>< | ||
00017240:·6832·2063·6c61·7373·3d22·7365·6374·696f··h2·class="sectio | 00017240:·6832·2063·6c61·7373·3d22·7365·6374·696f··h2·class="sectio | ||
00017250:·6e22·3e50·726f·6f66·206f·6620·7468·6520··n">Proof·of·the· | 00017250:·6e22·3e50·726f·6f66·206f·6620·7468·6520··n">Proof·of·the· | ||
Max diff block lines reached; 17630/27111 bytes (65.03%) of diff not shown. |
Offset 65, 19 lines modified | Offset 65, 19 lines modified | ||
65 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#"><span·class="id"·title="library">Rdefinitions</span></a>.<br/> | 65 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#"><span·class="id"·title="library">Rdefinitions</span></a>.<br/> |
66 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">R_scope</span>.<br/> | 66 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">R_scope</span>.<br/> |
67 | <br/> | 67 | <br/> |
68 | </div> | 68 | </div> |
69 | <div·class="doc"> | 69 | <div·class="doc"> |
70 | <a·id="lab | 70 | <a·id="lab937"></a><h1·class="section">Field·operations</h1> |
71 | <div·class="paragraph">·</div> | 71 | <div·class="paragraph">·</div> |
72 | <a·id="lab | 72 | <a·id="lab938"></a><h2·class="section">Addition</h2> |
73 | </div> | 73 | </div> |
74 | <div·class="code"> | 74 | <div·class="code"> |
75 | <br/> | 75 | <br/> |
76 | <span·class="id"·title="keyword">Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">CReal_scope</span>.<br/> | 76 | <span·class="id"·title="keyword">Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">CReal_scope</span>.<br/> |
Offset 137, 15 lines modified | Offset 137, 15 lines modified | ||
137 | #[<span·class="id"·title="var">global</span>]<br/> | 137 | #[<span·class="id"·title="var">global</span>]<br/> |
138 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Resolve</span>·<span·class="id"·title="var">Rplus_0_l</span>:·<span·class="id"·title="var">real</span>.<br/> | 138 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Resolve</span>·<span·class="id"·title="var">Rplus_0_l</span>:·<span·class="id"·title="var">real</span>.<br/> |
139 | <br/> | 139 | <br/> |
140 | </div> | 140 | </div> |
141 | <div·class="doc"> | 141 | <div·class="doc"> |
142 | <a·id="lab | 142 | <a·id="lab939"></a><h2·class="section">Multiplication</h2> |
143 | <div·class="paragraph">·</div> | 143 | <div·class="paragraph">·</div> |
144 | </div> | 144 | </div> |
145 | <div·class="code"> | 145 | <div·class="code"> |
146 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Rmult_comm"·class="idref"·href="#Rmult_comm"><span·class="id"·title="lemma">Rmult_comm</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="r1:23"·class="idref"·href="#r1:23"><span·class="id"·title="binder">r1</span></a>·<a·id="r2:24"·class="idref"·href="#r2:24"><span·class="id"·title="binder">r2</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Raxioms.html#r1:23"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#r2:24"><span·class="id"·title="variable">r2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#r2:24"><span·class="id"·title="variable">r2</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#r1:23"><span·class="id"·title="variable">r1</span></a>.<br/> | 146 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Rmult_comm"·class="idref"·href="#Rmult_comm"><span·class="id"·title="lemma">Rmult_comm</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="r1:23"·class="idref"·href="#r1:23"><span·class="id"·title="binder">r1</span></a>·<a·id="r2:24"·class="idref"·href="#r2:24"><span·class="id"·title="binder">r2</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Raxioms.html#r1:23"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#r2:24"><span·class="id"·title="variable">r2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#r2:24"><span·class="id"·title="variable">r2</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#r1:23"><span·class="id"·title="variable">r1</span></a>.<br/> |
Offset 172, 15 lines modified | Offset 172, 15 lines modified | ||
172 | #[<span·class="id"·title="var">global</span>]<br/> | 172 | #[<span·class="id"·title="var">global</span>]<br/> |
173 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Resolve</span>·<span·class="id"·title="var">R1_neq_R0</span>:·<span·class="id"·title="var">real</span>.<br/> | 173 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Resolve</span>·<span·class="id"·title="var">R1_neq_R0</span>:·<span·class="id"·title="var">real</span>.<br/> |
174 | <br/> | 174 | <br/> |
175 | </div> | 175 | </div> |
176 | <div·class="doc"> | 176 | <div·class="doc"> |
177 | <a·id="lab4 | 177 | <a·id="lab940"></a><h2·class="section">Distributivity</h2> |
178 | <div·class="paragraph">·</div> | 178 | <div·class="paragraph">·</div> |
179 | </div> | 179 | </div> |
180 | <div·class="code"> | 180 | <div·class="code"> |
181 | <span·class="id"·title="keyword">Lemma</span><br/> | 181 | <span·class="id"·title="keyword">Lemma</span><br/> |
Offset 188, 19 lines modified | Offset 188, 19 lines modified | ||
188 | #[<span·class="id"·title="var">global</span>]<br/> | 188 | #[<span·class="id"·title="var">global</span>]<br/> |
189 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Resolve</span>·<span·class="id"·title="var">Rmult_plus_distr_l</span>:·<span·class="id"·title="var">real</span>.<br/> | 189 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Resolve</span>·<span·class="id"·title="var">Rmult_plus_distr_l</span>:·<span·class="id"·title="var">real</span>.<br/> |
190 | <br/> | 190 | <br/> |
191 | </div> | 191 | </div> |
192 | <div·class="doc"> | 192 | <div·class="doc"> |
193 | <a·id="lab4 | 193 | <a·id="lab941"></a><h1·class="section">Order</h1> |
194 | <div·class="paragraph">·</div> | 194 | <div·class="paragraph">·</div> |
195 | <a·id="lab | 195 | <a·id="lab942"></a><h2·class="section">Lower</h2> |
196 | <div·class="paragraph">·</div> | 196 | <div·class="paragraph">·</div> |
197 | </div> | 197 | </div> |
198 | <div·class="code"> | 198 | <div·class="code"> |
199 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Rlt_asym"·class="idref"·href="#Rlt_asym"><span·class="id"·title="lemma">Rlt_asym</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="r1:33"·class="idref"·href="#r1:33"><span·class="id"·title="binder">r1</span></a>·<a·id="r2:34"·class="idref"·href="#r2:34"><span·class="id"·title="binder">r2</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Raxioms.html#r1:33"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#r2:34"><span·class="id"·title="variable">r2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#r2:34"><span·class="id"·title="variable">r2</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#r1:33"><span·class="id"·title="variable">r1</span></a>.<br/> | 199 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Rlt_asym"·class="idref"·href="#Rlt_asym"><span·class="id"·title="lemma">Rlt_asym</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="r1:33"·class="idref"·href="#r1:33"><span·class="id"·title="binder">r1</span></a>·<a·id="r2:34"·class="idref"·href="#r2:34"><span·class="id"·title="binder">r2</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Raxioms.html#r1:33"><span·class="id"·title="variable">r1</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#r2:34"><span·class="id"·title="variable">r2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#r2:34"><span·class="id"·title="variable">r2</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#r1:33"><span·class="id"·title="variable">r1</span></a>.<br/> |
Offset 218, 15 lines modified | Offset 218, 15 lines modified | ||
218 | #[<span·class="id"·title="var">global</span>]<br/> | 218 | #[<span·class="id"·title="var">global</span>]<br/> |
219 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Resolve</span>·<span·class="id"·title="var">Rlt_asym</span>·<span·class="id"·title="var">Rplus_lt_compat_l</span>·<span·class="id"·title="var">Rmult_lt_compat_l</span>:·<span·class="id"·title="var">real</span>.<br/> | 219 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Resolve</span>·<span·class="id"·title="var">Rlt_asym</span>·<span·class="id"·title="var">Rplus_lt_compat_l</span>·<span·class="id"·title="var">Rmult_lt_compat_l</span>:·<span·class="id"·title="var">real</span>.<br/> |
220 | <br/> | 220 | <br/> |
221 | </div> | 221 | </div> |
222 | <div·class="doc"> | 222 | <div·class="doc"> |
223 | <a·id="lab | 223 | <a·id="lab943"></a><h1·class="section">Injection·from·N·to·R</h1> |
224 | <div·class="paragraph">·</div> | 224 | <div·class="paragraph">·</div> |
225 | </div> | 225 | </div> |
226 | <div·class="code"> | 226 | <div·class="code"> |
227 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="INR"·class="idref"·href="#INR"><span·class="id"·title="definition">INR</span></a>·(<a·id="n:44"·class="idref"·href="#n:44"><span·class="id"·title="binder">n</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=<br/> | 227 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="INR"·class="idref"·href="#INR"><span·class="id"·title="definition">INR</span></a>·(<a·id="n:44"·class="idref"·href="#n:44"><span·class="id"·title="binder">n</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=<br/> |
Offset 237, 15 lines modified | Offset 237, 15 lines modified | ||
237 | <span·class="id"·title="keyword">end</span>.<br/> | 237 | <span·class="id"·title="keyword">end</span>.<br/> |
238 | <span·class="id"·title="keyword">Arguments</span>·<a·class="idref"·href="Coq.Reals.Raxioms.html#INR"><span·class="id"·title="definition">INR</span></a>·<span·class="id"·title="var">n</span>%<span·class="id"·title="var">_nat</span>.<br/> | 238 | <span·class="id"·title="keyword">Arguments</span>·<a·class="idref"·href="Coq.Reals.Raxioms.html#INR"><span·class="id"·title="definition">INR</span></a>·<span·class="id"·title="var">n</span>%<span·class="id"·title="var">_nat</span>.<br/> |
239 | <br/> | 239 | <br/> |
240 | </div> | 240 | </div> |
241 | <div·class="doc"> | 241 | <div·class="doc"> |
242 | <a·id="lab | 242 | <a·id="lab944"></a><h1·class="section"><span·class="inlinecode"><span·class="id"·title="var">R</span></span>·Archimedean</h1> |
243 | </div> | 243 | </div> |
244 | <div·class="code"> | 244 | <div·class="code"> |
245 | <br/> | 245 | <br/> |
246 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Rrepr_INR"·class="idref"·href="#Rrepr_INR"><span·class="id"·title="lemma">Rrepr_INR</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:47"·class="idref"·href="#n:47"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>,<br/> | 246 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Rrepr_INR"·class="idref"·href="#Rrepr_INR"><span·class="id"·title="lemma">Rrepr_INR</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:47"·class="idref"·href="#n:47"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>,<br/> |
247 | <a·class="idref"·href="Coq.Reals.Cauchy.ConstructiveCauchyReals.html#CRealEq"><span·class="id"·title="definition">CRealEq</span></a>·(<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.Rrepr"><span·class="id"·title="axiom">Rrepr</span></a>·(<a·class="idref"·href="Coq.Reals.Raxioms.html#INR"><span·class="id"·title="definition">INR</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#n:47"><span·class="id"·title="variable">n</span></a>))·(<a·class="idref"·href="Coq.Reals.Cauchy.ConstructiveCauchyReals.html#inject_Z"><span·class="id"·title="definition">inject_Z</span></a>·(<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.of_nat"><span·class="id"·title="definition">Z.of_nat</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#n:47"><span·class="id"·title="variable">n</span></a>)).<br/> | 247 | <a·class="idref"·href="Coq.Reals.Cauchy.ConstructiveCauchyReals.html#CRealEq"><span·class="id"·title="definition">CRealEq</span></a>·(<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.Rrepr"><span·class="id"·title="axiom">Rrepr</span></a>·(<a·class="idref"·href="Coq.Reals.Raxioms.html#INR"><span·class="id"·title="definition">INR</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#n:47"><span·class="id"·title="variable">n</span></a>))·(<a·class="idref"·href="Coq.Reals.Cauchy.ConstructiveCauchyReals.html#inject_Z"><span·class="id"·title="definition">inject_Z</span></a>·(<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.of_nat"><span·class="id"·title="definition">Z.of_nat</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#n:47"><span·class="id"·title="variable">n</span></a>)).<br/> |
Offset 265, 15 lines modified | Offset 265, 15 lines modified | ||
265 | <br/> | 265 | <br/> |
266 | <span·class="id"·title="keyword">Lemma</span>·<a·id="archimed"·class="idref"·href="#archimed"><span·class="id"·title="lemma">archimed</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="r:51"·class="idref"·href="#r:51"><span·class="id"·title="binder">r</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#IZR"><span·class="id"·title="definition">IZR</span></a>·(<a·class="idref"·href="Coq.Reals.Rdefinitions.html#up"><span·class="id"·title="definition">up</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#r:51"><span·class="id"·title="variable">r</span></a>)·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#r:51"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#IZR"><span·class="id"·title="definition">IZR</span></a>·(<a·class="idref"·href="Coq.Reals.Rdefinitions.html#up"><span·class="id"·title="definition">up</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#r:51"><span·class="id"·title="variable">r</span></a>)·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#r:51"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·1.<br/> | 266 | <span·class="id"·title="keyword">Lemma</span>·<a·id="archimed"·class="idref"·href="#archimed"><span·class="id"·title="lemma">archimed</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="r:51"·class="idref"·href="#r:51"><span·class="id"·title="binder">r</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#IZR"><span·class="id"·title="definition">IZR</span></a>·(<a·class="idref"·href="Coq.Reals.Rdefinitions.html#up"><span·class="id"·title="definition">up</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#r:51"><span·class="id"·title="variable">r</span></a>)·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#r:51"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#IZR"><span·class="id"·title="definition">IZR</span></a>·(<a·class="idref"·href="Coq.Reals.Rdefinitions.html#up"><span·class="id"·title="definition">up</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#r:51"><span·class="id"·title="variable">r</span></a>)·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#r:51"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·1.<br/> |
267 | <br/> | 267 | <br/> |
268 | </div> | 268 | </div> |
269 | <div·class="doc"> | 269 | <div·class="doc"> |
270 | <a·id="lab | 270 | <a·id="lab945"></a><h1·class="section"><span·class="inlinecode"><span·class="id"·title="var">R</span></span>·Complete</h1> |
271 | <div·class="paragraph">·</div> | 271 | <div·class="paragraph">·</div> |
272 | </div> | 272 | </div> |
273 | <div·class="code"> | 273 | <div·class="code"> |
274 | <span·class="id"·title="keyword">Definition</span>·<a·id="is_upper_bound"·class="idref"·href="#is_upper_bound"><span·class="id"·title="definition">is_upper_bound</span></a>·(<a·id="E:52"·class="idref"·href="#E:52"><span·class="id"·title="binder">E</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>)·(<a·id="m:53"·class="idref"·href="#m:53"><span·class="id"·title="binder">m</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:=·<span·class="id"·title="keyword">forall</span>·<a·id="x:54"·class="idref"·href="#x:54"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Raxioms.html#E:52"><span·class="id"·title="variable">E</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#x:54"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#x:54"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#m:53"><span·class="id"·title="variable">m</span></a>.<br/> | 274 | <span·class="id"·title="keyword">Definition</span>·<a·id="is_upper_bound"·class="idref"·href="#is_upper_bound"><span·class="id"·title="definition">is_upper_bound</span></a>·(<a·id="E:52"·class="idref"·href="#E:52"><span·class="id"·title="binder">E</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>)·(<a·id="m:53"·class="idref"·href="#m:53"><span·class="id"·title="binder">m</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:=·<span·class="id"·title="keyword">forall</span>·<a·id="x:54"·class="idref"·href="#x:54"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Raxioms.html#E:52"><span·class="id"·title="variable">E</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#x:54"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#x:54"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#m:53"><span·class="id"·title="variable">m</span></a>.<br/> |
Offset 61, 15 lines modified | Offset 61, 15 lines modified | ||
61 | <br/> | 61 | <br/> |
62 | <span·class="id"·title="keyword">Implicit</span>·<span·class="id"·title="keyword">Type</span>·<span·class="id"·title="var">r</span>·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>.<br/> | 62 | <span·class="id"·title="keyword">Implicit</span>·<span·class="id"·title="keyword">Type</span>·<span·class="id"·title="var">r</span>·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>.<br/> |
63 | <br/> | 63 | <br/> |
64 | </div> | 64 | </div> |
65 | <div·class="doc"> | 65 | <div·class="doc"> |
66 | <a·id="lab | 66 | <a·id="lab926"></a><h1·class="section">Rmin</h1> |
67 | <div·class="paragraph">·</div> | 67 | <div·class="paragraph">·</div> |
68 | </div> | 68 | </div> |
69 | <div·class="code"> | 69 | <div·class="code"> |
70 | <span·class="id"·title="keyword">Definition</span>·<a·id="Rmin"·class="idref"·href="#Rmin"><span·class="id"·title="definition">Rmin</span></a>·(<a·id="x:1"·class="idref"·href="#x:1"><span·class="id"·title="binder">x</span></a>·<a·id="y:2"·class="idref"·href="#y:2"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=<br/> | 70 | <span·class="id"·title="keyword">Definition</span>·<a·id="Rmin"·class="idref"·href="#Rmin"><span·class="id"·title="definition">Rmin</span></a>·(<a·id="x:1"·class="idref"·href="#x:1"><span·class="id"·title="binder">x</span></a>·<a·id="y:2"·class="idref"·href="#y:2"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=<br/> |
Offset 127, 15 lines modified | Offset 127, 15 lines modified | ||
127 | <br/> | 127 | <br/> |
128 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Rmin_glb_lt"·class="idref"·href="#Rmin_glb_lt"><span·class="id"·title="lemma">Rmin_glb_lt</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:41"·class="idref"·href="#x:41"><span·class="id"·title="binder">x</span></a>·<a·id="y:42"·class="idref"·href="#y:42"><span·class="id"·title="binder">y</span></a>·<a·id="z:43"·class="idref"·href="#z:43"><span·class="id"·title="binder">z</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#z:43"><span·class="id"·title="variable">z</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#x:41"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#z:43"><span·class="id"·title="variable">z</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#y:42"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#z:43"><span·class="id"·title="variable">z</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#Rmin"><span·class="id"·title="definition">Rmin</span></a>·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#x:41"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#y:42"><span·class="id"·title="variable">y</span></a>.<br/> | 128 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Rmin_glb_lt"·class="idref"·href="#Rmin_glb_lt"><span·class="id"·title="lemma">Rmin_glb_lt</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:41"·class="idref"·href="#x:41"><span·class="id"·title="binder">x</span></a>·<a·id="y:42"·class="idref"·href="#y:42"><span·class="id"·title="binder">y</span></a>·<a·id="z:43"·class="idref"·href="#z:43"><span·class="id"·title="binder">z</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#z:43"><span·class="id"·title="variable">z</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#x:41"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#z:43"><span·class="id"·title="variable">z</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#y:42"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#z:43"><span·class="id"·title="variable">z</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#Rmin"><span·class="id"·title="definition">Rmin</span></a>·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#x:41"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#y:42"><span·class="id"·title="variable">y</span></a>.<br/> |
129 | <br/> | 129 | <br/> |
130 | </div> | 130 | </div> |
131 | <div·class="doc"> | 131 | <div·class="doc"> |
132 | <a·id="lab | 132 | <a·id="lab927"></a><h1·class="section">Rmax</h1> |
133 | <div·class="paragraph">·</div> | 133 | <div·class="paragraph">·</div> |
134 | </div> | 134 | </div> |
135 | <div·class="code"> | 135 | <div·class="code"> |
136 | <span·class="id"·title="keyword">Definition</span>·<a·id="Rmax"·class="idref"·href="#Rmax"><span·class="id"·title="definition">Rmax</span></a>·(<a·id="x:44"·class="idref"·href="#x:44"><span·class="id"·title="binder">x</span></a>·<a·id="y:45"·class="idref"·href="#y:45"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=<br/> | 136 | <span·class="id"·title="keyword">Definition</span>·<a·id="Rmax"·class="idref"·href="#Rmax"><span·class="id"·title="definition">Rmax</span></a>·(<a·id="x:44"·class="idref"·href="#x:44"><span·class="id"·title="binder">x</span></a>·<a·id="y:45"·class="idref"·href="#y:45"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=<br/> |
Offset 199, 15 lines modified | Offset 199, 15 lines modified | ||
199 | <br/> | 199 | <br/> |
200 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Rmax_neg"·class="idref"·href="#Rmax_neg"><span·class="id"·title="lemma">Rmax_neg</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:85"·class="idref"·href="#x:85"><span·class="id"·title="binder">x</span></a>·<a·id="y:86"·class="idref"·href="#y:86"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#x:85"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#y:86"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#Rmax"><span·class="id"·title="definition">Rmax</span></a>·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#x:85"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#y:86"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·0.<br/> | 200 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Rmax_neg"·class="idref"·href="#Rmax_neg"><span·class="id"·title="lemma">Rmax_neg</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:85"·class="idref"·href="#x:85"><span·class="id"·title="binder">x</span></a>·<a·id="y:86"·class="idref"·href="#y:86"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#x:85"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#y:86"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#Rmax"><span·class="id"·title="definition">Rmax</span></a>·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#x:85"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#y:86"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·0.<br/> |
201 | <br/> | 201 | <br/> |
202 | </div> | 202 | </div> |
203 | <div·class="doc"> | 203 | <div·class="doc"> |
204 | <a·id="lab | 204 | <a·id="lab928"></a><h1·class="section">Rabsolu</h1> |
205 | <div·class="paragraph">·</div> | 205 | <div·class="paragraph">·</div> |
206 | </div> | 206 | </div> |
207 | <div·class="code"> | 207 | <div·class="code"> |
208 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Rcase_abs"·class="idref"·href="#Rcase_abs"><span·class="id"·title="lemma">Rcase_abs</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="r:87"·class="idref"·href="#r:87"><span·class="id"·title="binder">r</span></a>,·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.Reals.Rbasic_fun.html#r:87"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·0<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.Reals.Rbasic_fun.html#r:87"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#7822f196a19e8673dbc60a529f728eb7"><span·class="id"·title="notation">>=</span></a>·0<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>.<br/> | 208 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Rcase_abs"·class="idref"·href="#Rcase_abs"><span·class="id"·title="lemma">Rcase_abs</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="r:87"·class="idref"·href="#r:87"><span·class="id"·title="binder">r</span></a>,·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.Reals.Rbasic_fun.html#r:87"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·0<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.Reals.Rbasic_fun.html#r:87"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#7822f196a19e8673dbc60a529f728eb7"><span·class="id"·title="notation">>=</span></a>·0<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>.<br/> |
Offset 174, 15 lines modified | Offset 174, 15 lines modified | ||
174 | <span·class="id"·title="keyword">Notation</span>·<a·id="::R_scope:x_'<'_x_'<'_x"·class="idref"·href="#::R_scope:x_'<'_x_'<'_x"><span·class="id"·title="notation">"</span></a>x·<·y·<·z"···:=·(<span·class="id"·title="var">x</span>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>··<span·class="id"·title="var">y</span>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<span·class="id"·title="var">y</span>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>··<span·class="id"·title="var">z</span>)·:·<span·class="id"·title="var">R_scope</span>.<br/> | 174 | <span·class="id"·title="keyword">Notation</span>·<a·id="::R_scope:x_'<'_x_'<'_x"·class="idref"·href="#::R_scope:x_'<'_x_'<'_x"><span·class="id"·title="notation">"</span></a>x·<·y·<·z"···:=·(<span·class="id"·title="var">x</span>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>··<span·class="id"·title="var">y</span>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<span·class="id"·title="var">y</span>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>··<span·class="id"·title="var">z</span>)·:·<span·class="id"·title="var">R_scope</span>.<br/> |
175 | <span·class="id"·title="keyword">Notation</span>·<a·id="655439258f20e6256090528bc533ae29"·class="idref"·href="#655439258f20e6256090528bc533ae29"><span·class="id"·title="notation">"</span></a>x·<·y·<=·z"··:=·(<span·class="id"·title="var">x</span>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>··<span·class="id"·title="var">y</span>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<span·class="id"·title="var">y</span>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<span·class="id"·title="var">z</span>)·:·<span·class="id"·title="var">R_scope</span>.<br/> | 175 | <span·class="id"·title="keyword">Notation</span>·<a·id="655439258f20e6256090528bc533ae29"·class="idref"·href="#655439258f20e6256090528bc533ae29"><span·class="id"·title="notation">"</span></a>x·<·y·<=·z"··:=·(<span·class="id"·title="var">x</span>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>··<span·class="id"·title="var">y</span>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<span·class="id"·title="var">y</span>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<span·class="id"·title="var">z</span>)·:·<span·class="id"·title="var">R_scope</span>.<br/> |
176 | <br/> | 176 | <br/> |
177 | </div> | 177 | </div> |
178 | <div·class="doc"> | 178 | <div·class="doc"> |
179 | <a·id="lab | 179 | <a·id="lab929"></a><h1·class="section">Injection·from·<span·class="inlinecode"><span·class="id"·title="var">Z</span></span>·to·<span·class="inlinecode"><span·class="id"·title="var">R</span></span></h1> |
180 | </div> | 180 | </div> |
181 | <div·class="code"> | 181 | <div·class="code"> |
182 | <br/> | 182 | <br/> |
183 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="IPR_2"·class="idref"·href="#IPR_2"><span·class="id"·title="definition">IPR_2</span></a>·(<a·id="p:67"·class="idref"·href="#p:67"><span·class="id"·title="binder">p</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#positive"><span·class="id"·title="inductive">positive</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#R"><span·class="id"·title="abbreviation">R</span></a>·:=<br/> | 183 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="IPR_2"·class="idref"·href="#IPR_2"><span·class="id"·title="definition">IPR_2</span></a>·(<a·id="p:67"·class="idref"·href="#p:67"><span·class="id"·title="binder">p</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#positive"><span·class="id"·title="inductive">positive</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#R"><span·class="id"·title="abbreviation">R</span></a>·:=<br/> |
184 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#p:67"><span·class="id"·title="variable">p</span></a>·<span·class="id"·title="keyword">with</span><br/> | 184 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#p:67"><span·class="id"·title="variable">p</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 262, 15 lines modified | Offset 262, 15 lines modified | ||
262 | <br/> | 262 | <br/> |
263 | <span·class="id"·title="keyword">Definition</span>·<a·id="Q2R"·class="idref"·href="#Q2R"><span·class="id"·title="definition">Q2R</span></a>·(<a·id="x:89"·class="idref"·href="#x:89"><span·class="id"·title="binder">x</span></a>·:·<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#R"><span·class="id"·title="abbreviation">R</span></a>·:=·(<a·class="idref"·href="Coq.Reals.Rdefinitions.html#IZR"><span·class="id"·title="definition">IZR</span></a>·(<a·class="idref"·href="Coq.QArith.QArith_base.html#Qnum"><span·class="id"·title="projection">Qnum</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#x:89"><span·class="id"·title="variable">x</span></a>)·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#2299a6ef56270a66cc1b95489d0f6e3a"><span·class="id"·title="notation">/</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#IZR"><span·class="id"·title="definition">IZR</span></a>·(<a·class="idref"·href="Coq.QArith.QArith_base.html#QDen"><span·class="id"·title="abbreviation">QDen</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#x:89"><span·class="id"·title="variable">x</span></a>))%<span·class="id"·title="var">R</span>.<br/> | 263 | <span·class="id"·title="keyword">Definition</span>·<a·id="Q2R"·class="idref"·href="#Q2R"><span·class="id"·title="definition">Q2R</span></a>·(<a·id="x:89"·class="idref"·href="#x:89"><span·class="id"·title="binder">x</span></a>·:·<a·class="idref"·href="Coq.QArith.QArith_base.html#Q"><span·class="id"·title="record">Q</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#R"><span·class="id"·title="abbreviation">R</span></a>·:=·(<a·class="idref"·href="Coq.Reals.Rdefinitions.html#IZR"><span·class="id"·title="definition">IZR</span></a>·(<a·class="idref"·href="Coq.QArith.QArith_base.html#Qnum"><span·class="id"·title="projection">Qnum</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#x:89"><span·class="id"·title="variable">x</span></a>)·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#2299a6ef56270a66cc1b95489d0f6e3a"><span·class="id"·title="notation">/</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#IZR"><span·class="id"·title="definition">IZR</span></a>·(<a·class="idref"·href="Coq.QArith.QArith_base.html#QDen"><span·class="id"·title="abbreviation">QDen</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#x:89"><span·class="id"·title="variable">x</span></a>))%<span·class="id"·title="var">R</span>.<br/> |
264 | <br/> | 264 | <br/> |
265 | </div> | 265 | </div> |
266 | <div·class="doc"> | 266 | <div·class="doc"> |
267 | <a·id="lab | 267 | <a·id="lab930"></a><h1·class="section">Number·notation·for·constants</h1> |
268 | </div> | 268 | </div> |
269 | <div·class="code"> | 269 | <div·class="code"> |
270 | <br/> | 270 | <br/> |
271 | <span·class="id"·title="keyword">Inductive</span>·<a·id="IR"·class="idref"·href="#IR"><span·class="id"·title="definition,·inductive"><span·id="IR_rect"·class="id"><span·id="IR_ind"·class="id"><span·id="IR_rec"·class="id"><span·id="IR_sind"·class="id">IR</span></span></span></span></span></a>·:=<br/> | 271 | <span·class="id"·title="keyword">Inductive</span>·<a·id="IR"·class="idref"·href="#IR"><span·class="id"·title="definition,·inductive"><span·id="IR_rect"·class="id"><span·id="IR_ind"·class="id"><span·id="IR_rec"·class="id"><span·id="IR_sind"·class="id">IR</span></span></span></span></span></a>·:=<br/> |
272 | |·<a·id="IRZ"·class="idref"·href="#IRZ"><span·class="id"·title="constructor">IRZ</span></a>·:·<a·class="idref"·href="Coq.QArith.QArith_base.html#IZ"><span·class="id"·title="inductive">IZ</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#IR:90"><span·class="id"·title="inductive">IR</span></a><br/> | 272 | |·<a·id="IRZ"·class="idref"·href="#IRZ"><span·class="id"·title="constructor">IRZ</span></a>·:·<a·class="idref"·href="Coq.QArith.QArith_base.html#IZ"><span·class="id"·title="inductive">IZ</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#IR:90"><span·class="id"·title="inductive">IR</span></a><br/> |
Offset 70, 15 lines modified | Offset 70, 15 lines modified | ||
70 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">nat_scope</span>.<br/> | 70 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">nat_scope</span>.<br/> |
71 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">R_scope</span>.<br/> | 71 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">R_scope</span>.<br/> |
72 | <br/> | 72 | <br/> |
73 | </div> | 73 | </div> |
74 | <div·class="doc"> | 74 | <div·class="doc"> |
75 | <a·id="lab | 75 | <a·id="lab767"></a><h1·class="section">Lemmas·about·factorial</h1> |
76 | </div> | 76 | </div> |
77 | <div·class="code"> | 77 | <div·class="code"> |
78 | <span·class="id"·title="keyword">Lemma</span>·<a·id="INR_fact_neq_0"·class="idref"·href="#INR_fact_neq_0"><span·class="id"·title="lemma">INR_fact_neq_0</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:1"·class="idref"·href="#n:1"><span·class="id"·title="binder">n</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>,·<a·class="idref"·href="Coq.Reals.Raxioms.html#INR"><span·class="id"·title="definition">INR</span></a>·(<a·class="idref"·href="Coq.Arith.Factorial.html#fact"><span·class="id"·title="definition">fact</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#n:1"><span·class="id"·title="variable">n</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·0.<br/> | 78 | <span·class="id"·title="keyword">Lemma</span>·<a·id="INR_fact_neq_0"·class="idref"·href="#INR_fact_neq_0"><span·class="id"·title="lemma">INR_fact_neq_0</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:1"·class="idref"·href="#n:1"><span·class="id"·title="binder">n</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>,·<a·class="idref"·href="Coq.Reals.Raxioms.html#INR"><span·class="id"·title="definition">INR</span></a>·(<a·class="idref"·href="Coq.Arith.Factorial.html#fact"><span·class="id"·title="definition">fact</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#n:1"><span·class="id"·title="variable">n</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·0.<br/> |
79 | <br/> | 79 | <br/> |
80 | <span·class="id"·title="keyword">Lemma</span>·<a·id="fact_simpl"·class="idref"·href="#fact_simpl"><span·class="id"·title="lemma">fact_simpl</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:2"·class="idref"·href="#n:2"><span·class="id"·title="binder">n</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>,·<a·class="idref"·href="Coq.Arith.Factorial.html#fact"><span·class="id"·title="definition">fact</span></a>·(<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#n:2"><span·class="id"·title="variable">n</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·(<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#n:2"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Peano.html#ea2ff3d561159081cea6fb2e8113cc54"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Arith.Factorial.html#fact"><span·class="id"·title="definition">fact</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#n:2"><span·class="id"·title="variable">n</span></a>)%<span·class="id"·title="var">nat</span>.<br/> | 80 | <span·class="id"·title="keyword">Lemma</span>·<a·id="fact_simpl"·class="idref"·href="#fact_simpl"><span·class="id"·title="lemma">fact_simpl</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:2"·class="idref"·href="#n:2"><span·class="id"·title="binder">n</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>,·<a·class="idref"·href="Coq.Arith.Factorial.html#fact"><span·class="id"·title="definition">fact</span></a>·(<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#n:2"><span·class="id"·title="variable">n</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·(<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#n:2"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Peano.html#ea2ff3d561159081cea6fb2e8113cc54"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Arith.Factorial.html#fact"><span·class="id"·title="definition">fact</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#n:2"><span·class="id"·title="variable">n</span></a>)%<span·class="id"·title="var">nat</span>.<br/> |
Offset 87, 15 lines modified | Offset 87, 15 lines modified | ||
87 | <span·class="id"·title="keyword">Lemma</span>·<a·id="simpl_fact"·class="idref"·href="#simpl_fact"><span·class="id"·title="lemma">simpl_fact</span></a>·:<br/> | 87 | <span·class="id"·title="keyword">Lemma</span>·<a·id="simpl_fact"·class="idref"·href="#simpl_fact"><span·class="id"·title="lemma">simpl_fact</span></a>·:<br/> |
88 | <span·class="id"·title="keyword">forall</span>·<a·id="n:3"·class="idref"·href="#n:3"><span·class="id"·title="binder">n</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>,·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#2299a6ef56270a66cc1b95489d0f6e3a"><span·class="id"·title="notation">/</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#INR"><span·class="id"·title="definition">INR</span></a>·(<a·class="idref"·href="Coq.Arith.Factorial.html#fact"><span·class="id"·title="definition">fact</span></a>·(<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#n:3"><span·class="id"·title="variable">n</span></a>))·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#2299a6ef56270a66cc1b95489d0f6e3a"><span·class="id"·title="notation">/</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#2299a6ef56270a66cc1b95489d0f6e3a"><span·class="id"·title="notation">/</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#INR"><span·class="id"·title="definition">INR</span></a>·(<a·class="idref"·href="Coq.Arith.Factorial.html#fact"><span·class="id"·title="definition">fact</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#n:3"><span·class="id"·title="variable">n</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#2299a6ef56270a66cc1b95489d0f6e3a"><span·class="id"·title="notation">/</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#INR"><span·class="id"·title="definition">INR</span></a>·(<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#n:3"><span·class="id"·title="variable">n</span></a>).<br/> | 88 | <span·class="id"·title="keyword">forall</span>·<a·id="n:3"·class="idref"·href="#n:3"><span·class="id"·title="binder">n</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>,·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#2299a6ef56270a66cc1b95489d0f6e3a"><span·class="id"·title="notation">/</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#INR"><span·class="id"·title="definition">INR</span></a>·(<a·class="idref"·href="Coq.Arith.Factorial.html#fact"><span·class="id"·title="definition">fact</span></a>·(<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#n:3"><span·class="id"·title="variable">n</span></a>))·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#2299a6ef56270a66cc1b95489d0f6e3a"><span·class="id"·title="notation">/</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#2299a6ef56270a66cc1b95489d0f6e3a"><span·class="id"·title="notation">/</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#INR"><span·class="id"·title="definition">INR</span></a>·(<a·class="idref"·href="Coq.Arith.Factorial.html#fact"><span·class="id"·title="definition">fact</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#n:3"><span·class="id"·title="variable">n</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#2299a6ef56270a66cc1b95489d0f6e3a"><span·class="id"·title="notation">/</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#INR"><span·class="id"·title="definition">INR</span></a>·(<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#n:3"><span·class="id"·title="variable">n</span></a>).<br/> |
89 | <br/> | 89 | <br/> |
90 | </div> | 90 | </div> |
91 | <div·class="doc"> | 91 | <div·class="doc"> |
92 | <a·id="lab | 92 | <a·id="lab768"></a><h1·class="section">Power</h1> |
93 | </div> | 93 | </div> |
94 | <div·class="code"> | 94 | <div·class="code"> |
95 | <br/> | 95 | <br/> |
96 | <span·class="id"·title="keyword">Infix</span>·<a·id="1fc859ef9f60fc2e3a52c48371d07707"·class="idref"·href="#1fc859ef9f60fc2e3a52c48371d07707"><span·class="id"·title="notation">"</span></a>^"·:=·<a·class="idref"·href="Coq.Reals.Rpow_def.html#pow"><span·class="id"·title="definition">pow</span></a>·:·<span·class="id"·title="var">R_scope</span>.<br/> | 96 | <span·class="id"·title="keyword">Infix</span>·<a·id="1fc859ef9f60fc2e3a52c48371d07707"·class="idref"·href="#1fc859ef9f60fc2e3a52c48371d07707"><span·class="id"·title="notation">"</span></a>^"·:=·<a·class="idref"·href="Coq.Reals.Rpow_def.html#pow"><span·class="id"·title="definition">pow</span></a>·:·<span·class="id"·title="var">R_scope</span>.<br/> |
Offset 226, 15 lines modified | Offset 226, 15 lines modified | ||
226 | <br/> | 226 | <br/> |
227 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Rsqr_pow2"·class="idref"·href="#Rsqr_pow2"><span·class="id"·title="lemma">Rsqr_pow2</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:111"·class="idref"·href="#x:111"><span·class="id"·title="binder">x</span></a>,·<a·class="idref"·href="Coq.Reals.RIneq.html#Rsqr"><span·class="id"·title="definition">Rsqr</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#x:111"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#x:111"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#1fc859ef9f60fc2e3a52c48371d07707"><span·class="id"·title="notation">^</span></a>·2.<br/> | 227 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Rsqr_pow2"·class="idref"·href="#Rsqr_pow2"><span·class="id"·title="lemma">Rsqr_pow2</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:111"·class="idref"·href="#x:111"><span·class="id"·title="binder">x</span></a>,·<a·class="idref"·href="Coq.Reals.RIneq.html#Rsqr"><span·class="id"·title="definition">Rsqr</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#x:111"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#x:111"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#1fc859ef9f60fc2e3a52c48371d07707"><span·class="id"·title="notation">^</span></a>·2.<br/> |
228 | <br/> | 228 | <br/> |
229 | </div> | 229 | </div> |
230 | <div·class="doc"> | 230 | <div·class="doc"> |
231 | <a·id="lab | 231 | <a·id="lab769"></a><h1·class="section">PowerRZ</h1> |
232 | </div> | 232 | </div> |
233 | <div·class="code"> | 233 | <div·class="code"> |
234 | <br/> | 234 | <br/> |
235 | <span·class="id"·title="keyword">Section</span>·<a·id="PowerRZ"·class="idref"·href="#PowerRZ"><span·class="id"·title="section">PowerRZ</span></a>.<br/> | 235 | <span·class="id"·title="keyword">Section</span>·<a·id="PowerRZ"·class="idref"·href="#PowerRZ"><span·class="id"·title="section">PowerRZ</span></a>.<br/> |
Offset 375, 15 lines modified | Offset 375, 15 lines modified | ||
375 | <br/> | 375 | <br/> |
376 | <span·class="id"·title="keyword">Definition</span>·<a·id="decimal_exp"·class="idref"·href="#decimal_exp"><span·class="id"·title="definition">decimal_exp</span></a>·(<a·id="r:168"·class="idref"·href="#r:168"><span·class="id"·title="binder">r</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="z:169"·class="idref"·href="#z:169"><span·class="id"·title="binder">z</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·(<a·class="idref"·href="Coq.Reals.Rfunctions.html#r:168"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·10·<a·class="idref"·href="Coq.Reals.Rfunctions.html#12a5e136bc762a6b124c9852f0671f5b"><span·class="id"·title="notation">^</span></a><a·class="idref"·href="Coq.Reals.Rfunctions.html#12a5e136bc762a6b124c9852f0671f5b"><span·class="id"·title="notation">Z</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#z:169"><span·class="id"·title="variable">z</span></a>).<br/> | 376 | <span·class="id"·title="keyword">Definition</span>·<a·id="decimal_exp"·class="idref"·href="#decimal_exp"><span·class="id"·title="definition">decimal_exp</span></a>·(<a·id="r:168"·class="idref"·href="#r:168"><span·class="id"·title="binder">r</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="z:169"·class="idref"·href="#z:169"><span·class="id"·title="binder">z</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·(<a·class="idref"·href="Coq.Reals.Rfunctions.html#r:168"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·10·<a·class="idref"·href="Coq.Reals.Rfunctions.html#12a5e136bc762a6b124c9852f0671f5b"><span·class="id"·title="notation">^</span></a><a·class="idref"·href="Coq.Reals.Rfunctions.html#12a5e136bc762a6b124c9852f0671f5b"><span·class="id"·title="notation">Z</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#z:169"><span·class="id"·title="variable">z</span></a>).<br/> |
377 | <br/> | 377 | <br/> |
378 | </div> | 378 | </div> |
379 | <div·class="doc"> | 379 | <div·class="doc"> |
380 | <a·id="lab | 380 | <a·id="lab770"></a><h1·class="section">Sum·of·n·first·naturals</h1> |
381 | </div> | 381 | </div> |
382 | <div·class="code"> | 382 | <div·class="code"> |
383 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="sum_nat_f_O"·class="idref"·href="#sum_nat_f_O"><span·class="id"·title="definition">sum_nat_f_O</span></a>·(<a·id="f:170"·class="idref"·href="#f:170"><span·class="id"·title="binder">f</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>)·(<a·id="n:171"·class="idref"·href="#n:171"><span·class="id"·title="binder">n</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>)·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·:=<br/> | 383 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="sum_nat_f_O"·class="idref"·href="#sum_nat_f_O"><span·class="id"·title="definition">sum_nat_f_O</span></a>·(<a·id="f:170"·class="idref"·href="#f:170"><span·class="id"·title="binder">f</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>)·(<a·id="n:171"·class="idref"·href="#n:171"><span·class="id"·title="binder">n</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>)·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·:=<br/> |
384 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#n:171"><span·class="id"·title="variable">n</span></a>·<span·class="id"·title="keyword">with</span><br/> | 384 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#n:171"><span·class="id"·title="variable">n</span></a>·<span·class="id"·title="keyword">with</span><br/> |
385 | |·<a·class="idref"·href="Coq.Init.Datatypes.html#O"><span·class="id"·title="constructor">O</span></a>·=>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#f:170"><span·class="id"·title="variable">f</span></a>·0%<span·class="id"·title="var">nat</span><br/> | 385 | |·<a·class="idref"·href="Coq.Init.Datatypes.html#O"><span·class="id"·title="constructor">O</span></a>·=>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#f:170"><span·class="id"·title="variable">f</span></a>·0%<span·class="id"·title="var">nat</span><br/> |
386 | |·<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<span·class="id"·title="var">n'</span>·=>·(<a·class="idref"·href="Coq.Reals.Rfunctions.html#sum_nat_f_O:172"><span·class="id"·title="definition">sum_nat_f_O</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#f:170"><span·class="id"·title="variable">f</span></a>·<span·class="id"·title="var">n'</span>·<a·class="idref"·href="Coq.Init.Peano.html#0dacc1786c5ba797d47dd85006231633"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#f:170"><span·class="id"·title="variable">f</span></a>·(<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<span·class="id"·title="var">n'</span>))%<span·class="id"·title="var">nat</span><br/> | 386 | |·<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<span·class="id"·title="var">n'</span>·=>·(<a·class="idref"·href="Coq.Reals.Rfunctions.html#sum_nat_f_O:172"><span·class="id"·title="definition">sum_nat_f_O</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#f:170"><span·class="id"·title="variable">f</span></a>·<span·class="id"·title="var">n'</span>·<a·class="idref"·href="Coq.Init.Peano.html#0dacc1786c5ba797d47dd85006231633"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#f:170"><span·class="id"·title="variable">f</span></a>·(<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<span·class="id"·title="var">n'</span>))%<span·class="id"·title="var">nat</span><br/> |
Offset 399, 15 lines modified | Offset 399, 15 lines modified | ||
399 | <br/> | 399 | <br/> |
400 | <span·class="id"·title="keyword">Definition</span>·<a·id="sum_nat"·class="idref"·href="#sum_nat"><span·class="id"·title="definition">sum_nat</span></a>·(<a·id="s:180"·class="idref"·href="#s:180"><span·class="id"·title="binder">s</span></a>·<a·id="n:181"·class="idref"·href="#n:181"><span·class="id"·title="binder">n</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>)·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·:=·<a·class="idref"·href="Coq.Reals.Rfunctions.html#sum_nat_f"><span·class="id"·title="definition">sum_nat_f</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#s:180"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#n:181"><span·class="id"·title="variable">n</span></a>·(<span·class="id"·title="keyword">fun</span>·<a·id="x:182"·class="idref"·href="#x:182"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·=>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#x:182"><span·class="id"·title="variable">x</span></a>).<br/> | 400 | <span·class="id"·title="keyword">Definition</span>·<a·id="sum_nat"·class="idref"·href="#sum_nat"><span·class="id"·title="definition">sum_nat</span></a>·(<a·id="s:180"·class="idref"·href="#s:180"><span·class="id"·title="binder">s</span></a>·<a·id="n:181"·class="idref"·href="#n:181"><span·class="id"·title="binder">n</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>)·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·:=·<a·class="idref"·href="Coq.Reals.Rfunctions.html#sum_nat_f"><span·class="id"·title="definition">sum_nat_f</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#s:180"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#n:181"><span·class="id"·title="variable">n</span></a>·(<span·class="id"·title="keyword">fun</span>·<a·id="x:182"·class="idref"·href="#x:182"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·=>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#x:182"><span·class="id"·title="variable">x</span></a>).<br/> |
401 | <br/> | 401 | <br/> |
402 | </div> | 402 | </div> |
403 | <div·class="doc"> | 403 | <div·class="doc"> |
404 | <a·id="lab | 404 | <a·id="lab771"></a><h1·class="section">Sum</h1> |
405 | </div> | 405 | </div> |
406 | <div·class="code"> | 406 | <div·class="code"> |
407 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="sum_f_R0"·class="idref"·href="#sum_f_R0"><span·class="id"·title="definition">sum_f_R0</span></a>·(<a·id="f:183"·class="idref"·href="#f:183"><span·class="id"·title="binder">f</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="N:184"·class="idref"·href="#N:184"><span·class="id"·title="binder">N</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=<br/> | 407 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="sum_f_R0"·class="idref"·href="#sum_f_R0"><span·class="id"·title="definition">sum_f_R0</span></a>·(<a·id="f:183"·class="idref"·href="#f:183"><span·class="id"·title="binder">f</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="N:184"·class="idref"·href="#N:184"><span·class="id"·title="binder">N</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=<br/> |
408 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#N:184"><span·class="id"·title="variable">N</span></a>·<span·class="id"·title="keyword">with</span><br/> | 408 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#N:184"><span·class="id"·title="variable">N</span></a>·<span·class="id"·title="keyword">with</span><br/> |
409 | |·<a·class="idref"·href="Coq.Init.Datatypes.html#O"><span·class="id"·title="constructor">O</span></a>·=>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#f:183"><span·class="id"·title="variable">f</span></a>·0%<span·class="id"·title="var">nat</span><br/> | 409 | |·<a·class="idref"·href="Coq.Init.Datatypes.html#O"><span·class="id"·title="constructor">O</span></a>·=>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#f:183"><span·class="id"·title="variable">f</span></a>·0%<span·class="id"·title="var">nat</span><br/> |
410 | |·<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<span·class="id"·title="var">i</span>·=>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#sum_f_R0:185"><span·class="id"·title="definition">sum_f_R0</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#f:183"><span·class="id"·title="variable">f</span></a>·<span·class="id"·title="var">i</span>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#f:183"><span·class="id"·title="variable">f</span></a>·(<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<span·class="id"·title="var">i</span>)<br/> | 410 | |·<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<span·class="id"·title="var">i</span>·=>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#sum_f_R0:185"><span·class="id"·title="definition">sum_f_R0</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#f:183"><span·class="id"·title="variable">f</span></a>·<span·class="id"·title="var">i</span>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#f:183"><span·class="id"·title="variable">f</span></a>·(<a·class="idref"·href="Coq.Init.Datatypes.html#S"><span·class="id"·title="constructor">S</span></a>·<span·class="id"·title="var">i</span>)<br/> |
Offset 427, 15 lines modified | Offset 427, 15 lines modified | ||
427 | <span·class="id"·title="keyword">forall</span>·(<a·id="x:194"·class="idref"·href="#x:194"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="n:195"·class="idref"·href="#n:195"><span·class="id"·title="binder">n</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>),<br/> | 427 | <span·class="id"·title="keyword">forall</span>·(<a·id="x:194"·class="idref"·href="#x:194"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="n:195"·class="idref"·href="#n:195"><span·class="id"·title="binder">n</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>),<br/> |
428 | <a·class="idref"·href="Coq.Reals.Rbasic_fun.html#Rabs"><span·class="id"·title="definition">Rabs</span></a>·(<a·class="idref"·href="Coq.Reals.Rfunctions.html#sum_f_R0"><span·class="id"·title="definition">sum_f_R0</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#x:194"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#n:195"><span·class="id"·title="variable">n</span></a>)·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#sum_f_R0"><span·class="id"·title="definition">sum_f_R0</span></a>·(<span·class="id"·title="keyword">fun</span>·<a·id="i:196"·class="idref"·href="#i:196"><span·class="id"·title="binder">i</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·=>·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#Rabs"><span·class="id"·title="definition">Rabs</span></a>·(<a·class="idref"·href="Coq.Reals.Rfunctions.html#x:194"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#i:196"><span·class="id"·title="variable">i</span></a>))·<a·class="idref"·href="Coq.Reals.Rfunctions.html#n:195"><span·class="id"·title="variable">n</span></a>.<br/> | 428 | <a·class="idref"·href="Coq.Reals.Rbasic_fun.html#Rabs"><span·class="id"·title="definition">Rabs</span></a>·(<a·class="idref"·href="Coq.Reals.Rfunctions.html#sum_f_R0"><span·class="id"·title="definition">sum_f_R0</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#x:194"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#n:195"><span·class="id"·title="variable">n</span></a>)·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#sum_f_R0"><span·class="id"·title="definition">sum_f_R0</span></a>·(<span·class="id"·title="keyword">fun</span>·<a·id="i:196"·class="idref"·href="#i:196"><span·class="id"·title="binder">i</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·=>·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#Rabs"><span·class="id"·title="definition">Rabs</span></a>·(<a·class="idref"·href="Coq.Reals.Rfunctions.html#x:194"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#i:196"><span·class="id"·title="variable">i</span></a>))·<a·class="idref"·href="Coq.Reals.Rfunctions.html#n:195"><span·class="id"·title="variable">n</span></a>.<br/> |
429 | <br/> | 429 | <br/> |
430 | </div> | 430 | </div> |
431 | <div·class="doc"> | 431 | <div·class="doc"> |
432 | <a·id="lab | 432 | <a·id="lab772"></a><h1·class="section">Distance··in·R</h1> |
433 | <div·class="paragraph">·</div> | 433 | <div·class="paragraph">·</div> |
434 | </div> | 434 | </div> |
435 | <div·class="code"> | 435 | <div·class="code"> |
436 | <span·class="id"·title="keyword">Definition</span>·<a·id="Rdist"·class="idref"·href="#Rdist"><span·class="id"·title="definition">Rdist</span></a>·(<a·id="x:202"·class="idref"·href="#x:202"><span·class="id"·title="binder">x</span></a>·<a·id="y:203"·class="idref"·href="#y:203"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#Rabs"><span·class="id"·title="definition">Rabs</span></a>·(<a·class="idref"·href="Coq.Reals.Rfunctions.html#x:202"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#y:203"><span·class="id"·title="variable">y</span></a>).<br/> | 436 | <span·class="id"·title="keyword">Definition</span>·<a·id="Rdist"·class="idref"·href="#Rdist"><span·class="id"·title="definition">Rdist</span></a>·(<a·id="x:202"·class="idref"·href="#x:202"><span·class="id"·title="binder">x</span></a>·<a·id="y:203"·class="idref"·href="#y:203"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#Rabs"><span·class="id"·title="definition">Rabs</span></a>·(<a·class="idref"·href="Coq.Reals.Rfunctions.html#x:202"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#y:203"><span·class="id"·title="variable">y</span></a>).<br/> |
Offset 473, 15 lines modified | Offset 473, 15 lines modified | ||
473 | <span·class="id"·title="keyword">Notation</span>·<a·id="R_dist_plus"·class="idref"·href="#R_dist_plus"><span·class="id"·title="abbreviation">R_dist_plus</span></a>·:=·<a·class="idref"·href="Coq.Reals.Rfunctions.html#Rdist_plus"><span·class="id"·title="lemma">Rdist_plus</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> | 473 | <span·class="id"·title="keyword">Notation</span>·<a·id="R_dist_plus"·class="idref"·href="#R_dist_plus"><span·class="id"·title="abbreviation">R_dist_plus</span></a>·:=·<a·class="idref"·href="Coq.Reals.Rfunctions.html#Rdist_plus"><span·class="id"·title="lemma">Rdist_plus</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> |
474 | <span·class="id"·title="keyword">Notation</span>·<a·id="R_dist_mult_l"·class="idref"·href="#R_dist_mult_l"><span·class="id"·title="abbreviation">R_dist_mult_l</span></a>·:=·<a·class="idref"·href="Coq.Reals.Rfunctions.html#Rdist_mult_l"><span·class="id"·title="lemma">Rdist_mult_l</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> | 474 | <span·class="id"·title="keyword">Notation</span>·<a·id="R_dist_mult_l"·class="idref"·href="#R_dist_mult_l"><span·class="id"·title="abbreviation">R_dist_mult_l</span></a>·:=·<a·class="idref"·href="Coq.Reals.Rfunctions.html#Rdist_mult_l"><span·class="id"·title="lemma">Rdist_mult_l</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> |
475 | <br/> | 475 | <br/> |
476 | </div> | 476 | </div> |
477 | <div·class="doc"> | 477 | <div·class="doc"> |
478 | <a·id="lab | 478 | <a·id="lab773"></a><h1·class="section">Infinite·Sum</h1> |
479 | </div> | 479 | </div> |
480 | <div·class="code"> | 480 | <div·class="code"> |
481 | <span·class="id"·title="keyword">Definition</span>·<a·id="infinite_sum"·class="idref"·href="#infinite_sum"><span·class="id"·title="definition">infinite_sum</span></a>·(<a·id="s:221"·class="idref"·href="#s:221"><span·class="id"·title="binder">s</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="l:222"·class="idref"·href="#l:222"><span·class="id"·title="binder">l</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<span·class="id"·title="keyword">Prop</span>·:=<br/> | 481 | <span·class="id"·title="keyword">Definition</span>·<a·id="infinite_sum"·class="idref"·href="#infinite_sum"><span·class="id"·title="definition">infinite_sum</span></a>·(<a·id="s:221"·class="idref"·href="#s:221"><span·class="id"·title="binder">s</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="l:222"·class="idref"·href="#l:222"><span·class="id"·title="binder">l</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<span·class="id"·title="keyword">Prop</span>·:=<br/> |
482 | <span·class="id"·title="keyword">forall</span>·<a·id="eps:223"·class="idref"·href="#eps:223"><span·class="id"·title="binder">eps</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,<br/> | 482 | <span·class="id"·title="keyword">forall</span>·<a·id="eps:223"·class="idref"·href="#eps:223"><span·class="id"·title="binder">eps</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,<br/> |
483 | <a·class="idref"·href="Coq.Reals.Rfunctions.html#eps:223"><span·class="id"·title="variable">eps</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 483 | <a·class="idref"·href="Coq.Reals.Rfunctions.html#eps:223"><span·class="id"·title="variable">eps</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
484 | <a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">exists</span></a>·<a·id="N:224"·class="idref"·href="#N:224"><span·class="id"·title="binder">N</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">,</span></a><br/> | 484 | <a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">exists</span></a>·<a·id="N:224"·class="idref"·href="#N:224"><span·class="id"·title="binder">N</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">,</span></a><br/> |
Offset 53, 15 lines modified | Offset 53, 15 lines modified | ||
53 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#"><span·class="id"·title="library">R_sqrt</span></a>.<br/> | 53 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#"><span·class="id"·title="library">R_sqrt</span></a>.<br/> |
54 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">R_scope</span>.<br/> | 54 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">R_scope</span>.<br/> |
55 | <br/> | 55 | <br/> |
56 | </div> | 56 | </div> |
57 | <div·class="doc"> | 57 | <div·class="doc"> |
58 | <a·id="lab | 58 | <a·id="lab763"></a><h1·class="section">Distance</h1> |
59 | </div> | 59 | </div> |
60 | <div·class="code"> | 60 | <div·class="code"> |
61 | <br/> | 61 | <br/> |
62 | <span·class="id"·title="keyword">Definition</span>·<a·id="dist_euc"·class="idref"·href="#dist_euc"><span·class="id"·title="definition">dist_euc</span></a>·(<a·id="x0:1"·class="idref"·href="#x0:1"><span·class="id"·title="binder">x0</span></a>·<a·id="y0:2"·class="idref"·href="#y0:2"><span·class="id"·title="binder">y0</span></a>·<a·id="x1:3"·class="idref"·href="#x1:3"><span·class="id"·title="binder">x1</span></a>·<a·id="y1:4"·class="idref"·href="#y1:4"><span·class="id"·title="binder">y1</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=<br/> | 62 | <span·class="id"·title="keyword">Definition</span>·<a·id="dist_euc"·class="idref"·href="#dist_euc"><span·class="id"·title="definition">dist_euc</span></a>·(<a·id="x0:1"·class="idref"·href="#x0:1"><span·class="id"·title="binder">x0</span></a>·<a·id="y0:2"·class="idref"·href="#y0:2"><span·class="id"·title="binder">y0</span></a>·<a·id="x1:3"·class="idref"·href="#x1:3"><span·class="id"·title="binder">x1</span></a>·<a·id="y1:4"·class="idref"·href="#y1:4"><span·class="id"·title="binder">y1</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=<br/> |
63 | <a·class="idref"·href="Coq.Reals.R_sqrt.html#sqrt"><span·class="id"·title="definition">sqrt</span></a>·(<a·class="idref"·href="Coq.Reals.RIneq.html#Rsqr"><span·class="id"·title="definition">Rsqr</span></a>·(<a·class="idref"·href="Coq.Reals.Rgeom.html#x0:1"><span·class="id"·title="variable">x0</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#x1:3"><span·class="id"·title="variable">x1</span></a>)·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#Rsqr"><span·class="id"·title="definition">Rsqr</span></a>·(<a·class="idref"·href="Coq.Reals.Rgeom.html#y0:2"><span·class="id"·title="variable">y0</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y1:4"><span·class="id"·title="variable">y1</span></a>)).<br/> | 63 | <a·class="idref"·href="Coq.Reals.R_sqrt.html#sqrt"><span·class="id"·title="definition">sqrt</span></a>·(<a·class="idref"·href="Coq.Reals.RIneq.html#Rsqr"><span·class="id"·title="definition">Rsqr</span></a>·(<a·class="idref"·href="Coq.Reals.Rgeom.html#x0:1"><span·class="id"·title="variable">x0</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#x1:3"><span·class="id"·title="variable">x1</span></a>)·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#Rsqr"><span·class="id"·title="definition">Rsqr</span></a>·(<a·class="idref"·href="Coq.Reals.Rgeom.html#y0:2"><span·class="id"·title="variable">y0</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y1:4"><span·class="id"·title="variable">y1</span></a>)).<br/> |
Offset 87, 15 lines modified | Offset 87, 15 lines modified | ||
87 | <span·class="id"·title="keyword">forall</span>·<a·id="x0:21"·class="idref"·href="#x0:21"><span·class="id"·title="binder">x0</span></a>·<a·id="y0:22"·class="idref"·href="#y0:22"><span·class="id"·title="binder">y0</span></a>·<a·id="x1:23"·class="idref"·href="#x1:23"><span·class="id"·title="binder">x1</span></a>·<a·id="y1:24"·class="idref"·href="#y1:24"><span·class="id"·title="binder">y1</span></a>·<a·id="x2:25"·class="idref"·href="#x2:25"><span·class="id"·title="binder">x2</span></a>·<a·id="y2:26"·class="idref"·href="#y2:26"><span·class="id"·title="binder">y2</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,<br/> | 87 | <span·class="id"·title="keyword">forall</span>·<a·id="x0:21"·class="idref"·href="#x0:21"><span·class="id"·title="binder">x0</span></a>·<a·id="y0:22"·class="idref"·href="#y0:22"><span·class="id"·title="binder">y0</span></a>·<a·id="x1:23"·class="idref"·href="#x1:23"><span·class="id"·title="binder">x1</span></a>·<a·id="y1:24"·class="idref"·href="#y1:24"><span·class="id"·title="binder">y1</span></a>·<a·id="x2:25"·class="idref"·href="#x2:25"><span·class="id"·title="binder">x2</span></a>·<a·id="y2:26"·class="idref"·href="#y2:26"><span·class="id"·title="binder">y2</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,<br/> |
88 | <a·class="idref"·href="Coq.Reals.Rgeom.html#dist_euc"><span·class="id"·title="definition">dist_euc</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#x0:21"><span·class="id"·title="variable">x0</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y0:22"><span·class="id"·title="variable">y0</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#x1:23"><span·class="id"·title="variable">x1</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y1:24"><span·class="id"·title="variable">y1</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#dist_euc"><span·class="id"·title="definition">dist_euc</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#x0:21"><span·class="id"·title="variable">x0</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y0:22"><span·class="id"·title="variable">y0</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#x2:25"><span·class="id"·title="variable">x2</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y2:26"><span·class="id"·title="variable">y2</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#dist_euc"><span·class="id"·title="definition">dist_euc</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#x2:25"><span·class="id"·title="variable">x2</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y2:26"><span·class="id"·title="variable">y2</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#x1:23"><span·class="id"·title="variable">x1</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y1:24"><span·class="id"·title="variable">y1</span></a>.<br/> | 88 | <a·class="idref"·href="Coq.Reals.Rgeom.html#dist_euc"><span·class="id"·title="definition">dist_euc</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#x0:21"><span·class="id"·title="variable">x0</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y0:22"><span·class="id"·title="variable">y0</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#x1:23"><span·class="id"·title="variable">x1</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y1:24"><span·class="id"·title="variable">y1</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#dist_euc"><span·class="id"·title="definition">dist_euc</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#x0:21"><span·class="id"·title="variable">x0</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y0:22"><span·class="id"·title="variable">y0</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#x2:25"><span·class="id"·title="variable">x2</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y2:26"><span·class="id"·title="variable">y2</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#dist_euc"><span·class="id"·title="definition">dist_euc</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#x2:25"><span·class="id"·title="variable">x2</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y2:26"><span·class="id"·title="variable">y2</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#x1:23"><span·class="id"·title="variable">x1</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y1:24"><span·class="id"·title="variable">y1</span></a>.<br/> |
89 | <br/> | 89 | <br/> |
90 | </div> | 90 | </div> |
91 | <div·class="doc"> | 91 | <div·class="doc"> |
92 | <a·id="lab | 92 | <a·id="lab764"></a><h1·class="section">Translation</h1> |
93 | </div> | 93 | </div> |
94 | <div·class="code"> | 94 | <div·class="code"> |
95 | <br/> | 95 | <br/> |
96 | <span·class="id"·title="keyword">Definition</span>·<a·id="xt"·class="idref"·href="#xt"><span·class="id"·title="definition">xt</span></a>·(<a·id="x:27"·class="idref"·href="#x:27"><span·class="id"·title="binder">x</span></a>·<a·id="tx:28"·class="idref"·href="#tx:28"><span·class="id"·title="binder">tx</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Rgeom.html#x:27"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#tx:28"><span·class="id"·title="variable">tx</span></a>.<br/> | 96 | <span·class="id"·title="keyword">Definition</span>·<a·id="xt"·class="idref"·href="#xt"><span·class="id"·title="definition">xt</span></a>·(<a·id="x:27"·class="idref"·href="#x:27"><span·class="id"·title="binder">x</span></a>·<a·id="tx:28"·class="idref"·href="#tx:28"><span·class="id"·title="binder">tx</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Rgeom.html#x:27"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#tx:28"><span·class="id"·title="variable">tx</span></a>.<br/> |
97 | <span·class="id"·title="keyword">Definition</span>·<a·id="yt"·class="idref"·href="#yt"><span·class="id"·title="definition">yt</span></a>·(<a·id="y:29"·class="idref"·href="#y:29"><span·class="id"·title="binder">y</span></a>·<a·id="ty:30"·class="idref"·href="#ty:30"><span·class="id"·title="binder">ty</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Rgeom.html#y:29"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#ty:30"><span·class="id"·title="variable">ty</span></a>.<br/> | 97 | <span·class="id"·title="keyword">Definition</span>·<a·id="yt"·class="idref"·href="#yt"><span·class="id"·title="definition">yt</span></a>·(<a·id="y:29"·class="idref"·href="#y:29"><span·class="id"·title="binder">y</span></a>·<a·id="ty:30"·class="idref"·href="#ty:30"><span·class="id"·title="binder">ty</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Rgeom.html#y:29"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#ty:30"><span·class="id"·title="variable">ty</span></a>.<br/> |
Offset 109, 15 lines modified | Offset 109, 15 lines modified | ||
109 | <a·class="idref"·href="Coq.Reals.RIneq.html#Rsqr"><span·class="id"·title="definition">Rsqr</span></a>·(<a·class="idref"·href="Coq.Reals.Rgeom.html#x1:33"><span·class="id"·title="variable">x1</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#x2:34"><span·class="id"·title="variable">x2</span></a>)·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#Rsqr"><span·class="id"·title="definition">Rsqr</span></a>·(<a·class="idref"·href="Coq.Reals.Rgeom.html#y1:35"><span·class="id"·title="variable">y1</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y2:36"><span·class="id"·title="variable">y2</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a><br/> | 109 | <a·class="idref"·href="Coq.Reals.RIneq.html#Rsqr"><span·class="id"·title="definition">Rsqr</span></a>·(<a·class="idref"·href="Coq.Reals.Rgeom.html#x1:33"><span·class="id"·title="variable">x1</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#x2:34"><span·class="id"·title="variable">x2</span></a>)·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#Rsqr"><span·class="id"·title="definition">Rsqr</span></a>·(<a·class="idref"·href="Coq.Reals.Rgeom.html#y1:35"><span·class="id"·title="variable">y1</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y2:36"><span·class="id"·title="variable">y2</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a><br/> |
110 | <a·class="idref"·href="Coq.Reals.RIneq.html#Rsqr"><span·class="id"·title="definition">Rsqr</span></a>·(<a·class="idref"·href="Coq.Reals.Rgeom.html#xt"><span·class="id"·title="definition">xt</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#x1:33"><span·class="id"·title="variable">x1</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#tx:37"><span·class="id"·title="variable">tx</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#xt"><span·class="id"·title="definition">xt</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#x2:34"><span·class="id"·title="variable">x2</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#tx:37"><span·class="id"·title="variable">tx</span></a>)·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#Rsqr"><span·class="id"·title="definition">Rsqr</span></a>·(<a·class="idref"·href="Coq.Reals.Rgeom.html#yt"><span·class="id"·title="definition">yt</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y1:35"><span·class="id"·title="variable">y1</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#ty:38"><span·class="id"·title="variable">ty</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#yt"><span·class="id"·title="definition">yt</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y2:36"><span·class="id"·title="variable">y2</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#ty:38"><span·class="id"·title="variable">ty</span></a>).<br/> | 110 | <a·class="idref"·href="Coq.Reals.RIneq.html#Rsqr"><span·class="id"·title="definition">Rsqr</span></a>·(<a·class="idref"·href="Coq.Reals.Rgeom.html#xt"><span·class="id"·title="definition">xt</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#x1:33"><span·class="id"·title="variable">x1</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#tx:37"><span·class="id"·title="variable">tx</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#xt"><span·class="id"·title="definition">xt</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#x2:34"><span·class="id"·title="variable">x2</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#tx:37"><span·class="id"·title="variable">tx</span></a>)·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#Rsqr"><span·class="id"·title="definition">Rsqr</span></a>·(<a·class="idref"·href="Coq.Reals.Rgeom.html#yt"><span·class="id"·title="definition">yt</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y1:35"><span·class="id"·title="variable">y1</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#ty:38"><span·class="id"·title="variable">ty</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#yt"><span·class="id"·title="definition">yt</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y2:36"><span·class="id"·title="variable">y2</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#ty:38"><span·class="id"·title="variable">ty</span></a>).<br/> |
111 | <br/> | 111 | <br/> |
112 | </div> | 112 | </div> |
113 | <div·class="doc"> | 113 | <div·class="doc"> |
114 | <a·id="lab | 114 | <a·id="lab765"></a><h1·class="section">Rotation</h1> |
115 | </div> | 115 | </div> |
116 | <div·class="code"> | 116 | <div·class="code"> |
117 | <br/> | 117 | <br/> |
118 | <span·class="id"·title="keyword">Definition</span>·<a·id="xr"·class="idref"·href="#xr"><span·class="id"·title="definition">xr</span></a>·(<a·id="x:39"·class="idref"·href="#x:39"><span·class="id"·title="binder">x</span></a>·<a·id="y:40"·class="idref"·href="#y:40"><span·class="id"·title="binder">y</span></a>·<a·id="theta:41"·class="idref"·href="#theta:41"><span·class="id"·title="binder">theta</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Rgeom.html#x:39"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#theta:41"><span·class="id"·title="variable">theta</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y:40"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sin"><span·class="id"·title="definition">sin</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#theta:41"><span·class="id"·title="variable">theta</span></a>.<br/> | 118 | <span·class="id"·title="keyword">Definition</span>·<a·id="xr"·class="idref"·href="#xr"><span·class="id"·title="definition">xr</span></a>·(<a·id="x:39"·class="idref"·href="#x:39"><span·class="id"·title="binder">x</span></a>·<a·id="y:40"·class="idref"·href="#y:40"><span·class="id"·title="binder">y</span></a>·<a·id="theta:41"·class="idref"·href="#theta:41"><span·class="id"·title="binder">theta</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Rgeom.html#x:39"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#theta:41"><span·class="id"·title="variable">theta</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y:40"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sin"><span·class="id"·title="definition">sin</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#theta:41"><span·class="id"·title="variable">theta</span></a>.<br/> |
119 | <span·class="id"·title="keyword">Definition</span>·<a·id="yr"·class="idref"·href="#yr"><span·class="id"·title="definition">yr</span></a>·(<a·id="x:42"·class="idref"·href="#x:42"><span·class="id"·title="binder">x</span></a>·<a·id="y:43"·class="idref"·href="#y:43"><span·class="id"·title="binder">y</span></a>·<a·id="theta:44"·class="idref"·href="#theta:44"><span·class="id"·title="binder">theta</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#x:42"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sin"><span·class="id"·title="definition">sin</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#theta:44"><span·class="id"·title="variable">theta</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y:43"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#theta:44"><span·class="id"·title="variable">theta</span></a>.<br/> | 119 | <span·class="id"·title="keyword">Definition</span>·<a·id="yr"·class="idref"·href="#yr"><span·class="id"·title="definition">yr</span></a>·(<a·id="x:42"·class="idref"·href="#x:42"><span·class="id"·title="binder">x</span></a>·<a·id="y:43"·class="idref"·href="#y:43"><span·class="id"·title="binder">y</span></a>·<a·id="theta:44"·class="idref"·href="#theta:44"><span·class="id"·title="binder">theta</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#x:42"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sin"><span·class="id"·title="definition">sin</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#theta:44"><span·class="id"·title="variable">theta</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y:43"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#theta:44"><span·class="id"·title="variable">theta</span></a>.<br/> |
Offset 143, 15 lines modified | Offset 143, 15 lines modified | ||
143 | <a·class="idref"·href="Coq.Reals.Rgeom.html#dist_euc"><span·class="id"·title="definition">dist_euc</span></a>·(<a·class="idref"·href="Coq.Reals.Rgeom.html#xr"><span·class="id"·title="definition">xr</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#x1:54"><span·class="id"·title="variable">x1</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y1:55"><span·class="id"·title="variable">y1</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#theta:58"><span·class="id"·title="variable">theta</span></a>)·(<a·class="idref"·href="Coq.Reals.Rgeom.html#yr"><span·class="id"·title="definition">yr</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#x1:54"><span·class="id"·title="variable">x1</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y1:55"><span·class="id"·title="variable">y1</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#theta:58"><span·class="id"·title="variable">theta</span></a>)·(<a·class="idref"·href="Coq.Reals.Rgeom.html#xr"><span·class="id"·title="definition">xr</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#x2:56"><span·class="id"·title="variable">x2</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y2:57"><span·class="id"·title="variable">y2</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#theta:58"><span·class="id"·title="variable">theta</span></a>)<br/> | 143 | <a·class="idref"·href="Coq.Reals.Rgeom.html#dist_euc"><span·class="id"·title="definition">dist_euc</span></a>·(<a·class="idref"·href="Coq.Reals.Rgeom.html#xr"><span·class="id"·title="definition">xr</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#x1:54"><span·class="id"·title="variable">x1</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y1:55"><span·class="id"·title="variable">y1</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#theta:58"><span·class="id"·title="variable">theta</span></a>)·(<a·class="idref"·href="Coq.Reals.Rgeom.html#yr"><span·class="id"·title="definition">yr</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#x1:54"><span·class="id"·title="variable">x1</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y1:55"><span·class="id"·title="variable">y1</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#theta:58"><span·class="id"·title="variable">theta</span></a>)·(<a·class="idref"·href="Coq.Reals.Rgeom.html#xr"><span·class="id"·title="definition">xr</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#x2:56"><span·class="id"·title="variable">x2</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y2:57"><span·class="id"·title="variable">y2</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#theta:58"><span·class="id"·title="variable">theta</span></a>)<br/> |
144 | (<a·class="idref"·href="Coq.Reals.Rgeom.html#yr"><span·class="id"·title="definition">yr</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#x2:56"><span·class="id"·title="variable">x2</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y2:57"><span·class="id"·title="variable">y2</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#theta:58"><span·class="id"·title="variable">theta</span></a>).<br/> | 144 | (<a·class="idref"·href="Coq.Reals.Rgeom.html#yr"><span·class="id"·title="definition">yr</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#x2:56"><span·class="id"·title="variable">x2</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#y2:57"><span·class="id"·title="variable">y2</span></a>·<a·class="idref"·href="Coq.Reals.Rgeom.html#theta:58"><span·class="id"·title="variable">theta</span></a>).<br/> |
145 | <br/> | 145 | <br/> |
146 | </div> | 146 | </div> |
147 | <div·class="doc"> | 147 | <div·class="doc"> |
148 | <a·id="lab | 148 | <a·id="lab766"></a><h1·class="section">Similarity</h1> |
149 | </div> | 149 | </div> |
150 | <div·class="code"> | 150 | <div·class="code"> |
151 | <br/> | 151 | <br/> |
152 | <span·class="id"·title="keyword">Lemma</span>·<a·id="isometric_rot_trans"·class="idref"·href="#isometric_rot_trans"><span·class="id"·title="lemma">isometric_rot_trans</span></a>·:<br/> | 152 | <span·class="id"·title="keyword">Lemma</span>·<a·id="isometric_rot_trans"·class="idref"·href="#isometric_rot_trans"><span·class="id"·title="lemma">isometric_rot_trans</span></a>·:<br/> |
153 | <span·class="id"·title="keyword">forall</span>·<a·id="x1:59"·class="idref"·href="#x1:59"><span·class="id"·title="binder">x1</span></a>·<a·id="y1:60"·class="idref"·href="#y1:60"><span·class="id"·title="binder">y1</span></a>·<a·id="x2:61"·class="idref"·href="#x2:61"><span·class="id"·title="binder">x2</span></a>·<a·id="y2:62"·class="idref"·href="#y2:62"><span·class="id"·title="binder">y2</span></a>·<a·id="tx:63"·class="idref"·href="#tx:63"><span·class="id"·title="binder">tx</span></a>·<a·id="ty:64"·class="idref"·href="#ty:64"><span·class="id"·title="binder">ty</span></a>·<a·id="theta:65"·class="idref"·href="#theta:65"><span·class="id"·title="binder">theta</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,<br/> | 153 | <span·class="id"·title="keyword">forall</span>·<a·id="x1:59"·class="idref"·href="#x1:59"><span·class="id"·title="binder">x1</span></a>·<a·id="y1:60"·class="idref"·href="#y1:60"><span·class="id"·title="binder">y1</span></a>·<a·id="x2:61"·class="idref"·href="#x2:61"><span·class="id"·title="binder">x2</span></a>·<a·id="y2:62"·class="idref"·href="#y2:62"><span·class="id"·title="binder">y2</span></a>·<a·id="tx:63"·class="idref"·href="#tx:63"><span·class="id"·title="binder">tx</span></a>·<a·id="ty:64"·class="idref"·href="#ty:64"><span·class="id"·title="binder">ty</span></a>·<a·id="theta:65"·class="idref"·href="#theta:65"><span·class="id"·title="binder">theta</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,<br/> |
Offset 58, 15 lines modified | Offset 58, 15 lines modified | ||
58 | <br/> | 58 | <br/> |
59 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> | 59 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> |
60 | <br/> | 60 | <br/> |
61 | </div> | 61 | </div> |
62 | <div·class="doc"> | 62 | <div·class="doc"> |
63 | <a·id="lab | 63 | <a·id="lab819"></a><h1·class="section">Each·bounded·subset·of·N·has·a·maximal·element</h1> |
64 | </div> | 64 | </div> |
65 | <div·class="code"> | 65 | <div·class="code"> |
66 | <br/> | 66 | <br/> |
67 | <span·class="id"·title="keyword">Definition</span>·<a·id="Nbound"·class="idref"·href="#Nbound"><span·class="id"·title="definition">Nbound</span></a>·(<a·id="I:1"·class="idref"·href="#I:1"><span·class="id"·title="binder">I</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>)·:·<span·class="id"·title="keyword">Prop</span>·:=<br/> | 67 | <span·class="id"·title="keyword">Definition</span>·<a·id="Nbound"·class="idref"·href="#Nbound"><span·class="id"·title="definition">Nbound</span></a>·(<a·id="I:1"·class="idref"·href="#I:1"><span·class="id"·title="binder">I</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>)·:·<span·class="id"·title="keyword">Prop</span>·:=<br/> |
68 | <a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">exists</span></a>·<a·id="n:2"·class="idref"·href="#n:2"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="i:3"·class="idref"·href="#i:3"><span·class="id"·title="binder">i</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>,·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#I:1"><span·class="id"·title="variable">I</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#i:3"><span·class="id"·title="variable">i</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·(<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#i:3"><span·class="id"·title="variable">i</span></a>·<a·class="idref"·href="Coq.Init.Peano.html#cb53cf0ee22c036a03b4a9281c68b5a3"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#n:2"><span·class="id"·title="variable">n</span></a>)%<span·class="id"·title="var">nat</span><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">)</span></a>.<br/> | 68 | <a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">exists</span></a>·<a·id="n:2"·class="idref"·href="#n:2"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="i:3"·class="idref"·href="#i:3"><span·class="id"·title="binder">i</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>,·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#I:1"><span·class="id"·title="variable">I</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#i:3"><span·class="id"·title="variable">i</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·(<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#i:3"><span·class="id"·title="variable">i</span></a>·<a·class="idref"·href="Coq.Init.Peano.html#cb53cf0ee22c036a03b4a9281c68b5a3"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#n:2"><span·class="id"·title="variable">n</span></a>)%<span·class="id"·title="var">nat</span><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">)</span></a>.<br/> |
Offset 80, 15 lines modified | Offset 80, 15 lines modified | ||
80 | <a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">exists</span></a>·<a·id="n:7"·class="idref"·href="#n:7"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#I:6"><span·class="id"·title="variable">I</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#n:7"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 80 | <a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">exists</span></a>·<a·id="n:7"·class="idref"·href="#n:7"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#I:6"><span·class="id"·title="variable">I</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#n:7"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
81 | <a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#Nbound"><span·class="id"·title="definition">Nbound</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#I:6"><span·class="id"·title="variable">I</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">{</span></a>·<a·id="n:8"·class="idref"·href="#n:8"><span·class="id"·title="binder">n</span></a><a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">:</span></a><a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">|</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#I:6"><span·class="id"·title="variable">I</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#n:8"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="i:9"·class="idref"·href="#i:9"><span·class="id"·title="binder">i</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>,·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#I:6"><span·class="id"·title="variable">I</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#i:9"><span·class="id"·title="variable">i</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·(<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#i:9"><span·class="id"·title="variable">i</span></a>·<a·class="idref"·href="Coq.Init.Peano.html#cb53cf0ee22c036a03b4a9281c68b5a3"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#n:8"><span·class="id"·title="variable">n</span></a>)%<span·class="id"·title="var">nat</span><a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">}</span></a>.<br/> | 81 | <a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#Nbound"><span·class="id"·title="definition">Nbound</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#I:6"><span·class="id"·title="variable">I</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">{</span></a>·<a·id="n:8"·class="idref"·href="#n:8"><span·class="id"·title="binder">n</span></a><a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">:</span></a><a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">|</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#I:6"><span·class="id"·title="variable">I</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#n:8"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="i:9"·class="idref"·href="#i:9"><span·class="id"·title="binder">i</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>,·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#I:6"><span·class="id"·title="variable">I</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#i:9"><span·class="id"·title="variable">i</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·(<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#i:9"><span·class="id"·title="variable">i</span></a>·<a·class="idref"·href="Coq.Init.Peano.html#cb53cf0ee22c036a03b4a9281c68b5a3"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#n:8"><span·class="id"·title="variable">n</span></a>)%<span·class="id"·title="var">nat</span><a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#6556914db359db999889decec6a4a562"><span·class="id"·title="notation">}</span></a>.<br/> |
82 | <br/> | 82 | <br/> |
83 | </div> | 83 | </div> |
84 | <div·class="doc"> | 84 | <div·class="doc"> |
85 | <a·id="lab | 85 | <a·id="lab820"></a><h1·class="section">Step·functions</h1> |
86 | </div> | 86 | </div> |
87 | <div·class="code"> | 87 | <div·class="code"> |
88 | <br/> | 88 | <br/> |
89 | <span·class="id"·title="keyword">Definition</span>·<a·id="open_interval"·class="idref"·href="#open_interval"><span·class="id"·title="definition">open_interval</span></a>·(<a·id="a:18"·class="idref"·href="#a:18"><span·class="id"·title="binder">a</span></a>·<a·id="b:19"·class="idref"·href="#b:19"><span·class="id"·title="binder">b</span></a>·<a·id="x:20"·class="idref"·href="#x:20"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<span·class="id"·title="keyword">Prop</span>·:=·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#a:18"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#x:20"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#b:19"><span·class="id"·title="variable">b</span></a>.<br/> | 89 | <span·class="id"·title="keyword">Definition</span>·<a·id="open_interval"·class="idref"·href="#open_interval"><span·class="id"·title="definition">open_interval</span></a>·(<a·id="a:18"·class="idref"·href="#a:18"><span·class="id"·title="binder">a</span></a>·<a·id="b:19"·class="idref"·href="#b:19"><span·class="id"·title="binder">b</span></a>·<a·id="x:20"·class="idref"·href="#x:20"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<span·class="id"·title="keyword">Prop</span>·:=·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#a:18"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#x:20"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#b:19"><span·class="id"·title="variable">b</span></a>.<br/> |
90 | <span·class="id"·title="keyword">Definition</span>·<a·id="co_interval"·class="idref"·href="#co_interval"><span·class="id"·title="definition">co_interval</span></a>·(<a·id="a:21"·class="idref"·href="#a:21"><span·class="id"·title="binder">a</span></a>·<a·id="b:22"·class="idref"·href="#b:22"><span·class="id"·title="binder">b</span></a>·<a·id="x:23"·class="idref"·href="#x:23"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<span·class="id"·title="keyword">Prop</span>·:=·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#a:21"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#b6aaeb1973f5e630a6779ff194ed22e3"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#x:23"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#b6aaeb1973f5e630a6779ff194ed22e3"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#b:22"><span·class="id"·title="variable">b</span></a>.<br/> | 90 | <span·class="id"·title="keyword">Definition</span>·<a·id="co_interval"·class="idref"·href="#co_interval"><span·class="id"·title="definition">co_interval</span></a>·(<a·id="a:21"·class="idref"·href="#a:21"><span·class="id"·title="binder">a</span></a>·<a·id="b:22"·class="idref"·href="#b:22"><span·class="id"·title="binder">b</span></a>·<a·id="x:23"·class="idref"·href="#x:23"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<span·class="id"·title="keyword">Prop</span>·:=·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#a:21"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#b6aaeb1973f5e630a6779ff194ed22e3"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#x:23"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#b6aaeb1973f5e630a6779ff194ed22e3"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#b:22"><span·class="id"·title="variable">b</span></a>.<br/> |
Offset 120, 15 lines modified | Offset 120, 15 lines modified | ||
120 | <span·class="id"·title="keyword">Definition</span>·<a·id="IsStepFun"·class="idref"·href="#IsStepFun"><span·class="id"·title="definition">IsStepFun</span></a>·(<a·id="f:42"·class="idref"·href="#f:42"><span·class="id"·title="binder">f</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="a:43"·class="idref"·href="#a:43"><span·class="id"·title="binder">a</span></a>·<a·id="b:44"·class="idref"·href="#b:44"><span·class="id"·title="binder">b</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<span·class="id"·title="keyword">Type</span>·:=<br/> | 120 | <span·class="id"·title="keyword">Definition</span>·<a·id="IsStepFun"·class="idref"·href="#IsStepFun"><span·class="id"·title="definition">IsStepFun</span></a>·(<a·id="f:42"·class="idref"·href="#f:42"><span·class="id"·title="binder">f</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="a:43"·class="idref"·href="#a:43"><span·class="id"·title="binder">a</span></a>·<a·id="b:44"·class="idref"·href="#b:44"><span·class="id"·title="binder">b</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<span·class="id"·title="keyword">Type</span>·:=<br/> |
121 | <a·class="idref"·href="Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span·class="id"·title="notation">{</span></a>·<a·id="l:45"·class="idref"·href="#l:45"><span·class="id"·title="binder">l</span></a><a·class="idref"·href="Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span·class="id"·title="notation">:</span></a><a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span·class="id"·title="notation">&</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#is_subdivision"><span·class="id"·title="definition">is_subdivision</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#f:42"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#a:43"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#b:44"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#l:45"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span·class="id"·title="notation">}</span></a>.<br/> | 121 | <a·class="idref"·href="Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span·class="id"·title="notation">{</span></a>·<a·id="l:45"·class="idref"·href="#l:45"><span·class="id"·title="binder">l</span></a><a·class="idref"·href="Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span·class="id"·title="notation">:</span></a><a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span·class="id"·title="notation">&</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#is_subdivision"><span·class="id"·title="definition">is_subdivision</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#f:42"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#a:43"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#b:44"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#l:45"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#cc5e56ba3765e2d6b17e66d19b966f1d"><span·class="id"·title="notation">}</span></a>.<br/> |
122 | <br/> | 122 | <br/> |
123 | </div> | 123 | </div> |
124 | <div·class="doc"> | 124 | <div·class="doc"> |
125 | <a·id="lab | 125 | <a·id="lab821"></a><h2·class="section">Class·of·step·functions</h2> |
126 | </div> | 126 | </div> |
127 | <div·class="code"> | 127 | <div·class="code"> |
128 | <span·class="id"·title="keyword">Record</span>·<a·id="StepFun"·class="idref"·href="#StepFun"><span·class="id"·title="record">StepFun</span></a>·(<a·id="a:46"·class="idref"·href="#a:46"><span·class="id"·title="binder">a</span></a>·<a·id="b:47"·class="idref"·href="#b:47"><span·class="id"·title="binder">b</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<span·class="id"·title="keyword">Type</span>·:=·<span·class="id"·title="var">mkStepFun</span><br/> | 128 | <span·class="id"·title="keyword">Record</span>·<a·id="StepFun"·class="idref"·href="#StepFun"><span·class="id"·title="record">StepFun</span></a>·(<a·id="a:46"·class="idref"·href="#a:46"><span·class="id"·title="binder">a</span></a>·<a·id="b:47"·class="idref"·href="#b:47"><span·class="id"·title="binder">b</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<span·class="id"·title="keyword">Type</span>·:=·<span·class="id"·title="var">mkStepFun</span><br/> |
129 | {<a·id="fe"·class="idref"·href="#fe"><span·class="id"·title="projection">fe</span></a>·:>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>;·<a·id="pre"·class="idref"·href="#pre"><span·class="id"·title="projection">pre</span></a>·:·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#IsStepFun"><span·class="id"·title="definition">IsStepFun</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#fe:49"><span·class="id"·title="method">fe</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#a:46"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#b:47"><span·class="id"·title="variable">b</span></a>}.<br/> | 129 | {<a·id="fe"·class="idref"·href="#fe"><span·class="id"·title="projection">fe</span></a>·:>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>;·<a·id="pre"·class="idref"·href="#pre"><span·class="id"·title="projection">pre</span></a>·:·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#IsStepFun"><span·class="id"·title="definition">IsStepFun</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#fe:49"><span·class="id"·title="method">fe</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#a:46"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#b:47"><span·class="id"·title="variable">b</span></a>}.<br/> |
130 | <br/> | 130 | <br/> |
Offset 152, 29 lines modified | Offset 152, 29 lines modified | ||
152 | <span·class="id"·title="keyword">end</span><br/> | 152 | <span·class="id"·title="keyword">end</span><br/> |
153 | <span·class="id"·title="keyword">end</span>.<br/> | 153 | <span·class="id"·title="keyword">end</span>.<br/> |
154 | <br/> | 154 | <br/> |
155 | </div> | 155 | </div> |
156 | <div·class="doc"> | 156 | <div·class="doc"> |
157 | <a·id="lab | 157 | <a·id="lab822"></a><h2·class="section">Integral·of·step·functions</h2> |
158 | </div> | 158 | </div> |
159 | <div·class="code"> | 159 | <div·class="code"> |
160 | <span·class="id"·title="keyword">Definition</span>·<a·id="RiemannInt_SF"·class="idref"·href="#RiemannInt_SF"><span·class="id"·title="definition">RiemannInt_SF</span></a>·(<a·id="a:62"·class="idref"·href="#a:62"><span·class="id"·title="binder">a</span></a>·<a·id="b:63"·class="idref"·href="#b:63"><span·class="id"·title="binder">b</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="f:64"·class="idref"·href="#f:64"><span·class="id"·title="binder">f</span></a>:<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#StepFun"><span·class="id"·title="record">StepFun</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#a:62"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#b:63"><span·class="id"·title="variable">b</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=<br/> | 160 | <span·class="id"·title="keyword">Definition</span>·<a·id="RiemannInt_SF"·class="idref"·href="#RiemannInt_SF"><span·class="id"·title="definition">RiemannInt_SF</span></a>·(<a·id="a:62"·class="idref"·href="#a:62"><span·class="id"·title="binder">a</span></a>·<a·id="b:63"·class="idref"·href="#b:63"><span·class="id"·title="binder">b</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="f:64"·class="idref"·href="#f:64"><span·class="id"·title="binder">f</span></a>:<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#StepFun"><span·class="id"·title="record">StepFun</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#a:62"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#b:63"><span·class="id"·title="variable">b</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=<br/> |
161 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Reals.RIneq.html#Rle_dec"><span·class="id"·title="lemma">Rle_dec</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#a:62"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#b:63"><span·class="id"·title="variable">b</span></a>·<span·class="id"·title="keyword">with</span><br/> | 161 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Reals.RIneq.html#Rle_dec"><span·class="id"·title="lemma">Rle_dec</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#a:62"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#b:63"><span·class="id"·title="variable">b</span></a>·<span·class="id"·title="keyword">with</span><br/> |
162 | |·<a·class="idref"·href="Coq.Init.Specif.html#left"><span·class="id"·title="constructor">left</span></a>·<span·class="id"·title="var">_</span>·=>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#Int_SF"><span·class="id"·title="definition">Int_SF</span></a>·(<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#subdivision_val"><span·class="id"·title="definition">subdivision_val</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#f:64"><span·class="id"·title="variable">f</span></a>)·(<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#subdivision"><span·class="id"·title="definition">subdivision</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#f:64"><span·class="id"·title="variable">f</span></a>)<br/> | 162 | |·<a·class="idref"·href="Coq.Init.Specif.html#left"><span·class="id"·title="constructor">left</span></a>·<span·class="id"·title="var">_</span>·=>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#Int_SF"><span·class="id"·title="definition">Int_SF</span></a>·(<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#subdivision_val"><span·class="id"·title="definition">subdivision_val</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#f:64"><span·class="id"·title="variable">f</span></a>)·(<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#subdivision"><span·class="id"·title="definition">subdivision</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#f:64"><span·class="id"·title="variable">f</span></a>)<br/> |
163 | |·<a·class="idref"·href="Coq.Init.Specif.html#right"><span·class="id"·title="constructor">right</span></a>·<span·class="id"·title="var">_</span>·=>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#Int_SF"><span·class="id"·title="definition">Int_SF</span></a>·(<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#subdivision_val"><span·class="id"·title="definition">subdivision_val</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#f:64"><span·class="id"·title="variable">f</span></a>)·(<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#subdivision"><span·class="id"·title="definition">subdivision</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#f:64"><span·class="id"·title="variable">f</span></a>)<br/> | 163 | |·<a·class="idref"·href="Coq.Init.Specif.html#right"><span·class="id"·title="constructor">right</span></a>·<span·class="id"·title="var">_</span>·=>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#Int_SF"><span·class="id"·title="definition">Int_SF</span></a>·(<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#subdivision_val"><span·class="id"·title="definition">subdivision_val</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#f:64"><span·class="id"·title="variable">f</span></a>)·(<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#subdivision"><span·class="id"·title="definition">subdivision</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#f:64"><span·class="id"·title="variable">f</span></a>)<br/> |
164 | <span·class="id"·title="keyword">end</span>.<br/> | 164 | <span·class="id"·title="keyword">end</span>.<br/> |
165 | <br/> | 165 | <br/> |
166 | </div> | 166 | </div> |
167 | <div·class="doc"> | 167 | <div·class="doc"> |
168 | <a·id="lab | 168 | <a·id="lab823"></a><h2·class="section">Properties·of·step·functions</h2> |
169 | </div> | 169 | </div> |
170 | <div·class="code"> | 170 | <div·class="code"> |
171 | <br/> | 171 | <br/> |
172 | <span·class="id"·title="keyword">Lemma</span>·<a·id="StepFun_P1"·class="idref"·href="#StepFun_P1"><span·class="id"·title="lemma">StepFun_P1</span></a>·:<br/> | 172 | <span·class="id"·title="keyword">Lemma</span>·<a·id="StepFun_P1"·class="idref"·href="#StepFun_P1"><span·class="id"·title="lemma">StepFun_P1</span></a>·:<br/> |
173 | <span·class="id"·title="keyword">forall</span>·(<a·id="a:65"·class="idref"·href="#a:65"><span·class="id"·title="binder">a</span></a>·<a·id="b:66"·class="idref"·href="#b:66"><span·class="id"·title="binder">b</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="f:67"·class="idref"·href="#f:67"><span·class="id"·title="binder">f</span></a>:<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#StepFun"><span·class="id"·title="record">StepFun</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#a:65"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#b:66"><span·class="id"·title="variable">b</span></a>),<br/> | 173 | <span·class="id"·title="keyword">forall</span>·(<a·id="a:65"·class="idref"·href="#a:65"><span·class="id"·title="binder">a</span></a>·<a·id="b:66"·class="idref"·href="#b:66"><span·class="id"·title="binder">b</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="f:67"·class="idref"·href="#f:67"><span·class="id"·title="binder">f</span></a>:<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#StepFun"><span·class="id"·title="record">StepFun</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#a:65"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.RiemannInt_SF.html#b:66"><span·class="id"·title="variable">b</span></a>),<br/> |
Offset 59, 15 lines modified | Offset 59, 15 lines modified | ||
59 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.micromega.Lra.html#"><span·class="id"·title="library">Lra</span></a>.<br/> | 59 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.micromega.Lra.html#"><span·class="id"·title="library">Lra</span></a>.<br/> |
60 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">R_scope</span>.<br/> | 60 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">R_scope</span>.<br/> |
61 | <br/> | 61 | <br/> |
62 | </div> | 62 | </div> |
63 | <div·class="doc"> | 63 | <div·class="doc"> |
64 | <a·id="lab | 64 | <a·id="lab774"></a><h1·class="section">Calculus</h1> |
65 | </div> | 65 | </div> |
66 | <div·class="code"> | 66 | <div·class="code"> |
67 | <span·class="id"·title="keyword">Lemma</span>·<a·id="eps2_Rgt_R0"·class="idref"·href="#eps2_Rgt_R0"><span·class="id"·title="lemma">eps2_Rgt_R0</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="eps:1"·class="idref"·href="#eps:1"><span·class="id"·title="binder">eps</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Rlimit.html#eps:1"><span·class="id"·title="variable">eps</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#eps:1"><span·class="id"·title="variable">eps</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#2299a6ef56270a66cc1b95489d0f6e3a"><span·class="id"·title="notation">/</span></a>·2·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·0.<br/> | 67 | <span·class="id"·title="keyword">Lemma</span>·<a·id="eps2_Rgt_R0"·class="idref"·href="#eps2_Rgt_R0"><span·class="id"·title="lemma">eps2_Rgt_R0</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="eps:1"·class="idref"·href="#eps:1"><span·class="id"·title="binder">eps</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Rlimit.html#eps:1"><span·class="id"·title="variable">eps</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#eps:1"><span·class="id"·title="variable">eps</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#2299a6ef56270a66cc1b95489d0f6e3a"><span·class="id"·title="notation">/</span></a>·2·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·0.<br/> |
68 | <br/> | 68 | <br/> |
69 | <span·class="id"·title="keyword">Lemma</span>·<a·id="eps2"·class="idref"·href="#eps2"><span·class="id"·title="lemma">eps2</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="eps:2"·class="idref"·href="#eps:2"><span·class="id"·title="binder">eps</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Rlimit.html#eps:2"><span·class="id"·title="variable">eps</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#2299a6ef56270a66cc1b95489d0f6e3a"><span·class="id"·title="notation">/</span></a>·2·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#eps:2"><span·class="id"·title="variable">eps</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#2299a6ef56270a66cc1b95489d0f6e3a"><span·class="id"·title="notation">/</span></a>·2·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#eps:2"><span·class="id"·title="variable">eps</span></a>.<br/> | 69 | <span·class="id"·title="keyword">Lemma</span>·<a·id="eps2"·class="idref"·href="#eps2"><span·class="id"·title="lemma">eps2</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="eps:2"·class="idref"·href="#eps:2"><span·class="id"·title="binder">eps</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Rlimit.html#eps:2"><span·class="id"·title="variable">eps</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#2299a6ef56270a66cc1b95489d0f6e3a"><span·class="id"·title="notation">/</span></a>·2·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#eps:2"><span·class="id"·title="variable">eps</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#2299a6ef56270a66cc1b95489d0f6e3a"><span·class="id"·title="notation">/</span></a>·2·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#eps:2"><span·class="id"·title="variable">eps</span></a>.<br/> |
Offset 97, 15 lines modified | Offset 97, 15 lines modified | ||
97 | <span·class="id"·title="keyword">Lemma</span>·<a·id="mul_factor_gt_f"·class="idref"·href="#mul_factor_gt_f"><span·class="id"·title="lemma">mul_factor_gt_f</span></a>·:<br/> | 97 | <span·class="id"·title="keyword">Lemma</span>·<a·id="mul_factor_gt_f"·class="idref"·href="#mul_factor_gt_f"><span·class="id"·title="lemma">mul_factor_gt_f</span></a>·:<br/> |
98 | <span·class="id"·title="keyword">forall</span>·<a·id="eps:15"·class="idref"·href="#eps:15"><span·class="id"·title="binder">eps</span></a>·<a·id="l:16"·class="idref"·href="#l:16"><span·class="id"·title="binder">l</span></a>·<a·id="l':17"·class="idref"·href="#l':17"><span·class="id"·title="binder">l'</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Rlimit.html#eps:15"><span·class="id"·title="variable">eps</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#Rmin"><span·class="id"·title="definition">Rmin</span></a>·1·(<a·class="idref"·href="Coq.Reals.Rlimit.html#eps:15"><span·class="id"·title="variable">eps</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#mul_factor"><span·class="id"·title="definition">mul_factor</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#l:16"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#l':17"><span·class="id"·title="variable">l'</span></a>)·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·0.<br/> | 98 | <span·class="id"·title="keyword">forall</span>·<a·id="eps:15"·class="idref"·href="#eps:15"><span·class="id"·title="binder">eps</span></a>·<a·id="l:16"·class="idref"·href="#l:16"><span·class="id"·title="binder">l</span></a>·<a·id="l':17"·class="idref"·href="#l':17"><span·class="id"·title="binder">l'</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Rlimit.html#eps:15"><span·class="id"·title="variable">eps</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#Rmin"><span·class="id"·title="definition">Rmin</span></a>·1·(<a·class="idref"·href="Coq.Reals.Rlimit.html#eps:15"><span·class="id"·title="variable">eps</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#mul_factor"><span·class="id"·title="definition">mul_factor</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#l:16"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#l':17"><span·class="id"·title="variable">l'</span></a>)·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·0.<br/> |
99 | <br/> | 99 | <br/> |
100 | </div> | 100 | </div> |
101 | <div·class="doc"> | 101 | <div·class="doc"> |
102 | <a·id="lab | 102 | <a·id="lab775"></a><h1·class="section">Metric·space</h1> |
103 | <div·class="paragraph">·</div> | 103 | <div·class="paragraph">·</div> |
104 | </div> | 104 | </div> |
105 | <div·class="code"> | 105 | <div·class="code"> |
106 | <span·class="id"·title="keyword">Record</span>·<a·id="Metric_Space"·class="idref"·href="#Metric_Space"><span·class="id"·title="record">Metric_Space</span></a>·:·<span·class="id"·title="keyword">Type</span>·:=<br/> | 106 | <span·class="id"·title="keyword">Record</span>·<a·id="Metric_Space"·class="idref"·href="#Metric_Space"><span·class="id"·title="record">Metric_Space</span></a>·:·<span·class="id"·title="keyword">Type</span>·:=<br/> |
Offset 116, 15 lines modified | Offset 116, 15 lines modified | ||
116 | <a·id="dist_refl"·class="idref"·href="#dist_refl"><span·class="id"·title="projection">dist_refl</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:27"·class="idref"·href="#x:27"><span·class="id"·title="binder">x</span></a>·<a·id="y:28"·class="idref"·href="#y:28"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Reals.Rlimit.html#Base:19"><span·class="id"·title="method">Base</span></a>,·<a·class="idref"·href="Coq.Reals.Rlimit.html#dist:20"><span·class="id"·title="method">dist</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#x:27"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#y:28"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#x:27"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#y:28"><span·class="id"·title="variable">y</span></a>;<br/> | 116 | <a·id="dist_refl"·class="idref"·href="#dist_refl"><span·class="id"·title="projection">dist_refl</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:27"·class="idref"·href="#x:27"><span·class="id"·title="binder">x</span></a>·<a·id="y:28"·class="idref"·href="#y:28"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Reals.Rlimit.html#Base:19"><span·class="id"·title="method">Base</span></a>,·<a·class="idref"·href="Coq.Reals.Rlimit.html#dist:20"><span·class="id"·title="method">dist</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#x:27"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#y:28"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#x:27"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#y:28"><span·class="id"·title="variable">y</span></a>;<br/> |
117 | <a·id="dist_tri"·class="idref"·href="#dist_tri"><span·class="id"·title="projection">dist_tri</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:30"·class="idref"·href="#x:30"><span·class="id"·title="binder">x</span></a>·<a·id="y:31"·class="idref"·href="#y:31"><span·class="id"·title="binder">y</span></a>·<a·id="z:32"·class="idref"·href="#z:32"><span·class="id"·title="binder">z</span></a>:<a·class="idref"·href="Coq.Reals.Rlimit.html#Base:19"><span·class="id"·title="method">Base</span></a>,·<a·class="idref"·href="Coq.Reals.Rlimit.html#dist:20"><span·class="id"·title="method">dist</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#x:30"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#y:31"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#dist:20"><span·class="id"·title="method">dist</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#x:30"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#z:32"><span·class="id"·title="variable">z</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#dist:20"><span·class="id"·title="method">dist</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#z:32"><span·class="id"·title="variable">z</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#y:31"><span·class="id"·title="variable">y</span></a>}.<br/> | 117 | <a·id="dist_tri"·class="idref"·href="#dist_tri"><span·class="id"·title="projection">dist_tri</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:30"·class="idref"·href="#x:30"><span·class="id"·title="binder">x</span></a>·<a·id="y:31"·class="idref"·href="#y:31"><span·class="id"·title="binder">y</span></a>·<a·id="z:32"·class="idref"·href="#z:32"><span·class="id"·title="binder">z</span></a>:<a·class="idref"·href="Coq.Reals.Rlimit.html#Base:19"><span·class="id"·title="method">Base</span></a>,·<a·class="idref"·href="Coq.Reals.Rlimit.html#dist:20"><span·class="id"·title="method">dist</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#x:30"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#y:31"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#dist:20"><span·class="id"·title="method">dist</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#x:30"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#z:32"><span·class="id"·title="variable">z</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#dist:20"><span·class="id"·title="method">dist</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#z:32"><span·class="id"·title="variable">z</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#y:31"><span·class="id"·title="variable">y</span></a>}.<br/> |
118 | <br/> | 118 | <br/> |
119 | </div> | 119 | </div> |
120 | <div·class="doc"> | 120 | <div·class="doc"> |
121 | <a·id="lab | 121 | <a·id="lab776"></a><h2·class="section">Limit·in·Metric·space</h2> |
122 | <div·class="paragraph">·</div> | 122 | <div·class="paragraph">·</div> |
123 | </div> | 123 | </div> |
124 | <div·class="code"> | 124 | <div·class="code"> |
125 | <span·class="id"·title="keyword">Definition</span>·<a·id="limit_in"·class="idref"·href="#limit_in"><span·class="id"·title="definition">limit_in</span></a>·(<a·id="X:34"·class="idref"·href="#X:34"><span·class="id"·title="binder">X</span></a>·<a·id="X':35"·class="idref"·href="#X':35"><span·class="id"·title="binder">X'</span></a>:<a·class="idref"·href="Coq.Reals.Rlimit.html#Metric_Space"><span·class="id"·title="record">Metric_Space</span></a>)·(<a·id="f:36"·class="idref"·href="#f:36"><span·class="id"·title="binder">f</span></a>:<a·class="idref"·href="Coq.Reals.Rlimit.html#Base"><span·class="id"·title="projection">Base</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#X:34"><span·class="id"·title="variable">X</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#Base"><span·class="id"·title="projection">Base</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#X':35"><span·class="id"·title="variable">X'</span></a>)<br/> | 125 | <span·class="id"·title="keyword">Definition</span>·<a·id="limit_in"·class="idref"·href="#limit_in"><span·class="id"·title="definition">limit_in</span></a>·(<a·id="X:34"·class="idref"·href="#X:34"><span·class="id"·title="binder">X</span></a>·<a·id="X':35"·class="idref"·href="#X':35"><span·class="id"·title="binder">X'</span></a>:<a·class="idref"·href="Coq.Reals.Rlimit.html#Metric_Space"><span·class="id"·title="record">Metric_Space</span></a>)·(<a·id="f:36"·class="idref"·href="#f:36"><span·class="id"·title="binder">f</span></a>:<a·class="idref"·href="Coq.Reals.Rlimit.html#Base"><span·class="id"·title="projection">Base</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#X:34"><span·class="id"·title="variable">X</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#Base"><span·class="id"·title="projection">Base</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#X':35"><span·class="id"·title="variable">X'</span></a>)<br/> |
Offset 135, 15 lines modified | Offset 135, 15 lines modified | ||
135 | <a·class="idref"·href="Coq.Reals.Rlimit.html#alp:41"><span·class="id"·title="variable">alp</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a><br/> | 135 | <a·class="idref"·href="Coq.Reals.Rlimit.html#alp:41"><span·class="id"·title="variable">alp</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a><br/> |
136 | <a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="x:42"·class="idref"·href="#x:42"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rlimit.html#Base"><span·class="id"·title="projection">Base</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#X:34"><span·class="id"·title="variable">X</span></a>,·<a·class="idref"·href="Coq.Reals.Rlimit.html#D:37"><span·class="id"·title="variable">D</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#x:42"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·(<a·class="idref"·href="Coq.Reals.Rlimit.html#dist"><span·class="id"·title="projection">dist</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#X:34"><span·class="id"·title="variable">X</span></a>)·<a·class="idref"·href="Coq.Reals.Rlimit.html#x:42"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#x0:38"><span·class="id"·title="variable">x0</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#alp:41"><span·class="id"·title="variable">alp</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·(<a·class="idref"·href="Coq.Reals.Rlimit.html#dist"><span·class="id"·title="projection">dist</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#X':35"><span·class="id"·title="variable">X'</span></a>)·(<a·class="idref"·href="Coq.Reals.Rlimit.html#f:36"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#x:42"><span·class="id"·title="variable">x</span></a>)·<a·class="idref"·href="Coq.Reals.Rlimit.html#l:39"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#eps:40"><span·class="id"·title="variable">eps</span></a><a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">)</span></a>.<br/> | 136 | <a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="x:42"·class="idref"·href="#x:42"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rlimit.html#Base"><span·class="id"·title="projection">Base</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#X:34"><span·class="id"·title="variable">X</span></a>,·<a·class="idref"·href="Coq.Reals.Rlimit.html#D:37"><span·class="id"·title="variable">D</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#x:42"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·(<a·class="idref"·href="Coq.Reals.Rlimit.html#dist"><span·class="id"·title="projection">dist</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#X:34"><span·class="id"·title="variable">X</span></a>)·<a·class="idref"·href="Coq.Reals.Rlimit.html#x:42"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#x0:38"><span·class="id"·title="variable">x0</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#alp:41"><span·class="id"·title="variable">alp</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·(<a·class="idref"·href="Coq.Reals.Rlimit.html#dist"><span·class="id"·title="projection">dist</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#X':35"><span·class="id"·title="variable">X'</span></a>)·(<a·class="idref"·href="Coq.Reals.Rlimit.html#f:36"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#x:42"><span·class="id"·title="variable">x</span></a>)·<a·class="idref"·href="Coq.Reals.Rlimit.html#l:39"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#eps:40"><span·class="id"·title="variable">eps</span></a><a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">)</span></a>.<br/> |
137 | <br/> | 137 | <br/> |
138 | </div> | 138 | </div> |
139 | <div·class="doc"> | 139 | <div·class="doc"> |
140 | <a·id="lab | 140 | <a·id="lab777"></a><h2·class="section">R·is·a·metric·space</h2> |
141 | <div·class="paragraph">·</div> | 141 | <div·class="paragraph">·</div> |
142 | </div> | 142 | </div> |
143 | <div·class="code"> | 143 | <div·class="code"> |
144 | <span·class="id"·title="keyword">Definition</span>·<a·id="R_met"·class="idref"·href="#R_met"><span·class="id"·title="definition">R_met</span></a>·:·<a·class="idref"·href="Coq.Reals.Rlimit.html#Metric_Space"><span·class="id"·title="record">Metric_Space</span></a>·:=<br/> | 144 | <span·class="id"·title="keyword">Definition</span>·<a·id="R_met"·class="idref"·href="#R_met"><span·class="id"·title="definition">R_met</span></a>·:·<a·class="idref"·href="Coq.Reals.Rlimit.html#Metric_Space"><span·class="id"·title="record">Metric_Space</span></a>·:=<br/> |
Offset 151, 15 lines modified | Offset 151, 15 lines modified | ||
151 | <br/> | 151 | <br/> |
152 | <br/> | 152 | <br/> |
153 | </div> | 153 | </div> |
154 | <div·class="doc"> | 154 | <div·class="doc"> |
155 | <a·id="lab | 155 | <a·id="lab778"></a><h1·class="section">Limit·1·arg</h1> |
156 | </div> | 156 | </div> |
157 | <div·class="code"> | 157 | <div·class="code"> |
158 | <span·class="id"·title="keyword">Definition</span>·<a·id="Dgf"·class="idref"·href="#Dgf"><span·class="id"·title="definition">Dgf</span></a>·(<a·id="Df:43"·class="idref"·href="#Df:43"><span·class="id"·title="binder">Df</span></a>·<a·id="Dg:44"·class="idref"·href="#Dg:44"><span·class="id"·title="binder">Dg</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>)·(<a·id="f:45"·class="idref"·href="#f:45"><span·class="id"·title="binder">f</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="x:46"·class="idref"·href="#x:46"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:=·<a·class="idref"·href="Coq.Reals.Rlimit.html#Df:43"><span·class="id"·title="variable">Df</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#x:46"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#Dg:44"><span·class="id"·title="variable">Dg</span></a>·(<a·class="idref"·href="Coq.Reals.Rlimit.html#f:45"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#x:46"><span·class="id"·title="variable">x</span></a>).<br/> | 158 | <span·class="id"·title="keyword">Definition</span>·<a·id="Dgf"·class="idref"·href="#Dgf"><span·class="id"·title="definition">Dgf</span></a>·(<a·id="Df:43"·class="idref"·href="#Df:43"><span·class="id"·title="binder">Df</span></a>·<a·id="Dg:44"·class="idref"·href="#Dg:44"><span·class="id"·title="binder">Dg</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>)·(<a·id="f:45"·class="idref"·href="#f:45"><span·class="id"·title="binder">f</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="x:46"·class="idref"·href="#x:46"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:=·<a·class="idref"·href="Coq.Reals.Rlimit.html#Df:43"><span·class="id"·title="variable">Df</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#x:46"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#Dg:44"><span·class="id"·title="variable">Dg</span></a>·(<a·class="idref"·href="Coq.Reals.Rlimit.html#f:45"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Rlimit.html#x:46"><span·class="id"·title="variable">x</span></a>).<br/> |
159 | <br/> | 159 | <br/> |
160 | <span·class="id"·title="keyword">Definition</span>·<a·id="limit1_in"·class="idref"·href="#limit1_in"><span·class="id"·title="definition">limit1_in</span></a>·(<a·id="f:47"·class="idref"·href="#f:47"><span·class="id"·title="binder">f</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="D:48"·class="idref"·href="#D:48"><span·class="id"·title="binder">D</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>)·(<a·id="l:49"·class="idref"·href="#l:49"><span·class="id"·title="binder">l</span></a>·<a·id="x0:50"·class="idref"·href="#x0:50"><span·class="id"·title="binder">x0</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<span·class="id"·title="keyword">Prop</span>·:=<br/> | 160 | <span·class="id"·title="keyword">Definition</span>·<a·id="limit1_in"·class="idref"·href="#limit1_in"><span·class="id"·title="definition">limit1_in</span></a>·(<a·id="f:47"·class="idref"·href="#f:47"><span·class="id"·title="binder">f</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="D:48"·class="idref"·href="#D:48"><span·class="id"·title="binder">D</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>)·(<a·id="l:49"·class="idref"·href="#l:49"><span·class="id"·title="binder">l</span></a>·<a·id="x0:50"·class="idref"·href="#x0:50"><span·class="id"·title="binder">x0</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<span·class="id"·title="keyword">Prop</span>·:=<br/> |
Offset 71, 15 lines modified | Offset 71, 15 lines modified | ||
71 | <br/> | 71 | <br/> |
72 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Reals.RIneq.html#"><span·class="id"·title="library">RIneq</span></a>.<br/> | 72 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Reals.RIneq.html#"><span·class="id"·title="library">RIneq</span></a>.<br/> |
73 | <br/> | 73 | <br/> |
74 | </div> | 74 | </div> |
75 | <div·class="doc"> | 75 | <div·class="doc"> |
76 | <a·id="lab | 76 | <a·id="lab783"></a><h1·class="section">Decidability·of·arithmetical·statements</h1> |
77 | <div·class="paragraph">·</div> | 77 | <div·class="paragraph">·</div> |
78 | ·One·can·iterate·this·lemma·and·use·classical·logic·to·decide·any | 78 | ·One·can·iterate·this·lemma·and·use·classical·logic·to·decide·any |
79 | statement·in·the·arithmetical·hierarchy.· | 79 | statement·in·the·arithmetical·hierarchy.· |
80 | </div> | 80 | </div> |
81 | <div·class="code"> | 81 | <div·class="code"> |
Offset 97, 15 lines modified | Offset 97, 15 lines modified | ||
97 | <br/> | 97 | <br/> |
98 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Reals.Rlogic.html#Arithmetical_dec"><span·class="id"·title="section">Arithmetical_dec</span></a>.<br/> | 98 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Reals.Rlogic.html#Arithmetical_dec"><span·class="id"·title="section">Arithmetical_dec</span></a>.<br/> |
99 | <br/> | 99 | <br/> |
100 | </div> | 100 | </div> |
101 | <div·class="doc"> | 101 | <div·class="doc"> |
102 | <a·id="lab | 102 | <a·id="lab784"></a><h1·class="section">Derivability·of·the·Archimedean·axiom</h1> |
103 | <div·class="paragraph">·</div> | 103 | <div·class="paragraph">·</div> |
104 | ·This·is·a·standard·proof·(it·has·been·taken·from·PlanetMath).·It·is | 104 | ·This·is·a·standard·proof·(it·has·been·taken·from·PlanetMath).·It·is |
105 | formulated·negatively·so·as·to·avoid·the·need·for·classical | 105 | formulated·negatively·so·as·to·avoid·the·need·for·classical |
106 | logic.·Using·a·proof·of·<span·class="inlinecode">{<span·class="id"·title="var">n</span></span>·<span·class="inlinecode">|</span>·<span·class="inlinecode">~<span·class="id"·title="var">P</span></span>·<span·class="inlinecode"><span·class="id"·title="var">n</span>}+{<span·class="id"·title="keyword">forall</span></span>·<span·class="inlinecode"><span·class="id"·title="var">n</span>,</span>·<span·class="inlinecode"><span·class="id"·title="var">P</span></span>·<span·class="inlinecode"><span·class="id"·title="var">n</span>}</span>,·we·can·in | 106 | logic.·Using·a·proof·of·<span·class="inlinecode">{<span·class="id"·title="var">n</span></span>·<span·class="inlinecode">|</span>·<span·class="inlinecode">~<span·class="id"·title="var">P</span></span>·<span·class="inlinecode"><span·class="id"·title="var">n</span>}+{<span·class="id"·title="keyword">forall</span></span>·<span·class="inlinecode"><span·class="id"·title="var">n</span>,</span>·<span·class="inlinecode"><span·class="id"·title="var">P</span></span>·<span·class="inlinecode"><span·class="id"·title="var">n</span>}</span>,·we·can·in |
107 | principle·also·derive·<span·class="inlinecode"><span·class="id"·title="var">up</span></span>·and·its·specification.·The·proof·above | 107 | principle·also·derive·<span·class="inlinecode"><span·class="id"·title="var">up</span></span>·and·its·specification.·The·proof·above |
Offset 117, 15 lines modified | Offset 117, 15 lines modified | ||
117 | <span·class="id"·title="keyword">Theorem</span>·<a·id="not_not_archimedean"·class="idref"·href="#not_not_archimedean"><span·class="id"·title="lemma">not_not_archimedean</span></a>·:<br/> | 117 | <span·class="id"·title="keyword">Theorem</span>·<a·id="not_not_archimedean"·class="idref"·href="#not_not_archimedean"><span·class="id"·title="lemma">not_not_archimedean</span></a>·:<br/> |
118 | <span·class="id"·title="keyword">forall</span>·<a·id="r:22"·class="idref"·href="#r:22"><span·class="id"·title="binder">r</span></a>·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="n:23"·class="idref"·href="#n:23"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>,·(<a·class="idref"·href="Coq.Reals.Raxioms.html#INR"><span·class="id"·title="definition">INR</span></a>·<a·class="idref"·href="Coq.Reals.Rlogic.html#n:23"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Rlogic.html#r:22"><span·class="id"·title="variable">r</span></a>)%<span·class="id"·title="var">R</span><a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">)</span></a>.<br/> | 118 | <span·class="id"·title="keyword">forall</span>·<a·id="r:22"·class="idref"·href="#r:22"><span·class="id"·title="binder">r</span></a>·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="n:23"·class="idref"·href="#n:23"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>,·(<a·class="idref"·href="Coq.Reals.Raxioms.html#INR"><span·class="id"·title="definition">INR</span></a>·<a·class="idref"·href="Coq.Reals.Rlogic.html#n:23"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Rlogic.html#r:22"><span·class="id"·title="variable">r</span></a>)%<span·class="id"·title="var">R</span><a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">)</span></a>.<br/> |
119 | <br/> | 119 | <br/> |
120 | </div> | 120 | </div> |
121 | <div·class="doc"> | 121 | <div·class="doc"> |
122 | <a·id="lab | 122 | <a·id="lab785"></a><h1·class="section">Decidability·of·negated·formulas</h1> |
123 | </div> | 123 | </div> |
124 | <div·class="code"> | 124 | <div·class="code"> |
125 | <br/> | 125 | <br/> |
126 | <span·class="id"·title="keyword">Lemma</span>·<a·id="sig_not_dec"·class="idref"·href="#sig_not_dec"><span·class="id"·title="lemma">sig_not_dec</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="P:30"·class="idref"·href="#P:30"><span·class="id"·title="binder">P</span></a>·:·<span·class="id"·title="keyword">Prop</span>,·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.Init.Logic.html#not"><span·class="id"·title="definition">not</span></a>·(<a·class="idref"·href="Coq.Init.Logic.html#not"><span·class="id"·title="definition">not</span></a>·<a·class="idref"·href="Coq.Reals.Rlogic.html#P:30"><span·class="id"·title="variable">P</span></a>)<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.Init.Logic.html#not"><span·class="id"·title="definition">not</span></a>·<a·class="idref"·href="Coq.Reals.Rlogic.html#P:30"><span·class="id"·title="variable">P</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>.<br/> | 126 | <span·class="id"·title="keyword">Lemma</span>·<a·id="sig_not_dec"·class="idref"·href="#sig_not_dec"><span·class="id"·title="lemma">sig_not_dec</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="P:30"·class="idref"·href="#P:30"><span·class="id"·title="binder">P</span></a>·:·<span·class="id"·title="keyword">Prop</span>,·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.Init.Logic.html#not"><span·class="id"·title="definition">not</span></a>·(<a·class="idref"·href="Coq.Init.Logic.html#not"><span·class="id"·title="definition">not</span></a>·<a·class="idref"·href="Coq.Reals.Rlogic.html#P:30"><span·class="id"·title="variable">P</span></a>)<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.Init.Logic.html#not"><span·class="id"·title="definition">not</span></a>·<a·class="idref"·href="Coq.Reals.Rlogic.html#P:30"><span·class="id"·title="variable">P</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>.<br/> |
127 | </div> | 127 | </div> |
Offset 51, 15 lines modified | Offset 51, 15 lines modified | ||
51 | <br/> | 51 | <br/> |
52 | <span·class="id"·title="keyword">Local·Ltac</span>·<span·class="id"·title="var">Tauto.intuition_solver</span>·::=·<span·class="id"·title="tactic">auto</span>·<span·class="id"·title="keyword">with</span>·<span·class="id"·title="var">real</span>.<br/> | 52 | <span·class="id"·title="keyword">Local·Ltac</span>·<span·class="id"·title="var">Tauto.intuition_solver</span>·::=·<span·class="id"·title="tactic">auto</span>·<span·class="id"·title="keyword">with</span>·<span·class="id"·title="var">real</span>.<br/> |
53 | <br/> | 53 | <br/> |
54 | </div> | 54 | </div> |
55 | <div·class="doc"> | 55 | <div·class="doc"> |
56 | <a·id="lab | 56 | <a·id="lab779"></a><h1·class="section">Maximum·and·Minimum·of·two·real·numbers</h1> |
57 | </div> | 57 | </div> |
58 | <div·class="code"> | 58 | <div·class="code"> |
59 | <br/> | 59 | <br/> |
60 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">R_scope</span>.<br/> | 60 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">R_scope</span>.<br/> |
Offset 108, 15 lines modified | Offset 108, 15 lines modified | ||
108 | <br/> | 108 | <br/> |
109 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#UsualMinMaxProperties"><span·class="id"·title="module">UsualMinMaxProperties</span></a>·<a·class="idref"·href="Coq.Reals.ROrderedType.html#R_as_OT"><span·class="id"·title="module">R_as_OT</span></a>·<a·class="idref"·href="Coq.Reals.Rminmax.html#RHasMinMax"><span·class="id"·title="module">RHasMinMax</span></a>.<br/> | 109 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#UsualMinMaxProperties"><span·class="id"·title="module">UsualMinMaxProperties</span></a>·<a·class="idref"·href="Coq.Reals.ROrderedType.html#R_as_OT"><span·class="id"·title="module">R_as_OT</span></a>·<a·class="idref"·href="Coq.Reals.Rminmax.html#RHasMinMax"><span·class="id"·title="module">RHasMinMax</span></a>.<br/> |
110 | <br/> | 110 | <br/> |
111 | </div> | 111 | </div> |
112 | <div·class="doc"> | 112 | <div·class="doc"> |
113 | <a·id="lab | 113 | <a·id="lab780"></a><h1·class="section">Properties·specific·to·the·<span·class="inlinecode"><span·class="id"·title="var">R</span></span>·domain</h1> |
114 | <div·class="paragraph">·</div> | 114 | <div·class="paragraph">·</div> |
115 | ·Compatibilities·(consequences·of·monotonicity)· | 115 | ·Compatibilities·(consequences·of·monotonicity)· |
116 | </div> | 116 | </div> |
117 | <div·class="code"> | 117 | <div·class="code"> |
Offset 72, 15 lines modified | Offset 72, 15 lines modified | ||
72 | <br/> | 72 | <br/> |
73 | <span·class="id"·title="keyword">Lemma</span>·<a·id="exp_le_3"·class="idref"·href="#exp_le_3"><span·class="id"·title="lemma">exp_le_3</span></a>·:·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#exp"><span·class="id"·title="definition">exp</span></a>·1·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·3.<br/> | 73 | <span·class="id"·title="keyword">Lemma</span>·<a·id="exp_le_3"·class="idref"·href="#exp_le_3"><span·class="id"·title="lemma">exp_le_3</span></a>·:·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#exp"><span·class="id"·title="definition">exp</span></a>·1·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·3.<br/> |
74 | <br/> | 74 | <br/> |
75 | </div> | 75 | </div> |
76 | <div·class="doc"> | 76 | <div·class="doc"> |
77 | <a·id="lab | 77 | <a·id="lab803"></a><h1·class="section">Properties·of··Exp</h1> |
78 | </div> | 78 | </div> |
79 | <div·class="code"> | 79 | <div·class="code"> |
80 | <br/> | 80 | <br/> |
81 | <span·class="id"·title="keyword">Lemma</span>·<a·id="exp_neq_0"·class="idref"·href="#exp_neq_0"><span·class="id"·title="lemma">exp_neq_0</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:14"·class="idref"·href="#x:14"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#exp"><span·class="id"·title="definition">exp</span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#x:14"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·0.<br/> | 81 | <span·class="id"·title="keyword">Lemma</span>·<a·id="exp_neq_0"·class="idref"·href="#exp_neq_0"><span·class="id"·title="lemma">exp_neq_0</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:14"·class="idref"·href="#x:14"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#exp"><span·class="id"·title="definition">exp</span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#x:14"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·0.<br/> |
Offset 125, 15 lines modified | Offset 125, 15 lines modified | ||
125 | <br/> | 125 | <br/> |
126 | <span·class="id"·title="keyword">Theorem</span>·<a·id="exp_Ropp"·class="idref"·href="#exp_Ropp"><span·class="id"·title="lemma">exp_Ropp</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:43"·class="idref"·href="#x:43"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#exp"><span·class="id"·title="definition">exp</span></a>·(<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#x:43"><span·class="id"·title="variable">x</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#2299a6ef56270a66cc1b95489d0f6e3a"><span·class="id"·title="notation">/</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#exp"><span·class="id"·title="definition">exp</span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#x:43"><span·class="id"·title="variable">x</span></a>.<br/> | 126 | <span·class="id"·title="keyword">Theorem</span>·<a·id="exp_Ropp"·class="idref"·href="#exp_Ropp"><span·class="id"·title="lemma">exp_Ropp</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:43"·class="idref"·href="#x:43"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#exp"><span·class="id"·title="definition">exp</span></a>·(<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#x:43"><span·class="id"·title="variable">x</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#2299a6ef56270a66cc1b95489d0f6e3a"><span·class="id"·title="notation">/</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#exp"><span·class="id"·title="definition">exp</span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#x:43"><span·class="id"·title="variable">x</span></a>.<br/> |
127 | <br/> | 127 | <br/> |
128 | </div> | 128 | </div> |
129 | <div·class="doc"> | 129 | <div·class="doc"> |
130 | <a·id="lab | 130 | <a·id="lab804"></a><h1·class="section">Properties·of··Ln</h1> |
131 | </div> | 131 | </div> |
132 | <div·class="code"> | 132 | <div·class="code"> |
133 | <br/> | 133 | <br/> |
134 | <span·class="id"·title="keyword">Theorem</span>·<a·id="ln_increasing"·class="idref"·href="#ln_increasing"><span·class="id"·title="lemma">ln_increasing</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:44"·class="idref"·href="#x:44"><span·class="id"·title="binder">x</span></a>·<a·id="y:45"·class="idref"·href="#y:45"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·0·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#x:44"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#x:44"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#y:45"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#ln"><span·class="id"·title="definition">ln</span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#x:44"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#ln"><span·class="id"·title="definition">ln</span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#y:45"><span·class="id"·title="variable">y</span></a>.<br/> | 134 | <span·class="id"·title="keyword">Theorem</span>·<a·id="ln_increasing"·class="idref"·href="#ln_increasing"><span·class="id"·title="lemma">ln_increasing</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:44"·class="idref"·href="#x:44"><span·class="id"·title="binder">x</span></a>·<a·id="y:45"·class="idref"·href="#y:45"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·0·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#x:44"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#x:44"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#y:45"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#ln"><span·class="id"·title="definition">ln</span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#x:44"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#ln"><span·class="id"·title="definition">ln</span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#y:45"><span·class="id"·title="variable">y</span></a>.<br/> |
Offset 165, 27 lines modified | Offset 165, 27 lines modified | ||
165 | <span·class="id"·title="keyword">Theorem</span>·<a·id="ln_continue"·class="idref"·href="#ln_continue"><span·class="id"·title="lemma">ln_continue</span></a>·:<br/> | 165 | <span·class="id"·title="keyword">Theorem</span>·<a·id="ln_continue"·class="idref"·href="#ln_continue"><span·class="id"·title="lemma">ln_continue</span></a>·:<br/> |
166 | <span·class="id"·title="keyword">forall</span>·<a·id="y:57"·class="idref"·href="#y:57"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·0·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#y:57"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rderiv.html#continue_in"><span·class="id"·title="definition">continue_in</span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#ln"><span·class="id"·title="definition">ln</span></a>·(<span·class="id"·title="keyword">fun</span>·<a·id="x:58"·class="idref"·href="#x:58"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·=>·0·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#x:58"><span·class="id"·title="variable">x</span></a>)·<a·class="idref"·href="Coq.Reals.Rpower.html#y:57"><span·class="id"·title="variable">y</span></a>.<br/> | 166 | <span·class="id"·title="keyword">forall</span>·<a·id="y:57"·class="idref"·href="#y:57"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·0·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#y:57"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rderiv.html#continue_in"><span·class="id"·title="definition">continue_in</span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#ln"><span·class="id"·title="definition">ln</span></a>·(<span·class="id"·title="keyword">fun</span>·<a·id="x:58"·class="idref"·href="#x:58"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·=>·0·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#x:58"><span·class="id"·title="variable">x</span></a>)·<a·class="idref"·href="Coq.Reals.Rpower.html#y:57"><span·class="id"·title="variable">y</span></a>.<br/> |
167 | <br/> | 167 | <br/> |
168 | </div> | 168 | </div> |
169 | <div·class="doc"> | 169 | <div·class="doc"> |
170 | <a·id="lab | 170 | <a·id="lab805"></a><h1·class="section">Definition·of··Rpower</h1> |
171 | </div> | 171 | </div> |
172 | <div·class="code"> | 172 | <div·class="code"> |
173 | <br/> | 173 | <br/> |
174 | <span·class="id"·title="keyword">Definition</span>·<a·id="Rpower"·class="idref"·href="#Rpower"><span·class="id"·title="definition">Rpower</span></a>·(<a·id="x:59"·class="idref"·href="#x:59"><span·class="id"·title="binder">x</span></a>·<a·id="y:60"·class="idref"·href="#y:60"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:=·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#exp"><span·class="id"·title="definition">exp</span></a>·(<a·class="idref"·href="Coq.Reals.Rpower.html#y:60"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#ln"><span·class="id"·title="definition">ln</span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#x:59"><span·class="id"·title="variable">x</span></a>).<br/> | 174 | <span·class="id"·title="keyword">Definition</span>·<a·id="Rpower"·class="idref"·href="#Rpower"><span·class="id"·title="definition">Rpower</span></a>·(<a·id="x:59"·class="idref"·href="#x:59"><span·class="id"·title="binder">x</span></a>·<a·id="y:60"·class="idref"·href="#y:60"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:=·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#exp"><span·class="id"·title="definition">exp</span></a>·(<a·class="idref"·href="Coq.Reals.Rpower.html#y:60"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#ln"><span·class="id"·title="definition">ln</span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#x:59"><span·class="id"·title="variable">x</span></a>).<br/> |
175 | <br/> | 175 | <br/> |
176 | </div> | 176 | </div> |
177 | <div·class="doc"> | 177 | <div·class="doc"> |
178 | <a·id="lab | 178 | <a·id="lab806"></a><h1·class="section">Properties·of··Rpower</h1> |
179 | <div·class="paragraph">·</div> | 179 | <div·class="paragraph">·</div> |
180 | ·Note:·<span·class="inlinecode"><span·class="id"·title="var">Rpower</span></span>·is·prolongated·to·<span·class="inlinecode">1</span>·on·negative·real·numbers·and | 180 | ·Note:·<span·class="inlinecode"><span·class="id"·title="var">Rpower</span></span>·is·prolongated·to·<span·class="inlinecode">1</span>·on·negative·real·numbers·and |
181 | ····it·thus·does·not·extend·integer·power.·The·next·two·lemmas,·which | 181 | ····it·thus·does·not·extend·integer·power.·The·next·two·lemmas,·which |
182 | ····hold·for·integer·power,·accidentally·hold·on·negative·real·numbers | 182 | ····hold·for·integer·power,·accidentally·hold·on·negative·real·numbers |
183 | ····as·a·side·effect·of·the·default·value·taken·on·negative·real | 183 | ····as·a·side·effect·of·the·default·value·taken·on·negative·real |
Offset 244, 15 lines modified | Offset 244, 15 lines modified | ||
244 | <br/> | 244 | <br/> |
245 | <span·class="id"·title="keyword">Theorem</span>·<a·id="ln_lt_2"·class="idref"·href="#ln_lt_2"><span·class="id"·title="lemma">ln_lt_2</span></a>·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#2299a6ef56270a66cc1b95489d0f6e3a"><span·class="id"·title="notation">/</span></a>·2·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#ln"><span·class="id"·title="definition">ln</span></a>·2.<br/> | 245 | <span·class="id"·title="keyword">Theorem</span>·<a·id="ln_lt_2"·class="idref"·href="#ln_lt_2"><span·class="id"·title="lemma">ln_lt_2</span></a>·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#2299a6ef56270a66cc1b95489d0f6e3a"><span·class="id"·title="notation">/</span></a>·2·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rpower.html#ln"><span·class="id"·title="definition">ln</span></a>·2.<br/> |
246 | <br/> | 246 | <br/> |
247 | </div> | 247 | </div> |
248 | <div·class="doc"> | 248 | <div·class="doc"> |
249 | <a·id="lab | 249 | <a·id="lab807"></a><h1·class="section">Differentiability·of·Ln·and·Rpower</h1> |
250 | </div> | 250 | </div> |
251 | <div·class="code"> | 251 | <div·class="code"> |
252 | <br/> | 252 | <br/> |
253 | <span·class="id"·title="keyword">Theorem</span>·<a·id="limit1_ext"·class="idref"·href="#limit1_ext"><span·class="id"·title="lemma">limit1_ext</span></a>·:<br/> | 253 | <span·class="id"·title="keyword">Theorem</span>·<a·id="limit1_ext"·class="idref"·href="#limit1_ext"><span·class="id"·title="lemma">limit1_ext</span></a>·:<br/> |
254 | <span·class="id"·title="keyword">forall</span>·(<a·id="f:90"·class="idref"·href="#f:90"><span·class="id"·title="binder">f</span></a>·<a·id="g:91"·class="idref"·href="#g:91"><span·class="id"·title="binder">g</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="D:92"·class="idref"·href="#D:92"><span·class="id"·title="binder">D</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>)·(<a·id="l:93"·class="idref"·href="#l:93"><span·class="id"·title="binder">l</span></a>·<a·id="x:94"·class="idref"·href="#x:94"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>),<br/> | 254 | <span·class="id"·title="keyword">forall</span>·(<a·id="f:90"·class="idref"·href="#f:90"><span·class="id"·title="binder">f</span></a>·<a·id="g:91"·class="idref"·href="#g:91"><span·class="id"·title="binder">g</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="D:92"·class="idref"·href="#D:92"><span·class="id"·title="binder">D</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>)·(<a·id="l:93"·class="idref"·href="#l:93"><span·class="id"·title="binder">l</span></a>·<a·id="x:94"·class="idref"·href="#x:94"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>),<br/> |
Offset 54, 15 lines modified | Offset 54, 15 lines modified | ||
54 | <br/> | 54 | <br/> |
55 | <span·class="id"·title="keyword">Implicit</span>·<span·class="id"·title="keyword">Type</span>·<span·class="id"·title="var">r</span>·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>.<br/> | 55 | <span·class="id"·title="keyword">Implicit</span>·<span·class="id"·title="keyword">Type</span>·<span·class="id"·title="var">r</span>·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>.<br/> |
56 | <br/> | 56 | <br/> |
57 | </div> | 57 | </div> |
58 | <div·class="doc"> | 58 | <div·class="doc"> |
59 | <a·id="lab | 59 | <a·id="lab801"></a><h1·class="section">Definition·of·sequence·and·properties</h1> |
60 | </div> | 60 | </div> |
61 | <div·class="code"> | 61 | <div·class="code"> |
62 | <br/> | 62 | <br/> |
63 | <span·class="id"·title="keyword">Section</span>·<a·id="sequence"·class="idref"·href="#sequence"><span·class="id"·title="section">sequence</span></a>.<br/> | 63 | <span·class="id"·title="keyword">Section</span>·<a·id="sequence"·class="idref"·href="#sequence"><span·class="id"·title="section">sequence</span></a>.<br/> |
Offset 126, 15 lines modified | Offset 126, 15 lines modified | ||
126 | <br/> | 126 | <br/> |
127 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Reals.Rseries.html#sequence"><span·class="id"·title="section">sequence</span></a>.<br/> | 127 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Reals.Rseries.html#sequence"><span·class="id"·title="section">sequence</span></a>.<br/> |
128 | <br/> | 128 | <br/> |
129 | </div> | 129 | </div> |
130 | <div·class="doc"> | 130 | <div·class="doc"> |
131 | <a·id="lab | 131 | <a·id="lab802"></a><h1·class="section">Definition·of·Power·Series·and·properties</h1> |
132 | </div> | 132 | </div> |
133 | <div·class="code"> | 133 | <div·class="code"> |
134 | <br/> | 134 | <br/> |
135 | <span·class="id"·title="keyword">Section</span>·<a·id="Isequence"·class="idref"·href="#Isequence"><span·class="id"·title="section">Isequence</span></a>.<br/> | 135 | <span·class="id"·title="keyword">Section</span>·<a·id="Isequence"·class="idref"·href="#Isequence"><span·class="id"·title="section">Isequence</span></a>.<br/> |
Offset 55, 15 lines modified | Offset 55, 15 lines modified | ||
55 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Logic.Classical_Pred_Type.html#"><span·class="id"·title="library">Classical_Pred_Type</span></a>.<br/> | 55 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Logic.Classical_Pred_Type.html#"><span·class="id"·title="library">Classical_Pred_Type</span></a>.<br/> |
56 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">R_scope</span>.<br/> | 56 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">R_scope</span>.<br/> |
57 | <br/> | 57 | <br/> |
58 | </div> | 58 | </div> |
59 | <div·class="doc"> | 59 | <div·class="doc"> |
60 | <a·id="lab | 60 | <a·id="lab824"></a><h1·class="section">General·definitions·and·propositions</h1> |
61 | </div> | 61 | </div> |
62 | <div·class="code"> | 62 | <div·class="code"> |
63 | <br/> | 63 | <br/> |
64 | <span·class="id"·title="keyword">Definition</span>·<a·id="included"·class="idref"·href="#included"><span·class="id"·title="definition">included</span></a>·(<a·id="D1:1"·class="idref"·href="#D1:1"><span·class="id"·title="binder">D1</span></a>·<a·id="D2:2"·class="idref"·href="#D2:2"><span·class="id"·title="binder">D2</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>)·:·<span·class="id"·title="keyword">Prop</span>·:=·<span·class="id"·title="keyword">forall</span>·<a·id="x:3"·class="idref"·href="#x:3"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Rtopology.html#D1:1"><span·class="id"·title="variable">D1</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#x:3"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#D2:2"><span·class="id"·title="variable">D2</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#x:3"><span·class="id"·title="variable">x</span></a>.<br/> | 64 | <span·class="id"·title="keyword">Definition</span>·<a·id="included"·class="idref"·href="#included"><span·class="id"·title="definition">included</span></a>·(<a·id="D1:1"·class="idref"·href="#D1:1"><span·class="id"·title="binder">D1</span></a>·<a·id="D2:2"·class="idref"·href="#D2:2"><span·class="id"·title="binder">D2</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>)·:·<span·class="id"·title="keyword">Prop</span>·:=·<span·class="id"·title="keyword">forall</span>·<a·id="x:3"·class="idref"·href="#x:3"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Rtopology.html#D1:1"><span·class="id"·title="variable">D1</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#x:3"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#D2:2"><span·class="id"·title="variable">D2</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#x:3"><span·class="id"·title="variable">x</span></a>.<br/> |
65 | <span·class="id"·title="keyword">Definition</span>·<a·id="disc"·class="idref"·href="#disc"><span·class="id"·title="definition">disc</span></a>·(<a·id="x:4"·class="idref"·href="#x:4"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="delta:5"·class="idref"·href="#delta:5"><span·class="id"·title="binder">delta</span></a>:<a·class="idref"·href="Coq.Reals.RIneq.html#posreal"><span·class="id"·title="record">posreal</span></a>)·(<a·id="y:6"·class="idref"·href="#y:6"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<span·class="id"·title="keyword">Prop</span>·:=·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#Rabs"><span·class="id"·title="definition">Rabs</span></a>·(<a·class="idref"·href="Coq.Reals.Rtopology.html#y:6"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#x:4"><span·class="id"·title="variable">x</span></a>)·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#delta:5"><span·class="id"·title="variable">delta</span></a>.<br/> | 65 | <span·class="id"·title="keyword">Definition</span>·<a·id="disc"·class="idref"·href="#disc"><span·class="id"·title="definition">disc</span></a>·(<a·id="x:4"·class="idref"·href="#x:4"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="delta:5"·class="idref"·href="#delta:5"><span·class="id"·title="binder">delta</span></a>:<a·class="idref"·href="Coq.Reals.RIneq.html#posreal"><span·class="id"·title="record">posreal</span></a>)·(<a·id="y:6"·class="idref"·href="#y:6"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<span·class="id"·title="keyword">Prop</span>·:=·<a·class="idref"·href="Coq.Reals.Rbasic_fun.html#Rabs"><span·class="id"·title="definition">Rabs</span></a>·(<a·class="idref"·href="Coq.Reals.Rtopology.html#y:6"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#x:4"><span·class="id"·title="variable">x</span></a>)·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#delta:5"><span·class="id"·title="variable">delta</span></a>.<br/> |
Offset 303, 15 lines modified | Offset 303, 15 lines modified | ||
303 | <a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="c:276"·class="idref"·href="#c:276"><span·class="id"·title="binder">c</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Rtopology.html#a:274"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#c:276"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#b:275"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#continuity_pt"><span·class="id"·title="definition">continuity_pt</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#f:273"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#c:276"><span·class="id"·title="variable">c</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 303 | <a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="c:276"·class="idref"·href="#c:276"><span·class="id"·title="binder">c</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Rtopology.html#a:274"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#c:276"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#b:275"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Ranalysis1.html#continuity_pt"><span·class="id"·title="definition">continuity_pt</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#f:273"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#c:276"><span·class="id"·title="variable">c</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
304 | <a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">exists</span></a>·<a·id="mx:277"·class="idref"·href="#mx:277"><span·class="id"·title="binder">mx</span></a>·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="c:278"·class="idref"·href="#c:278"><span·class="id"·title="binder">c</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Rtopology.html#a:274"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#c:278"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#b:275"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#f:273"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#mx:277"><span·class="id"·title="variable">mx</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#f:273"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#c:278"><span·class="id"·title="variable">c</span></a><a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#a:274"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#mx:277"><span·class="id"·title="variable">mx</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#b:275"><span·class="id"·title="variable">b</span></a>.<br/> | 304 | <a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">exists</span></a>·<a·id="mx:277"·class="idref"·href="#mx:277"><span·class="id"·title="binder">mx</span></a>·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="c:278"·class="idref"·href="#c:278"><span·class="id"·title="binder">c</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Rtopology.html#a:274"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#c:278"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#b:275"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#f:273"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#mx:277"><span·class="id"·title="variable">mx</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#f:273"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#c:278"><span·class="id"·title="variable">c</span></a><a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#a:274"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#mx:277"><span·class="id"·title="variable">mx</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#b:275"><span·class="id"·title="variable">b</span></a>.<br/> |
305 | <br/> | 305 | <br/> |
306 | </div> | 306 | </div> |
307 | <div·class="doc"> | 307 | <div·class="doc"> |
308 | <a·id="lab | 308 | <a·id="lab825"></a><h1·class="section">Proof·of·Bolzano-Weierstrass·theorem</h1> |
309 | </div> | 309 | </div> |
310 | <div·class="code"> | 310 | <div·class="code"> |
311 | <br/> | 311 | <br/> |
312 | <span·class="id"·title="keyword">Definition</span>·<a·id="ValAdh"·class="idref"·href="#ValAdh"><span·class="id"·title="definition">ValAdh</span></a>·(<a·id="un:281"·class="idref"·href="#un:281"><span·class="id"·title="binder">un</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="x:282"·class="idref"·href="#x:282"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<span·class="id"·title="keyword">Prop</span>·:=<br/> | 312 | <span·class="id"·title="keyword">Definition</span>·<a·id="ValAdh"·class="idref"·href="#ValAdh"><span·class="id"·title="definition">ValAdh</span></a>·(<a·id="un:281"·class="idref"·href="#un:281"><span·class="id"·title="binder">un</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="x:282"·class="idref"·href="#x:282"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<span·class="id"·title="keyword">Prop</span>·:=<br/> |
313 | <span·class="id"·title="keyword">forall</span>·(<a·id="V:283"·class="idref"·href="#V:283"><span·class="id"·title="binder">V</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>)·(<a·id="N:284"·class="idref"·href="#N:284"><span·class="id"·title="binder">N</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>),<br/> | 313 | <span·class="id"·title="keyword">forall</span>·(<a·id="V:283"·class="idref"·href="#V:283"><span·class="id"·title="binder">V</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>)·(<a·id="N:284"·class="idref"·href="#N:284"><span·class="id"·title="binder">N</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>),<br/> |
Offset 376, 15 lines modified | Offset 376, 15 lines modified | ||
376 | <span·class="id"·title="keyword">forall</span>·(<a·id="un:347"·class="idref"·href="#un:347"><span·class="id"·title="binder">un</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="X:348"·class="idref"·href="#X:348"><span·class="id"·title="binder">X</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>),<br/> | 376 | <span·class="id"·title="keyword">forall</span>·(<a·id="un:347"·class="idref"·href="#un:347"><span·class="id"·title="binder">un</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="X:348"·class="idref"·href="#X:348"><span·class="id"·title="binder">X</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>),<br/> |
377 | <a·class="idref"·href="Coq.Reals.Rtopology.html#compact"><span·class="id"·title="definition">compact</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#X:348"><span·class="id"·title="variable">X</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="n:349"·class="idref"·href="#n:349"><span·class="id"·title="binder">n</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>,·<a·class="idref"·href="Coq.Reals.Rtopology.html#X:348"><span·class="id"·title="variable">X</span></a>·(<a·class="idref"·href="Coq.Reals.Rtopology.html#un:347"><span·class="id"·title="variable">un</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#n:349"><span·class="id"·title="variable">n</span></a>)<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>··<a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">exists</span></a>·<a·id="l:350"·class="idref"·href="#l:350"><span·class="id"·title="binder">l</span></a>·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#ValAdh"><span·class="id"·title="definition">ValAdh</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#un:347"><span·class="id"·title="variable">un</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#l:350"><span·class="id"·title="variable">l</span></a>.<br/> | 377 | <a·class="idref"·href="Coq.Reals.Rtopology.html#compact"><span·class="id"·title="definition">compact</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#X:348"><span·class="id"·title="variable">X</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="n:349"·class="idref"·href="#n:349"><span·class="id"·title="binder">n</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>,·<a·class="idref"·href="Coq.Reals.Rtopology.html#X:348"><span·class="id"·title="variable">X</span></a>·(<a·class="idref"·href="Coq.Reals.Rtopology.html#un:347"><span·class="id"·title="variable">un</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#n:349"><span·class="id"·title="variable">n</span></a>)<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>··<a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">exists</span></a>·<a·id="l:350"·class="idref"·href="#l:350"><span·class="id"·title="binder">l</span></a>·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#ValAdh"><span·class="id"·title="definition">ValAdh</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#un:347"><span·class="id"·title="variable">un</span></a>·<a·class="idref"·href="Coq.Reals.Rtopology.html#l:350"><span·class="id"·title="variable">l</span></a>.<br/> |
378 | <br/> | 378 | <br/> |
379 | </div> | 379 | </div> |
380 | <div·class="doc"> | 380 | <div·class="doc"> |
381 | <a·id="lab | 381 | <a·id="lab826"></a><h1·class="section">Proof·of·Heine's·theorem</h1> |
382 | </div> | 382 | </div> |
383 | <div·class="code"> | 383 | <div·class="code"> |
384 | <br/> | 384 | <br/> |
385 | <span·class="id"·title="keyword">Definition</span>·<a·id="uniform_continuity"·class="idref"·href="#uniform_continuity"><span·class="id"·title="definition">uniform_continuity</span></a>·(<a·id="f:381"·class="idref"·href="#f:381"><span·class="id"·title="binder">f</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="X:382"·class="idref"·href="#X:382"><span·class="id"·title="binder">X</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>)·:·<span·class="id"·title="keyword">Prop</span>·:=<br/> | 385 | <span·class="id"·title="keyword">Definition</span>·<a·id="uniform_continuity"·class="idref"·href="#uniform_continuity"><span·class="id"·title="definition">uniform_continuity</span></a>·(<a·id="f:381"·class="idref"·href="#f:381"><span·class="id"·title="binder">f</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·(<a·id="X:382"·class="idref"·href="#X:382"><span·class="id"·title="binder">X</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>)·:·<span·class="id"·title="keyword">Prop</span>·:=<br/> |
386 | <span·class="id"·title="keyword">forall</span>·<a·id="eps:383"·class="idref"·href="#eps:383"><span·class="id"·title="binder">eps</span></a>:<a·class="idref"·href="Coq.Reals.RIneq.html#posreal"><span·class="id"·title="record">posreal</span></a>,<br/> | 386 | <span·class="id"·title="keyword">forall</span>·<a·id="eps:383"·class="idref"·href="#eps:383"><span·class="id"·title="binder">eps</span></a>:<a·class="idref"·href="Coq.Reals.RIneq.html#posreal"><span·class="id"·title="record">posreal</span></a>,<br/> |
Offset 160, 15 lines modified | Offset 160, 15 lines modified | ||
160 | 1·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#tan"><span·class="id"·title="definition">tan</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#x:52"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#tan"><span·class="id"·title="definition">tan</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#y:53"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 160 | 1·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#tan"><span·class="id"·title="definition">tan</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#x:52"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#tan"><span·class="id"·title="definition">tan</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#y:53"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
161 | <a·class="idref"·href="Coq.Reals.Rtrigo1.html#tan"><span·class="id"·title="definition">tan</span></a>·(<a·class="idref"·href="Coq.Reals.Rtrigo1.html#x:52"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#y:53"><span·class="id"·title="variable">y</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Reals.Rtrigo1.html#tan"><span·class="id"·title="definition">tan</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#x:52"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#tan"><span·class="id"·title="definition">tan</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#y:53"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">/</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">(</span></a>1·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#tan"><span·class="id"·title="definition">tan</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#x:52"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#tan"><span·class="id"·title="definition">tan</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#y:53"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">)</span></a>.<br/> | 161 | <a·class="idref"·href="Coq.Reals.Rtrigo1.html#tan"><span·class="id"·title="definition">tan</span></a>·(<a·class="idref"·href="Coq.Reals.Rtrigo1.html#x:52"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#y:53"><span·class="id"·title="variable">y</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Reals.Rtrigo1.html#tan"><span·class="id"·title="definition">tan</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#x:52"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#tan"><span·class="id"·title="definition">tan</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#y:53"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">/</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">(</span></a>1·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#tan"><span·class="id"·title="definition">tan</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#x:52"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#tan"><span·class="id"·title="definition">tan</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#y:53"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">)</span></a>.<br/> |
162 | <br/> | 162 | <br/> |
163 | </div> | 163 | </div> |
164 | <div·class="doc"> | 164 | <div·class="doc"> |
165 | <a·id="lab | 165 | <a·id="lab830"></a><h1·class="section">Some·properties·of·cos,·sin·and·tan</h1> |
166 | </div> | 166 | </div> |
167 | <div·class="code"> | 167 | <div·class="code"> |
168 | <br/> | 168 | <br/> |
169 | <span·class="id"·title="keyword">Lemma</span>·<a·id="sin_2a"·class="idref"·href="#sin_2a"><span·class="id"·title="lemma">sin_2a</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:54"·class="idref"·href="#x:54"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sin"><span·class="id"·title="definition">sin</span></a>·(2·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#x:54"><span·class="id"·title="variable">x</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·2·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sin"><span·class="id"·title="definition">sin</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#x:54"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#x:54"><span·class="id"·title="variable">x</span></a>.<br/> | 169 | <span·class="id"·title="keyword">Lemma</span>·<a·id="sin_2a"·class="idref"·href="#sin_2a"><span·class="id"·title="lemma">sin_2a</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:54"·class="idref"·href="#x:54"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sin"><span·class="id"·title="definition">sin</span></a>·(2·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#x:54"><span·class="id"·title="variable">x</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·2·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sin"><span·class="id"·title="definition">sin</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#x:54"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#x:54"><span·class="id"·title="variable">x</span></a>.<br/> |
Offset 254, 15 lines modified | Offset 254, 15 lines modified | ||
254 | <br/> | 254 | <br/> |
255 | <span·class="id"·title="keyword">Lemma</span>·<a·id="cos_sin_0_var"·class="idref"·href="#cos_sin_0_var"><span·class="id"·title="lemma">cos_sin_0_var</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:76"·class="idref"·href="#x:76"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#x:76"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sin"><span·class="id"·title="definition">sin</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#x:76"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·0.<br/> | 255 | <span·class="id"·title="keyword">Lemma</span>·<a·id="cos_sin_0_var"·class="idref"·href="#cos_sin_0_var"><span·class="id"·title="lemma">cos_sin_0_var</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:76"·class="idref"·href="#x:76"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#x:76"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sin"><span·class="id"·title="definition">sin</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#x:76"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·0.<br/> |
256 | <br/> | 256 | <br/> |
257 | </div> | 257 | </div> |
258 | <div·class="doc"> | 258 | <div·class="doc"> |
259 | <a·id="lab | 259 | <a·id="lab831"></a><h1·class="section">Using·series·definitions·of·cos·and·sin</h1> |
260 | </div> | 260 | </div> |
261 | <div·class="code"> | 261 | <div·class="code"> |
262 | <br/> | 262 | <br/> |
263 | <span·class="id"·title="keyword">Definition</span>·<a·id="sin_lb"·class="idref"·href="#sin_lb"><span·class="id"·title="definition">sin_lb</span></a>·(<a·id="a:77"·class="idref"·href="#a:77"><span·class="id"·title="binder">a</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Rtrigo_alt.html#sin_approx"><span·class="id"·title="definition">sin_approx</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#a:77"><span·class="id"·title="variable">a</span></a>·3.<br/> | 263 | <span·class="id"·title="keyword">Definition</span>·<a·id="sin_lb"·class="idref"·href="#sin_lb"><span·class="id"·title="definition">sin_lb</span></a>·(<a·id="a:77"·class="idref"·href="#a:77"><span·class="id"·title="binder">a</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Rtrigo_alt.html#sin_approx"><span·class="id"·title="definition">sin_approx</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#a:77"><span·class="id"·title="variable">a</span></a>·3.<br/> |
264 | <span·class="id"·title="keyword">Definition</span>·<a·id="sin_ub"·class="idref"·href="#sin_ub"><span·class="id"·title="definition">sin_ub</span></a>·(<a·id="a:78"·class="idref"·href="#a:78"><span·class="id"·title="binder">a</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Rtrigo_alt.html#sin_approx"><span·class="id"·title="definition">sin_approx</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#a:78"><span·class="id"·title="variable">a</span></a>·4.<br/> | 264 | <span·class="id"·title="keyword">Definition</span>·<a·id="sin_ub"·class="idref"·href="#sin_ub"><span·class="id"·title="definition">sin_ub</span></a>·(<a·id="a:78"·class="idref"·href="#a:78"><span·class="id"·title="binder">a</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Rtrigo_alt.html#sin_approx"><span·class="id"·title="definition">sin_approx</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#a:78"><span·class="id"·title="variable">a</span></a>·4.<br/> |
Offset 288, 15 lines modified | Offset 288, 15 lines modified | ||
288 | <br/> | 288 | <br/> |
289 | <span·class="id"·title="keyword">Lemma</span>·<a·id="PI2_Rlt_PI"·class="idref"·href="#PI2_Rlt_PI"><span·class="id"·title="lemma">PI2_Rlt_PI</span></a>·:·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#PI"><span·class="id"·title="definition">PI</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">/</span></a>·2·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#PI"><span·class="id"·title="definition">PI</span></a>.<br/> | 289 | <span·class="id"·title="keyword">Lemma</span>·<a·id="PI2_Rlt_PI"·class="idref"·href="#PI2_Rlt_PI"><span·class="id"·title="lemma">PI2_Rlt_PI</span></a>·:·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#PI"><span·class="id"·title="definition">PI</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">/</span></a>·2·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#PI"><span·class="id"·title="definition">PI</span></a>.<br/> |
290 | <br/> | 290 | <br/> |
291 | </div> | 291 | </div> |
292 | <div·class="doc"> | 292 | <div·class="doc"> |
293 | <a·id="lab | 293 | <a·id="lab832"></a><h1·class="section">Increasing·and·decreasing·of·<span·class="inlinecode"><span·class="id"·title="var">cos</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">sin</span></span></h1> |
294 | </div> | 294 | </div> |
295 | <div·class="code"> | 295 | <div·class="code"> |
296 | <span·class="id"·title="keyword">Theorem</span>·<a·id="sin_gt_0"·class="idref"·href="#sin_gt_0"><span·class="id"·title="lemma">sin_gt_0</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:92"·class="idref"·href="#x:92"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·0·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#x:92"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#x:92"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#PI"><span·class="id"·title="definition">PI</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sin"><span·class="id"·title="definition">sin</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#x:92"><span·class="id"·title="variable">x</span></a>.<br/> | 296 | <span·class="id"·title="keyword">Theorem</span>·<a·id="sin_gt_0"·class="idref"·href="#sin_gt_0"><span·class="id"·title="lemma">sin_gt_0</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:92"·class="idref"·href="#x:92"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·0·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#x:92"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#x:92"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#PI"><span·class="id"·title="definition">PI</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sin"><span·class="id"·title="definition">sin</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#x:92"><span·class="id"·title="variable">x</span></a>.<br/> |
297 | <br/> | 297 | <br/> |
298 | <span·class="id"·title="keyword">Theorem</span>·<a·id="cos_gt_0"·class="idref"·href="#cos_gt_0"><span·class="id"·title="lemma">cos_gt_0</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:93"·class="idref"·href="#x:93"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:'-'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Reals.Rtrigo1.html#PI"><span·class="id"·title="definition">PI</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">/</span></a>·2<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:'-'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#x:93"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#x:93"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#PI"><span·class="id"·title="definition">PI</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">/</span></a>·2·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#x:93"><span·class="id"·title="variable">x</span></a>.<br/> | 298 | <span·class="id"·title="keyword">Theorem</span>·<a·id="cos_gt_0"·class="idref"·href="#cos_gt_0"><span·class="id"·title="lemma">cos_gt_0</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:93"·class="idref"·href="#x:93"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:'-'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Reals.Rtrigo1.html#PI"><span·class="id"·title="definition">PI</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">/</span></a>·2<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:'-'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#x:93"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#x:93"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#PI"><span·class="id"·title="definition">PI</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">/</span></a>·2·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#x:93"><span·class="id"·title="variable">x</span></a>.<br/> |
Offset 50, 15 lines modified | Offset 50, 15 lines modified | ||
50 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.micromega.Lra.html#"><span·class="id"·title="library">Lra</span></a>·<a·class="idref"·href="Coq.micromega.Lia.html#"><span·class="id"·title="library">Lia</span></a>.<br/> | 50 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.micromega.Lra.html#"><span·class="id"·title="library">Lra</span></a>·<a·class="idref"·href="Coq.micromega.Lia.html#"><span·class="id"·title="library">Lia</span></a>.<br/> |
51 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">R_scope</span>.<br/> | 51 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">R_scope</span>.<br/> |
52 | <br/> | 52 | <br/> |
53 | </div> | 53 | </div> |
54 | <div·class="doc"> | 54 | <div·class="doc"> |
55 | <a·id="lab | 55 | <a·id="lab810"></a><h1·class="section">Definition·of·exponential</h1> |
56 | </div> | 56 | </div> |
57 | <div·class="code"> | 57 | <div·class="code"> |
58 | <span·class="id"·title="keyword">Definition</span>·<a·id="exp_in"·class="idref"·href="#exp_in"><span·class="id"·title="definition">exp_in</span></a>·(<a·id="x:1"·class="idref"·href="#x:1"><span·class="id"·title="binder">x</span></a>·<a·id="l:2"·class="idref"·href="#l:2"><span·class="id"·title="binder">l</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<span·class="id"·title="keyword">Prop</span>·:=<br/> | 58 | <span·class="id"·title="keyword">Definition</span>·<a·id="exp_in"·class="idref"·href="#exp_in"><span·class="id"·title="definition">exp_in</span></a>·(<a·id="x:1"·class="idref"·href="#x:1"><span·class="id"·title="binder">x</span></a>·<a·id="l:2"·class="idref"·href="#l:2"><span·class="id"·title="binder">l</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<span·class="id"·title="keyword">Prop</span>·:=<br/> |
59 | <a·class="idref"·href="Coq.Reals.Rfunctions.html#infinite_sum"><span·class="id"·title="definition">infinite_sum</span></a>·(<span·class="id"·title="keyword">fun</span>·<a·id="i:3"·class="idref"·href="#i:3"><span·class="id"·title="binder">i</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·=>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#2299a6ef56270a66cc1b95489d0f6e3a"><span·class="id"·title="notation">/</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#INR"><span·class="id"·title="definition">INR</span></a>·(<a·class="idref"·href="Coq.Arith.Factorial.html#fact"><span·class="id"·title="definition">fact</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#i:3"><span·class="id"·title="variable">i</span></a>)·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#x:1"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#1fc859ef9f60fc2e3a52c48371d07707"><span·class="id"·title="notation">^</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#i:3"><span·class="id"·title="variable">i</span></a>)·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#l:2"><span·class="id"·title="variable">l</span></a>.<br/> | 59 | <a·class="idref"·href="Coq.Reals.Rfunctions.html#infinite_sum"><span·class="id"·title="definition">infinite_sum</span></a>·(<span·class="id"·title="keyword">fun</span>·<a·id="i:3"·class="idref"·href="#i:3"><span·class="id"·title="binder">i</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·=>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#2299a6ef56270a66cc1b95489d0f6e3a"><span·class="id"·title="notation">/</span></a>·<a·class="idref"·href="Coq.Reals.Raxioms.html#INR"><span·class="id"·title="definition">INR</span></a>·(<a·class="idref"·href="Coq.Arith.Factorial.html#fact"><span·class="id"·title="definition">fact</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#i:3"><span·class="id"·title="variable">i</span></a>)·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#x:1"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rfunctions.html#1fc859ef9f60fc2e3a52c48371d07707"><span·class="id"·title="notation">^</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#i:3"><span·class="id"·title="variable">i</span></a>)·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#l:2"><span·class="id"·title="variable">l</span></a>.<br/> |
60 | <br/> | 60 | <br/> |
Offset 76, 15 lines modified | Offset 76, 15 lines modified | ||
76 | <br/> | 76 | <br/> |
77 | <span·class="id"·title="keyword">Lemma</span>·<a·id="exp_0"·class="idref"·href="#exp_0"><span·class="id"·title="lemma">exp_0</span></a>·:·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#exp"><span·class="id"·title="definition">exp</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·1.<br/> | 77 | <span·class="id"·title="keyword">Lemma</span>·<a·id="exp_0"·class="idref"·href="#exp_0"><span·class="id"·title="lemma">exp_0</span></a>·:·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#exp"><span·class="id"·title="definition">exp</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·1.<br/> |
78 | <br/> | 78 | <br/> |
79 | </div> | 79 | </div> |
80 | <div·class="doc"> | 80 | <div·class="doc"> |
81 | <a·id="lab | 81 | <a·id="lab811"></a><h1·class="section">Definition·of·hyperbolic·functions</h1> |
82 | </div> | 82 | </div> |
83 | <div·class="code"> | 83 | <div·class="code"> |
84 | <span·class="id"·title="keyword">Definition</span>·<a·id="cosh"·class="idref"·href="#cosh"><span·class="id"·title="definition">cosh</span></a>·(<a·id="x:13"·class="idref"·href="#x:13"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Reals.Rtrigo_def.html#exp"><span·class="id"·title="definition">exp</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#x:13"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#exp"><span·class="id"·title="definition">exp</span></a>·(<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#x:13"><span·class="id"·title="variable">x</span></a>)<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">/</span></a>·2.<br/> | 84 | <span·class="id"·title="keyword">Definition</span>·<a·id="cosh"·class="idref"·href="#cosh"><span·class="id"·title="definition">cosh</span></a>·(<a·id="x:13"·class="idref"·href="#x:13"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Reals.Rtrigo_def.html#exp"><span·class="id"·title="definition">exp</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#x:13"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#exp"><span·class="id"·title="definition">exp</span></a>·(<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#x:13"><span·class="id"·title="variable">x</span></a>)<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">/</span></a>·2.<br/> |
85 | <span·class="id"·title="keyword">Definition</span>·<a·id="sinh"·class="idref"·href="#sinh"><span·class="id"·title="definition">sinh</span></a>·(<a·id="x:14"·class="idref"·href="#x:14"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Reals.Rtrigo_def.html#exp"><span·class="id"·title="definition">exp</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#x:14"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#exp"><span·class="id"·title="definition">exp</span></a>·(<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#x:14"><span·class="id"·title="variable">x</span></a>)<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">/</span></a>·2.<br/> | 85 | <span·class="id"·title="keyword">Definition</span>·<a·id="sinh"·class="idref"·href="#sinh"><span·class="id"·title="definition">sinh</span></a>·(<a·id="x:14"·class="idref"·href="#x:14"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Reals.Rtrigo_def.html#exp"><span·class="id"·title="definition">exp</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#x:14"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#exp"><span·class="id"·title="definition">exp</span></a>·(<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#x:14"><span·class="id"·title="variable">x</span></a>)<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">/</span></a>·2.<br/> |
86 | <span·class="id"·title="keyword">Definition</span>·<a·id="tanh"·class="idref"·href="#tanh"><span·class="id"·title="definition">tanh</span></a>·(<a·id="x:15"·class="idref"·href="#x:15"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sinh"><span·class="id"·title="definition">sinh</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#x:15"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">/</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cosh"><span·class="id"·title="definition">cosh</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#x:15"><span·class="id"·title="variable">x</span></a>.<br/> | 86 | <span·class="id"·title="keyword">Definition</span>·<a·id="tanh"·class="idref"·href="#tanh"><span·class="id"·title="definition">tanh</span></a>·(<a·id="x:15"·class="idref"·href="#x:15"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sinh"><span·class="id"·title="definition">sinh</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#x:15"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">/</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cosh"><span·class="id"·title="definition">cosh</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#x:15"><span·class="id"·title="variable">x</span></a>.<br/> |
Offset 150, 15 lines modified | Offset 150, 15 lines modified | ||
150 | <br/> | 150 | <br/> |
151 | <span·class="id"·title="keyword">Definition</span>·<a·id="sin"·class="idref"·href="#sin"><span·class="id"·title="definition">sin</span></a>·(<a·id="x:38"·class="idref"·href="#x:38"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<span·class="id"·title="keyword">let</span>·(<a·id="a:39"·class="idref"·href="#a:39"><span·class="id"·title="binder">a</span></a>,<span·class="id"·title="var">_</span>)·:=·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#exist_sin"><span·class="id"·title="lemma">exist_sin</span></a>·(<a·class="idref"·href="Coq.Reals.RIneq.html#Rsqr"><span·class="id"·title="definition">Rsqr</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#x:38"><span·class="id"·title="variable">x</span></a>)·<span·class="id"·title="tactic">in</span>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#x:38"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#a:39"><span·class="id"·title="variable">a</span></a>.<br/> | 151 | <span·class="id"·title="keyword">Definition</span>·<a·id="sin"·class="idref"·href="#sin"><span·class="id"·title="definition">sin</span></a>·(<a·id="x:38"·class="idref"·href="#x:38"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>)·:·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>·:=·<span·class="id"·title="keyword">let</span>·(<a·id="a:39"·class="idref"·href="#a:39"><span·class="id"·title="binder">a</span></a>,<span·class="id"·title="var">_</span>)·:=·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#exist_sin"><span·class="id"·title="lemma">exist_sin</span></a>·(<a·class="idref"·href="Coq.Reals.RIneq.html#Rsqr"><span·class="id"·title="definition">Rsqr</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#x:38"><span·class="id"·title="variable">x</span></a>)·<span·class="id"·title="tactic">in</span>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#x:38"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#e1dae7ed53bffa765009199d058dd327"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#a:39"><span·class="id"·title="variable">a</span></a>.<br/> |
152 | <br/> | 152 | <br/> |
153 | </div> | 153 | </div> |
154 | <div·class="doc"> | 154 | <div·class="doc"> |
155 | <a·id="lab | 155 | <a·id="lab812"></a><h1·class="section">Properties</h1> |
156 | </div> | 156 | </div> |
157 | <div·class="code"> | 157 | <div·class="code"> |
158 | <br/> | 158 | <br/> |
159 | <span·class="id"·title="keyword">Lemma</span>·<a·id="cos_sym"·class="idref"·href="#cos_sym"><span·class="id"·title="lemma">cos_sym</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:40"·class="idref"·href="#x:40"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#x:40"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·(<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#x:40"><span·class="id"·title="variable">x</span></a>).<br/> | 159 | <span·class="id"·title="keyword">Lemma</span>·<a·id="cos_sym"·class="idref"·href="#cos_sym"><span·class="id"·title="lemma">cos_sym</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:40"·class="idref"·href="#x:40"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Reals.Rdefinitions.html#RbaseSymbolsImpl.R"><span·class="id"·title="axiom">R</span></a>,·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#x:40"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·(<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#x:40"><span·class="id"·title="variable">x</span></a>).<br/> |
Offset 57, 15 lines modified | Offset 57, 15 lines modified | ||
57 | <br/> | 57 | <br/> |
58 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">R_scope</span>.<br/> | 58 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">R_scope</span>.<br/> |
59 | <br/> | 59 | <br/> |
60 | </div> | 60 | </div> |
61 | <div·class="doc"> | 61 | <div·class="doc"> |
62 | <a·id="lab | 62 | <a·id="lab931"></a><h1·class="section">Bounds·of·expressions·with·trigonometric·functions</h1> |
63 | </div> | 63 | </div> |
64 | <div·class="code"> | 64 | <div·class="code"> |
65 | <br/> | 65 | <br/> |
66 | <span·class="id"·title="keyword">Lemma</span>·<a·id="sin2_bound"·class="idref"·href="#sin2_bound"><span·class="id"·title="lemma">sin2_bound</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:1"·class="idref"·href="#x:1"><span·class="id"·title="binder">x</span></a>,<br/> | 66 | <span·class="id"·title="keyword">Lemma</span>·<a·id="sin2_bound"·class="idref"·href="#sin2_bound"><span·class="id"·title="lemma">sin2_bound</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:1"·class="idref"·href="#x:1"><span·class="id"·title="binder">x</span></a>,<br/> |
67 | 0·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sin"><span·class="id"·title="definition">sin</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:1"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">)²</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·1.<br/> | 67 | 0·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sin"><span·class="id"·title="definition">sin</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:1"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">)²</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·1.<br/> |
Offset 74, 19 lines modified | Offset 74, 19 lines modified | ||
74 | <span·class="id"·title="keyword">Lemma</span>·<a·id="cos2_bound"·class="idref"·href="#cos2_bound"><span·class="id"·title="lemma">cos2_bound</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:2"·class="idref"·href="#x:2"><span·class="id"·title="binder">x</span></a>,<br/> | 74 | <span·class="id"·title="keyword">Lemma</span>·<a·id="cos2_bound"·class="idref"·href="#cos2_bound"><span·class="id"·title="lemma">cos2_bound</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:2"·class="idref"·href="#x:2"><span·class="id"·title="binder">x</span></a>,<br/> |
75 | 0·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:2"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">)²</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·1.<br/> | 75 | 0·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:2"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">)²</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#fbdebc8c1a732d40499de973c18a9a13"><span·class="id"·title="notation"><=</span></a>·1.<br/> |
76 | <br/> | 76 | <br/> |
77 | </div> | 77 | </div> |
78 | <div·class="doc"> | 78 | <div·class="doc"> |
79 | <a·id="lab | 79 | <a·id="lab932"></a><h1·class="section">Express·trigonometric·functions·with·each·other</h1> |
80 | <div·class="paragraph">·</div> | 80 | <div·class="paragraph">·</div> |
81 | <a·id="lab | 81 | <a·id="lab933"></a><h2·class="section">Express·sin·and·cos·with·each·other</h2> |
82 | </div> | 82 | </div> |
83 | <div·class="code"> | 83 | <div·class="code"> |
84 | <br/> | 84 | <br/> |
85 | <span·class="id"·title="keyword">Lemma</span>·<a·id="cos_sin"·class="idref"·href="#cos_sin"><span·class="id"·title="lemma">cos_sin</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:3"·class="idref"·href="#x:3"><span·class="id"·title="binder">x</span></a>,·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:3"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#7822f196a19e8673dbc60a529f728eb7"><span·class="id"·title="notation">>=</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 85 | <span·class="id"·title="keyword">Lemma</span>·<a·id="cos_sin"·class="idref"·href="#cos_sin"><span·class="id"·title="lemma">cos_sin</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:3"·class="idref"·href="#x:3"><span·class="id"·title="binder">x</span></a>,·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:3"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#7822f196a19e8673dbc60a529f728eb7"><span·class="id"·title="notation">>=</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
86 | <a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:3"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#sqrt"><span·class="id"·title="definition">sqrt</span></a>(1·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sin"><span·class="id"·title="definition">sin</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:3"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">)²</span></a>).<br/> | 86 | <a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:3"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#sqrt"><span·class="id"·title="definition">sqrt</span></a>(1·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sin"><span·class="id"·title="definition">sin</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:3"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">)²</span></a>).<br/> |
Offset 111, 15 lines modified | Offset 111, 15 lines modified | ||
111 | <span·class="id"·title="keyword">Lemma</span>·<a·id="sin_cos_Rabs"·class="idref"·href="#sin_cos_Rabs"><span·class="id"·title="lemma">sin_cos_Rabs</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:8"·class="idref"·href="#x:8"><span·class="id"·title="binder">x</span></a>,<br/> | 111 | <span·class="id"·title="keyword">Lemma</span>·<a·id="sin_cos_Rabs"·class="idref"·href="#sin_cos_Rabs"><span·class="id"·title="lemma">sin_cos_Rabs</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:8"·class="idref"·href="#x:8"><span·class="id"·title="binder">x</span></a>,<br/> |
112 | <a·class="idref"·href="Coq.Reals.Rbasic_fun.html#Rabs"><span·class="id"·title="definition">Rabs</span></a>·(<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sin"><span·class="id"·title="definition">sin</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:8"><span·class="id"·title="variable">x</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#sqrt"><span·class="id"·title="definition">sqrt</span></a>(1·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:8"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">)²</span></a>).<br/> | 112 | <a·class="idref"·href="Coq.Reals.Rbasic_fun.html#Rabs"><span·class="id"·title="definition">Rabs</span></a>·(<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sin"><span·class="id"·title="definition">sin</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:8"><span·class="id"·title="variable">x</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#sqrt"><span·class="id"·title="definition">sqrt</span></a>(1·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:8"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">)²</span></a>).<br/> |
113 | <br/> | 113 | <br/> |
114 | </div> | 114 | </div> |
115 | <div·class="doc"> | 115 | <div·class="doc"> |
116 | <a·id="lab | 116 | <a·id="lab934"></a><h2·class="section">Express·tan·with·sin·and·cos</h2> |
117 | </div> | 117 | </div> |
118 | <div·class="code"> | 118 | <div·class="code"> |
119 | <br/> | 119 | <br/> |
120 | <span·class="id"·title="keyword">Lemma</span>·<a·id="tan_sin"·class="idref"·href="#tan_sin"><span·class="id"·title="lemma">tan_sin</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:9"·class="idref"·href="#x:9"><span·class="id"·title="binder">x</span></a>,·0·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:9"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 120 | <span·class="id"·title="keyword">Lemma</span>·<a·id="tan_sin"·class="idref"·href="#tan_sin"><span·class="id"·title="lemma">tan_sin</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:9"·class="idref"·href="#x:9"><span·class="id"·title="binder">x</span></a>,·0·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#77d341fe206b2891763e25999ffddca2"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:9"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
121 | <a·class="idref"·href="Coq.Reals.Rtrigo1.html#tan"><span·class="id"·title="definition">tan</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:9"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sin"><span·class="id"·title="definition">sin</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:9"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">/</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#sqrt"><span·class="id"·title="definition">sqrt</span></a>·(1·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sin"><span·class="id"·title="definition">sin</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:9"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">)²</span></a>).<br/> | 121 | <a·class="idref"·href="Coq.Reals.Rtrigo1.html#tan"><span·class="id"·title="definition">tan</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:9"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sin"><span·class="id"·title="definition">sin</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:9"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">/</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#sqrt"><span·class="id"·title="definition">sqrt</span></a>·(1·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sin"><span·class="id"·title="definition">sin</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:9"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">)²</span></a>).<br/> |
Offset 144, 15 lines modified | Offset 144, 15 lines modified | ||
144 | <span·class="id"·title="keyword">Lemma</span>·<a·id="tan_cos_opp"·class="idref"·href="#tan_cos_opp"><span·class="id"·title="lemma">tan_cos_opp</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:12"·class="idref"·href="#x:12"><span·class="id"·title="binder">x</span></a>,·0·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#7822f196a19e8673dbc60a529f728eb7"><span·class="id"·title="notation">>=</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sin"><span·class="id"·title="definition">sin</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:12"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 144 | <span·class="id"·title="keyword">Lemma</span>·<a·id="tan_cos_opp"·class="idref"·href="#tan_cos_opp"><span·class="id"·title="lemma">tan_cos_opp</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:12"·class="idref"·href="#x:12"><span·class="id"·title="binder">x</span></a>,·0·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#7822f196a19e8673dbc60a529f728eb7"><span·class="id"·title="notation">>=</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sin"><span·class="id"·title="definition">sin</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:12"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
145 | <a·class="idref"·href="Coq.Reals.Rtrigo1.html#tan"><span·class="id"·title="definition">tan</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:12"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#sqrt"><span·class="id"·title="definition">sqrt</span></a>·(1·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:12"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">)²</span></a>)·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">/</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:12"><span·class="id"·title="variable">x</span></a>.<br/> | 145 | <a·class="idref"·href="Coq.Reals.Rtrigo1.html#tan"><span·class="id"·title="definition">tan</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:12"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#sqrt"><span·class="id"·title="definition">sqrt</span></a>·(1·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:12"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">)²</span></a>)·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">/</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:12"><span·class="id"·title="variable">x</span></a>.<br/> |
146 | <br/> | 146 | <br/> |
147 | </div> | 147 | </div> |
148 | <div·class="doc"> | 148 | <div·class="doc"> |
149 | <a·id="lab | 149 | <a·id="lab935"></a><h2·class="section">Express·sin·and·cos·with·tan</h2> |
150 | </div> | 150 | </div> |
151 | <div·class="code"> | 151 | <div·class="code"> |
152 | <br/> | 152 | <br/> |
153 | <span·class="id"·title="keyword">Lemma</span>·<a·id="sin_tan"·class="idref"·href="#sin_tan"><span·class="id"·title="lemma">sin_tan</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:13"·class="idref"·href="#x:13"><span·class="id"·title="binder">x</span></a>,·0·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:13"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 153 | <span·class="id"·title="keyword">Lemma</span>·<a·id="sin_tan"·class="idref"·href="#sin_tan"><span·class="id"·title="lemma">sin_tan</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:13"·class="idref"·href="#x:13"><span·class="id"·title="binder">x</span></a>,·0·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:13"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
154 | <a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sin"><span·class="id"·title="definition">sin</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:13"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#tan"><span·class="id"·title="definition">tan</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:13"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">/</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#sqrt"><span·class="id"·title="definition">sqrt</span></a>·(1·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Reals.Rtrigo1.html#tan"><span·class="id"·title="definition">tan</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:13"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">)²</span></a>).<br/> | 154 | <a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sin"><span·class="id"·title="definition">sin</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:13"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo1.html#tan"><span·class="id"·title="definition">tan</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:13"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">/</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#sqrt"><span·class="id"·title="definition">sqrt</span></a>·(1·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Reals.Rtrigo1.html#tan"><span·class="id"·title="definition">tan</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:13"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">)²</span></a>).<br/> |
Offset 161, 15 lines modified | Offset 161, 15 lines modified | ||
161 | <span·class="id"·title="keyword">Lemma</span>·<a·id="cos_tan"·class="idref"·href="#cos_tan"><span·class="id"·title="lemma">cos_tan</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:14"·class="idref"·href="#x:14"><span·class="id"·title="binder">x</span></a>,·0·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:14"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 161 | <span·class="id"·title="keyword">Lemma</span>·<a·id="cos_tan"·class="idref"·href="#cos_tan"><span·class="id"·title="lemma">cos_tan</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:14"·class="idref"·href="#x:14"><span·class="id"·title="binder">x</span></a>,·0·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:14"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
162 | <a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:14"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·1·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">/</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#sqrt"><span·class="id"·title="definition">sqrt</span></a>·(1·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Reals.Rtrigo1.html#tan"><span·class="id"·title="definition">tan</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:14"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">)²</span></a>).<br/> | 162 | <a·class="idref"·href="Coq.Reals.Rtrigo_def.html#cos"><span·class="id"·title="definition">cos</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:14"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·1·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3942bfc45fbeaeee49010b741755982b"><span·class="id"·title="notation">/</span></a>·<a·class="idref"·href="Coq.Reals.R_sqrt.html#sqrt"><span·class="id"·title="definition">sqrt</span></a>·(1·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#3e57074ab0a6a36b253e873a1bdac6ad"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Reals.Rtrigo1.html#tan"><span·class="id"·title="definition">tan</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:14"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Reals.RIneq.html#2774338496db27b8a3a3c51e5609a509"><span·class="id"·title="notation">)²</span></a>).<br/> |
163 | <br/> | 163 | <br/> |
164 | </div> | 164 | </div> |
165 | <div·class="doc"> | 165 | <div·class="doc"> |
166 | <a·id="lab | 166 | <a·id="lab936"></a><h1·class="section">Additional·shift·lemmas·for·sin,·cos,·tan</h1> |
167 | </div> | 167 | </div> |
168 | <div·class="code"> | 168 | <div·class="code"> |
169 | <br/> | 169 | <br/> |
170 | <span·class="id"·title="keyword">Lemma</span>·<a·id="sin_pi_minus"·class="idref"·href="#sin_pi_minus"><span·class="id"·title="lemma">sin_pi_minus</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:15"·class="idref"·href="#x:15"><span·class="id"·title="binder">x</span></a>,<br/> | 170 | <span·class="id"·title="keyword">Lemma</span>·<a·id="sin_pi_minus"·class="idref"·href="#sin_pi_minus"><span·class="id"·title="lemma">sin_pi_minus</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:15"·class="idref"·href="#x:15"><span·class="id"·title="binder">x</span></a>,<br/> |
171 | <a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sin"><span·class="id"·title="definition">sin</span></a>·(<a·class="idref"·href="Coq.Reals.Rtrigo1.html#PI"><span·class="id"·title="definition">PI</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:15"><span·class="id"·title="variable">x</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sin"><span·class="id"·title="definition">sin</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:15"><span·class="id"·title="variable">x</span></a>.<br/> | 171 | <a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sin"><span·class="id"·title="definition">sin</span></a>·(<a·class="idref"·href="Coq.Reals.Rtrigo1.html#PI"><span·class="id"·title="definition">PI</span></a>·<a·class="idref"·href="Coq.Reals.Rdefinitions.html#::R_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:15"><span·class="id"·title="variable">x</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_def.html#sin"><span·class="id"·title="definition">sin</span></a>·<a·class="idref"·href="Coq.Reals.Rtrigo_facts.html#x:15"><span·class="id"·title="variable">x</span></a>.<br/> |
Offset 45, 16 lines modified | Offset 45, 16 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab335"></a><h1·class="section">Some·properties·of·the·operators·on·relations</h1> |
50 | <a·id="lab | 50 | <a·id="lab336"></a><h1·class="section">Initial·version·by·Bruno·Barras</h1> |
51 | </div> | 51 | </div> |
52 | <div·class="code"> | 52 | <div·class="code"> |
53 | <br/> | 53 | <br/> |
54 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Relations.Relation_Definitions.html#"><span·class="id"·title="library">Relation_Definitions</span></a>.<br/> | 54 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Relations.Relation_Definitions.html#"><span·class="id"·title="library">Relation_Definitions</span></a>.<br/> |
55 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#"><span·class="id"·title="library">Relation_Operators</span></a>.<br/> | 55 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#"><span·class="id"·title="library">Relation_Operators</span></a>.<br/> |
Offset 177, 20 lines modified | Offset 177, 20 lines modified | ||
177 | <br/> | 177 | <br/> |
178 | <span·class="id"·title="keyword">Section</span>·<a·id="Properties.Equivalences"·class="idref"·href="#Properties.Equivalences"><span·class="id"·title="section">Equivalences</span></a>.<br/> | 178 | <span·class="id"·title="keyword">Section</span>·<a·id="Properties.Equivalences"·class="idref"·href="#Properties.Equivalences"><span·class="id"·title="section">Equivalences</span></a>.<br/> |
179 | <br/> | 179 | <br/> |
180 | </div> | 180 | </div> |
181 | <div·class="doc"> | 181 | <div·class="doc"> |
182 | <a·id="lab | 182 | <a·id="lab337"></a><h3·class="section">Equivalences·between·the·different·definition·of·the·reflexive,</h3> |
183 | ······symmetric,·transitive·closures· | 183 | ······symmetric,·transitive·closures· |
184 | <div·class="paragraph">·</div> | 184 | <div·class="paragraph">·</div> |
185 | <a·id="lab | 185 | <a·id="lab338"></a><h3·class="section">Contributed·by·P.·Castéran</h3> |
186 | <div·class="paragraph">·</div> | 186 | <div·class="paragraph">·</div> |
187 | ·Direct·transitive·closure·vs·left-step·extension· | 187 | ·Direct·transitive·closure·vs·left-step·extension· |
188 | </div> | 188 | </div> |
189 | <div·class="code"> | 189 | <div·class="code"> |
Offset 45, 34 lines modified | Offset 45, 34 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab339"></a><h1·class="section">Some·operators·on·relations</h1> |
50 | <a·id="lab | 50 | <a·id="lab340"></a><h1·class="section">Initial·authors:·Bruno·Barras,·Cristina·Cornes</h1> |
51 | <a·id="lab28"></a><h1·class="section">···································································</h1> | ||
52 | <a·id="lab29"></a><h1·class="section">Some·of·the·initial·definitions·were·taken·from·:</h1> | ||
53 | <a·id="lab30"></a><h1·class="section">Constructing·Recursion·Operators·in·Type·Theory</h1> | ||
54 | <a·id="lab31"></a><h1·class="section">L.·Paulson··JSC·(1986)·2,·325-355</h1> | ||
55 | <a·id="lab3 | 51 | <a·id="lab341"></a><h1·class="section">···································································</h1> |
52 | <a·id="lab342"></a><h1·class="section">Some·of·the·initial·definitions·were·taken·from·:</h1> | ||
53 | <a·id="lab343"></a><h1·class="section">Constructing·Recursion·Operators·in·Type·Theory</h1> | ||
54 | <a·id="lab344"></a><h1·class="section">L.·Paulson··JSC·(1986)·2,·325-355</h1> | ||
55 | <a·id="lab345"></a><h1·class="section">···································································</h1> | ||
56 | <a·id="lab3 | 56 | <a·id="lab346"></a><h1·class="section">Further·extensions·by·Pierre·Castéran</h1> |
57 | </div> | 57 | </div> |
58 | <div·class="code"> | 58 | <div·class="code"> |
59 | <br/> | 59 | <br/> |
60 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Relations.Relation_Definitions.html#"><span·class="id"·title="library">Relation_Definitions</span></a>.<br/> | 60 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Relations.Relation_Definitions.html#"><span·class="id"·title="library">Relation_Definitions</span></a>.<br/> |
61 | <br/> | 61 | <br/> |
62 | </div> | 62 | </div> |
63 | <div·class="doc"> | 63 | <div·class="doc"> |
64 | <a·id="lab34"></a><h2·class="section">Transitive·closure</h2> | 64 | <a·id="lab347"></a><h2·class="section">Transitive·closure</h2> |
65 | </div> | 65 | </div> |
66 | <div·class="code"> | 66 | <div·class="code"> |
67 | <br/> | 67 | <br/> |
68 | <span·class="id"·title="keyword">Section</span>·<a·id="Transitive_Closure"·class="idref"·href="#Transitive_Closure"><span·class="id"·title="section">Transitive_Closure</span></a>.<br/> | 68 | <span·class="id"·title="keyword">Section</span>·<a·id="Transitive_Closure"·class="idref"·href="#Transitive_Closure"><span·class="id"·title="section">Transitive_Closure</span></a>.<br/> |
69 | <span·class="id"·title="keyword">Variable</span>·<a·id="Transitive_Closure.A"·class="idref"·href="#Transitive_Closure.A"><span·class="id"·title="variable">A</span></a>·:·<span·class="id"·title="keyword">Type</span>.<br/> | 69 | <span·class="id"·title="keyword">Variable</span>·<a·id="Transitive_Closure.A"·class="idref"·href="#Transitive_Closure.A"><span·class="id"·title="variable">A</span></a>·:·<span·class="id"·title="keyword">Type</span>.<br/> |
Offset 120, 15 lines modified | Offset 120, 15 lines modified | ||
120 | <br/> | 120 | <br/> |
121 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#Transitive_Closure"><span·class="id"·title="section">Transitive_Closure</span></a>.<br/> | 121 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#Transitive_Closure"><span·class="id"·title="section">Transitive_Closure</span></a>.<br/> |
122 | <br/> | 122 | <br/> |
123 | </div> | 123 | </div> |
124 | <div·class="doc"> | 124 | <div·class="doc"> |
125 | <a·id="lab3 | 125 | <a·id="lab348"></a><h2·class="section">Reflexive·closure</h2> |
126 | </div> | 126 | </div> |
127 | <div·class="code"> | 127 | <div·class="code"> |
128 | <br/> | 128 | <br/> |
129 | <span·class="id"·title="keyword">Section</span>·<a·id="Reflexive_Closure"·class="idref"·href="#Reflexive_Closure"><span·class="id"·title="section">Reflexive_Closure</span></a>.<br/> | 129 | <span·class="id"·title="keyword">Section</span>·<a·id="Reflexive_Closure"·class="idref"·href="#Reflexive_Closure"><span·class="id"·title="section">Reflexive_Closure</span></a>.<br/> |
130 | <span·class="id"·title="keyword">Variable</span>·<a·id="Reflexive_Closure.A"·class="idref"·href="#Reflexive_Closure.A"><span·class="id"·title="variable">A</span></a>·:·<span·class="id"·title="keyword">Type</span>.<br/> | 130 | <span·class="id"·title="keyword">Variable</span>·<a·id="Reflexive_Closure.A"·class="idref"·href="#Reflexive_Closure.A"><span·class="id"·title="variable">A</span></a>·:·<span·class="id"·title="keyword">Type</span>.<br/> |
Offset 150, 15 lines modified | Offset 150, 15 lines modified | ||
150 | <br/> | 150 | <br/> |
151 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#Reflexive_Closure"><span·class="id"·title="section">Reflexive_Closure</span></a>.<br/> | 151 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#Reflexive_Closure"><span·class="id"·title="section">Reflexive_Closure</span></a>.<br/> |
152 | <br/> | 152 | <br/> |
153 | </div> | 153 | </div> |
154 | <div·class="doc"> | 154 | <div·class="doc"> |
155 | <a·id="lab3 | 155 | <a·id="lab349"></a><h2·class="section">Reflexive-transitive·closure</h2> |
156 | </div> | 156 | </div> |
157 | <div·class="code"> | 157 | <div·class="code"> |
158 | <br/> | 158 | <br/> |
159 | <span·class="id"·title="keyword">Section</span>·<a·id="Reflexive_Transitive_Closure"·class="idref"·href="#Reflexive_Transitive_Closure"><span·class="id"·title="section">Reflexive_Transitive_Closure</span></a>.<br/> | 159 | <span·class="id"·title="keyword">Section</span>·<a·id="Reflexive_Transitive_Closure"·class="idref"·href="#Reflexive_Transitive_Closure"><span·class="id"·title="section">Reflexive_Transitive_Closure</span></a>.<br/> |
160 | <span·class="id"·title="keyword">Variable</span>·<a·id="Reflexive_Transitive_Closure.A"·class="idref"·href="#Reflexive_Transitive_Closure.A"><span·class="id"·title="variable">A</span></a>·:·<span·class="id"·title="keyword">Type</span>.<br/> | 160 | <span·class="id"·title="keyword">Variable</span>·<a·id="Reflexive_Transitive_Closure.A"·class="idref"·href="#Reflexive_Transitive_Closure.A"><span·class="id"·title="variable">A</span></a>·:·<span·class="id"·title="keyword">Type</span>.<br/> |
Offset 210, 15 lines modified | Offset 210, 15 lines modified | ||
210 | <br/> | 210 | <br/> |
211 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#Reflexive_Transitive_Closure"><span·class="id"·title="section">Reflexive_Transitive_Closure</span></a>.<br/> | 211 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#Reflexive_Transitive_Closure"><span·class="id"·title="section">Reflexive_Transitive_Closure</span></a>.<br/> |
212 | <br/> | 212 | <br/> |
213 | </div> | 213 | </div> |
214 | <div·class="doc"> | 214 | <div·class="doc"> |
215 | <a·id="lab3 | 215 | <a·id="lab350"></a><h2·class="section">Reflexive-symmetric-transitive·closure</h2> |
216 | </div> | 216 | </div> |
217 | <div·class="code"> | 217 | <div·class="code"> |
218 | <br/> | 218 | <br/> |
219 | <span·class="id"·title="keyword">Section</span>·<a·id="Reflexive_Symmetric_Transitive_Closure"·class="idref"·href="#Reflexive_Symmetric_Transitive_Closure"><span·class="id"·title="section">Reflexive_Symmetric_Transitive_Closure</span></a>.<br/> | 219 | <span·class="id"·title="keyword">Section</span>·<a·id="Reflexive_Symmetric_Transitive_Closure"·class="idref"·href="#Reflexive_Symmetric_Transitive_Closure"><span·class="id"·title="section">Reflexive_Symmetric_Transitive_Closure</span></a>.<br/> |
220 | <span·class="id"·title="keyword">Variable</span>·<a·id="Reflexive_Symmetric_Transitive_Closure.A"·class="idref"·href="#Reflexive_Symmetric_Transitive_Closure.A"><span·class="id"·title="variable">A</span></a>·:·<span·class="id"·title="keyword">Type</span>.<br/> | 220 | <span·class="id"·title="keyword">Variable</span>·<a·id="Reflexive_Symmetric_Transitive_Closure.A"·class="idref"·href="#Reflexive_Symmetric_Transitive_Closure.A"><span·class="id"·title="variable">A</span></a>·:·<span·class="id"·title="keyword">Type</span>.<br/> |
Offset 272, 15 lines modified | Offset 272, 15 lines modified | ||
272 | <br/> | 272 | <br/> |
273 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#Reflexive_Symmetric_Transitive_Closure"><span·class="id"·title="section">Reflexive_Symmetric_Transitive_Closure</span></a>.<br/> | 273 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#Reflexive_Symmetric_Transitive_Closure"><span·class="id"·title="section">Reflexive_Symmetric_Transitive_Closure</span></a>.<br/> |
274 | <br/> | 274 | <br/> |
275 | </div> | 275 | </div> |
276 | <div·class="doc"> | 276 | <div·class="doc"> |
277 | <a·id="lab3 | 277 | <a·id="lab351"></a><h2·class="section">Converse·of·a·relation</h2> |
278 | </div> | 278 | </div> |
279 | <div·class="code"> | 279 | <div·class="code"> |
280 | <br/> | 280 | <br/> |
281 | <span·class="id"·title="keyword">Section</span>·<a·id="Converse"·class="idref"·href="#Converse"><span·class="id"·title="section">Converse</span></a>.<br/> | 281 | <span·class="id"·title="keyword">Section</span>·<a·id="Converse"·class="idref"·href="#Converse"><span·class="id"·title="section">Converse</span></a>.<br/> |
282 | <span·class="id"·title="keyword">Variable</span>·<a·id="Converse.A"·class="idref"·href="#Converse.A"><span·class="id"·title="variable">A</span></a>·:·<span·class="id"·title="keyword">Type</span>.<br/> | 282 | <span·class="id"·title="keyword">Variable</span>·<a·id="Converse.A"·class="idref"·href="#Converse.A"><span·class="id"·title="variable">A</span></a>·:·<span·class="id"·title="keyword">Type</span>.<br/> |
Offset 290, 15 lines modified | Offset 290, 15 lines modified | ||
290 | <span·class="id"·title="keyword">Definition</span>·<a·id="transp"·class="idref"·href="#transp"><span·class="id"·title="definition">transp</span></a>·(<a·id="x:79"·class="idref"·href="#x:79"><span·class="id"·title="binder">x</span></a>·<a·id="y:80"·class="idref"·href="#y:80"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Relations.Relation_Operators.html#Converse.A"><span·class="id"·title="variable">A</span></a>)·:=·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#Converse.R"><span·class="id"·title="variable">R</span></a>·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#y:80"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#x:79"><span·class="id"·title="variable">x</span></a>.<br/> | 290 | <span·class="id"·title="keyword">Definition</span>·<a·id="transp"·class="idref"·href="#transp"><span·class="id"·title="definition">transp</span></a>·(<a·id="x:79"·class="idref"·href="#x:79"><span·class="id"·title="binder">x</span></a>·<a·id="y:80"·class="idref"·href="#y:80"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Relations.Relation_Operators.html#Converse.A"><span·class="id"·title="variable">A</span></a>)·:=·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#Converse.R"><span·class="id"·title="variable">R</span></a>·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#y:80"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#x:79"><span·class="id"·title="variable">x</span></a>.<br/> |
291 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#Converse"><span·class="id"·title="section">Converse</span></a>.<br/> | 291 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#Converse"><span·class="id"·title="section">Converse</span></a>.<br/> |
292 | <br/> | 292 | <br/> |
293 | </div> | 293 | </div> |
294 | <div·class="doc"> | 294 | <div·class="doc"> |
295 | <a·id="lab3 | 295 | <a·id="lab352"></a><h2·class="section">Union·of·relations</h2> |
296 | </div> | 296 | </div> |
297 | <div·class="code"> | 297 | <div·class="code"> |
298 | <br/> | 298 | <br/> |
299 | <span·class="id"·title="keyword">Section</span>·<a·id="Union"·class="idref"·href="#Union"><span·class="id"·title="section">Union</span></a>.<br/> | 299 | <span·class="id"·title="keyword">Section</span>·<a·id="Union"·class="idref"·href="#Union"><span·class="id"·title="section">Union</span></a>.<br/> |
300 | <span·class="id"·title="keyword">Variable</span>·<a·id="Union.A"·class="idref"·href="#Union.A"><span·class="id"·title="variable">A</span></a>·:·<span·class="id"·title="keyword">Type</span>.<br/> | 300 | <span·class="id"·title="keyword">Variable</span>·<a·id="Union.A"·class="idref"·href="#Union.A"><span·class="id"·title="variable">A</span></a>·:·<span·class="id"·title="keyword">Type</span>.<br/> |
Offset 308, 15 lines modified | Offset 308, 15 lines modified | ||
308 | <span·class="id"·title="keyword">Definition</span>·<a·id="union"·class="idref"·href="#union"><span·class="id"·title="definition">union</span></a>·(<a·id="x:87"·class="idref"·href="#x:87"><span·class="id"·title="binder">x</span></a>·<a·id="y:88"·class="idref"·href="#y:88"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Relations.Relation_Operators.html#Union.A"><span·class="id"·title="variable">A</span></a>)·:=·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#Union.R1"><span·class="id"·title="variable">R1</span></a>·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#x:87"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#y:88"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#Union.R2"><span·class="id"·title="variable">R2</span></a>·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#x:87"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#y:88"><span·class="id"·title="variable">y</span></a>.<br/> | 308 | <span·class="id"·title="keyword">Definition</span>·<a·id="union"·class="idref"·href="#union"><span·class="id"·title="definition">union</span></a>·(<a·id="x:87"·class="idref"·href="#x:87"><span·class="id"·title="binder">x</span></a>·<a·id="y:88"·class="idref"·href="#y:88"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Relations.Relation_Operators.html#Union.A"><span·class="id"·title="variable">A</span></a>)·:=·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#Union.R1"><span·class="id"·title="variable">R1</span></a>·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#x:87"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#y:88"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#Union.R2"><span·class="id"·title="variable">R2</span></a>·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#x:87"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#y:88"><span·class="id"·title="variable">y</span></a>.<br/> |
309 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#Union"><span·class="id"·title="section">Union</span></a>.<br/> | 309 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Relations.Relation_Operators.html#Union"><span·class="id"·title="section">Union</span></a>.<br/> |
310 | <br/> | 310 | <br/> |
311 | </div> | 311 | </div> |
312 | <div·class="doc"> | 312 | <div·class="doc"> |
313 | <a·id="lab | 313 | <a·id="lab353"></a><h2·class="section">Disjoint·union·of·relations</h2> |
Max diff block lines reached; 3523/12802 bytes (27.52%) of diff not shown. |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab333"></a><h1·class="section">Circular·Shifts·(aka·Cyclic·Permutations)</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·The·main·inductive·<span·class="inlinecode"><span·class="id"·title="var">CPermutation</span></span>·relates·lists·up·to·circular·shifts·of·their·elements. | 51 | ·The·main·inductive·<span·class="inlinecode"><span·class="id"·title="var">CPermutation</span></span>·relates·lists·up·to·circular·shifts·of·their·elements. |
52 | <div·class="paragraph">·</div> | 52 | <div·class="paragraph">·</div> |
Offset 70, 19 lines modified | Offset 70, 19 lines modified | ||
70 | <br/> | 70 | <br/> |
71 | <span·class="id"·title="keyword">Section</span>·<a·id="defs"·class="idref"·href="#defs"><span·class="id"·title="section">defs</span></a>.<br/> | 71 | <span·class="id"·title="keyword">Section</span>·<a·id="defs"·class="idref"·href="#defs"><span·class="id"·title="section">defs</span></a>.<br/> |
72 | <br/> | 72 | <br/> |
73 | </div> | 73 | </div> |
74 | <div·class="doc"> | 74 | <div·class="doc"> |
75 | <a·id="lab | 75 | <a·id="lab320"></a><h1·class="section">Trees·and·heap·trees</h1> |
76 | <div·class="paragraph">·</div> | 76 | <div·class="paragraph">·</div> |
77 | <a·id="lab | 77 | <a·id="lab321"></a><h2·class="section">Definition·of·trees·over·an·ordered·set</h2> |
78 | </div> | 78 | </div> |
79 | <div·class="code"> | 79 | <div·class="code"> |
80 | <br/> | 80 | <br/> |
81 | <span·class="id"·title="keyword">Variable</span>·<a·id="defs.A"·class="idref"·href="#defs.A"><span·class="id"·title="variable">A</span></a>·:·<span·class="id"·title="keyword">Type</span>.<br/> | 81 | <span·class="id"·title="keyword">Variable</span>·<a·id="defs.A"·class="idref"·href="#defs.A"><span·class="id"·title="variable">A</span></a>·:·<span·class="id"·title="keyword">Type</span>.<br/> |
82 | <span·class="id"·title="keyword">Variable</span>·<a·id="defs.leA"·class="idref"·href="#defs.leA"><span·class="id"·title="variable">leA</span></a>·:·<a·class="idref"·href="Coq.Relations.Relation_Definitions.html#relation"><span·class="id"·title="definition">relation</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#defs.A"><span·class="id"·title="variable">A</span></a>.<br/> | 82 | <span·class="id"·title="keyword">Variable</span>·<a·id="defs.leA"·class="idref"·href="#defs.leA"><span·class="id"·title="variable">leA</span></a>·:·<a·class="idref"·href="Coq.Relations.Relation_Definitions.html#relation"><span·class="id"·title="definition">relation</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#defs.A"><span·class="id"·title="variable">A</span></a>.<br/> |
Offset 139, 15 lines modified | Offset 139, 15 lines modified | ||
139 | <span·class="id"·title="keyword">Lemma</span>·<a·id="leA_Tree_Node"·class="idref"·href="#leA_Tree_Node"><span·class="id"·title="lemma">leA_Tree_Node</span></a>·:<br/> | 139 | <span·class="id"·title="keyword">Lemma</span>·<a·id="leA_Tree_Node"·class="idref"·href="#leA_Tree_Node"><span·class="id"·title="lemma">leA_Tree_Node</span></a>·:<br/> |
140 | <span·class="id"·title="keyword">forall</span>·(<a·id="a:36"·class="idref"·href="#a:36"><span·class="id"·title="binder">a</span></a>·<a·id="b:37"·class="idref"·href="#b:37"><span·class="id"·title="binder">b</span></a>:<a·class="idref"·href="Coq.Sorting.Heap.html#defs.A"><span·class="id"·title="variable">A</span></a>)·(<a·id="G:38"·class="idref"·href="#G:38"><span·class="id"·title="binder">G</span></a>·<a·id="D:39"·class="idref"·href="#D:39"><span·class="id"·title="binder">D</span></a>:<a·class="idref"·href="Coq.Sorting.Heap.html#Tree"><span·class="id"·title="inductive">Tree</span></a>),·<a·class="idref"·href="Coq.Sorting.Heap.html#defs.leA"><span·class="id"·title="variable">leA</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#a:36"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#b:37"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#leA_Tree"><span·class="id"·title="definition">leA_Tree</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#a:36"><span·class="id"·title="variable">a</span></a>·(<a·class="idref"·href="Coq.Sorting.Heap.html#Tree_Node"><span·class="id"·title="constructor">Tree_Node</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#b:37"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#G:38"><span·class="id"·title="variable">G</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#D:39"><span·class="id"·title="variable">D</span></a>).<br/> | 140 | <span·class="id"·title="keyword">forall</span>·(<a·id="a:36"·class="idref"·href="#a:36"><span·class="id"·title="binder">a</span></a>·<a·id="b:37"·class="idref"·href="#b:37"><span·class="id"·title="binder">b</span></a>:<a·class="idref"·href="Coq.Sorting.Heap.html#defs.A"><span·class="id"·title="variable">A</span></a>)·(<a·id="G:38"·class="idref"·href="#G:38"><span·class="id"·title="binder">G</span></a>·<a·id="D:39"·class="idref"·href="#D:39"><span·class="id"·title="binder">D</span></a>:<a·class="idref"·href="Coq.Sorting.Heap.html#Tree"><span·class="id"·title="inductive">Tree</span></a>),·<a·class="idref"·href="Coq.Sorting.Heap.html#defs.leA"><span·class="id"·title="variable">leA</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#a:36"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#b:37"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#leA_Tree"><span·class="id"·title="definition">leA_Tree</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#a:36"><span·class="id"·title="variable">a</span></a>·(<a·class="idref"·href="Coq.Sorting.Heap.html#Tree_Node"><span·class="id"·title="constructor">Tree_Node</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#b:37"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#G:38"><span·class="id"·title="variable">G</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#D:39"><span·class="id"·title="variable">D</span></a>).<br/> |
141 | <br/> | 141 | <br/> |
142 | </div> | 142 | </div> |
143 | <div·class="doc"> | 143 | <div·class="doc"> |
144 | <a·id="lab | 144 | <a·id="lab322"></a><h2·class="section">The·heap·property</h2> |
145 | </div> | 145 | </div> |
146 | <div·class="code"> | 146 | <div·class="code"> |
147 | <br/> | 147 | <br/> |
148 | <span·class="id"·title="keyword">Inductive</span>·<a·id="is_heap"·class="idref"·href="#is_heap"><span·class="id"·title="definition,·inductive"><span·id="is_heap_ind"·class="id"><span·id="is_heap_sind"·class="id">is_heap</span></span></span></a>·:·<a·class="idref"·href="Coq.Sorting.Heap.html#Tree"><span·class="id"·title="inductive">Tree</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>·:=<br/> | 148 | <span·class="id"·title="keyword">Inductive</span>·<a·id="is_heap"·class="idref"·href="#is_heap"><span·class="id"·title="definition,·inductive"><span·id="is_heap_ind"·class="id"><span·id="is_heap_sind"·class="id">is_heap</span></span></span></a>·:·<a·class="idref"·href="Coq.Sorting.Heap.html#Tree"><span·class="id"·title="inductive">Tree</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>·:=<br/> |
149 | |·<a·id="nil_is_heap"·class="idref"·href="#nil_is_heap"><span·class="id"·title="constructor">nil_is_heap</span></a>·:·<a·class="idref"·href="Coq.Sorting.Heap.html#is_heap:40"><span·class="id"·title="inductive">is_heap</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#Tree_Leaf"><span·class="id"·title="constructor">Tree_Leaf</span></a><br/> | 149 | |·<a·id="nil_is_heap"·class="idref"·href="#nil_is_heap"><span·class="id"·title="constructor">nil_is_heap</span></a>·:·<a·class="idref"·href="Coq.Sorting.Heap.html#is_heap:40"><span·class="id"·title="inductive">is_heap</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#Tree_Leaf"><span·class="id"·title="constructor">Tree_Leaf</span></a><br/> |
Offset 191, 15 lines modified | Offset 191, 15 lines modified | ||
191 | <span·class="id"·title="keyword">Lemma</span>·<a·id="low_trans"·class="idref"·href="#low_trans"><span·class="id"·title="lemma">low_trans</span></a>·:<br/> | 191 | <span·class="id"·title="keyword">Lemma</span>·<a·id="low_trans"·class="idref"·href="#low_trans"><span·class="id"·title="lemma">low_trans</span></a>·:<br/> |
192 | <span·class="id"·title="keyword">forall</span>·(<a·id="T:58"·class="idref"·href="#T:58"><span·class="id"·title="binder">T</span></a>:<a·class="idref"·href="Coq.Sorting.Heap.html#Tree"><span·class="id"·title="inductive">Tree</span></a>)·(<a·id="a:59"·class="idref"·href="#a:59"><span·class="id"·title="binder">a</span></a>·<a·id="b:60"·class="idref"·href="#b:60"><span·class="id"·title="binder">b</span></a>:<a·class="idref"·href="Coq.Sorting.Heap.html#defs.A"><span·class="id"·title="variable">A</span></a>),·<a·class="idref"·href="Coq.Sorting.Heap.html#defs.leA"><span·class="id"·title="variable">leA</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#a:59"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#b:60"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#leA_Tree"><span·class="id"·title="definition">leA_Tree</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#b:60"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#T:58"><span·class="id"·title="variable">T</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#leA_Tree"><span·class="id"·title="definition">leA_Tree</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#a:59"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#T:58"><span·class="id"·title="variable">T</span></a>.<br/> | 192 | <span·class="id"·title="keyword">forall</span>·(<a·id="T:58"·class="idref"·href="#T:58"><span·class="id"·title="binder">T</span></a>:<a·class="idref"·href="Coq.Sorting.Heap.html#Tree"><span·class="id"·title="inductive">Tree</span></a>)·(<a·id="a:59"·class="idref"·href="#a:59"><span·class="id"·title="binder">a</span></a>·<a·id="b:60"·class="idref"·href="#b:60"><span·class="id"·title="binder">b</span></a>:<a·class="idref"·href="Coq.Sorting.Heap.html#defs.A"><span·class="id"·title="variable">A</span></a>),·<a·class="idref"·href="Coq.Sorting.Heap.html#defs.leA"><span·class="id"·title="variable">leA</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#a:59"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#b:60"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#leA_Tree"><span·class="id"·title="definition">leA_Tree</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#b:60"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#T:58"><span·class="id"·title="variable">T</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#leA_Tree"><span·class="id"·title="definition">leA_Tree</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#a:59"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#T:58"><span·class="id"·title="variable">T</span></a>.<br/> |
193 | <br/> | 193 | <br/> |
194 | </div> | 194 | </div> |
195 | <div·class="doc"> | 195 | <div·class="doc"> |
196 | <a·id="lab | 196 | <a·id="lab323"></a><h2·class="section">Merging·two·sorted·lists</h2> |
197 | </div> | 197 | </div> |
198 | <div·class="code"> | 198 | <div·class="code"> |
199 | <br/> | 199 | <br/> |
200 | <span·class="id"·title="keyword">Inductive</span>·<a·id="merge_lem"·class="idref"·href="#merge_lem"><span·class="id"·title="definition,·inductive"><span·id="merge_lem_rect"·class="id"><span·id="merge_lem_ind"·class="id"><span·id="merge_lem_rec"·class="id"><span·id="merge_lem_sind"·class="id">merge_lem</span></span></span></span></span></a>·(<a·id="l1:61"·class="idref"·href="#l1:61"><span·class="id"·title="binder">l1</span></a>·<a·id="l2:62"·class="idref"·href="#l2:62"><span·class="id"·title="binder">l2</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#defs.A"><span·class="id"·title="variable">A</span></a>)·:·<span·class="id"·title="keyword">Type</span>·:=<br/> | 200 | <span·class="id"·title="keyword">Inductive</span>·<a·id="merge_lem"·class="idref"·href="#merge_lem"><span·class="id"·title="definition,·inductive"><span·id="merge_lem_rect"·class="id"><span·id="merge_lem_ind"·class="id"><span·id="merge_lem_rec"·class="id"><span·id="merge_lem_sind"·class="id">merge_lem</span></span></span></span></span></a>·(<a·id="l1:61"·class="idref"·href="#l1:61"><span·class="id"·title="binder">l1</span></a>·<a·id="l2:62"·class="idref"·href="#l2:62"><span·class="id"·title="binder">l2</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#defs.A"><span·class="id"·title="variable">A</span></a>)·:·<span·class="id"·title="keyword">Type</span>·:=<br/> |
201 | <a·id="merge_exist"·class="idref"·href="#merge_exist"><span·class="id"·title="constructor">merge_exist</span></a>·:<br/> | 201 | <a·id="merge_exist"·class="idref"·href="#merge_exist"><span·class="id"·title="constructor">merge_exist</span></a>·:<br/> |
Offset 223, 15 lines modified | Offset 223, 15 lines modified | ||
223 | <span·class="id"·title="keyword">forall</span>·<a·id="l1:67"·class="idref"·href="#l1:67"><span·class="id"·title="binder">l1</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#defs.A"><span·class="id"·title="variable">A</span></a>,·<a·class="idref"·href="Coq.Sorting.Sorted.html#Sorted"><span·class="id"·title="inductive">Sorted</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#defs.leA"><span·class="id"·title="variable">leA</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#l1:67"><span·class="id"·title="variable">l1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 223 | <span·class="id"·title="keyword">forall</span>·<a·id="l1:67"·class="idref"·href="#l1:67"><span·class="id"·title="binder">l1</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#defs.A"><span·class="id"·title="variable">A</span></a>,·<a·class="idref"·href="Coq.Sorting.Sorted.html#Sorted"><span·class="id"·title="inductive">Sorted</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#defs.leA"><span·class="id"·title="variable">leA</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#l1:67"><span·class="id"·title="variable">l1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
224 | <span·class="id"·title="keyword">forall</span>·<a·id="l2:68"·class="idref"·href="#l2:68"><span·class="id"·title="binder">l2</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#defs.A"><span·class="id"·title="variable">A</span></a>,·<a·class="idref"·href="Coq.Sorting.Sorted.html#Sorted"><span·class="id"·title="inductive">Sorted</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#defs.leA"><span·class="id"·title="variable">leA</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#l2:68"><span·class="id"·title="variable">l2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#merge_lem"><span·class="id"·title="inductive">merge_lem</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#l1:67"><span·class="id"·title="variable">l1</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#l2:68"><span·class="id"·title="variable">l2</span></a>.<br/> | 224 | <span·class="id"·title="keyword">forall</span>·<a·id="l2:68"·class="idref"·href="#l2:68"><span·class="id"·title="binder">l2</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#defs.A"><span·class="id"·title="variable">A</span></a>,·<a·class="idref"·href="Coq.Sorting.Sorted.html#Sorted"><span·class="id"·title="inductive">Sorted</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#defs.leA"><span·class="id"·title="variable">leA</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#l2:68"><span·class="id"·title="variable">l2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#merge_lem"><span·class="id"·title="inductive">merge_lem</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#l1:67"><span·class="id"·title="variable">l1</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#l2:68"><span·class="id"·title="variable">l2</span></a>.<br/> |
225 | <br/> | 225 | <br/> |
226 | </div> | 226 | </div> |
227 | <div·class="doc"> | 227 | <div·class="doc"> |
228 | <a·id="lab | 228 | <a·id="lab324"></a><h2·class="section">From·trees·to·multisets</h2> |
229 | <div·class="paragraph">·</div> | 229 | <div·class="paragraph">·</div> |
230 | ·contents·of·a·tree·as·a·multiset· | 230 | ·contents·of·a·tree·as·a·multiset· |
231 | <div·class="paragraph">·</div> | 231 | <div·class="paragraph">·</div> |
232 | ·Nota·Bene·:·In·what·follows·the·definition·of·SingletonBag | 232 | ·Nota·Bene·:·In·what·follows·the·definition·of·SingletonBag |
Offset 259, 19 lines modified | Offset 259, 19 lines modified | ||
259 | #[<span·class="id"·title="var">deprecated</span>(<span·class="id"·title="var">since</span>="8.3",·<span·class="id"·title="var">note</span>="Use·mergesort.v")]<br/> | 259 | #[<span·class="id"·title="var">deprecated</span>(<span·class="id"·title="var">since</span>="8.3",·<span·class="id"·title="var">note</span>="Use·mergesort.v")]<br/> |
260 | <span·class="id"·title="keyword">Definition</span>·<a·id="equiv_Tree"·class="idref"·href="#equiv_Tree"><span·class="id"·title="definition">equiv_Tree</span></a>·(<a·id="t1:72"·class="idref"·href="#t1:72"><span·class="id"·title="binder">t1</span></a>·<a·id="t2:73"·class="idref"·href="#t2:73"><span·class="id"·title="binder">t2</span></a>:<a·class="idref"·href="Coq.Sorting.Heap.html#Tree"><span·class="id"·title="inductive">Tree</span></a>)·:=·<a·class="idref"·href="Coq.Sets.Multiset.html#meq"><span·class="id"·title="definition">meq</span></a>·(<a·class="idref"·href="Coq.Sorting.Heap.html#contents"><span·class="id"·title="definition">contents</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#t1:72"><span·class="id"·title="variable">t1</span></a>)·(<a·class="idref"·href="Coq.Sorting.Heap.html#contents"><span·class="id"·title="definition">contents</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#t2:73"><span·class="id"·title="variable">t2</span></a>).<br/> | 260 | <span·class="id"·title="keyword">Definition</span>·<a·id="equiv_Tree"·class="idref"·href="#equiv_Tree"><span·class="id"·title="definition">equiv_Tree</span></a>·(<a·id="t1:72"·class="idref"·href="#t1:72"><span·class="id"·title="binder">t1</span></a>·<a·id="t2:73"·class="idref"·href="#t2:73"><span·class="id"·title="binder">t2</span></a>:<a·class="idref"·href="Coq.Sorting.Heap.html#Tree"><span·class="id"·title="inductive">Tree</span></a>)·:=·<a·class="idref"·href="Coq.Sets.Multiset.html#meq"><span·class="id"·title="definition">meq</span></a>·(<a·class="idref"·href="Coq.Sorting.Heap.html#contents"><span·class="id"·title="definition">contents</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#t1:72"><span·class="id"·title="variable">t1</span></a>)·(<a·class="idref"·href="Coq.Sorting.Heap.html#contents"><span·class="id"·title="definition">contents</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#t2:73"><span·class="id"·title="variable">t2</span></a>).<br/> |
261 | <br/> | 261 | <br/> |
262 | </div> | 262 | </div> |
263 | <div·class="doc"> | 263 | <div·class="doc"> |
264 | <a·id="lab | 264 | <a·id="lab325"></a><h1·class="section">From·lists·to·sorted·lists</h1> |
265 | <div·class="paragraph">·</div> | 265 | <div·class="paragraph">·</div> |
266 | <a·id="lab | 266 | <a·id="lab326"></a><h2·class="section">Specification·of·heap·insertion</h2> |
267 | </div> | 267 | </div> |
268 | <div·class="code"> | 268 | <div·class="code"> |
269 | <br/> | 269 | <br/> |
270 | <span·class="id"·title="keyword">Inductive</span>·<a·id="insert_spec"·class="idref"·href="#insert_spec"><span·class="id"·title="definition,·inductive"><span·id="insert_spec_rect"·class="id"><span·id="insert_spec_ind"·class="id"><span·id="insert_spec_rec"·class="id"><span·id="insert_spec_sind"·class="id">insert_spec</span></span></span></span></span></a>·(<a·id="a:74"·class="idref"·href="#a:74"><span·class="id"·title="binder">a</span></a>:<a·class="idref"·href="Coq.Sorting.Heap.html#defs.A"><span·class="id"·title="variable">A</span></a>)·(<a·id="T:75"·class="idref"·href="#T:75"><span·class="id"·title="binder">T</span></a>:<a·class="idref"·href="Coq.Sorting.Heap.html#Tree"><span·class="id"·title="inductive">Tree</span></a>)·:·<span·class="id"·title="keyword">Type</span>·:=<br/> | 270 | <span·class="id"·title="keyword">Inductive</span>·<a·id="insert_spec"·class="idref"·href="#insert_spec"><span·class="id"·title="definition,·inductive"><span·id="insert_spec_rect"·class="id"><span·id="insert_spec_ind"·class="id"><span·id="insert_spec_rec"·class="id"><span·id="insert_spec_sind"·class="id">insert_spec</span></span></span></span></span></a>·(<a·id="a:74"·class="idref"·href="#a:74"><span·class="id"·title="binder">a</span></a>:<a·class="idref"·href="Coq.Sorting.Heap.html#defs.A"><span·class="id"·title="variable">A</span></a>)·(<a·id="T:75"·class="idref"·href="#T:75"><span·class="id"·title="binder">T</span></a>:<a·class="idref"·href="Coq.Sorting.Heap.html#Tree"><span·class="id"·title="inductive">Tree</span></a>)·:·<span·class="id"·title="keyword">Type</span>·:=<br/> |
271 | <a·id="insert_exist"·class="idref"·href="#insert_exist"><span·class="id"·title="constructor">insert_exist</span></a>·:<br/> | 271 | <a·id="insert_exist"·class="idref"·href="#insert_exist"><span·class="id"·title="constructor">insert_exist</span></a>·:<br/> |
Offset 285, 15 lines modified | Offset 285, 15 lines modified | ||
285 | #[<span·class="id"·title="var">deprecated</span>(<span·class="id"·title="var">since</span>="8.3",·<span·class="id"·title="var">note</span>="Use·mergesort.v")]<br/> | 285 | #[<span·class="id"·title="var">deprecated</span>(<span·class="id"·title="var">since</span>="8.3",·<span·class="id"·title="var">note</span>="Use·mergesort.v")]<br/> |
286 | <span·class="id"·title="keyword">Lemma</span>·<a·id="insert"·class="idref"·href="#insert"><span·class="id"·title="lemma">insert</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="T:80"·class="idref"·href="#T:80"><span·class="id"·title="binder">T</span></a>:<a·class="idref"·href="Coq.Sorting.Heap.html#Tree"><span·class="id"·title="inductive">Tree</span></a>,·<a·class="idref"·href="Coq.Sorting.Heap.html#is_heap"><span·class="id"·title="inductive">is_heap</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#T:80"><span·class="id"·title="variable">T</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">forall</span>·<a·id="a:81"·class="idref"·href="#a:81"><span·class="id"·title="binder">a</span></a>:<a·class="idref"·href="Coq.Sorting.Heap.html#defs.A"><span·class="id"·title="variable">A</span></a>,·<a·class="idref"·href="Coq.Sorting.Heap.html#insert_spec"><span·class="id"·title="inductive">insert_spec</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#a:81"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#T:80"><span·class="id"·title="variable">T</span></a>.<br/> | 286 | <span·class="id"·title="keyword">Lemma</span>·<a·id="insert"·class="idref"·href="#insert"><span·class="id"·title="lemma">insert</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="T:80"·class="idref"·href="#T:80"><span·class="id"·title="binder">T</span></a>:<a·class="idref"·href="Coq.Sorting.Heap.html#Tree"><span·class="id"·title="inductive">Tree</span></a>,·<a·class="idref"·href="Coq.Sorting.Heap.html#is_heap"><span·class="id"·title="inductive">is_heap</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#T:80"><span·class="id"·title="variable">T</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">forall</span>·<a·id="a:81"·class="idref"·href="#a:81"><span·class="id"·title="binder">a</span></a>:<a·class="idref"·href="Coq.Sorting.Heap.html#defs.A"><span·class="id"·title="variable">A</span></a>,·<a·class="idref"·href="Coq.Sorting.Heap.html#insert_spec"><span·class="id"·title="inductive">insert_spec</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#a:81"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#T:80"><span·class="id"·title="variable">T</span></a>.<br/> |
287 | <br/> | 287 | <br/> |
288 | </div> | 288 | </div> |
289 | <div·class="doc"> | 289 | <div·class="doc"> |
290 | <a·id="lab | 290 | <a·id="lab327"></a><h2·class="section">Building·a·heap·from·a·list</h2> |
291 | </div> | 291 | </div> |
292 | <div·class="code"> | 292 | <div·class="code"> |
293 | <br/> | 293 | <br/> |
294 | <span·class="id"·title="keyword">Inductive</span>·<a·id="build_heap"·class="idref"·href="#build_heap"><span·class="id"·title="definition,·inductive"><span·id="build_heap_rect"·class="id"><span·id="build_heap_ind"·class="id"><span·id="build_heap_rec"·class="id"><span·id="build_heap_sind"·class="id">build_heap</span></span></span></span></span></a>·(<a·id="l:82"·class="idref"·href="#l:82"><span·class="id"·title="binder">l</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#defs.A"><span·class="id"·title="variable">A</span></a>)·:·<span·class="id"·title="keyword">Type</span>·:=<br/> | 294 | <span·class="id"·title="keyword">Inductive</span>·<a·id="build_heap"·class="idref"·href="#build_heap"><span·class="id"·title="definition,·inductive"><span·id="build_heap_rect"·class="id"><span·id="build_heap_ind"·class="id"><span·id="build_heap_rec"·class="id"><span·id="build_heap_sind"·class="id">build_heap</span></span></span></span></span></a>·(<a·id="l:82"·class="idref"·href="#l:82"><span·class="id"·title="binder">l</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#defs.A"><span·class="id"·title="variable">A</span></a>)·:·<span·class="id"·title="keyword">Type</span>·:=<br/> |
295 | <a·id="heap_exist"·class="idref"·href="#heap_exist"><span·class="id"·title="constructor">heap_exist</span></a>·:<br/> | 295 | <a·id="heap_exist"·class="idref"·href="#heap_exist"><span·class="id"·title="constructor">heap_exist</span></a>·:<br/> |
Offset 305, 15 lines modified | Offset 305, 15 lines modified | ||
305 | #[<span·class="id"·title="var">deprecated</span>(<span·class="id"·title="var">since</span>="8.3",·<span·class="id"·title="var">note</span>="Use·mergesort.v")]<br/> | 305 | #[<span·class="id"·title="var">deprecated</span>(<span·class="id"·title="var">since</span>="8.3",·<span·class="id"·title="var">note</span>="Use·mergesort.v")]<br/> |
306 | <span·class="id"·title="keyword">Lemma</span>·<a·id="list_to_heap"·class="idref"·href="#list_to_heap"><span·class="id"·title="lemma">list_to_heap</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="l:86"·class="idref"·href="#l:86"><span·class="id"·title="binder">l</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#defs.A"><span·class="id"·title="variable">A</span></a>,·<a·class="idref"·href="Coq.Sorting.Heap.html#build_heap"><span·class="id"·title="inductive">build_heap</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#l:86"><span·class="id"·title="variable">l</span></a>.<br/> | 306 | <span·class="id"·title="keyword">Lemma</span>·<a·id="list_to_heap"·class="idref"·href="#list_to_heap"><span·class="id"·title="lemma">list_to_heap</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="l:86"·class="idref"·href="#l:86"><span·class="id"·title="binder">l</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#defs.A"><span·class="id"·title="variable">A</span></a>,·<a·class="idref"·href="Coq.Sorting.Heap.html#build_heap"><span·class="id"·title="inductive">build_heap</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#l:86"><span·class="id"·title="variable">l</span></a>.<br/> |
307 | <br/> | 307 | <br/> |
308 | </div> | 308 | </div> |
309 | <div·class="doc"> | 309 | <div·class="doc"> |
310 | <a·id="lab | 310 | <a·id="lab328"></a><h2·class="section">Building·the·sorted·list</h2> |
311 | </div> | 311 | </div> |
312 | <div·class="code"> | 312 | <div·class="code"> |
313 | <br/> | 313 | <br/> |
314 | <span·class="id"·title="keyword">Inductive</span>·<a·id="flat_spec"·class="idref"·href="#flat_spec"><span·class="id"·title="definition,·inductive"><span·id="flat_spec_rect"·class="id"><span·id="flat_spec_ind"·class="id"><span·id="flat_spec_rec"·class="id"><span·id="flat_spec_sind"·class="id">flat_spec</span></span></span></span></span></a>·(<a·id="T:87"·class="idref"·href="#T:87"><span·class="id"·title="binder">T</span></a>:<a·class="idref"·href="Coq.Sorting.Heap.html#Tree"><span·class="id"·title="inductive">Tree</span></a>)·:·<span·class="id"·title="keyword">Type</span>·:=<br/> | 314 | <span·class="id"·title="keyword">Inductive</span>·<a·id="flat_spec"·class="idref"·href="#flat_spec"><span·class="id"·title="definition,·inductive"><span·id="flat_spec_rect"·class="id"><span·id="flat_spec_ind"·class="id"><span·id="flat_spec_rec"·class="id"><span·id="flat_spec_sind"·class="id">flat_spec</span></span></span></span></span></a>·(<a·id="T:87"·class="idref"·href="#T:87"><span·class="id"·title="binder">T</span></a>:<a·class="idref"·href="Coq.Sorting.Heap.html#Tree"><span·class="id"·title="inductive">Tree</span></a>)·:·<span·class="id"·title="keyword">Type</span>·:=<br/> |
315 | <a·id="flat_exist"·class="idref"·href="#flat_exist"><span·class="id"·title="constructor">flat_exist</span></a>·:<br/> | 315 | <a·id="flat_exist"·class="idref"·href="#flat_exist"><span·class="id"·title="constructor">flat_exist</span></a>·:<br/> |
Offset 326, 15 lines modified | Offset 326, 15 lines modified | ||
326 | #[<span·class="id"·title="var">deprecated</span>(<span·class="id"·title="var">since</span>="8.3",·<span·class="id"·title="var">note</span>="Use·mergesort.v")]<br/> | 326 | #[<span·class="id"·title="var">deprecated</span>(<span·class="id"·title="var">since</span>="8.3",·<span·class="id"·title="var">note</span>="Use·mergesort.v")]<br/> |
327 | <span·class="id"·title="keyword">Lemma</span>·<a·id="heap_to_list"·class="idref"·href="#heap_to_list"><span·class="id"·title="lemma">heap_to_list</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="T:92"·class="idref"·href="#T:92"><span·class="id"·title="binder">T</span></a>:<a·class="idref"·href="Coq.Sorting.Heap.html#Tree"><span·class="id"·title="inductive">Tree</span></a>,·<a·class="idref"·href="Coq.Sorting.Heap.html#is_heap"><span·class="id"·title="inductive">is_heap</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#T:92"><span·class="id"·title="variable">T</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#flat_spec"><span·class="id"·title="inductive">flat_spec</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#T:92"><span·class="id"·title="variable">T</span></a>.<br/> | 327 | <span·class="id"·title="keyword">Lemma</span>·<a·id="heap_to_list"·class="idref"·href="#heap_to_list"><span·class="id"·title="lemma">heap_to_list</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="T:92"·class="idref"·href="#T:92"><span·class="id"·title="binder">T</span></a>:<a·class="idref"·href="Coq.Sorting.Heap.html#Tree"><span·class="id"·title="inductive">Tree</span></a>,·<a·class="idref"·href="Coq.Sorting.Heap.html#is_heap"><span·class="id"·title="inductive">is_heap</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#T:92"><span·class="id"·title="variable">T</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#flat_spec"><span·class="id"·title="inductive">flat_spec</span></a>·<a·class="idref"·href="Coq.Sorting.Heap.html#T:92"><span·class="id"·title="variable">T</span></a>.<br/> |
328 | <br/> | 328 | <br/> |
329 | </div> | 329 | </div> |
330 | <div·class="doc"> | 330 | <div·class="doc"> |
Max diff block lines reached; 381/18177 bytes (2.10%) of diff not shown. |
Offset 85, 15 lines modified | Offset 85, 15 lines modified | ||
85 | <br/> | 85 | <br/> |
86 | <span·class="id"·title="keyword">Section</span>·<a·id="Permut"·class="idref"·href="#Permut"><span·class="id"·title="section">Permut</span></a>.<br/> | 86 | <span·class="id"·title="keyword">Section</span>·<a·id="Permut"·class="idref"·href="#Permut"><span·class="id"·title="section">Permut</span></a>.<br/> |
87 | <br/> | 87 | <br/> |
88 | </div> | 88 | </div> |
89 | <div·class="doc"> | 89 | <div·class="doc"> |
90 | <a·id="lab | 90 | <a·id="lab330"></a><h1·class="section">From·lists·to·multisets</h1> |
91 | </div> | 91 | </div> |
92 | <div·class="code"> | 92 | <div·class="code"> |
93 | <br/> | 93 | <br/> |
94 | <span·class="id"·title="keyword">Variable</span>·<a·id="Permut.A"·class="idref"·href="#Permut.A"><span·class="id"·title="variable">A</span></a>·:·<span·class="id"·title="keyword">Type</span>.<br/> | 94 | <span·class="id"·title="keyword">Variable</span>·<a·id="Permut.A"·class="idref"·href="#Permut.A"><span·class="id"·title="variable">A</span></a>·:·<span·class="id"·title="keyword">Type</span>.<br/> |
95 | <span·class="id"·title="keyword">Variable</span>·<a·id="Permut.eqA"·class="idref"·href="#Permut.eqA"><span·class="id"·title="variable">eqA</span></a>·:·<a·class="idref"·href="Coq.Relations.Relation_Definitions.html#relation"><span·class="id"·title="definition">relation</span></a>·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#Permut.A"><span·class="id"·title="variable">A</span></a>.<br/> | 95 | <span·class="id"·title="keyword">Variable</span>·<a·id="Permut.eqA"·class="idref"·href="#Permut.eqA"><span·class="id"·title="variable">eqA</span></a>·:·<a·class="idref"·href="Coq.Relations.Relation_Definitions.html#relation"><span·class="id"·title="definition">relation</span></a>·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#Permut.A"><span·class="id"·title="variable">A</span></a>.<br/> |
Offset 124, 15 lines modified | Offset 124, 15 lines modified | ||
124 | <span·class="id"·title="keyword">forall</span>·<a·id="l:14"·class="idref"·href="#l:14"><span·class="id"·title="binder">l</span></a>·<a·id="m:15"·class="idref"·href="#m:15"><span·class="id"·title="binder">m</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#Permut.A"><span·class="id"·title="variable">A</span></a>,<br/> | 124 | <span·class="id"·title="keyword">forall</span>·<a·id="l:14"·class="idref"·href="#l:14"><span·class="id"·title="binder">l</span></a>·<a·id="m:15"·class="idref"·href="#m:15"><span·class="id"·title="binder">m</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#Permut.A"><span·class="id"·title="variable">A</span></a>,<br/> |
125 | <a·class="idref"·href="Coq.Sets.Multiset.html#meq"><span·class="id"·title="definition">meq</span></a>·(<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#list_contents"><span·class="id"·title="definition">list_contents</span></a>·(<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#l:14"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#bc347c51eaf667706ae54503b26d52c6"><span·class="id"·title="notation">++</span></a>·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#m:15"><span·class="id"·title="variable">m</span></a>))·(<a·class="idref"·href="Coq.Sets.Multiset.html#munion"><span·class="id"·title="definition">munion</span></a>·(<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#list_contents"><span·class="id"·title="definition">list_contents</span></a>·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#l:14"><span·class="id"·title="variable">l</span></a>)·(<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#list_contents"><span·class="id"·title="definition">list_contents</span></a>·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#m:15"><span·class="id"·title="variable">m</span></a>)).<br/> | 125 | <a·class="idref"·href="Coq.Sets.Multiset.html#meq"><span·class="id"·title="definition">meq</span></a>·(<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#list_contents"><span·class="id"·title="definition">list_contents</span></a>·(<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#l:14"><span·class="id"·title="variable">l</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#bc347c51eaf667706ae54503b26d52c6"><span·class="id"·title="notation">++</span></a>·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#m:15"><span·class="id"·title="variable">m</span></a>))·(<a·class="idref"·href="Coq.Sets.Multiset.html#munion"><span·class="id"·title="definition">munion</span></a>·(<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#list_contents"><span·class="id"·title="definition">list_contents</span></a>·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#l:14"><span·class="id"·title="variable">l</span></a>)·(<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#list_contents"><span·class="id"·title="definition">list_contents</span></a>·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#m:15"><span·class="id"·title="variable">m</span></a>)).<br/> |
126 | <br/> | 126 | <br/> |
127 | </div> | 127 | </div> |
128 | <div·class="doc"> | 128 | <div·class="doc"> |
129 | <a·id="lab | 129 | <a·id="lab331"></a><h1·class="section"><span·class="inlinecode"><span·class="id"·title="var">permutation</span></span>:·definition·and·basic·properties</h1> |
130 | </div> | 130 | </div> |
131 | <div·class="code"> | 131 | <div·class="code"> |
132 | <br/> | 132 | <br/> |
133 | <span·class="id"·title="keyword">Definition</span>·<a·id="permutation"·class="idref"·href="#permutation"><span·class="id"·title="definition">permutation</span></a>·(<a·id="l:16"·class="idref"·href="#l:16"><span·class="id"·title="binder">l</span></a>·<a·id="m:17"·class="idref"·href="#m:17"><span·class="id"·title="binder">m</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#Permut.A"><span·class="id"·title="variable">A</span></a>)·:=·<a·class="idref"·href="Coq.Sets.Multiset.html#meq"><span·class="id"·title="definition">meq</span></a>·(<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#list_contents"><span·class="id"·title="definition">list_contents</span></a>·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#l:16"><span·class="id"·title="variable">l</span></a>)·(<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#list_contents"><span·class="id"·title="definition">list_contents</span></a>·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#m:17"><span·class="id"·title="variable">m</span></a>).<br/> | 133 | <span·class="id"·title="keyword">Definition</span>·<a·id="permutation"·class="idref"·href="#permutation"><span·class="id"·title="definition">permutation</span></a>·(<a·id="l:16"·class="idref"·href="#l:16"><span·class="id"·title="binder">l</span></a>·<a·id="m:17"·class="idref"·href="#m:17"><span·class="id"·title="binder">m</span></a>:<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#Permut.A"><span·class="id"·title="variable">A</span></a>)·:=·<a·class="idref"·href="Coq.Sets.Multiset.html#meq"><span·class="id"·title="definition">meq</span></a>·(<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#list_contents"><span·class="id"·title="definition">list_contents</span></a>·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#l:16"><span·class="id"·title="variable">l</span></a>)·(<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#list_contents"><span·class="id"·title="definition">list_contents</span></a>·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#m:17"><span·class="id"·title="variable">m</span></a>).<br/> |
Offset 198, 15 lines modified | Offset 198, 15 lines modified | ||
198 | <span·class="id"·title="keyword">Lemma</span>·<a·id="permut_rev"·class="idref"·href="#permut_rev"><span·class="id"·title="lemma">permut_rev</span></a>·:<br/> | 198 | <span·class="id"·title="keyword">Lemma</span>·<a·id="permut_rev"·class="idref"·href="#permut_rev"><span·class="id"·title="lemma">permut_rev</span></a>·:<br/> |
199 | <span·class="id"·title="keyword">forall</span>·<a·id="l:60"·class="idref"·href="#l:60"><span·class="id"·title="binder">l</span></a>,·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#permutation"><span·class="id"·title="definition">permutation</span></a>·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#l:60"><span·class="id"·title="variable">l</span></a>·(<a·class="idref"·href="Coq.Lists.List.html#rev"><span·class="id"·title="definition">rev</span></a>·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#l:60"><span·class="id"·title="variable">l</span></a>).<br/> | 199 | <span·class="id"·title="keyword">forall</span>·<a·id="l:60"·class="idref"·href="#l:60"><span·class="id"·title="binder">l</span></a>,·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#permutation"><span·class="id"·title="definition">permutation</span></a>·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#l:60"><span·class="id"·title="variable">l</span></a>·(<a·class="idref"·href="Coq.Lists.List.html#rev"><span·class="id"·title="definition">rev</span></a>·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#l:60"><span·class="id"·title="variable">l</span></a>).<br/> |
200 | <br/> | 200 | <br/> |
201 | </div> | 201 | </div> |
202 | <div·class="doc"> | 202 | <div·class="doc"> |
203 | <a·id="lab | 203 | <a·id="lab332"></a><h1·class="section">Some·inversion·results.</h1> |
204 | </div> | 204 | </div> |
205 | <div·class="code"> | 205 | <div·class="code"> |
206 | <span·class="id"·title="keyword">Lemma</span>·<a·id="permut_conv_inv"·class="idref"·href="#permut_conv_inv"><span·class="id"·title="lemma">permut_conv_inv</span></a>·:<br/> | 206 | <span·class="id"·title="keyword">Lemma</span>·<a·id="permut_conv_inv"·class="idref"·href="#permut_conv_inv"><span·class="id"·title="lemma">permut_conv_inv</span></a>·:<br/> |
207 | <span·class="id"·title="keyword">forall</span>·<a·id="e:61"·class="idref"·href="#e:61"><span·class="id"·title="binder">e</span></a>·<a·id="l1:62"·class="idref"·href="#l1:62"><span·class="id"·title="binder">l1</span></a>·<a·id="l2:63"·class="idref"·href="#l2:63"><span·class="id"·title="binder">l2</span></a>,·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#permutation"><span·class="id"·title="definition">permutation</span></a>·(<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#e:61"><span·class="id"·title="variable">e</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#::list_scope:x_'::'_x"><span·class="id"·title="notation">::</span></a>·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#l1:62"><span·class="id"·title="variable">l1</span></a>)·(<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#e:61"><span·class="id"·title="variable">e</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#::list_scope:x_'::'_x"><span·class="id"·title="notation">::</span></a>·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#l2:63"><span·class="id"·title="variable">l2</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#permutation"><span·class="id"·title="definition">permutation</span></a>·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#l1:62"><span·class="id"·title="variable">l1</span></a>·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#l2:63"><span·class="id"·title="variable">l2</span></a>.<br/> | 207 | <span·class="id"·title="keyword">forall</span>·<a·id="e:61"·class="idref"·href="#e:61"><span·class="id"·title="binder">e</span></a>·<a·id="l1:62"·class="idref"·href="#l1:62"><span·class="id"·title="binder">l1</span></a>·<a·id="l2:63"·class="idref"·href="#l2:63"><span·class="id"·title="binder">l2</span></a>,·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#permutation"><span·class="id"·title="definition">permutation</span></a>·(<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#e:61"><span·class="id"·title="variable">e</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#::list_scope:x_'::'_x"><span·class="id"·title="notation">::</span></a>·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#l1:62"><span·class="id"·title="variable">l1</span></a>)·(<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#e:61"><span·class="id"·title="variable">e</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#::list_scope:x_'::'_x"><span·class="id"·title="notation">::</span></a>·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#l2:63"><span·class="id"·title="variable">l2</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#permutation"><span·class="id"·title="definition">permutation</span></a>·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#l1:62"><span·class="id"·title="variable">l1</span></a>·<a·class="idref"·href="Coq.Sorting.PermutSetoid.html#l2:63"><span·class="id"·title="variable">l2</span></a>.<br/> |
208 | <br/> | 208 | <br/> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab334"></a><h1·class="section">List·permutations·as·a·composition·of·adjacent·transpositions</h1> |
50 | </div> | 50 | </div> |
51 | <div·class="code"> | 51 | <div·class="code"> |
52 | <br/> | 52 | <br/> |
53 | <br/> | 53 | <br/> |
Offset 58, 15 lines modified | Offset 58, 15 lines modified | ||
58 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Bool.Bool.html#"><span·class="id"·title="library">Bool</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#"><span·class="id"·title="library">BinPos</span></a>·<a·class="idref"·href="Coq.NArith.BinNat.html#"><span·class="id"·title="library">BinNat</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#"><span·class="id"·title="library">PeanoNat</span></a>·<a·class="idref"·href="Coq.NArith.Nnat.html#"><span·class="id"·title="library">Nnat</span></a>·<a·class="idref"·href="Coq.Strings.Byte.html#"><span·class="id"·title="library">Coq.Strings.Byte</span></a>.<br/> | 58 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Bool.Bool.html#"><span·class="id"·title="library">Bool</span></a>·<a·class="idref"·href="Coq.PArith.BinPos.html#"><span·class="id"·title="library">BinPos</span></a>·<a·class="idref"·href="Coq.NArith.BinNat.html#"><span·class="id"·title="library">BinNat</span></a>·<a·class="idref"·href="Coq.Arith.PeanoNat.html#"><span·class="id"·title="library">PeanoNat</span></a>·<a·class="idref"·href="Coq.NArith.Nnat.html#"><span·class="id"·title="library">Nnat</span></a>·<a·class="idref"·href="Coq.Strings.Byte.html#"><span·class="id"·title="library">Coq.Strings.Byte</span></a>.<br/> |
59 | <span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Notations.html#IfNotations"><span·class="id"·title="module">IfNotations</span></a>.<br/> | 59 | <span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Notations.html#IfNotations"><span·class="id"·title="module">IfNotations</span></a>.<br/> |
60 | <br/> | 60 | <br/> |
61 | </div> | 61 | </div> |
62 | <div·class="doc"> | 62 | <div·class="doc"> |
63 | <a·id="lab | 63 | <a·id="lab1147"></a><h1·class="section">Definition·of·ascii·characters</h1> |
64 | <div·class="paragraph">·</div> | 64 | <div·class="paragraph">·</div> |
65 | ·Definition·of·ascii·character·as·a·8·bits·constructor· | 65 | ·Definition·of·ascii·character·as·a·8·bits·constructor· |
66 | </div> | 66 | </div> |
67 | <div·class="code"> | 67 | <div·class="code"> |
Offset 138, 15 lines modified | Offset 138, 15 lines modified | ||
138 | <span·class="id"·title="keyword">Lemma</span>·<a·id="eqb_neq"·class="idref"·href="#eqb_neq"><span·class="id"·title="lemma">eqb_neq</span></a>·<a·id="x:19"·class="idref"·href="#x:19"><span·class="id"·title="binder">x</span></a>·<a·id="y:20"·class="idref"·href="#y:20"><span·class="id"·title="binder">y</span></a>·:·(<a·class="idref"·href="Coq.Strings.Ascii.html#x:19"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Strings.Ascii.html#c01d0cbde2bd1a5028600f3321bbcca8"><span·class="id"·title="notation">=?</span></a>·<a·class="idref"·href="Coq.Strings.Ascii.html#y:20"><span·class="id"·title="variable">y</span></a>)%<span·class="id"·title="var">char</span>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Strings.Ascii.html#x:19"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.Strings.Ascii.html#y:20"><span·class="id"·title="variable">y</span></a>.··<br/> | 138 | <span·class="id"·title="keyword">Lemma</span>·<a·id="eqb_neq"·class="idref"·href="#eqb_neq"><span·class="id"·title="lemma">eqb_neq</span></a>·<a·id="x:19"·class="idref"·href="#x:19"><span·class="id"·title="binder">x</span></a>·<a·id="y:20"·class="idref"·href="#y:20"><span·class="id"·title="binder">y</span></a>·:·(<a·class="idref"·href="Coq.Strings.Ascii.html#x:19"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Strings.Ascii.html#c01d0cbde2bd1a5028600f3321bbcca8"><span·class="id"·title="notation">=?</span></a>·<a·class="idref"·href="Coq.Strings.Ascii.html#y:20"><span·class="id"·title="variable">y</span></a>)%<span·class="id"·title="var">char</span>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Strings.Ascii.html#x:19"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.Strings.Ascii.html#y:20"><span·class="id"·title="variable">y</span></a>.··<br/> |
139 | <span·class="id"·title="keyword">Lemma</span>·<a·id="eqb_compat"·class="idref"·href="#eqb_compat"><span·class="id"·title="lemma">eqb_compat</span></a>:·<a·class="idref"·href="Coq.Classes.Morphisms.html#Proper"><span·class="id"·title="class">Morphisms.Proper</span></a>·(<a·class="idref"·href="Coq.Classes.Morphisms.html#respectful"><span·class="id"·title="definition">Morphisms.respectful</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#eq"><span·class="id"·title="inductive">eq</span></a>·(<a·class="idref"·href="Coq.Classes.Morphisms.html#respectful"><span·class="id"·title="definition">Morphisms.respectful</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#eq"><span·class="id"·title="inductive">eq</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#eq"><span·class="id"·title="inductive">eq</span></a>))·<a·class="idref"·href="Coq.Strings.Ascii.html#eqb"><span·class="id"·title="definition">eqb</span></a>.<br/> | 139 | <span·class="id"·title="keyword">Lemma</span>·<a·id="eqb_compat"·class="idref"·href="#eqb_compat"><span·class="id"·title="lemma">eqb_compat</span></a>:·<a·class="idref"·href="Coq.Classes.Morphisms.html#Proper"><span·class="id"·title="class">Morphisms.Proper</span></a>·(<a·class="idref"·href="Coq.Classes.Morphisms.html#respectful"><span·class="id"·title="definition">Morphisms.respectful</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#eq"><span·class="id"·title="inductive">eq</span></a>·(<a·class="idref"·href="Coq.Classes.Morphisms.html#respectful"><span·class="id"·title="definition">Morphisms.respectful</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#eq"><span·class="id"·title="inductive">eq</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#eq"><span·class="id"·title="inductive">eq</span></a>))·<a·class="idref"·href="Coq.Strings.Ascii.html#eqb"><span·class="id"·title="definition">eqb</span></a>.<br/> |
140 | · | 140 | · |
141 | <br/> | 141 | <br/> |
142 | </div> | 142 | </div> |
143 | <div·class="doc"> | 143 | <div·class="doc"> |
144 | <a·id="lab | 144 | <a·id="lab1148"></a><h1·class="section">Conversion·between·natural·numbers·modulo·256·and·ascii·characters</h1> |
145 | <div·class="paragraph">·</div> | 145 | <div·class="paragraph">·</div> |
146 | ·Auxiliary·function·that·turns·a·positive·into·an·ascii·by | 146 | ·Auxiliary·function·that·turns·a·positive·into·an·ascii·by |
147 | ···looking·at·the·last·8·bits,·ie·z·mod·2^8· | 147 | ···looking·at·the·last·8·bits,·ie·z·mod·2^8· |
148 | </div> | 148 | </div> |
149 | <div·class="code"> | 149 | <div·class="code"> |
Offset 280, 15 lines modified | Offset 280, 15 lines modified | ||
280 | <span·class="id"·title="keyword">Infix</span>·<a·id="a03efcf41b31b03a310bd4ab973892ea"·class="idref"·href="#a03efcf41b31b03a310bd4ab973892ea"><span·class="id"·title="notation">"</span></a><?"··:=·<a·class="idref"·href="Coq.Strings.Ascii.html#ltb"><span·class="id"·title="definition">ltb</span></a>·:·<span·class="id"·title="var">char_scope</span>.<br/> | 280 | <span·class="id"·title="keyword">Infix</span>·<a·id="a03efcf41b31b03a310bd4ab973892ea"·class="idref"·href="#a03efcf41b31b03a310bd4ab973892ea"><span·class="id"·title="notation">"</span></a><?"··:=·<a·class="idref"·href="Coq.Strings.Ascii.html#ltb"><span·class="id"·title="definition">ltb</span></a>·:·<span·class="id"·title="var">char_scope</span>.<br/> |
281 | <span·class="id"·title="keyword">Infix</span>·<a·id="f55772a1fdb9e6cfa8863e0bb3b80b46"·class="idref"·href="#f55772a1fdb9e6cfa8863e0bb3b80b46"><span·class="id"·title="notation">"</span></a><=?"·:=·<a·class="idref"·href="Coq.Strings.Ascii.html#leb"><span·class="id"·title="definition">leb</span></a>·:·<span·class="id"·title="var">char_scope</span>.<br/> | 281 | <span·class="id"·title="keyword">Infix</span>·<a·id="f55772a1fdb9e6cfa8863e0bb3b80b46"·class="idref"·href="#f55772a1fdb9e6cfa8863e0bb3b80b46"><span·class="id"·title="notation">"</span></a><=?"·:=·<a·class="idref"·href="Coq.Strings.Ascii.html#leb"><span·class="id"·title="definition">leb</span></a>·:·<span·class="id"·title="var">char_scope</span>.<br/> |
282 | <br/> | 282 | <br/> |
283 | </div> | 283 | </div> |
284 | <div·class="doc"> | 284 | <div·class="doc"> |
285 | <a·id="lab49 | 285 | <a·id="lab1149"></a><h1·class="section">Concrete·syntax</h1> |
286 | <div·class="paragraph">·</div> | 286 | <div·class="paragraph">·</div> |
287 | <div·class="paragraph">·</div> | 287 | <div·class="paragraph">·</div> |
288 | ··Ascii·characters·can·be·represented·in·scope·char_scope·as·follows: | 288 | ··Ascii·characters·can·be·represented·in·scope·char_scope·as·follows: |
Offset 124, 15 lines modified | Offset 124, 15 lines modified | ||
124 | <a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_Z"><span·class="id"·title="definition">to_Z</span></a>·(<span·class="id"·title="var">length</span>·<a·class="idref"·href="Coq.Strings.PString.html#s1:12"><span·class="id"·title="variable">s1</span></a>)·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_Z"><span·class="id"·title="definition">to_Z</span></a>·(<span·class="id"·title="var">length</span>·<a·class="idref"·href="Coq.Strings.PString.html#s2:13"><span·class="id"·title="variable">s2</span></a>)·<a·class="idref"·href="Coq.ZArith.BinInt.html#306329b0eca7a2b86c198702f594ad8e"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_Z"><span·class="id"·title="definition">to_Z</span></a>·<span·class="id"·title="var">max_length</span>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 124 | <a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_Z"><span·class="id"·title="definition">to_Z</span></a>·(<span·class="id"·title="var">length</span>·<a·class="idref"·href="Coq.Strings.PString.html#s1:12"><span·class="id"·title="variable">s1</span></a>)·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_Z"><span·class="id"·title="definition">to_Z</span></a>·(<span·class="id"·title="var">length</span>·<a·class="idref"·href="Coq.Strings.PString.html#s2:13"><span·class="id"·title="variable">s2</span></a>)·<a·class="idref"·href="Coq.ZArith.BinInt.html#306329b0eca7a2b86c198702f594ad8e"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_Z"><span·class="id"·title="definition">to_Z</span></a>·<span·class="id"·title="var">max_length</span>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
125 | <a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#to_list"><span·class="id"·title="definition">to_list</span></a>·(<span·class="id"·title="var">cat</span>·<a·class="idref"·href="Coq.Strings.PString.html#s1:12"><span·class="id"·title="variable">s1</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#s2:13"><span·class="id"·title="variable">s2</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#to_list"><span·class="id"·title="definition">to_list</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#s1:12"><span·class="id"·title="variable">s1</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#bc347c51eaf667706ae54503b26d52c6"><span·class="id"·title="notation">++</span></a>·<a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#to_list"><span·class="id"·title="definition">to_list</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#s2:13"><span·class="id"·title="variable">s2</span></a>.<br/> | 125 | <a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#to_list"><span·class="id"·title="definition">to_list</span></a>·(<span·class="id"·title="var">cat</span>·<a·class="idref"·href="Coq.Strings.PString.html#s1:12"><span·class="id"·title="variable">s1</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#s2:13"><span·class="id"·title="variable">s2</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#to_list"><span·class="id"·title="definition">to_list</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#s1:12"><span·class="id"·title="variable">s1</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#bc347c51eaf667706ae54503b26d52c6"><span·class="id"·title="notation">++</span></a>·<a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#to_list"><span·class="id"·title="definition">to_list</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#s2:13"><span·class="id"·title="variable">s2</span></a>.<br/> |
126 | <br/> | 126 | <br/> |
127 | </div> | 127 | </div> |
128 | <div·class="doc"> | 128 | <div·class="doc"> |
129 | <a·id="lab | 129 | <a·id="lab1150"></a><h1·class="section">Properties·of·string·length</h1> |
130 | </div> | 130 | </div> |
131 | <div·class="code"> | 131 | <div·class="code"> |
132 | <br/> | 132 | <br/> |
133 | <span·class="id"·title="keyword">Lemma</span>·<a·id="valid_length"·class="idref"·href="#valid_length"><span·class="id"·title="lemma">valid_length</span></a>·(<a·id="s:14"·class="idref"·href="#s:14"><span·class="id"·title="binder">s</span></a>·:·<span·class="id"·title="var">string</span>)·:<br/> | 133 | <span·class="id"·title="keyword">Lemma</span>·<a·id="valid_length"·class="idref"·href="#valid_length"><span·class="id"·title="lemma">valid_length</span></a>·(<a·id="s:14"·class="idref"·href="#s:14"><span·class="id"·title="binder">s</span></a>·:·<span·class="id"·title="var">string</span>)·:<br/> |
134 | <a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_Z"><span·class="id"·title="definition">to_Z</span></a>·(<span·class="id"·title="var">length</span>·<a·class="idref"·href="Coq.Strings.PString.html#s:14"><span·class="id"·title="variable">s</span></a>)·<a·class="idref"·href="Coq.ZArith.BinInt.html#306329b0eca7a2b86c198702f594ad8e"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_Z"><span·class="id"·title="definition">to_Z</span></a>·<span·class="id"·title="var">max_length</span>.<br/> | 134 | <a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_Z"><span·class="id"·title="definition">to_Z</span></a>·(<span·class="id"·title="var">length</span>·<a·class="idref"·href="Coq.Strings.PString.html#s:14"><span·class="id"·title="variable">s</span></a>)·<a·class="idref"·href="Coq.ZArith.BinInt.html#306329b0eca7a2b86c198702f594ad8e"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_Z"><span·class="id"·title="definition">to_Z</span></a>·<span·class="id"·title="var">max_length</span>.<br/> |
Offset 165, 15 lines modified | Offset 165, 15 lines modified | ||
165 | <a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_Z"><span·class="id"·title="definition">to_Z</span></a>·(<span·class="id"·title="var">length</span>·<a·class="idref"·href="Coq.Strings.PString.html#s1:24"><span·class="id"·title="variable">s1</span></a>)·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_Z"><span·class="id"·title="definition">to_Z</span></a>·(<span·class="id"·title="var">length</span>·<a·class="idref"·href="Coq.Strings.PString.html#s2:25"><span·class="id"·title="variable">s2</span></a>)·<a·class="idref"·href="Coq.ZArith.BinInt.html#306329b0eca7a2b86c198702f594ad8e"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_Z"><span·class="id"·title="definition">to_Z</span></a>·<span·class="id"·title="var">max_length</span>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 165 | <a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_Z"><span·class="id"·title="definition">to_Z</span></a>·(<span·class="id"·title="var">length</span>·<a·class="idref"·href="Coq.Strings.PString.html#s1:24"><span·class="id"·title="variable">s1</span></a>)·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_Z"><span·class="id"·title="definition">to_Z</span></a>·(<span·class="id"·title="var">length</span>·<a·class="idref"·href="Coq.Strings.PString.html#s2:25"><span·class="id"·title="variable">s2</span></a>)·<a·class="idref"·href="Coq.ZArith.BinInt.html#306329b0eca7a2b86c198702f594ad8e"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_Z"><span·class="id"·title="definition">to_Z</span></a>·<span·class="id"·title="var">max_length</span>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
166 | <span·class="id"·title="var">length</span>·(<span·class="id"·title="var">cat</span>·<a·class="idref"·href="Coq.Strings.PString.html#s1:24"><span·class="id"·title="variable">s1</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#s2:25"><span·class="id"·title="variable">s2</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·(<span·class="id"·title="var">length</span>·<a·class="idref"·href="Coq.Strings.PString.html#s1:24"><span·class="id"·title="variable">s1</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#148675259b0fe2bf16829f061c3d9d0a"><span·class="id"·title="notation">+</span></a>·<span·class="id"·title="var">length</span>·<a·class="idref"·href="Coq.Strings.PString.html#s2:25"><span·class="id"·title="variable">s2</span></a>)%<span·class="id"·title="var">uint63</span>.<br/> | 166 | <span·class="id"·title="var">length</span>·(<span·class="id"·title="var">cat</span>·<a·class="idref"·href="Coq.Strings.PString.html#s1:24"><span·class="id"·title="variable">s1</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#s2:25"><span·class="id"·title="variable">s2</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·(<span·class="id"·title="var">length</span>·<a·class="idref"·href="Coq.Strings.PString.html#s1:24"><span·class="id"·title="variable">s1</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#148675259b0fe2bf16829f061c3d9d0a"><span·class="id"·title="notation">+</span></a>·<span·class="id"·title="var">length</span>·<a·class="idref"·href="Coq.Strings.PString.html#s2:25"><span·class="id"·title="variable">s2</span></a>)%<span·class="id"·title="var">uint63</span>.<br/> |
167 | <br/> | 167 | <br/> |
168 | </div> | 168 | </div> |
169 | <div·class="doc"> | 169 | <div·class="doc"> |
170 | <a·id="lab | 170 | <a·id="lab1151"></a><h1·class="section">Properties·of·string·get</h1> |
171 | </div> | 171 | </div> |
172 | <div·class="code"> | 172 | <div·class="code"> |
173 | <br/> | 173 | <br/> |
174 | <span·class="id"·title="keyword">Lemma</span>·<a·id="get_char63_valid"·class="idref"·href="#get_char63_valid"><span·class="id"·title="lemma">get_char63_valid</span></a>·(<a·id="s:26"·class="idref"·href="#s:26"><span·class="id"·title="binder">s</span></a>·:·<span·class="id"·title="var">string</span>)·(<a·id="i:27"·class="idref"·href="#i:27"><span·class="id"·title="binder">i</span></a>·:·<span·class="id"·title="var">int</span>)·:<br/> | 174 | <span·class="id"·title="keyword">Lemma</span>·<a·id="get_char63_valid"·class="idref"·href="#get_char63_valid"><span·class="id"·title="lemma">get_char63_valid</span></a>·(<a·id="s:26"·class="idref"·href="#s:26"><span·class="id"·title="binder">s</span></a>·:·<span·class="id"·title="var">string</span>)·(<a·id="i:27"·class="idref"·href="#i:27"><span·class="id"·title="binder">i</span></a>·:·<span·class="id"·title="var">int</span>)·:<br/> |
175 | <a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#char63_valid"><span·class="id"·title="definition">char63_valid</span></a>·(<span·class="id"·title="var">get</span>·<a·class="idref"·href="Coq.Strings.PString.html#s:26"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#i:27"><span·class="id"·title="variable">i</span></a>).<br/> | 175 | <a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#char63_valid"><span·class="id"·title="definition">char63_valid</span></a>·(<span·class="id"·title="var">get</span>·<a·class="idref"·href="Coq.Strings.PString.html#s:26"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#i:27"><span·class="id"·title="variable">i</span></a>).<br/> |
Offset 208, 15 lines modified | Offset 208, 15 lines modified | ||
208 | <a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_Z"><span·class="id"·title="definition">to_Z</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#i:43"><span·class="id"·title="variable">i</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_Z"><span·class="id"·title="definition">to_Z</span></a>·<span·class="id"·title="var">max_length</span>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 208 | <a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_Z"><span·class="id"·title="definition">to_Z</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#i:43"><span·class="id"·title="variable">i</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_Z"><span·class="id"·title="definition">to_Z</span></a>·<span·class="id"·title="var">max_length</span>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
209 | <span·class="id"·title="var">get</span>·(<span·class="id"·title="var">cat</span>·<a·class="idref"·href="Coq.Strings.PString.html#s1:41"><span·class="id"·title="variable">s1</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#s2:42"><span·class="id"·title="variable">s2</span></a>)·<a·class="idref"·href="Coq.Strings.PString.html#i:43"><span·class="id"·title="variable">i</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<span·class="id"·title="var">get</span>·<a·class="idref"·href="Coq.Strings.PString.html#s2:42"><span·class="id"·title="variable">s2</span></a>·(<a·class="idref"·href="Coq.Strings.PString.html#i:43"><span·class="id"·title="variable">i</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#Uint63NotationsInternalB.::uint63_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<span·class="id"·title="var">length</span>·<a·class="idref"·href="Coq.Strings.PString.html#s1:41"><span·class="id"·title="variable">s1</span></a>).<br/> | 209 | <span·class="id"·title="var">get</span>·(<span·class="id"·title="var">cat</span>·<a·class="idref"·href="Coq.Strings.PString.html#s1:41"><span·class="id"·title="variable">s1</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#s2:42"><span·class="id"·title="variable">s2</span></a>)·<a·class="idref"·href="Coq.Strings.PString.html#i:43"><span·class="id"·title="variable">i</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<span·class="id"·title="var">get</span>·<a·class="idref"·href="Coq.Strings.PString.html#s2:42"><span·class="id"·title="variable">s2</span></a>·(<a·class="idref"·href="Coq.Strings.PString.html#i:43"><span·class="id"·title="variable">i</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#Uint63NotationsInternalB.::uint63_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<span·class="id"·title="var">length</span>·<a·class="idref"·href="Coq.Strings.PString.html#s1:41"><span·class="id"·title="variable">s1</span></a>).<br/> |
210 | <br/> | 210 | <br/> |
211 | </div> | 211 | </div> |
212 | <div·class="doc"> | 212 | <div·class="doc"> |
213 | <a·id="lab | 213 | <a·id="lab1152"></a><h1·class="section">Properties·of·string·comparison</h1> |
214 | </div> | 214 | </div> |
215 | <div·class="code"> | 215 | <div·class="code"> |
216 | <br/> | 216 | <br/> |
217 | <span·class="id"·title="keyword">Lemma</span>·<a·id="char63_compare_refl"·class="idref"·href="#char63_compare_refl"><span·class="id"·title="lemma">char63_compare_refl</span></a>·(<a·id="c1:44"·class="idref"·href="#c1:44"><span·class="id"·title="binder">c1</span></a>·<a·id="c2:45"·class="idref"·href="#c2:45"><span·class="id"·title="binder">c2</span></a>·:·<a·class="idref"·href="Coq.Strings.PrimString.html#char63"><span·class="id"·title="definition">char63</span></a>)·:<br/> | 217 | <span·class="id"·title="keyword">Lemma</span>·<a·id="char63_compare_refl"·class="idref"·href="#char63_compare_refl"><span·class="id"·title="lemma">char63_compare_refl</span></a>·(<a·id="c1:44"·class="idref"·href="#c1:44"><span·class="id"·title="binder">c1</span></a>·<a·id="c2:45"·class="idref"·href="#c2:45"><span·class="id"·title="binder">c2</span></a>·:·<a·class="idref"·href="Coq.Strings.PrimString.html#char63"><span·class="id"·title="definition">char63</span></a>)·:<br/> |
218 | <a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#char63_compare"><span·class="id"·title="abbreviation">char63_compare</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#c1:44"><span·class="id"·title="variable">c1</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#c2:45"><span·class="id"·title="variable">c2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#Eq"><span·class="id"·title="constructor">Eq</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Strings.PString.html#c1:44"><span·class="id"·title="variable">c1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#c2:45"><span·class="id"·title="variable">c2</span></a>.<br/> | 218 | <a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#char63_compare"><span·class="id"·title="abbreviation">char63_compare</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#c1:44"><span·class="id"·title="variable">c1</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#c2:45"><span·class="id"·title="variable">c2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#Eq"><span·class="id"·title="constructor">Eq</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Strings.PString.html#c1:44"><span·class="id"·title="variable">c1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#c2:45"><span·class="id"·title="variable">c2</span></a>.<br/> |
Offset 289, 27 lines modified | Offset 289, 27 lines modified | ||
289 | <a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_Z"><span·class="id"·title="definition">to_Z</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#i:81"><span·class="id"·title="variable">i</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_Z"><span·class="id"·title="definition">to_Z</span></a>·(<span·class="id"·title="var">length</span>·<a·class="idref"·href="Coq.Strings.PString.html#s2:80"><span·class="id"·title="variable">s2</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a><br/> | 289 | <a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_Z"><span·class="id"·title="definition">to_Z</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#i:81"><span·class="id"·title="variable">i</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_Z"><span·class="id"·title="definition">to_Z</span></a>·(<span·class="id"·title="var">length</span>·<a·class="idref"·href="Coq.Strings.PString.html#s2:80"><span·class="id"·title="variable">s2</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a><br/> |
290 | <a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#char63_compare"><span·class="id"·title="abbreviation">char63_compare</span></a>·(<span·class="id"·title="var">get</span>·<a·class="idref"·href="Coq.Strings.PString.html#s1:79"><span·class="id"·title="variable">s1</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#i:81"><span·class="id"·title="variable">i</span></a>)·(<span·class="id"·title="var">get</span>·<a·class="idref"·href="Coq.Strings.PString.html#s2:80"><span·class="id"·title="variable">s2</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#i:81"><span·class="id"·title="variable">i</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#Lt"><span·class="id"·title="constructor">Lt</span></a><a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">)</span></a><a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">)</span></a>.<br/> | 290 | <a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#char63_compare"><span·class="id"·title="abbreviation">char63_compare</span></a>·(<span·class="id"·title="var">get</span>·<a·class="idref"·href="Coq.Strings.PString.html#s1:79"><span·class="id"·title="variable">s1</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#i:81"><span·class="id"·title="variable">i</span></a>)·(<span·class="id"·title="var">get</span>·<a·class="idref"·href="Coq.Strings.PString.html#s2:80"><span·class="id"·title="variable">s2</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#i:81"><span·class="id"·title="variable">i</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#Lt"><span·class="id"·title="constructor">Lt</span></a><a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">)</span></a><a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">)</span></a>.<br/> |
291 | <br/> | 291 | <br/> |
292 | </div> | 292 | </div> |
293 | <div·class="doc"> | 293 | <div·class="doc"> |
294 | <a·id="lab | 294 | <a·id="lab1153"></a><h1·class="section">Properties·of·make</h1> |
295 | </div> | 295 | </div> |
296 | <div·class="code"> | 296 | <div·class="code"> |
297 | <br/> | 297 | <br/> |
298 | <span·class="id"·title="keyword">Lemma</span>·<a·id="make_0"·class="idref"·href="#make_0"><span·class="id"·title="lemma">make_0</span></a>·(<a·id="c:83"·class="idref"·href="#c:83"><span·class="id"·title="binder">c</span></a>·:·<a·class="idref"·href="Coq.Strings.PrimString.html#char63"><span·class="id"·title="definition">char63</span></a>)·:·<span·class="id"·title="var">make</span>·0·<a·class="idref"·href="Coq.Strings.PString.html#c:83"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·""%<span·class="id"·title="var">pstring</span>.<br/> | 298 | <span·class="id"·title="keyword">Lemma</span>·<a·id="make_0"·class="idref"·href="#make_0"><span·class="id"·title="lemma">make_0</span></a>·(<a·id="c:83"·class="idref"·href="#c:83"><span·class="id"·title="binder">c</span></a>·:·<a·class="idref"·href="Coq.Strings.PrimString.html#char63"><span·class="id"·title="definition">char63</span></a>)·:·<span·class="id"·title="var">make</span>·0·<a·class="idref"·href="Coq.Strings.PString.html#c:83"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·""%<span·class="id"·title="var">pstring</span>.<br/> |
299 | <br/> | 299 | <br/> |
300 | </div> | 300 | </div> |
301 | <div·class="doc"> | 301 | <div·class="doc"> |
302 | <a·id="lab | 302 | <a·id="lab1154"></a><h1·class="section">Properties·of·cat</h1> |
303 | </div> | 303 | </div> |
304 | <div·class="code"> | 304 | <div·class="code"> |
305 | <br/> | 305 | <br/> |
306 | <span·class="id"·title="keyword">Lemma</span>·<a·id="length_0_empty"·class="idref"·href="#length_0_empty"><span·class="id"·title="lemma">length_0_empty</span></a>·(<a·id="s:84"·class="idref"·href="#s:84"><span·class="id"·title="binder">s</span></a>·:·<span·class="id"·title="var">string</span>)·:·<span·class="id"·title="var">length</span>·<a·class="idref"·href="Coq.Strings.PString.html#s:84"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·0%<span·class="id"·title="var">uint63</span>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Strings.PString.html#s:84"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·""%<span·class="id"·title="var">pstring</span>.<br/> | 306 | <span·class="id"·title="keyword">Lemma</span>·<a·id="length_0_empty"·class="idref"·href="#length_0_empty"><span·class="id"·title="lemma">length_0_empty</span></a>·(<a·id="s:84"·class="idref"·href="#s:84"><span·class="id"·title="binder">s</span></a>·:·<span·class="id"·title="var">string</span>)·:·<span·class="id"·title="var">length</span>·<a·class="idref"·href="Coq.Strings.PString.html#s:84"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·0%<span·class="id"·title="var">uint63</span>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Strings.PString.html#s:84"><span·class="id"·title="variable">s</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·""%<span·class="id"·title="var">pstring</span>.<br/> |
Offset 323, 15 lines modified | Offset 323, 15 lines modified | ||
323 | <span·class="id"·title="keyword">Lemma</span>·<a·id="cat_assoc"·class="idref"·href="#cat_assoc"><span·class="id"·title="lemma">cat_assoc</span></a>·(<a·id="s1:87"·class="idref"·href="#s1:87"><span·class="id"·title="binder">s1</span></a>·<a·id="s2:88"·class="idref"·href="#s2:88"><span·class="id"·title="binder">s2</span></a>·<a·id="s3:89"·class="idref"·href="#s3:89"><span·class="id"·title="binder">s3</span></a>·:·<span·class="id"·title="var">string</span>)·:<br/> | 323 | <span·class="id"·title="keyword">Lemma</span>·<a·id="cat_assoc"·class="idref"·href="#cat_assoc"><span·class="id"·title="lemma">cat_assoc</span></a>·(<a·id="s1:87"·class="idref"·href="#s1:87"><span·class="id"·title="binder">s1</span></a>·<a·id="s2:88"·class="idref"·href="#s2:88"><span·class="id"·title="binder">s2</span></a>·<a·id="s3:89"·class="idref"·href="#s3:89"><span·class="id"·title="binder">s3</span></a>·:·<span·class="id"·title="var">string</span>)·:<br/> |
324 | <span·class="id"·title="var">cat</span>·(<span·class="id"·title="var">cat</span>·<a·class="idref"·href="Coq.Strings.PString.html#s1:87"><span·class="id"·title="variable">s1</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#s2:88"><span·class="id"·title="variable">s2</span></a>)·<a·class="idref"·href="Coq.Strings.PString.html#s3:89"><span·class="id"·title="variable">s3</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<span·class="id"·title="var">cat</span>·<a·class="idref"·href="Coq.Strings.PString.html#s1:87"><span·class="id"·title="variable">s1</span></a>·(<span·class="id"·title="var">cat</span>·<a·class="idref"·href="Coq.Strings.PString.html#s2:88"><span·class="id"·title="variable">s2</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#s3:89"><span·class="id"·title="variable">s3</span></a>).<br/> | 324 | <span·class="id"·title="var">cat</span>·(<span·class="id"·title="var">cat</span>·<a·class="idref"·href="Coq.Strings.PString.html#s1:87"><span·class="id"·title="variable">s1</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#s2:88"><span·class="id"·title="variable">s2</span></a>)·<a·class="idref"·href="Coq.Strings.PString.html#s3:89"><span·class="id"·title="variable">s3</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<span·class="id"·title="var">cat</span>·<a·class="idref"·href="Coq.Strings.PString.html#s1:87"><span·class="id"·title="variable">s1</span></a>·(<span·class="id"·title="var">cat</span>·<a·class="idref"·href="Coq.Strings.PString.html#s2:88"><span·class="id"·title="variable">s2</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#s3:89"><span·class="id"·title="variable">s3</span></a>).<br/> |
325 | <br/> | 325 | <br/> |
326 | </div> | 326 | </div> |
327 | <div·class="doc"> | 327 | <div·class="doc"> |
328 | <a·id="lab | 328 | <a·id="lab1155"></a><h1·class="section">Properties·of·sub</h1> |
329 | </div> | 329 | </div> |
330 | <div·class="code"> | 330 | <div·class="code"> |
331 | <br/> | 331 | <br/> |
332 | <span·class="id"·title="keyword">Lemma</span>·<a·id="sub_full"·class="idref"·href="#sub_full"><span·class="id"·title="lemma">sub_full</span></a>·(<a·id="s:90"·class="idref"·href="#s:90"><span·class="id"·title="binder">s</span></a>·:·<span·class="id"·title="var">string</span>)·:·<span·class="id"·title="var">sub</span>·<a·class="idref"·href="Coq.Strings.PString.html#s:90"><span·class="id"·title="variable">s</span></a>·0·(<span·class="id"·title="var">length</span>·<a·class="idref"·href="Coq.Strings.PString.html#s:90"><span·class="id"·title="variable">s</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#s:90"><span·class="id"·title="variable">s</span></a>.<br/> | 332 | <span·class="id"·title="keyword">Lemma</span>·<a·id="sub_full"·class="idref"·href="#sub_full"><span·class="id"·title="lemma">sub_full</span></a>·(<a·id="s:90"·class="idref"·href="#s:90"><span·class="id"·title="binder">s</span></a>·:·<span·class="id"·title="var">string</span>)·:·<span·class="id"·title="var">sub</span>·<a·class="idref"·href="Coq.Strings.PString.html#s:90"><span·class="id"·title="variable">s</span></a>·0·(<span·class="id"·title="var">length</span>·<a·class="idref"·href="Coq.Strings.PString.html#s:90"><span·class="id"·title="variable">s</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#s:90"><span·class="id"·title="variable">s</span></a>.<br/> |
Offset 371, 15 lines modified | Offset 371, 15 lines modified | ||
371 | (<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_Z"><span·class="id"·title="definition">to_Z</span></a>·(<span·class="id"·title="var">length</span>·<a·class="idref"·href="Coq.Strings.PString.html#s1:103"><span·class="id"·title="variable">s1</span></a>)·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_Z"><span·class="id"·title="definition">to_Z</span></a>·(<span·class="id"·title="var">length</span>·<a·class="idref"·href="Coq.Strings.PString.html#s2:104"><span·class="id"·title="variable">s2</span></a>)·<a·class="idref"·href="Coq.ZArith.BinInt.html#306329b0eca7a2b86c198702f594ad8e"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_Z"><span·class="id"·title="definition">to_Z</span></a>·<span·class="id"·title="var">max_length</span>)%<span·class="id"·title="var">Z</span>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 371 | (<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_Z"><span·class="id"·title="definition">to_Z</span></a>·(<span·class="id"·title="var">length</span>·<a·class="idref"·href="Coq.Strings.PString.html#s1:103"><span·class="id"·title="variable">s1</span></a>)·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_Z"><span·class="id"·title="definition">to_Z</span></a>·(<span·class="id"·title="var">length</span>·<a·class="idref"·href="Coq.Strings.PString.html#s2:104"><span·class="id"·title="variable">s2</span></a>)·<a·class="idref"·href="Coq.ZArith.BinInt.html#306329b0eca7a2b86c198702f594ad8e"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_Z"><span·class="id"·title="definition">to_Z</span></a>·<span·class="id"·title="var">max_length</span>)%<span·class="id"·title="var">Z</span>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
372 | <a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#to_list"><span·class="id"·title="definition">to_list</span></a>·(<span·class="id"·title="var">cat</span>·<a·class="idref"·href="Coq.Strings.PString.html#s1:103"><span·class="id"·title="variable">s1</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#s2:104"><span·class="id"·title="variable">s2</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#app"><span·class="id"·title="definition">app</span></a>·(<a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#to_list"><span·class="id"·title="definition">to_list</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#s1:103"><span·class="id"·title="variable">s1</span></a>)·(<a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#to_list"><span·class="id"·title="definition">to_list</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#s2:104"><span·class="id"·title="variable">s2</span></a>).<br/> | 372 | <a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#to_list"><span·class="id"·title="definition">to_list</span></a>·(<span·class="id"·title="var">cat</span>·<a·class="idref"·href="Coq.Strings.PString.html#s1:103"><span·class="id"·title="variable">s1</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#s2:104"><span·class="id"·title="variable">s2</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#app"><span·class="id"·title="definition">app</span></a>·(<a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#to_list"><span·class="id"·title="definition">to_list</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#s1:103"><span·class="id"·title="variable">s1</span></a>)·(<a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#to_list"><span·class="id"·title="definition">to_list</span></a>·<a·class="idref"·href="Coq.Strings.PString.html#s2:104"><span·class="id"·title="variable">s2</span></a>).<br/> |
373 | <br/> | 373 | <br/> |
374 | </div> | 374 | </div> |
375 | <div·class="doc"> | 375 | <div·class="doc"> |
376 | <a·id="lab | 376 | <a·id="lab1156"></a><h1·class="section">Ordered·type</h1> |
377 | </div> | 377 | </div> |
378 | <div·class="code"> | 378 | <div·class="code"> |
379 | <br/> | 379 | <br/> |
380 | <span·class="id"·title="keyword">Require</span>·<a·class="idref"·href="Coq.Structures.OrderedType.html#"><span·class="id"·title="library">OrderedType</span></a>.<br/> | 380 | <span·class="id"·title="keyword">Require</span>·<a·class="idref"·href="Coq.Structures.OrderedType.html#"><span·class="id"·title="library">OrderedType</span></a>.<br/> |
Offset 52, 15 lines modified | Offset 52, 15 lines modified | ||
52 | <span·class="id"·title="keyword">Definition</span>·<a·id="char63_valid"·class="idref"·href="#char63_valid"><span·class="id"·title="definition">char63_valid</span></a>·(<a·id="c:1"·class="idref"·href="#c:1"><span·class="id"·title="binder">c</span></a>·:·<a·class="idref"·href="Coq.Strings.PrimString.html#char63"><span·class="id"·title="definition">char63</span></a>)·:=<br/> | 52 | <span·class="id"·title="keyword">Definition</span>·<a·id="char63_valid"·class="idref"·href="#char63_valid"><span·class="id"·title="definition">char63_valid</span></a>·(<a·id="c:1"·class="idref"·href="#c:1"><span·class="id"·title="binder">c</span></a>·:·<a·class="idref"·href="Coq.Strings.PrimString.html#char63"><span·class="id"·title="definition">char63</span></a>)·:=<br/> |
53 | (<a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#c:1"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#Uint63NotationsInternalB.::uint63_scope:x_'land'_x"><span·class="id"·title="notation">land</span></a>·255·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#c:1"><span·class="id"·title="variable">c</span></a>)%<span·class="id"·title="var">uint63</span>.<br/> | 53 | (<a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#c:1"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#Uint63NotationsInternalB.::uint63_scope:x_'land'_x"><span·class="id"·title="notation">land</span></a>·255·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#c:1"><span·class="id"·title="variable">c</span></a>)%<span·class="id"·title="var">uint63</span>.<br/> |
54 | <br/> | 54 | <br/> |
55 | </div> | 55 | </div> |
56 | <div·class="doc"> | 56 | <div·class="doc"> |
57 | <a·id="lab | 57 | <a·id="lab1157"></a><h1·class="section">Conversion·to·/·from·lists</h1> |
58 | </div> | 58 | </div> |
59 | <div·class="code"> | 59 | <div·class="code"> |
60 | <br/> | 60 | <br/> |
61 | <span·class="id"·title="keyword">Definition</span>·<a·id="to_list"·class="idref"·href="#to_list"><span·class="id"·title="definition">to_list</span></a>·(<a·id="s:2"·class="idref"·href="#s:2"><span·class="id"·title="binder">s</span></a>·:·<span·class="id"·title="var">string</span>)·:·<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Strings.PrimString.html#char63"><span·class="id"·title="definition">char63</span></a>·:=<br/> | 61 | <span·class="id"·title="keyword">Definition</span>·<a·id="to_list"·class="idref"·href="#to_list"><span·class="id"·title="definition">to_list</span></a>·(<a·id="s:2"·class="idref"·href="#s:2"><span·class="id"·title="binder">s</span></a>·:·<span·class="id"·title="var">string</span>)·:·<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Strings.PrimString.html#char63"><span·class="id"·title="definition">char63</span></a>·:=<br/> |
62 | <a·class="idref"·href="Coq.Lists.List.html#map"><span·class="id"·title="definition">List.map</span></a>·(<span·class="id"·title="keyword">fun</span>·<a·id="i:3"·class="idref"·href="#i:3"><span·class="id"·title="binder">i</span></a>·=>·<span·class="id"·title="var">get</span>·<a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#s:2"><span·class="id"·title="variable">s</span></a>·(<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#of_nat"><span·class="id"·title="abbreviation">of_nat</span></a>·<a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#i:3"><span·class="id"·title="variable">i</span></a>))·(<a·class="idref"·href="Coq.Lists.List.html#seq"><span·class="id"·title="definition">List.seq</span></a>·0·(<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_nat"><span·class="id"·title="abbreviation">to_nat</span></a>·(<span·class="id"·title="var">length</span>·<a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#s:2"><span·class="id"·title="variable">s</span></a>))).<br/> | 62 | <a·class="idref"·href="Coq.Lists.List.html#map"><span·class="id"·title="definition">List.map</span></a>·(<span·class="id"·title="keyword">fun</span>·<a·id="i:3"·class="idref"·href="#i:3"><span·class="id"·title="binder">i</span></a>·=>·<span·class="id"·title="var">get</span>·<a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#s:2"><span·class="id"·title="variable">s</span></a>·(<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#of_nat"><span·class="id"·title="abbreviation">of_nat</span></a>·<a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#i:3"><span·class="id"·title="variable">i</span></a>))·(<a·class="idref"·href="Coq.Lists.List.html#seq"><span·class="id"·title="definition">List.seq</span></a>·0·(<a·class="idref"·href="Coq.Numbers.Cyclic.Int63.Uint63.html#to_nat"><span·class="id"·title="abbreviation">to_nat</span></a>·(<span·class="id"·title="var">length</span>·<a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#s:2"><span·class="id"·title="variable">s</span></a>))).<br/> |
Offset 87, 15 lines modified | Offset 87, 15 lines modified | ||
87 | <span·class="id"·title="keyword">forall</span>·(<a·id="s:13"·class="idref"·href="#s:13"><span·class="id"·title="binder">s</span></a>·:·<span·class="id"·title="var">string</span>),<br/> | 87 | <span·class="id"·title="keyword">forall</span>·(<a·id="s:13"·class="idref"·href="#s:13"><span·class="id"·title="binder">s</span></a>·:·<span·class="id"·title="var">string</span>),<br/> |
88 | <a·class="idref"·href="Coq.Lists.List.html#Forall"><span·class="id"·title="inductive">List.Forall</span></a>·<a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#char63_valid"><span·class="id"·title="definition">char63_valid</span></a>·(<a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#to_list"><span·class="id"·title="definition">to_list</span></a>·<a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#s:13"><span·class="id"·title="variable">s</span></a>).<br/> | 88 | <a·class="idref"·href="Coq.Lists.List.html#Forall"><span·class="id"·title="inductive">List.Forall</span></a>·<a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#char63_valid"><span·class="id"·title="definition">char63_valid</span></a>·(<a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#to_list"><span·class="id"·title="definition">to_list</span></a>·<a·class="idref"·href="Coq.Strings.PrimStringAxioms.html#s:13"><span·class="id"·title="variable">s</span></a>).<br/> |
89 | <br/> | 89 | <br/> |
90 | </div> | 90 | </div> |
91 | <div·class="doc"> | 91 | <div·class="doc"> |
92 | <a·id="lab | 92 | <a·id="lab1158"></a><h1·class="section">Axioms·relating·string·operations·with·list·operations</h1> |
93 | </div> | 93 | </div> |
94 | <div·class="code"> | 94 | <div·class="code"> |
95 | <br/> | 95 | <br/> |
96 | <span·class="id"·title="keyword">Axiom</span>·<a·id="length_spec"·class="idref"·href="#length_spec"><span·class="id"·title="axiom">length_spec</span></a>·:<br/> | 96 | <span·class="id"·title="keyword">Axiom</span>·<a·id="length_spec"·class="idref"·href="#length_spec"><span·class="id"·title="axiom">length_spec</span></a>·:<br/> |
97 | <span·class="id"·title="keyword">forall</span>·(<a·id="s:16"·class="idref"·href="#s:16"><span·class="id"·title="binder">s</span></a>·:·<span·class="id"·title="var">string</span>),<br/> | 97 | <span·class="id"·title="keyword">forall</span>·(<a·id="s:16"·class="idref"·href="#s:16"><span·class="id"·title="binder">s</span></a>·:·<span·class="id"·title="var">string</span>),<br/> |
Offset 61, 15 lines modified | Offset 61, 15 lines modified | ||
61 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Strings.Byte.html#"><span·class="id"·title="library">Coq.Strings.Byte</span></a>.<br/> | 61 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Strings.Byte.html#"><span·class="id"·title="library">Coq.Strings.Byte</span></a>.<br/> |
62 | <span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Notations.html#IfNotations"><span·class="id"·title="module">IfNotations</span></a>.<br/> | 62 | <span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Init.Notations.html#IfNotations"><span·class="id"·title="module">IfNotations</span></a>.<br/> |
63 | <br/> | 63 | <br/> |
64 | </div> | 64 | </div> |
65 | <div·class="doc"> | 65 | <div·class="doc"> |
66 | <a·id="lab | 66 | <a·id="lab1159"></a><h3·class="section">Definition·of·strings</h3> |
67 | <div·class="paragraph">·</div> | 67 | <div·class="paragraph">·</div> |
68 | ·Implementation·of·string·as·list·of·ascii·characters· | 68 | ·Implementation·of·string·as·list·of·ascii·characters· |
69 | </div> | 69 | </div> |
70 | <div·class="code"> | 70 | <div·class="code"> |
Offset 132, 15 lines modified | Offset 132, 15 lines modified | ||
132 | <span·class="id"·title="keyword">Lemma</span>·<a·id="eqb_neq"·class="idref"·href="#eqb_neq"><span·class="id"·title="lemma">eqb_neq</span></a>·<a·id="x:17"·class="idref"·href="#x:17"><span·class="id"·title="binder">x</span></a>·<a·id="y:18"·class="idref"·href="#y:18"><span·class="id"·title="binder">y</span></a>·:·(<a·class="idref"·href="Coq.Strings.String.html#x:17"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Strings.String.html#5886275aa8d678ebe8bc38ad41c652c0"><span·class="id"·title="notation">=?</span></a>·<a·class="idref"·href="Coq.Strings.String.html#y:18"><span·class="id"·title="variable">y</span></a>)%<span·class="id"·title="var">string</span>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Strings.String.html#x:17"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.Strings.String.html#y:18"><span·class="id"·title="variable">y</span></a>.··<br/> | 132 | <span·class="id"·title="keyword">Lemma</span>·<a·id="eqb_neq"·class="idref"·href="#eqb_neq"><span·class="id"·title="lemma">eqb_neq</span></a>·<a·id="x:17"·class="idref"·href="#x:17"><span·class="id"·title="binder">x</span></a>·<a·id="y:18"·class="idref"·href="#y:18"><span·class="id"·title="binder">y</span></a>·:·(<a·class="idref"·href="Coq.Strings.String.html#x:17"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Strings.String.html#5886275aa8d678ebe8bc38ad41c652c0"><span·class="id"·title="notation">=?</span></a>·<a·class="idref"·href="Coq.Strings.String.html#y:18"><span·class="id"·title="variable">y</span></a>)%<span·class="id"·title="var">string</span>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Strings.String.html#x:17"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.Strings.String.html#y:18"><span·class="id"·title="variable">y</span></a>.··<br/> |
133 | <span·class="id"·title="keyword">Lemma</span>·<a·id="eqb_compat"·class="idref"·href="#eqb_compat"><span·class="id"·title="lemma">eqb_compat</span></a>:·<a·class="idref"·href="Coq.Classes.Morphisms.html#Proper"><span·class="id"·title="class">Morphisms.Proper</span></a>·(<a·class="idref"·href="Coq.Classes.Morphisms.html#respectful"><span·class="id"·title="definition">Morphisms.respectful</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#eq"><span·class="id"·title="inductive">eq</span></a>·(<a·class="idref"·href="Coq.Classes.Morphisms.html#respectful"><span·class="id"·title="definition">Morphisms.respectful</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#eq"><span·class="id"·title="inductive">eq</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#eq"><span·class="id"·title="inductive">eq</span></a>))·<a·class="idref"·href="Coq.Strings.String.html#eqb"><span·class="id"·title="definition">eqb</span></a>.<br/> | 133 | <span·class="id"·title="keyword">Lemma</span>·<a·id="eqb_compat"·class="idref"·href="#eqb_compat"><span·class="id"·title="lemma">eqb_compat</span></a>:·<a·class="idref"·href="Coq.Classes.Morphisms.html#Proper"><span·class="id"·title="class">Morphisms.Proper</span></a>·(<a·class="idref"·href="Coq.Classes.Morphisms.html#respectful"><span·class="id"·title="definition">Morphisms.respectful</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#eq"><span·class="id"·title="inductive">eq</span></a>·(<a·class="idref"·href="Coq.Classes.Morphisms.html#respectful"><span·class="id"·title="definition">Morphisms.respectful</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#eq"><span·class="id"·title="inductive">eq</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#eq"><span·class="id"·title="inductive">eq</span></a>))·<a·class="idref"·href="Coq.Strings.String.html#eqb"><span·class="id"·title="definition">eqb</span></a>.<br/> |
134 | · | 134 | · |
135 | <br/> | 135 | <br/> |
136 | </div> | 136 | </div> |
137 | <div·class="doc"> | 137 | <div·class="doc"> |
138 | <a·id="lab | 138 | <a·id="lab1160"></a><h3·class="section">Compare·strings·lexicographically</h3> |
139 | </div> | 139 | </div> |
140 | <div·class="code"> | 140 | <div·class="code"> |
141 | <br/> | 141 | <br/> |
142 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="compare"·class="idref"·href="#compare"><span·class="id"·title="definition">compare</span></a>·(<a·id="s1:19"·class="idref"·href="#s1:19"><span·class="id"·title="binder">s1</span></a>·<a·id="s2:20"·class="idref"·href="#s2:20"><span·class="id"·title="binder">s2</span></a>·:·<a·class="idref"·href="Coq.Strings.String.html#string"><span·class="id"·title="inductive">string</span></a>)·:·<a·class="idref"·href="Coq.Init.Datatypes.html#comparison"><span·class="id"·title="inductive">comparison</span></a>·:=<br/> | 142 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="compare"·class="idref"·href="#compare"><span·class="id"·title="definition">compare</span></a>·(<a·id="s1:19"·class="idref"·href="#s1:19"><span·class="id"·title="binder">s1</span></a>·<a·id="s2:20"·class="idref"·href="#s2:20"><span·class="id"·title="binder">s2</span></a>·:·<a·class="idref"·href="Coq.Strings.String.html#string"><span·class="id"·title="inductive">string</span></a>)·:·<a·class="idref"·href="Coq.Init.Datatypes.html#comparison"><span·class="id"·title="inductive">comparison</span></a>·:=<br/> |
143 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Strings.String.html#s1:19"><span·class="id"·title="variable">s1</span></a>,·<a·class="idref"·href="Coq.Strings.String.html#s2:20"><span·class="id"·title="variable">s2</span></a>·<span·class="id"·title="keyword">with</span><br/> | 143 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Strings.String.html#s1:19"><span·class="id"·title="variable">s1</span></a>,·<a·class="idref"·href="Coq.Strings.String.html#s2:20"><span·class="id"·title="variable">s2</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 182, 15 lines modified | Offset 182, 15 lines modified | ||
182 | <span·class="id"·title="keyword">Infix</span>·<a·id="87601238f1eaf090ffe62946ced339ba"·class="idref"·href="#87601238f1eaf090ffe62946ced339ba"><span·class="id"·title="notation">"</span></a><?"··:=·<a·class="idref"·href="Coq.Strings.String.html#ltb"><span·class="id"·title="definition">ltb</span></a>·····:·<span·class="id"·title="var">string_scope</span>.<br/> | 182 | <span·class="id"·title="keyword">Infix</span>·<a·id="87601238f1eaf090ffe62946ced339ba"·class="idref"·href="#87601238f1eaf090ffe62946ced339ba"><span·class="id"·title="notation">"</span></a><?"··:=·<a·class="idref"·href="Coq.Strings.String.html#ltb"><span·class="id"·title="definition">ltb</span></a>·····:·<span·class="id"·title="var">string_scope</span>.<br/> |
183 | <span·class="id"·title="keyword">Infix</span>·<a·id="942750b36f058c78253954f4d17e5eee"·class="idref"·href="#942750b36f058c78253954f4d17e5eee"><span·class="id"·title="notation">"</span></a><=?"·:=·<a·class="idref"·href="Coq.Strings.String.html#leb"><span·class="id"·title="definition">leb</span></a>·····:·<span·class="id"·title="var">string_scope</span>.<br/> | 183 | <span·class="id"·title="keyword">Infix</span>·<a·id="942750b36f058c78253954f4d17e5eee"·class="idref"·href="#942750b36f058c78253954f4d17e5eee"><span·class="id"·title="notation">"</span></a><=?"·:=·<a·class="idref"·href="Coq.Strings.String.html#leb"><span·class="id"·title="definition">leb</span></a>·····:·<span·class="id"·title="var">string_scope</span>.<br/> |
184 | <br/> | 184 | <br/> |
185 | </div> | 185 | </div> |
186 | <div·class="doc"> | 186 | <div·class="doc"> |
187 | <a·id="lab | 187 | <a·id="lab1161"></a><h3·class="section">Concatenation·of·strings</h3> |
188 | </div> | 188 | </div> |
189 | <div·class="code"> | 189 | <div·class="code"> |
190 | <br/> | 190 | <br/> |
191 | <span·class="id"·title="keyword">Reserved·Notation</span>·"x·++·y"·(<span·class="id"·title="tactic">right</span>·<span·class="id"·title="keyword">associativity</span>,·<span·class="id"·title="tactic">at</span>·<span·class="id"·title="keyword">level</span>·60).<br/> | 191 | <span·class="id"·title="keyword">Reserved·Notation</span>·"x·++·y"·(<span·class="id"·title="tactic">right</span>·<span·class="id"·title="keyword">associativity</span>,·<span·class="id"·title="tactic">at</span>·<span·class="id"·title="keyword">level</span>·60).<br/> |
Offset 273, 15 lines modified | Offset 273, 15 lines modified | ||
273 | <span·class="id"·title="keyword">forall</span>·(<a·id="s1:56"·class="idref"·href="#s1:56"><span·class="id"·title="binder">s1</span></a>·<a·id="s2:57"·class="idref"·href="#s2:57"><span·class="id"·title="binder">s2</span></a>·:·<a·class="idref"·href="Coq.Strings.String.html#string"><span·class="id"·title="inductive">string</span></a>)·(<a·id="n:58"·class="idref"·href="#n:58"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>),<br/> | 273 | <span·class="id"·title="keyword">forall</span>·(<a·id="s1:56"·class="idref"·href="#s1:56"><span·class="id"·title="binder">s1</span></a>·<a·id="s2:57"·class="idref"·href="#s2:57"><span·class="id"·title="binder">s2</span></a>·:·<a·class="idref"·href="Coq.Strings.String.html#string"><span·class="id"·title="inductive">string</span></a>)·(<a·id="n:58"·class="idref"·href="#n:58"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>),<br/> |
274 | <a·class="idref"·href="Coq.Strings.String.html#get"><span·class="id"·title="definition">get</span></a>·<a·class="idref"·href="Coq.Strings.String.html#n:58"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Strings.String.html#s2:57"><span·class="id"·title="variable">s2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Strings.String.html#get"><span·class="id"·title="definition">get</span></a>·(<a·class="idref"·href="Coq.Strings.String.html#n:58"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Peano.html#0dacc1786c5ba797d47dd85006231633"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Strings.String.html#length"><span·class="id"·title="definition">length</span></a>·<a·class="idref"·href="Coq.Strings.String.html#s1:56"><span·class="id"·title="variable">s1</span></a>)·(<a·class="idref"·href="Coq.Strings.String.html#s1:56"><span·class="id"·title="variable">s1</span></a>·<a·class="idref"·href="Coq.Strings.String.html#169ad156fbc6036a53a0338819a2b301"><span·class="id"·title="notation">++</span></a>·<a·class="idref"·href="Coq.Strings.String.html#s2:57"><span·class="id"·title="variable">s2</span></a>).<br/> | 274 | <a·class="idref"·href="Coq.Strings.String.html#get"><span·class="id"·title="definition">get</span></a>·<a·class="idref"·href="Coq.Strings.String.html#n:58"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Strings.String.html#s2:57"><span·class="id"·title="variable">s2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Strings.String.html#get"><span·class="id"·title="definition">get</span></a>·(<a·class="idref"·href="Coq.Strings.String.html#n:58"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Peano.html#0dacc1786c5ba797d47dd85006231633"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Strings.String.html#length"><span·class="id"·title="definition">length</span></a>·<a·class="idref"·href="Coq.Strings.String.html#s1:56"><span·class="id"·title="variable">s1</span></a>)·(<a·class="idref"·href="Coq.Strings.String.html#s1:56"><span·class="id"·title="variable">s1</span></a>·<a·class="idref"·href="Coq.Strings.String.html#169ad156fbc6036a53a0338819a2b301"><span·class="id"·title="notation">++</span></a>·<a·class="idref"·href="Coq.Strings.String.html#s2:57"><span·class="id"·title="variable">s2</span></a>).<br/> |
275 | <br/> | 275 | <br/> |
276 | </div> | 276 | </div> |
277 | <div·class="doc"> | 277 | <div·class="doc"> |
278 | <a·id="lab | 278 | <a·id="lab1162"></a><h3·class="section">Substrings</h3> |
279 | <div·class="paragraph">·</div> | 279 | <div·class="paragraph">·</div> |
280 | ·<span·class="inlinecode"><span·class="id"·title="var">substring</span></span>·<span·class="inlinecode"><span·class="id"·title="var">n</span></span>·<span·class="inlinecode"><span·class="id"·title="var">m</span></span>·<span·class="inlinecode"><span·class="id"·title="var">s</span></span>·returns·the·substring·of·<span·class="inlinecode"><span·class="id"·title="var">s</span></span>·that·starts | 280 | ·<span·class="inlinecode"><span·class="id"·title="var">substring</span></span>·<span·class="inlinecode"><span·class="id"·title="var">n</span></span>·<span·class="inlinecode"><span·class="id"·title="var">m</span></span>·<span·class="inlinecode"><span·class="id"·title="var">s</span></span>·returns·the·substring·of·<span·class="inlinecode"><span·class="id"·title="var">s</span></span>·that·starts |
281 | ····at·position·<span·class="inlinecode"><span·class="id"·title="var">n</span></span>·and·of·length·<span·class="inlinecode"><span·class="id"·title="var">m</span></span>; | 281 | ····at·position·<span·class="inlinecode"><span·class="id"·title="var">n</span></span>·and·of·length·<span·class="inlinecode"><span·class="id"·title="var">m</span></span>; |
282 | ····if·this·does·not·make·sense·it·returns·<span·class="inlinecode">""</span>· | 282 | ····if·this·does·not·make·sense·it·returns·<span·class="inlinecode">""</span>· |
283 | </div> | 283 | </div> |
Offset 322, 15 lines modified | Offset 322, 15 lines modified | ||
322 | <span·class="id"·title="keyword">Theorem</span>·<a·id="substring_correct2"·class="idref"·href="#substring_correct2"><span·class="id"·title="lemma">substring_correct2</span></a>·:<br/> | 322 | <span·class="id"·title="keyword">Theorem</span>·<a·id="substring_correct2"·class="idref"·href="#substring_correct2"><span·class="id"·title="lemma">substring_correct2</span></a>·:<br/> |
323 | <span·class="id"·title="keyword">forall</span>·(<a·id="s:70"·class="idref"·href="#s:70"><span·class="id"·title="binder">s</span></a>·:·<a·class="idref"·href="Coq.Strings.String.html#string"><span·class="id"·title="inductive">string</span></a>)·(<a·id="n:71"·class="idref"·href="#n:71"><span·class="id"·title="binder">n</span></a>·<a·id="m:72"·class="idref"·href="#m:72"><span·class="id"·title="binder">m</span></a>·<a·id="p:73"·class="idref"·href="#p:73"><span·class="id"·title="binder">p</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>),·<a·class="idref"·href="Coq.Strings.String.html#m:72"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Peano.html#cb53cf0ee22c036a03b4a9281c68b5a3"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Strings.String.html#p:73"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Strings.String.html#get"><span·class="id"·title="definition">get</span></a>·<a·class="idref"·href="Coq.Strings.String.html#p:73"><span·class="id"·title="variable">p</span></a>·(<a·class="idref"·href="Coq.Strings.String.html#substring"><span·class="id"·title="definition">substring</span></a>·<a·class="idref"·href="Coq.Strings.String.html#n:71"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Strings.String.html#m:72"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Strings.String.html#s:70"><span·class="id"·title="variable">s</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#None"><span·class="id"·title="constructor">None</span></a>.<br/> | 323 | <span·class="id"·title="keyword">forall</span>·(<a·id="s:70"·class="idref"·href="#s:70"><span·class="id"·title="binder">s</span></a>·:·<a·class="idref"·href="Coq.Strings.String.html#string"><span·class="id"·title="inductive">string</span></a>)·(<a·id="n:71"·class="idref"·href="#n:71"><span·class="id"·title="binder">n</span></a>·<a·id="m:72"·class="idref"·href="#m:72"><span·class="id"·title="binder">m</span></a>·<a·id="p:73"·class="idref"·href="#p:73"><span·class="id"·title="binder">p</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>),·<a·class="idref"·href="Coq.Strings.String.html#m:72"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Peano.html#cb53cf0ee22c036a03b4a9281c68b5a3"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Strings.String.html#p:73"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Strings.String.html#get"><span·class="id"·title="definition">get</span></a>·<a·class="idref"·href="Coq.Strings.String.html#p:73"><span·class="id"·title="variable">p</span></a>·(<a·class="idref"·href="Coq.Strings.String.html#substring"><span·class="id"·title="definition">substring</span></a>·<a·class="idref"·href="Coq.Strings.String.html#n:71"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Strings.String.html#m:72"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Strings.String.html#s:70"><span·class="id"·title="variable">s</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#None"><span·class="id"·title="constructor">None</span></a>.<br/> |
324 | <br/> | 324 | <br/> |
325 | </div> | 325 | </div> |
326 | <div·class="doc"> | 326 | <div·class="doc"> |
327 | <a·id="lab | 327 | <a·id="lab1163"></a><h3·class="section">Concatenating·lists·of·strings</h3> |
328 | <div·class="paragraph">·</div> | 328 | <div·class="paragraph">·</div> |
329 | ·<span·class="inlinecode"><span·class="id"·title="var">concat</span></span>·<span·class="inlinecode"><span·class="id"·title="var">sep</span></span>·<span·class="inlinecode"><span·class="id"·title="var">sl</span></span>·concatenates·the·list·of·strings·<span·class="inlinecode"><span·class="id"·title="var">sl</span></span>,·inserting | 329 | ·<span·class="inlinecode"><span·class="id"·title="var">concat</span></span>·<span·class="inlinecode"><span·class="id"·title="var">sep</span></span>·<span·class="inlinecode"><span·class="id"·title="var">sl</span></span>·concatenates·the·list·of·strings·<span·class="inlinecode"><span·class="id"·title="var">sl</span></span>,·inserting |
330 | ····the·separator·string·<span·class="inlinecode"><span·class="id"·title="var">sep</span></span>·between·each.· | 330 | ····the·separator·string·<span·class="inlinecode"><span·class="id"·title="var">sep</span></span>·between·each.· |
331 | </div> | 331 | </div> |
332 | <div·class="code"> | 332 | <div·class="code"> |
Offset 343, 15 lines modified | Offset 343, 15 lines modified | ||
343 | |·<a·class="idref"·href="Coq.Init.Datatypes.html#cons"><span·class="id"·title="constructor">cons</span></a>·<span·class="id"·title="var">x</span>·<span·class="id"·title="var">xs</span>·=>·<span·class="id"·title="var">x</span>·<a·class="idref"·href="Coq.Strings.String.html#169ad156fbc6036a53a0338819a2b301"><span·class="id"·title="notation">++</span></a>·<a·class="idref"·href="Coq.Strings.String.html#sep:74"><span·class="id"·title="variable">sep</span></a>·<a·class="idref"·href="Coq.Strings.String.html#169ad156fbc6036a53a0338819a2b301"><span·class="id"·title="notation">++</span></a>·<a·class="idref"·href="Coq.Strings.String.html#concat:76"><span·class="id"·title="definition">concat</span></a>·<a·class="idref"·href="Coq.Strings.String.html#sep:74"><span·class="id"·title="variable">sep</span></a>·<span·class="id"·title="var">xs</span><br/> | 343 | |·<a·class="idref"·href="Coq.Init.Datatypes.html#cons"><span·class="id"·title="constructor">cons</span></a>·<span·class="id"·title="var">x</span>·<span·class="id"·title="var">xs</span>·=>·<span·class="id"·title="var">x</span>·<a·class="idref"·href="Coq.Strings.String.html#169ad156fbc6036a53a0338819a2b301"><span·class="id"·title="notation">++</span></a>·<a·class="idref"·href="Coq.Strings.String.html#sep:74"><span·class="id"·title="variable">sep</span></a>·<a·class="idref"·href="Coq.Strings.String.html#169ad156fbc6036a53a0338819a2b301"><span·class="id"·title="notation">++</span></a>·<a·class="idref"·href="Coq.Strings.String.html#concat:76"><span·class="id"·title="definition">concat</span></a>·<a·class="idref"·href="Coq.Strings.String.html#sep:74"><span·class="id"·title="variable">sep</span></a>·<span·class="id"·title="var">xs</span><br/> |
344 | <span·class="id"·title="keyword">end</span>.<br/> | 344 | <span·class="id"·title="keyword">end</span>.<br/> |
345 | <br/> | 345 | <br/> |
346 | </div> | 346 | </div> |
347 | <div·class="doc"> | 347 | <div·class="doc"> |
348 | <a·id="lab | 348 | <a·id="lab1164"></a><h3·class="section">Test·functions</h3> |
349 | <div·class="paragraph">·</div> | 349 | <div·class="paragraph">·</div> |
350 | ·Test·if·<span·class="inlinecode"><span·class="id"·title="var">s1</span></span>·is·a·prefix·of·<span·class="inlinecode"><span·class="id"·title="var">s2</span></span>· | 350 | ·Test·if·<span·class="inlinecode"><span·class="id"·title="var">s1</span></span>·is·a·prefix·of·<span·class="inlinecode"><span·class="id"·title="var">s2</span></span>· |
351 | </div> | 351 | </div> |
352 | <div·class="code"> | 352 | <div·class="code"> |
Offset 495, 15 lines modified | Offset 495, 15 lines modified | ||
495 | |·<a·class="idref"·href="Coq.Init.Datatypes.html#None"><span·class="id"·title="constructor">None</span></a>·=>·<a·class="idref"·href="Coq.Init.Datatypes.html#O"><span·class="id"·title="constructor">O</span></a><br/> | 495 | |·<a·class="idref"·href="Coq.Init.Datatypes.html#None"><span·class="id"·title="constructor">None</span></a>·=>·<a·class="idref"·href="Coq.Init.Datatypes.html#O"><span·class="id"·title="constructor">O</span></a><br/> |
496 | <span·class="id"·title="keyword">end</span>.<br/> | 496 | <span·class="id"·title="keyword">end</span>.<br/> |
497 | <br/> | 497 | <br/> |
498 | </div> | 498 | </div> |
499 | <div·class="doc"> | 499 | <div·class="doc"> |
500 | <a·id="lab | 500 | <a·id="lab1165"></a><h3·class="section">Conversion·to/from·<span·class="inlinecode"><span·class="id"·title="var">list</span></span>·<span·class="inlinecode"><span·class="id"·title="var">ascii</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">list</span></span>·<span·class="inlinecode"><span·class="id"·title="var">byte</span></span></h3> |
501 | </div> | 501 | </div> |
502 | <div·class="code"> | 502 | <div·class="code"> |
503 | <br/> | 503 | <br/> |
504 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="string_of_list_ascii"·class="idref"·href="#string_of_list_ascii"><span·class="id"·title="definition">string_of_list_ascii</span></a>·(<a·id="s:110"·class="idref"·href="#s:110"><span·class="id"·title="binder">s</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Strings.Ascii.html#ascii"><span·class="id"·title="inductive">ascii</span></a>)·:·<a·class="idref"·href="Coq.Strings.String.html#string"><span·class="id"·title="inductive">string</span></a><br/> | 504 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="string_of_list_ascii"·class="idref"·href="#string_of_list_ascii"><span·class="id"·title="definition">string_of_list_ascii</span></a>·(<a·id="s:110"·class="idref"·href="#s:110"><span·class="id"·title="binder">s</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#list"><span·class="id"·title="inductive">list</span></a>·<a·class="idref"·href="Coq.Strings.Ascii.html#ascii"><span·class="id"·title="inductive">ascii</span></a>)·:·<a·class="idref"·href="Coq.Strings.String.html#string"><span·class="id"·title="inductive">string</span></a><br/> |
505 | :=·<span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Strings.String.html#s:110"><span·class="id"·title="variable">s</span></a>·<span·class="id"·title="keyword">with</span><br/> | 505 | :=·<span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.Strings.String.html#s:110"><span·class="id"·title="variable">s</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 538, 15 lines modified | Offset 538, 15 lines modified | ||
538 | <br/> | 538 | <br/> |
539 | <span·class="id"·title="keyword">Lemma</span>·<a·id="list_byte_of_string_of_list_byte"·class="idref"·href="#list_byte_of_string_of_list_byte"><span·class="id"·title="lemma">list_byte_of_string_of_list_byte</span></a>·<a·id="s:121"·class="idref"·href="#s:121"><span·class="id"·title="binder">s</span></a>·:·<a·class="idref"·href="Coq.Strings.String.html#list_byte_of_string"><span·class="id"·title="definition">list_byte_of_string</span></a>·(<a·class="idref"·href="Coq.Strings.String.html#string_of_list_byte"><span·class="id"·title="definition">string_of_list_byte</span></a>·<a·class="idref"·href="Coq.Strings.String.html#s:121"><span·class="id"·title="variable">s</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Strings.String.html#s:121"><span·class="id"·title="variable">s</span></a>.<br/> | 539 | <span·class="id"·title="keyword">Lemma</span>·<a·id="list_byte_of_string_of_list_byte"·class="idref"·href="#list_byte_of_string_of_list_byte"><span·class="id"·title="lemma">list_byte_of_string_of_list_byte</span></a>·<a·id="s:121"·class="idref"·href="#s:121"><span·class="id"·title="binder">s</span></a>·:·<a·class="idref"·href="Coq.Strings.String.html#list_byte_of_string"><span·class="id"·title="definition">list_byte_of_string</span></a>·(<a·class="idref"·href="Coq.Strings.String.html#string_of_list_byte"><span·class="id"·title="definition">string_of_list_byte</span></a>·<a·class="idref"·href="Coq.Strings.String.html#s:121"><span·class="id"·title="variable">s</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Strings.String.html#s:121"><span·class="id"·title="variable">s</span></a>.<br/> |
540 | <br/> | 540 | <br/> |
541 | </div> | 541 | </div> |
542 | <div·class="doc"> | 542 | <div·class="doc"> |
543 | <a·id="lab | 543 | <a·id="lab1166"></a><h3·class="section">Concrete·syntax</h3> |
544 | <div·class="paragraph">·</div> | 544 | <div·class="paragraph">·</div> |
545 | <div·class="paragraph">·</div> | 545 | <div·class="paragraph">·</div> |
546 | ··The·concrete·syntax·for·strings·in·scope·string_scope·follows·the | 546 | ··The·concrete·syntax·for·strings·in·scope·string_scope·follows·the |
Max diff block lines reached; -1/15476 bytes (-0.01%) of diff not shown. |
Offset 56, 39 lines modified | Offset 56, 39 lines modified | ||
56 | </div> | 56 | </div> |
57 | <div·class="doc"> | 57 | <div·class="doc"> |
58 | NB:·This·file·is·here·only·for·compatibility·with·earlier·version·of | 58 | NB:·This·file·is·here·only·for·compatibility·with·earlier·version·of |
59 | ····<span·class="inlinecode"><span·class="id"·title="var">FSets</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">FMap</span></span>.·Please·use·<span·class="inlinecode"><span·class="id"·title="var">Structures</span>/<span·class="id"·title="var">Equalities.v</span></span>·directly·now.· | 59 | ····<span·class="inlinecode"><span·class="id"·title="var">FSets</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">FMap</span></span>.·Please·use·<span·class="inlinecode"><span·class="id"·title="var">Structures</span>/<span·class="id"·title="var">Equalities.v</span></span>·directly·now.· |
60 | <div·class="paragraph">·</div> | 60 | <div·class="paragraph">·</div> |
61 | <a·id="lab | 61 | <a·id="lab663"></a><h1·class="section">Types·with·Equalities,·and·nothing·more·(for·subtyping·purpose)</h1> |
62 | </div> | 62 | </div> |
63 | <div·class="code"> | 63 | <div·class="code"> |
64 | <br/> | 64 | <br/> |
65 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="EqualityType"·class="idref"·href="#EqualityType"><span·class="id"·title="module">EqualityType</span></a>·:=·<a·class="idref"·href="Coq.Structures.Equalities.html#EqualityTypeOrig"><span·class="id"·title="module">Equalities.EqualityTypeOrig</span></a>.<br/> | 65 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="EqualityType"·class="idref"·href="#EqualityType"><span·class="id"·title="module">EqualityType</span></a>·:=·<a·class="idref"·href="Coq.Structures.Equalities.html#EqualityTypeOrig"><span·class="id"·title="module">Equalities.EqualityTypeOrig</span></a>.<br/> |
66 | <br/> | 66 | <br/> |
67 | </div> | 67 | </div> |
68 | <div·class="doc"> | 68 | <div·class="doc"> |
69 | <a·id="lab | 69 | <a·id="lab664"></a><h1·class="section">Types·with·decidable·Equalities·(but·no·ordering)</h1> |
70 | </div> | 70 | </div> |
71 | <div·class="code"> | 71 | <div·class="code"> |
72 | <br/> | 72 | <br/> |
73 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="DecidableType"·class="idref"·href="#DecidableType"><span·class="id"·title="module">DecidableType</span></a>·:=·<a·class="idref"·href="Coq.Structures.Equalities.html#DecidableTypeOrig"><span·class="id"·title="module">Equalities.DecidableTypeOrig</span></a>.<br/> | 73 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="DecidableType"·class="idref"·href="#DecidableType"><span·class="id"·title="module">DecidableType</span></a>·:=·<a·class="idref"·href="Coq.Structures.Equalities.html#DecidableTypeOrig"><span·class="id"·title="module">Equalities.DecidableTypeOrig</span></a>.<br/> |
74 | <br/> | 74 | <br/> |
75 | </div> | 75 | </div> |
76 | <div·class="doc"> | 76 | <div·class="doc"> |
77 | <a·id="lab | 77 | <a·id="lab665"></a><h1·class="section">Additional·notions·about·keys·and·datas·used·in·FMap</h1> |
78 | </div> | 78 | </div> |
79 | <div·class="code"> | 79 | <div·class="code"> |
80 | <br/> | 80 | <br/> |
81 | <span·class="id"·title="keyword">Module</span>·<a·id="KeyDecidableType"·class="idref"·href="#KeyDecidableType"><span·class="id"·title="module">KeyDecidableType</span></a>(<span·class="id"·title="var">D</span>:<a·class="idref"·href="Coq.Structures.DecidableType.html#DecidableType"><span·class="id"·title="module">DecidableType</span></a>).<br/> | 81 | <span·class="id"·title="keyword">Module</span>·<a·id="KeyDecidableType"·class="idref"·href="#KeyDecidableType"><span·class="id"·title="module">KeyDecidableType</span></a>(<span·class="id"·title="var">D</span>:<a·class="idref"·href="Coq.Structures.DecidableType.html#DecidableType"><span·class="id"·title="module">DecidableType</span></a>).<br/> |
82 | <span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Structures.DecidableType.html#D"><span·class="id"·title="module">D</span></a>.<br/> | 82 | <span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Structures.DecidableType.html#D"><span·class="id"·title="module">D</span></a>.<br/> |
Offset 53, 15 lines modified | Offset 53, 15 lines modified | ||
53 | </div> | 53 | </div> |
54 | <div·class="doc"> | 54 | <div·class="doc"> |
55 | NB:·This·file·is·here·only·for·compatibility·with·earlier·version·of | 55 | NB:·This·file·is·here·only·for·compatibility·with·earlier·version·of |
56 | ····<span·class="inlinecode"><span·class="id"·title="var">FSets</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">FMap</span></span>.·Please·use·<span·class="inlinecode"><span·class="id"·title="var">Structures</span>/<span·class="id"·title="var">Equalities.v</span></span>·directly·now.· | 56 | ····<span·class="inlinecode"><span·class="id"·title="var">FSets</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">FMap</span></span>.·Please·use·<span·class="inlinecode"><span·class="id"·title="var">Structures</span>/<span·class="id"·title="var">Equalities.v</span></span>·directly·now.· |
57 | <div·class="paragraph">·</div> | 57 | <div·class="paragraph">·</div> |
58 | <a·id="lab | 58 | <a·id="lab668"></a><h1·class="section">Examples·of·Decidable·Type·structures.</h1> |
59 | <div·class="paragraph">·</div> | 59 | <div·class="paragraph">·</div> |
60 | ·A·particular·case·of·<span·class="inlinecode"><span·class="id"·title="var">DecidableType</span></span>·where | 60 | ·A·particular·case·of·<span·class="inlinecode"><span·class="id"·title="var">DecidableType</span></span>·where |
61 | ····the·equality·is·the·usual·one·of·Coq.· | 61 | ····the·equality·is·the·usual·one·of·Coq.· |
62 | </div> | 62 | </div> |
63 | <div·class="code"> | 63 | <div·class="code"> |
Offset 65, 29 lines modified | Offset 65, 29 lines modified | ||
65 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="Nop"·class="idref"·href="#Nop"><span·class="id"·title="module">Nop</span></a>.<br/> | 65 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="Nop"·class="idref"·href="#Nop"><span·class="id"·title="module">Nop</span></a>.<br/> |
66 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.Equalities.html#Nop"><span·class="id"·title="module">Nop</span></a>.<br/> | 66 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.Equalities.html#Nop"><span·class="id"·title="module">Nop</span></a>.<br/> |
67 | <br/> | 67 | <br/> |
68 | </div> | 68 | </div> |
69 | <div·class="doc"> | 69 | <div·class="doc"> |
70 | <a·id="lab | 70 | <a·id="lab669"></a><h1·class="section">Structure·with·just·a·base·type·<span·class="inlinecode"><span·class="id"·title="var">t</span></span></h1> |
71 | </div> | 71 | </div> |
72 | <div·class="code"> | 72 | <div·class="code"> |
73 | <br/> | 73 | <br/> |
74 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="Typ"·class="idref"·href="#Typ"><span·class="id"·title="module">Typ</span></a>.<br/> | 74 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="Typ"·class="idref"·href="#Typ"><span·class="id"·title="module">Typ</span></a>.<br/> |
75 | <span·class="id"·title="keyword">Parameter</span>·<span·class="id"·title="keyword">Inline</span>(10)·<a·id="Typ.t"·class="idref"·href="#Typ.t"><span·class="id"·title="axiom">t</span></a>·:·<span·class="id"·title="keyword">Type</span>.<br/> | 75 | <span·class="id"·title="keyword">Parameter</span>·<span·class="id"·title="keyword">Inline</span>(10)·<a·id="Typ.t"·class="idref"·href="#Typ.t"><span·class="id"·title="axiom">t</span></a>·:·<span·class="id"·title="keyword">Type</span>.<br/> |
76 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.Equalities.html#Typ"><span·class="id"·title="module">Typ</span></a>.<br/> | 76 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.Equalities.html#Typ"><span·class="id"·title="module">Typ</span></a>.<br/> |
77 | <br/> | 77 | <br/> |
78 | </div> | 78 | </div> |
79 | <div·class="doc"> | 79 | <div·class="doc"> |
80 | <a·id="lab | 80 | <a·id="lab670"></a><h1·class="section">Structure·with·an·equality·relation·<span·class="inlinecode"><span·class="id"·title="var">eq</span></span></h1> |
81 | </div> | 81 | </div> |
82 | <div·class="code"> | 82 | <div·class="code"> |
83 | <br/> | 83 | <br/> |
84 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="HasEq"·class="idref"·href="#HasEq"><span·class="id"·title="module">HasEq</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">T</span>:<a·class="idref"·href="Coq.Structures.Equalities.html#Typ"><span·class="id"·title="module">Typ</span></a>).<br/> | 84 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="HasEq"·class="idref"·href="#HasEq"><span·class="id"·title="module">HasEq</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">T</span>:<a·class="idref"·href="Coq.Structures.Equalities.html#Typ"><span·class="id"·title="module">Typ</span></a>).<br/> |
85 | <span·class="id"·title="keyword">Parameter</span>·<span·class="id"·title="keyword">Inline</span>(30)·<a·id="HasEq.eq"·class="idref"·href="#HasEq.eq"><span·class="id"·title="axiom">eq</span></a>·:·<a·class="idref"·href="Coq.Structures.Equalities.html#T.t"><span·class="id"·title="axiom">t</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#T.t"><span·class="id"·title="axiom">t</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>.<br/> | 85 | <span·class="id"·title="keyword">Parameter</span>·<span·class="id"·title="keyword">Inline</span>(30)·<a·id="HasEq.eq"·class="idref"·href="#HasEq.eq"><span·class="id"·title="axiom">eq</span></a>·:·<a·class="idref"·href="Coq.Structures.Equalities.html#T.t"><span·class="id"·title="axiom">t</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#T.t"><span·class="id"·title="axiom">t</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>.<br/> |
Offset 105, 30 lines modified | Offset 105, 30 lines modified | ||
105 | <br/> | 105 | <br/> |
106 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="Eq'"·class="idref"·href="#Eq'"><span·class="id"·title="module">Eq'</span></a>·:=·<a·class="idref"·href="Coq.Structures.Equalities.html#Eq"><span·class="id"·title="module">Eq</span></a>·<+·<a·class="idref"·href="Coq.Structures.Equalities.html#EqNotation"><span·class="id"·title="module">EqNotation</span></a>.<br/> | 106 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="Eq'"·class="idref"·href="#Eq'"><span·class="id"·title="module">Eq'</span></a>·:=·<a·class="idref"·href="Coq.Structures.Equalities.html#Eq"><span·class="id"·title="module">Eq</span></a>·<+·<a·class="idref"·href="Coq.Structures.Equalities.html#EqNotation"><span·class="id"·title="module">EqNotation</span></a>.<br/> |
107 | <br/> | 107 | <br/> |
108 | </div> | 108 | </div> |
109 | <div·class="doc"> | 109 | <div·class="doc"> |
110 | <a·id="lab | 110 | <a·id="lab671"></a><h1·class="section">Specification·of·the·equality·via·the·<span·class="inlinecode"><span·class="id"·title="var">Equivalence</span></span>·type·class</h1> |
111 | </div> | 111 | </div> |
112 | <div·class="code"> | 112 | <div·class="code"> |
113 | <br/> | 113 | <br/> |
114 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="IsEq"·class="idref"·href="#IsEq"><span·class="id"·title="module">IsEq</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">E</span>:<a·class="idref"·href="Coq.Structures.Equalities.html#Eq"><span·class="id"·title="module">Eq</span></a>).<br/> | 114 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="IsEq"·class="idref"·href="#IsEq"><span·class="id"·title="module">IsEq</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">E</span>:<a·class="idref"·href="Coq.Structures.Equalities.html#Eq"><span·class="id"·title="module">Eq</span></a>).<br/> |
115 | #[<span·class="id"·title="var">global</span>]<br/> | 115 | #[<span·class="id"·title="var">global</span>]<br/> |
116 | <span·class="id"·title="var">Declare</span>·<span·class="id"·title="keyword">Instance</span>·<a·id="IsEq.eq_equiv"·class="idref"·href="#IsEq.eq_equiv"><span·class="id"·title="instance">eq_equiv</span></a>·:·<a·class="idref"·href="Coq.Classes.RelationClasses.html#Equivalence"><span·class="id"·title="class">Equivalence</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#E.eq"><span·class="id"·title="axiom">eq</span></a>.<br/> | 116 | <span·class="id"·title="var">Declare</span>·<span·class="id"·title="keyword">Instance</span>·<a·id="IsEq.eq_equiv"·class="idref"·href="#IsEq.eq_equiv"><span·class="id"·title="instance">eq_equiv</span></a>·:·<a·class="idref"·href="Coq.Classes.RelationClasses.html#Equivalence"><span·class="id"·title="class">Equivalence</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#E.eq"><span·class="id"·title="axiom">eq</span></a>.<br/> |
117 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.Equalities.html#IsEq"><span·class="id"·title="module">IsEq</span></a>.<br/> | 117 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.Equalities.html#IsEq"><span·class="id"·title="module">IsEq</span></a>.<br/> |
118 | <br/> | 118 | <br/> |
119 | </div> | 119 | </div> |
120 | <div·class="doc"> | 120 | <div·class="doc"> |
121 | <a·id="lab | 121 | <a·id="lab672"></a><h1·class="section">Earlier·specification·of·equality·by·three·separate·lemmas.</h1> |
122 | </div> | 122 | </div> |
123 | <div·class="code"> | 123 | <div·class="code"> |
124 | <br/> | 124 | <br/> |
125 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="IsEqOrig"·class="idref"·href="#IsEqOrig"><span·class="id"·title="module">IsEqOrig</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">E</span>:<a·class="idref"·href="Coq.Structures.Equalities.html#Eq'"><span·class="id"·title="module">Eq'</span></a>).<br/> | 125 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="IsEqOrig"·class="idref"·href="#IsEqOrig"><span·class="id"·title="module">IsEqOrig</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">E</span>:<a·class="idref"·href="Coq.Structures.Equalities.html#Eq'"><span·class="id"·title="module">Eq'</span></a>).<br/> |
126 | <span·class="id"·title="keyword">Axiom</span>·<a·id="IsEqOrig.eq_refl"·class="idref"·href="#IsEqOrig.eq_refl"><span·class="id"·title="axiom">eq_refl</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:5"·class="idref"·href="#x:5"><span·class="id"·title="binder">x</span></a>·:·<a·class="idref"·href="Coq.Structures.Equalities.html#E.t"><span·class="id"·title="axiom">t</span></a>,·<a·class="idref"·href="Coq.Structures.Equalities.html#x:5"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#x:5"><span·class="id"·title="variable">x</span></a>.<br/> | 126 | <span·class="id"·title="keyword">Axiom</span>·<a·id="IsEqOrig.eq_refl"·class="idref"·href="#IsEqOrig.eq_refl"><span·class="id"·title="axiom">eq_refl</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:5"·class="idref"·href="#x:5"><span·class="id"·title="binder">x</span></a>·:·<a·class="idref"·href="Coq.Structures.Equalities.html#E.t"><span·class="id"·title="axiom">t</span></a>,·<a·class="idref"·href="Coq.Structures.Equalities.html#x:5"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#x:5"><span·class="id"·title="variable">x</span></a>.<br/> |
Offset 140, 29 lines modified | Offset 140, 29 lines modified | ||
140 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Resolve</span>·<span·class="id"·title="var">eq_refl</span>·<span·class="id"·title="var">eq_trans</span>·:·<span·class="id"·title="var">core</span>.<br/> | 140 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Resolve</span>·<span·class="id"·title="var">eq_refl</span>·<span·class="id"·title="var">eq_trans</span>·:·<span·class="id"·title="var">core</span>.<br/> |
141 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.Equalities.html#IsEqOrig"><span·class="id"·title="module">IsEqOrig</span></a>.<br/> | 141 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.Equalities.html#IsEqOrig"><span·class="id"·title="module">IsEqOrig</span></a>.<br/> |
142 | <br/> | 142 | <br/> |
143 | </div> | 143 | </div> |
144 | <div·class="doc"> | 144 | <div·class="doc"> |
145 | <a·id="lab | 145 | <a·id="lab673"></a><h1·class="section">Types·with·decidable·equality</h1> |
146 | </div> | 146 | </div> |
147 | <div·class="code"> | 147 | <div·class="code"> |
148 | <br/> | 148 | <br/> |
149 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="HasEqDec"·class="idref"·href="#HasEqDec"><span·class="id"·title="module">HasEqDec</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">E</span>:<a·class="idref"·href="Coq.Structures.Equalities.html#Eq'"><span·class="id"·title="module">Eq'</span></a>).<br/> | 149 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="HasEqDec"·class="idref"·href="#HasEqDec"><span·class="id"·title="module">HasEqDec</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">E</span>:<a·class="idref"·href="Coq.Structures.Equalities.html#Eq'"><span·class="id"·title="module">Eq'</span></a>).<br/> |
150 | <span·class="id"·title="keyword">Parameter</span>·<a·id="HasEqDec.eq_dec"·class="idref"·href="#HasEqDec.eq_dec"><span·class="id"·title="axiom">eq_dec</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:17"·class="idref"·href="#x:17"><span·class="id"·title="binder">x</span></a>·<a·id="y:18"·class="idref"·href="#y:18"><span·class="id"·title="binder">y</span></a>·:·<a·class="idref"·href="Coq.Structures.Equalities.html#E.t"><span·class="id"·title="axiom">t</span></a>,·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#x:17"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#y:18"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#x:17"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#y:18"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>.<br/> | 150 | <span·class="id"·title="keyword">Parameter</span>·<a·id="HasEqDec.eq_dec"·class="idref"·href="#HasEqDec.eq_dec"><span·class="id"·title="axiom">eq_dec</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:17"·class="idref"·href="#x:17"><span·class="id"·title="binder">x</span></a>·<a·id="y:18"·class="idref"·href="#y:18"><span·class="id"·title="binder">y</span></a>·:·<a·class="idref"·href="Coq.Structures.Equalities.html#E.t"><span·class="id"·title="axiom">t</span></a>,·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#x:17"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#y:18"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#x:17"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#y:18"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>.<br/> |
151 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.Equalities.html#HasEqDec"><span·class="id"·title="module">HasEqDec</span></a>.<br/> | 151 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.Equalities.html#HasEqDec"><span·class="id"·title="module">HasEqDec</span></a>.<br/> |
152 | <br/> | 152 | <br/> |
153 | </div> | 153 | </div> |
154 | <div·class="doc"> | 154 | <div·class="doc"> |
155 | <a·id="lab | 155 | <a·id="lab674"></a><h1·class="section">Boolean·Equality</h1> |
156 | <div·class="paragraph">·</div> | 156 | <div·class="paragraph">·</div> |
157 | ·Having·<span·class="inlinecode"><span·class="id"·title="var">eq_dec</span></span>·is·the·same·as·having·a·boolean·equality·plus | 157 | ·Having·<span·class="inlinecode"><span·class="id"·title="var">eq_dec</span></span>·is·the·same·as·having·a·boolean·equality·plus |
158 | ····a·correctness·proof.· | 158 | ····a·correctness·proof.· |
159 | </div> | 159 | </div> |
160 | <div·class="code"> | 160 | <div·class="code"> |
Offset 249, 15 lines modified | Offset 249, 15 lines modified | ||
249 | <a·class="idref"·href="Coq.Structures.Equalities.html#BooleanDecidableType"><span·class="id"·title="module">BooleanDecidableType</span></a>·<+·<a·class="idref"·href="Coq.Structures.Equalities.html#EqNotation"><span·class="id"·title="module">EqNotation</span></a>·<+·<a·class="idref"·href="Coq.Structures.Equalities.html#EqbNotation"><span·class="id"·title="module">EqbNotation</span></a>.<br/> | 249 | <a·class="idref"·href="Coq.Structures.Equalities.html#BooleanDecidableType"><span·class="id"·title="module">BooleanDecidableType</span></a>·<+·<a·class="idref"·href="Coq.Structures.Equalities.html#EqNotation"><span·class="id"·title="module">EqNotation</span></a>·<+·<a·class="idref"·href="Coq.Structures.Equalities.html#EqbNotation"><span·class="id"·title="module">EqbNotation</span></a>.<br/> |
250 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="DecidableTypeFull'"·class="idref"·href="#DecidableTypeFull'"><span·class="id"·title="module">DecidableTypeFull'</span></a>·:=·<a·class="idref"·href="Coq.Structures.Equalities.html#DecidableTypeFull"><span·class="id"·title="module">DecidableTypeFull</span></a>·<+·<a·class="idref"·href="Coq.Structures.Equalities.html#EqNotation"><span·class="id"·title="module">EqNotation</span></a>.<br/> | 250 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="DecidableTypeFull'"·class="idref"·href="#DecidableTypeFull'"><span·class="id"·title="module">DecidableTypeFull'</span></a>·:=·<a·class="idref"·href="Coq.Structures.Equalities.html#DecidableTypeFull"><span·class="id"·title="module">DecidableTypeFull</span></a>·<+·<a·class="idref"·href="Coq.Structures.Equalities.html#EqNotation"><span·class="id"·title="module">EqNotation</span></a>.<br/> |
251 | <br/> | 251 | <br/> |
252 | </div> | 252 | </div> |
253 | <div·class="doc"> | 253 | <div·class="doc"> |
254 | <a·id="lab | 254 | <a·id="lab675"></a><h1·class="section">Compatibility·wrapper·from/to·the·old·version·of</h1> |
255 | ······<span·class="inlinecode"><span·class="id"·title="var">EqualityType</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">DecidableType</span></span>· | 255 | ······<span·class="inlinecode"><span·class="id"·title="var">EqualityType</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">DecidableType</span></span>· |
256 | </div> | 256 | </div> |
257 | <div·class="code"> | 257 | <div·class="code"> |
258 | <br/> | 258 | <br/> |
259 | <span·class="id"·title="keyword">Module</span>·<a·id="BackportEq"·class="idref"·href="#BackportEq"><span·class="id"·title="module">BackportEq</span></a>·(<span·class="id"·title="var">E</span>:<a·class="idref"·href="Coq.Structures.Equalities.html#Eq"><span·class="id"·title="module">Eq</span></a>)(<span·class="id"·title="var">F</span>:<a·class="idref"·href="Coq.Structures.Equalities.html#IsEq"><span·class="id"·title="module">IsEq</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#E"><span·class="id"·title="module">E</span></a>)·<:·<a·class="idref"·href="Coq.Structures.Equalities.html#IsEqOrig"><span·class="id"·title="module">IsEqOrig</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#E"><span·class="id"·title="module">E</span></a>.<br/> | 259 | <span·class="id"·title="keyword">Module</span>·<a·id="BackportEq"·class="idref"·href="#BackportEq"><span·class="id"·title="module">BackportEq</span></a>·(<span·class="id"·title="var">E</span>:<a·class="idref"·href="Coq.Structures.Equalities.html#Eq"><span·class="id"·title="module">Eq</span></a>)(<span·class="id"·title="var">F</span>:<a·class="idref"·href="Coq.Structures.Equalities.html#IsEq"><span·class="id"·title="module">IsEq</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#E"><span·class="id"·title="module">E</span></a>)·<:·<a·class="idref"·href="Coq.Structures.Equalities.html#IsEqOrig"><span·class="id"·title="module">IsEqOrig</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#E"><span·class="id"·title="module">E</span></a>.<br/> |
Offset 288, 15 lines modified | Offset 288, 15 lines modified | ||
288 | <span·class="id"·title="keyword">Module</span>·<a·id="Update_DT"·class="idref"·href="#Update_DT"><span·class="id"·title="module">Update_DT</span></a>·(<span·class="id"·title="var">E</span>:<a·class="idref"·href="Coq.Structures.Equalities.html#DecidableTypeOrig"><span·class="id"·title="module">DecidableTypeOrig</span></a>)·<:·<a·class="idref"·href="Coq.Structures.Equalities.html#DecidableTypeBoth"><span·class="id"·title="module">DecidableTypeBoth</span></a><br/> | 288 | <span·class="id"·title="keyword">Module</span>·<a·id="Update_DT"·class="idref"·href="#Update_DT"><span·class="id"·title="module">Update_DT</span></a>·(<span·class="id"·title="var">E</span>:<a·class="idref"·href="Coq.Structures.Equalities.html#DecidableTypeOrig"><span·class="id"·title="module">DecidableTypeOrig</span></a>)·<:·<a·class="idref"·href="Coq.Structures.Equalities.html#DecidableTypeBoth"><span·class="id"·title="module">DecidableTypeBoth</span></a><br/> |
289 | :=·<a·class="idref"·href="Coq.Structures.Equalities.html#E"><span·class="id"·title="module">E</span></a>·<+·<a·class="idref"·href="Coq.Structures.Equalities.html#UpdateEq"><span·class="id"·title="module">UpdateEq</span></a>.<br/> | 289 | :=·<a·class="idref"·href="Coq.Structures.Equalities.html#E"><span·class="id"·title="module">E</span></a>·<+·<a·class="idref"·href="Coq.Structures.Equalities.html#UpdateEq"><span·class="id"·title="module">UpdateEq</span></a>.<br/> |
290 | <br/> | 290 | <br/> |
291 | </div> | 291 | </div> |
292 | <div·class="doc"> | 292 | <div·class="doc"> |
293 | <a·id="lab | 293 | <a·id="lab676"></a><h1·class="section">Having·<span·class="inlinecode"><span·class="id"·title="var">eq_dec</span></span>·is·equivalent·to·having·<span·class="inlinecode"><span·class="id"·title="var">eqb</span></span>·and·its·spec.</h1> |
294 | </div> | 294 | </div> |
295 | <div·class="code"> | 295 | <div·class="code"> |
296 | <br/> | 296 | <br/> |
297 | <span·class="id"·title="keyword">Module</span>·<a·id="HasEqDec2Bool"·class="idref"·href="#HasEqDec2Bool"><span·class="id"·title="module">HasEqDec2Bool</span></a>·(<span·class="id"·title="var">E</span>:<a·class="idref"·href="Coq.Structures.Equalities.html#Eq"><span·class="id"·title="module">Eq</span></a>)(<span·class="id"·title="var">F</span>:<a·class="idref"·href="Coq.Structures.Equalities.html#HasEqDec"><span·class="id"·title="module">HasEqDec</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#E"><span·class="id"·title="module">E</span></a>)·<:·<a·class="idref"·href="Coq.Structures.Equalities.html#HasEqBool"><span·class="id"·title="module">HasEqBool</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#E"><span·class="id"·title="module">E</span></a>.<br/> | 297 | <span·class="id"·title="keyword">Module</span>·<a·id="HasEqDec2Bool"·class="idref"·href="#HasEqDec2Bool"><span·class="id"·title="module">HasEqDec2Bool</span></a>·(<span·class="id"·title="var">E</span>:<a·class="idref"·href="Coq.Structures.Equalities.html#Eq"><span·class="id"·title="module">Eq</span></a>)(<span·class="id"·title="var">F</span>:<a·class="idref"·href="Coq.Structures.Equalities.html#HasEqDec"><span·class="id"·title="module">HasEqDec</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#E"><span·class="id"·title="module">E</span></a>)·<:·<a·class="idref"·href="Coq.Structures.Equalities.html#HasEqBool"><span·class="id"·title="module">HasEqBool</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#E"><span·class="id"·title="module">E</span></a>.<br/> |
298 | <span·class="id"·title="keyword">Definition</span>·<a·id="HasEqDec2Bool.eqb"·class="idref"·href="#HasEqDec2Bool.eqb"><span·class="id"·title="definition">eqb</span></a>·<a·id="x:27"·class="idref"·href="#x:27"><span·class="id"·title="binder">x</span></a>·<a·id="y:28"·class="idref"·href="#y:28"><span·class="id"·title="binder">y</span></a>·:=·<span·class="id"·title="keyword">if</span>·<a·class="idref"·href="Coq.Structures.Equalities.html#F.eq_dec"><span·class="id"·title="axiom">F.eq_dec</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#x:27"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#y:28"><span·class="id"·title="variable">y</span></a>·<span·class="id"·title="keyword">then</span>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<span·class="id"·title="keyword">else</span>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>.<br/> | 298 | <span·class="id"·title="keyword">Definition</span>·<a·id="HasEqDec2Bool.eqb"·class="idref"·href="#HasEqDec2Bool.eqb"><span·class="id"·title="definition">eqb</span></a>·<a·id="x:27"·class="idref"·href="#x:27"><span·class="id"·title="binder">x</span></a>·<a·id="y:28"·class="idref"·href="#y:28"><span·class="id"·title="binder">y</span></a>·:=·<span·class="id"·title="keyword">if</span>·<a·class="idref"·href="Coq.Structures.Equalities.html#F.eq_dec"><span·class="id"·title="axiom">F.eq_dec</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#x:27"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#y:28"><span·class="id"·title="variable">y</span></a>·<span·class="id"·title="keyword">then</span>·<a·class="idref"·href="Coq.Init.Datatypes.html#true"><span·class="id"·title="constructor">true</span></a>·<span·class="id"·title="keyword">else</span>·<a·class="idref"·href="Coq.Init.Datatypes.html#false"><span·class="id"·title="constructor">false</span></a>.<br/> |
Offset 386, 15 lines modified | Offset 386, 15 lines modified | ||
386 | <br/> | 386 | <br/> |
387 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.Equalities.html#BoolEqualityFacts"><span·class="id"·title="module">BoolEqualityFacts</span></a>.<br/> | 387 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.Equalities.html#BoolEqualityFacts"><span·class="id"·title="module">BoolEqualityFacts</span></a>.<br/> |
388 | <br/> | 388 | <br/> |
Max diff block lines reached; 351/15533 bytes (2.26%) of diff not shown. |
Offset 51, 15 lines modified | Offset 51, 15 lines modified | ||
51 | <br/> | 51 | <br/> |
52 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> | 52 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> |
53 | <br/> | 53 | <br/> |
54 | </div> | 54 | </div> |
55 | <div·class="doc"> | 55 | <div·class="doc"> |
56 | <a·id="lab | 56 | <a·id="lab653"></a><h1·class="section">Keys·and·datas·used·in·the·future·MMaps</h1> |
57 | </div> | 57 | </div> |
58 | <div·class="code"> | 58 | <div·class="code"> |
59 | <br/> | 59 | <br/> |
60 | <span·class="id"·title="keyword">Module</span>·<a·id="KeyDecidableType"·class="idref"·href="#KeyDecidableType"><span·class="id"·title="module">KeyDecidableType</span></a>(<span·class="id"·title="var">D</span>:<a·class="idref"·href="Coq.Structures.Equalities.html#DecidableType"><span·class="id"·title="module">DecidableType</span></a>).<br/> | 60 | <span·class="id"·title="keyword">Module</span>·<a·id="KeyDecidableType"·class="idref"·href="#KeyDecidableType"><span·class="id"·title="module">KeyDecidableType</span></a>(<span·class="id"·title="var">D</span>:<a·class="idref"·href="Coq.Structures.Equalities.html#DecidableType"><span·class="id"·title="module">DecidableType</span></a>).<br/> |
Offset 223, 15 lines modified | Offset 223, 15 lines modified | ||
223 | <br/> | 223 | <br/> |
224 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.EqualitiesFacts.html#KeyDecidableType"><span·class="id"·title="module">KeyDecidableType</span></a>.<br/> | 224 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.EqualitiesFacts.html#KeyDecidableType"><span·class="id"·title="module">KeyDecidableType</span></a>.<br/> |
225 | <br/> | 225 | <br/> |
226 | </div> | 226 | </div> |
227 | <div·class="doc"> | 227 | <div·class="doc"> |
228 | <a·id="lab | 228 | <a·id="lab654"></a><h1·class="section">PairDecidableType</h1> |
229 | <div·class="paragraph">·</div> | 229 | <div·class="paragraph">·</div> |
230 | ···From·two·decidable·types,·we·can·build·a·new·DecidableType | 230 | ···From·two·decidable·types,·we·can·build·a·new·DecidableType |
231 | ···over·their·cartesian·product.· | 231 | ···over·their·cartesian·product.· |
232 | </div> | 232 | </div> |
Offset 48, 19 lines modified | Offset 48, 19 lines modified | ||
48 | <br/> | 48 | <br/> |
49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Structures.Orders.html#"><span·class="id"·title="library">Orders</span></a>·<a·class="idref"·href="Coq.Structures.OrdersTac.html#"><span·class="id"·title="library">OrdersTac</span></a>·<a·class="idref"·href="Coq.Structures.OrdersFacts.html#"><span·class="id"·title="library">OrdersFacts</span></a>·<a·class="idref"·href="Coq.Setoids.Setoid.html#"><span·class="id"·title="library">Setoid</span></a>·<a·class="idref"·href="Coq.Classes.Morphisms.html#"><span·class="id"·title="library">Morphisms</span></a>·<a·class="idref"·href="Coq.Program.Basics.html#"><span·class="id"·title="library">Basics</span></a>.<br/> | 49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Structures.Orders.html#"><span·class="id"·title="library">Orders</span></a>·<a·class="idref"·href="Coq.Structures.OrdersTac.html#"><span·class="id"·title="library">OrdersTac</span></a>·<a·class="idref"·href="Coq.Structures.OrdersFacts.html#"><span·class="id"·title="library">OrdersFacts</span></a>·<a·class="idref"·href="Coq.Setoids.Setoid.html#"><span·class="id"·title="library">Setoid</span></a>·<a·class="idref"·href="Coq.Classes.Morphisms.html#"><span·class="id"·title="library">Morphisms</span></a>·<a·class="idref"·href="Coq.Program.Basics.html#"><span·class="id"·title="library">Basics</span></a>.<br/> |
50 | <br/> | 50 | <br/> |
51 | </div> | 51 | </div> |
52 | <div·class="doc"> | 52 | <div·class="doc"> |
53 | <a·id="lab | 53 | <a·id="lab679"></a><h1·class="section">A·Generic·construction·of·min·and·max</h1> |
54 | <div·class="paragraph">·</div> | 54 | <div·class="paragraph">·</div> |
55 | <a·id="lab | 55 | <a·id="lab680"></a><h2·class="section">First,·an·interface·for·types·with·<span·class="inlinecode"><span·class="id"·title="var">max</span></span>·and/or·<span·class="inlinecode"><span·class="id"·title="var">min</span></span></h2> |
56 | </div> | 56 | </div> |
57 | <div·class="code"> | 57 | <div·class="code"> |
58 | <br/> | 58 | <br/> |
59 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="HasMax"·class="idref"·href="#HasMax"><span·class="id"·title="module">HasMax</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">E</span>:<a·class="idref"·href="Coq.Structures.Orders.html#EqLe'"><span·class="id"·title="module">EqLe'</span></a>).<br/> | 59 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="HasMax"·class="idref"·href="#HasMax"><span·class="id"·title="module">HasMax</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">E</span>:<a·class="idref"·href="Coq.Structures.Orders.html#EqLe'"><span·class="id"·title="module">EqLe'</span></a>).<br/> |
60 | <span·class="id"·title="keyword">Parameter</span>·<span·class="id"·title="keyword">Inline</span>·<a·id="HasMax.max"·class="idref"·href="#HasMax.max"><span·class="id"·title="axiom">max</span></a>·:·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#E.t"><span·class="id"·title="axiom">t</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#E.t"><span·class="id"·title="axiom">t</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#E.t"><span·class="id"·title="axiom">t</span></a>.<br/> | 60 | <span·class="id"·title="keyword">Parameter</span>·<span·class="id"·title="keyword">Inline</span>·<a·id="HasMax.max"·class="idref"·href="#HasMax.max"><span·class="id"·title="axiom">max</span></a>·:·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#E.t"><span·class="id"·title="axiom">t</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#E.t"><span·class="id"·title="axiom">t</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#E.t"><span·class="id"·title="axiom">t</span></a>.<br/> |
Offset 78, 15 lines modified | Offset 78, 15 lines modified | ||
78 | <br/> | 78 | <br/> |
79 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="HasMinMax"·class="idref"·href="#HasMinMax"><span·class="id"·title="module">HasMinMax</span></a>·(<span·class="id"·title="var">E</span>:<a·class="idref"·href="Coq.Structures.Orders.html#EqLe"><span·class="id"·title="module">EqLe</span></a>)·:=·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#HasMax"><span·class="id"·title="module">HasMax</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#E"><span·class="id"·title="module">E</span></a>·<+·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#HasMin"><span·class="id"·title="module">HasMin</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#E"><span·class="id"·title="module">E</span></a>.<br/> | 79 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="HasMinMax"·class="idref"·href="#HasMinMax"><span·class="id"·title="module">HasMinMax</span></a>·(<span·class="id"·title="var">E</span>:<a·class="idref"·href="Coq.Structures.Orders.html#EqLe"><span·class="id"·title="module">EqLe</span></a>)·:=·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#HasMax"><span·class="id"·title="module">HasMax</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#E"><span·class="id"·title="module">E</span></a>·<+·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#HasMin"><span·class="id"·title="module">HasMin</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#E"><span·class="id"·title="module">E</span></a>.<br/> |
80 | <br/> | 80 | <br/> |
81 | </div> | 81 | </div> |
82 | <div·class="doc"> | 82 | <div·class="doc"> |
83 | <a·id="lab | 83 | <a·id="lab681"></a><h2·class="section">Any·<span·class="inlinecode"><span·class="id"·title="var">OrderedTypeFull</span></span>·can·be·equipped·by·<span·class="inlinecode"><span·class="id"·title="var">max</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">min</span></span></h2> |
84 | ····based·on·the·compare·function.· | 84 | ····based·on·the·compare·function.· |
85 | </div> | 85 | </div> |
86 | <div·class="code"> | 86 | <div·class="code"> |
87 | <br/> | 87 | <br/> |
88 | <span·class="id"·title="keyword">Definition</span>·<a·id="gmax"·class="idref"·href="#gmax"><span·class="id"·title="definition">gmax</span></a>·{<a·id="A:21"·class="idref"·href="#A:21"><span·class="id"·title="binder">A</span></a>}·(<a·id="cmp:22"·class="idref"·href="#cmp:22"><span·class="id"·title="binder">cmp</span></a>·:·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#A:21"><span·class="id"·title="variable">A</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.Structures.GenericMinMax.html#A:21"><span·class="id"·title="variable">A</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.Init.Datatypes.html#comparison"><span·class="id"·title="inductive">comparison</span></a>)·<a·id="x:23"·class="idref"·href="#x:23"><span·class="id"·title="binder">x</span></a>·<a·id="y:24"·class="idref"·href="#y:24"><span·class="id"·title="binder">y</span></a>·:=<br/> | 88 | <span·class="id"·title="keyword">Definition</span>·<a·id="gmax"·class="idref"·href="#gmax"><span·class="id"·title="definition">gmax</span></a>·{<a·id="A:21"·class="idref"·href="#A:21"><span·class="id"·title="binder">A</span></a>}·(<a·id="cmp:22"·class="idref"·href="#cmp:22"><span·class="id"·title="binder">cmp</span></a>·:·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#A:21"><span·class="id"·title="variable">A</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.Structures.GenericMinMax.html#A:21"><span·class="id"·title="variable">A</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.Init.Datatypes.html#comparison"><span·class="id"·title="inductive">comparison</span></a>)·<a·id="x:23"·class="idref"·href="#x:23"><span·class="id"·title="binder">x</span></a>·<a·id="y:24"·class="idref"·href="#y:24"><span·class="id"·title="binder">y</span></a>·:=<br/> |
Offset 119, 15 lines modified | Offset 119, 15 lines modified | ||
119 | <br/> | 119 | <br/> |
120 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#GenericMinMax"><span·class="id"·title="module">GenericMinMax</span></a>.<br/> | 120 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#GenericMinMax"><span·class="id"·title="module">GenericMinMax</span></a>.<br/> |
121 | <br/> | 121 | <br/> |
122 | </div> | 122 | </div> |
123 | <div·class="doc"> | 123 | <div·class="doc"> |
124 | <a·id="lab | 124 | <a·id="lab682"></a><h2·class="section">Consequences·of·the·minimalist·interface:·facts·about·<span·class="inlinecode"><span·class="id"·title="var">max</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">min</span></span>.</h2> |
125 | </div> | 125 | </div> |
126 | <div·class="code"> | 126 | <div·class="code"> |
127 | <br/> | 127 | <br/> |
128 | <span·class="id"·title="keyword">Module</span>·<a·id="MinMaxLogicalProperties"·class="idref"·href="#MinMaxLogicalProperties"><span·class="id"·title="module">MinMaxLogicalProperties</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">O</span>:<a·class="idref"·href="Coq.Structures.Orders.html#TotalOrder'"><span·class="id"·title="module">TotalOrder'</span></a>)(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">M</span>:<a·class="idref"·href="Coq.Structures.GenericMinMax.html#HasMinMax"><span·class="id"·title="module">HasMinMax</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#O"><span·class="id"·title="module">O</span></a>).<br/> | 128 | <span·class="id"·title="keyword">Module</span>·<a·id="MinMaxLogicalProperties"·class="idref"·href="#MinMaxLogicalProperties"><span·class="id"·title="module">MinMaxLogicalProperties</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">O</span>:<a·class="idref"·href="Coq.Structures.Orders.html#TotalOrder'"><span·class="id"·title="module">TotalOrder'</span></a>)(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">M</span>:<a·class="idref"·href="Coq.Structures.GenericMinMax.html#HasMinMax"><span·class="id"·title="module">HasMinMax</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#O"><span·class="id"·title="module">O</span></a>).<br/> |
129 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Import</span>·<a·id="MinMaxLogicalProperties.Private_Tac"·class="idref"·href="#MinMaxLogicalProperties.Private_Tac"><span·class="id"·title="module">Private_Tac</span></a>·:=·!<a·class="idref"·href="Coq.Structures.OrdersTac.html#MakeOrderTac"><span·class="id"·title="module">MakeOrderTac</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#O"><span·class="id"·title="module">O</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#O"><span·class="id"·title="module">O</span></a>.<br/> | 129 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Import</span>·<a·id="MinMaxLogicalProperties.Private_Tac"·class="idref"·href="#MinMaxLogicalProperties.Private_Tac"><span·class="id"·title="module">Private_Tac</span></a>·:=·!<a·class="idref"·href="Coq.Structures.OrdersTac.html#MakeOrderTac"><span·class="id"·title="module">MakeOrderTac</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#O"><span·class="id"·title="module">O</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#O"><span·class="id"·title="module">O</span></a>.<br/> |
Offset 197, 15 lines modified | Offset 197, 15 lines modified | ||
197 | <a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Classes.Morphisms.html#Proper"><span·class="id"·title="class">Proper</span></a>·(<a·class="idref"·href="Coq.Structures.GenericMinMax.html#O.le"><span·class="id"·title="axiom">le</span></a>·<a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#O.le"><span·class="id"·title="axiom">le</span></a>)·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#f:51"><span·class="id"·title="variable">f</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 197 | <a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Classes.Morphisms.html#Proper"><span·class="id"·title="class">Proper</span></a>·(<a·class="idref"·href="Coq.Structures.GenericMinMax.html#O.le"><span·class="id"·title="axiom">le</span></a>·<a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#O.le"><span·class="id"·title="axiom">le</span></a>)·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#f:51"><span·class="id"·title="variable">f</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
198 | <span·class="id"·title="keyword">forall</span>·<a·id="x:52"·class="idref"·href="#x:52"><span·class="id"·title="binder">x</span></a>·<a·id="y:53"·class="idref"·href="#y:53"><span·class="id"·title="binder">y</span></a>,·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#M.max"><span·class="id"·title="axiom">max</span></a>·(<a·class="idref"·href="Coq.Structures.GenericMinMax.html#f:51"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#x:52"><span·class="id"·title="variable">x</span></a>)·(<a·class="idref"·href="Coq.Structures.GenericMinMax.html#f:51"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#y:53"><span·class="id"·title="variable">y</span></a>)·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#f:51"><span·class="id"·title="variable">f</span></a>·(<a·class="idref"·href="Coq.Structures.GenericMinMax.html#M.max"><span·class="id"·title="axiom">max</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#x:52"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#y:53"><span·class="id"·title="variable">y</span></a>).<br/> | 198 | <span·class="id"·title="keyword">forall</span>·<a·id="x:52"·class="idref"·href="#x:52"><span·class="id"·title="binder">x</span></a>·<a·id="y:53"·class="idref"·href="#y:53"><span·class="id"·title="binder">y</span></a>,·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#M.max"><span·class="id"·title="axiom">max</span></a>·(<a·class="idref"·href="Coq.Structures.GenericMinMax.html#f:51"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#x:52"><span·class="id"·title="variable">x</span></a>)·(<a·class="idref"·href="Coq.Structures.GenericMinMax.html#f:51"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#y:53"><span·class="id"·title="variable">y</span></a>)·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#f:51"><span·class="id"·title="variable">f</span></a>·(<a·class="idref"·href="Coq.Structures.GenericMinMax.html#M.max"><span·class="id"·title="axiom">max</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#x:52"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#y:53"><span·class="id"·title="variable">y</span></a>).<br/> |
199 | <br/> | 199 | <br/> |
200 | </div> | 200 | </div> |
201 | <div·class="doc"> | 201 | <div·class="doc"> |
202 | <a·id="lab | 202 | <a·id="lab683"></a><h3·class="section">Semi-lattice·algebraic·properties·of·<span·class="inlinecode"><span·class="id"·title="var">max</span></span></h3> |
203 | </div> | 203 | </div> |
204 | <div·class="code"> | 204 | <div·class="code"> |
205 | <br/> | 205 | <br/> |
206 | <span·class="id"·title="keyword">Lemma</span>·<a·id="MinMaxLogicalProperties.max_id"·class="idref"·href="#MinMaxLogicalProperties.max_id"><span·class="id"·title="lemma">max_id</span></a>·<a·id="n:54"·class="idref"·href="#n:54"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#M.max"><span·class="id"·title="axiom">max</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#n:54"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#n:54"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#n:54"><span·class="id"·title="variable">n</span></a>.<br/> | 206 | <span·class="id"·title="keyword">Lemma</span>·<a·id="MinMaxLogicalProperties.max_id"·class="idref"·href="#MinMaxLogicalProperties.max_id"><span·class="id"·title="lemma">max_id</span></a>·<a·id="n:54"·class="idref"·href="#n:54"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#M.max"><span·class="id"·title="axiom">max</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#n:54"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#n:54"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#n:54"><span·class="id"·title="variable">n</span></a>.<br/> |
Offset 224, 15 lines modified | Offset 224, 15 lines modified | ||
224 | <span·class="id"·title="tactic">destruct</span>·(<a·class="idref"·href="Coq.Structures.GenericMinMax.html#MinMaxLogicalProperties.max_spec"><span·class="id"·title="lemma">max_spec</span></a>·<span·class="id"·title="var">n</span>·<span·class="id"·title="var">m</span>);·<span·class="id"·title="tactic">intuition</span>;·<span·class="id"·title="var">order</span><br/> | 224 | <span·class="id"·title="tactic">destruct</span>·(<a·class="idref"·href="Coq.Structures.GenericMinMax.html#MinMaxLogicalProperties.max_spec"><span·class="id"·title="lemma">max_spec</span></a>·<span·class="id"·title="var">n</span>·<span·class="id"·title="var">m</span>);·<span·class="id"·title="tactic">intuition</span>;·<span·class="id"·title="var">order</span><br/> |
225 | <span·class="id"·title="keyword">end</span>.<br/> | 225 | <span·class="id"·title="keyword">end</span>.<br/> |
226 | <br/> | 226 | <br/> |
227 | </div> | 227 | </div> |
228 | <div·class="doc"> | 228 | <div·class="doc"> |
229 | <a·id="lab | 229 | <a·id="lab684"></a><h3·class="section">Least-upper·bound·properties·of·<span·class="inlinecode"><span·class="id"·title="var">max</span></span></h3> |
230 | </div> | 230 | </div> |
231 | <div·class="code"> | 231 | <div·class="code"> |
232 | <br/> | 232 | <br/> |
233 | <span·class="id"·title="keyword">Lemma</span>·<a·id="MinMaxLogicalProperties.le_max_l"·class="idref"·href="#MinMaxLogicalProperties.le_max_l"><span·class="id"·title="lemma">le_max_l</span></a>·<a·id="n:60"·class="idref"·href="#n:60"><span·class="id"·title="binder">n</span></a>·<a·id="m:61"·class="idref"·href="#m:61"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#n:60"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#M.max"><span·class="id"·title="axiom">max</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#n:60"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#m:61"><span·class="id"·title="variable">m</span></a>.<br/> | 233 | <span·class="id"·title="keyword">Lemma</span>·<a·id="MinMaxLogicalProperties.le_max_l"·class="idref"·href="#MinMaxLogicalProperties.le_max_l"><span·class="id"·title="lemma">le_max_l</span></a>·<a·id="n:60"·class="idref"·href="#n:60"><span·class="id"·title="binder">n</span></a>·<a·id="m:61"·class="idref"·href="#m:61"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#n:60"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#M.max"><span·class="id"·title="axiom">max</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#n:60"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#m:61"><span·class="id"·title="variable">m</span></a>.<br/> |
234 | · | 234 | · |
Offset 383, 15 lines modified | Offset 383, 15 lines modified | ||
383 | <span·class="id"·title="keyword">Lemma</span>·<a·id="MinMaxLogicalProperties.min_le_compat"·class="idref"·href="#MinMaxLogicalProperties.min_le_compat"><span·class="id"·title="lemma">min_le_compat</span></a>·<a·id="n:167"·class="idref"·href="#n:167"><span·class="id"·title="binder">n</span></a>·<a·id="m:168"·class="idref"·href="#m:168"><span·class="id"·title="binder">m</span></a>·<a·id="p:169"·class="idref"·href="#p:169"><span·class="id"·title="binder">p</span></a>·<a·id="q:170"·class="idref"·href="#q:170"><span·class="id"·title="binder">q</span></a>·:·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#n:167"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#m:168"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#p:169"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#q:170"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 383 | <span·class="id"·title="keyword">Lemma</span>·<a·id="MinMaxLogicalProperties.min_le_compat"·class="idref"·href="#MinMaxLogicalProperties.min_le_compat"><span·class="id"·title="lemma">min_le_compat</span></a>·<a·id="n:167"·class="idref"·href="#n:167"><span·class="id"·title="binder">n</span></a>·<a·id="m:168"·class="idref"·href="#m:168"><span·class="id"·title="binder">m</span></a>·<a·id="p:169"·class="idref"·href="#p:169"><span·class="id"·title="binder">p</span></a>·<a·id="q:170"·class="idref"·href="#q:170"><span·class="id"·title="binder">q</span></a>·:·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#n:167"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#m:168"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#p:169"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#q:170"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
384 | <a·class="idref"·href="Coq.Structures.GenericMinMax.html#M.min"><span·class="id"·title="axiom">min</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#n:167"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#p:169"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#M.min"><span·class="id"·title="axiom">min</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#m:168"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#q:170"><span·class="id"·title="variable">q</span></a>.<br/> | 384 | <a·class="idref"·href="Coq.Structures.GenericMinMax.html#M.min"><span·class="id"·title="axiom">min</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#n:167"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#p:169"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#6733f1c73babd16d47d3db78628c74d6"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#M.min"><span·class="id"·title="axiom">min</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#m:168"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#q:170"><span·class="id"·title="variable">q</span></a>.<br/> |
385 | <br/> | 385 | <br/> |
386 | </div> | 386 | </div> |
387 | <div·class="doc"> | 387 | <div·class="doc"> |
388 | <a·id="lab | 388 | <a·id="lab685"></a><h3·class="section">Combined·properties·of·min·and·max</h3> |
389 | </div> | 389 | </div> |
390 | <div·class="code"> | 390 | <div·class="code"> |
391 | <br/> | 391 | <br/> |
392 | <span·class="id"·title="keyword">Lemma</span>·<a·id="MinMaxLogicalProperties.min_max_absorption"·class="idref"·href="#MinMaxLogicalProperties.min_max_absorption"><span·class="id"·title="lemma">min_max_absorption</span></a>·<a·id="n:171"·class="idref"·href="#n:171"><span·class="id"·title="binder">n</span></a>·<a·id="m:172"·class="idref"·href="#m:172"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#M.max"><span·class="id"·title="axiom">max</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#n:171"><span·class="id"·title="variable">n</span></a>·(<a·class="idref"·href="Coq.Structures.GenericMinMax.html#M.min"><span·class="id"·title="axiom">min</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#n:171"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#m:172"><span·class="id"·title="variable">m</span></a>)·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#n:171"><span·class="id"·title="variable">n</span></a>.<br/> | 392 | <span·class="id"·title="keyword">Lemma</span>·<a·id="MinMaxLogicalProperties.min_max_absorption"·class="idref"·href="#MinMaxLogicalProperties.min_max_absorption"><span·class="id"·title="lemma">min_max_absorption</span></a>·<a·id="n:171"·class="idref"·href="#n:171"><span·class="id"·title="binder">n</span></a>·<a·id="m:172"·class="idref"·href="#m:172"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#M.max"><span·class="id"·title="axiom">max</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#n:171"><span·class="id"·title="variable">n</span></a>·(<a·class="idref"·href="Coq.Structures.GenericMinMax.html#M.min"><span·class="id"·title="axiom">min</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#n:171"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#m:172"><span·class="id"·title="variable">m</span></a>)·<a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#n:171"><span·class="id"·title="variable">n</span></a>.<br/> |
Offset 465, 15 lines modified | Offset 465, 15 lines modified | ||
465 | <br/> | 465 | <br/> |
466 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#MinMaxLogicalProperties"><span·class="id"·title="module">MinMaxLogicalProperties</span></a>.<br/> | 466 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#MinMaxLogicalProperties"><span·class="id"·title="module">MinMaxLogicalProperties</span></a>.<br/> |
467 | <br/> | 467 | <br/> |
468 | </div> | 468 | </div> |
469 | <div·class="doc"> | 469 | <div·class="doc"> |
470 | <a·id="lab | 470 | <a·id="lab686"></a><h2·class="section">Properties·requiring·a·decidable·order</h2> |
471 | </div> | 471 | </div> |
472 | <div·class="code"> | 472 | <div·class="code"> |
473 | <br/> | 473 | <br/> |
474 | <span·class="id"·title="keyword">Module</span>·<a·id="MinMaxDecProperties"·class="idref"·href="#MinMaxDecProperties"><span·class="id"·title="module">MinMaxDecProperties</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">O</span>:<a·class="idref"·href="Coq.Structures.Orders.html#OrderedTypeFull'"><span·class="id"·title="module">OrderedTypeFull'</span></a>)(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">M</span>:<a·class="idref"·href="Coq.Structures.GenericMinMax.html#HasMinMax"><span·class="id"·title="module">HasMinMax</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#O"><span·class="id"·title="module">O</span></a>).<br/> | 474 | <span·class="id"·title="keyword">Module</span>·<a·id="MinMaxDecProperties"·class="idref"·href="#MinMaxDecProperties"><span·class="id"·title="module">MinMaxDecProperties</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">O</span>:<a·class="idref"·href="Coq.Structures.Orders.html#OrderedTypeFull'"><span·class="id"·title="module">OrderedTypeFull'</span></a>)(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">M</span>:<a·class="idref"·href="Coq.Structures.GenericMinMax.html#HasMinMax"><span·class="id"·title="module">HasMinMax</span></a>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#O"><span·class="id"·title="module">O</span></a>).<br/> |
Offset 545, 15 lines modified | Offset 545, 15 lines modified | ||
545 | <span·class="id"·title="keyword">Notation</span>·<a·id="MinMaxProperties.min_max_antimonotone"·class="idref"·href="#MinMaxProperties.min_max_antimonotone"><span·class="id"·title="abbreviation">min_max_antimonotone</span></a>·:=·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#MinMaxProperties.min_max_antimono"><span·class="id"·title="lemma">min_max_antimono</span></a>.<br/> | 545 | <span·class="id"·title="keyword">Notation</span>·<a·id="MinMaxProperties.min_max_antimonotone"·class="idref"·href="#MinMaxProperties.min_max_antimonotone"><span·class="id"·title="abbreviation">min_max_antimonotone</span></a>·:=·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#MinMaxProperties.min_max_antimono"><span·class="id"·title="lemma">min_max_antimono</span></a>.<br/> |
546 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#MinMaxProperties"><span·class="id"·title="module">MinMaxProperties</span></a>.<br/> | 546 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.GenericMinMax.html#MinMaxProperties"><span·class="id"·title="module">MinMaxProperties</span></a>.<br/> |
547 | <br/> | 547 | <br/> |
548 | </div> | 548 | </div> |
549 | <div·class="doc"> | 549 | <div·class="doc"> |
550 | <a·id="lab | 550 | <a·id="lab687"></a><h2·class="section">When·the·equality·is·Leibniz,·we·can·skip·a·few·<span·class="inlinecode"><span·class="id"·title="var">Proper</span></span>·precondition.</h2> |
551 | </div> | 551 | </div> |
552 | <div·class="code"> | 552 | <div·class="code"> |
Max diff block lines reached; 760/19494 bytes (3.90%) of diff not shown. |
Offset 53, 15 lines modified | Offset 53, 15 lines modified | ||
53 | </div> | 53 | </div> |
54 | <div·class="doc"> | 54 | <div·class="doc"> |
55 | NB:·This·file·is·here·only·for·compatibility·with·earlier·version·of | 55 | NB:·This·file·is·here·only·for·compatibility·with·earlier·version·of |
56 | ·····<span·class="inlinecode"><span·class="id"·title="var">FSets</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">FMap</span></span>.·Please·use·<span·class="inlinecode"><span·class="id"·title="var">Structures</span>/<span·class="id"·title="var">Orders.v</span></span>·directly·now.· | 56 | ·····<span·class="inlinecode"><span·class="id"·title="var">FSets</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">FMap</span></span>.·Please·use·<span·class="inlinecode"><span·class="id"·title="var">Structures</span>/<span·class="id"·title="var">Orders.v</span></span>·directly·now.· |
57 | <div·class="paragraph">·</div> | 57 | <div·class="paragraph">·</div> |
58 | <a·id="lab | 58 | <a·id="lab655"></a><h1·class="section">Ordered·types</h1> |
59 | </div> | 59 | </div> |
60 | <div·class="code"> | 60 | <div·class="code"> |
61 | <br/> | 61 | <br/> |
62 | <span·class="id"·title="keyword">Inductive</span>·<a·id="Compare"·class="idref"·href="#Compare"><span·class="id"·title="definition,·inductive"><span·id="Compare_rect"·class="id"><span·id="Compare_ind"·class="id"><span·id="Compare_rec"·class="id"><span·id="Compare_sind"·class="id">Compare</span></span></span></span></span></a>·(<a·id="X:1"·class="idref"·href="#X:1"><span·class="id"·title="binder">X</span></a>·:·<span·class="id"·title="keyword">Type</span>)·(<a·id="lt:2"·class="idref"·href="#lt:2"><span·class="id"·title="binder">lt</span></a>·<a·id="eq:3"·class="idref"·href="#eq:3"><span·class="id"·title="binder">eq</span></a>·:·<a·class="idref"·href="Coq.Structures.OrderedType.html#X:1"><span·class="id"·title="variable">X</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Structures.OrderedType.html#X:1"><span·class="id"·title="variable">X</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>)·(<a·id="x:4"·class="idref"·href="#x:4"><span·class="id"·title="binder">x</span></a>·<a·id="y:5"·class="idref"·href="#y:5"><span·class="id"·title="binder">y</span></a>·:·<a·class="idref"·href="Coq.Structures.OrderedType.html#X:1"><span·class="id"·title="variable">X</span></a>)·:·<span·class="id"·title="keyword">Type</span>·:=<br/> | 62 | <span·class="id"·title="keyword">Inductive</span>·<a·id="Compare"·class="idref"·href="#Compare"><span·class="id"·title="definition,·inductive"><span·id="Compare_rect"·class="id"><span·id="Compare_ind"·class="id"><span·id="Compare_rec"·class="id"><span·id="Compare_sind"·class="id">Compare</span></span></span></span></span></a>·(<a·id="X:1"·class="idref"·href="#X:1"><span·class="id"·title="binder">X</span></a>·:·<span·class="id"·title="keyword">Type</span>)·(<a·id="lt:2"·class="idref"·href="#lt:2"><span·class="id"·title="binder">lt</span></a>·<a·id="eq:3"·class="idref"·href="#eq:3"><span·class="id"·title="binder">eq</span></a>·:·<a·class="idref"·href="Coq.Structures.OrderedType.html#X:1"><span·class="id"·title="variable">X</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Structures.OrderedType.html#X:1"><span·class="id"·title="variable">X</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>)·(<a·id="x:4"·class="idref"·href="#x:4"><span·class="id"·title="binder">x</span></a>·<a·id="y:5"·class="idref"·href="#y:5"><span·class="id"·title="binder">y</span></a>·:·<a·class="idref"·href="Coq.Structures.OrderedType.html#X:1"><span·class="id"·title="variable">X</span></a>)·:·<span·class="id"·title="keyword">Type</span>·:=<br/> |
63 | |·<a·id="LT"·class="idref"·href="#LT"><span·class="id"·title="constructor">LT</span></a>·:·<a·class="idref"·href="Coq.Structures.OrderedType.html#lt:2"><span·class="id"·title="variable">lt</span></a>·<a·class="idref"·href="Coq.Structures.OrderedType.html#x:4"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Structures.OrderedType.html#y:5"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Structures.OrderedType.html#Compare:6"><span·class="id"·title="inductive">Compare</span></a>·<a·class="idref"·href="Coq.Structures.OrderedType.html#lt:2"><span·class="id"·title="variable">lt</span></a>·<a·class="idref"·href="Coq.Structures.OrderedType.html#eq:3"><span·class="id"·title="variable">eq</span></a>·<a·class="idref"·href="Coq.Structures.OrderedType.html#x:4"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Structures.OrderedType.html#y:5"><span·class="id"·title="variable">y</span></a><br/> | 63 | |·<a·id="LT"·class="idref"·href="#LT"><span·class="id"·title="constructor">LT</span></a>·:·<a·class="idref"·href="Coq.Structures.OrderedType.html#lt:2"><span·class="id"·title="variable">lt</span></a>·<a·class="idref"·href="Coq.Structures.OrderedType.html#x:4"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Structures.OrderedType.html#y:5"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Structures.OrderedType.html#Compare:6"><span·class="id"·title="inductive">Compare</span></a>·<a·class="idref"·href="Coq.Structures.OrderedType.html#lt:2"><span·class="id"·title="variable">lt</span></a>·<a·class="idref"·href="Coq.Structures.OrderedType.html#eq:3"><span·class="id"·title="variable">eq</span></a>·<a·class="idref"·href="Coq.Structures.OrderedType.html#x:4"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Structures.OrderedType.html#y:5"><span·class="id"·title="variable">y</span></a><br/> |
Offset 134, 15 lines modified | Offset 134, 15 lines modified | ||
134 | <br/> | 134 | <br/> |
135 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.OrderedType.html#MOT_to_OT"><span·class="id"·title="module">MOT_to_OT</span></a>.<br/> | 135 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.OrderedType.html#MOT_to_OT"><span·class="id"·title="module">MOT_to_OT</span></a>.<br/> |
136 | <br/> | 136 | <br/> |
137 | </div> | 137 | </div> |
138 | <div·class="doc"> | 138 | <div·class="doc"> |
139 | <a·id="lab | 139 | <a·id="lab656"></a><h1·class="section">Ordered·types·properties</h1> |
140 | <div·class="paragraph">·</div> | 140 | <div·class="paragraph">·</div> |
141 | ·Additional·properties·that·can·be·derived·from·signature | 141 | ·Additional·properties·that·can·be·derived·from·signature |
142 | ····<span·class="inlinecode"><span·class="id"·title="var">OrderedType</span></span>.· | 142 | ····<span·class="inlinecode"><span·class="id"·title="var">OrderedType</span></span>.· |
143 | </div> | 143 | </div> |
144 | <div·class="code"> | 144 | <div·class="code"> |
Offset 46, 15 lines modified | Offset 46, 15 lines modified | ||
46 | <div·class="code"> | 46 | <div·class="code"> |
47 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Structures.OrderedType.html#"><span·class="id"·title="library">OrderedType</span></a>.<br/> | 47 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Structures.OrderedType.html#"><span·class="id"·title="library">OrderedType</span></a>.<br/> |
48 | <br/> | 48 | <br/> |
49 | </div> | 49 | </div> |
50 | <div·class="doc"> | 50 | <div·class="doc"> |
51 | <a·id="lab | 51 | <a·id="lab667"></a><h1·class="section">An·alternative·(but·equivalent)·presentation·for·an·Ordered·Type</h1> |
52 | ···inferface.· | 52 | ···inferface.· |
53 | <div·class="paragraph">·</div> | 53 | <div·class="paragraph">·</div> |
54 | ·NB:·<span·class="inlinecode"><span·class="id"·title="var">comparison</span></span>,·defined·in·<span·class="inlinecode"><span·class="id"·title="var">Datatypes.v</span></span>·is·<span·class="inlinecode"><span·class="id"·title="var">Eq</span>|<span·class="id"·title="var">Lt</span>|<span·class="id"·title="var">Gt</span></span> | 54 | ·NB:·<span·class="inlinecode"><span·class="id"·title="var">comparison</span></span>,·defined·in·<span·class="inlinecode"><span·class="id"·title="var">Datatypes.v</span></span>·is·<span·class="inlinecode"><span·class="id"·title="var">Eq</span>|<span·class="id"·title="var">Lt</span>|<span·class="id"·title="var">Gt</span></span> |
55 | whereas·<span·class="inlinecode"><span·class="id"·title="var">compare</span></span>,·defined·in·<span·class="inlinecode"><span·class="id"·title="var">OrderedType.v</span></span>·is·<span·class="inlinecode"><span·class="id"·title="var">EQ</span></span>·<span·class="inlinecode"><span·class="id"·title="var">_</span></span>·<span·class="inlinecode">|</span>·<span·class="inlinecode"><span·class="id"·title="var">LT</span></span>·<span·class="inlinecode"><span·class="id"·title="var">_</span></span>·<span·class="inlinecode">|</span>·<span·class="inlinecode"><span·class="id"·title="var">GT</span></span>·<span·class="inlinecode"><span·class="id"·title="var">_</span></span>·<span·class="inlinecode"></span> | 55 | whereas·<span·class="inlinecode"><span·class="id"·title="var">compare</span></span>,·defined·in·<span·class="inlinecode"><span·class="id"·title="var">OrderedType.v</span></span>·is·<span·class="inlinecode"><span·class="id"·title="var">EQ</span></span>·<span·class="inlinecode"><span·class="id"·title="var">_</span></span>·<span·class="inlinecode">|</span>·<span·class="inlinecode"><span·class="id"·title="var">LT</span></span>·<span·class="inlinecode"><span·class="id"·title="var">_</span></span>·<span·class="inlinecode">|</span>·<span·class="inlinecode"><span·class="id"·title="var">GT</span></span>·<span·class="inlinecode"><span·class="id"·title="var">_</span></span>·<span·class="inlinecode"></span> |
Offset 52, 15 lines modified | Offset 52, 15 lines modified | ||
52 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Strings.Ascii.html#"><span·class="id"·title="library">Ascii</span></a>·<a·class="idref"·href="Coq.Strings.String.html#"><span·class="id"·title="library">String</span></a>.<br/> | 52 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Strings.Ascii.html#"><span·class="id"·title="library">Ascii</span></a>·<a·class="idref"·href="Coq.Strings.String.html#"><span·class="id"·title="library">String</span></a>.<br/> |
53 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.NArith.NArith.html#"><span·class="id"·title="library">NArith</span></a>·<a·class="idref"·href="Coq.NArith.Ndec.html#"><span·class="id"·title="library">Ndec</span></a>.<br/> | 53 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.NArith.NArith.html#"><span·class="id"·title="library">NArith</span></a>·<a·class="idref"·href="Coq.NArith.Ndec.html#"><span·class="id"·title="library">Ndec</span></a>.<br/> |
54 | <br/> | 54 | <br/> |
55 | </div> | 55 | </div> |
56 | <div·class="doc"> | 56 | <div·class="doc"> |
57 | <a·id="lab | 57 | <a·id="lab678"></a><h1·class="section">Examples·of·Ordered·Type·structures.</h1> |
58 | <div·class="paragraph">·</div> | 58 | <div·class="paragraph">·</div> |
59 | ·First,·a·particular·case·of·<span·class="inlinecode"><span·class="id"·title="var">OrderedType</span></span>·where | 59 | ·First,·a·particular·case·of·<span·class="inlinecode"><span·class="id"·title="var">OrderedType</span></span>·where |
60 | ····the·equality·is·the·usual·one·of·Coq.· | 60 | ····the·equality·is·the·usual·one·of·Coq.· |
61 | </div> | 61 | </div> |
62 | <div·class="code"> | 62 | <div·class="code"> |
Offset 49, 15 lines modified | Offset 49, 15 lines modified | ||
49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.Relations.Relations.html#"><span·class="id"·title="library">Relations</span></a>·<a·class="idref"·href="Coq.Classes.Morphisms.html#"><span·class="id"·title="library">Morphisms</span></a>·<a·class="idref"·href="Coq.Setoids.Setoid.html#"><span·class="id"·title="library">Setoid</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#"><span·class="id"·title="library">Equalities</span></a>.<br/> | 49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.Relations.Relations.html#"><span·class="id"·title="library">Relations</span></a>·<a·class="idref"·href="Coq.Classes.Morphisms.html#"><span·class="id"·title="library">Morphisms</span></a>·<a·class="idref"·href="Coq.Setoids.Setoid.html#"><span·class="id"·title="library">Setoid</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#"><span·class="id"·title="library">Equalities</span></a>.<br/> |
50 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> | 50 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> |
51 | <br/> | 51 | <br/> |
52 | </div> | 52 | </div> |
53 | <div·class="doc"> | 53 | <div·class="doc"> |
54 | <a·id="lab | 54 | <a·id="lab644"></a><h1·class="section">Ordered·types</h1> |
55 | <div·class="paragraph">·</div> | 55 | <div·class="paragraph">·</div> |
56 | ·First,·signatures·with·only·the·order·relations· | 56 | ·First,·signatures·with·only·the·order·relations· |
57 | </div> | 57 | </div> |
58 | <div·class="code"> | 58 | <div·class="code"> |
Offset 184, 15 lines modified | Offset 184, 15 lines modified | ||
184 | <div·class="doc"> | 184 | <div·class="doc"> |
185 | NB:·in·<span·class="inlinecode"><span·class="id"·title="var">OrderedType</span></span>,·an·<span·class="inlinecode"><span·class="id"·title="var">eq_dec</span></span>·could·be·deduced·from·<span·class="inlinecode"><span·class="id"·title="var">compare</span></span>. | 185 | NB:·in·<span·class="inlinecode"><span·class="id"·title="var">OrderedType</span></span>,·an·<span·class="inlinecode"><span·class="id"·title="var">eq_dec</span></span>·could·be·deduced·from·<span·class="inlinecode"><span·class="id"·title="var">compare</span></span>. |
186 | ··But·adding·this·redundant·field·allows·seeing·an·<span·class="inlinecode"><span·class="id"·title="var">OrderedType</span></span>·as·a | 186 | ··But·adding·this·redundant·field·allows·seeing·an·<span·class="inlinecode"><span·class="id"·title="var">OrderedType</span></span>·as·a |
187 | ··<span·class="inlinecode"><span·class="id"·title="var">DecidableType</span></span>.· | 187 | ··<span·class="inlinecode"><span·class="id"·title="var">DecidableType</span></span>.· |
188 | <div·class="paragraph">·</div> | 188 | <div·class="paragraph">·</div> |
189 | <a·id="lab | 189 | <a·id="lab645"></a><h1·class="section">Versions·with·<span·class="inlinecode"><span·class="id"·title="var">eq</span></span>·being·the·usual·Leibniz·equality·of·Coq</h1> |
190 | </div> | 190 | </div> |
191 | <div·class="code"> | 191 | <div·class="code"> |
192 | <br/> | 192 | <br/> |
193 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="UsualStrOrder"·class="idref"·href="#UsualStrOrder"><span·class="id"·title="module">UsualStrOrder</span></a>·:=·<a·class="idref"·href="Coq.Structures.Equalities.html#UsualEqualityType"><span·class="id"·title="module">UsualEqualityType</span></a>·<+·<a·class="idref"·href="Coq.Structures.Orders.html#HasLt"><span·class="id"·title="module">HasLt</span></a>·<+·<a·class="idref"·href="Coq.Structures.Orders.html#IsStrOrder"><span·class="id"·title="module">IsStrOrder</span></a>.<br/> | 193 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="UsualStrOrder"·class="idref"·href="#UsualStrOrder"><span·class="id"·title="module">UsualStrOrder</span></a>·:=·<a·class="idref"·href="Coq.Structures.Equalities.html#UsualEqualityType"><span·class="id"·title="module">UsualEqualityType</span></a>·<+·<a·class="idref"·href="Coq.Structures.Orders.html#HasLt"><span·class="id"·title="module">HasLt</span></a>·<+·<a·class="idref"·href="Coq.Structures.Orders.html#IsStrOrder"><span·class="id"·title="module">IsStrOrder</span></a>.<br/> |
194 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="UsualDecStrOrder"·class="idref"·href="#UsualDecStrOrder"><span·class="id"·title="module">UsualDecStrOrder</span></a>·:=·<a·class="idref"·href="Coq.Structures.Orders.html#UsualStrOrder"><span·class="id"·title="module">UsualStrOrder</span></a>·<+·<a·class="idref"·href="Coq.Structures.Orders.html#HasCompare"><span·class="id"·title="module">HasCompare</span></a>.<br/> | 194 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="UsualDecStrOrder"·class="idref"·href="#UsualDecStrOrder"><span·class="id"·title="module">UsualDecStrOrder</span></a>·:=·<a·class="idref"·href="Coq.Structures.Orders.html#UsualStrOrder"><span·class="id"·title="module">UsualStrOrder</span></a>·<+·<a·class="idref"·href="Coq.Structures.Orders.html#HasCompare"><span·class="id"·title="module">HasCompare</span></a>.<br/> |
Offset 216, 15 lines modified | Offset 216, 15 lines modified | ||
216 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="UsualOrderedType'"·class="idref"·href="#UsualOrderedType'"><span·class="id"·title="module">UsualOrderedType'</span></a>·:=·<a·class="idref"·href="Coq.Structures.Orders.html#UsualOrderedType"><span·class="id"·title="module">UsualOrderedType</span></a>·<+·<a·class="idref"·href="Coq.Structures.Orders.html#LtNotation"><span·class="id"·title="module">LtNotation</span></a>.<br/> | 216 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="UsualOrderedType'"·class="idref"·href="#UsualOrderedType'"><span·class="id"·title="module">UsualOrderedType'</span></a>·:=·<a·class="idref"·href="Coq.Structures.Orders.html#UsualOrderedType"><span·class="id"·title="module">UsualOrderedType</span></a>·<+·<a·class="idref"·href="Coq.Structures.Orders.html#LtNotation"><span·class="id"·title="module">LtNotation</span></a>.<br/> |
217 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="UsualOrderedTypeFull'"·class="idref"·href="#UsualOrderedTypeFull'"><span·class="id"·title="module">UsualOrderedTypeFull'</span></a>·:=·<a·class="idref"·href="Coq.Structures.Orders.html#UsualOrderedTypeFull"><span·class="id"·title="module">UsualOrderedTypeFull</span></a>·<+·<a·class="idref"·href="Coq.Structures.Orders.html#LtLeNotation"><span·class="id"·title="module">LtLeNotation</span></a>.<br/> | 217 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="UsualOrderedTypeFull'"·class="idref"·href="#UsualOrderedTypeFull'"><span·class="id"·title="module">UsualOrderedTypeFull'</span></a>·:=·<a·class="idref"·href="Coq.Structures.Orders.html#UsualOrderedTypeFull"><span·class="id"·title="module">UsualOrderedTypeFull</span></a>·<+·<a·class="idref"·href="Coq.Structures.Orders.html#LtLeNotation"><span·class="id"·title="module">LtLeNotation</span></a>.<br/> |
218 | <br/> | 218 | <br/> |
219 | </div> | 219 | </div> |
220 | <div·class="doc"> | 220 | <div·class="doc"> |
221 | <a·id="lab | 221 | <a·id="lab646"></a><h1·class="section">Purely·logical·versions</h1> |
222 | </div> | 222 | </div> |
223 | <div·class="code"> | 223 | <div·class="code"> |
224 | <br/> | 224 | <br/> |
225 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="LtIsTotal"·class="idref"·href="#LtIsTotal"><span·class="id"·title="module">LtIsTotal</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">E</span>:<a·class="idref"·href="Coq.Structures.Orders.html#EqLt'"><span·class="id"·title="module">EqLt'</span></a>).<br/> | 225 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="LtIsTotal"·class="idref"·href="#LtIsTotal"><span·class="id"·title="module">LtIsTotal</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">E</span>:<a·class="idref"·href="Coq.Structures.Orders.html#EqLt'"><span·class="id"·title="module">EqLt'</span></a>).<br/> |
226 | <span·class="id"·title="keyword">Axiom</span>·<a·id="LtIsTotal.lt_total"·class="idref"·href="#LtIsTotal.lt_total"><span·class="id"·title="axiom">lt_total</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:15"·class="idref"·href="#x:15"><span·class="id"·title="binder">x</span></a>·<a·id="y:16"·class="idref"·href="#y:16"><span·class="id"·title="binder">y</span></a>,·<a·class="idref"·href="Coq.Structures.Orders.html#x:15"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Structures.Orders.html#LtNotation.:::x_'<'_x"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Structures.Orders.html#y:16"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#x:15"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a><a·class="idref"·href="Coq.Structures.Orders.html#y:16"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#y:16"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.Structures.Orders.html#LtNotation.:::x_'<'_x"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Structures.Orders.html#x:15"><span·class="id"·title="variable">x</span></a>.<br/> | 226 | <span·class="id"·title="keyword">Axiom</span>·<a·id="LtIsTotal.lt_total"·class="idref"·href="#LtIsTotal.lt_total"><span·class="id"·title="axiom">lt_total</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="x:15"·class="idref"·href="#x:15"><span·class="id"·title="binder">x</span></a>·<a·id="y:16"·class="idref"·href="#y:16"><span·class="id"·title="binder">y</span></a>,·<a·class="idref"·href="Coq.Structures.Orders.html#x:15"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Structures.Orders.html#LtNotation.:::x_'<'_x"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Structures.Orders.html#y:16"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#x:15"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a><a·class="idref"·href="Coq.Structures.Orders.html#y:16"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#y:16"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.Structures.Orders.html#LtNotation.:::x_'<'_x"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Structures.Orders.html#x:15"><span·class="id"·title="variable">x</span></a>.<br/> |
Offset 239, 15 lines modified | Offset 239, 15 lines modified | ||
239 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="TotalOrder'"·class="idref"·href="#TotalOrder'"><span·class="id"·title="module">TotalOrder'</span></a>·:=·<a·class="idref"·href="Coq.Structures.Orders.html#TotalOrder"><span·class="id"·title="module">TotalOrder</span></a>·<+·<a·class="idref"·href="Coq.Structures.Orders.html#EqLtLeNotation"><span·class="id"·title="module">EqLtLeNotation</span></a>.<br/> | 239 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="TotalOrder'"·class="idref"·href="#TotalOrder'"><span·class="id"·title="module">TotalOrder'</span></a>·:=·<a·class="idref"·href="Coq.Structures.Orders.html#TotalOrder"><span·class="id"·title="module">TotalOrder</span></a>·<+·<a·class="idref"·href="Coq.Structures.Orders.html#EqLtLeNotation"><span·class="id"·title="module">EqLtLeNotation</span></a>.<br/> |
240 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="UsualTotalOrder'"·class="idref"·href="#UsualTotalOrder'"><span·class="id"·title="module">UsualTotalOrder'</span></a>·:=·<a·class="idref"·href="Coq.Structures.Orders.html#UsualTotalOrder"><span·class="id"·title="module">UsualTotalOrder</span></a>·<+·<a·class="idref"·href="Coq.Structures.Orders.html#LtLeNotation"><span·class="id"·title="module">LtLeNotation</span></a>.<br/> | 240 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="UsualTotalOrder'"·class="idref"·href="#UsualTotalOrder'"><span·class="id"·title="module">UsualTotalOrder'</span></a>·:=·<a·class="idref"·href="Coq.Structures.Orders.html#UsualTotalOrder"><span·class="id"·title="module">UsualTotalOrder</span></a>·<+·<a·class="idref"·href="Coq.Structures.Orders.html#LtLeNotation"><span·class="id"·title="module">LtLeNotation</span></a>.<br/> |
241 | <br/> | 241 | <br/> |
242 | </div> | 242 | </div> |
243 | <div·class="doc"> | 243 | <div·class="doc"> |
244 | <a·id="lab | 244 | <a·id="lab647"></a><h1·class="section">Conversions</h1> |
245 | <div·class="paragraph">·</div> | 245 | <div·class="paragraph">·</div> |
246 | ·From·<span·class="inlinecode"><span·class="id"·title="var">compare</span></span>·to·<span·class="inlinecode"><span·class="id"·title="var">eqb</span></span>,·and·then·<span·class="inlinecode"><span·class="id"·title="var">eq_dec</span></span>· | 246 | ·From·<span·class="inlinecode"><span·class="id"·title="var">compare</span></span>·to·<span·class="inlinecode"><span·class="id"·title="var">eqb</span></span>,·and·then·<span·class="inlinecode"><span·class="id"·title="var">eq_dec</span></span>· |
247 | </div> | 247 | </div> |
248 | <div·class="code"> | 248 | <div·class="code"> |
Offset 300, 15 lines modified | Offset 300, 15 lines modified | ||
300 | <span·class="id"·title="keyword">Module</span>·<a·id="OTF_to_TotalOrder"·class="idref"·href="#OTF_to_TotalOrder"><span·class="id"·title="module">OTF_to_TotalOrder</span></a>·(<span·class="id"·title="var">O</span>:<a·class="idref"·href="Coq.Structures.Orders.html#OrderedTypeFull"><span·class="id"·title="module">OrderedTypeFull</span></a>)·<:·<a·class="idref"·href="Coq.Structures.Orders.html#TotalOrder"><span·class="id"·title="module">TotalOrder</span></a><br/> | 300 | <span·class="id"·title="keyword">Module</span>·<a·id="OTF_to_TotalOrder"·class="idref"·href="#OTF_to_TotalOrder"><span·class="id"·title="module">OTF_to_TotalOrder</span></a>·(<span·class="id"·title="var">O</span>:<a·class="idref"·href="Coq.Structures.Orders.html#OrderedTypeFull"><span·class="id"·title="module">OrderedTypeFull</span></a>)·<:·<a·class="idref"·href="Coq.Structures.Orders.html#TotalOrder"><span·class="id"·title="module">TotalOrder</span></a><br/> |
301 | :=·<a·class="idref"·href="Coq.Structures.Orders.html#O"><span·class="id"·title="module">O</span></a>·<+·<a·class="idref"·href="Coq.Structures.Orders.html#OTF_LtIsTotal"><span·class="id"·title="module">OTF_LtIsTotal</span></a>.<br/> | 301 | :=·<a·class="idref"·href="Coq.Structures.Orders.html#O"><span·class="id"·title="module">O</span></a>·<+·<a·class="idref"·href="Coq.Structures.Orders.html#OTF_LtIsTotal"><span·class="id"·title="module">OTF_LtIsTotal</span></a>.<br/> |
302 | <br/> | 302 | <br/> |
303 | </div> | 303 | </div> |
304 | <div·class="doc"> | 304 | <div·class="doc"> |
305 | <a·id="lab | 305 | <a·id="lab648"></a><h1·class="section">Versions·with·boolean·comparisons</h1> |
306 | <div·class="paragraph">·</div> | 306 | <div·class="paragraph">·</div> |
307 | ····This·style·is·used·in·<span·class="inlinecode"><span·class="id"·title="var">Mergesort</span></span> | 307 | ····This·style·is·used·in·<span·class="inlinecode"><span·class="id"·title="var">Mergesort</span></span> |
308 | <div·class="paragraph">·</div> | 308 | <div·class="paragraph">·</div> |
Offset 402, 15 lines modified | Offset 402, 15 lines modified | ||
402 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="OrderFunctions'"·class="idref"·href="#OrderFunctions'"><span·class="id"·title="module">OrderFunctions'</span></a>·(<span·class="id"·title="var">E</span>:<a·class="idref"·href="Coq.Structures.Orders.html#EqLtLe"><span·class="id"·title="module">EqLtLe</span></a>)·:=<br/> | 402 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="OrderFunctions'"·class="idref"·href="#OrderFunctions'"><span·class="id"·title="module">OrderFunctions'</span></a>·(<span·class="id"·title="var">E</span>:<a·class="idref"·href="Coq.Structures.Orders.html#EqLtLe"><span·class="id"·title="module">EqLtLe</span></a>)·:=<br/> |
403 | <a·class="idref"·href="Coq.Structures.Orders.html#HasCompare"><span·class="id"·title="module">HasCompare</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#E"><span·class="id"·title="module">E</span></a>·<+·<a·class="idref"·href="Coq.Structures.Orders.html#CmpNotation"><span·class="id"·title="module">CmpNotation</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#E"><span·class="id"·title="module">E</span></a>·<+·<a·class="idref"·href="Coq.Structures.Orders.html#HasBoolOrdFuns'"><span·class="id"·title="module">HasBoolOrdFuns'</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#E"><span·class="id"·title="module">E</span></a>·<+·<a·class="idref"·href="Coq.Structures.Orders.html#BoolOrdSpecs"><span·class="id"·title="module">BoolOrdSpecs</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#E"><span·class="id"·title="module">E</span></a>.<br/> | 403 | <a·class="idref"·href="Coq.Structures.Orders.html#HasCompare"><span·class="id"·title="module">HasCompare</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#E"><span·class="id"·title="module">E</span></a>·<+·<a·class="idref"·href="Coq.Structures.Orders.html#CmpNotation"><span·class="id"·title="module">CmpNotation</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#E"><span·class="id"·title="module">E</span></a>·<+·<a·class="idref"·href="Coq.Structures.Orders.html#HasBoolOrdFuns'"><span·class="id"·title="module">HasBoolOrdFuns'</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#E"><span·class="id"·title="module">E</span></a>·<+·<a·class="idref"·href="Coq.Structures.Orders.html#BoolOrdSpecs"><span·class="id"·title="module">BoolOrdSpecs</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#E"><span·class="id"·title="module">E</span></a>.<br/> |
404 | <br/> | 404 | <br/> |
405 | </div> | 405 | </div> |
406 | <div·class="doc"> | 406 | <div·class="doc"> |
407 | <a·id="lab | 407 | <a·id="lab649"></a><h1·class="section">From·<span·class="inlinecode"><span·class="id"·title="var">OrderedTypeFull</span></span>·to·<span·class="inlinecode"><span·class="id"·title="var">TotalTransitiveLeBool</span></span></h1> |
408 | </div> | 408 | </div> |
409 | <div·class="code"> | 409 | <div·class="code"> |
410 | <br/> | 410 | <br/> |
411 | <span·class="id"·title="keyword">Module</span>·<a·id="OTF_to_TTLB"·class="idref"·href="#OTF_to_TTLB"><span·class="id"·title="module">OTF_to_TTLB</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">O</span>·:·<a·class="idref"·href="Coq.Structures.Orders.html#OrderedTypeFull'"><span·class="id"·title="module">OrderedTypeFull'</span></a>)·<:·<a·class="idref"·href="Coq.Structures.Orders.html#TotalTransitiveLeBool"><span·class="id"·title="module">TotalTransitiveLeBool</span></a>.<br/> | 411 | <span·class="id"·title="keyword">Module</span>·<a·id="OTF_to_TTLB"·class="idref"·href="#OTF_to_TTLB"><span·class="id"·title="module">OTF_to_TTLB</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">O</span>·:·<a·class="idref"·href="Coq.Structures.Orders.html#OrderedTypeFull'"><span·class="id"·title="module">OrderedTypeFull'</span></a>)·<:·<a·class="idref"·href="Coq.Structures.Orders.html#TotalTransitiveLeBool"><span·class="id"·title="module">TotalTransitiveLeBool</span></a>.<br/> |
Offset 433, 15 lines modified | Offset 433, 15 lines modified | ||
433 | <br/> | 433 | <br/> |
434 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.Orders.html#OTF_to_TTLB"><span·class="id"·title="module">OTF_to_TTLB</span></a>.<br/> | 434 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.Orders.html#OTF_to_TTLB"><span·class="id"·title="module">OTF_to_TTLB</span></a>.<br/> |
435 | <br/> | 435 | <br/> |
436 | </div> | 436 | </div> |
437 | <div·class="doc"> | 437 | <div·class="doc"> |
438 | <a·id="lab | 438 | <a·id="lab650"></a><h1·class="section">From·<span·class="inlinecode"><span·class="id"·title="var">TotalTransitiveLeBool</span></span>·to·<span·class="inlinecode"><span·class="id"·title="var">OrderedTypeFull</span></span></h1> |
439 | <div·class="paragraph">·</div> | 439 | <div·class="paragraph">·</div> |
440 | ····<span·class="inlinecode"><span·class="id"·title="var">le</span></span>·is·<span·class="inlinecode"><span·class="id"·title="var">leb</span></span>·<span·class="inlinecode">...</span>·<span·class="inlinecode">=</span>·<span·class="inlinecode"><span·class="id"·title="var">true</span></span>. | 440 | ····<span·class="inlinecode"><span·class="id"·title="var">le</span></span>·is·<span·class="inlinecode"><span·class="id"·title="var">leb</span></span>·<span·class="inlinecode">...</span>·<span·class="inlinecode">=</span>·<span·class="inlinecode"><span·class="id"·title="var">true</span></span>. |
441 | ····<span·class="inlinecode"><span·class="id"·title="var">eq</span></span>·is·<span·class="inlinecode"><span·class="id"·title="var">le</span></span>·<span·class="inlinecode">/\</span>·<span·class="inlinecode"><span·class="id"·title="var">swap</span></span>·<span·class="inlinecode"><span·class="id"·title="var">le</span></span>. | 441 | ····<span·class="inlinecode"><span·class="id"·title="var">eq</span></span>·is·<span·class="inlinecode"><span·class="id"·title="var">le</span></span>·<span·class="inlinecode">/\</span>·<span·class="inlinecode"><span·class="id"·title="var">swap</span></span>·<span·class="inlinecode"><span·class="id"·title="var">le</span></span>. |
442 | ····<span·class="inlinecode"><span·class="id"·title="var">lt</span></span>·is·<span·class="inlinecode"><span·class="id"·title="var">le</span></span>·<span·class="inlinecode">/\</span>·<span·class="inlinecode">~<span·class="id"·title="var">swap</span></span>·<span·class="inlinecode"><span·class="id"·title="var">le</span></span>. | 442 | ····<span·class="inlinecode"><span·class="id"·title="var">lt</span></span>·is·<span·class="inlinecode"><span·class="id"·title="var">le</span></span>·<span·class="inlinecode">/\</span>·<span·class="inlinecode">~<span·class="id"·title="var">swap</span></span>·<span·class="inlinecode"><span·class="id"·title="var">le</span></span>. |
Offset 51, 32 lines modified | Offset 51, 32 lines modified | ||
51 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Structures.OrderedType.html#"><span·class="id"·title="library">OrderedType</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#"><span·class="id"·title="library">Orders</span></a>.<br/> | 51 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Structures.OrderedType.html#"><span·class="id"·title="library">OrderedType</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#"><span·class="id"·title="library">Orders</span></a>.<br/> |
52 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> | 52 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> |
53 | <br/> | 53 | <br/> |
54 | </div> | 54 | </div> |
55 | <div·class="doc"> | 55 | <div·class="doc"> |
56 | <a·id="lab | 56 | <a·id="lab692"></a><h1·class="section">Some·alternative·(but·equivalent)·presentations·for·an·Ordered·Type</h1> |
57 | ···inferface.· | 57 | ···inferface.· |
58 | <div·class="paragraph">·</div> | 58 | <div·class="paragraph">·</div> |
59 | <a·id="lab | 59 | <a·id="lab693"></a><h2·class="section">The·original·interface</h2> |
60 | </div> | 60 | </div> |
61 | <div·class="code"> | 61 | <div·class="code"> |
62 | <br/> | 62 | <br/> |
63 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="OrderedTypeOrig"·class="idref"·href="#OrderedTypeOrig"><span·class="id"·title="module">OrderedTypeOrig</span></a>·:=·<a·class="idref"·href="Coq.Structures.OrderedType.html#OrderedType"><span·class="id"·title="module">OrderedType.OrderedType</span></a>.<br/> | 63 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="OrderedTypeOrig"·class="idref"·href="#OrderedTypeOrig"><span·class="id"·title="module">OrderedTypeOrig</span></a>·:=·<a·class="idref"·href="Coq.Structures.OrderedType.html#OrderedType"><span·class="id"·title="module">OrderedType.OrderedType</span></a>.<br/> |
64 | <br/> | 64 | <br/> |
65 | </div> | 65 | </div> |
66 | <div·class="doc"> | 66 | <div·class="doc"> |
67 | <a·id="lab | 67 | <a·id="lab694"></a><h2·class="section">An·interface·based·on·compare</h2> |
68 | </div> | 68 | </div> |
69 | <div·class="code"> | 69 | <div·class="code"> |
70 | <br/> | 70 | <br/> |
71 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="OrderedTypeAlt"·class="idref"·href="#OrderedTypeAlt"><span·class="id"·title="module">OrderedTypeAlt</span></a>.<br/> | 71 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="OrderedTypeAlt"·class="idref"·href="#OrderedTypeAlt"><span·class="id"·title="module">OrderedTypeAlt</span></a>.<br/> |
Offset 98, 15 lines modified | Offset 98, 15 lines modified | ||
98 | <br/> | 98 | <br/> |
99 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.OrdersAlt.html#OrderedTypeAlt"><span·class="id"·title="module">OrderedTypeAlt</span></a>.<br/> | 99 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.OrdersAlt.html#OrderedTypeAlt"><span·class="id"·title="module">OrderedTypeAlt</span></a>.<br/> |
100 | <br/> | 100 | <br/> |
101 | </div> | 101 | </div> |
102 | <div·class="doc"> | 102 | <div·class="doc"> |
103 | <a·id="lab | 103 | <a·id="lab695"></a><h2·class="section">From·OrderedTypeOrig·to·OrderedType.</h2> |
104 | </div> | 104 | </div> |
105 | <div·class="code"> | 105 | <div·class="code"> |
106 | <br/> | 106 | <br/> |
107 | <span·class="id"·title="keyword">Module</span>·<a·id="Update_OT"·class="idref"·href="#Update_OT"><span·class="id"·title="module">Update_OT</span></a>·(<span·class="id"·title="var">O</span>:<a·class="idref"·href="Coq.Structures.OrdersAlt.html#OrderedTypeOrig"><span·class="id"·title="module">OrderedTypeOrig</span></a>)·<:·<a·class="idref"·href="Coq.Structures.Orders.html#OrderedType"><span·class="id"·title="module">OrderedType</span></a>.<br/> | 107 | <span·class="id"·title="keyword">Module</span>·<a·id="Update_OT"·class="idref"·href="#Update_OT"><span·class="id"·title="module">Update_OT</span></a>·(<span·class="id"·title="var">O</span>:<a·class="idref"·href="Coq.Structures.OrdersAlt.html#OrderedTypeOrig"><span·class="id"·title="module">OrderedTypeOrig</span></a>)·<:·<a·class="idref"·href="Coq.Structures.Orders.html#OrderedType"><span·class="id"·title="module">OrderedType</span></a>.<br/> |
Offset 137, 15 lines modified | Offset 137, 15 lines modified | ||
137 | <br/> | 137 | <br/> |
138 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.OrdersAlt.html#Update_OT"><span·class="id"·title="module">Update_OT</span></a>.<br/> | 138 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.OrdersAlt.html#Update_OT"><span·class="id"·title="module">Update_OT</span></a>.<br/> |
139 | <br/> | 139 | <br/> |
140 | </div> | 140 | </div> |
141 | <div·class="doc"> | 141 | <div·class="doc"> |
142 | <a·id="lab | 142 | <a·id="lab696"></a><h2·class="section">From·OrderedType·to·OrderedTypeOrig.</h2> |
143 | </div> | 143 | </div> |
144 | <div·class="code"> | 144 | <div·class="code"> |
145 | <br/> | 145 | <br/> |
146 | <span·class="id"·title="keyword">Module</span>·<a·id="Backport_OT"·class="idref"·href="#Backport_OT"><span·class="id"·title="module">Backport_OT</span></a>·(<span·class="id"·title="var">O</span>:<a·class="idref"·href="Coq.Structures.Orders.html#OrderedType"><span·class="id"·title="module">OrderedType</span></a>)·<:·<a·class="idref"·href="Coq.Structures.OrdersAlt.html#OrderedTypeOrig"><span·class="id"·title="module">OrderedTypeOrig</span></a>.<br/> | 146 | <span·class="id"·title="keyword">Module</span>·<a·id="Backport_OT"·class="idref"·href="#Backport_OT"><span·class="id"·title="module">Backport_OT</span></a>·(<span·class="id"·title="var">O</span>:<a·class="idref"·href="Coq.Structures.Orders.html#OrderedType"><span·class="id"·title="module">OrderedType</span></a>)·<:·<a·class="idref"·href="Coq.Structures.OrdersAlt.html#OrderedTypeOrig"><span·class="id"·title="module">OrderedTypeOrig</span></a>.<br/> |
Offset 166, 15 lines modified | Offset 166, 15 lines modified | ||
166 | <br/> | 166 | <br/> |
167 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.OrdersAlt.html#Backport_OT"><span·class="id"·title="module">Backport_OT</span></a>.<br/> | 167 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.OrdersAlt.html#Backport_OT"><span·class="id"·title="module">Backport_OT</span></a>.<br/> |
168 | <br/> | 168 | <br/> |
169 | </div> | 169 | </div> |
170 | <div·class="doc"> | 170 | <div·class="doc"> |
171 | <a·id="lab | 171 | <a·id="lab697"></a><h2·class="section">From·OrderedTypeAlt·to·OrderedType.</h2> |
172 | </div> | 172 | </div> |
173 | <div·class="code"> | 173 | <div·class="code"> |
174 | <br/> | 174 | <br/> |
175 | <span·class="id"·title="keyword">Module</span>·<a·id="OT_from_Alt"·class="idref"·href="#OT_from_Alt"><span·class="id"·title="module">OT_from_Alt</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">O</span>:<a·class="idref"·href="Coq.Structures.OrdersAlt.html#OrderedTypeAlt"><span·class="id"·title="module">OrderedTypeAlt</span></a>)·<:·<a·class="idref"·href="Coq.Structures.Orders.html#OrderedType"><span·class="id"·title="module">OrderedType</span></a>.<br/> | 175 | <span·class="id"·title="keyword">Module</span>·<a·id="OT_from_Alt"·class="idref"·href="#OT_from_Alt"><span·class="id"·title="module">OT_from_Alt</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">O</span>:<a·class="idref"·href="Coq.Structures.OrdersAlt.html#OrderedTypeAlt"><span·class="id"·title="module">OrderedTypeAlt</span></a>)·<:·<a·class="idref"·href="Coq.Structures.Orders.html#OrderedType"><span·class="id"·title="module">OrderedType</span></a>.<br/> |
Offset 52, 15 lines modified | Offset 52, 15 lines modified | ||
52 | <a·class="idref"·href="Coq.Classes.RelationPairs.html#"><span·class="id"·title="library">RelationPairs</span></a>·<a·class="idref"·href="Coq.Structures.EqualitiesFacts.html#"><span·class="id"·title="library">EqualitiesFacts</span></a>.<br/> | 52 | <a·class="idref"·href="Coq.Classes.RelationPairs.html#"><span·class="id"·title="library">RelationPairs</span></a>·<a·class="idref"·href="Coq.Structures.EqualitiesFacts.html#"><span·class="id"·title="library">EqualitiesFacts</span></a>.<br/> |
53 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Strings.Ascii.html#"><span·class="id"·title="library">Ascii</span></a>·<a·class="idref"·href="Coq.Strings.String.html#"><span·class="id"·title="library">String</span></a>.<br/> | 53 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Strings.Ascii.html#"><span·class="id"·title="library">Ascii</span></a>·<a·class="idref"·href="Coq.Strings.String.html#"><span·class="id"·title="library">String</span></a>.<br/> |
54 | <br/> | 54 | <br/> |
55 | </div> | 55 | </div> |
56 | <div·class="doc"> | 56 | <div·class="doc"> |
57 | <a·id="lab | 57 | <a·id="lab666"></a><h1·class="section">Examples·of·Ordered·Type·structures.</h1> |
58 | <div·class="paragraph">·</div> | 58 | <div·class="paragraph">·</div> |
59 | ·Ordered·Type·for·<span·class="inlinecode"><span·class="id"·title="var">bool</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">nat</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">Positive</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">N</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">Z</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">ascii</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">string</span></span>·with·the·usual·or·lexicographic·order.· | 59 | ·Ordered·Type·for·<span·class="inlinecode"><span·class="id"·title="var">bool</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">nat</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">Positive</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">N</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">Z</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">ascii</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">string</span></span>·with·the·usual·or·lexicographic·order.· |
60 | </div> | 60 | </div> |
61 | <div·class="code"> | 61 | <div·class="code"> |
Offset 52, 15 lines modified | Offset 52, 15 lines modified | ||
52 | <br/> | 52 | <br/> |
53 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> | 53 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> |
54 | <br/> | 54 | <br/> |
55 | </div> | 55 | </div> |
56 | <div·class="doc"> | 56 | <div·class="doc"> |
57 | <a·id="lab | 57 | <a·id="lab657"></a><h1·class="section">Properties·of·<span·class="inlinecode"><span·class="id"·title="var">compare</span></span></h1> |
58 | </div> | 58 | </div> |
59 | <div·class="code"> | 59 | <div·class="code"> |
60 | <br/> | 60 | <br/> |
61 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="CompareFacts"·class="idref"·href="#CompareFacts"><span·class="id"·title="module">CompareFacts</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">O</span>:<a·class="idref"·href="Coq.Structures.Orders.html#DecStrOrder'"><span·class="id"·title="module">DecStrOrder'</span></a>).<br/> | 61 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="CompareFacts"·class="idref"·href="#CompareFacts"><span·class="id"·title="module">CompareFacts</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">O</span>:<a·class="idref"·href="Coq.Structures.Orders.html#DecStrOrder'"><span·class="id"·title="module">DecStrOrder'</span></a>).<br/> |
Offset 101, 15 lines modified | Offset 101, 15 lines modified | ||
101 | <br/> | 101 | <br/> |
102 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.OrdersFacts.html#CompareFacts"><span·class="id"·title="module">CompareFacts</span></a>.<br/> | 102 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.OrdersFacts.html#CompareFacts"><span·class="id"·title="module">CompareFacts</span></a>.<br/> |
103 | <br/> | 103 | <br/> |
104 | </div> | 104 | </div> |
105 | <div·class="doc"> | 105 | <div·class="doc"> |
106 | <a·id="lab | 106 | <a·id="lab658"></a><h1·class="section">Properties·of·<span·class="inlinecode"><span·class="id"·title="var">OrderedTypeFull</span></span></h1> |
107 | </div> | 107 | </div> |
108 | <div·class="code"> | 108 | <div·class="code"> |
109 | <br/> | 109 | <br/> |
110 | <span·class="id"·title="keyword">Module</span>·<a·id="OrderedTypeFullFacts"·class="idref"·href="#OrderedTypeFullFacts"><span·class="id"·title="module">OrderedTypeFullFacts</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">O</span>:<a·class="idref"·href="Coq.Structures.Orders.html#OrderedTypeFull'"><span·class="id"·title="module">OrderedTypeFull'</span></a>).<br/> | 110 | <span·class="id"·title="keyword">Module</span>·<a·id="OrderedTypeFullFacts"·class="idref"·href="#OrderedTypeFullFacts"><span·class="id"·title="module">OrderedTypeFullFacts</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">O</span>:<a·class="idref"·href="Coq.Structures.Orders.html#OrderedTypeFull'"><span·class="id"·title="module">OrderedTypeFull'</span></a>).<br/> |
Offset 161, 15 lines modified | Offset 161, 15 lines modified | ||
161 | <br/> | 161 | <br/> |
162 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.OrdersFacts.html#OrderedTypeFullFacts"><span·class="id"·title="module">OrderedTypeFullFacts</span></a>.<br/> | 162 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.OrdersFacts.html#OrderedTypeFullFacts"><span·class="id"·title="module">OrderedTypeFullFacts</span></a>.<br/> |
163 | <br/> | 163 | <br/> |
164 | </div> | 164 | </div> |
165 | <div·class="doc"> | 165 | <div·class="doc"> |
166 | <a·id="lab | 166 | <a·id="lab659"></a><h1·class="section">Properties·of·<span·class="inlinecode"><span·class="id"·title="var">OrderedType</span></span></h1> |
167 | </div> | 167 | </div> |
168 | <div·class="code"> | 168 | <div·class="code"> |
169 | <br/> | 169 | <br/> |
170 | <span·class="id"·title="keyword">Module</span>·<a·id="OrderedTypeFacts"·class="idref"·href="#OrderedTypeFacts"><span·class="id"·title="module">OrderedTypeFacts</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">O</span>:·<a·class="idref"·href="Coq.Structures.Orders.html#OrderedType'"><span·class="id"·title="module">OrderedType'</span></a>).<br/> | 170 | <span·class="id"·title="keyword">Module</span>·<a·id="OrderedTypeFacts"·class="idref"·href="#OrderedTypeFacts"><span·class="id"·title="module">OrderedTypeFacts</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">O</span>:·<a·class="idref"·href="Coq.Structures.Orders.html#OrderedType'"><span·class="id"·title="module">OrderedType'</span></a>).<br/> |
Offset 256, 15 lines modified | Offset 256, 15 lines modified | ||
256 | <br/> | 256 | <br/> |
257 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.OrdersFacts.html#OrderedTypeFacts"><span·class="id"·title="module">OrderedTypeFacts</span></a>.<br/> | 257 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.OrdersFacts.html#OrderedTypeFacts"><span·class="id"·title="module">OrderedTypeFacts</span></a>.<br/> |
258 | <br/> | 258 | <br/> |
259 | </div> | 259 | </div> |
260 | <div·class="doc"> | 260 | <div·class="doc"> |
261 | <a·id="lab | 261 | <a·id="lab660"></a><h1·class="section">Tests·of·the·order·tactic</h1> |
262 | <div·class="paragraph">·</div> | 262 | <div·class="paragraph">·</div> |
263 | ····Is·it·at·least·capable·of·proving·some·basic·properties·?· | 263 | ····Is·it·at·least·capable·of·proving·some·basic·properties·?· |
264 | </div> | 264 | </div> |
265 | <div·class="code"> | 265 | <div·class="code"> |
Offset 294, 15 lines modified | Offset 294, 15 lines modified | ||
294 | <span·class="id"·title="keyword">Lemma</span>·<a·id="OrderedTypeTest.eq_is_nlt_ngt"·class="idref"·href="#OrderedTypeTest.eq_is_nlt_ngt"><span·class="id"·title="lemma">eq_is_nlt_ngt</span></a>·<a·id="x:96"·class="idref"·href="#x:96"><span·class="id"·title="binder">x</span></a>·<a·id="y:97"·class="idref"·href="#y:97"><span·class="id"·title="binder">y</span></a>·:·<a·class="idref"·href="Coq.Structures.OrdersFacts.html#x:96"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a><a·class="idref"·href="Coq.Structures.OrdersFacts.html#y:97"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~</span></a><a·class="idref"·href="Coq.Structures.OrdersFacts.html#x:96"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Structures.Orders.html#LtNotation.:::x_'<'_x"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Structures.OrdersFacts.html#y:97"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~</span></a><a·class="idref"·href="Coq.Structures.OrdersFacts.html#y:97"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.Structures.Orders.html#LtNotation.:::x_'<'_x"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Structures.OrdersFacts.html#x:96"><span·class="id"·title="variable">x</span></a>.<br/> | 294 | <span·class="id"·title="keyword">Lemma</span>·<a·id="OrderedTypeTest.eq_is_nlt_ngt"·class="idref"·href="#OrderedTypeTest.eq_is_nlt_ngt"><span·class="id"·title="lemma">eq_is_nlt_ngt</span></a>·<a·id="x:96"·class="idref"·href="#x:96"><span·class="id"·title="binder">x</span></a>·<a·id="y:97"·class="idref"·href="#y:97"><span·class="id"·title="binder">y</span></a>·:·<a·class="idref"·href="Coq.Structures.OrdersFacts.html#x:96"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Structures.Equalities.html#a3a0575149632d194e420f6edb9b2362"><span·class="id"·title="notation">==</span></a><a·class="idref"·href="Coq.Structures.OrdersFacts.html#y:97"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~</span></a><a·class="idref"·href="Coq.Structures.OrdersFacts.html#x:96"><span·class="id"·title="variable">x</span></a><a·class="idref"·href="Coq.Structures.Orders.html#LtNotation.:::x_'<'_x"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Structures.OrdersFacts.html#y:97"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~</span></a><a·class="idref"·href="Coq.Structures.OrdersFacts.html#y:97"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.Structures.Orders.html#LtNotation.:::x_'<'_x"><span·class="id"·title="notation"><</span></a><a·class="idref"·href="Coq.Structures.OrdersFacts.html#x:96"><span·class="id"·title="variable">x</span></a>.<br/> |
295 | ·<span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.OrdersFacts.html#OrderedTypeTest"><span·class="id"·title="module">OrderedTypeTest</span></a>.<br/> | 295 | ·<span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.OrdersFacts.html#OrderedTypeTest"><span·class="id"·title="module">OrderedTypeTest</span></a>.<br/> |
296 | <br/> | 296 | <br/> |
297 | </div> | 297 | </div> |
298 | <div·class="doc"> | 298 | <div·class="doc"> |
299 | <a·id="lab | 299 | <a·id="lab661"></a><h1·class="section">Reversed·OrderedTypeFull.</h1> |
300 | <div·class="paragraph">·</div> | 300 | <div·class="paragraph">·</div> |
301 | ···we·can·switch·the·orientation·of·the·order.·This·is·used·for | 301 | ···we·can·switch·the·orientation·of·the·order.·This·is·used·for |
302 | ···example·when·deriving·properties·of·<span·class="inlinecode"><span·class="id"·title="var">min</span></span>·out·of·the·ones·of·<span·class="inlinecode"><span·class="id"·title="var">max</span></span> | 302 | ···example·when·deriving·properties·of·<span·class="inlinecode"><span·class="id"·title="var">min</span></span>·out·of·the·ones·of·<span·class="inlinecode"><span·class="id"·title="var">max</span></span> |
303 | ···(see·<span·class="inlinecode"><span·class="id"·title="var">GenericMinMax</span></span>). | 303 | ···(see·<span·class="inlinecode"><span·class="id"·title="var">GenericMinMax</span></span>). |
Offset 345, 15 lines modified | Offset 345, 15 lines modified | ||
345 | <br/> | 345 | <br/> |
346 | <span·class="id"·title="keyword">Unset·Implicit·Arguments</span>.<br/> | 346 | <span·class="id"·title="keyword">Unset·Implicit·Arguments</span>.<br/> |
347 | <br/> | 347 | <br/> |
348 | </div> | 348 | </div> |
349 | <div·class="doc"> | 349 | <div·class="doc"> |
350 | <a·id="lab | 350 | <a·id="lab662"></a><h1·class="section">Order·relations·derived·from·a·<span·class="inlinecode"><span·class="id"·title="var">compare</span></span>·function.</h1> |
351 | <div·class="paragraph">·</div> | 351 | <div·class="paragraph">·</div> |
352 | ··We·factorize·here·some·common·properties·for·ZArith,·NArith | 352 | ··We·factorize·here·some·common·properties·for·ZArith,·NArith |
353 | ··and·co,·where·<span·class="inlinecode"><span·class="id"·title="var">lt</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">le</span></span>·are·defined·in·terms·of·<span·class="inlinecode"><span·class="id"·title="var">compare</span></span>. | 353 | ··and·co,·where·<span·class="inlinecode"><span·class="id"·title="var">lt</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">le</span></span>·are·defined·in·terms·of·<span·class="inlinecode"><span·class="id"·title="var">compare</span></span>. |
354 | ··Note·that·we·do·not·require·anything·here·concerning·compatibility | 354 | ··Note·that·we·do·not·require·anything·here·concerning·compatibility |
Offset 51, 15 lines modified | Offset 51, 15 lines modified | ||
51 | <br/> | 51 | <br/> |
52 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> | 52 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> |
53 | <br/> | 53 | <br/> |
54 | </div> | 54 | </div> |
55 | <div·class="doc"> | 55 | <div·class="doc"> |
56 | <a·id="lab | 56 | <a·id="lab651"></a><h1·class="section">Specialization·of·results·about·lists·modulo.</h1> |
57 | </div> | 57 | </div> |
58 | <div·class="code"> | 58 | <div·class="code"> |
59 | <br/> | 59 | <br/> |
60 | <span·class="id"·title="keyword">Module</span>·<a·id="OrderedTypeLists"·class="idref"·href="#OrderedTypeLists"><span·class="id"·title="module">OrderedTypeLists</span></a>·(<span·class="id"·title="var">O</span>:<a·class="idref"·href="Coq.Structures.Orders.html#OrderedType"><span·class="id"·title="module">OrderedType</span></a>).<br/> | 60 | <span·class="id"·title="keyword">Module</span>·<a·id="OrderedTypeLists"·class="idref"·href="#OrderedTypeLists"><span·class="id"·title="module">OrderedTypeLists</span></a>·(<span·class="id"·title="var">O</span>:<a·class="idref"·href="Coq.Structures.Orders.html#OrderedType"><span·class="id"·title="module">OrderedType</span></a>).<br/> |
Offset 106, 15 lines modified | Offset 106, 15 lines modified | ||
106 | <br/> | 106 | <br/> |
107 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.OrdersLists.html#OrderedTypeLists"><span·class="id"·title="module">OrderedTypeLists</span></a>.<br/> | 107 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.OrdersLists.html#OrderedTypeLists"><span·class="id"·title="module">OrderedTypeLists</span></a>.<br/> |
108 | <br/> | 108 | <br/> |
109 | </div> | 109 | </div> |
110 | <div·class="doc"> | 110 | <div·class="doc"> |
111 | <a·id="lab | 111 | <a·id="lab652"></a><h1·class="section">Results·about·keys·and·data·as·manipulated·in·the·future·MMaps.</h1> |
112 | </div> | 112 | </div> |
113 | <div·class="code"> | 113 | <div·class="code"> |
114 | <br/> | 114 | <br/> |
115 | <span·class="id"·title="keyword">Module</span>·<a·id="KeyOrderedType"·class="idref"·href="#KeyOrderedType"><span·class="id"·title="module">KeyOrderedType</span></a>(<span·class="id"·title="var">O</span>:<a·class="idref"·href="Coq.Structures.Orders.html#OrderedType"><span·class="id"·title="module">OrderedType</span></a>).<br/> | 115 | <span·class="id"·title="keyword">Module</span>·<a·id="KeyOrderedType"·class="idref"·href="#KeyOrderedType"><span·class="id"·title="module">KeyOrderedType</span></a>(<span·class="id"·title="var">O</span>:<a·class="idref"·href="Coq.Structures.Orders.html#OrderedType"><span·class="id"·title="module">OrderedType</span></a>).<br/> |
116 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.Structures.EqualitiesFacts.html#KeyDecidableType"><span·class="id"·title="module">KeyDecidableType</span></a>(<a·class="idref"·href="Coq.Structures.OrdersLists.html#O"><span·class="id"·title="module">O</span></a>).· | 116 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.Structures.EqualitiesFacts.html#KeyDecidableType"><span·class="id"·title="module">KeyDecidableType</span></a>(<a·class="idref"·href="Coq.Structures.OrdersLists.html#O"><span·class="id"·title="module">O</span></a>).· |
Offset 49, 15 lines modified | Offset 49, 15 lines modified | ||
49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Setoids.Setoid.html#"><span·class="id"·title="library">Setoid</span></a>·<a·class="idref"·href="Coq.Classes.Morphisms.html#"><span·class="id"·title="library">Morphisms</span></a>·<a·class="idref"·href="Coq.Program.Basics.html#"><span·class="id"·title="library">Basics</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#"><span·class="id"·title="library">Equalities</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#"><span·class="id"·title="library">Orders</span></a>.<br/> | 49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Setoids.Setoid.html#"><span·class="id"·title="library">Setoid</span></a>·<a·class="idref"·href="Coq.Classes.Morphisms.html#"><span·class="id"·title="library">Morphisms</span></a>·<a·class="idref"·href="Coq.Program.Basics.html#"><span·class="id"·title="library">Basics</span></a>·<a·class="idref"·href="Coq.Structures.Equalities.html#"><span·class="id"·title="library">Equalities</span></a>·<a·class="idref"·href="Coq.Structures.Orders.html#"><span·class="id"·title="library">Orders</span></a>.<br/> |
50 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> | 50 | <span·class="id"·title="keyword">Set·Implicit·Arguments</span>.<br/> |
51 | <br/> | 51 | <br/> |
52 | </div> | 52 | </div> |
53 | <div·class="doc"> | 53 | <div·class="doc"> |
54 | <a·id="lab | 54 | <a·id="lab688"></a><h1·class="section">The·order·tactic</h1> |
55 | <div·class="paragraph">·</div> | 55 | <div·class="paragraph">·</div> |
56 | ·This·tactic·is·designed·to·solve·systems·of·(in)equations | 56 | ·This·tactic·is·designed·to·solve·systems·of·(in)equations |
57 | ····involving·<span·class="inlinecode"><span·class="id"·title="var">eq</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">lt</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">le</span></span>·and·<span·class="inlinecode">~<span·class="id"·title="var">eq</span></span>·on·some·type.·This·tactic·is | 57 | ····involving·<span·class="inlinecode"><span·class="id"·title="var">eq</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">lt</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">le</span></span>·and·<span·class="inlinecode">~<span·class="id"·title="var">eq</span></span>·on·some·type.·This·tactic·is |
58 | ····domain-agnostic;·it·will·only·use·equivalence+order·axioms,·and | 58 | ····domain-agnostic;·it·will·only·use·equivalence+order·axioms,·and |
59 | ····not·analyze·elements·of·the·domain.·Hypothesis·or·goal·of·the·form | 59 | ····not·analyze·elements·of·the·domain.·Hypothesis·or·goal·of·the·form |
Offset 88, 15 lines modified | Offset 88, 15 lines modified | ||
88 | <span·class="id"·title="keyword">end</span>.<br/> | 88 | <span·class="id"·title="keyword">end</span>.<br/> |
89 | <span·class="id"·title="keyword">Local·Infix</span>·<a·id="00f623954fe4dd5f04bdc5ceb1846ff4"·class="idref"·href="#00f623954fe4dd5f04bdc5ceb1846ff4"><span·class="id"·title="notation">"</span></a>+"·:=·<a·class="idref"·href="Coq.Structures.OrdersTac.html#trans_ord"><span·class="id"·title="definition">trans_ord</span></a>.<br/> | 89 | <span·class="id"·title="keyword">Local·Infix</span>·<a·id="00f623954fe4dd5f04bdc5ceb1846ff4"·class="idref"·href="#00f623954fe4dd5f04bdc5ceb1846ff4"><span·class="id"·title="notation">"</span></a>+"·:=·<a·class="idref"·href="Coq.Structures.OrdersTac.html#trans_ord"><span·class="id"·title="definition">trans_ord</span></a>.<br/> |
90 | <br/> | 90 | <br/> |
91 | </div> | 91 | </div> |
92 | <div·class="doc"> | 92 | <div·class="doc"> |
93 | <a·id="lab | 93 | <a·id="lab689"></a><h2·class="section">The·tactic·requirements·:·a·total·order</h2> |
94 | <div·class="paragraph">·</div> | 94 | <div·class="paragraph">·</div> |
95 | ···We·need·: | 95 | ···We·need·: |
96 | <ul·class="doclist"> | 96 | <ul·class="doclist"> |
97 | <li>·an·equivalence·<span·class="inlinecode"><span·class="id"·title="var">eq</span></span>, | 97 | <li>·an·equivalence·<span·class="inlinecode"><span·class="id"·title="var">eq</span></span>, |
Offset 124, 15 lines modified | Offset 124, 15 lines modified | ||
124 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="IsTotalOrder"·class="idref"·href="#IsTotalOrder"><span·class="id"·title="module">IsTotalOrder</span></a>·(<span·class="id"·title="var">O</span>:<a·class="idref"·href="Coq.Structures.Orders.html#EqLtLe"><span·class="id"·title="module">EqLtLe</span></a>)·:=<br/> | 124 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="IsTotalOrder"·class="idref"·href="#IsTotalOrder"><span·class="id"·title="module">IsTotalOrder</span></a>·(<span·class="id"·title="var">O</span>:<a·class="idref"·href="Coq.Structures.Orders.html#EqLtLe"><span·class="id"·title="module">EqLtLe</span></a>)·:=<br/> |
125 | <a·class="idref"·href="Coq.Structures.Equalities.html#IsEq"><span·class="id"·title="module">IsEq</span></a>·<a·class="idref"·href="Coq.Structures.OrdersTac.html#O"><span·class="id"·title="module">O</span></a>·<+·<a·class="idref"·href="Coq.Structures.Orders.html#IsStrOrder"><span·class="id"·title="module">IsStrOrder</span></a>·<a·class="idref"·href="Coq.Structures.OrdersTac.html#O"><span·class="id"·title="module">O</span></a>·<+·<a·class="idref"·href="Coq.Structures.Orders.html#LeIsLtEq"><span·class="id"·title="module">LeIsLtEq</span></a>·<a·class="idref"·href="Coq.Structures.OrdersTac.html#O"><span·class="id"·title="module">O</span></a>·<+·<a·class="idref"·href="Coq.Structures.Orders.html#LtIsTotal"><span·class="id"·title="module">LtIsTotal</span></a>·<a·class="idref"·href="Coq.Structures.OrdersTac.html#O"><span·class="id"·title="module">O</span></a>.<br/> | 125 | <a·class="idref"·href="Coq.Structures.Equalities.html#IsEq"><span·class="id"·title="module">IsEq</span></a>·<a·class="idref"·href="Coq.Structures.OrdersTac.html#O"><span·class="id"·title="module">O</span></a>·<+·<a·class="idref"·href="Coq.Structures.Orders.html#IsStrOrder"><span·class="id"·title="module">IsStrOrder</span></a>·<a·class="idref"·href="Coq.Structures.OrdersTac.html#O"><span·class="id"·title="module">O</span></a>·<+·<a·class="idref"·href="Coq.Structures.Orders.html#LeIsLtEq"><span·class="id"·title="module">LeIsLtEq</span></a>·<a·class="idref"·href="Coq.Structures.OrdersTac.html#O"><span·class="id"·title="module">O</span></a>·<+·<a·class="idref"·href="Coq.Structures.Orders.html#LtIsTotal"><span·class="id"·title="module">LtIsTotal</span></a>·<a·class="idref"·href="Coq.Structures.OrdersTac.html#O"><span·class="id"·title="module">O</span></a>.<br/> |
126 | <br/> | 126 | <br/> |
127 | </div> | 127 | </div> |
128 | <div·class="doc"> | 128 | <div·class="doc"> |
129 | <a·id="lab | 129 | <a·id="lab690"></a><h2·class="section">Properties·that·will·be·used·by·the·<span·class="inlinecode"><span·class="id"·title="var">order</span></span>·tactic</h2> |
130 | </div> | 130 | </div> |
131 | <div·class="code"> | 131 | <div·class="code"> |
132 | <br/> | 132 | <br/> |
133 | <span·class="id"·title="keyword">Module</span>·<a·id="OrderFacts"·class="idref"·href="#OrderFacts"><span·class="id"·title="module">OrderFacts</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">O</span>:<a·class="idref"·href="Coq.Structures.Orders.html#EqLtLe"><span·class="id"·title="module">EqLtLe</span></a>)(<span·class="id"·title="var">P</span>:<a·class="idref"·href="Coq.Structures.OrdersTac.html#IsTotalOrder"><span·class="id"·title="module">IsTotalOrder</span></a>·<a·class="idref"·href="Coq.Structures.OrdersTac.html#O"><span·class="id"·title="module">O</span></a>).<br/> | 133 | <span·class="id"·title="keyword">Module</span>·<a·id="OrderFacts"·class="idref"·href="#OrderFacts"><span·class="id"·title="module">OrderFacts</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">O</span>:<a·class="idref"·href="Coq.Structures.Orders.html#EqLtLe"><span·class="id"·title="module">EqLtLe</span></a>)(<span·class="id"·title="var">P</span>:<a·class="idref"·href="Coq.Structures.OrdersTac.html#IsTotalOrder"><span·class="id"·title="module">IsTotalOrder</span></a>·<a·class="idref"·href="Coq.Structures.OrdersTac.html#O"><span·class="id"·title="module">O</span></a>).<br/> |
134 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.Structures.Orders.html#EqLtLeNotation"><span·class="id"·title="module">EqLtLeNotation</span></a>·<a·class="idref"·href="Coq.Structures.OrdersTac.html#O"><span·class="id"·title="module">O</span></a>.<br/> | 134 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.Structures.Orders.html#EqLtLeNotation"><span·class="id"·title="module">EqLtLeNotation</span></a>·<a·class="idref"·href="Coq.Structures.OrdersTac.html#O"><span·class="id"·title="module">O</span></a>.<br/> |
Offset 234, 15 lines modified | Offset 234, 15 lines modified | ||
234 | <br/> | 234 | <br/> |
235 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.OrdersTac.html#OrderFacts"><span·class="id"·title="module">OrderFacts</span></a>.<br/> | 235 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.Structures.OrdersTac.html#OrderFacts"><span·class="id"·title="module">OrderFacts</span></a>.<br/> |
236 | <br/> | 236 | <br/> |
237 | </div> | 237 | </div> |
238 | <div·class="doc"> | 238 | <div·class="doc"> |
239 | <a·id="lab | 239 | <a·id="lab691"></a><h2·class="section"><span·class="inlinecode"><span·class="id"·title="var">MakeOrderTac</span></span>·:·The·functor·providing·the·order·tactic.</h2> |
240 | </div> | 240 | </div> |
241 | <div·class="code"> | 241 | <div·class="code"> |
242 | <br/> | 242 | <br/> |
243 | <span·class="id"·title="keyword">Module</span>·<a·id="MakeOrderTac"·class="idref"·href="#MakeOrderTac"><span·class="id"·title="module">MakeOrderTac</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">O</span>:<a·class="idref"·href="Coq.Structures.Orders.html#EqLtLe"><span·class="id"·title="module">EqLtLe</span></a>)(<span·class="id"·title="var">P</span>:<a·class="idref"·href="Coq.Structures.OrdersTac.html#IsTotalOrder"><span·class="id"·title="module">IsTotalOrder</span></a>·<a·class="idref"·href="Coq.Structures.OrdersTac.html#O"><span·class="id"·title="module">O</span></a>).<br/> | 243 | <span·class="id"·title="keyword">Module</span>·<a·id="MakeOrderTac"·class="idref"·href="#MakeOrderTac"><span·class="id"·title="module">MakeOrderTac</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">O</span>:<a·class="idref"·href="Coq.Structures.Orders.html#EqLtLe"><span·class="id"·title="module">EqLtLe</span></a>)(<span·class="id"·title="var">P</span>:<a·class="idref"·href="Coq.Structures.OrdersTac.html#IsTotalOrder"><span·class="id"·title="module">IsTotalOrder</span></a>·<a·class="idref"·href="Coq.Structures.OrdersTac.html#O"><span·class="id"·title="module">O</span></a>).<br/> |
244 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.Structures.OrdersTac.html#OrderFacts"><span·class="id"·title="module">OrderFacts</span></a>·<a·class="idref"·href="Coq.Structures.OrdersTac.html#O"><span·class="id"·title="module">O</span></a>·<a·class="idref"·href="Coq.Structures.OrdersTac.html#P"><span·class="id"·title="module">P</span></a>.<br/> | 244 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.Structures.OrdersTac.html#OrderFacts"><span·class="id"·title="module">OrderFacts</span></a>·<a·class="idref"·href="Coq.Structures.OrdersTac.html#O"><span·class="id"·title="module">O</span></a>·<a·class="idref"·href="Coq.Structures.OrdersTac.html#P"><span·class="id"·title="module">P</span></a>.<br/> |
Offset 5874, 15 lines modified | Offset 5874, 15 lines modified | ||
00016f10:·7265·6622·2068·7265·663d·2223·4954·4552··ref"·href="#ITER | 00016f10:·7265·6622·2068·7265·663d·2223·4954·4552··ref"·href="#ITER | ||
00016f20:·4154·4f52·5322·3e3c·7370·616e·2063·6c61··ATORS"><span·cla | 00016f20:·4154·4f52·5322·3e3c·7370·616e·2063·6c61··ATORS"><span·cla | ||
00016f30:·7373·3d22·6964·2220·7469·746c·653d·2273··ss="id"·title="s | 00016f30:·7373·3d22·6964·2220·7469·746c·653d·2273··ss="id"·title="s | ||
00016f40:·6563·7469·6f6e·223e·4954·4552·4154·4f52··ection">ITERATOR | 00016f40:·6563·7469·6f6e·223e·4954·4552·4154·4f52··ection">ITERATOR | ||
00016f50:·533c·2f73·7061·6e3e·3c2f·613e·2e3c·6272··S</span></a>.<br | 00016f50:·533c·2f73·7061·6e3e·3c2f·613e·2e3c·6272··S</span></a>.<br | ||
00016f60:·2f3e·0a3c·2f64·6976·3e0a·0a3c·6469·7620··/>.</div>..<div· | 00016f60:·2f3e·0a3c·2f64·6976·3e0a·0a3c·6469·7620··/>.</div>..<div· | ||
00016f70:·636c·6173·733d·2264·6f63·223e·0a3c·6120··class="doc">.<a· | 00016f70:·636c·6173·733d·2264·6f63·223e·0a3c·6120··class="doc">.<a· | ||
00016f80:·6964·3d22·6c61·6231·3 | 00016f80:·6964·3d22·6c61·6231·3137·3922·3e3c·2f61··id="lab1179"></a | ||
00016f90:·3e3c·6831·2063·6c61·7373·3d22·7365·6374··><h1·class="sect | 00016f90:·3e3c·6831·2063·6c61·7373·3d22·7365·6374··><h1·class="sect | ||
00016fa0:·696f·6e22·3e48·6572·6520·6172·6520·7370··ion">Here·are·sp | 00016fa0:·696f·6e22·3e48·6572·6520·6172·6520·7370··ion">Here·are·sp | ||
00016fb0:·6563·6961·6c20·6e6f·6e20·6465·7065·6e64··ecial·non·depend | 00016fb0:·6563·6961·6c20·6e6f·6e20·6465·7065·6e64··ecial·non·depend | ||
00016fc0:·656e·7420·7573·6566·756c·2069·6e73·7461··ent·useful·insta | 00016fc0:·656e·7420·7573·6566·756c·2069·6e73·7461··ent·useful·insta | ||
00016fd0:·6e74·6961·7469·6f6e·206f·6620·696e·6475··ntiation·of·indu | 00016fd0:·6e74·6961·7469·6f6e·206f·6620·696e·6475··ntiation·of·indu | ||
00016fe0:·6374·696f·6e20·7363·6865·6d65·733c·2f68··ction·schemes</h | 00016fe0:·6374·696f·6e20·7363·6865·6d65·733c·2f68··ction·schemes</h | ||
00016ff0:·313e·0a0a·3c64·6976·2063·6c61·7373·3d22··1>..<div·class=" | 00016ff0:·313e·0a0a·3c64·6976·2063·6c61·7373·3d22··1>..<div·class=" | ||
Offset 9280, 16 lines modified | Offset 9280, 16 lines modified | ||
000243f0:·3d22·6964·7265·6622·2068·7265·663d·2223··="idref"·href="# | 000243f0:·3d22·6964·7265·6622·2068·7265·663d·2223··="idref"·href="# | ||
00024400:·5645·4354·4f52·4c49·5354·223e·3c73·7061··VECTORLIST"><spa | 00024400:·5645·4354·4f52·4c49·5354·223e·3c73·7061··VECTORLIST"><spa | ||
00024410:·6e20·636c·6173·733d·2269·6422·2074·6974··n·class="id"·tit | 00024410:·6e20·636c·6173·733d·2269·6422·2074·6974··n·class="id"·tit | ||
00024420:·6c65·3d22·7365·6374·696f·6e22·3e56·4543··le="section">VEC | 00024420:·6c65·3d22·7365·6374·696f·6e22·3e56·4543··le="section">VEC | ||
00024430:·544f·524c·4953·543c·2f73·7061·6e3e·3c2f··TORLIST</span></ | 00024430:·544f·524c·4953·543c·2f73·7061·6e3e·3c2f··TORLIST</span></ | ||
00024440:·613e·2e3c·6272·2f3e·0a3c·2f64·6976·3e0a··a>.<br/>.</div>. | 00024440:·613e·2e3c·6272·2f3e·0a3c·2f64·6976·3e0a··a>.<br/>.</div>. | ||
00024450:·0a3c·6469·7620·636c·6173·733d·2264·6f63··.<div·class="doc | 00024450:·0a3c·6469·7620·636c·6173·733d·2264·6f63··.<div·class="doc | ||
00024460:·223e·0a3c·6120·6964·3d22·6c61·6231·3 | 00024460:·223e·0a3c·6120·6964·3d22·6c61·6231·3138··">.<a·id="lab118 | ||
00024470:·3 | 00024470:·3022·3e3c·2f61·3e3c·6831·2063·6c61·7373··0"></a><h1·class | ||
00024480:·3d22·7365·6374·696f·6e22·3e76·6563·746f··="section">vecto | 00024480:·3d22·7365·6374·696f·6e22·3e76·6563·746f··="section">vecto | ||
00024490:·7220·266c·743b·3d26·6774·3b20·6c69·7374··r·<=>·list | 00024490:·7220·266c·743b·3d26·6774·3b20·6c69·7374··r·<=>·list | ||
000244a0:·2066·756e·6374·696f·6e73·3c2f·6831·3e0a···functions</h1>. | 000244a0:·2066·756e·6374·696f·6e73·3c2f·6831·3e0a···functions</h1>. | ||
000244b0:·0a3c·2f64·6976·3e0a·3c64·6976·2063·6c61··.</div>.<div·cla | 000244b0:·0a3c·2f64·6976·3e0a·3c64·6976·2063·6c61··.</div>.<div·cla | ||
000244c0:·7373·3d22·636f·6465·223e·0a0a·3c62·722f··ss="code">..<br/ | 000244c0:·7373·3d22·636f·6465·223e·0a0a·3c62·722f··ss="code">..<br/ | ||
000244d0:·3e0a·3c73·7061·6e20·636c·6173·733d·2269··>.<span·class="i | 000244d0:·3e0a·3c73·7061·6e20·636c·6173·733d·2269··>.<span·class="i | ||
000244e0:·6422·2074·6974·6c65·3d22·6b65·7977·6f72··d"·title="keywor | 000244e0:·6422·2074·6974·6c65·3d22·6b65·7977·6f72··d"·title="keywor |
Offset 91, 15 lines modified | Offset 91, 15 lines modified | ||
91 | </div> | 91 | </div> |
92 | <div·class="doc"> | 92 | <div·class="doc"> |
93 | Lemmas·are·done·for·functions·that·use·<span·class="inlinecode"><span·class="id"·title="var">Fin.t</span></span>·but·thanks·to·<span·class="inlinecode"><span·class="id"·title="var">Peano_dec.le_unique</span></span>,·all | 93 | Lemmas·are·done·for·functions·that·use·<span·class="inlinecode"><span·class="id"·title="var">Fin.t</span></span>·but·thanks·to·<span·class="inlinecode"><span·class="id"·title="var">Peano_dec.le_unique</span></span>,·all |
94 | is·true·for·the·one·that·use·<span·class="inlinecode"><span·class="id"·title="var">lt</span></span>· | 94 | is·true·for·the·one·that·use·<span·class="inlinecode"><span·class="id"·title="var">lt</span></span>· |
95 | <div·class="paragraph">·</div> | 95 | <div·class="paragraph">·</div> |
96 | <a·id="lab1 | 96 | <a·id="lab1167"></a><h2·class="section">Properties·of·<span·class="inlinecode"><span·class="id"·title="var">nth</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">nth_order</span></span></h2> |
97 | </div> | 97 | </div> |
98 | <div·class="code"> | 98 | <div·class="code"> |
99 | <br/> | 99 | <br/> |
100 | <span·class="id"·title="keyword">Lemma</span>·<a·id="eq_nth_iff"·class="idref"·href="#eq_nth_iff"><span·class="id"·title="lemma">eq_nth_iff</span></a>·<a·id="A:26"·class="idref"·href="#A:26"><span·class="id"·title="binder">A</span></a>·<a·id="n:27"·class="idref"·href="#n:27"><span·class="id"·title="binder">n</span></a>·(<a·id="v1:28"·class="idref"·href="#v1:28"><span·class="id"·title="binder">v1</span></a>·<a·id="v2:29"·class="idref"·href="#v2:29"><span·class="id"·title="binder">v2</span></a>:·<a·class="idref"·href="Coq.Vectors.VectorDef.html#t"><span·class="id"·title="inductive">t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:26"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:27"><span·class="id"·title="variable">n</span></a>):<br/> | 100 | <span·class="id"·title="keyword">Lemma</span>·<a·id="eq_nth_iff"·class="idref"·href="#eq_nth_iff"><span·class="id"·title="lemma">eq_nth_iff</span></a>·<a·id="A:26"·class="idref"·href="#A:26"><span·class="id"·title="binder">A</span></a>·<a·id="n:27"·class="idref"·href="#n:27"><span·class="id"·title="binder">n</span></a>·(<a·id="v1:28"·class="idref"·href="#v1:28"><span·class="id"·title="binder">v1</span></a>·<a·id="v2:29"·class="idref"·href="#v2:29"><span·class="id"·title="binder">v2</span></a>:·<a·class="idref"·href="Coq.Vectors.VectorDef.html#t"><span·class="id"·title="inductive">t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:26"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:27"><span·class="id"·title="variable">n</span></a>):<br/> |
101 | <a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="p1:30"·class="idref"·href="#p1:30"><span·class="id"·title="binder">p1</span></a>·<a·id="p2:31"·class="idref"·href="#p2:31"><span·class="id"·title="binder">p2</span></a>,·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#p1:30"><span·class="id"·title="variable">p1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#p2:31"><span·class="id"·title="variable">p2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v1:28"><span·class="id"·title="variable">v1</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#3e2ab5a54c52b47134e5ddb66aa31ebd"><span·class="id"·title="notation">[@</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#p1:30"><span·class="id"·title="variable">p1</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#3e2ab5a54c52b47134e5ddb66aa31ebd"><span·class="id"·title="notation">]</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v2:29"><span·class="id"·title="variable">v2</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#3e2ab5a54c52b47134e5ddb66aa31ebd"><span·class="id"·title="notation">[@</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#p2:31"><span·class="id"·title="variable">p2</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#3e2ab5a54c52b47134e5ddb66aa31ebd"><span·class="id"·title="notation">]</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v1:28"><span·class="id"·title="variable">v1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v2:29"><span·class="id"·title="variable">v2</span></a>.<br/> | 101 | <a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="p1:30"·class="idref"·href="#p1:30"><span·class="id"·title="binder">p1</span></a>·<a·id="p2:31"·class="idref"·href="#p2:31"><span·class="id"·title="binder">p2</span></a>,·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#p1:30"><span·class="id"·title="variable">p1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#p2:31"><span·class="id"·title="variable">p2</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v1:28"><span·class="id"·title="variable">v1</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#3e2ab5a54c52b47134e5ddb66aa31ebd"><span·class="id"·title="notation">[@</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#p1:30"><span·class="id"·title="variable">p1</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#3e2ab5a54c52b47134e5ddb66aa31ebd"><span·class="id"·title="notation">]</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v2:29"><span·class="id"·title="variable">v2</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#3e2ab5a54c52b47134e5ddb66aa31ebd"><span·class="id"·title="notation">[@</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#p2:31"><span·class="id"·title="variable">p2</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#3e2ab5a54c52b47134e5ddb66aa31ebd"><span·class="id"·title="notation">]</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v1:28"><span·class="id"·title="variable">v1</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v2:29"><span·class="id"·title="variable">v2</span></a>.<br/> |
Offset 132, 15 lines modified | Offset 132, 15 lines modified | ||
132 | <span·class="id"·title="keyword">Lemma</span>·<a·id="In_nth"·class="idref"·href="#In_nth"><span·class="id"·title="lemma">In_nth</span></a>·<a·id="A:64"·class="idref"·href="#A:64"><span·class="id"·title="binder">A</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="n:65"·class="idref"·href="#n:65"><span·class="id"·title="binder">n</span></a>·(<a·id="v:66"·class="idref"·href="#v:66"><span·class="id"·title="binder">v</span></a>·:·<a·class="idref"·href="Coq.Vectors.VectorDef.html#t"><span·class="id"·title="inductive">t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:64"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:65"><span·class="id"·title="variable">n</span></a>)·<a·id="p:67"·class="idref"·href="#p:67"><span·class="id"·title="binder">p</span></a>,<br/> | 132 | <span·class="id"·title="keyword">Lemma</span>·<a·id="In_nth"·class="idref"·href="#In_nth"><span·class="id"·title="lemma">In_nth</span></a>·<a·id="A:64"·class="idref"·href="#A:64"><span·class="id"·title="binder">A</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="n:65"·class="idref"·href="#n:65"><span·class="id"·title="binder">n</span></a>·(<a·id="v:66"·class="idref"·href="#v:66"><span·class="id"·title="binder">v</span></a>·:·<a·class="idref"·href="Coq.Vectors.VectorDef.html#t"><span·class="id"·title="inductive">t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:64"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:65"><span·class="id"·title="variable">n</span></a>)·<a·id="p:67"·class="idref"·href="#p:67"><span·class="id"·title="binder">p</span></a>,<br/> |
133 | <a·class="idref"·href="Coq.Vectors.VectorDef.html#In"><span·class="id"·title="inductive">In</span></a>·(<a·class="idref"·href="Coq.Vectors.VectorDef.html#nth"><span·class="id"·title="definition">nth</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:66"><span·class="id"·title="variable">v</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#p:67"><span·class="id"·title="variable">p</span></a>)·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:66"><span·class="id"·title="variable">v</span></a>.<br/> | 133 | <a·class="idref"·href="Coq.Vectors.VectorDef.html#In"><span·class="id"·title="inductive">In</span></a>·(<a·class="idref"·href="Coq.Vectors.VectorDef.html#nth"><span·class="id"·title="definition">nth</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:66"><span·class="id"·title="variable">v</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#p:67"><span·class="id"·title="variable">p</span></a>)·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:66"><span·class="id"·title="variable">v</span></a>.<br/> |
134 | <br/> | 134 | <br/> |
135 | </div> | 135 | </div> |
136 | <div·class="doc"> | 136 | <div·class="doc"> |
137 | <a·id="lab1 | 137 | <a·id="lab1168"></a><h2·class="section">Properties·of·<span·class="inlinecode"><span·class="id"·title="tactic">replace</span></span></h2> |
138 | </div> | 138 | </div> |
139 | <div·class="code"> | 139 | <div·class="code"> |
140 | <br/> | 140 | <br/> |
141 | <span·class="id"·title="keyword">Lemma</span>·<a·id="nth_replace_eq"·class="idref"·href="#nth_replace_eq"><span·class="id"·title="lemma">nth_replace_eq</span></a>·<a·id="A:68"·class="idref"·href="#A:68"><span·class="id"·title="binder">A</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="n:69"·class="idref"·href="#n:69"><span·class="id"·title="binder">n</span></a>·<a·id="p:70"·class="idref"·href="#p:70"><span·class="id"·title="binder">p</span></a>·(<a·id="v:71"·class="idref"·href="#v:71"><span·class="id"·title="binder">v</span></a>·:·<a·class="idref"·href="Coq.Vectors.VectorDef.html#t"><span·class="id"·title="inductive">t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:68"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:69"><span·class="id"·title="variable">n</span></a>)·<a·id="a:72"·class="idref"·href="#a:72"><span·class="id"·title="binder">a</span></a>,<br/> | 141 | <span·class="id"·title="keyword">Lemma</span>·<a·id="nth_replace_eq"·class="idref"·href="#nth_replace_eq"><span·class="id"·title="lemma">nth_replace_eq</span></a>·<a·id="A:68"·class="idref"·href="#A:68"><span·class="id"·title="binder">A</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="n:69"·class="idref"·href="#n:69"><span·class="id"·title="binder">n</span></a>·<a·id="p:70"·class="idref"·href="#p:70"><span·class="id"·title="binder">p</span></a>·(<a·id="v:71"·class="idref"·href="#v:71"><span·class="id"·title="binder">v</span></a>·:·<a·class="idref"·href="Coq.Vectors.VectorDef.html#t"><span·class="id"·title="inductive">t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:68"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:69"><span·class="id"·title="variable">n</span></a>)·<a·id="a:72"·class="idref"·href="#a:72"><span·class="id"·title="binder">a</span></a>,<br/> |
142 | <a·class="idref"·href="Coq.Vectors.VectorDef.html#nth"><span·class="id"·title="definition">nth</span></a>·(<a·class="idref"·href="Coq.Vectors.VectorDef.html#replace"><span·class="id"·title="definition">replace</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:71"><span·class="id"·title="variable">v</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#p:70"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:72"><span·class="id"·title="variable">a</span></a>)·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#p:70"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:72"><span·class="id"·title="variable">a</span></a>.<br/> | 142 | <a·class="idref"·href="Coq.Vectors.VectorDef.html#nth"><span·class="id"·title="definition">nth</span></a>·(<a·class="idref"·href="Coq.Vectors.VectorDef.html#replace"><span·class="id"·title="definition">replace</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:71"><span·class="id"·title="variable">v</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#p:70"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:72"><span·class="id"·title="variable">a</span></a>)·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#p:70"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:72"><span·class="id"·title="variable">a</span></a>.<br/> |
Offset 178, 30 lines modified | Offset 178, 30 lines modified | ||
178 | <span·class="id"·title="keyword">Lemma</span>·<a·id="replace_append_R"·class="idref"·href="#replace_append_R"><span·class="id"·title="lemma">replace_append_R</span></a>·<a·id="A:132"·class="idref"·href="#A:132"><span·class="id"·title="binder">A</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="n:133"·class="idref"·href="#n:133"><span·class="id"·title="binder">n</span></a>·<a·id="m:134"·class="idref"·href="#m:134"><span·class="id"·title="binder">m</span></a>·(<a·id="v:135"·class="idref"·href="#v:135"><span·class="id"·title="binder">v</span></a>·:·<a·class="idref"·href="Coq.Vectors.VectorDef.html#t"><span·class="id"·title="inductive">t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:132"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:133"><span·class="id"·title="variable">n</span></a>)·(<a·id="w:136"·class="idref"·href="#w:136"><span·class="id"·title="binder">w</span></a>·:·<a·class="idref"·href="Coq.Vectors.VectorDef.html#t"><span·class="id"·title="inductive">t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:132"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#m:134"><span·class="id"·title="variable">m</span></a>)·<a·id="p:137"·class="idref"·href="#p:137"><span·class="id"·title="binder">p</span></a>·<a·id="a:138"·class="idref"·href="#a:138"><span·class="id"·title="binder">a</span></a>,<br/> | 178 | <span·class="id"·title="keyword">Lemma</span>·<a·id="replace_append_R"·class="idref"·href="#replace_append_R"><span·class="id"·title="lemma">replace_append_R</span></a>·<a·id="A:132"·class="idref"·href="#A:132"><span·class="id"·title="binder">A</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="n:133"·class="idref"·href="#n:133"><span·class="id"·title="binder">n</span></a>·<a·id="m:134"·class="idref"·href="#m:134"><span·class="id"·title="binder">m</span></a>·(<a·id="v:135"·class="idref"·href="#v:135"><span·class="id"·title="binder">v</span></a>·:·<a·class="idref"·href="Coq.Vectors.VectorDef.html#t"><span·class="id"·title="inductive">t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:132"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:133"><span·class="id"·title="variable">n</span></a>)·(<a·id="w:136"·class="idref"·href="#w:136"><span·class="id"·title="binder">w</span></a>·:·<a·class="idref"·href="Coq.Vectors.VectorDef.html#t"><span·class="id"·title="inductive">t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:132"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#m:134"><span·class="id"·title="variable">m</span></a>)·<a·id="p:137"·class="idref"·href="#p:137"><span·class="id"·title="binder">p</span></a>·<a·id="a:138"·class="idref"·href="#a:138"><span·class="id"·title="binder">a</span></a>,<br/> |
179 | <a·class="idref"·href="Coq.Vectors.VectorDef.html#replace"><span·class="id"·title="definition">replace</span></a>·(<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:135"><span·class="id"·title="variable">v</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#a87b3a8e962608c1caec424398040bdf"><span·class="id"·title="notation">++</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#w:136"><span·class="id"·title="variable">w</span></a>)·(<a·class="idref"·href="Coq.Vectors.Fin.html#R"><span·class="id"·title="definition">Fin.R</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:133"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#p:137"><span·class="id"·title="variable">p</span></a>)·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:138"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:135"><span·class="id"·title="variable">v</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#a87b3a8e962608c1caec424398040bdf"><span·class="id"·title="notation">++</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#a87b3a8e962608c1caec424398040bdf"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Vectors.VectorDef.html#replace"><span·class="id"·title="definition">replace</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#w:136"><span·class="id"·title="variable">w</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#p:137"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:138"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Vectors.VectorDef.html#a87b3a8e962608c1caec424398040bdf"><span·class="id"·title="notation">)</span></a>.<br/> | 179 | <a·class="idref"·href="Coq.Vectors.VectorDef.html#replace"><span·class="id"·title="definition">replace</span></a>·(<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:135"><span·class="id"·title="variable">v</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#a87b3a8e962608c1caec424398040bdf"><span·class="id"·title="notation">++</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#w:136"><span·class="id"·title="variable">w</span></a>)·(<a·class="idref"·href="Coq.Vectors.Fin.html#R"><span·class="id"·title="definition">Fin.R</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:133"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#p:137"><span·class="id"·title="variable">p</span></a>)·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:138"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:135"><span·class="id"·title="variable">v</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#a87b3a8e962608c1caec424398040bdf"><span·class="id"·title="notation">++</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#a87b3a8e962608c1caec424398040bdf"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Vectors.VectorDef.html#replace"><span·class="id"·title="definition">replace</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#w:136"><span·class="id"·title="variable">w</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#p:137"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:138"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Vectors.VectorDef.html#a87b3a8e962608c1caec424398040bdf"><span·class="id"·title="notation">)</span></a>.<br/> |
180 | <br/> | 180 | <br/> |
181 | </div> | 181 | </div> |
182 | <div·class="doc"> | 182 | <div·class="doc"> |
183 | <a·id="lab1 | 183 | <a·id="lab1169"></a><h2·class="section">Properties·of·<span·class="inlinecode"><span·class="id"·title="var">const</span></span></h2> |
184 | </div> | 184 | </div> |
185 | <div·class="code"> | 185 | <div·class="code"> |
186 | <br/> | 186 | <br/> |
187 | <span·class="id"·title="keyword">Lemma</span>·<a·id="const_nth"·class="idref"·href="#const_nth"><span·class="id"·title="lemma">const_nth</span></a>·<a·id="A:139"·class="idref"·href="#A:139"><span·class="id"·title="binder">A</span></a>·(<a·id="a:140"·class="idref"·href="#a:140"><span·class="id"·title="binder">a</span></a>:·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:139"><span·class="id"·title="variable">A</span></a>)·<a·id="n:141"·class="idref"·href="#n:141"><span·class="id"·title="binder">n</span></a>·(<a·id="p:142"·class="idref"·href="#p:142"><span·class="id"·title="binder">p</span></a>:·<a·class="idref"·href="Coq.Vectors.Fin.html#t"><span·class="id"·title="inductive">Fin.t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:141"><span·class="id"·title="variable">n</span></a>):·<a·class="idref"·href="Coq.Vectors.VectorDef.html#3e2ab5a54c52b47134e5ddb66aa31ebd"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Vectors.VectorDef.html#const"><span·class="id"·title="definition">const</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:140"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:141"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.Vectors.VectorDef.html#3e2ab5a54c52b47134e5ddb66aa31ebd"><span·class="id"·title="notation">)[@</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#p:142"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Vectors.VectorDef.html#3e2ab5a54c52b47134e5ddb66aa31ebd"><span·class="id"·title="notation">]</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:140"><span·class="id"·title="variable">a</span></a>.<br/> | 187 | <span·class="id"·title="keyword">Lemma</span>·<a·id="const_nth"·class="idref"·href="#const_nth"><span·class="id"·title="lemma">const_nth</span></a>·<a·id="A:139"·class="idref"·href="#A:139"><span·class="id"·title="binder">A</span></a>·(<a·id="a:140"·class="idref"·href="#a:140"><span·class="id"·title="binder">a</span></a>:·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:139"><span·class="id"·title="variable">A</span></a>)·<a·id="n:141"·class="idref"·href="#n:141"><span·class="id"·title="binder">n</span></a>·(<a·id="p:142"·class="idref"·href="#p:142"><span·class="id"·title="binder">p</span></a>:·<a·class="idref"·href="Coq.Vectors.Fin.html#t"><span·class="id"·title="inductive">Fin.t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:141"><span·class="id"·title="variable">n</span></a>):·<a·class="idref"·href="Coq.Vectors.VectorDef.html#3e2ab5a54c52b47134e5ddb66aa31ebd"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Vectors.VectorDef.html#const"><span·class="id"·title="definition">const</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:140"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:141"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.Vectors.VectorDef.html#3e2ab5a54c52b47134e5ddb66aa31ebd"><span·class="id"·title="notation">)[@</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#p:142"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Vectors.VectorDef.html#3e2ab5a54c52b47134e5ddb66aa31ebd"><span·class="id"·title="notation">]</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:140"><span·class="id"·title="variable">a</span></a>.<br/> |
188 | <br/> | 188 | <br/> |
189 | <span·class="id"·title="keyword">Lemma</span>·<a·id="append_const"·class="idref"·href="#append_const"><span·class="id"·title="lemma">append_const</span></a>·<a·id="A:143"·class="idref"·href="#A:143"><span·class="id"·title="binder">A</span></a>·(<a·id="a:144"·class="idref"·href="#a:144"><span·class="id"·title="binder">a</span></a>·:·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:143"><span·class="id"·title="variable">A</span></a>)·<a·id="n:145"·class="idref"·href="#n:145"><span·class="id"·title="binder">n</span></a>·<a·id="m:146"·class="idref"·href="#m:146"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Vectors.VectorDef.html#a87b3a8e962608c1caec424398040bdf"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Vectors.VectorDef.html#const"><span·class="id"·title="definition">const</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:144"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:145"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.Vectors.VectorDef.html#a87b3a8e962608c1caec424398040bdf"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#a87b3a8e962608c1caec424398040bdf"><span·class="id"·title="notation">++</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#a87b3a8e962608c1caec424398040bdf"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Vectors.VectorDef.html#const"><span·class="id"·title="definition">const</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:144"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#m:146"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Vectors.VectorDef.html#a87b3a8e962608c1caec424398040bdf"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#const"><span·class="id"·title="definition">const</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:144"><span·class="id"·title="variable">a</span></a>·(<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:145"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Peano.html#0dacc1786c5ba797d47dd85006231633"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#m:146"><span·class="id"·title="variable">m</span></a>).<br/> | 189 | <span·class="id"·title="keyword">Lemma</span>·<a·id="append_const"·class="idref"·href="#append_const"><span·class="id"·title="lemma">append_const</span></a>·<a·id="A:143"·class="idref"·href="#A:143"><span·class="id"·title="binder">A</span></a>·(<a·id="a:144"·class="idref"·href="#a:144"><span·class="id"·title="binder">a</span></a>·:·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:143"><span·class="id"·title="variable">A</span></a>)·<a·id="n:145"·class="idref"·href="#n:145"><span·class="id"·title="binder">n</span></a>·<a·id="m:146"·class="idref"·href="#m:146"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Vectors.VectorDef.html#a87b3a8e962608c1caec424398040bdf"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Vectors.VectorDef.html#const"><span·class="id"·title="definition">const</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:144"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:145"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.Vectors.VectorDef.html#a87b3a8e962608c1caec424398040bdf"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#a87b3a8e962608c1caec424398040bdf"><span·class="id"·title="notation">++</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#a87b3a8e962608c1caec424398040bdf"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Vectors.VectorDef.html#const"><span·class="id"·title="definition">const</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:144"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#m:146"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Vectors.VectorDef.html#a87b3a8e962608c1caec424398040bdf"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#const"><span·class="id"·title="definition">const</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:144"><span·class="id"·title="variable">a</span></a>·(<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:145"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Peano.html#0dacc1786c5ba797d47dd85006231633"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#m:146"><span·class="id"·title="variable">m</span></a>).<br/> |
190 | <br/> | 190 | <br/> |
191 | </div> | 191 | </div> |
192 | <div·class="doc"> | 192 | <div·class="doc"> |
193 | <a·id="lab1 | 193 | <a·id="lab1170"></a><h2·class="section">Properties·of·<span·class="inlinecode"><span·class="id"·title="var">map</span></span></h2> |
194 | </div> | 194 | </div> |
195 | <div·class="code"> | 195 | <div·class="code"> |
196 | <br/> | 196 | <br/> |
197 | <span·class="id"·title="keyword">Lemma</span>·<a·id="map_id"·class="idref"·href="#map_id"><span·class="id"·title="lemma">map_id</span></a>·<a·id="A:147"·class="idref"·href="#A:147"><span·class="id"·title="binder">A</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="n:148"·class="idref"·href="#n:148"><span·class="id"·title="binder">n</span></a>·(<a·id="v:149"·class="idref"·href="#v:149"><span·class="id"·title="binder">v</span></a>·:·<a·class="idref"·href="Coq.Vectors.VectorDef.html#t"><span·class="id"·title="inductive">t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:147"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:148"><span·class="id"·title="variable">n</span></a>),<br/> | 197 | <span·class="id"·title="keyword">Lemma</span>·<a·id="map_id"·class="idref"·href="#map_id"><span·class="id"·title="lemma">map_id</span></a>·<a·id="A:147"·class="idref"·href="#A:147"><span·class="id"·title="binder">A</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="n:148"·class="idref"·href="#n:148"><span·class="id"·title="binder">n</span></a>·(<a·id="v:149"·class="idref"·href="#v:149"><span·class="id"·title="binder">v</span></a>·:·<a·class="idref"·href="Coq.Vectors.VectorDef.html#t"><span·class="id"·title="inductive">t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:147"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:148"><span·class="id"·title="variable">n</span></a>),<br/> |
198 | <a·class="idref"·href="Coq.Vectors.VectorDef.html#map"><span·class="id"·title="definition">map</span></a>·(<span·class="id"·title="keyword">fun</span>·<a·id="x:150"·class="idref"·href="#x:150"><span·class="id"·title="binder">x</span></a>·=>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#x:150"><span·class="id"·title="variable">x</span></a>)·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:149"><span·class="id"·title="variable">v</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:149"><span·class="id"·title="variable">v</span></a>.<br/> | 198 | <a·class="idref"·href="Coq.Vectors.VectorDef.html#map"><span·class="id"·title="definition">map</span></a>·(<span·class="id"·title="keyword">fun</span>·<a·id="x:150"·class="idref"·href="#x:150"><span·class="id"·title="binder">x</span></a>·=>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#x:150"><span·class="id"·title="variable">x</span></a>)·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:149"><span·class="id"·title="variable">v</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:149"><span·class="id"·title="variable">v</span></a>.<br/> |
Offset 234, 29 lines modified | Offset 234, 29 lines modified | ||
234 | <span·class="id"·title="keyword">Lemma</span>·<a·id="map2_ext"·class="idref"·href="#map2_ext"><span·class="id"·title="lemma">map2_ext</span></a>·<a·id="A:198"·class="idref"·href="#A:198"><span·class="id"·title="binder">A</span></a>·<a·id="B:199"·class="idref"·href="#B:199"><span·class="id"·title="binder">B</span></a>·<a·id="C:200"·class="idref"·href="#C:200"><span·class="id"·title="binder">C</span></a>:·<span·class="id"·title="keyword">forall</span>·(<a·id="f:201"·class="idref"·href="#f:201"><span·class="id"·title="binder">f</span></a>·<a·id="g:202"·class="idref"·href="#g:202"><span·class="id"·title="binder">g</span></a>:<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:198"><span·class="id"·title="variable">A</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.Vectors.VectorSpec.html#B:199"><span·class="id"·title="variable">B</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.Vectors.VectorSpec.html#C:200"><span·class="id"·title="variable">C</span></a>),·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="a:203"·class="idref"·href="#a:203"><span·class="id"·title="binder">a</span></a>·<a·id="b:204"·class="idref"·href="#b:204"><span·class="id"·title="binder">b</span></a>,·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#f:201"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:203"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#b:204"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#g:202"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:203"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#b:204"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 234 | <span·class="id"·title="keyword">Lemma</span>·<a·id="map2_ext"·class="idref"·href="#map2_ext"><span·class="id"·title="lemma">map2_ext</span></a>·<a·id="A:198"·class="idref"·href="#A:198"><span·class="id"·title="binder">A</span></a>·<a·id="B:199"·class="idref"·href="#B:199"><span·class="id"·title="binder">B</span></a>·<a·id="C:200"·class="idref"·href="#C:200"><span·class="id"·title="binder">C</span></a>:·<span·class="id"·title="keyword">forall</span>·(<a·id="f:201"·class="idref"·href="#f:201"><span·class="id"·title="binder">f</span></a>·<a·id="g:202"·class="idref"·href="#g:202"><span·class="id"·title="binder">g</span></a>:<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:198"><span·class="id"·title="variable">A</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.Vectors.VectorSpec.html#B:199"><span·class="id"·title="variable">B</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><a·class="idref"·href="Coq.Vectors.VectorSpec.html#C:200"><span·class="id"·title="variable">C</span></a>),·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">(</span></a><span·class="id"·title="keyword">forall</span>·<a·id="a:203"·class="idref"·href="#a:203"><span·class="id"·title="binder">a</span></a>·<a·id="b:204"·class="idref"·href="#b:204"><span·class="id"·title="binder">b</span></a>,·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#f:201"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:203"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#b:204"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#g:202"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:203"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#b:204"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
235 | <span·class="id"·title="keyword">forall</span>·<a·id="n:205"·class="idref"·href="#n:205"><span·class="id"·title="binder">n</span></a>·(<a·id="v:206"·class="idref"·href="#v:206"><span·class="id"·title="binder">v</span></a>·:·<a·class="idref"·href="Coq.Vectors.VectorDef.html#t"><span·class="id"·title="inductive">t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:198"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:205"><span·class="id"·title="variable">n</span></a>)·(<a·id="w:207"·class="idref"·href="#w:207"><span·class="id"·title="binder">w</span></a>·:·<a·class="idref"·href="Coq.Vectors.VectorDef.html#t"><span·class="id"·title="inductive">t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#B:199"><span·class="id"·title="variable">B</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:205"><span·class="id"·title="variable">n</span></a>),·<a·class="idref"·href="Coq.Vectors.VectorDef.html#map2"><span·class="id"·title="definition">map2</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#f:201"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:206"><span·class="id"·title="variable">v</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#w:207"><span·class="id"·title="variable">w</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#map2"><span·class="id"·title="definition">map2</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#g:202"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:206"><span·class="id"·title="variable">v</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#w:207"><span·class="id"·title="variable">w</span></a>.<br/> | 235 | <span·class="id"·title="keyword">forall</span>·<a·id="n:205"·class="idref"·href="#n:205"><span·class="id"·title="binder">n</span></a>·(<a·id="v:206"·class="idref"·href="#v:206"><span·class="id"·title="binder">v</span></a>·:·<a·class="idref"·href="Coq.Vectors.VectorDef.html#t"><span·class="id"·title="inductive">t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:198"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:205"><span·class="id"·title="variable">n</span></a>)·(<a·id="w:207"·class="idref"·href="#w:207"><span·class="id"·title="binder">w</span></a>·:·<a·class="idref"·href="Coq.Vectors.VectorDef.html#t"><span·class="id"·title="inductive">t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#B:199"><span·class="id"·title="variable">B</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:205"><span·class="id"·title="variable">n</span></a>),·<a·class="idref"·href="Coq.Vectors.VectorDef.html#map2"><span·class="id"·title="definition">map2</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#f:201"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:206"><span·class="id"·title="variable">v</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#w:207"><span·class="id"·title="variable">w</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#map2"><span·class="id"·title="definition">map2</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#g:202"><span·class="id"·title="variable">g</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:206"><span·class="id"·title="variable">v</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#w:207"><span·class="id"·title="variable">w</span></a>.<br/> |
236 | <br/> | 236 | <br/> |
237 | </div> | 237 | </div> |
238 | <div·class="doc"> | 238 | <div·class="doc"> |
239 | <a·id="lab1 | 239 | <a·id="lab1171"></a><h2·class="section">Properties·of·<span·class="inlinecode"><span·class="id"·title="var">fold_left</span></span></h2> |
240 | </div> | 240 | </div> |
241 | <div·class="code"> | 241 | <div·class="code"> |
242 | <br/> | 242 | <br/> |
243 | <span·class="id"·title="keyword">Lemma</span>·<a·id="fold_left_right_assoc_eq"·class="idref"·href="#fold_left_right_assoc_eq"><span·class="id"·title="lemma">fold_left_right_assoc_eq</span></a>·{<a·id="A:214"·class="idref"·href="#A:214"><span·class="id"·title="binder">A</span></a>·<a·id="B:215"·class="idref"·href="#B:215"><span·class="id"·title="binder">B</span></a>}·{<a·id="f:216"·class="idref"·href="#f:216"><span·class="id"·title="binder">f</span></a>:·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:214"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#B:215"><span·class="id"·title="variable">B</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:214"><span·class="id"·title="variable">A</span></a>}<br/> | 243 | <span·class="id"·title="keyword">Lemma</span>·<a·id="fold_left_right_assoc_eq"·class="idref"·href="#fold_left_right_assoc_eq"><span·class="id"·title="lemma">fold_left_right_assoc_eq</span></a>·{<a·id="A:214"·class="idref"·href="#A:214"><span·class="id"·title="binder">A</span></a>·<a·id="B:215"·class="idref"·href="#B:215"><span·class="id"·title="binder">B</span></a>}·{<a·id="f:216"·class="idref"·href="#f:216"><span·class="id"·title="binder">f</span></a>:·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:214"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#B:215"><span·class="id"·title="variable">B</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:214"><span·class="id"·title="variable">A</span></a>}<br/> |
244 | (<a·id="assoc:220"·class="idref"·href="#assoc:220"><span·class="id"·title="binder">assoc</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:217"·class="idref"·href="#a:217"><span·class="id"·title="binder">a</span></a>·<a·id="b:218"·class="idref"·href="#b:218"><span·class="id"·title="binder">b</span></a>·<a·id="c:219"·class="idref"·href="#c:219"><span·class="id"·title="binder">c</span></a>,·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#f:216"><span·class="id"·title="variable">f</span></a>·(<a·class="idref"·href="Coq.Vectors.VectorSpec.html#f:216"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:217"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#b:218"><span·class="id"·title="variable">b</span></a>)·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#c:219"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#f:216"><span·class="id"·title="variable">f</span></a>·(<a·class="idref"·href="Coq.Vectors.VectorSpec.html#f:216"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:217"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#c:219"><span·class="id"·title="variable">c</span></a>)·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#b:218"><span·class="id"·title="variable">b</span></a>)<br/> | 244 | (<a·id="assoc:220"·class="idref"·href="#assoc:220"><span·class="id"·title="binder">assoc</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:217"·class="idref"·href="#a:217"><span·class="id"·title="binder">a</span></a>·<a·id="b:218"·class="idref"·href="#b:218"><span·class="id"·title="binder">b</span></a>·<a·id="c:219"·class="idref"·href="#c:219"><span·class="id"·title="binder">c</span></a>,·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#f:216"><span·class="id"·title="variable">f</span></a>·(<a·class="idref"·href="Coq.Vectors.VectorSpec.html#f:216"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:217"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#b:218"><span·class="id"·title="variable">b</span></a>)·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#c:219"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#f:216"><span·class="id"·title="variable">f</span></a>·(<a·class="idref"·href="Coq.Vectors.VectorSpec.html#f:216"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:217"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#c:219"><span·class="id"·title="variable">c</span></a>)·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#b:218"><span·class="id"·title="variable">b</span></a>)<br/> |
245 | {<a·id="n:221"·class="idref"·href="#n:221"><span·class="id"·title="binder">n</span></a>}·(<a·id="v:222"·class="idref"·href="#v:222"><span·class="id"·title="binder">v</span></a>:·<a·class="idref"·href="Coq.Vectors.VectorDef.html#t"><span·class="id"·title="inductive">t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#B:215"><span·class="id"·title="variable">B</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:221"><span·class="id"·title="variable">n</span></a>):·<span·class="id"·title="keyword">forall</span>·<a·id="a:223"·class="idref"·href="#a:223"><span·class="id"·title="binder">a</span></a>,·<a·class="idref"·href="Coq.Vectors.VectorDef.html#fold_left"><span·class="id"·title="definition">fold_left</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#f:216"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:223"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:222"><span·class="id"·title="variable">v</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#fold_right"><span·class="id"·title="definition">fold_right</span></a>·(<span·class="id"·title="keyword">fun</span>·<a·id="x:224"·class="idref"·href="#x:224"><span·class="id"·title="binder">x</span></a>·<a·id="y:225"·class="idref"·href="#y:225"><span·class="id"·title="binder">y</span></a>·=>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#f:216"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#y:225"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#x:224"><span·class="id"·title="variable">x</span></a>)·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:222"><span·class="id"·title="variable">v</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:223"><span·class="id"·title="variable">a</span></a>.<br/> | 245 | {<a·id="n:221"·class="idref"·href="#n:221"><span·class="id"·title="binder">n</span></a>}·(<a·id="v:222"·class="idref"·href="#v:222"><span·class="id"·title="binder">v</span></a>:·<a·class="idref"·href="Coq.Vectors.VectorDef.html#t"><span·class="id"·title="inductive">t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#B:215"><span·class="id"·title="variable">B</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:221"><span·class="id"·title="variable">n</span></a>):·<span·class="id"·title="keyword">forall</span>·<a·id="a:223"·class="idref"·href="#a:223"><span·class="id"·title="binder">a</span></a>,·<a·class="idref"·href="Coq.Vectors.VectorDef.html#fold_left"><span·class="id"·title="definition">fold_left</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#f:216"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:223"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:222"><span·class="id"·title="variable">v</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#fold_right"><span·class="id"·title="definition">fold_right</span></a>·(<span·class="id"·title="keyword">fun</span>·<a·id="x:224"·class="idref"·href="#x:224"><span·class="id"·title="binder">x</span></a>·<a·id="y:225"·class="idref"·href="#y:225"><span·class="id"·title="binder">y</span></a>·=>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#f:216"><span·class="id"·title="variable">f</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#y:225"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#x:224"><span·class="id"·title="variable">x</span></a>)·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:222"><span·class="id"·title="variable">v</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:223"><span·class="id"·title="variable">a</span></a>.<br/> |
246 | <br/> | 246 | <br/> |
247 | </div> | 247 | </div> |
248 | <div·class="doc"> | 248 | <div·class="doc"> |
249 | <a·id="lab1 | 249 | <a·id="lab1172"></a><h2·class="section">Properties·of·<span·class="inlinecode"><span·class="id"·title="var">take</span></span></h2> |
250 | </div> | 250 | </div> |
251 | <div·class="code"> | 251 | <div·class="code"> |
252 | <br/> | 252 | <br/> |
253 | <span·class="id"·title="keyword">Lemma</span>·<a·id="take_O"·class="idref"·href="#take_O"><span·class="id"·title="lemma">take_O</span></a>·:·<span·class="id"·title="keyword">forall</span>·{<a·id="A:234"·class="idref"·href="#A:234"><span·class="id"·title="binder">A</span></a>}·{<a·id="n:235"·class="idref"·href="#n:235"><span·class="id"·title="binder">n</span></a>}·<a·id="le:236"·class="idref"·href="#le:236"><span·class="id"·title="binder">le</span></a>·(<a·id="v:237"·class="idref"·href="#v:237"><span·class="id"·title="binder">v</span></a>:<a·class="idref"·href="Coq.Vectors.VectorDef.html#t"><span·class="id"·title="inductive">t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:234"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:235"><span·class="id"·title="variable">n</span></a>),·<a·class="idref"·href="Coq.Vectors.VectorDef.html#take"><span·class="id"·title="definition">take</span></a>·0·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#le:236"><span·class="id"·title="variable">le</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:237"><span·class="id"·title="variable">v</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#4591d6c2b36fedc12d5b1c142546a37e"><span·class="id"·title="notation">[]</span></a>.<br/> | 253 | <span·class="id"·title="keyword">Lemma</span>·<a·id="take_O"·class="idref"·href="#take_O"><span·class="id"·title="lemma">take_O</span></a>·:·<span·class="id"·title="keyword">forall</span>·{<a·id="A:234"·class="idref"·href="#A:234"><span·class="id"·title="binder">A</span></a>}·{<a·id="n:235"·class="idref"·href="#n:235"><span·class="id"·title="binder">n</span></a>}·<a·id="le:236"·class="idref"·href="#le:236"><span·class="id"·title="binder">le</span></a>·(<a·id="v:237"·class="idref"·href="#v:237"><span·class="id"·title="binder">v</span></a>:<a·class="idref"·href="Coq.Vectors.VectorDef.html#t"><span·class="id"·title="inductive">t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:234"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:235"><span·class="id"·title="variable">n</span></a>),·<a·class="idref"·href="Coq.Vectors.VectorDef.html#take"><span·class="id"·title="definition">take</span></a>·0·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#le:236"><span·class="id"·title="variable">le</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:237"><span·class="id"·title="variable">v</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#4591d6c2b36fedc12d5b1c142546a37e"><span·class="id"·title="notation">[]</span></a>.<br/> |
Offset 270, 15 lines modified | Offset 270, 15 lines modified | ||
270 | <br/> | 270 | <br/> |
271 | <span·class="id"·title="keyword">Lemma</span>·<a·id="take_prf_irr"·class="idref"·href="#take_prf_irr"><span·class="id"·title="lemma">take_prf_irr</span></a>·:·<span·class="id"·title="keyword">forall</span>·{<a·id="A:250"·class="idref"·href="#A:250"><span·class="id"·title="binder">A</span></a>}·<a·id="p:251"·class="idref"·href="#p:251"><span·class="id"·title="binder">p</span></a>·{<a·id="n:252"·class="idref"·href="#n:252"><span·class="id"·title="binder">n</span></a>}·(<a·id="v:253"·class="idref"·href="#v:253"><span·class="id"·title="binder">v</span></a>:<a·class="idref"·href="Coq.Vectors.VectorDef.html#t"><span·class="id"·title="inductive">t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:250"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:252"><span·class="id"·title="variable">n</span></a>)·<a·id="le:254"·class="idref"·href="#le:254"><span·class="id"·title="binder">le</span></a>·<a·id="le':255"·class="idref"·href="#le':255"><span·class="id"·title="binder">le'</span></a>,·<a·class="idref"·href="Coq.Vectors.VectorDef.html#take"><span·class="id"·title="definition">take</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#p:251"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#le:254"><span·class="id"·title="variable">le</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:253"><span·class="id"·title="variable">v</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#take"><span·class="id"·title="definition">take</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#p:251"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#le':255"><span·class="id"·title="variable">le'</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:253"><span·class="id"·title="variable">v</span></a>.<br/> | 271 | <span·class="id"·title="keyword">Lemma</span>·<a·id="take_prf_irr"·class="idref"·href="#take_prf_irr"><span·class="id"·title="lemma">take_prf_irr</span></a>·:·<span·class="id"·title="keyword">forall</span>·{<a·id="A:250"·class="idref"·href="#A:250"><span·class="id"·title="binder">A</span></a>}·<a·id="p:251"·class="idref"·href="#p:251"><span·class="id"·title="binder">p</span></a>·{<a·id="n:252"·class="idref"·href="#n:252"><span·class="id"·title="binder">n</span></a>}·(<a·id="v:253"·class="idref"·href="#v:253"><span·class="id"·title="binder">v</span></a>:<a·class="idref"·href="Coq.Vectors.VectorDef.html#t"><span·class="id"·title="inductive">t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:250"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:252"><span·class="id"·title="variable">n</span></a>)·<a·id="le:254"·class="idref"·href="#le:254"><span·class="id"·title="binder">le</span></a>·<a·id="le':255"·class="idref"·href="#le':255"><span·class="id"·title="binder">le'</span></a>,·<a·class="idref"·href="Coq.Vectors.VectorDef.html#take"><span·class="id"·title="definition">take</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#p:251"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#le:254"><span·class="id"·title="variable">le</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:253"><span·class="id"·title="variable">v</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#take"><span·class="id"·title="definition">take</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#p:251"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#le':255"><span·class="id"·title="variable">le'</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:253"><span·class="id"·title="variable">v</span></a>.<br/> |
272 | <br/> | 272 | <br/> |
273 | </div> | 273 | </div> |
274 | <div·class="doc"> | 274 | <div·class="doc"> |
275 | <a·id="lab1 | 275 | <a·id="lab1173"></a><h2·class="section">Properties·of·<span·class="inlinecode"><span·class="id"·title="var">uncons</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">splitat</span></span></h2> |
276 | </div> | 276 | </div> |
277 | <div·class="code"> | 277 | <div·class="code"> |
278 | <br/> | 278 | <br/> |
279 | <span·class="id"·title="keyword">Lemma</span>·<a·id="uncons_cons"·class="idref"·href="#uncons_cons"><span·class="id"·title="lemma">uncons_cons</span></a>·{<a·id="A:256"·class="idref"·href="#A:256"><span·class="id"·title="binder">A</span></a>}·:·<span·class="id"·title="keyword">forall</span>·{<a·id="n:257"·class="idref"·href="#n:257"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>}·(<a·id="a:258"·class="idref"·href="#a:258"><span·class="id"·title="binder">a</span></a>·:·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:256"><span·class="id"·title="variable">A</span></a>)·(<a·id="v:259"·class="idref"·href="#v:259"><span·class="id"·title="binder">v</span></a>·:·<a·class="idref"·href="Coq.Vectors.VectorDef.html#t"><span·class="id"·title="inductive">t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:256"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:257"><span·class="id"·title="variable">n</span></a>),<br/> | 279 | <span·class="id"·title="keyword">Lemma</span>·<a·id="uncons_cons"·class="idref"·href="#uncons_cons"><span·class="id"·title="lemma">uncons_cons</span></a>·{<a·id="A:256"·class="idref"·href="#A:256"><span·class="id"·title="binder">A</span></a>}·:·<span·class="id"·title="keyword">forall</span>·{<a·id="n:257"·class="idref"·href="#n:257"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>}·(<a·id="a:258"·class="idref"·href="#a:258"><span·class="id"·title="binder">a</span></a>·:·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:256"><span·class="id"·title="variable">A</span></a>)·(<a·id="v:259"·class="idref"·href="#v:259"><span·class="id"·title="binder">v</span></a>·:·<a·class="idref"·href="Coq.Vectors.VectorDef.html#t"><span·class="id"·title="inductive">t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:256"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:257"><span·class="id"·title="variable">n</span></a>),<br/> |
280 | <a·class="idref"·href="Coq.Vectors.VectorDef.html#uncons"><span·class="id"·title="definition">uncons</span></a>·(<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:258"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Vectors.VectorDef.html#VectorNotations.::vector_scope:x_'::'_x"><span·class="id"·title="notation">::</span></a><a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:259"><span·class="id"·title="variable">v</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:258"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span·class="id"·title="notation">,</span></a><a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:259"><span·class="id"·title="variable">v</span></a><a·class="idref"·href="Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span·class="id"·title="notation">)</span></a>.<br/> | 280 | <a·class="idref"·href="Coq.Vectors.VectorDef.html#uncons"><span·class="id"·title="definition">uncons</span></a>·(<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:258"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Vectors.VectorDef.html#VectorNotations.::vector_scope:x_'::'_x"><span·class="id"·title="notation">::</span></a><a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:259"><span·class="id"·title="variable">v</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:258"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span·class="id"·title="notation">,</span></a><a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:259"><span·class="id"·title="variable">v</span></a><a·class="idref"·href="Coq.Init.Datatypes.html#e6756e10c36f149b18b4a8741ed83079"><span·class="id"·title="notation">)</span></a>.<br/> |
Offset 301, 28 lines modified | Offset 301, 28 lines modified | ||
301 | <span·class="id"·title="keyword">Lemma</span>·<a·id="append_inj"·class="idref"·href="#append_inj"><span·class="id"·title="lemma">append_inj</span></a>·{<a·id="A:277"·class="idref"·href="#A:277"><span·class="id"·title="binder">A</span></a>}·:·<span·class="id"·title="keyword">forall</span>·{<a·id="n:278"·class="idref"·href="#n:278"><span·class="id"·title="binder">n</span></a>·<a·id="m:279"·class="idref"·href="#m:279"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>}·(<a·id="v:280"·class="idref"·href="#v:280"><span·class="id"·title="binder">v</span></a>·<a·id="v':281"·class="idref"·href="#v':281"><span·class="id"·title="binder">v'</span></a>·:·<a·class="idref"·href="Coq.Vectors.VectorDef.html#t"><span·class="id"·title="inductive">t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:277"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:278"><span·class="id"·title="variable">n</span></a>)·(<a·id="w:282"·class="idref"·href="#w:282"><span·class="id"·title="binder">w</span></a>·<a·id="w':283"·class="idref"·href="#w':283"><span·class="id"·title="binder">w'</span></a>·:·<a·class="idref"·href="Coq.Vectors.VectorDef.html#t"><span·class="id"·title="inductive">t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:277"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#m:279"><span·class="id"·title="variable">m</span></a>),<br/> | 301 | <span·class="id"·title="keyword">Lemma</span>·<a·id="append_inj"·class="idref"·href="#append_inj"><span·class="id"·title="lemma">append_inj</span></a>·{<a·id="A:277"·class="idref"·href="#A:277"><span·class="id"·title="binder">A</span></a>}·:·<span·class="id"·title="keyword">forall</span>·{<a·id="n:278"·class="idref"·href="#n:278"><span·class="id"·title="binder">n</span></a>·<a·id="m:279"·class="idref"·href="#m:279"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>}·(<a·id="v:280"·class="idref"·href="#v:280"><span·class="id"·title="binder">v</span></a>·<a·id="v':281"·class="idref"·href="#v':281"><span·class="id"·title="binder">v'</span></a>·:·<a·class="idref"·href="Coq.Vectors.VectorDef.html#t"><span·class="id"·title="inductive">t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:277"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:278"><span·class="id"·title="variable">n</span></a>)·(<a·id="w:282"·class="idref"·href="#w:282"><span·class="id"·title="binder">w</span></a>·<a·id="w':283"·class="idref"·href="#w':283"><span·class="id"·title="binder">w'</span></a>·:·<a·class="idref"·href="Coq.Vectors.VectorDef.html#t"><span·class="id"·title="inductive">t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:277"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#m:279"><span·class="id"·title="variable">m</span></a>),<br/> |
302 | <a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:280"><span·class="id"·title="variable">v</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#a87b3a8e962608c1caec424398040bdf"><span·class="id"·title="notation">++</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#w:282"><span·class="id"·title="variable">w</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v':281"><span·class="id"·title="variable">v'</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#a87b3a8e962608c1caec424398040bdf"><span·class="id"·title="notation">++</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#w':283"><span·class="id"·title="variable">w'</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:280"><span·class="id"·title="variable">v</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v':281"><span·class="id"·title="variable">v'</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#w:282"><span·class="id"·title="variable">w</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#w':283"><span·class="id"·title="variable">w'</span></a>.<br/> | 302 | <a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:280"><span·class="id"·title="variable">v</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#a87b3a8e962608c1caec424398040bdf"><span·class="id"·title="notation">++</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#w:282"><span·class="id"·title="variable">w</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v':281"><span·class="id"·title="variable">v'</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#a87b3a8e962608c1caec424398040bdf"><span·class="id"·title="notation">++</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#w':283"><span·class="id"·title="variable">w'</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:280"><span·class="id"·title="variable">v</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v':281"><span·class="id"·title="variable">v'</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#w:282"><span·class="id"·title="variable">w</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#w':283"><span·class="id"·title="variable">w'</span></a>.<br/> |
303 | <br/> | 303 | <br/> |
304 | </div> | 304 | </div> |
305 | <div·class="doc"> | 305 | <div·class="doc"> |
306 | <a·id="lab1 | 306 | <a·id="lab1174"></a><h2·class="section">Properties·of·<span·class="inlinecode"><span·class="id"·title="var">In</span></span></h2> |
307 | </div> | 307 | </div> |
308 | <div·class="code"> | 308 | <div·class="code"> |
309 | <br/> | 309 | <br/> |
310 | <span·class="id"·title="keyword">Lemma</span>·<a·id="In_cons_iff"·class="idref"·href="#In_cons_iff"><span·class="id"·title="lemma">In_cons_iff</span></a>·<a·id="A:284"·class="idref"·href="#A:284"><span·class="id"·title="binder">A</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="n:285"·class="idref"·href="#n:285"><span·class="id"·title="binder">n</span></a>·<a·id="a:286"·class="idref"·href="#a:286"><span·class="id"·title="binder">a</span></a>·<a·id="b:287"·class="idref"·href="#b:287"><span·class="id"·title="binder">b</span></a>·(<a·id="v:288"·class="idref"·href="#v:288"><span·class="id"·title="binder">v</span></a>·:·<a·class="idref"·href="Coq.Vectors.VectorDef.html#t"><span·class="id"·title="inductive">t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:284"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:285"><span·class="id"·title="variable">n</span></a>),<br/> | 310 | <span·class="id"·title="keyword">Lemma</span>·<a·id="In_cons_iff"·class="idref"·href="#In_cons_iff"><span·class="id"·title="lemma">In_cons_iff</span></a>·<a·id="A:284"·class="idref"·href="#A:284"><span·class="id"·title="binder">A</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="n:285"·class="idref"·href="#n:285"><span·class="id"·title="binder">n</span></a>·<a·id="a:286"·class="idref"·href="#a:286"><span·class="id"·title="binder">a</span></a>·<a·id="b:287"·class="idref"·href="#b:287"><span·class="id"·title="binder">b</span></a>·(<a·id="v:288"·class="idref"·href="#v:288"><span·class="id"·title="binder">v</span></a>·:·<a·class="idref"·href="Coq.Vectors.VectorDef.html#t"><span·class="id"·title="inductive">t</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#A:284"><span·class="id"·title="variable">A</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#n:285"><span·class="id"·title="variable">n</span></a>),<br/> |
311 | <a·class="idref"·href="Coq.Vectors.VectorDef.html#In"><span·class="id"·title="inductive">In</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:286"><span·class="id"·title="variable">a</span></a>·(<a·class="idref"·href="Coq.Vectors.VectorSpec.html#b:287"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#VectorNotations.::vector_scope:x_'::'_x"><span·class="id"·title="notation">::</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:288"><span·class="id"·title="variable">v</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Vectors.VectorSpec.html#b:287"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:286"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#In"><span·class="id"·title="inductive">In</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:286"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:288"><span·class="id"·title="variable">v</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation">)</span></a>.<br/> | 311 | <a·class="idref"·href="Coq.Vectors.VectorDef.html#In"><span·class="id"·title="inductive">In</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:286"><span·class="id"·title="variable">a</span></a>·(<a·class="idref"·href="Coq.Vectors.VectorSpec.html#b:287"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#VectorNotations.::vector_scope:x_'::'_x"><span·class="id"·title="notation">::</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:288"><span·class="id"·title="variable">v</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Vectors.VectorSpec.html#b:287"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:286"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.Vectors.VectorDef.html#In"><span·class="id"·title="inductive">In</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#a:286"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Vectors.VectorSpec.html#v:288"><span·class="id"·title="variable">v</span></a><a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation">)</span></a>.<br/> |
312 | <br/> | 312 | <br/> |
313 | </div> | 313 | </div> |
Max diff block lines reached; 18466/58814 bytes (31.40%) of diff not shown. |
Offset 51, 15 lines modified | Offset 51, 15 lines modified | ||
51 | <a·class="idref"·href="Coq.Structures.OrdersFacts.html#"><span·class="id"·title="library">OrdersFacts</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZAxioms.html#"><span·class="id"·title="library">ZAxioms</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZProperties.html#"><span·class="id"·title="library">ZProperties</span></a>·<a·class="idref"·href="Coq.Classes.DecidableClass.html#"><span·class="id"·title="library">DecidableClass</span></a>.<br/> | 51 | <a·class="idref"·href="Coq.Structures.OrdersFacts.html#"><span·class="id"·title="library">OrdersFacts</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZAxioms.html#"><span·class="id"·title="library">ZAxioms</span></a>·<a·class="idref"·href="Coq.Numbers.Integer.Abstract.ZProperties.html#"><span·class="id"·title="library">ZProperties</span></a>·<a·class="idref"·href="Coq.Classes.DecidableClass.html#"><span·class="id"·title="library">DecidableClass</span></a>.<br/> |
52 | <span·class="id"·title="keyword">Require</span>·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#"><span·class="id"·title="library">BinIntDef</span></a>.<br/> | 52 | <span·class="id"·title="keyword">Require</span>·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#"><span·class="id"·title="library">BinIntDef</span></a>.<br/> |
53 | <br/> | 53 | <br/> |
54 | </div> | 54 | </div> |
55 | <div·class="doc"> | 55 | <div·class="doc"> |
56 | <a·id="lab | 56 | <a·id="lab435"></a><h1·class="section">Binary·Integers</h1> |
57 | <div·class="paragraph">·</div> | 57 | <div·class="paragraph">·</div> |
58 | ·Initial·author:·Pierre·Crégut,·CNET,·Lannion,·France· | 58 | ·Initial·author:·Pierre·Crégut,·CNET,·Lannion,·France· |
59 | <div·class="paragraph">·</div> | 59 | <div·class="paragraph">·</div> |
60 | ·The·type·<span·class="inlinecode"><span·class="id"·title="var">Z</span></span>·and·its·constructors·<span·class="inlinecode"><span·class="id"·title="var">Z0</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">Zpos</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">Zneg</span></span> | 60 | ·The·type·<span·class="inlinecode"><span·class="id"·title="var">Z</span></span>·and·its·constructors·<span·class="inlinecode"><span·class="id"·title="var">Z0</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">Zpos</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">Zneg</span></span> |
Offset 86, 15 lines modified | Offset 86, 15 lines modified | ||
86 | <:·<a·class="idref"·href="Coq.Structures.Equalities.html#UsualDecidableTypeFull"><span·class="id"·title="module">UsualDecidableTypeFull</span></a><br/> | 86 | <:·<a·class="idref"·href="Coq.Structures.Equalities.html#UsualDecidableTypeFull"><span·class="id"·title="module">UsualDecidableTypeFull</span></a><br/> |
87 | <:·<a·class="idref"·href="Coq.Structures.Orders.html#TotalOrder"><span·class="id"·title="module">TotalOrder</span></a>.<br/> | 87 | <:·<a·class="idref"·href="Coq.Structures.Orders.html#TotalOrder"><span·class="id"·title="module">TotalOrder</span></a>.<br/> |
88 | <br/> | 88 | <br/> |
89 | </div> | 89 | </div> |
90 | <div·class="doc"> | 90 | <div·class="doc"> |
91 | <a·id="lab | 91 | <a·id="lab436"></a><h1·class="section">Definitions·of·operations,·now·in·a·separate·file</h1> |
92 | </div> | 92 | </div> |
93 | <div·class="code"> | 93 | <div·class="code"> |
94 | <br/> | 94 | <br/> |
95 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#Z"><span·class="id"·title="module">BinIntDef.Z</span></a>.<br/> | 95 | <span·class="id"·title="keyword">Include</span>·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#Z"><span·class="id"·title="module">BinIntDef.Z</span></a>.<br/> |
Offset 118, 15 lines modified | Offset 118, 15 lines modified | ||
118 | <br/> | 118 | <br/> |
119 | <br/> | 119 | <br/> |
120 | </div> | 120 | </div> |
121 | <div·class="doc"> | 121 | <div·class="doc"> |
122 | <a·id="lab | 122 | <a·id="lab437"></a><h1·class="section">Logic·Predicates</h1> |
123 | </div> | 123 | </div> |
124 | <div·class="code"> | 124 | <div·class="code"> |
125 | <br/> | 125 | <br/> |
126 | <span·class="id"·title="keyword">Definition</span>·<a·id="Z.eq"·class="idref"·href="#Z.eq"><span·class="id"·title="definition">eq</span></a>·:=·@<a·class="idref"·href="Coq.Init.Logic.html#eq"><span·class="id"·title="inductive">Logic.eq</span></a>·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>.<br/> | 126 | <span·class="id"·title="keyword">Definition</span>·<a·id="Z.eq"·class="idref"·href="#Z.eq"><span·class="id"·title="definition">eq</span></a>·:=·@<a·class="idref"·href="Coq.Init.Logic.html#eq"><span·class="id"·title="inductive">Logic.eq</span></a>·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>.<br/> |
127 | <span·class="id"·title="keyword">Definition</span>·<a·id="Z.eq_equiv"·class="idref"·href="#Z.eq_equiv"><span·class="id"·title="definition">eq_equiv</span></a>·:=·@<a·class="idref"·href="Coq.Classes.RelationClasses.html#eq_equivalence"><span·class="id"·title="instance">eq_equivalence</span></a>·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>.<br/> | 127 | <span·class="id"·title="keyword">Definition</span>·<a·id="Z.eq_equiv"·class="idref"·href="#Z.eq_equiv"><span·class="id"·title="definition">eq_equiv</span></a>·:=·@<a·class="idref"·href="Coq.Classes.RelationClasses.html#eq_equivalence"><span·class="id"·title="instance">eq_equivalence</span></a>·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>.<br/> |
Offset 168, 27 lines modified | Offset 168, 27 lines modified | ||
168 | <span·class="id"·title="keyword">Register</span>·<span·class="id"·title="var">gtb</span>·<span·class="id"·title="keyword">as</span>·<span·class="id"·title="var">num.Z.gtb</span>.<br/> | 168 | <span·class="id"·title="keyword">Register</span>·<span·class="id"·title="var">gtb</span>·<span·class="id"·title="keyword">as</span>·<span·class="id"·title="var">num.Z.gtb</span>.<br/> |
169 | <span·class="id"·title="keyword">Register</span>·<span·class="id"·title="var">eqb</span>·<span·class="id"·title="keyword">as</span>·<span·class="id"·title="var">num.Z.eqb</span>.<br/> | 169 | <span·class="id"·title="keyword">Register</span>·<span·class="id"·title="var">eqb</span>·<span·class="id"·title="keyword">as</span>·<span·class="id"·title="var">num.Z.eqb</span>.<br/> |
170 | <br/> | 170 | <br/> |
171 | </div> | 171 | </div> |
172 | <div·class="doc"> | 172 | <div·class="doc"> |
173 | <a·id="lab | 173 | <a·id="lab438"></a><h1·class="section">Decidability·of·equality.</h1> |
174 | </div> | 174 | </div> |
175 | <div·class="code"> | 175 | <div·class="code"> |
176 | <br/> | 176 | <br/> |
177 | <span·class="id"·title="keyword">Definition</span>·<a·id="Z.eq_dec"·class="idref"·href="#Z.eq_dec"><span·class="id"·title="definition">eq_dec</span></a>·(<a·id="x:16"·class="idref"·href="#x:16"><span·class="id"·title="binder">x</span></a>·<a·id="y:17"·class="idref"·href="#y:17"><span·class="id"·title="binder">y</span></a>·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>)·:·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#x:16"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#y:17"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#x:16"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#y:17"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>.<br/> | 177 | <span·class="id"·title="keyword">Definition</span>·<a·id="Z.eq_dec"·class="idref"·href="#Z.eq_dec"><span·class="id"·title="definition">eq_dec</span></a>·(<a·id="x:16"·class="idref"·href="#x:16"><span·class="id"·title="binder">x</span></a>·<a·id="y:17"·class="idref"·href="#y:17"><span·class="id"·title="binder">y</span></a>·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>)·:·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#x:16"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#y:17"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#x:16"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#y:17"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>.<br/> |
178 | <br/> | 178 | <br/> |
179 | </div> | 179 | </div> |
180 | <div·class="doc"> | 180 | <div·class="doc"> |
181 | <a·id="lab | 181 | <a·id="lab439"></a><h1·class="section">Proofs·of·morphisms,·obvious·since·eq·is·Leibniz</h1> |
182 | </div> | 182 | </div> |
183 | <div·class="code"> | 183 | <div·class="code"> |
184 | <br/> | 184 | <br/> |
185 | <span·class="id"·title="keyword">Local·Obligation</span>·<span·class="id"·title="keyword">Tactic</span>·:=·<span·class="id"·title="var">simpl_relation</span>.<br/> | 185 | <span·class="id"·title="keyword">Local·Obligation</span>·<span·class="id"·title="keyword">Tactic</span>·:=·<span·class="id"·title="var">simpl_relation</span>.<br/> |
186 | <span·class="id"·title="keyword">Program·Definition</span>·<a·id="Z.succ_wd"·class="idref"·href="#Z.succ_wd"><span·class="id"·title="definition">succ_wd</span></a>·:·<a·class="idref"·href="Coq.Classes.Morphisms.html#Proper"><span·class="id"·title="class">Proper</span></a>·(<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.eq"><span·class="id"·title="definition">eq</span></a><a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#Z.eq"><span·class="id"·title="definition">eq</span></a>)·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.succ"><span·class="id"·title="definition">succ</span></a>·:=·<span·class="id"·title="var">_</span>.<br/> | 186 | <span·class="id"·title="keyword">Program·Definition</span>·<a·id="Z.succ_wd"·class="idref"·href="#Z.succ_wd"><span·class="id"·title="definition">succ_wd</span></a>·:·<a·class="idref"·href="Coq.Classes.Morphisms.html#Proper"><span·class="id"·title="class">Proper</span></a>·(<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.eq"><span·class="id"·title="definition">eq</span></a><a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#Z.eq"><span·class="id"·title="definition">eq</span></a>)·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.succ"><span·class="id"·title="definition">succ</span></a>·:=·<span·class="id"·title="var">_</span>.<br/> |
Offset 205, 15 lines modified | Offset 205, 15 lines modified | ||
205 | <span·class="id"·title="keyword">Program·Definition</span>·<a·id="Z.pow_wd"·class="idref"·href="#Z.pow_wd"><span·class="id"·title="definition">pow_wd</span></a>·:·<a·class="idref"·href="Coq.Classes.Morphisms.html#Proper"><span·class="id"·title="class">Proper</span></a>·(<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.eq"><span·class="id"·title="definition">eq</span></a><a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#Z.eq"><span·class="id"·title="definition">eq</span></a><a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#Z.eq"><span·class="id"·title="definition">eq</span></a>)·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.pow"><span·class="id"·title="definition">pow</span></a>·:=·<span·class="id"·title="var">_</span>.<br/> | 205 | <span·class="id"·title="keyword">Program·Definition</span>·<a·id="Z.pow_wd"·class="idref"·href="#Z.pow_wd"><span·class="id"·title="definition">pow_wd</span></a>·:·<a·class="idref"·href="Coq.Classes.Morphisms.html#Proper"><span·class="id"·title="class">Proper</span></a>·(<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.eq"><span·class="id"·title="definition">eq</span></a><a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#Z.eq"><span·class="id"·title="definition">eq</span></a><a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#Z.eq"><span·class="id"·title="definition">eq</span></a>)·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.pow"><span·class="id"·title="definition">pow</span></a>·:=·<span·class="id"·title="var">_</span>.<br/> |
206 | <span·class="id"·title="keyword">Program·Definition</span>·<a·id="Z.testbit_wd"·class="idref"·href="#Z.testbit_wd"><span·class="id"·title="definition">testbit_wd</span></a>·:·<a·class="idref"·href="Coq.Classes.Morphisms.html#Proper"><span·class="id"·title="class">Proper</span></a>·(<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.eq"><span·class="id"·title="definition">eq</span></a><a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#Z.eq"><span·class="id"·title="definition">eq</span></a><a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a><a·class="idref"·href="Coq.Init.Logic.html#eq"><span·class="id"·title="inductive">Logic.eq</span></a>)·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.testbit"><span·class="id"·title="definition">testbit</span></a>·:=·<span·class="id"·title="var">_</span>.<br/> | 206 | <span·class="id"·title="keyword">Program·Definition</span>·<a·id="Z.testbit_wd"·class="idref"·href="#Z.testbit_wd"><span·class="id"·title="definition">testbit_wd</span></a>·:·<a·class="idref"·href="Coq.Classes.Morphisms.html#Proper"><span·class="id"·title="class">Proper</span></a>·(<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.eq"><span·class="id"·title="definition">eq</span></a><a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#Z.eq"><span·class="id"·title="definition">eq</span></a><a·class="idref"·href="Coq.Classes.Morphisms.html#8dc5652698a6e16f72dd37bd17d3b973"><span·class="id"·title="notation">==></span></a><a·class="idref"·href="Coq.Init.Logic.html#eq"><span·class="id"·title="inductive">Logic.eq</span></a>)·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.testbit"><span·class="id"·title="definition">testbit</span></a>·:=·<span·class="id"·title="var">_</span>.<br/> |
207 | <br/> | 207 | <br/> |
208 | </div> | 208 | </div> |
209 | <div·class="doc"> | 209 | <div·class="doc"> |
210 | <a·id="lab | 210 | <a·id="lab440"></a><h1·class="section">Properties·of·<span·class="inlinecode"><span·class="id"·title="var">pos_sub</span></span></h1> |
211 | <div·class="paragraph">·</div> | 211 | <div·class="paragraph">·</div> |
212 | ·<span·class="inlinecode"><span·class="id"·title="var">pos_sub</span></span>·can·be·written·in·term·of·positive·comparison | 212 | ·<span·class="inlinecode"><span·class="id"·title="var">pos_sub</span></span>·can·be·written·in·term·of·positive·comparison |
213 | ····and·subtraction·(cf.·earlier·definition·of·addition·of·Z)· | 213 | ····and·subtraction·(cf.·earlier·definition·of·addition·of·Z)· |
214 | </div> | 214 | </div> |
215 | <div·class="code"> | 215 | <div·class="code"> |
Offset 276, 15 lines modified | Offset 276, 15 lines modified | ||
276 | <br/> | 276 | <br/> |
277 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Import</span>·<a·id="Z.Private_BootStrap"·class="idref"·href="#Z.Private_BootStrap"><span·class="id"·title="module">Private_BootStrap</span></a>.<br/> | 277 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Import</span>·<a·id="Z.Private_BootStrap"·class="idref"·href="#Z.Private_BootStrap"><span·class="id"·title="module">Private_BootStrap</span></a>.<br/> |
278 | <br/> | 278 | <br/> |
279 | </div> | 279 | </div> |
280 | <div·class="doc"> | 280 | <div·class="doc"> |
281 | <a·id="lab | 281 | <a·id="lab441"></a><h2·class="section">Operations·and·constants</h2> |
282 | </div> | 282 | </div> |
283 | <div·class="code"> | 283 | <div·class="code"> |
284 | <br/> | 284 | <br/> |
285 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Z.Private_BootStrap.add_0_r"·class="idref"·href="#Z.Private_BootStrap.add_0_r"><span·class="id"·title="lemma">add_0_r</span></a>·<a·id="n:29"·class="idref"·href="#n:29"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.ZArith.BinInt.html#n:29"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#227c8238350fd4cd476071826da76987"><span·class="id"·title="notation">+</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#n:29"><span·class="id"·title="variable">n</span></a>.<br/> | 285 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Z.Private_BootStrap.add_0_r"·class="idref"·href="#Z.Private_BootStrap.add_0_r"><span·class="id"·title="lemma">add_0_r</span></a>·<a·id="n:29"·class="idref"·href="#n:29"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.ZArith.BinInt.html#n:29"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#227c8238350fd4cd476071826da76987"><span·class="id"·title="notation">+</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#n:29"><span·class="id"·title="variable">n</span></a>.<br/> |
Offset 294, 51 lines modified | Offset 294, 51 lines modified | ||
294 | <br/> | 294 | <br/> |
295 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Z.Private_BootStrap.mul_1_l"·class="idref"·href="#Z.Private_BootStrap.mul_1_l"><span·class="id"·title="lemma">mul_1_l</span></a>·<a·id="n:31"·class="idref"·href="#n:31"><span·class="id"·title="binder">n</span></a>·:·1·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#6be75d73bb8cdf7491f5eca788592321"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#n:31"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#n:31"><span·class="id"·title="variable">n</span></a>.<br/> | 295 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Z.Private_BootStrap.mul_1_l"·class="idref"·href="#Z.Private_BootStrap.mul_1_l"><span·class="id"·title="lemma">mul_1_l</span></a>·<a·id="n:31"·class="idref"·href="#n:31"><span·class="id"·title="binder">n</span></a>·:·1·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#6be75d73bb8cdf7491f5eca788592321"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#n:31"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#n:31"><span·class="id"·title="variable">n</span></a>.<br/> |
296 | <br/> | 296 | <br/> |
297 | </div> | 297 | </div> |
298 | <div·class="doc"> | 298 | <div·class="doc"> |
299 | <a·id="lab | 299 | <a·id="lab442"></a><h2·class="section">Addition·is·commutative</h2> |
300 | </div> | 300 | </div> |
301 | <div·class="code"> | 301 | <div·class="code"> |
302 | <br/> | 302 | <br/> |
303 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Z.Private_BootStrap.add_comm"·class="idref"·href="#Z.Private_BootStrap.add_comm"><span·class="id"·title="lemma">add_comm</span></a>·<a·id="n:32"·class="idref"·href="#n:32"><span·class="id"·title="binder">n</span></a>·<a·id="m:33"·class="idref"·href="#m:33"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.ZArith.BinInt.html#n:32"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#227c8238350fd4cd476071826da76987"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#m:33"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#m:33"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#227c8238350fd4cd476071826da76987"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#n:32"><span·class="id"·title="variable">n</span></a>.<br/> | 303 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Z.Private_BootStrap.add_comm"·class="idref"·href="#Z.Private_BootStrap.add_comm"><span·class="id"·title="lemma">add_comm</span></a>·<a·id="n:32"·class="idref"·href="#n:32"><span·class="id"·title="binder">n</span></a>·<a·id="m:33"·class="idref"·href="#m:33"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.ZArith.BinInt.html#n:32"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#227c8238350fd4cd476071826da76987"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#m:33"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#m:33"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#227c8238350fd4cd476071826da76987"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#n:32"><span·class="id"·title="variable">n</span></a>.<br/> |
304 | <br/> | 304 | <br/> |
305 | </div> | 305 | </div> |
306 | <div·class="doc"> | 306 | <div·class="doc"> |
Max diff block lines reached; 77621/90272 bytes (85.99%) of diff not shown. |
Offset 57, 15 lines modified | Offset 57, 15 lines modified | ||
57 | <span·class="id"·title="keyword">Local·Notation</span>·<a·id=":::'1'"·class="idref"·href="#:::'1'"><span·class="id"·title="notation">"</span></a>1"·:=·(<a·class="idref"·href="Coq.Numbers.BinNums.html#Zpos"><span·class="id"·title="constructor">Zpos</span></a>·1).<br/> | 57 | <span·class="id"·title="keyword">Local·Notation</span>·<a·id=":::'1'"·class="idref"·href="#:::'1'"><span·class="id"·title="notation">"</span></a>1"·:=·(<a·class="idref"·href="Coq.Numbers.BinNums.html#Zpos"><span·class="id"·title="constructor">Zpos</span></a>·1).<br/> |
58 | <span·class="id"·title="keyword">Local·Notation</span>·<a·id=":::'2'"·class="idref"·href="#:::'2'"><span·class="id"·title="notation">"</span></a>2"·:=·(<a·class="idref"·href="Coq.Numbers.BinNums.html#Zpos"><span·class="id"·title="constructor">Zpos</span></a>·2).<br/> | 58 | <span·class="id"·title="keyword">Local·Notation</span>·<a·id=":::'2'"·class="idref"·href="#:::'2'"><span·class="id"·title="notation">"</span></a>2"·:=·(<a·class="idref"·href="Coq.Numbers.BinNums.html#Zpos"><span·class="id"·title="constructor">Zpos</span></a>·2).<br/> |
59 | <br/> | 59 | <br/> |
60 | </div> | 60 | </div> |
61 | <div·class="doc"> | 61 | <div·class="doc"> |
62 | <a·id="lab | 62 | <a·id="lab393"></a><h1·class="section">Binary·Integers,·Definitions·of·Operations</h1> |
63 | <div·class="paragraph">·</div> | 63 | <div·class="paragraph">·</div> |
64 | ·Initial·author:·Pierre·Crégut,·CNET,·Lannion,·France· | 64 | ·Initial·author:·Pierre·Crégut,·CNET,·Lannion,·France· |
65 | </div> | 65 | </div> |
66 | <div·class="code"> | 66 | <div·class="code"> |
Offset 75, 42 lines modified | Offset 75, 42 lines modified | ||
75 | <br/> | 75 | <br/> |
76 | <span·class="id"·title="keyword">Definition</span>·<a·id="Z.t"·class="idref"·href="#Z.t"><span·class="id"·title="definition">t</span></a>·:=·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>.<br/> | 76 | <span·class="id"·title="keyword">Definition</span>·<a·id="Z.t"·class="idref"·href="#Z.t"><span·class="id"·title="definition">t</span></a>·:=·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>.<br/> |
77 | <br/> | 77 | <br/> |
78 | </div> | 78 | </div> |
79 | <div·class="doc"> | 79 | <div·class="doc"> |
80 | <a·id="lab | 80 | <a·id="lab394"></a><h2·class="section">Nicer·names·<span·class="inlinecode"><span·class="id"·title="var">Z.pos</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">Z.neg</span></span>·for·constructors</h2> |
81 | </div> | 81 | </div> |
82 | <div·class="code"> | 82 | <div·class="code"> |
83 | <br/> | 83 | <br/> |
84 | <span·class="id"·title="keyword">Notation</span>·<a·id="Z.pos"·class="idref"·href="#Z.pos"><span·class="id"·title="abbreviation">pos</span></a>·:=·<a·class="idref"·href="Coq.Numbers.BinNums.html#Zpos"><span·class="id"·title="constructor">Zpos</span></a>.<br/> | 84 | <span·class="id"·title="keyword">Notation</span>·<a·id="Z.pos"·class="idref"·href="#Z.pos"><span·class="id"·title="abbreviation">pos</span></a>·:=·<a·class="idref"·href="Coq.Numbers.BinNums.html#Zpos"><span·class="id"·title="constructor">Zpos</span></a>.<br/> |
85 | <span·class="id"·title="keyword">Notation</span>·<a·id="Z.neg"·class="idref"·href="#Z.neg"><span·class="id"·title="abbreviation">neg</span></a>·:=·<a·class="idref"·href="Coq.Numbers.BinNums.html#Zneg"><span·class="id"·title="constructor">Zneg</span></a>.<br/> | 85 | <span·class="id"·title="keyword">Notation</span>·<a·id="Z.neg"·class="idref"·href="#Z.neg"><span·class="id"·title="abbreviation">neg</span></a>·:=·<a·class="idref"·href="Coq.Numbers.BinNums.html#Zneg"><span·class="id"·title="constructor">Zneg</span></a>.<br/> |
86 | <br/> | 86 | <br/> |
87 | </div> | 87 | </div> |
88 | <div·class="doc"> | 88 | <div·class="doc"> |
89 | <a·id="lab | 89 | <a·id="lab395"></a><h2·class="section">Constants</h2> |
90 | </div> | 90 | </div> |
91 | <div·class="code"> | 91 | <div·class="code"> |
92 | <br/> | 92 | <br/> |
93 | <span·class="id"·title="keyword">Definition</span>·<a·id="Z.zero"·class="idref"·href="#Z.zero"><span·class="id"·title="definition">zero</span></a>·:=·0.<br/> | 93 | <span·class="id"·title="keyword">Definition</span>·<a·id="Z.zero"·class="idref"·href="#Z.zero"><span·class="id"·title="definition">zero</span></a>·:=·0.<br/> |
94 | <span·class="id"·title="keyword">Definition</span>·<a·id="Z.one"·class="idref"·href="#Z.one"><span·class="id"·title="definition">one</span></a>·:=·1.<br/> | 94 | <span·class="id"·title="keyword">Definition</span>·<a·id="Z.one"·class="idref"·href="#Z.one"><span·class="id"·title="definition">one</span></a>·:=·1.<br/> |
95 | <span·class="id"·title="keyword">Definition</span>·<a·id="Z.two"·class="idref"·href="#Z.two"><span·class="id"·title="definition">two</span></a>·:=·2.<br/> | 95 | <span·class="id"·title="keyword">Definition</span>·<a·id="Z.two"·class="idref"·href="#Z.two"><span·class="id"·title="definition">two</span></a>·:=·2.<br/> |
96 | <br/> | 96 | <br/> |
97 | </div> | 97 | </div> |
98 | <div·class="doc"> | 98 | <div·class="doc"> |
99 | <a·id="lab | 99 | <a·id="lab396"></a><h2·class="section">Doubling·and·variants</h2> |
100 | </div> | 100 | </div> |
101 | <div·class="code"> | 101 | <div·class="code"> |
102 | <br/> | 102 | <br/> |
103 | <span·class="id"·title="keyword">Definition</span>·<a·id="Z.double"·class="idref"·href="#Z.double"><span·class="id"·title="definition">double</span></a>·<a·id="x:1"·class="idref"·href="#x:1"><span·class="id"·title="binder">x</span></a>·:=<br/> | 103 | <span·class="id"·title="keyword">Definition</span>·<a·id="Z.double"·class="idref"·href="#Z.double"><span·class="id"·title="definition">double</span></a>·<a·id="x:1"·class="idref"·href="#x:1"><span·class="id"·title="binder">x</span></a>·:=<br/> |
104 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#x:1"><span·class="id"·title="variable">x</span></a>·<span·class="id"·title="keyword">with</span><br/> | 104 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#x:1"><span·class="id"·title="variable">x</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 135, 15 lines modified | Offset 135, 15 lines modified | ||
135 | |·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#Z.pos"><span·class="id"·title="abbreviation">pos</span></a>·<span·class="id"·title="var">p</span>·=>·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#Z.pos"><span·class="id"·title="abbreviation">pos</span></a>·(<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.pred_double"><span·class="id"·title="definition">Pos.pred_double</span></a>·<span·class="id"·title="var">p</span>)<br/> | 135 | |·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#Z.pos"><span·class="id"·title="abbreviation">pos</span></a>·<span·class="id"·title="var">p</span>·=>·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#Z.pos"><span·class="id"·title="abbreviation">pos</span></a>·(<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.pred_double"><span·class="id"·title="definition">Pos.pred_double</span></a>·<span·class="id"·title="var">p</span>)<br/> |
136 | <span·class="id"·title="keyword">end</span>.<br/> | 136 | <span·class="id"·title="keyword">end</span>.<br/> |
137 | <br/> | 137 | <br/> |
138 | </div> | 138 | </div> |
139 | <div·class="doc"> | 139 | <div·class="doc"> |
140 | <a·id="lab | 140 | <a·id="lab397"></a><h2·class="section">Subtraction·of·positive·into·Z</h2> |
141 | </div> | 141 | </div> |
142 | <div·class="code"> | 142 | <div·class="code"> |
143 | <br/> | 143 | <br/> |
144 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Z.pos_sub"·class="idref"·href="#Z.pos_sub"><span·class="id"·title="definition">pos_sub</span></a>·(<a·id="x:7"·class="idref"·href="#x:7"><span·class="id"·title="binder">x</span></a>·<a·id="y:8"·class="idref"·href="#y:8"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#positive"><span·class="id"·title="inductive">positive</span></a>)·{<span·class="id"·title="keyword">struct</span>·<span·class="id"·title="var">y</span>}·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>·:=<br/> | 144 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Z.pos_sub"·class="idref"·href="#Z.pos_sub"><span·class="id"·title="definition">pos_sub</span></a>·(<a·id="x:7"·class="idref"·href="#x:7"><span·class="id"·title="binder">x</span></a>·<a·id="y:8"·class="idref"·href="#y:8"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#positive"><span·class="id"·title="inductive">positive</span></a>)·{<span·class="id"·title="keyword">struct</span>·<span·class="id"·title="var">y</span>}·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>·:=<br/> |
145 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#x:7"><span·class="id"·title="variable">x</span></a>,·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#y:8"><span·class="id"·title="variable">y</span></a>·<span·class="id"·title="keyword">with</span><br/> | 145 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#x:7"><span·class="id"·title="variable">x</span></a>,·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#y:8"><span·class="id"·title="variable">y</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 158, 15 lines modified | Offset 158, 15 lines modified | ||
158 | |·1,·1·=>·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z0"><span·class="id"·title="constructor">Z0</span></a><br/> | 158 | |·1,·1·=>·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z0"><span·class="id"·title="constructor">Z0</span></a><br/> |
159 | <span·class="id"·title="keyword">end</span>%<span·class="id"·title="var">positive</span>.<br/> | 159 | <span·class="id"·title="keyword">end</span>%<span·class="id"·title="var">positive</span>.<br/> |
160 | <br/> | 160 | <br/> |
161 | </div> | 161 | </div> |
162 | <div·class="doc"> | 162 | <div·class="doc"> |
163 | <a·id="lab | 163 | <a·id="lab398"></a><h2·class="section">Addition</h2> |
164 | </div> | 164 | </div> |
165 | <div·class="code"> | 165 | <div·class="code"> |
166 | <br/> | 166 | <br/> |
167 | <span·class="id"·title="keyword">Definition</span>·<a·id="Z.add"·class="idref"·href="#Z.add"><span·class="id"·title="definition">add</span></a>·<a·id="x:12"·class="idref"·href="#x:12"><span·class="id"·title="binder">x</span></a>·<a·id="y:13"·class="idref"·href="#y:13"><span·class="id"·title="binder">y</span></a>·:=<br/> | 167 | <span·class="id"·title="keyword">Definition</span>·<a·id="Z.add"·class="idref"·href="#Z.add"><span·class="id"·title="definition">add</span></a>·<a·id="x:12"·class="idref"·href="#x:12"><span·class="id"·title="binder">x</span></a>·<a·id="y:13"·class="idref"·href="#y:13"><span·class="id"·title="binder">y</span></a>·:=<br/> |
168 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#x:12"><span·class="id"·title="variable">x</span></a>,·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#y:13"><span·class="id"·title="variable">y</span></a>·<span·class="id"·title="keyword">with</span><br/> | 168 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#x:12"><span·class="id"·title="variable">x</span></a>,·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#y:13"><span·class="id"·title="variable">y</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 181, 15 lines modified | Offset 181, 15 lines modified | ||
181 | <br/> | 181 | <br/> |
182 | <span·class="id"·title="keyword">Infix</span>·<a·id="227c8238350fd4cd476071826da76987"·class="idref"·href="#227c8238350fd4cd476071826da76987"><span·class="id"·title="notation">"</span></a>+"·:=·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#Z.add"><span·class="id"·title="definition">add</span></a>·:·<span·class="id"·title="var">Z_scope</span>.<br/> | 182 | <span·class="id"·title="keyword">Infix</span>·<a·id="227c8238350fd4cd476071826da76987"·class="idref"·href="#227c8238350fd4cd476071826da76987"><span·class="id"·title="notation">"</span></a>+"·:=·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#Z.add"><span·class="id"·title="definition">add</span></a>·:·<span·class="id"·title="var">Z_scope</span>.<br/> |
183 | <br/> | 183 | <br/> |
184 | </div> | 184 | </div> |
185 | <div·class="doc"> | 185 | <div·class="doc"> |
186 | <a·id="lab | 186 | <a·id="lab399"></a><h2·class="section">Opposite</h2> |
187 | </div> | 187 | </div> |
188 | <div·class="code"> | 188 | <div·class="code"> |
189 | <br/> | 189 | <br/> |
190 | <span·class="id"·title="keyword">Definition</span>·<a·id="Z.opp"·class="idref"·href="#Z.opp"><span·class="id"·title="definition">opp</span></a>·<a·id="x:16"·class="idref"·href="#x:16"><span·class="id"·title="binder">x</span></a>·:=<br/> | 190 | <span·class="id"·title="keyword">Definition</span>·<a·id="Z.opp"·class="idref"·href="#Z.opp"><span·class="id"·title="definition">opp</span></a>·<a·id="x:16"·class="idref"·href="#x:16"><span·class="id"·title="binder">x</span></a>·:=<br/> |
191 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#x:16"><span·class="id"·title="variable">x</span></a>·<span·class="id"·title="keyword">with</span><br/> | 191 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#x:16"><span·class="id"·title="variable">x</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 201, 54 lines modified | Offset 201, 54 lines modified | ||
201 | <br/> | 201 | <br/> |
202 | <span·class="id"·title="keyword">Notation</span>·<a·id="Z.::Z_scope:'-'_x"·class="idref"·href="#Z.::Z_scope:'-'_x"><span·class="id"·title="notation">"</span></a>-·x"·:=·(<a·class="idref"·href="Coq.ZArith.BinIntDef.html#Z.opp"><span·class="id"·title="definition">opp</span></a>·<span·class="id"·title="var">x</span>)·:·<span·class="id"·title="var">Z_scope</span>.<br/> | 202 | <span·class="id"·title="keyword">Notation</span>·<a·id="Z.::Z_scope:'-'_x"·class="idref"·href="#Z.::Z_scope:'-'_x"><span·class="id"·title="notation">"</span></a>-·x"·:=·(<a·class="idref"·href="Coq.ZArith.BinIntDef.html#Z.opp"><span·class="id"·title="definition">opp</span></a>·<span·class="id"·title="var">x</span>)·:·<span·class="id"·title="var">Z_scope</span>.<br/> |
203 | <br/> | 203 | <br/> |
204 | </div> | 204 | </div> |
205 | <div·class="doc"> | 205 | <div·class="doc"> |
206 | <a·id="lab | 206 | <a·id="lab400"></a><h2·class="section">Successor</h2> |
207 | </div> | 207 | </div> |
208 | <div·class="code"> | 208 | <div·class="code"> |
209 | <br/> | 209 | <br/> |
210 | <span·class="id"·title="keyword">Definition</span>·<a·id="Z.succ"·class="idref"·href="#Z.succ"><span·class="id"·title="definition">succ</span></a>·<a·id="x:18"·class="idref"·href="#x:18"><span·class="id"·title="binder">x</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#x:18"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#227c8238350fd4cd476071826da76987"><span·class="id"·title="notation">+</span></a>·1.<br/> | 210 | <span·class="id"·title="keyword">Definition</span>·<a·id="Z.succ"·class="idref"·href="#Z.succ"><span·class="id"·title="definition">succ</span></a>·<a·id="x:18"·class="idref"·href="#x:18"><span·class="id"·title="binder">x</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#x:18"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.ZArith.BinIntDef.html#227c8238350fd4cd476071826da76987"><span·class="id"·title="notation">+</span></a>·1.<br/> |
211 | <br/> | 211 | <br/> |
212 | </div> | 212 | </div> |
213 | <div·class="doc"> | 213 | <div·class="doc"> |
214 | <a·id="lab | 214 | <a·id="lab401"></a><h2·class="section">Predecessor</h2> |
Max diff block lines reached; 25271/33882 bytes (74.59%) of diff not shown. |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab372"></a><h1·class="section">An·light·axiomatization·of·integers·(used·in·MSetAVL).</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·We·define·a·signature·for·an·integer·datatype·based·on·<span·class="inlinecode"><span·class="id"·title="var">Z</span></span>. | 51 | ·We·define·a·signature·for·an·integer·datatype·based·on·<span·class="inlinecode"><span·class="id"·title="var">Z</span></span>. |
52 | ····The·goal·is·to·allow·a·switch·after·extraction·to·ocaml's | 52 | ····The·goal·is·to·allow·a·switch·after·extraction·to·ocaml's |
53 | ····<span·class="inlinecode"><span·class="id"·title="var">big_int</span></span>·or·even·<span·class="inlinecode"><span·class="id"·title="var">int</span></span>·when·finiteness·isn't·a·problem | 53 | ····<span·class="inlinecode"><span·class="id"·title="var">big_int</span></span>·or·even·<span·class="inlinecode"><span·class="id"·title="var">int</span></span>·when·finiteness·isn't·a·problem |
54 | ····(typically·:·when·measuring·the·height·of·an·AVL·tree). | 54 | ····(typically·:·when·measuring·the·height·of·an·AVL·tree). |
Offset 70, 15 lines modified | Offset 70, 15 lines modified | ||
70 | <br/> | 70 | <br/> |
71 | <span·class="id"·title="keyword">Local·Ltac</span>·<span·class="id"·title="var">Tauto.intuition_solver</span>·::=·<span·class="id"·title="tactic">auto</span>·<span·class="id"·title="keyword">with</span>·<span·class="id"·title="var">bool</span>.<br/> | 71 | <span·class="id"·title="keyword">Local·Ltac</span>·<span·class="id"·title="var">Tauto.intuition_solver</span>·::=·<span·class="id"·title="tactic">auto</span>·<span·class="id"·title="keyword">with</span>·<span·class="id"·title="var">bool</span>.<br/> |
72 | <br/> | 72 | <br/> |
73 | </div> | 73 | </div> |
74 | <div·class="doc"> | 74 | <div·class="doc"> |
75 | <a·id="lab | 75 | <a·id="lab373"></a><h1·class="section">A·specification·of·integers</h1> |
76 | </div> | 76 | </div> |
77 | <div·class="code"> | 77 | <div·class="code"> |
78 | <br/> | 78 | <br/> |
79 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="Int"·class="idref"·href="#Int"><span·class="id"·title="module">Int</span></a>.<br/> | 79 | <span·class="id"·title="keyword">Module</span>·<span·class="id"·title="keyword">Type</span>·<a·id="Int"·class="idref"·href="#Int"><span·class="id"·title="module">Int</span></a>.<br/> |
Offset 206, 15 lines modified | Offset 206, 15 lines modified | ||
206 | <br/> | 206 | <br/> |
207 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.ZArith.Int.html#Int"><span·class="id"·title="module">Int</span></a>.<br/> | 207 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.ZArith.Int.html#Int"><span·class="id"·title="module">Int</span></a>.<br/> |
208 | <br/> | 208 | <br/> |
209 | </div> | 209 | </div> |
210 | <div·class="doc"> | 210 | <div·class="doc"> |
211 | <a·id="lab | 211 | <a·id="lab374"></a><h1·class="section">Facts·and··tactics·using·<span·class="inlinecode"><span·class="id"·title="var">Int</span></span></h1> |
212 | </div> | 212 | </div> |
213 | <div·class="code"> | 213 | <div·class="code"> |
214 | <br/> | 214 | <br/> |
215 | <span·class="id"·title="keyword">Module</span>·<a·id="MoreInt"·class="idref"·href="#MoreInt"><span·class="id"·title="module">MoreInt</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">I</span>:<a·class="idref"·href="Coq.ZArith.Int.html#Int"><span·class="id"·title="module">Int</span></a>).<br/> | 215 | <span·class="id"·title="keyword">Module</span>·<a·id="MoreInt"·class="idref"·href="#MoreInt"><span·class="id"·title="module">MoreInt</span></a>·(<span·class="id"·title="keyword">Import</span>·<span·class="id"·title="var">I</span>:<a·class="idref"·href="Coq.ZArith.Int.html#Int"><span·class="id"·title="module">Int</span></a>).<br/> |
216 | <span·class="id"·title="keyword">Local·Notation</span>·<a·id="MoreInt.int"·class="idref"·href="#MoreInt.int"><span·class="id"·title="abbreviation">int</span></a>·:=·<a·class="idref"·href="Coq.ZArith.Int.html#I.t"><span·class="id"·title="axiom">I.t</span></a>.<br/> | 216 | <span·class="id"·title="keyword">Local·Notation</span>·<a·id="MoreInt.int"·class="idref"·href="#MoreInt.int"><span·class="id"·title="abbreviation">int</span></a>·:=·<a·class="idref"·href="Coq.ZArith.Int.html#I.t"><span·class="id"·title="axiom">I.t</span></a>.<br/> |
Offset 560, 15 lines modified | Offset 560, 15 lines modified | ||
560 | <br/> | 560 | <br/> |
561 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.ZArith.Int.html#MoreInt"><span·class="id"·title="module">MoreInt</span></a>.<br/> | 561 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.ZArith.Int.html#MoreInt"><span·class="id"·title="module">MoreInt</span></a>.<br/> |
562 | <br/> | 562 | <br/> |
563 | </div> | 563 | </div> |
564 | <div·class="doc"> | 564 | <div·class="doc"> |
565 | <a·id="lab | 565 | <a·id="lab375"></a><h1·class="section">An·implementation·of·<span·class="inlinecode"><span·class="id"·title="var">Int</span></span></h1> |
566 | <div·class="paragraph">·</div> | 566 | <div·class="paragraph">·</div> |
567 | ·It's·always·nice·to·know·that·our·<span·class="inlinecode"><span·class="id"·title="var">Int</span></span>·interface·is·realizable·:-)· | 567 | ·It's·always·nice·to·know·that·our·<span·class="inlinecode"><span·class="id"·title="var">Int</span></span>·interface·is·realizable·:-)· |
568 | </div> | 568 | </div> |
569 | <div·class="code"> | 569 | <div·class="code"> |
Offset 70, 15 lines modified | Offset 70, 15 lines modified | ||
70 | <br/> | 70 | <br/> |
71 | <span·class="id"·title="keyword">Variables</span>·<a·id="decidability.x"·class="idref"·href="#decidability.x"><span·class="id"·title="variable">x</span></a>·<a·id="decidability.y"·class="idref"·href="#decidability.y"><span·class="id"·title="variable">y</span></a>·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>.<br/> | 71 | <span·class="id"·title="keyword">Variables</span>·<a·id="decidability.x"·class="idref"·href="#decidability.x"><span·class="id"·title="variable">x</span></a>·<a·id="decidability.y"·class="idref"·href="#decidability.y"><span·class="id"·title="variable">y</span></a>·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>.<br/> |
72 | <br/> | 72 | <br/> |
73 | </div> | 73 | </div> |
74 | <div·class="doc"> | 74 | <div·class="doc"> |
75 | <a·id="lab | 75 | <a·id="lab370"></a><h1·class="section">Decidability·of·order·on·binary·integers</h1> |
76 | </div> | 76 | </div> |
77 | <div·class="code"> | 77 | <div·class="code"> |
78 | <br/> | 78 | <br/> |
79 | <span·class="id"·title="keyword">Definition</span>·<a·id="Z_lt_dec"·class="idref"·href="#Z_lt_dec"><span·class="id"·title="definition">Z_lt_dec</span></a>·:·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.ZArith.ZArith_dec.html#decidability.x"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.ZArith_dec.html#decidability.y"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~</span></a>·<a·class="idref"·href="Coq.ZArith.ZArith_dec.html#decidability.x"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.ZArith_dec.html#decidability.y"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>.<br/> | 79 | <span·class="id"·title="keyword">Definition</span>·<a·id="Z_lt_dec"·class="idref"·href="#Z_lt_dec"><span·class="id"·title="definition">Z_lt_dec</span></a>·:·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.ZArith.ZArith_dec.html#decidability.x"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.ZArith_dec.html#decidability.y"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~</span></a>·<a·class="idref"·href="Coq.ZArith.ZArith_dec.html#decidability.x"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.ZArith_dec.html#decidability.y"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>.<br/> |
Offset 112, 15 lines modified | Offset 112, 15 lines modified | ||
112 | <br/> | 112 | <br/> |
113 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.ZArith.ZArith_dec.html#decidability"><span·class="id"·title="section">decidability</span></a>.<br/> | 113 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.ZArith.ZArith_dec.html#decidability"><span·class="id"·title="section">decidability</span></a>.<br/> |
114 | <br/> | 114 | <br/> |
115 | </div> | 115 | </div> |
116 | <div·class="doc"> | 116 | <div·class="doc"> |
117 | <a·id="lab | 117 | <a·id="lab371"></a><h1·class="section">Cotransitivity·of·order·on·binary·integers</h1> |
118 | </div> | 118 | </div> |
119 | <div·class="code"> | 119 | <div·class="code"> |
120 | <br/> | 120 | <br/> |
121 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zlt_cotrans"·class="idref"·href="#Zlt_cotrans"><span·class="id"·title="lemma">Zlt_cotrans</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:12"·class="idref"·href="#n:12"><span·class="id"·title="binder">n</span></a>·<a·id="m:13"·class="idref"·href="#m:13"><span·class="id"·title="binder">m</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>,·<a·class="idref"·href="Coq.ZArith.ZArith_dec.html#n:12"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.ZArith_dec.html#m:13"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">forall</span>·<a·id="p:14"·class="idref"·href="#p:14"><span·class="id"·title="binder">p</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>,·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.ZArith.ZArith_dec.html#n:12"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.ZArith_dec.html#p:14"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.ZArith.ZArith_dec.html#p:14"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.ZArith_dec.html#m:13"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>.<br/> | 121 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zlt_cotrans"·class="idref"·href="#Zlt_cotrans"><span·class="id"·title="lemma">Zlt_cotrans</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:12"·class="idref"·href="#n:12"><span·class="id"·title="binder">n</span></a>·<a·id="m:13"·class="idref"·href="#m:13"><span·class="id"·title="binder">m</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>,·<a·class="idref"·href="Coq.ZArith.ZArith_dec.html#n:12"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.ZArith_dec.html#m:13"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">forall</span>·<a·id="p:14"·class="idref"·href="#p:14"><span·class="id"·title="binder">p</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>,·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.ZArith.ZArith_dec.html#n:12"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.ZArith_dec.html#p:14"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.ZArith.ZArith_dec.html#p:14"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.ZArith_dec.html#m:13"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>.<br/> |
Offset 70, 15 lines modified | Offset 70, 15 lines modified | ||
70 | <br/> | 70 | <br/> |
71 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">Z_scope</span>.<br/> | 71 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">Z_scope</span>.<br/> |
72 | <br/> | 72 | <br/> |
73 | </div> | 73 | </div> |
74 | <div·class="doc"> | 74 | <div·class="doc"> |
75 | <a·id="lab | 75 | <a·id="lab485"></a><h1·class="section">Properties·of·absolute·value</h1> |
76 | </div> | 76 | </div> |
77 | <div·class="code"> | 77 | <div·class="code"> |
78 | <br/> | 78 | <br/> |
79 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zabs_non_eq"·class="idref"·href="#Zabs_non_eq"><span·class="id"·title="abbreviation">Zabs_non_eq</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.abs_neq"><span·class="id"·title="lemma">Z.abs_neq</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> | 79 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zabs_non_eq"·class="idref"·href="#Zabs_non_eq"><span·class="id"·title="abbreviation">Zabs_non_eq</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.abs_neq"><span·class="id"·title="lemma">Z.abs_neq</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> |
80 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zabs_Zopp"·class="idref"·href="#Zabs_Zopp"><span·class="id"·title="abbreviation">Zabs_Zopp</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.abs_opp"><span·class="id"·title="lemma">Z.abs_opp</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> | 80 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zabs_Zopp"·class="idref"·href="#Zabs_Zopp"><span·class="id"·title="abbreviation">Zabs_Zopp</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.abs_opp"><span·class="id"·title="lemma">Z.abs_opp</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> |
Offset 88, 15 lines modified | Offset 88, 15 lines modified | ||
88 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zabs_Zsgn"·class="idref"·href="#Zabs_Zsgn"><span·class="id"·title="abbreviation">Zabs_Zsgn</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.abs_sgn"><span·class="id"·title="lemma">Z.abs_sgn</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> | 88 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zabs_Zsgn"·class="idref"·href="#Zabs_Zsgn"><span·class="id"·title="abbreviation">Zabs_Zsgn</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.abs_sgn"><span·class="id"·title="lemma">Z.abs_sgn</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> |
89 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zabs_Zmult"·class="idref"·href="#Zabs_Zmult"><span·class="id"·title="abbreviation">Zabs_Zmult</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.abs_mul"><span·class="id"·title="lemma">Z.abs_mul</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> | 89 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zabs_Zmult"·class="idref"·href="#Zabs_Zmult"><span·class="id"·title="abbreviation">Zabs_Zmult</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.abs_mul"><span·class="id"·title="lemma">Z.abs_mul</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> |
90 | <br/> | 90 | <br/> |
91 | </div> | 91 | </div> |
92 | <div·class="doc"> | 92 | <div·class="doc"> |
93 | <a·id="lab | 93 | <a·id="lab486"></a><h1·class="section">Proving·a·property·of·the·absolute·value·by·cases</h1> |
94 | </div> | 94 | </div> |
95 | <div·class="code"> | 95 | <div·class="code"> |
96 | <br/> | 96 | <br/> |
97 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zabs_ind"·class="idref"·href="#Zabs_ind"><span·class="id"·title="lemma">Zabs_ind</span></a>·:<br/> | 97 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zabs_ind"·class="idref"·href="#Zabs_ind"><span·class="id"·title="lemma">Zabs_ind</span></a>·:<br/> |
98 | <span·class="id"·title="keyword">forall</span>·(<a·id="P:1"·class="idref"·href="#P:1"><span·class="id"·title="binder">P</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>)·(<a·id="n:2"·class="idref"·href="#n:2"><span·class="id"·title="binder">n</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>),<br/> | 98 | <span·class="id"·title="keyword">forall</span>·(<a·id="P:1"·class="idref"·href="#P:1"><span·class="id"·title="binder">P</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<span·class="id"·title="keyword">Prop</span>)·(<a·id="n:2"·class="idref"·href="#n:2"><span·class="id"·title="binder">n</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>),<br/> |
Offset 113, 15 lines modified | Offset 113, 15 lines modified | ||
113 | 0·<a·class="idref"·href="Coq.ZArith.BinInt.html#306329b0eca7a2b86c198702f594ad8e"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.ZArith.Zabs.html#x:6"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.abs"><span·class="id"·title="definition">Z.abs</span></a>·<a·class="idref"·href="Coq.ZArith.Zabs.html#x:6"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Zabs.html#x:6"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a><br/> | 113 | 0·<a·class="idref"·href="Coq.ZArith.BinInt.html#306329b0eca7a2b86c198702f594ad8e"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.ZArith.Zabs.html#x:6"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.abs"><span·class="id"·title="definition">Z.abs</span></a>·<a·class="idref"·href="Coq.ZArith.Zabs.html#x:6"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Zabs.html#x:6"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a><br/> |
114 | 0·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·<a·class="idref"·href="Coq.ZArith.Zabs.html#x:6"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.abs"><span·class="id"·title="definition">Z.abs</span></a>·<a·class="idref"·href="Coq.ZArith.Zabs.html#x:6"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:'-'_x"><span·class="id"·title="notation">-</span></a><a·class="idref"·href="Coq.ZArith.Zabs.html#x:6"><span·class="id"·title="variable">x</span></a>.<br/> | 114 | 0·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·<a·class="idref"·href="Coq.ZArith.Zabs.html#x:6"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.abs"><span·class="id"·title="definition">Z.abs</span></a>·<a·class="idref"·href="Coq.ZArith.Zabs.html#x:6"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:'-'_x"><span·class="id"·title="notation">-</span></a><a·class="idref"·href="Coq.ZArith.Zabs.html#x:6"><span·class="id"·title="variable">x</span></a>.<br/> |
115 | <br/> | 115 | <br/> |
116 | </div> | 116 | </div> |
117 | <div·class="doc"> | 117 | <div·class="doc"> |
118 | <a·id="lab | 118 | <a·id="lab487"></a><h1·class="section">Some·results·about·the·sign·function.</h1> |
119 | </div> | 119 | </div> |
120 | <div·class="code"> | 120 | <div·class="code"> |
121 | <br/> | 121 | <br/> |
122 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zsgn_Zmult"·class="idref"·href="#Zsgn_Zmult"><span·class="id"·title="abbreviation">Zsgn_Zmult</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.sgn_mul"><span·class="id"·title="lemma">Z.sgn_mul</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> | 122 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zsgn_Zmult"·class="idref"·href="#Zsgn_Zmult"><span·class="id"·title="abbreviation">Zsgn_Zmult</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.sgn_mul"><span·class="id"·title="lemma">Z.sgn_mul</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> |
123 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zsgn_Zopp"·class="idref"·href="#Zsgn_Zopp"><span·class="id"·title="abbreviation">Zsgn_Zopp</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.sgn_opp"><span·class="id"·title="lemma">Z.sgn_opp</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> | 123 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zsgn_Zopp"·class="idref"·href="#Zsgn_Zopp"><span·class="id"·title="abbreviation">Zsgn_Zopp</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.sgn_opp"><span·class="id"·title="lemma">Z.sgn_opp</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> |
Offset 148, 21 lines modified | Offset 148, 21 lines modified | ||
148 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Z.lnot_sub"·class="idref"·href="#Z.lnot_sub"><span·class="id"·title="lemma">lnot_sub</span></a>·<a·id="x:18"·class="idref"·href="#x:18"><span·class="id"·title="binder">x</span></a>·<a·id="y:19"·class="idref"·href="#y:19"><span·class="id"·title="binder">y</span></a>·:·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.lnot"><span·class="id"·title="definition">Z.lnot</span></a>·(<a·class="idref"·href="Coq.ZArith.Zbitwise.html#x:18"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.ZArith.Zbitwise.html#y:19"><span·class="id"·title="variable">y</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.lnot"><span·class="id"·title="definition">Z.lnot</span></a>·<a·class="idref"·href="Coq.ZArith.Zbitwise.html#x:18"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.Zbitwise.html#y:19"><span·class="id"·title="variable">y</span></a>.<br/> | 148 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Z.lnot_sub"·class="idref"·href="#Z.lnot_sub"><span·class="id"·title="lemma">lnot_sub</span></a>·<a·id="x:18"·class="idref"·href="#x:18"><span·class="id"·title="binder">x</span></a>·<a·id="y:19"·class="idref"·href="#y:19"><span·class="id"·title="binder">y</span></a>·:·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.lnot"><span·class="id"·title="definition">Z.lnot</span></a>·(<a·class="idref"·href="Coq.ZArith.Zbitwise.html#x:18"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.ZArith.Zbitwise.html#y:19"><span·class="id"·title="variable">y</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.lnot"><span·class="id"·title="definition">Z.lnot</span></a>·<a·class="idref"·href="Coq.ZArith.Zbitwise.html#x:18"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.Zbitwise.html#y:19"><span·class="id"·title="variable">y</span></a>.<br/> |
149 | · | 149 | · |
150 | <br/> | 150 | <br/> |
151 | </div> | 151 | </div> |
152 | <div·class="doc"> | 152 | <div·class="doc"> |
153 | Explicit·formulas·for·carry·bits·during·addition.·Conceptually,·the·theory | 153 | Explicit·formulas·for·carry·bits·during·addition.·Conceptually,·the·theory |
154 | <a·id="lab | 154 | <a·id="lab426"></a><h1·class="section">here·matches·the·bitblasting·rules·for·integers.·However,·the·vector·of</h1> |
155 | <a·id="lab | 155 | <a·id="lab427"></a><h1·class="section">carry·bits·is·represented·as·a·<span·class="inlinecode"><span·class="id"·title="var">Z</span></span>·so·it·can·be·used·in·bitwise·operations.</h1> |
156 | <a·id="lab | 156 | <a·id="lab428"></a><h1·class="section">The·last·three·lemmas·about·<span·class="inlinecode"><span·class="id"·title="var">addcarries</span></span>·are·the·main·interface,·but·the</h1> |
157 | <a·id="lab | 157 | <a·id="lab429"></a><h1·class="section">generalization·<span·class="inlinecode"><span·class="id"·title="var">adccarries</span></span>·is·provided·as·the·same·theory·applies.</h1> |
158 | </div> | 158 | </div> |
159 | <div·class="code"> | 159 | <div·class="code"> |
160 | <br/> | 160 | <br/> |
161 | <span·class="id"·title="keyword">Definition</span>·<a·id="Z.adccarries"·class="idref"·href="#Z.adccarries"><span·class="id"·title="definition">adccarries</span></a>·(<a·id="x:20"·class="idref"·href="#x:20"><span·class="id"·title="binder">x</span></a>·<a·id="y:21"·class="idref"·href="#y:21"><span·class="id"·title="binder">y</span></a>·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>)·(<a·id="c:22"·class="idref"·href="#c:22"><span·class="id"·title="binder">c</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>)·:=·<a·class="idref"·href="Coq.ZArith.Zbitwise.html#ec72b1098f7cf4b330263cf8ab5afa36"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zbitwise.html#x:20"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.Zbitwise.html#y:21"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.b2z"><span·class="id"·title="definition">Z.b2z</span></a>·<a·class="idref"·href="Coq.ZArith.Zbitwise.html#c:22"><span·class="id"·title="variable">c</span></a><a·class="idref"·href="Coq.ZArith.Zbitwise.html#ec72b1098f7cf4b330263cf8ab5afa36"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.ZArith.Zbitwise.html#ec72b1098f7cf4b330263cf8ab5afa36"><span·class="id"·title="notation">.^</span></a>·<a·class="idref"·href="Coq.ZArith.Zbitwise.html#ec72b1098f7cf4b330263cf8ab5afa36"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zbitwise.html#x:20"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.ZArith.Zbitwise.html#ec72b1098f7cf4b330263cf8ab5afa36"><span·class="id"·title="notation">.^</span></a>·<a·class="idref"·href="Coq.ZArith.Zbitwise.html#y:21"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.ZArith.Zbitwise.html#ec72b1098f7cf4b330263cf8ab5afa36"><span·class="id"·title="notation">)</span></a>.<br/> | 161 | <span·class="id"·title="keyword">Definition</span>·<a·id="Z.adccarries"·class="idref"·href="#Z.adccarries"><span·class="id"·title="definition">adccarries</span></a>·(<a·id="x:20"·class="idref"·href="#x:20"><span·class="id"·title="binder">x</span></a>·<a·id="y:21"·class="idref"·href="#y:21"><span·class="id"·title="binder">y</span></a>·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>)·(<a·id="c:22"·class="idref"·href="#c:22"><span·class="id"·title="binder">c</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#bool"><span·class="id"·title="inductive">bool</span></a>)·:=·<a·class="idref"·href="Coq.ZArith.Zbitwise.html#ec72b1098f7cf4b330263cf8ab5afa36"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zbitwise.html#x:20"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.Zbitwise.html#y:21"><span·class="id"·title="variable">y</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.b2z"><span·class="id"·title="definition">Z.b2z</span></a>·<a·class="idref"·href="Coq.ZArith.Zbitwise.html#c:22"><span·class="id"·title="variable">c</span></a><a·class="idref"·href="Coq.ZArith.Zbitwise.html#ec72b1098f7cf4b330263cf8ab5afa36"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.ZArith.Zbitwise.html#ec72b1098f7cf4b330263cf8ab5afa36"><span·class="id"·title="notation">.^</span></a>·<a·class="idref"·href="Coq.ZArith.Zbitwise.html#ec72b1098f7cf4b330263cf8ab5afa36"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zbitwise.html#x:20"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.ZArith.Zbitwise.html#ec72b1098f7cf4b330263cf8ab5afa36"><span·class="id"·title="notation">.^</span></a>·<a·class="idref"·href="Coq.ZArith.Zbitwise.html#y:21"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.ZArith.Zbitwise.html#ec72b1098f7cf4b330263cf8ab5afa36"><span·class="id"·title="notation">)</span></a>.<br/> |
162 | <span·class="id"·title="keyword">Definition</span>·<a·id="Z.addcarries"·class="idref"·href="#Z.addcarries"><span·class="id"·title="definition">addcarries</span></a>·(<a·id="x:23"·class="idref"·href="#x:23"><span·class="id"·title="binder">x</span></a>·<a·id="y:24"·class="idref"·href="#y:24"><span·class="id"·title="binder">y</span></a>·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>)············:=·<a·class="idref"·href="Coq.ZArith.Zbitwise.html#ec72b1098f7cf4b330263cf8ab5afa36"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zbitwise.html#x:23"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.Zbitwise.html#y:24"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.ZArith.Zbitwise.html#ec72b1098f7cf4b330263cf8ab5afa36"><span·class="id"·title="notation">)</span></a>···········<a·class="idref"·href="Coq.ZArith.Zbitwise.html#ec72b1098f7cf4b330263cf8ab5afa36"><span·class="id"·title="notation">.^</span></a>·<a·class="idref"·href="Coq.ZArith.Zbitwise.html#ec72b1098f7cf4b330263cf8ab5afa36"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zbitwise.html#x:23"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.ZArith.Zbitwise.html#ec72b1098f7cf4b330263cf8ab5afa36"><span·class="id"·title="notation">.^</span></a>·<a·class="idref"·href="Coq.ZArith.Zbitwise.html#y:24"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.ZArith.Zbitwise.html#ec72b1098f7cf4b330263cf8ab5afa36"><span·class="id"·title="notation">)</span></a>.<br/> | 162 | <span·class="id"·title="keyword">Definition</span>·<a·id="Z.addcarries"·class="idref"·href="#Z.addcarries"><span·class="id"·title="definition">addcarries</span></a>·(<a·id="x:23"·class="idref"·href="#x:23"><span·class="id"·title="binder">x</span></a>·<a·id="y:24"·class="idref"·href="#y:24"><span·class="id"·title="binder">y</span></a>·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>)············:=·<a·class="idref"·href="Coq.ZArith.Zbitwise.html#ec72b1098f7cf4b330263cf8ab5afa36"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zbitwise.html#x:23"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.Zbitwise.html#y:24"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.ZArith.Zbitwise.html#ec72b1098f7cf4b330263cf8ab5afa36"><span·class="id"·title="notation">)</span></a>···········<a·class="idref"·href="Coq.ZArith.Zbitwise.html#ec72b1098f7cf4b330263cf8ab5afa36"><span·class="id"·title="notation">.^</span></a>·<a·class="idref"·href="Coq.ZArith.Zbitwise.html#ec72b1098f7cf4b330263cf8ab5afa36"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zbitwise.html#x:23"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.ZArith.Zbitwise.html#ec72b1098f7cf4b330263cf8ab5afa36"><span·class="id"·title="notation">.^</span></a>·<a·class="idref"·href="Coq.ZArith.Zbitwise.html#y:24"><span·class="id"·title="variable">y</span></a><a·class="idref"·href="Coq.ZArith.Zbitwise.html#ec72b1098f7cf4b330263cf8ab5afa36"><span·class="id"·title="notation">)</span></a>.<br/> |
Offset 56, 15 lines modified | Offset 56, 15 lines modified | ||
56 | <br/> | 56 | <br/> |
57 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">Z_scope</span>.<br/> | 57 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">Z_scope</span>.<br/> |
58 | <br/> | 58 | <br/> |
59 | </div> | 59 | </div> |
60 | <div·class="doc"> | 60 | <div·class="doc"> |
61 | <a·id="lab | 61 | <a·id="lab491"></a><h1·class="section">Boolean·operations·from·decidability·of·order</h1> |
62 | ·The·decidability·of·equality·and·order·relations·over | 62 | ·The·decidability·of·equality·and·order·relations·over |
63 | ····type·<span·class="inlinecode"><span·class="id"·title="var">Z</span></span>·gives·some·boolean·functions·with·the·adequate·specification.· | 63 | ····type·<span·class="inlinecode"><span·class="id"·title="var">Z</span></span>·gives·some·boolean·functions·with·the·adequate·specification.· |
64 | </div> | 64 | </div> |
65 | <div·class="code"> | 65 | <div·class="code"> |
66 | <br/> | 66 | <br/> |
67 | <span·class="id"·title="keyword">Definition</span>·<a·id="Z_lt_ge_bool"·class="idref"·href="#Z_lt_ge_bool"><span·class="id"·title="definition">Z_lt_ge_bool</span></a>·(<a·id="x:1"·class="idref"·href="#x:1"><span·class="id"·title="binder">x</span></a>·<a·id="y:2"·class="idref"·href="#y:2"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>)·:=·<a·class="idref"·href="Coq.Bool.Sumbool.html#bool_of_sumbool"><span·class="id"·title="definition">bool_of_sumbool</span></a>·(<a·class="idref"·href="Coq.ZArith.ZArith_dec.html#Z_lt_ge_dec"><span·class="id"·title="definition">Z_lt_ge_dec</span></a>·<a·class="idref"·href="Coq.ZArith.Zbool.html#x:1"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.ZArith.Zbool.html#y:2"><span·class="id"·title="variable">y</span></a>).<br/> | 67 | <span·class="id"·title="keyword">Definition</span>·<a·id="Z_lt_ge_bool"·class="idref"·href="#Z_lt_ge_bool"><span·class="id"·title="definition">Z_lt_ge_bool</span></a>·(<a·id="x:1"·class="idref"·href="#x:1"><span·class="id"·title="binder">x</span></a>·<a·id="y:2"·class="idref"·href="#y:2"><span·class="id"·title="binder">y</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>)·:=·<a·class="idref"·href="Coq.Bool.Sumbool.html#bool_of_sumbool"><span·class="id"·title="definition">bool_of_sumbool</span></a>·(<a·class="idref"·href="Coq.ZArith.ZArith_dec.html#Z_lt_ge_dec"><span·class="id"·title="definition">Z_lt_ge_dec</span></a>·<a·class="idref"·href="Coq.ZArith.Zbool.html#x:1"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.ZArith.Zbool.html#y:2"><span·class="id"·title="variable">y</span></a>).<br/> |
Offset 81, 15 lines modified | Offset 81, 15 lines modified | ||
81 | <br/> | 81 | <br/> |
82 | <span·class="id"·title="keyword">Definition</span>·<a·id="Zeven_odd_bool"·class="idref"·href="#Zeven_odd_bool"><span·class="id"·title="definition">Zeven_odd_bool</span></a>·(<a·id="x:13"·class="idref"·href="#x:13"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>)·:=·<a·class="idref"·href="Coq.Bool.Sumbool.html#bool_of_sumbool"><span·class="id"·title="definition">bool_of_sumbool</span></a>·(<a·class="idref"·href="Coq.ZArith.Zeven.html#Zeven_odd_dec"><span·class="id"·title="definition">Zeven_odd_dec</span></a>·<a·class="idref"·href="Coq.ZArith.Zbool.html#x:13"><span·class="id"·title="variable">x</span></a>).<br/> | 82 | <span·class="id"·title="keyword">Definition</span>·<a·id="Zeven_odd_bool"·class="idref"·href="#Zeven_odd_bool"><span·class="id"·title="definition">Zeven_odd_bool</span></a>·(<a·id="x:13"·class="idref"·href="#x:13"><span·class="id"·title="binder">x</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>)·:=·<a·class="idref"·href="Coq.Bool.Sumbool.html#bool_of_sumbool"><span·class="id"·title="definition">bool_of_sumbool</span></a>·(<a·class="idref"·href="Coq.ZArith.Zeven.html#Zeven_odd_dec"><span·class="id"·title="definition">Zeven_odd_dec</span></a>·<a·class="idref"·href="Coq.ZArith.Zbool.html#x:13"><span·class="id"·title="variable">x</span></a>).<br/> |
83 | <br/> | 83 | <br/> |
84 | </div> | 84 | </div> |
85 | <div·class="doc"> | 85 | <div·class="doc"> |
86 | <a·id="lab | 86 | <a·id="lab492"></a><h1·class="section">Boolean·comparisons·of·binary·integers</h1> |
87 | </div> | 87 | </div> |
88 | <div·class="code"> | 88 | <div·class="code"> |
89 | <br/> | 89 | <br/> |
90 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zle_bool"·class="idref"·href="#Zle_bool"><span·class="id"·title="abbreviation">Zle_bool</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.leb"><span·class="id"·title="definition">Z.leb</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> | 90 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zle_bool"·class="idref"·href="#Zle_bool"><span·class="id"·title="abbreviation">Zle_bool</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.leb"><span·class="id"·title="definition">Z.leb</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> |
91 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zge_bool"·class="idref"·href="#Zge_bool"><span·class="id"·title="abbreviation">Zge_bool</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.geb"><span·class="id"·title="definition">Z.geb</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> | 91 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zge_bool"·class="idref"·href="#Zge_bool"><span·class="id"·title="abbreviation">Zge_bool</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.geb"><span·class="id"·title="definition">Z.geb</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> |
Offset 64, 30 lines modified | Offset 64, 30 lines modified | ||
64 | <br/> | 64 | <br/> |
65 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">Z_scope</span>.<br/> | 65 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">Z_scope</span>.<br/> |
66 | <br/> | 66 | <br/> |
67 | </div> | 67 | </div> |
68 | <div·class="doc"> | 68 | <div·class="doc"> |
69 | <a·id="lab | 69 | <a·id="lab385"></a><h1·class="section">Comparison·on·integers</h1> |
70 | </div> | 70 | </div> |
71 | <div·class="code"> | 71 | <div·class="code"> |
72 | <br/> | 72 | <br/> |
73 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zcompare_Gt_Lt_antisym"·class="idref"·href="#Zcompare_Gt_Lt_antisym"><span·class="id"·title="lemma">Zcompare_Gt_Lt_antisym</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:1"·class="idref"·href="#n:1"><span·class="id"·title="binder">n</span></a>·<a·id="m:2"·class="idref"·href="#m:2"><span·class="id"·title="binder">m</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#n:1"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:2"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#Gt"><span·class="id"·title="constructor">Gt</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#m:2"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#n:1"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#Lt"><span·class="id"·title="constructor">Lt</span></a>.<br/> | 73 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zcompare_Gt_Lt_antisym"·class="idref"·href="#Zcompare_Gt_Lt_antisym"><span·class="id"·title="lemma">Zcompare_Gt_Lt_antisym</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="n:1"·class="idref"·href="#n:1"><span·class="id"·title="binder">n</span></a>·<a·id="m:2"·class="idref"·href="#m:2"><span·class="id"·title="binder">m</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#n:1"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:2"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#Gt"><span·class="id"·title="constructor">Gt</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#m:2"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#n:1"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#Lt"><span·class="id"·title="constructor">Lt</span></a>.<br/> |
74 | <br/> | 74 | <br/> |
75 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zcompare_antisym"·class="idref"·href="#Zcompare_antisym"><span·class="id"·title="lemma">Zcompare_antisym</span></a>·<a·id="n:3"·class="idref"·href="#n:3"><span·class="id"·title="binder">n</span></a>·<a·id="m:4"·class="idref"·href="#m:4"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#CompOpp"><span·class="id"·title="definition">CompOpp</span></a>·(<a·class="idref"·href="Coq.ZArith.Zcompare.html#n:3"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:4"><span·class="id"·title="variable">m</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#m:4"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#n:3"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>.<br/> | 75 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zcompare_antisym"·class="idref"·href="#Zcompare_antisym"><span·class="id"·title="lemma">Zcompare_antisym</span></a>·<a·id="n:3"·class="idref"·href="#n:3"><span·class="id"·title="binder">n</span></a>·<a·id="m:4"·class="idref"·href="#m:4"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Init.Datatypes.html#CompOpp"><span·class="id"·title="definition">CompOpp</span></a>·(<a·class="idref"·href="Coq.ZArith.Zcompare.html#n:3"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:4"><span·class="id"·title="variable">m</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#m:4"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#n:3"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>.<br/> |
76 | <br/> | 76 | <br/> |
77 | </div> | 77 | </div> |
78 | <div·class="doc"> | 78 | <div·class="doc"> |
79 | <a·id="lab | 79 | <a·id="lab386"></a><h1·class="section">Transitivity·of·comparison</h1> |
80 | </div> | 80 | </div> |
81 | <div·class="code"> | 81 | <div·class="code"> |
82 | <br/> | 82 | <br/> |
83 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zcompare_Lt_trans"·class="idref"·href="#Zcompare_Lt_trans"><span·class="id"·title="lemma">Zcompare_Lt_trans</span></a>·:<br/> | 83 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zcompare_Lt_trans"·class="idref"·href="#Zcompare_Lt_trans"><span·class="id"·title="lemma">Zcompare_Lt_trans</span></a>·:<br/> |
84 | <span·class="id"·title="keyword">forall</span>·<a·id="n:5"·class="idref"·href="#n:5"><span·class="id"·title="binder">n</span></a>·<a·id="m:6"·class="idref"·href="#m:6"><span·class="id"·title="binder">m</span></a>·<a·id="p:7"·class="idref"·href="#p:7"><span·class="id"·title="binder">p</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#n:5"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:6"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#Lt"><span·class="id"·title="constructor">Lt</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#m:6"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#p:7"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#Lt"><span·class="id"·title="constructor">Lt</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#n:5"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#p:7"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#Lt"><span·class="id"·title="constructor">Lt</span></a>.<br/> | 84 | <span·class="id"·title="keyword">forall</span>·<a·id="n:5"·class="idref"·href="#n:5"><span·class="id"·title="binder">n</span></a>·<a·id="m:6"·class="idref"·href="#m:6"><span·class="id"·title="binder">m</span></a>·<a·id="p:7"·class="idref"·href="#p:7"><span·class="id"·title="binder">p</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#n:5"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:6"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#Lt"><span·class="id"·title="constructor">Lt</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#m:6"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#p:7"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#Lt"><span·class="id"·title="constructor">Lt</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#n:5"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#p:7"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#Lt"><span·class="id"·title="constructor">Lt</span></a>.<br/> |
Offset 96, 39 lines modified | Offset 96, 39 lines modified | ||
96 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zcompare_Gt_trans"·class="idref"·href="#Zcompare_Gt_trans"><span·class="id"·title="lemma">Zcompare_Gt_trans</span></a>·:<br/> | 96 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zcompare_Gt_trans"·class="idref"·href="#Zcompare_Gt_trans"><span·class="id"·title="lemma">Zcompare_Gt_trans</span></a>·:<br/> |
97 | <span·class="id"·title="keyword">forall</span>·<a·id="n:8"·class="idref"·href="#n:8"><span·class="id"·title="binder">n</span></a>·<a·id="m:9"·class="idref"·href="#m:9"><span·class="id"·title="binder">m</span></a>·<a·id="p:10"·class="idref"·href="#p:10"><span·class="id"·title="binder">p</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#n:8"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:9"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#Gt"><span·class="id"·title="constructor">Gt</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#m:9"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#p:10"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#Gt"><span·class="id"·title="constructor">Gt</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#n:8"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#p:10"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#Gt"><span·class="id"·title="constructor">Gt</span></a>.<br/> | 97 | <span·class="id"·title="keyword">forall</span>·<a·id="n:8"·class="idref"·href="#n:8"><span·class="id"·title="binder">n</span></a>·<a·id="m:9"·class="idref"·href="#m:9"><span·class="id"·title="binder">m</span></a>·<a·id="p:10"·class="idref"·href="#p:10"><span·class="id"·title="binder">p</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>,·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#n:8"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:9"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#Gt"><span·class="id"·title="constructor">Gt</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#m:9"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#p:10"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#Gt"><span·class="id"·title="constructor">Gt</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#n:8"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#p:10"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#Gt"><span·class="id"·title="constructor">Gt</span></a>.<br/> |
98 | <br/> | 98 | <br/> |
99 | </div> | 99 | </div> |
100 | <div·class="doc"> | 100 | <div·class="doc"> |
101 | <a·id="lab | 101 | <a·id="lab387"></a><h1·class="section">Comparison·and·opposite</h1> |
102 | </div> | 102 | </div> |
103 | <div·class="code"> | 103 | <div·class="code"> |
104 | <br/> | 104 | <br/> |
105 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zcompare_opp"·class="idref"·href="#Zcompare_opp"><span·class="id"·title="lemma">Zcompare_opp</span></a>·<a·id="n:11"·class="idref"·href="#n:11"><span·class="id"·title="binder">n</span></a>·<a·id="m:12"·class="idref"·href="#m:12"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#n:11"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:12"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:12"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#n:11"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>.<br/> | 105 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zcompare_opp"·class="idref"·href="#Zcompare_opp"><span·class="id"·title="lemma">Zcompare_opp</span></a>·<a·id="n:11"·class="idref"·href="#n:11"><span·class="id"·title="binder">n</span></a>·<a·id="m:12"·class="idref"·href="#m:12"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#n:11"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:12"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:12"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#n:11"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>.<br/> |
106 | <br/> | 106 | <br/> |
107 | </div> | 107 | </div> |
108 | <div·class="doc"> | 108 | <div·class="doc"> |
109 | <a·id="lab | 109 | <a·id="lab388"></a><h1·class="section">Comparison·first-order·specification</h1> |
110 | </div> | 110 | </div> |
111 | <div·class="code"> | 111 | <div·class="code"> |
112 | <br/> | 112 | <br/> |
113 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zcompare_Gt_spec"·class="idref"·href="#Zcompare_Gt_spec"><span·class="id"·title="lemma">Zcompare_Gt_spec</span></a>·<a·id="n:13"·class="idref"·href="#n:13"><span·class="id"·title="binder">n</span></a>·<a·id="m:14"·class="idref"·href="#m:14"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#n:13"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:14"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#Gt"><span·class="id"·title="constructor">Gt</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>··<a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">exists</span></a>·<a·id="h:15"·class="idref"·href="#h:15"><span·class="id"·title="binder">h</span></a><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#n:13"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:14"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Numbers.BinNums.html#Zpos"><span·class="id"·title="constructor">Zpos</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#h:15"><span·class="id"·title="variable">h</span></a>.<br/> | 113 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zcompare_Gt_spec"·class="idref"·href="#Zcompare_Gt_spec"><span·class="id"·title="lemma">Zcompare_Gt_spec</span></a>·<a·id="n:13"·class="idref"·href="#n:13"><span·class="id"·title="binder">n</span></a>·<a·id="m:14"·class="idref"·href="#m:14"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#n:13"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:14"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#Gt"><span·class="id"·title="constructor">Gt</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>··<a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">exists</span></a>·<a·id="h:15"·class="idref"·href="#h:15"><span·class="id"·title="binder">h</span></a><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#n:13"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:14"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Numbers.BinNums.html#Zpos"><span·class="id"·title="constructor">Zpos</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#h:15"><span·class="id"·title="variable">h</span></a>.<br/> |
114 | <br/> | 114 | <br/> |
115 | </div> | 115 | </div> |
116 | <div·class="doc"> | 116 | <div·class="doc"> |
117 | <a·id="lab | 117 | <a·id="lab389"></a><h1·class="section">Comparison·and·addition</h1> |
118 | </div> | 118 | </div> |
119 | <div·class="code"> | 119 | <div·class="code"> |
120 | <br/> | 120 | <br/> |
121 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zcompare_plus_compat"·class="idref"·href="#Zcompare_plus_compat"><span·class="id"·title="lemma">Zcompare_plus_compat</span></a>·<a·id="n:16"·class="idref"·href="#n:16"><span·class="id"·title="binder">n</span></a>·<a·id="m:17"·class="idref"·href="#m:17"><span·class="id"·title="binder">m</span></a>·<a·id="p:18"·class="idref"·href="#p:18"><span·class="id"·title="binder">p</span></a>·:·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#p:18"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#n:16"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#p:18"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:17"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#n:16"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:17"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>.<br/> | 121 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zcompare_plus_compat"·class="idref"·href="#Zcompare_plus_compat"><span·class="id"·title="lemma">Zcompare_plus_compat</span></a>·<a·id="n:16"·class="idref"·href="#n:16"><span·class="id"·title="binder">n</span></a>·<a·id="m:17"·class="idref"·href="#m:17"><span·class="id"·title="binder">m</span></a>·<a·id="p:18"·class="idref"·href="#p:18"><span·class="id"·title="binder">p</span></a>·:·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#p:18"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#n:16"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#p:18"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:17"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#n:16"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:17"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>.<br/> |
Offset 142, 27 lines modified | Offset 142, 27 lines modified | ||
142 | <br/> | 142 | <br/> |
143 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zcompare_Gt_not_Lt"·class="idref"·href="#Zcompare_Gt_not_Lt"><span·class="id"·title="lemma">Zcompare_Gt_not_Lt</span></a>·<a·id="n:25"·class="idref"·href="#n:25"><span·class="id"·title="binder">n</span></a>·<a·id="m:26"·class="idref"·href="#m:26"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#n:25"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:26"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#Gt"><span·class="id"·title="constructor">Gt</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#n:25"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:26"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>1<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#Lt"><span·class="id"·title="constructor">Lt</span></a>.<br/> | 143 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zcompare_Gt_not_Lt"·class="idref"·href="#Zcompare_Gt_not_Lt"><span·class="id"·title="lemma">Zcompare_Gt_not_Lt</span></a>·<a·id="n:25"·class="idref"·href="#n:25"><span·class="id"·title="binder">n</span></a>·<a·id="m:26"·class="idref"·href="#m:26"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#n:25"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:26"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#Gt"><span·class="id"·title="constructor">Gt</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#n:25"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:26"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>1<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#Lt"><span·class="id"·title="constructor">Lt</span></a>.<br/> |
144 | <br/> | 144 | <br/> |
145 | </div> | 145 | </div> |
146 | <div·class="doc"> | 146 | <div·class="doc"> |
147 | <a·id="lab | 147 | <a·id="lab390"></a><h1·class="section">Successor·and·comparison</h1> |
148 | </div> | 148 | </div> |
149 | <div·class="code"> | 149 | <div·class="code"> |
150 | <br/> | 150 | <br/> |
151 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zcompare_succ_compat"·class="idref"·href="#Zcompare_succ_compat"><span·class="id"·title="lemma">Zcompare_succ_compat</span></a>·<a·id="n:27"·class="idref"·href="#n:27"><span·class="id"·title="binder">n</span></a>·<a·id="m:28"·class="idref"·href="#m:28"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#Z.succ"><span·class="id"·title="definition">Z.succ</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#n:27"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.succ"><span·class="id"·title="definition">Z.succ</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:28"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#n:27"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:28"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>.<br/> | 151 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zcompare_succ_compat"·class="idref"·href="#Zcompare_succ_compat"><span·class="id"·title="lemma">Zcompare_succ_compat</span></a>·<a·id="n:27"·class="idref"·href="#n:27"><span·class="id"·title="binder">n</span></a>·<a·id="m:28"·class="idref"·href="#m:28"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#Z.succ"><span·class="id"·title="definition">Z.succ</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#n:27"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.succ"><span·class="id"·title="definition">Z.succ</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:28"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#n:27"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:28"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>.<br/> |
152 | <br/> | 152 | <br/> |
153 | </div> | 153 | </div> |
154 | <div·class="doc"> | 154 | <div·class="doc"> |
155 | <a·id="lab | 155 | <a·id="lab391"></a><h1·class="section">Multiplication·and·comparison</h1> |
156 | </div> | 156 | </div> |
157 | <div·class="code"> | 157 | <div·class="code"> |
158 | <br/> | 158 | <br/> |
159 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zcompare_mult_compat"·class="idref"·href="#Zcompare_mult_compat"><span·class="id"·title="lemma">Zcompare_mult_compat</span></a>·:<br/> | 159 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zcompare_mult_compat"·class="idref"·href="#Zcompare_mult_compat"><span·class="id"·title="lemma">Zcompare_mult_compat</span></a>·:<br/> |
160 | <span·class="id"·title="keyword">forall</span>·(<a·id="p:29"·class="idref"·href="#p:29"><span·class="id"·title="binder">p</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#positive"><span·class="id"·title="inductive">positive</span></a>)·(<a·id="n:30"·class="idref"·href="#n:30"><span·class="id"·title="binder">n</span></a>·<a·id="m:31"·class="idref"·href="#m:31"><span·class="id"·title="binder">m</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>),·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Numbers.BinNums.html#Zpos"><span·class="id"·title="constructor">Zpos</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#p:29"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#n:30"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.Numbers.BinNums.html#Zpos"><span·class="id"·title="constructor">Zpos</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#p:29"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:31"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#n:30"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:31"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>.<br/> | 160 | <span·class="id"·title="keyword">forall</span>·(<a·id="p:29"·class="idref"·href="#p:29"><span·class="id"·title="binder">p</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#positive"><span·class="id"·title="inductive">positive</span></a>)·(<a·id="n:30"·class="idref"·href="#n:30"><span·class="id"·title="binder">n</span></a>·<a·id="m:31"·class="idref"·href="#m:31"><span·class="id"·title="binder">m</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>),·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.Numbers.BinNums.html#Zpos"><span·class="id"·title="constructor">Zpos</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#p:29"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#n:30"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.Numbers.BinNums.html#Zpos"><span·class="id"·title="constructor">Zpos</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#p:29"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:31"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#n:30"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:31"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>.<br/> |
Offset 175, 15 lines modified | Offset 175, 15 lines modified | ||
175 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zmult_compare_compat_r"·class="idref"·href="#Zmult_compare_compat_r"><span·class="id"·title="lemma">Zmult_compare_compat_r</span></a>·<a·id="n:35"·class="idref"·href="#n:35"><span·class="id"·title="binder">n</span></a>·<a·id="m:36"·class="idref"·href="#m:36"><span·class="id"·title="binder">m</span></a>·<a·id="p:37"·class="idref"·href="#p:37"><span·class="id"·title="binder">p</span></a>·:<br/> | 175 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zmult_compare_compat_r"·class="idref"·href="#Zmult_compare_compat_r"><span·class="id"·title="lemma">Zmult_compare_compat_r</span></a>·<a·id="n:35"·class="idref"·href="#n:35"><span·class="id"·title="binder">n</span></a>·<a·id="m:36"·class="idref"·href="#m:36"><span·class="id"·title="binder">m</span></a>·<a·id="p:37"·class="idref"·href="#p:37"><span·class="id"·title="binder">p</span></a>·:<br/> |
176 | <a·class="idref"·href="Coq.ZArith.Zcompare.html#p:37"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#n:35"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:36"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#n:35"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#p:37"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:36"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#p:37"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>.<br/> | 176 | <a·class="idref"·href="Coq.ZArith.Zcompare.html#p:37"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#n:35"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:36"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zcompare.html#n:35"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#p:37"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#1718f1bc306f7edd524650b393f464a3"><span·class="id"·title="notation">?=</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#m:36"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.Zcompare.html#p:37"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>.<br/> |
177 | <br/> | 177 | <br/> |
178 | </div> | 178 | </div> |
179 | <div·class="doc"> | 179 | <div·class="doc"> |
180 | <a·id="lab | 180 | <a·id="lab392"></a><h1·class="section">Relating·<span·class="inlinecode"><span·class="id"·title="var">x</span></span>·<span·class="inlinecode">?=</span>·<span·class="inlinecode"><span·class="id"·title="var">y</span></span>·to·<span·class="inlinecode">=</span>,·<span·class="inlinecode"><=</span>,·<span·class="inlinecode"><</span>,·<span·class="inlinecode">>=</span>·or·<span·class="inlinecode">></span></h1> |
181 | </div> | 181 | </div> |
182 | <div·class="code"> | 182 | <div·class="code"> |
183 | <br/> | 183 | <br/> |
184 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zcompare_elim"·class="idref"·href="#Zcompare_elim"><span·class="id"·title="lemma">Zcompare_elim</span></a>·:<br/> | 184 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zcompare_elim"·class="idref"·href="#Zcompare_elim"><span·class="id"·title="lemma">Zcompare_elim</span></a>·:<br/> |
185 | <span·class="id"·title="keyword">forall</span>·(<a·id="c1:38"·class="idref"·href="#c1:38"><span·class="id"·title="binder">c1</span></a>·<a·id="c2:39"·class="idref"·href="#c2:39"><span·class="id"·title="binder">c2</span></a>·<a·id="c3:40"·class="idref"·href="#c3:40"><span·class="id"·title="binder">c3</span></a>:<span·class="id"·title="keyword">Prop</span>)·(<a·id="n:41"·class="idref"·href="#n:41"><span·class="id"·title="binder">n</span></a>·<a·id="m:42"·class="idref"·href="#m:42"><span·class="id"·title="binder">m</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>),<br/> | 185 | <span·class="id"·title="keyword">forall</span>·(<a·id="c1:38"·class="idref"·href="#c1:38"><span·class="id"·title="binder">c1</span></a>·<a·id="c2:39"·class="idref"·href="#c2:39"><span·class="id"·title="binder">c2</span></a>·<a·id="c3:40"·class="idref"·href="#c3:40"><span·class="id"·title="binder">c3</span></a>:<span·class="id"·title="keyword">Prop</span>)·(<a·id="n:41"·class="idref"·href="#n:41"><span·class="id"·title="binder">n</span></a>·<a·id="m:42"·class="idref"·href="#m:42"><span·class="id"·title="binder">m</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>),<br/> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab475"></a><h1·class="section">Euclidean·Division</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | ·Initial·Contribution·by·Claude·Marché·and·Xavier·Urbain· | 51 | ·Initial·Contribution·by·Claude·Marché·and·Xavier·Urbain· |
52 | </div> | 52 | </div> |
53 | <div·class="code"> | 53 | <div·class="code"> |
Offset 85, 15 lines modified | Offset 85, 15 lines modified | ||
85 | #[<span·class="id"·title="var">deprecated</span>(<span·class="id"·title="var">since</span>="8.17",<span·class="id"·title="var">note</span>="Use·Coq.ZArith.BinInt.Z.mod_neg_bound·instead")]<br/> | 85 | #[<span·class="id"·title="var">deprecated</span>(<span·class="id"·title="var">since</span>="8.17",<span·class="id"·title="var">note</span>="Use·Coq.ZArith.BinInt.Z.mod_neg_bound·instead")]<br/> |
86 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zmod_neg_bound"·class="idref"·href="#Zmod_neg_bound"><span·class="id"·title="abbreviation">Zmod_neg_bound</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.mod_neg_bound"><span·class="id"·title="lemma">Z.mod_neg_bound</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> | 86 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zmod_neg_bound"·class="idref"·href="#Zmod_neg_bound"><span·class="id"·title="abbreviation">Zmod_neg_bound</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.mod_neg_bound"><span·class="id"·title="lemma">Z.mod_neg_bound</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> |
87 | <br/> | 87 | <br/> |
88 | </div> | 88 | </div> |
89 | <div·class="doc"> | 89 | <div·class="doc"> |
90 | <a·id="lab | 90 | <a·id="lab476"></a><h1·class="section">Main·division·theorems</h1> |
91 | <div·class="paragraph">·</div> | 91 | <div·class="paragraph">·</div> |
92 | ·NB:·many·things·are·stated·twice·for·compatibility·reasons· | 92 | ·NB:·many·things·are·stated·twice·for·compatibility·reasons· |
93 | </div> | 93 | </div> |
94 | <div·class="code"> | 94 | <div·class="code"> |
Offset 234, 15 lines modified | Offset 234, 15 lines modified | ||
234 | <span·class="id"·title="keyword">forall</span>·<a·id="a:60"·class="idref"·href="#a:60"><span·class="id"·title="binder">a</span></a>·<a·id="b:61"·class="idref"·href="#b:61"><span·class="id"·title="binder">b</span></a>·<a·id="q:62"·class="idref"·href="#q:62"><span·class="id"·title="binder">q</span></a>·<a·id="r:63"·class="idref"·href="#r:63"><span·class="id"·title="binder">r</span></a>,·0·<a·class="idref"·href="Coq.ZArith.BinInt.html#bdb3edde5f841a282ce8fc1b00e3d211"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#r:63"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#bdb3edde5f841a282ce8fc1b00e3d211"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#b:61"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> | 234 | <span·class="id"·title="keyword">forall</span>·<a·id="a:60"·class="idref"·href="#a:60"><span·class="id"·title="binder">a</span></a>·<a·id="b:61"·class="idref"·href="#b:61"><span·class="id"·title="binder">b</span></a>·<a·id="q:62"·class="idref"·href="#q:62"><span·class="id"·title="binder">q</span></a>·<a·id="r:63"·class="idref"·href="#r:63"><span·class="id"·title="binder">r</span></a>,·0·<a·class="idref"·href="Coq.ZArith.BinInt.html#bdb3edde5f841a282ce8fc1b00e3d211"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#r:63"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#bdb3edde5f841a282ce8fc1b00e3d211"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#b:61"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a><br/> |
235 | <a·class="idref"·href="Coq.ZArith.Zdiv.html#a:60"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#b:61"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a><a·class="idref"·href="Coq.ZArith.Zdiv.html#q:62"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#r:63"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#r:63"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#a:60"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#b:61"><span·class="id"·title="variable">b</span></a>.<br/> | 235 | <a·class="idref"·href="Coq.ZArith.Zdiv.html#a:60"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#b:61"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a><a·class="idref"·href="Coq.ZArith.Zdiv.html#q:62"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#r:63"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#r:63"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#a:60"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#b:61"><span·class="id"·title="variable">b</span></a>.<br/> |
236 | · | 236 | · |
237 | <br/> | 237 | <br/> |
238 | </div> | 238 | </div> |
239 | <div·class="doc"> | 239 | <div·class="doc"> |
240 | <a·id="lab | 240 | <a·id="lab477"></a><h1·class="section">Basic·values·of·divisions·and·modulo.</h1> |
241 | </div> | 241 | </div> |
242 | <div·class="code"> | 242 | <div·class="code"> |
243 | <br/> | 243 | <br/> |
244 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zmod_0_l"·class="idref"·href="#Zmod_0_l"><span·class="id"·title="lemma">Zmod_0_l</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:64"·class="idref"·href="#a:64"><span·class="id"·title="binder">a</span></a>,·0·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#a:64"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·0.<br/> | 244 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zmod_0_l"·class="idref"·href="#Zmod_0_l"><span·class="id"·title="lemma">Zmod_0_l</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:64"·class="idref"·href="#a:64"><span·class="id"·title="binder">a</span></a>,·0·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#a:64"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·0.<br/> |
Offset 290, 15 lines modified | Offset 290, 15 lines modified | ||
290 | <br/> | 290 | <br/> |
291 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Z_div_mult_full"·class="idref"·href="#Z_div_mult_full"><span·class="id"·title="lemma">Z_div_mult_full</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="a:76"·class="idref"·href="#a:76"><span·class="id"·title="binder">a</span></a>·<a·id="b:77"·class="idref"·href="#b:77"><span·class="id"·title="binder">b</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>,·<a·class="idref"·href="Coq.ZArith.Zdiv.html#b:77"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3c2652250c7a120d67ccc0e8f58ae75"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zdiv.html#a:76"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a><a·class="idref"·href="Coq.ZArith.Zdiv.html#b:77"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#d3c2652250c7a120d67ccc0e8f58ae75"><span·class="id"·title="notation">)/</span></a><a·class="idref"·href="Coq.ZArith.Zdiv.html#b:77"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#a:76"><span·class="id"·title="variable">a</span></a>.<br/> | 291 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Z_div_mult_full"·class="idref"·href="#Z_div_mult_full"><span·class="id"·title="lemma">Z_div_mult_full</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="a:76"·class="idref"·href="#a:76"><span·class="id"·title="binder">a</span></a>·<a·id="b:77"·class="idref"·href="#b:77"><span·class="id"·title="binder">b</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>,·<a·class="idref"·href="Coq.ZArith.Zdiv.html#b:77"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3c2652250c7a120d67ccc0e8f58ae75"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zdiv.html#a:76"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a><a·class="idref"·href="Coq.ZArith.Zdiv.html#b:77"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#d3c2652250c7a120d67ccc0e8f58ae75"><span·class="id"·title="notation">)/</span></a><a·class="idref"·href="Coq.ZArith.Zdiv.html#b:77"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#a:76"><span·class="id"·title="variable">a</span></a>.<br/> |
292 | <br/> | 292 | <br/> |
293 | </div> | 293 | </div> |
294 | <div·class="doc"> | 294 | <div·class="doc"> |
295 | <a·id="lab | 295 | <a·id="lab478"></a><h1·class="section">Order·results·about·Z.modulo·and·Z.div</h1> |
296 | </div> | 296 | </div> |
297 | <div·class="code"> | 297 | <div·class="code"> |
298 | <br/> | 298 | <br/> |
299 | <br/> | 299 | <br/> |
Offset 448, 15 lines modified | Offset 448, 15 lines modified | ||
448 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Zdiv_sgn"·class="idref"·href="#Zdiv_sgn"><span·class="id"·title="lemma">Zdiv_sgn</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:120"·class="idref"·href="#a:120"><span·class="id"·title="binder">a</span></a>·<a·id="b:121"·class="idref"·href="#b:121"><span·class="id"·title="binder">b</span></a>,<br/> | 448 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Zdiv_sgn"·class="idref"·href="#Zdiv_sgn"><span·class="id"·title="lemma">Zdiv_sgn</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:120"·class="idref"·href="#a:120"><span·class="id"·title="binder">a</span></a>·<a·id="b:121"·class="idref"·href="#b:121"><span·class="id"·title="binder">b</span></a>,<br/> |
449 | 0·<a·class="idref"·href="Coq.ZArith.BinInt.html#306329b0eca7a2b86c198702f594ad8e"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.sgn"><span·class="id"·title="definition">Z.sgn</span></a>·(<a·class="idref"·href="Coq.ZArith.Zdiv.html#a:120"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#d3c2652250c7a120d67ccc0e8f58ae75"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.ZArith.Zdiv.html#b:121"><span·class="id"·title="variable">b</span></a>)·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.sgn"><span·class="id"·title="definition">Z.sgn</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#a:120"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.sgn"><span·class="id"·title="definition">Z.sgn</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#b:121"><span·class="id"·title="variable">b</span></a>.<br/> | 449 | 0·<a·class="idref"·href="Coq.ZArith.BinInt.html#306329b0eca7a2b86c198702f594ad8e"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.sgn"><span·class="id"·title="definition">Z.sgn</span></a>·(<a·class="idref"·href="Coq.ZArith.Zdiv.html#a:120"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#d3c2652250c7a120d67ccc0e8f58ae75"><span·class="id"·title="notation">/</span></a><a·class="idref"·href="Coq.ZArith.Zdiv.html#b:121"><span·class="id"·title="variable">b</span></a>)·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.sgn"><span·class="id"·title="definition">Z.sgn</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#a:120"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.sgn"><span·class="id"·title="definition">Z.sgn</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#b:121"><span·class="id"·title="variable">b</span></a>.<br/> |
450 | <br/> | 450 | <br/> |
451 | </div> | 451 | </div> |
452 | <div·class="doc"> | 452 | <div·class="doc"> |
453 | <a·id="lab | 453 | <a·id="lab479"></a><h1·class="section">Relations·between·usual·operations·and·Z.modulo·and·Z.div</h1> |
454 | </div> | 454 | </div> |
455 | <div·class="code"> | 455 | <div·class="code"> |
456 | <br/> | 456 | <br/> |
457 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Z_mod_plus_full"·class="idref"·href="#Z_mod_plus_full"><span·class="id"·title="lemma">Z_mod_plus_full</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="a:122"·class="idref"·href="#a:122"><span·class="id"·title="binder">a</span></a>·<a·id="b:123"·class="idref"·href="#b:123"><span·class="id"·title="binder">b</span></a>·<a·id="c:124"·class="idref"·href="#c:124"><span·class="id"·title="binder">c</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>,·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zdiv.html#a:122"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#b:123"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#c:124"><span·class="id"·title="variable">c</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#c:124"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#a:122"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#c:124"><span·class="id"·title="variable">c</span></a>.<br/> | 457 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Z_mod_plus_full"·class="idref"·href="#Z_mod_plus_full"><span·class="id"·title="lemma">Z_mod_plus_full</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="a:122"·class="idref"·href="#a:122"><span·class="id"·title="binder">a</span></a>·<a·id="b:123"·class="idref"·href="#b:123"><span·class="id"·title="binder">b</span></a>·<a·id="c:124"·class="idref"·href="#c:124"><span·class="id"·title="binder">c</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>,·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zdiv.html#a:122"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#b:123"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#c:124"><span·class="id"·title="variable">c</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#c:124"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#a:122"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#c:124"><span·class="id"·title="variable">c</span></a>.<br/> |
458 | · | 458 | · |
Offset 687, 15 lines modified | Offset 687, 15 lines modified | ||
687 | <br/> | 687 | <br/> |
688 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zeven_mod"·class="idref"·href="#Zeven_mod"><span·class="id"·title="lemma">Zeven_mod</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="a:218"·class="idref"·href="#a:218"><span·class="id"·title="binder">a</span></a>,·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.even"><span·class="id"·title="definition">Z.even</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#a:218"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Zbool.html#Zeq_bool"><span·class="id"·title="definition">Zeq_bool</span></a>·(<a·class="idref"·href="Coq.ZArith.Zdiv.html#a:218"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·2)·0.<br/> | 688 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zeven_mod"·class="idref"·href="#Zeven_mod"><span·class="id"·title="lemma">Zeven_mod</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="a:218"·class="idref"·href="#a:218"><span·class="id"·title="binder">a</span></a>,·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.even"><span·class="id"·title="definition">Z.even</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#a:218"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Zbool.html#Zeq_bool"><span·class="id"·title="definition">Zeq_bool</span></a>·(<a·class="idref"·href="Coq.ZArith.Zdiv.html#a:218"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·2)·0.<br/> |
689 | <br/> | 689 | <br/> |
690 | </div> | 690 | </div> |
691 | <div·class="doc"> | 691 | <div·class="doc"> |
692 | <a·id="lab | 692 | <a·id="lab480"></a><h1·class="section">Compatibility</h1> |
693 | <div·class="paragraph">·</div> | 693 | <div·class="paragraph">·</div> |
694 | ·Weaker·results·kept·only·for·compatibility· | 694 | ·Weaker·results·kept·only·for·compatibility· |
695 | </div> | 695 | </div> |
696 | <div·class="code"> | 696 | <div·class="code"> |
Offset 723, 15 lines modified | Offset 723, 15 lines modified | ||
723 | <br/> | 723 | <br/> |
724 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Z_mod_zero_opp"·class="idref"·href="#Z_mod_zero_opp"><span·class="id"·title="lemma">Z_mod_zero_opp</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="a:233"·class="idref"·href="#a:233"><span·class="id"·title="binder">a</span></a>·<a·id="b:234"·class="idref"·href="#b:234"><span·class="id"·title="binder">b</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>,·<a·class="idref"·href="Coq.ZArith.Zdiv.html#b:234"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#a:233"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#b:234"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:'-'_x"><span·class="id"·title="notation">-</span></a><a·class="idref"·href="Coq.ZArith.Zdiv.html#a:233"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#b:234"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·0.<br/> | 724 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Z_mod_zero_opp"·class="idref"·href="#Z_mod_zero_opp"><span·class="id"·title="lemma">Z_mod_zero_opp</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="a:233"·class="idref"·href="#a:233"><span·class="id"·title="binder">a</span></a>·<a·id="b:234"·class="idref"·href="#b:234"><span·class="id"·title="binder">b</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>,·<a·class="idref"·href="Coq.ZArith.Zdiv.html#b:234"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#a:233"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#b:234"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:'-'_x"><span·class="id"·title="notation">-</span></a><a·class="idref"·href="Coq.ZArith.Zdiv.html#a:233"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#b:234"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·0.<br/> |
725 | <br/> | 725 | <br/> |
726 | </div> | 726 | </div> |
727 | <div·class="doc"> | 727 | <div·class="doc"> |
728 | <a·id="lab | 728 | <a·id="lab481"></a><h1·class="section">A·direct·way·to·compute·Z.modulo</h1> |
729 | </div> | 729 | </div> |
730 | <div·class="code"> | 730 | <div·class="code"> |
731 | <br/> | 731 | <br/> |
732 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Zmod_POS"·class="idref"·href="#Zmod_POS"><span·class="id"·title="definition">Zmod_POS</span></a>·(<a·id="a:235"·class="idref"·href="#a:235"><span·class="id"·title="binder">a</span></a>·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#positive"><span·class="id"·title="inductive">positive</span></a>)·(<a·id="b:236"·class="idref"·href="#b:236"><span·class="id"·title="binder">b</span></a>·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>)·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>··:=<br/> | 732 | <span·class="id"·title="keyword">Fixpoint</span>·<a·id="Zmod_POS"·class="idref"·href="#Zmod_POS"><span·class="id"·title="definition">Zmod_POS</span></a>·(<a·id="a:235"·class="idref"·href="#a:235"><span·class="id"·title="binder">a</span></a>·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#positive"><span·class="id"·title="inductive">positive</span></a>)·(<a·id="b:236"·class="idref"·href="#b:236"><span·class="id"·title="binder">b</span></a>·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>)·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>··:=<br/> |
733 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#a:235"><span·class="id"·title="variable">a</span></a>·<span·class="id"·title="keyword">with</span><br/> | 733 | <span·class="id"·title="keyword">match</span>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#a:235"><span·class="id"·title="variable">a</span></a>·<span·class="id"·title="keyword">with</span><br/> |
Offset 775, 17 lines modified | Offset 775, 17 lines modified | ||
775 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Zmod'_correct"·class="idref"·href="#Zmod'_correct"><span·class="id"·title="lemma">Zmod'_correct</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:254"·class="idref"·href="#a:254"><span·class="id"·title="binder">a</span></a>·<a·id="b:255"·class="idref"·href="#b:255"><span·class="id"·title="binder">b</span></a>,·<a·class="idref"·href="Coq.ZArith.Zdiv.html#Zmod'"><span·class="id"·title="definition">Zmod'</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#a:254"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#b:255"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#a:254"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#b:255"><span·class="id"·title="variable">b</span></a>.<br/> | 775 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Zmod'_correct"·class="idref"·href="#Zmod'_correct"><span·class="id"·title="lemma">Zmod'_correct</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:254"·class="idref"·href="#a:254"><span·class="id"·title="binder">a</span></a>·<a·id="b:255"·class="idref"·href="#b:255"><span·class="id"·title="binder">b</span></a>,·<a·class="idref"·href="Coq.ZArith.Zdiv.html#Zmod'"><span·class="id"·title="definition">Zmod'</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#a:254"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#b:255"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#a:254"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.ZArith.Zdiv.html#b:255"><span·class="id"·title="variable">b</span></a>.<br/> |
776 | <br/> | 776 | <br/> |
777 | </div> | 777 | </div> |
778 | <div·class="doc"> | 778 | <div·class="doc"> |
779 | Another·convention·is·possible·for·division·by·negative·numbers: | 779 | Another·convention·is·possible·for·division·by·negative·numbers: |
780 | <a·id="lab82 | 780 | <a·id="lab482"></a><h1·class="section">quotient·is·always·the·biggest·integer·smaller·than·or·equal·to·a/b</h1> |
781 | <a·id="lab | 781 | <a·id="lab483"></a><h1·class="section">remainder·is·hence·always·positive·or·null.</h1> |
782 | </div> | 782 | </div> |
783 | <div·class="code"> | 783 | <div·class="code"> |
784 | <br/> | 784 | <br/> |
Max diff block lines reached; 252/17165 bytes (1.47%) of diff not shown. |
Offset 59, 15 lines modified | Offset 59, 15 lines modified | ||
59 | <br/> | 59 | <br/> |
60 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">Z_scope</span>.<br/> | 60 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">Z_scope</span>.<br/> |
61 | <br/> | 61 | <br/> |
62 | </div> | 62 | </div> |
63 | <div·class="doc"> | 63 | <div·class="doc"> |
64 | <a·id="lab | 64 | <a·id="lab384"></a><h1·class="section">Definitions·of·division·for·binary·integers,·Euclid·convention.</h1> |
65 | <div·class="paragraph">·</div> | 65 | <div·class="paragraph">·</div> |
66 | ·In·this·convention,·the·remainder·is·always·positive. | 66 | ·In·this·convention,·the·remainder·is·always·positive. |
67 | ····For·other·conventions,·see·<span·class="inlinecode"><span·class="id"·title="var">Z.div</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">Z.quot</span></span>·in·file·<span·class="inlinecode"><span·class="id"·title="var">BinIntDef</span></span>. | 67 | ····For·other·conventions,·see·<span·class="inlinecode"><span·class="id"·title="var">Z.div</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">Z.quot</span></span>·in·file·<span·class="inlinecode"><span·class="id"·title="var">BinIntDef</span></span>. |
68 | ····To·avoid·collision·with·the·other·divisions,·we·place·this·one | 68 | ····To·avoid·collision·with·the·other·divisions,·we·place·this·one |
69 | ····under·a·module. | 69 | ····under·a·module. |
Offset 172, 15 lines modified | Offset 172, 15 lines modified | ||
172 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zodd_bool_succ"·class="idref"·href="#Zodd_bool_succ"><span·class="id"·title="abbreviation">Zodd_bool_succ</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.odd_succ"><span·class="id"·title="lemma">Z.odd_succ</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> | 172 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zodd_bool_succ"·class="idref"·href="#Zodd_bool_succ"><span·class="id"·title="abbreviation">Zodd_bool_succ</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.odd_succ"><span·class="id"·title="lemma">Z.odd_succ</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> |
173 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zodd_bool_pred"·class="idref"·href="#Zodd_bool_pred"><span·class="id"·title="abbreviation">Zodd_bool_pred</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.odd_pred"><span·class="id"·title="lemma">Z.odd_pred</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> | 173 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zodd_bool_pred"·class="idref"·href="#Zodd_bool_pred"><span·class="id"·title="abbreviation">Zodd_bool_pred</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.odd_pred"><span·class="id"·title="lemma">Z.odd_pred</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> |
174 | <br/> | 174 | <br/> |
175 | </div> | 175 | </div> |
176 | <div·class="doc"> | 176 | <div·class="doc"> |
177 | <a·id="lab | 177 | <a·id="lab368"></a><h1·class="section">Definition·of·<span·class="inlinecode"><span·class="id"·title="var">Z.quot2</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">Z.div2</span></span>·and·properties·wrt·<span·class="inlinecode"><span·class="id"·title="var">Zeven</span></span></h1> |
178 | ··and·<span·class="inlinecode"><span·class="id"·title="var">Zodd</span></span>· | 178 | ··and·<span·class="inlinecode"><span·class="id"·title="var">Zodd</span></span>· |
179 | <div·class="paragraph">·</div> | 179 | <div·class="paragraph">·</div> |
180 | ·Properties·of·<span·class="inlinecode"><span·class="id"·title="var">Z.div2</span></span>· | 180 | ·Properties·of·<span·class="inlinecode"><span·class="id"·title="var">Z.div2</span></span>· |
181 | </div> | 181 | </div> |
182 | <div·class="code"> | 182 | <div·class="code"> |
Offset 45, 15 lines modified | Offset 45, 15 lines modified | ||
45 | <div·class="code"> | 45 | <div·class="code"> |
46 | <br/> | 46 | <br/> |
47 | </div> | 47 | </div> |
48 | <div·class="doc"> | 48 | <div·class="doc"> |
49 | <a·id="lab | 49 | <a·id="lab493"></a><h1·class="section">Zgcd_alt·:·an·alternate·version·of·Z.gcd,·based·on·Euclid's·algorithm</h1> |
50 | <div·class="paragraph">·</div> | 50 | <div·class="paragraph">·</div> |
51 | <div·class="paragraph">·</div> | 51 | <div·class="paragraph">·</div> |
52 | Author:·Pierre·Letouzey | 52 | Author:·Pierre·Letouzey |
Offset 98, 29 lines modified | Offset 98, 29 lines modified | ||
98 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.ZArith.Zmisc.html#"><span·class="id"·title="library">Zmisc</span></a>.<br/> | 98 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.ZArith.Zmisc.html#"><span·class="id"·title="library">Zmisc</span></a>.<br/> |
99 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.ZArith.Wf_Z.html#"><span·class="id"·title="library">Wf_Z</span></a>.<br/> | 99 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.ZArith.Wf_Z.html#"><span·class="id"·title="library">Wf_Z</span></a>.<br/> |
100 | <br/> | 100 | <br/> |
101 | </div> | 101 | </div> |
102 | <div·class="doc"> | 102 | <div·class="doc"> |
103 | <a·id="lab | 103 | <a·id="lab432"></a><h1·class="section">Simplification·lemmas</h1> |
104 | <div·class="paragraph">·</div> | 104 | <div·class="paragraph">·</div> |
105 | ·No·subgoal·or·smaller·subgoals····································· | 105 | ·No·subgoal·or·smaller·subgoals····································· |
106 | </div> | 106 | </div> |
107 | <div·class="code"> | 107 | <div·class="code"> |
108 | <br/> | 108 | <br/> |
109 | #[<span·class="id"·title="var">global</span>]<br/> | 109 | #[<span·class="id"·title="var">global</span>]<br/> |
110 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Resolve</span><br/> | 110 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Resolve</span><br/> |
111 | </div> | 111 | </div> |
112 | <div·class="doc"> | 112 | <div·class="doc"> |
113 | <a·id="lab | 113 | <a·id="lab433"></a><h2·class="section">Reversible·simplification·lemmas·(no·loss·of·information)</h2> |
114 | ·Should·clearly·be·declared·as·hints······························· | 114 | ·Should·clearly·be·declared·as·hints······························· |
115 | <div·class="paragraph">·</div> | 115 | <div·class="paragraph">·</div> |
116 | ·Lemmas·ending·by·eq· | 116 | ·Lemmas·ending·by·eq· |
117 | </div> | 117 | </div> |
118 | <div·class="code"> | 118 | <div·class="code"> |
119 | <span·class="id"·title="var">Zsucc_eq_compat</span>·<br/> | 119 | <span·class="id"·title="var">Zsucc_eq_compat</span>·<br/> |
Offset 167, 15 lines modified | Offset 167, 15 lines modified | ||
167 | <span·class="id"·title="var">Zplus_le_compat_l</span>·<br/> | 167 | <span·class="id"·title="var">Zplus_le_compat_l</span>·<br/> |
168 | <span·class="id"·title="var">Zplus_le_compat_r</span>·<br/> | 168 | <span·class="id"·title="var">Zplus_le_compat_r</span>·<br/> |
169 | <span·class="id"·title="var">Z.abs_nonneg</span>·<br/> | 169 | <span·class="id"·title="var">Z.abs_nonneg</span>·<br/> |
170 | <br/> | 170 | <br/> |
171 | </div> | 171 | </div> |
172 | <div·class="doc"> | 172 | <div·class="doc"> |
173 | <a·id="lab | 173 | <a·id="lab434"></a><h2·class="section">Irreversible·simplification·lemmas</h2> |
174 | ·Probably·to·be·declared·as·hints,·when·no·other·simplification·is·possible· | 174 | ·Probably·to·be·declared·as·hints,·when·no·other·simplification·is·possible· |
175 | <div·class="paragraph">·</div> | 175 | <div·class="paragraph">·</div> |
176 | ·Lemmas·ending·by·eq· | 176 | ·Lemmas·ending·by·eq· |
177 | </div> | 177 | </div> |
178 | <div·class="code"> | 178 | <div·class="code"> |
179 | <span·class="id"·title="var">Z_eq_mult</span>·<br/> | 179 | <span·class="id"·title="var">Z_eq_mult</span>·<br/> |
Offset 91, 15 lines modified | Offset 91, 15 lines modified | ||
91 | <li>·module·Zabs2Nat·:·from·Z·to·nat·(via·the·absolute·value) | 91 | <li>·module·Zabs2Nat·:·from·Z·to·nat·(via·the·absolute·value) |
92 | </li> | 92 | </li> |
93 | </ul> | 93 | </ul> |
94 | <div·class="paragraph">·</div> | 94 | <div·class="paragraph">·</div> |
95 | <a·id="lab | 95 | <a·id="lab381"></a><h1·class="section">Chains·of·conversions</h1> |
96 | <div·class="paragraph">·</div> | 96 | <div·class="paragraph">·</div> |
97 | ·When·combining·successive·conversions,·we·have·the·following | 97 | ·When·combining·successive·conversions,·we·have·the·following |
98 | ····commutative·diagram: | 98 | ····commutative·diagram: |
99 | <pre> | 99 | <pre> |
100 | ······--->·Nat·---- | 100 | ······--->·Nat·---- |
Offset 144, 15 lines modified | Offset 144, 15 lines modified | ||
144 | <br/> | 144 | <br/> |
145 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zabs_nat_N"·class="idref"·href="#Zabs_nat_N"><span·class="id"·title="lemma">Zabs_nat_N</span></a>·<a·id="n:10"·class="idref"·href="#n:10"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.NArith.BinNat.html#N.of_nat"><span·class="id"·title="definition">N.of_nat</span></a>·(<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.abs_nat"><span·class="id"·title="definition">Z.abs_nat</span></a>·<a·class="idref"·href="Coq.ZArith.Znat.html#n:10"><span·class="id"·title="variable">n</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.abs_N"><span·class="id"·title="definition">Z.abs_N</span></a>·<a·class="idref"·href="Coq.ZArith.Znat.html#n:10"><span·class="id"·title="variable">n</span></a>.<br/> | 145 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zabs_nat_N"·class="idref"·href="#Zabs_nat_N"><span·class="id"·title="lemma">Zabs_nat_N</span></a>·<a·id="n:10"·class="idref"·href="#n:10"><span·class="id"·title="binder">n</span></a>·:·<a·class="idref"·href="Coq.NArith.BinNat.html#N.of_nat"><span·class="id"·title="definition">N.of_nat</span></a>·(<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.abs_nat"><span·class="id"·title="definition">Z.abs_nat</span></a>·<a·class="idref"·href="Coq.ZArith.Znat.html#n:10"><span·class="id"·title="variable">n</span></a>)·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.abs_N"><span·class="id"·title="definition">Z.abs_N</span></a>·<a·class="idref"·href="Coq.ZArith.Znat.html#n:10"><span·class="id"·title="variable">n</span></a>.<br/> |
146 | <br/> | 146 | <br/> |
147 | </div> | 147 | </div> |
148 | <div·class="doc"> | 148 | <div·class="doc"> |
149 | <a·id="lab | 149 | <a·id="lab382"></a><h1·class="section">Conversions·between·<span·class="inlinecode"><span·class="id"·title="var">Z</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">N</span></span></h1> |
150 | </div> | 150 | </div> |
151 | <div·class="code"> | 151 | <div·class="code"> |
152 | <br/> | 152 | <br/> |
153 | <span·class="id"·title="keyword">Module</span>·<a·id="N2Z"·class="idref"·href="#N2Z"><span·class="id"·title="module">N2Z</span></a>.<br/> | 153 | <span·class="id"·title="keyword">Module</span>·<a·id="N2Z"·class="idref"·href="#N2Z"><span·class="id"·title="module">N2Z</span></a>.<br/> |
Offset 521, 15 lines modified | Offset 521, 15 lines modified | ||
521 | <br/> | 521 | <br/> |
522 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.ZArith.Znat.html#Zabs2N"><span·class="id"·title="module">Zabs2N</span></a>.<br/> | 522 | <span·class="id"·title="keyword">End</span>·<a·class="idref"·href="Coq.ZArith.Znat.html#Zabs2N"><span·class="id"·title="module">Zabs2N</span></a>.<br/> |
523 | <br/> | 523 | <br/> |
524 | </div> | 524 | </div> |
525 | <div·class="doc"> | 525 | <div·class="doc"> |
526 | <a·id="lab | 526 | <a·id="lab383"></a><h1·class="section">Conversions·between·<span·class="inlinecode"><span·class="id"·title="var">Z</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">nat</span></span></h1> |
527 | </div> | 527 | </div> |
528 | <div·class="code"> | 528 | <div·class="code"> |
529 | <br/> | 529 | <br/> |
530 | <span·class="id"·title="keyword">Module</span>·<a·id="Nat2Z"·class="idref"·href="#Nat2Z"><span·class="id"·title="module">Nat2Z</span></a>.<br/> | 530 | <span·class="id"·title="keyword">Module</span>·<a·id="Nat2Z"·class="idref"·href="#Nat2Z"><span·class="id"·title="module">Nat2Z</span></a>.<br/> |
Offset 241, 15 lines modified | Offset 241, 15 lines modified | ||
241 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zdivide_mod_minus"·class="idref"·href="#Zdivide_mod_minus"><span·class="id"·title="lemma">Zdivide_mod_minus</span></a>·<a·id="a:44"·class="idref"·href="#a:44"><span·class="id"·title="binder">a</span></a>·<a·id="b:45"·class="idref"·href="#b:45"><span·class="id"·title="binder">b</span></a>·<a·id="c:46"·class="idref"·href="#c:46"><span·class="id"·title="binder">c</span></a>:<br/> | 241 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zdivide_mod_minus"·class="idref"·href="#Zdivide_mod_minus"><span·class="id"·title="lemma">Zdivide_mod_minus</span></a>·<a·id="a:44"·class="idref"·href="#a:44"><span·class="id"·title="binder">a</span></a>·<a·id="b:45"·class="idref"·href="#b:45"><span·class="id"·title="binder">b</span></a>·<a·id="c:46"·class="idref"·href="#c:46"><span·class="id"·title="binder">c</span></a>:<br/> |
242 | 0·<a·class="idref"·href="Coq.ZArith.BinInt.html#bdb3edde5f841a282ce8fc1b00e3d211"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#c:46"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#bdb3edde5f841a282ce8fc1b00e3d211"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:45"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#5cd21895b4d5f127eb2c0acb80e8d6fc"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:45"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#5cd21895b4d5f127eb2c0acb80e8d6fc"><span·class="id"·title="notation">|</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#a:44"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#c:46"><span·class="id"·title="variable">c</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#5cd21895b4d5f127eb2c0acb80e8d6fc"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#a:44"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:45"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#c:46"><span·class="id"·title="variable">c</span></a>.<br/> | 242 | 0·<a·class="idref"·href="Coq.ZArith.BinInt.html#bdb3edde5f841a282ce8fc1b00e3d211"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#c:46"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#bdb3edde5f841a282ce8fc1b00e3d211"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:45"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#5cd21895b4d5f127eb2c0acb80e8d6fc"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:45"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#5cd21895b4d5f127eb2c0acb80e8d6fc"><span·class="id"·title="notation">|</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#a:44"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#c:46"><span·class="id"·title="variable">c</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#5cd21895b4d5f127eb2c0acb80e8d6fc"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#a:44"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:45"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#c:46"><span·class="id"·title="variable">c</span></a>.<br/> |
243 | <br/> | 243 | <br/> |
244 | </div> | 244 | </div> |
245 | <div·class="doc"> | 245 | <div·class="doc"> |
246 | <a·id="lab | 246 | <a·id="lab376"></a><h1·class="section">Greatest·common·divisor·(gcd).</h1> |
247 | <div·class="paragraph">·</div> | 247 | <div·class="paragraph">·</div> |
248 | ·There·is·no·unicity·of·the·gcd;·hence·we·define·the·predicate | 248 | ·There·is·no·unicity·of·the·gcd;·hence·we·define·the·predicate |
249 | ····<span·class="inlinecode"><span·class="id"·title="var">Zis_gcd</span></span>·<span·class="inlinecode"><span·class="id"·title="var">a</span></span>·<span·class="inlinecode"><span·class="id"·title="var">b</span></span>·<span·class="inlinecode"><span·class="id"·title="var">g</span></span>·expressing·that·<span·class="inlinecode"><span·class="id"·title="var">g</span></span>·is·a·gcd·of·<span·class="inlinecode"><span·class="id"·title="var">a</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">b</span></span>. | 249 | ····<span·class="inlinecode"><span·class="id"·title="var">Zis_gcd</span></span>·<span·class="inlinecode"><span·class="id"·title="var">a</span></span>·<span·class="inlinecode"><span·class="id"·title="var">b</span></span>·<span·class="inlinecode"><span·class="id"·title="var">g</span></span>·expressing·that·<span·class="inlinecode"><span·class="id"·title="var">g</span></span>·is·a·gcd·of·<span·class="inlinecode"><span·class="id"·title="var">a</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">b</span></span>. |
250 | ····(We·show·later·that·the·<span·class="inlinecode"><span·class="id"·title="var">gcd</span></span>·is·actually·unique·if·we·discard·its·sign.)· | 250 | ····(We·show·later·that·the·<span·class="inlinecode"><span·class="id"·title="var">gcd</span></span>·is·actually·unique·if·we·discard·its·sign.)· |
251 | </div> | 251 | </div> |
Offset 303, 15 lines modified | Offset 303, 15 lines modified | ||
303 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Zis_gcd_unique"·class="idref"·href="#Zis_gcd_unique"><span·class="id"·title="lemma">Zis_gcd_unique</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:68"·class="idref"·href="#a:68"><span·class="id"·title="binder">a</span></a>·<a·id="b:69"·class="idref"·href="#b:69"><span·class="id"·title="binder">b</span></a>·<a·id="c:70"·class="idref"·href="#c:70"><span·class="id"·title="binder">c</span></a>·<a·id="d:71"·class="idref"·href="#d:71"><span·class="id"·title="binder">d</span></a>·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>,<br/> | 303 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Zis_gcd_unique"·class="idref"·href="#Zis_gcd_unique"><span·class="id"·title="lemma">Zis_gcd_unique</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:68"·class="idref"·href="#a:68"><span·class="id"·title="binder">a</span></a>·<a·id="b:69"·class="idref"·href="#b:69"><span·class="id"·title="binder">b</span></a>·<a·id="c:70"·class="idref"·href="#c:70"><span·class="id"·title="binder">c</span></a>·<a·id="d:71"·class="idref"·href="#d:71"><span·class="id"·title="binder">d</span></a>·:·<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>,<br/> |
304 | <a·class="idref"·href="Coq.ZArith.Znumtheory.html#Zis_gcd"><span·class="id"·title="inductive">Zis_gcd</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#a:68"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:69"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#c:70"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#Zis_gcd"><span·class="id"·title="inductive">Zis_gcd</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#a:68"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:69"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#d:71"><span·class="id"·title="variable">d</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>··<a·class="idref"·href="Coq.ZArith.Znumtheory.html#c:70"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#d:71"><span·class="id"·title="variable">d</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#c:70"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#d:71"><span·class="id"·title="variable">d</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>.<br/> | 304 | <a·class="idref"·href="Coq.ZArith.Znumtheory.html#Zis_gcd"><span·class="id"·title="inductive">Zis_gcd</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#a:68"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:69"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#c:70"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#Zis_gcd"><span·class="id"·title="inductive">Zis_gcd</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#a:68"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:69"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#d:71"><span·class="id"·title="variable">d</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>··<a·class="idref"·href="Coq.ZArith.Znumtheory.html#c:70"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#d:71"><span·class="id"·title="variable">d</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#c:70"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#d:71"><span·class="id"·title="variable">d</span></a><a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">)</span></a>.<br/> |
305 | <br/> | 305 | <br/> |
306 | </div> | 306 | </div> |
307 | <div·class="doc"> | 307 | <div·class="doc"> |
308 | <a·id="lab | 308 | <a·id="lab377"></a><h1·class="section">Extended·Euclid·algorithm.</h1> |
309 | </div> | 309 | </div> |
310 | <div·class="code"> | 310 | <div·class="code"> |
311 | <br/> | 311 | <br/> |
312 | <span·class="id"·title="keyword">Lemma</span>·<a·id="deprecated_Zis_gcd_for_euclid"·class="idref"·href="#deprecated_Zis_gcd_for_euclid"><span·class="id"·title="lemma">deprecated_Zis_gcd_for_euclid</span></a>·:<br/> | 312 | <span·class="id"·title="keyword">Lemma</span>·<a·id="deprecated_Zis_gcd_for_euclid"·class="idref"·href="#deprecated_Zis_gcd_for_euclid"><span·class="id"·title="lemma">deprecated_Zis_gcd_for_euclid</span></a>·:<br/> |
313 | <span·class="id"·title="keyword">forall</span>·<a·id="a:72"·class="idref"·href="#a:72"><span·class="id"·title="binder">a</span></a>·<a·id="b:73"·class="idref"·href="#b:73"><span·class="id"·title="binder">b</span></a>·<a·id="d:74"·class="idref"·href="#d:74"><span·class="id"·title="binder">d</span></a>·<a·id="q:75"·class="idref"·href="#q:75"><span·class="id"·title="binder">q</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>,·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#Zis_gcd"><span·class="id"·title="inductive">Zis_gcd</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:73"><span·class="id"·title="variable">b</span></a>·(<a·class="idref"·href="Coq.ZArith.Znumtheory.html#a:72"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#q:75"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:73"><span·class="id"·title="variable">b</span></a>)·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#d:74"><span·class="id"·title="variable">d</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#Zis_gcd"><span·class="id"·title="inductive">Zis_gcd</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#a:72"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:73"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#d:74"><span·class="id"·title="variable">d</span></a>.<br/> | 313 | <span·class="id"·title="keyword">forall</span>·<a·id="a:72"·class="idref"·href="#a:72"><span·class="id"·title="binder">a</span></a>·<a·id="b:73"·class="idref"·href="#b:73"><span·class="id"·title="binder">b</span></a>·<a·id="d:74"·class="idref"·href="#d:74"><span·class="id"·title="binder">d</span></a>·<a·id="q:75"·class="idref"·href="#q:75"><span·class="id"·title="binder">q</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>,·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#Zis_gcd"><span·class="id"·title="inductive">Zis_gcd</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:73"><span·class="id"·title="variable">b</span></a>·(<a·class="idref"·href="Coq.ZArith.Znumtheory.html#a:72"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#q:75"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:73"><span·class="id"·title="variable">b</span></a>)·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#d:74"><span·class="id"·title="variable">d</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#Zis_gcd"><span·class="id"·title="inductive">Zis_gcd</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#a:72"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:73"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#d:74"><span·class="id"·title="variable">d</span></a>.<br/> |
Offset 391, 15 lines modified | Offset 391, 15 lines modified | ||
391 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Zis_gcd_uniqueness_apart_sign"·class="idref"·href="#Zis_gcd_uniqueness_apart_sign"><span·class="id"·title="lemma">Zis_gcd_uniqueness_apart_sign</span></a>·:<br/> | 391 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Zis_gcd_uniqueness_apart_sign"·class="idref"·href="#Zis_gcd_uniqueness_apart_sign"><span·class="id"·title="lemma">Zis_gcd_uniqueness_apart_sign</span></a>·:<br/> |
392 | <span·class="id"·title="keyword">forall</span>·<a·id="a:138"·class="idref"·href="#a:138"><span·class="id"·title="binder">a</span></a>·<a·id="b:139"·class="idref"·href="#b:139"><span·class="id"·title="binder">b</span></a>·<a·id="d:140"·class="idref"·href="#d:140"><span·class="id"·title="binder">d</span></a>·<a·id="d':141"·class="idref"·href="#d':141"><span·class="id"·title="binder">d'</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>,·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#Zis_gcd"><span·class="id"·title="inductive">Zis_gcd</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#a:138"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:139"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#d:140"><span·class="id"·title="variable">d</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#Zis_gcd"><span·class="id"·title="inductive">Zis_gcd</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#a:138"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:139"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#d':141"><span·class="id"·title="variable">d'</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#d:140"><span·class="id"·title="variable">d</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#d':141"><span·class="id"·title="variable">d'</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#d:140"><span·class="id"·title="variable">d</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#d':141"><span·class="id"·title="variable">d'</span></a>.<br/> | 392 | <span·class="id"·title="keyword">forall</span>·<a·id="a:138"·class="idref"·href="#a:138"><span·class="id"·title="binder">a</span></a>·<a·id="b:139"·class="idref"·href="#b:139"><span·class="id"·title="binder">b</span></a>·<a·id="d:140"·class="idref"·href="#d:140"><span·class="id"·title="binder">d</span></a>·<a·id="d':141"·class="idref"·href="#d':141"><span·class="id"·title="binder">d'</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>,·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#Zis_gcd"><span·class="id"·title="inductive">Zis_gcd</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#a:138"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:139"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#d:140"><span·class="id"·title="variable">d</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#Zis_gcd"><span·class="id"·title="inductive">Zis_gcd</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#a:138"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:139"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#d':141"><span·class="id"·title="variable">d'</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#d:140"><span·class="id"·title="variable">d</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#d':141"><span·class="id"·title="variable">d'</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#d:140"><span·class="id"·title="variable">d</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#d':141"><span·class="id"·title="variable">d'</span></a>.<br/> |
393 | <br/> | 393 | <br/> |
394 | </div> | 394 | </div> |
395 | <div·class="doc"> | 395 | <div·class="doc"> |
396 | <a·id="lab | 396 | <a·id="lab378"></a><h1·class="section">Bezout's·coefficients</h1> |
397 | </div> | 397 | </div> |
398 | <div·class="code"> | 398 | <div·class="code"> |
399 | <br/> | 399 | <br/> |
400 | <span·class="id"·title="keyword">Inductive</span>·<a·id="Bezout"·class="idref"·href="#Bezout"><span·class="id"·title="definition,·inductive"><span·id="Bezout_ind"·class="id"><span·id="Bezout_sind"·class="id">Bezout</span></span></span></a>·(<a·id="a:142"·class="idref"·href="#a:142"><span·class="id"·title="binder">a</span></a>·<a·id="b:143"·class="idref"·href="#b:143"><span·class="id"·title="binder">b</span></a>·<a·id="d:144"·class="idref"·href="#d:144"><span·class="id"·title="binder">d</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>)·:·<span·class="id"·title="keyword">Prop</span>·:=<br/> | 400 | <span·class="id"·title="keyword">Inductive</span>·<a·id="Bezout"·class="idref"·href="#Bezout"><span·class="id"·title="definition,·inductive"><span·id="Bezout_ind"·class="id"><span·id="Bezout_sind"·class="id">Bezout</span></span></span></a>·(<a·id="a:142"·class="idref"·href="#a:142"><span·class="id"·title="binder">a</span></a>·<a·id="b:143"·class="idref"·href="#b:143"><span·class="id"·title="binder">b</span></a>·<a·id="d:144"·class="idref"·href="#d:144"><span·class="id"·title="binder">d</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>)·:·<span·class="id"·title="keyword">Prop</span>·:=<br/> |
401 | <a·id="Bezout_intro"·class="idref"·href="#Bezout_intro"><span·class="id"·title="constructor">Bezout_intro</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="u:147"·class="idref"·href="#u:147"><span·class="id"·title="binder">u</span></a>·<a·id="v:148"·class="idref"·href="#v:148"><span·class="id"·title="binder">v</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>,·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#u:147"><span·class="id"·title="variable">u</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#a:142"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#v:148"><span·class="id"·title="variable">v</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:143"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#d:144"><span·class="id"·title="variable">d</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#Bezout:145"><span·class="id"·title="inductive">Bezout</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#a:142"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:143"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#d:144"><span·class="id"·title="variable">d</span></a>.<br/> | 401 | <a·id="Bezout_intro"·class="idref"·href="#Bezout_intro"><span·class="id"·title="constructor">Bezout_intro</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="u:147"·class="idref"·href="#u:147"><span·class="id"·title="binder">u</span></a>·<a·id="v:148"·class="idref"·href="#v:148"><span·class="id"·title="binder">v</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>,·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#u:147"><span·class="id"·title="variable">u</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#a:142"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#v:148"><span·class="id"·title="variable">v</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:143"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#d:144"><span·class="id"·title="variable">d</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#Bezout:145"><span·class="id"·title="inductive">Bezout</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#a:142"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:143"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#d:144"><span·class="id"·title="variable">d</span></a>.<br/> |
Offset 427, 15 lines modified | Offset 427, 15 lines modified | ||
427 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zis_gcd_mult"·class="idref"·href="#Zis_gcd_mult"><span·class="id"·title="lemma">Zis_gcd_mult</span></a>·:<br/> | 427 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zis_gcd_mult"·class="idref"·href="#Zis_gcd_mult"><span·class="id"·title="lemma">Zis_gcd_mult</span></a>·:<br/> |
428 | <span·class="id"·title="keyword">forall</span>·<a·id="a:152"·class="idref"·href="#a:152"><span·class="id"·title="binder">a</span></a>·<a·id="b:153"·class="idref"·href="#b:153"><span·class="id"·title="binder">b</span></a>·<a·id="c:154"·class="idref"·href="#c:154"><span·class="id"·title="binder">c</span></a>·<a·id="d:155"·class="idref"·href="#d:155"><span·class="id"·title="binder">d</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>,·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#Zis_gcd"><span·class="id"·title="inductive">Zis_gcd</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#a:152"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:153"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#d:155"><span·class="id"·title="variable">d</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#Zis_gcd"><span·class="id"·title="inductive">Zis_gcd</span></a>·(<a·class="idref"·href="Coq.ZArith.Znumtheory.html#c:154"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#a:152"><span·class="id"·title="variable">a</span></a>)·(<a·class="idref"·href="Coq.ZArith.Znumtheory.html#c:154"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:153"><span·class="id"·title="variable">b</span></a>)·(<a·class="idref"·href="Coq.ZArith.Znumtheory.html#c:154"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#d:155"><span·class="id"·title="variable">d</span></a>).<br/> | 428 | <span·class="id"·title="keyword">forall</span>·<a·id="a:152"·class="idref"·href="#a:152"><span·class="id"·title="binder">a</span></a>·<a·id="b:153"·class="idref"·href="#b:153"><span·class="id"·title="binder">b</span></a>·<a·id="c:154"·class="idref"·href="#c:154"><span·class="id"·title="binder">c</span></a>·<a·id="d:155"·class="idref"·href="#d:155"><span·class="id"·title="binder">d</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>,·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#Zis_gcd"><span·class="id"·title="inductive">Zis_gcd</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#a:152"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:153"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#d:155"><span·class="id"·title="variable">d</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#Zis_gcd"><span·class="id"·title="inductive">Zis_gcd</span></a>·(<a·class="idref"·href="Coq.ZArith.Znumtheory.html#c:154"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#a:152"><span·class="id"·title="variable">a</span></a>)·(<a·class="idref"·href="Coq.ZArith.Znumtheory.html#c:154"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:153"><span·class="id"·title="variable">b</span></a>)·(<a·class="idref"·href="Coq.ZArith.Znumtheory.html#c:154"><span·class="id"·title="variable">c</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#d:155"><span·class="id"·title="variable">d</span></a>).<br/> |
429 | <br/> | 429 | <br/> |
430 | </div> | 430 | </div> |
431 | <div·class="doc"> | 431 | <div·class="doc"> |
432 | <a·id="lab | 432 | <a·id="lab379"></a><h1·class="section">Relative·primality</h1> |
433 | </div> | 433 | </div> |
434 | <div·class="code"> | 434 | <div·class="code"> |
435 | <br/> | 435 | <br/> |
436 | <span·class="id"·title="keyword">Definition</span>·<a·id="rel_prime"·class="idref"·href="#rel_prime"><span·class="id"·title="definition">rel_prime</span></a>·(<a·id="a:156"·class="idref"·href="#a:156"><span·class="id"·title="binder">a</span></a>·<a·id="b:157"·class="idref"·href="#b:157"><span·class="id"·title="binder">b</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>)·:·<span·class="id"·title="keyword">Prop</span>·:=·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#Zis_gcd"><span·class="id"·title="inductive">Zis_gcd</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#a:156"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:157"><span·class="id"·title="variable">b</span></a>·1.<br/> | 436 | <span·class="id"·title="keyword">Definition</span>·<a·id="rel_prime"·class="idref"·href="#rel_prime"><span·class="id"·title="definition">rel_prime</span></a>·(<a·id="a:156"·class="idref"·href="#a:156"><span·class="id"·title="binder">a</span></a>·<a·id="b:157"·class="idref"·href="#b:157"><span·class="id"·title="binder">b</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>)·:·<span·class="id"·title="keyword">Prop</span>·:=·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#Zis_gcd"><span·class="id"·title="inductive">Zis_gcd</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#a:156"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:157"><span·class="id"·title="variable">b</span></a>·1.<br/> |
Offset 521, 15 lines modified | Offset 521, 15 lines modified | ||
521 | <br/> | 521 | <br/> |
522 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Zrel_prime_neq_mod_0"·class="idref"·href="#Zrel_prime_neq_mod_0"><span·class="id"·title="lemma">Zrel_prime_neq_mod_0</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:186"·class="idref"·href="#a:186"><span·class="id"·title="binder">a</span></a>·<a·id="b:187"·class="idref"·href="#b:187"><span·class="id"·title="binder">b</span></a>,·1·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:187"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#rel_prime"><span·class="id"·title="definition">rel_prime</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#a:186"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:187"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#a:186"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:187"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·0.<br/> | 522 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Zrel_prime_neq_mod_0"·class="idref"·href="#Zrel_prime_neq_mod_0"><span·class="id"·title="lemma">Zrel_prime_neq_mod_0</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:186"·class="idref"·href="#a:186"><span·class="id"·title="binder">a</span></a>·<a·id="b:187"·class="idref"·href="#b:187"><span·class="id"·title="binder">b</span></a>,·1·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:187"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#rel_prime"><span·class="id"·title="definition">rel_prime</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#a:186"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:187"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#a:186"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#b:187"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·0.<br/> |
523 | <br/> | 523 | <br/> |
524 | </div> | 524 | </div> |
525 | <div·class="doc"> | 525 | <div·class="doc"> |
526 | <a·id="lab | 526 | <a·id="lab380"></a><h1·class="section">Primality</h1> |
527 | </div> | 527 | </div> |
528 | <div·class="code"> | 528 | <div·class="code"> |
529 | <br/> | 529 | <br/> |
530 | <span·class="id"·title="keyword">Inductive</span>·<a·id="prime"·class="idref"·href="#prime"><span·class="id"·title="definition,·inductive"><span·id="prime_rect"·class="id"><span·id="prime_ind"·class="id"><span·id="prime_rec"·class="id"><span·id="prime_sind"·class="id">prime</span></span></span></span></span></a>·(<a·id="p:188"·class="idref"·href="#p:188"><span·class="id"·title="binder">p</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>)·:·<span·class="id"·title="keyword">Prop</span>·:=<br/> | 530 | <span·class="id"·title="keyword">Inductive</span>·<a·id="prime"·class="idref"·href="#prime"><span·class="id"·title="definition,·inductive"><span·id="prime_rect"·class="id"><span·id="prime_ind"·class="id"><span·id="prime_rec"·class="id"><span·id="prime_sind"·class="id">prime</span></span></span></span></span></a>·(<a·id="p:188"·class="idref"·href="#p:188"><span·class="id"·title="binder">p</span></a>:<a·class="idref"·href="Coq.Numbers.BinNums.html#Z"><span·class="id"·title="inductive">Z</span></a>)·:·<span·class="id"·title="keyword">Prop</span>·:=<br/> |
531 | <a·id="prime_intro"·class="idref"·href="#prime_intro"><span·class="id"·title="constructor">prime_intro</span></a>·:<br/> | 531 | <a·id="prime_intro"·class="idref"·href="#prime_intro"><span·class="id"·title="constructor">prime_intro</span></a>·:<br/> |
Offset 67, 30 lines modified | Offset 67, 30 lines modified | ||
67 | <br/> | 67 | <br/> |
68 | </div> | 68 | </div> |
69 | <div·class="doc"> | 69 | <div·class="doc"> |
70 | Properties·of·the·order·relations·on·binary·integers· | 70 | Properties·of·the·order·relations·on·binary·integers· |
71 | <div·class="paragraph">·</div> | 71 | <div·class="paragraph">·</div> |
72 | <a·id="lab | 72 | <a·id="lab358"></a><h1·class="section">Trichotomy</h1> |
73 | </div> | 73 | </div> |
74 | <div·class="code"> | 74 | <div·class="code"> |
75 | <br/> | 75 | <br/> |
76 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Ztrichotomy_inf"·class="idref"·href="#Ztrichotomy_inf"><span·class="id"·title="lemma">Ztrichotomy_inf</span></a>·<a·id="n:1"·class="idref"·href="#n:1"><span·class="id"·title="binder">n</span></a>·<a·id="m:2"·class="idref"·href="#m:2"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.ZArith.Zorder.html#n:1"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:2"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.ZArith.Zorder.html#n:1"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:2"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#53e8e3b7ca0342c8b99a777b3c5faf3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#53e8e3b7ca0342c8b99a777b3c5faf3a"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.ZArith.Zorder.html#n:1"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:2"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Specif.html#53e8e3b7ca0342c8b99a777b3c5faf3a"><span·class="id"·title="notation">}</span></a>.<br/> | 76 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Ztrichotomy_inf"·class="idref"·href="#Ztrichotomy_inf"><span·class="id"·title="lemma">Ztrichotomy_inf</span></a>·<a·id="n:1"·class="idref"·href="#n:1"><span·class="id"·title="binder">n</span></a>·<a·id="m:2"·class="idref"·href="#m:2"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.ZArith.Zorder.html#n:1"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:2"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.ZArith.Zorder.html#n:1"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:2"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Specif.html#87727981cdc1579fef00b9d9c1d3b9da"><span·class="id"·title="notation">}</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#53e8e3b7ca0342c8b99a777b3c5faf3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.Init.Specif.html#53e8e3b7ca0342c8b99a777b3c5faf3a"><span·class="id"·title="notation">{</span></a><a·class="idref"·href="Coq.ZArith.Zorder.html#n:1"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:2"><span·class="id"·title="variable">m</span></a><a·class="idref"·href="Coq.Init.Specif.html#53e8e3b7ca0342c8b99a777b3c5faf3a"><span·class="id"·title="notation">}</span></a>.<br/> |
77 | <br/> | 77 | <br/> |
78 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Ztrichotomy"·class="idref"·href="#Ztrichotomy"><span·class="id"·title="lemma">Ztrichotomy</span></a>·<a·id="n:3"·class="idref"·href="#n:3"><span·class="id"·title="binder">n</span></a>·<a·id="m:4"·class="idref"·href="#m:4"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:3"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:4"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:3"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:4"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:3"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:4"><span·class="id"·title="variable">m</span></a>.<br/> | 78 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Ztrichotomy"·class="idref"·href="#Ztrichotomy"><span·class="id"·title="lemma">Ztrichotomy</span></a>·<a·id="n:3"·class="idref"·href="#n:3"><span·class="id"·title="binder">n</span></a>·<a·id="m:4"·class="idref"·href="#m:4"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:3"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:4"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:3"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:4"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:3"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:4"><span·class="id"·title="variable">m</span></a>.<br/> |
79 | <br/> | 79 | <br/> |
80 | </div> | 80 | </div> |
81 | <div·class="doc"> | 81 | <div·class="doc"> |
82 | <a·id="lab | 82 | <a·id="lab359"></a><h1·class="section">Decidability·of·equality·and·order·on·Z</h1> |
83 | </div> | 83 | </div> |
84 | <div·class="code"> | 84 | <div·class="code"> |
85 | <br/> | 85 | <br/> |
86 | <span·class="id"·title="keyword">Notation</span>·<a·id="dec_eq"·class="idref"·href="#dec_eq"><span·class="id"·title="abbreviation">dec_eq</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.eq_decidable"><span·class="id"·title="lemma">Z.eq_decidable</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> | 86 | <span·class="id"·title="keyword">Notation</span>·<a·id="dec_eq"·class="idref"·href="#dec_eq"><span·class="id"·title="abbreviation">dec_eq</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.eq_decidable"><span·class="id"·title="lemma">Z.eq_decidable</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> |
87 | <span·class="id"·title="keyword">Notation</span>·<a·id="dec_Zle"·class="idref"·href="#dec_Zle"><span·class="id"·title="abbreviation">dec_Zle</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.le_decidable"><span·class="id"·title="lemma">Z.le_decidable</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> | 87 | <span·class="id"·title="keyword">Notation</span>·<a·id="dec_Zle"·class="idref"·href="#dec_Zle"><span·class="id"·title="abbreviation">dec_Zle</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.le_decidable"><span·class="id"·title="lemma">Z.le_decidable</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> |
Offset 108, 15 lines modified | Offset 108, 15 lines modified | ||
108 | <br/> | 108 | <br/> |
109 | <span·class="id"·title="keyword">Theorem</span>·<a·id="not_Zeq"·class="idref"·href="#not_Zeq"><span·class="id"·title="lemma">not_Zeq</span></a>·<a·id="n:11"·class="idref"·href="#n:11"><span·class="id"·title="binder">n</span></a>·<a·id="m:12"·class="idref"·href="#m:12"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:11"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:12"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:11"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:12"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:12"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:11"><span·class="id"·title="variable">n</span></a>.<br/> | 109 | <span·class="id"·title="keyword">Theorem</span>·<a·id="not_Zeq"·class="idref"·href="#not_Zeq"><span·class="id"·title="lemma">not_Zeq</span></a>·<a·id="n:11"·class="idref"·href="#n:11"><span·class="id"·title="binder">n</span></a>·<a·id="m:12"·class="idref"·href="#m:12"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:11"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<>'_x"><span·class="id"·title="notation"><></span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:12"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:11"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:12"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:12"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:11"><span·class="id"·title="variable">n</span></a>.<br/> |
110 | <br/> | 110 | <br/> |
111 | </div> | 111 | </div> |
112 | <div·class="doc"> | 112 | <div·class="doc"> |
113 | <a·id="lab | 113 | <a·id="lab360"></a><h1·class="section">Relating·strict·and·large·orders</h1> |
114 | </div> | 114 | </div> |
115 | <div·class="code"> | 115 | <div·class="code"> |
116 | <br/> | 116 | <br/> |
117 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zgt_iff_lt"·class="idref"·href="#Zgt_iff_lt"><span·class="id"·title="abbreviation">Zgt_iff_lt</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.gt_lt_iff"><span·class="id"·title="lemma">Z.gt_lt_iff</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> | 117 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zgt_iff_lt"·class="idref"·href="#Zgt_iff_lt"><span·class="id"·title="abbreviation">Zgt_iff_lt</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.gt_lt_iff"><span·class="id"·title="lemma">Z.gt_lt_iff</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> |
118 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zge_iff_le"·class="idref"·href="#Zge_iff_le"><span·class="id"·title="abbreviation">Zge_iff_le</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.ge_le_iff"><span·class="id"·title="lemma">Z.ge_le_iff</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> | 118 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zge_iff_le"·class="idref"·href="#Zge_iff_le"><span·class="id"·title="abbreviation">Zge_iff_le</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.ge_le_iff"><span·class="id"·title="lemma">Z.ge_le_iff</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> |
Offset 148, 15 lines modified | Offset 148, 15 lines modified | ||
148 | <br/> | 148 | <br/> |
149 | <span·class="id"·title="keyword">Lemma</span>·<a·id="not_Zne"·class="idref"·href="#not_Zne"><span·class="id"·title="lemma">not_Zne</span></a>·<a·id="n:29"·class="idref"·href="#n:29"><span·class="id"·title="binder">n</span></a>·<a·id="m:30"·class="idref"·href="#m:30"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Zne"><span·class="id"·title="definition">Zne</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:29"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:30"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:29"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:30"><span·class="id"·title="variable">m</span></a>.<br/> | 149 | <span·class="id"·title="keyword">Lemma</span>·<a·id="not_Zne"·class="idref"·href="#not_Zne"><span·class="id"·title="lemma">not_Zne</span></a>·<a·id="n:29"·class="idref"·href="#n:29"><span·class="id"·title="binder">n</span></a>·<a·id="m:30"·class="idref"·href="#m:30"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.Init.Logic.html#63a68285c81db8f9bc456233bb9ed181"><span·class="id"·title="notation">~</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Zne"><span·class="id"·title="definition">Zne</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:29"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:30"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:29"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:30"><span·class="id"·title="variable">m</span></a>.<br/> |
150 | <br/> | 150 | <br/> |
151 | </div> | 151 | </div> |
152 | <div·class="doc"> | 152 | <div·class="doc"> |
153 | <a·id="lab | 153 | <a·id="lab361"></a><h1·class="section">Equivalence·and·order·properties</h1> |
154 | <div·class="paragraph">·</div> | 154 | <div·class="paragraph">·</div> |
155 | ·Reflexivity· | 155 | ·Reflexivity· |
156 | </div> | 156 | </div> |
157 | <div·class="code"> | 157 | <div·class="code"> |
Offset 272, 19 lines modified | Offset 272, 19 lines modified | ||
272 | #[<span·class="id"·title="var">global</span>]<br/> | 272 | #[<span·class="id"·title="var">global</span>]<br/> |
273 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Resolve</span>·<span·class="id"·title="var">Z.le_trans</span>:·<span·class="id"·title="var">zarith</span>.<br/> | 273 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Resolve</span>·<span·class="id"·title="var">Z.le_trans</span>:·<span·class="id"·title="var">zarith</span>.<br/> |
274 | <br/> | 274 | <br/> |
275 | </div> | 275 | </div> |
276 | <div·class="doc"> | 276 | <div·class="doc"> |
277 | <a·id="lab | 277 | <a·id="lab362"></a><h1·class="section">Compatibility·of·order·and·operations·on·Z</h1> |
278 | <div·class="paragraph">·</div> | 278 | <div·class="paragraph">·</div> |
279 | <a·id="lab | 279 | <a·id="lab363"></a><h2·class="section">Successor</h2> |
280 | <div·class="paragraph">·</div> | 280 | <div·class="paragraph">·</div> |
281 | ·Compatibility·of·successor·wrt·to·order· | 281 | ·Compatibility·of·successor·wrt·to·order· |
282 | </div> | 282 | </div> |
283 | <div·class="code"> | 283 | <div·class="code"> |
Offset 454, 15 lines modified | Offset 454, 15 lines modified | ||
454 | <br/> | 454 | <br/> |
455 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zgt_succ_gt_or_eq"·class="idref"·href="#Zgt_succ_gt_or_eq"><span·class="id"·title="lemma">Zgt_succ_gt_or_eq</span></a>·<a·id="n:90"·class="idref"·href="#n:90"><span·class="id"·title="binder">n</span></a>·<a·id="m:91"·class="idref"·href="#m:91"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.succ"><span·class="id"·title="definition">Z.succ</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:90"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:91"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:90"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:91"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:91"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:90"><span·class="id"·title="variable">n</span></a>.<br/> | 455 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zgt_succ_gt_or_eq"·class="idref"·href="#Zgt_succ_gt_or_eq"><span·class="id"·title="lemma">Zgt_succ_gt_or_eq</span></a>·<a·id="n:90"·class="idref"·href="#n:90"><span·class="id"·title="binder">n</span></a>·<a·id="m:91"·class="idref"·href="#m:91"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.succ"><span·class="id"·title="definition">Z.succ</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:90"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:91"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:90"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:91"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:91"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:90"><span·class="id"·title="variable">n</span></a>.<br/> |
456 | <br/> | 456 | <br/> |
457 | </div> | 457 | </div> |
458 | <div·class="doc"> | 458 | <div·class="doc"> |
459 | <a·id="lab | 459 | <a·id="lab364"></a><h2·class="section">Addition</h2> |
460 | ·Compatibility·of·addition·wrt·to·order· | 460 | ·Compatibility·of·addition·wrt·to·order· |
461 | </div> | 461 | </div> |
462 | <div·class="code"> | 462 | <div·class="code"> |
463 | <br/> | 463 | <br/> |
464 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zplus_lt_le_compat"·class="idref"·href="#Zplus_lt_le_compat"><span·class="id"·title="abbreviation">Zplus_lt_le_compat</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.add_lt_le_mono"><span·class="id"·title="lemma">Z.add_lt_le_mono</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> | 464 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zplus_lt_le_compat"·class="idref"·href="#Zplus_lt_le_compat"><span·class="id"·title="abbreviation">Zplus_lt_le_compat</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.add_lt_le_mono"><span·class="id"·title="lemma">Z.add_lt_le_mono</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> |
465 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zplus_le_lt_compat"·class="idref"·href="#Zplus_le_lt_compat"><span·class="id"·title="abbreviation">Zplus_le_lt_compat</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.add_le_lt_mono"><span·class="id"·title="lemma">Z.add_le_lt_mono</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> | 465 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zplus_le_lt_compat"·class="idref"·href="#Zplus_le_lt_compat"><span·class="id"·title="abbreviation">Zplus_le_lt_compat</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.add_le_lt_mono"><span·class="id"·title="lemma">Z.add_le_lt_mono</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> |
Offset 524, 15 lines modified | Offset 524, 15 lines modified | ||
524 | <br/> | 524 | <br/> |
525 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zplus_gt_reg_r"·class="idref"·href="#Zplus_gt_reg_r"><span·class="id"·title="lemma">Zplus_gt_reg_r</span></a>·<a·id="n:125"·class="idref"·href="#n:125"><span·class="id"·title="binder">n</span></a>·<a·id="m:126"·class="idref"·href="#m:126"><span·class="id"·title="binder">m</span></a>·<a·id="p:127"·class="idref"·href="#p:127"><span·class="id"·title="binder">p</span></a>·:·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:125"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#p:127"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:126"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#p:127"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:125"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:126"><span·class="id"·title="variable">m</span></a>.<br/> | 525 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zplus_gt_reg_r"·class="idref"·href="#Zplus_gt_reg_r"><span·class="id"·title="lemma">Zplus_gt_reg_r</span></a>·<a·id="n:125"·class="idref"·href="#n:125"><span·class="id"·title="binder">n</span></a>·<a·id="m:126"·class="idref"·href="#m:126"><span·class="id"·title="binder">m</span></a>·<a·id="p:127"·class="idref"·href="#p:127"><span·class="id"·title="binder">p</span></a>·:·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:125"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#p:127"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:126"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#p:127"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:125"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:126"><span·class="id"·title="variable">m</span></a>.<br/> |
526 | <br/> | 526 | <br/> |
527 | </div> | 527 | </div> |
528 | <div·class="doc"> | 528 | <div·class="doc"> |
529 | <a·id="lab | 529 | <a·id="lab365"></a><h2·class="section">Multiplication</h2> |
530 | ·Compatibility·of·multiplication·by·a·positive·wrt·to·order· | 530 | ·Compatibility·of·multiplication·by·a·positive·wrt·to·order· |
531 | </div> | 531 | </div> |
532 | <div·class="code"> | 532 | <div·class="code"> |
533 | <br/> | 533 | <br/> |
534 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zmult_le_compat_r"·class="idref"·href="#Zmult_le_compat_r"><span·class="id"·title="lemma">Zmult_le_compat_r</span></a>·<a·id="n:128"·class="idref"·href="#n:128"><span·class="id"·title="binder">n</span></a>·<a·id="m:129"·class="idref"·href="#m:129"><span·class="id"·title="binder">m</span></a>·<a·id="p:130"·class="idref"·href="#p:130"><span·class="id"·title="binder">p</span></a>·:·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:128"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#306329b0eca7a2b86c198702f594ad8e"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:129"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0·<a·class="idref"·href="Coq.ZArith.BinInt.html#306329b0eca7a2b86c198702f594ad8e"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#p:130"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:128"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#p:130"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#306329b0eca7a2b86c198702f594ad8e"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:129"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#p:130"><span·class="id"·title="variable">p</span></a>.<br/> | 534 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zmult_le_compat_r"·class="idref"·href="#Zmult_le_compat_r"><span·class="id"·title="lemma">Zmult_le_compat_r</span></a>·<a·id="n:128"·class="idref"·href="#n:128"><span·class="id"·title="binder">n</span></a>·<a·id="m:129"·class="idref"·href="#m:129"><span·class="id"·title="binder">m</span></a>·<a·id="p:130"·class="idref"·href="#p:130"><span·class="id"·title="binder">p</span></a>·:·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:128"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#306329b0eca7a2b86c198702f594ad8e"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:129"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0·<a·class="idref"·href="Coq.ZArith.BinInt.html#306329b0eca7a2b86c198702f594ad8e"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#p:130"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:128"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#p:130"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#306329b0eca7a2b86c198702f594ad8e"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:129"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#p:130"><span·class="id"·title="variable">p</span></a>.<br/> |
Offset 652, 30 lines modified | Offset 652, 30 lines modified | ||
652 | <br/> | 652 | <br/> |
653 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zmult_gt_0_reg_l"·class="idref"·href="#Zmult_gt_0_reg_l"><span·class="id"·title="lemma">Zmult_gt_0_reg_l</span></a>·<a·id="n:208"·class="idref"·href="#n:208"><span·class="id"·title="binder">n</span></a>·<a·id="m:209"·class="idref"·href="#m:209"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:208"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:208"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:209"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:209"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·0.<br/> | 653 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zmult_gt_0_reg_l"·class="idref"·href="#Zmult_gt_0_reg_l"><span·class="id"·title="lemma">Zmult_gt_0_reg_l</span></a>·<a·id="n:208"·class="idref"·href="#n:208"><span·class="id"·title="binder">n</span></a>·<a·id="m:209"·class="idref"·href="#m:209"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:208"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#n:208"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:209"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Zorder.html#m:209"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'>'_x"><span·class="id"·title="notation">></span></a>·0.<br/> |
654 | <br/> | 654 | <br/> |
655 | </div> | 655 | </div> |
656 | <div·class="doc"> | 656 | <div·class="doc"> |
657 | <a·id="lab | 657 | <a·id="lab366"></a><h2·class="section">Square</h2> |
658 | ·Simplification·of·square·wrt·order· | 658 | ·Simplification·of·square·wrt·order· |
659 | </div> | 659 | </div> |
660 | <div·class="code"> | 660 | <div·class="code"> |
Max diff block lines reached; 4856/23117 bytes (21.01%) of diff not shown. |
Offset 49, 15 lines modified | Offset 49, 15 lines modified | ||
49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.ZArith.BinInt.html#"><span·class="id"·title="library">BinInt</span></a>·<a·class="idref"·href="Coq.setoid_ring.Ring_theory.html#"><span·class="id"·title="library">Ring_theory</span></a>.<br/> | 49 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.ZArith.BinInt.html#"><span·class="id"·title="library">BinInt</span></a>·<a·class="idref"·href="Coq.setoid_ring.Ring_theory.html#"><span·class="id"·title="library">Ring_theory</span></a>.<br/> |
50 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">Z_scope</span>.<br/> | 50 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">Z_scope</span>.<br/> |
51 | <br/> | 51 | <br/> |
52 | </div> | 52 | </div> |
53 | <div·class="doc"> | 53 | <div·class="doc"> |
54 | <a·id="lab | 54 | <a·id="lab369"></a><h1·class="section">Power·functions·over·<span·class="inlinecode"><span·class="id"·title="var">Z</span></span></h1> |
55 | <div·class="paragraph">·</div> | 55 | <div·class="paragraph">·</div> |
56 | ·Nota·:·this·file·is·mostly·deprecated.·The·definition·of·<span·class="inlinecode"><span·class="id"·title="var">Z.pow</span></span> | 56 | ·Nota·:·this·file·is·mostly·deprecated.·The·definition·of·<span·class="inlinecode"><span·class="id"·title="var">Z.pow</span></span> |
57 | ····and·its·usual·properties·are·now·provided·by·module·<span·class="inlinecode"><span·class="id"·title="var">BinInt.Z</span></span>.· | 57 | ····and·its·usual·properties·are·now·provided·by·module·<span·class="inlinecode"><span·class="id"·title="var">BinInt.Z</span></span>.· |
58 | </div> | 58 | </div> |
59 | <div·class="code"> | 59 | <div·class="code"> |
Offset 128, 15 lines modified | Offset 128, 15 lines modified | ||
128 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zpower2_Psize"·class="idref"·href="#Zpower2_Psize"><span·class="id"·title="lemma">Zpower2_Psize</span></a>·<a·id="n:25"·class="idref"·href="#n:25"><span·class="id"·title="binder">n</span></a>·<a·id="p:26"·class="idref"·href="#p:26"><span·class="id"·title="binder">p</span></a>·:<br/> | 128 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zpower2_Psize"·class="idref"·href="#Zpower2_Psize"><span·class="id"·title="lemma">Zpower2_Psize</span></a>·<a·id="n:25"·class="idref"·href="#n:25"><span·class="id"·title="binder">n</span></a>·<a·id="p:26"·class="idref"·href="#p:26"><span·class="id"·title="binder">p</span></a>·:<br/> |
129 | <a·class="idref"·href="Coq.Numbers.BinNums.html#Zpos"><span·class="id"·title="constructor">Zpos</span></a>·<a·class="idref"·href="Coq.ZArith.Zpow_facts.html#p:26"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·2<a·class="idref"·href="Coq.ZArith.BinInt.html#14ef112b66e341f773bd1e9d05816f43"><span·class="id"·title="notation">^(</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#Z.of_nat"><span·class="id"·title="definition">Z.of_nat</span></a>·<a·class="idref"·href="Coq.ZArith.Zpow_facts.html#n:25"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#14ef112b66e341f773bd1e9d05816f43"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·(<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.size_nat"><span·class="id"·title="definition">Pos.size_nat</span></a>·<a·class="idref"·href="Coq.ZArith.Zpow_facts.html#p:26"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Peano.html#cb53cf0ee22c036a03b4a9281c68b5a3"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.ZArith.Zpow_facts.html#n:25"><span·class="id"·title="variable">n</span></a>)%<span·class="id"·title="var">nat</span>.<br/> | 129 | <a·class="idref"·href="Coq.Numbers.BinNums.html#Zpos"><span·class="id"·title="constructor">Zpos</span></a>·<a·class="idref"·href="Coq.ZArith.Zpow_facts.html#p:26"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·2<a·class="idref"·href="Coq.ZArith.BinInt.html#14ef112b66e341f773bd1e9d05816f43"><span·class="id"·title="notation">^(</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#Z.of_nat"><span·class="id"·title="definition">Z.of_nat</span></a>·<a·class="idref"·href="Coq.ZArith.Zpow_facts.html#n:25"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#14ef112b66e341f773bd1e9d05816f43"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'<->'_x"><span·class="id"·title="notation"><-></span></a>·(<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.size_nat"><span·class="id"·title="definition">Pos.size_nat</span></a>·<a·class="idref"·href="Coq.ZArith.Zpow_facts.html#p:26"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Peano.html#cb53cf0ee22c036a03b4a9281c68b5a3"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.ZArith.Zpow_facts.html#n:25"><span·class="id"·title="variable">n</span></a>)%<span·class="id"·title="var">nat</span>.<br/> |
130 | <br/> | 130 | <br/> |
131 | </div> | 131 | </div> |
132 | <div·class="doc"> | 132 | <div·class="doc"> |
133 | <a·id="lab | 133 | <a·id="lab430"></a><h1·class="section">Z.pow·and·modulo</h1> |
134 | </div> | 134 | </div> |
135 | <div·class="code"> | 135 | <div·class="code"> |
136 | <br/> | 136 | <br/> |
137 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Zpower_mod"·class="idref"·href="#Zpower_mod"><span·class="id"·title="lemma">Zpower_mod</span></a>·<a·id="p:27"·class="idref"·href="#p:27"><span·class="id"·title="binder">p</span></a>·<a·id="q:28"·class="idref"·href="#q:28"><span·class="id"·title="binder">q</span></a>·<a·id="n:29"·class="idref"·href="#n:29"><span·class="id"·title="binder">n</span></a>·:<br/> | 137 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Zpower_mod"·class="idref"·href="#Zpower_mod"><span·class="id"·title="lemma">Zpower_mod</span></a>·<a·id="p:27"·class="idref"·href="#p:27"><span·class="id"·title="binder">p</span></a>·<a·id="q:28"·class="idref"·href="#q:28"><span·class="id"·title="binder">q</span></a>·<a·id="n:29"·class="idref"·href="#n:29"><span·class="id"·title="binder">n</span></a>·:<br/> |
138 | 0·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.Zpow_facts.html#n:29"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zpow_facts.html#p:27"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#14ef112b66e341f773bd1e9d05816f43"><span·class="id"·title="notation">^</span></a><a·class="idref"·href="Coq.ZArith.Zpow_facts.html#q:28"><span·class="id"·title="variable">q</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.ZArith.Zpow_facts.html#n:29"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#14ef112b66e341f773bd1e9d05816f43"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zpow_facts.html#p:27"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.ZArith.Zpow_facts.html#n:29"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#14ef112b66e341f773bd1e9d05816f43"><span·class="id"·title="notation">)^</span></a><a·class="idref"·href="Coq.ZArith.Zpow_facts.html#q:28"><span·class="id"·title="variable">q</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.ZArith.Zpow_facts.html#n:29"><span·class="id"·title="variable">n</span></a>.<br/> | 138 | 0·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.Zpow_facts.html#n:29"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zpow_facts.html#p:27"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#14ef112b66e341f773bd1e9d05816f43"><span·class="id"·title="notation">^</span></a><a·class="idref"·href="Coq.ZArith.Zpow_facts.html#q:28"><span·class="id"·title="variable">q</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.ZArith.Zpow_facts.html#n:29"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#14ef112b66e341f773bd1e9d05816f43"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zpow_facts.html#p:27"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.ZArith.Zpow_facts.html#n:29"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#14ef112b66e341f773bd1e9d05816f43"><span·class="id"·title="notation">)^</span></a><a·class="idref"·href="Coq.ZArith.Zpow_facts.html#q:28"><span·class="id"·title="variable">q</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'mod'_x"><span·class="id"·title="notation">mod</span></a>·<a·class="idref"·href="Coq.ZArith.Zpow_facts.html#n:29"><span·class="id"·title="variable">n</span></a>.<br/> |
Offset 204, 15 lines modified | Offset 204, 15 lines modified | ||
204 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Zdivide_power_2"·class="idref"·href="#Zdivide_power_2"><span·class="id"·title="lemma">Zdivide_power_2</span></a>·<a·id="x:61"·class="idref"·href="#x:61"><span·class="id"·title="binder">x</span></a>·<a·id="p:62"·class="idref"·href="#p:62"><span·class="id"·title="binder">p</span></a>·<a·id="n:63"·class="idref"·href="#n:63"><span·class="id"·title="binder">n</span></a>·:<br/> | 204 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Zdivide_power_2"·class="idref"·href="#Zdivide_power_2"><span·class="id"·title="lemma">Zdivide_power_2</span></a>·<a·id="x:61"·class="idref"·href="#x:61"><span·class="id"·title="binder">x</span></a>·<a·id="p:62"·class="idref"·href="#p:62"><span·class="id"·title="binder">p</span></a>·<a·id="n:63"·class="idref"·href="#n:63"><span·class="id"·title="binder">n</span></a>·:<br/> |
205 | 0·<a·class="idref"·href="Coq.ZArith.BinInt.html#306329b0eca7a2b86c198702f594ad8e"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.ZArith.Zpow_facts.html#n:63"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0·<a·class="idref"·href="Coq.ZArith.BinInt.html#306329b0eca7a2b86c198702f594ad8e"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.ZArith.Zpow_facts.html#x:61"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#prime"><span·class="id"·title="inductive">prime</span></a>·<a·class="idref"·href="Coq.ZArith.Zpow_facts.html#p:62"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#5cd21895b4d5f127eb2c0acb80e8d6fc"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zpow_facts.html#x:61"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#5cd21895b4d5f127eb2c0acb80e8d6fc"><span·class="id"·title="notation">|</span></a>·<a·class="idref"·href="Coq.ZArith.Zpow_facts.html#p:62"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#14ef112b66e341f773bd1e9d05816f43"><span·class="id"·title="notation">^</span></a><a·class="idref"·href="Coq.ZArith.Zpow_facts.html#n:63"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#5cd21895b4d5f127eb2c0acb80e8d6fc"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">exists</span></a>·<a·id="m:64"·class="idref"·href="#m:64"><span·class="id"·title="binder">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.ZArith.Zpow_facts.html#x:61"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Zpow_facts.html#p:62"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#14ef112b66e341f773bd1e9d05816f43"><span·class="id"·title="notation">^</span></a><a·class="idref"·href="Coq.ZArith.Zpow_facts.html#m:64"><span·class="id"·title="variable">m</span></a>.<br/> | 205 | 0·<a·class="idref"·href="Coq.ZArith.BinInt.html#306329b0eca7a2b86c198702f594ad8e"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.ZArith.Zpow_facts.html#n:63"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·0·<a·class="idref"·href="Coq.ZArith.BinInt.html#306329b0eca7a2b86c198702f594ad8e"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.ZArith.Zpow_facts.html#x:61"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Znumtheory.html#prime"><span·class="id"·title="inductive">prime</span></a>·<a·class="idref"·href="Coq.ZArith.Zpow_facts.html#p:62"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#5cd21895b4d5f127eb2c0acb80e8d6fc"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zpow_facts.html#x:61"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#5cd21895b4d5f127eb2c0acb80e8d6fc"><span·class="id"·title="notation">|</span></a>·<a·class="idref"·href="Coq.ZArith.Zpow_facts.html#p:62"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#14ef112b66e341f773bd1e9d05816f43"><span·class="id"·title="notation">^</span></a><a·class="idref"·href="Coq.ZArith.Zpow_facts.html#n:63"><span·class="id"·title="variable">n</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#5cd21895b4d5f127eb2c0acb80e8d6fc"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">exists</span></a>·<a·id="m:64"·class="idref"·href="#m:64"><span·class="id"·title="binder">m</span></a><a·class="idref"·href="Coq.Init.Logic.html#a883bdd010993579f99d60b3775bcf54"><span·class="id"·title="notation">,</span></a>·<a·class="idref"·href="Coq.ZArith.Zpow_facts.html#x:61"><span·class="id"·title="variable">x</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Zpow_facts.html#p:62"><span·class="id"·title="variable">p</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#14ef112b66e341f773bd1e9d05816f43"><span·class="id"·title="notation">^</span></a><a·class="idref"·href="Coq.ZArith.Zpow_facts.html#m:64"><span·class="id"·title="variable">m</span></a>.<br/> |
206 | <br/> | 206 | <br/> |
207 | </div> | 207 | </div> |
208 | <div·class="doc"> | 208 | <div·class="doc"> |
209 | <a·id="lab | 209 | <a·id="lab431"></a><h1·class="section">Z.square:·a·direct·definition·of·<span·class="inlinecode"><span·class="id"·title="var">z</span>^2</span></h1> |
210 | </div> | 210 | </div> |
211 | <div·class="code"> | 211 | <div·class="code"> |
212 | <br/> | 212 | <br/> |
213 | <span·class="id"·title="keyword">Notation</span>·<a·id="Psquare_correct"·class="idref"·href="#Psquare_correct"><span·class="id"·title="abbreviation">Psquare_correct</span></a>·:=·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.square_spec"><span·class="id"·title="lemma">Pos.square_spec</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> | 213 | <span·class="id"·title="keyword">Notation</span>·<a·id="Psquare_correct"·class="idref"·href="#Psquare_correct"><span·class="id"·title="abbreviation">Psquare_correct</span></a>·:=·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.square_spec"><span·class="id"·title="lemma">Pos.square_spec</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> |
214 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zsquare_correct"·class="idref"·href="#Zsquare_correct"><span·class="id"·title="abbreviation">Zsquare_correct</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.square_spec"><span·class="id"·title="lemma">Z.square_spec</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> | 214 | <span·class="id"·title="keyword">Notation</span>·<a·id="Zsquare_correct"·class="idref"·href="#Zsquare_correct"><span·class="id"·title="abbreviation">Zsquare_correct</span></a>·:=·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.square_spec"><span·class="id"·title="lemma">Z.square_spec</span></a>·(<span·class="id"·title="var">only</span>·<span·class="id"·title="var">parsing</span>).<br/> |
Offset 50, 15 lines modified | Offset 50, 15 lines modified | ||
50 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.ZArith.Zpow_def.html#"><span·class="id"·title="library">Zpow_def</span></a>.<br/> | 50 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.ZArith.Zpow_def.html#"><span·class="id"·title="library">Zpow_def</span></a>.<br/> |
51 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">Z_scope</span>.<br/> | 51 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">Z_scope</span>.<br/> |
52 | <br/> | 52 | <br/> |
53 | </div> | 53 | </div> |
54 | <div·class="doc"> | 54 | <div·class="doc"> |
55 | <a·id="lab | 55 | <a·id="lab488"></a><h1·class="section">Power·functions·over·<span·class="inlinecode"><span·class="id"·title="var">Z</span></span></h1> |
56 | <div·class="paragraph">·</div> | 56 | <div·class="paragraph">·</div> |
57 | ·Nota·:·this·file·is·mostly·deprecated.·The·definition·of·<span·class="inlinecode"><span·class="id"·title="var">Z.pow</span></span> | 57 | ·Nota·:·this·file·is·mostly·deprecated.·The·definition·of·<span·class="inlinecode"><span·class="id"·title="var">Z.pow</span></span> |
58 | ····and·its·usual·properties·are·now·provided·by·module·<span·class="inlinecode"><span·class="id"·title="var">BinInt.Z</span></span>. | 58 | ····and·its·usual·properties·are·now·provided·by·module·<span·class="inlinecode"><span·class="id"·title="var">BinInt.Z</span></span>. |
59 | ····Powers·of·2·are·also·available·there·(see·<span·class="inlinecode"><span·class="id"·title="var">Z.shiftl</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">Z.shiftr</span></span>). | 59 | ····Powers·of·2·are·also·available·there·(see·<span·class="inlinecode"><span·class="id"·title="var">Z.shiftl</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">Z.shiftr</span></span>). |
60 | ····Only·remain·here: | 60 | ····Only·remain·here: |
Offset 150, 15 lines modified | Offset 150, 15 lines modified | ||
150 | <br/> | 150 | <br/> |
151 | <span·class="id"·title="keyword">Section</span>·<a·id="Powers_of_2"·class="idref"·href="#Powers_of_2"><span·class="id"·title="section">Powers_of_2</span></a>.<br/> | 151 | <span·class="id"·title="keyword">Section</span>·<a·id="Powers_of_2"·class="idref"·href="#Powers_of_2"><span·class="id"·title="section">Powers_of_2</span></a>.<br/> |
152 | <br/> | 152 | <br/> |
153 | </div> | 153 | </div> |
154 | <div·class="doc"> | 154 | <div·class="doc"> |
155 | <a·id="lab | 155 | <a·id="lab489"></a><h1·class="section">Powers·of·2</h1> |
156 | <div·class="paragraph">·</div> | 156 | <div·class="paragraph">·</div> |
157 | ·For·the·powers·of·two,·that·will·be·widely·used,·a·more·direct | 157 | ·For·the·powers·of·two,·that·will·be·widely·used,·a·more·direct |
158 | ······calculus·is·possible.·<span·class="inlinecode"><span·class="id"·title="var">shift</span></span>·<span·class="inlinecode"><span·class="id"·title="var">n</span></span>·<span·class="inlinecode"><span·class="id"·title="var">m</span></span>·computes·<span·class="inlinecode">2^<span·class="id"·title="var">n</span></span>·<span·class="inlinecode">*</span>·<span·class="inlinecode"><span·class="id"·title="var">m</span></span>,·i.e. | 158 | ······calculus·is·possible.·<span·class="inlinecode"><span·class="id"·title="var">shift</span></span>·<span·class="inlinecode"><span·class="id"·title="var">n</span></span>·<span·class="inlinecode"><span·class="id"·title="var">m</span></span>·computes·<span·class="inlinecode">2^<span·class="id"·title="var">n</span></span>·<span·class="inlinecode">*</span>·<span·class="inlinecode"><span·class="id"·title="var">m</span></span>,·i.e. |
159 | ······<span·class="inlinecode"><span·class="id"·title="var">m</span></span>·shifted·by·<span·class="inlinecode"><span·class="id"·title="var">n</span></span>·positions· | 159 | ······<span·class="inlinecode"><span·class="id"·title="var">m</span></span>·shifted·by·<span·class="inlinecode"><span·class="id"·title="var">n</span></span>·positions· |
160 | </div> | 160 | </div> |
Offset 279, 15 lines modified | Offset 279, 15 lines modified | ||
279 | <br/> | 279 | <br/> |
280 | <span·class="id"·title="keyword">Section</span>·<a·id="power_div_with_rest"·class="idref"·href="#power_div_with_rest"><span·class="id"·title="section">power_div_with_rest</span></a>.<br/> | 280 | <span·class="id"·title="keyword">Section</span>·<a·id="power_div_with_rest"·class="idref"·href="#power_div_with_rest"><span·class="id"·title="section">power_div_with_rest</span></a>.<br/> |
281 | <br/> | 281 | <br/> |
282 | </div> | 282 | </div> |
283 | <div·class="doc"> | 283 | <div·class="doc"> |
284 | <a·id="lab | 284 | <a·id="lab490"></a><h1·class="section">Division·by·a·power·of·two.</h1> |
285 | <div·class="paragraph">·</div> | 285 | <div·class="paragraph">·</div> |
286 | ·To·<span·class="inlinecode"><span·class="id"·title="var">x</span>:<span·class="id"·title="var">Z</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">p</span>:<span·class="id"·title="var">positive</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">q</span></span>,<span·class="inlinecode"><span·class="id"·title="var">r</span></span>·are·associated·such·that | 286 | ·To·<span·class="inlinecode"><span·class="id"·title="var">x</span>:<span·class="id"·title="var">Z</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">p</span>:<span·class="id"·title="var">positive</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">q</span></span>,<span·class="inlinecode"><span·class="id"·title="var">r</span></span>·are·associated·such·that |
287 | ······<span·class="inlinecode"><span·class="id"·title="var">x</span></span>·<span·class="inlinecode">=</span>·<span·class="inlinecode">2^<span·class="id"·title="var">p.q</span></span>·<span·class="inlinecode">+</span>·<span·class="inlinecode"><span·class="id"·title="var">r</span></span>·and·<span·class="inlinecode">0</span>·<span·class="inlinecode"><=</span>·<span·class="inlinecode"><span·class="id"·title="var">r</span></span>·<span·class="inlinecode"><</span>·<span·class="inlinecode">2^<span·class="id"·title="var">p</span></span>· | 287 | ······<span·class="inlinecode"><span·class="id"·title="var">x</span></span>·<span·class="inlinecode">=</span>·<span·class="inlinecode">2^<span·class="id"·title="var">p.q</span></span>·<span·class="inlinecode">+</span>·<span·class="inlinecode"><span·class="id"·title="var">r</span></span>·and·<span·class="inlinecode">0</span>·<span·class="inlinecode"><=</span>·<span·class="inlinecode"><span·class="id"·title="var">r</span></span>·<span·class="inlinecode"><</span>·<span·class="inlinecode">2^<span·class="id"·title="var">p</span></span>· |
288 | <div·class="paragraph">·</div> | 288 | <div·class="paragraph">·</div> |
Offset 149, 15 lines modified | Offset 149, 15 lines modified | ||
149 | <br/> | 149 | <br/> |
150 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Z_rem_mult"·class="idref"·href="#Z_rem_mult"><span·class="id"·title="lemma">Z_rem_mult</span></a>·<a·id="a:6"·class="idref"·href="#a:6"><span·class="id"·title="binder">a</span></a>·<a·id="b:7"·class="idref"·href="#b:7"><span·class="id"·title="binder">b</span></a>·:·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.rem"><span·class="id"·title="definition">Z.rem</span></a>·(<a·class="idref"·href="Coq.ZArith.Zquot.html#a:6"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a><a·class="idref"·href="Coq.ZArith.Zquot.html#b:7"><span·class="id"·title="variable">b</span></a>)·<a·class="idref"·href="Coq.ZArith.Zquot.html#b:7"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·0.<br/> | 150 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Z_rem_mult"·class="idref"·href="#Z_rem_mult"><span·class="id"·title="lemma">Z_rem_mult</span></a>·<a·id="a:6"·class="idref"·href="#a:6"><span·class="id"·title="binder">a</span></a>·<a·id="b:7"·class="idref"·href="#b:7"><span·class="id"·title="binder">b</span></a>·:·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.rem"><span·class="id"·title="definition">Z.rem</span></a>·(<a·class="idref"·href="Coq.ZArith.Zquot.html#a:6"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a><a·class="idref"·href="Coq.ZArith.Zquot.html#b:7"><span·class="id"·title="variable">b</span></a>)·<a·class="idref"·href="Coq.ZArith.Zquot.html#b:7"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·0.<br/> |
151 | · | 151 | · |
152 | <br/> | 152 | <br/> |
153 | </div> | 153 | </div> |
154 | <div·class="doc"> | 154 | <div·class="doc"> |
155 | <a·id="lab | 155 | <a·id="lab421"></a><h1·class="section">Division·and·Opposite</h1> |
156 | </div> | 156 | </div> |
157 | <div·class="code"> | 157 | <div·class="code"> |
158 | <br/> | 158 | <br/> |
159 | <br/> | 159 | <br/> |
Offset 228, 15 lines modified | Offset 228, 15 lines modified | ||
228 | <br/> | 228 | <br/> |
229 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Zrem_lt_neg_neg"·class="idref"·href="#Zrem_lt_neg_neg"><span·class="id"·title="lemma">Zrem_lt_neg_neg</span></a>·<a·id="a:34"·class="idref"·href="#a:34"><span·class="id"·title="binder">a</span></a>·<a·id="b:35"·class="idref"·href="#b:35"><span·class="id"·title="binder">b</span></a>·:·<a·class="idref"·href="Coq.ZArith.Zquot.html#a:34"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#306329b0eca7a2b86c198702f594ad8e"><span·class="id"·title="notation"><=</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#b:35"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#b:35"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#3e2cc3b784fd1c5341d23eca6b98405f"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.rem"><span·class="id"·title="definition">Z.rem</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#a:34"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#b:35"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#3e2cc3b784fd1c5341d23eca6b98405f"><span·class="id"·title="notation"><=</span></a>·0.<br/> | 229 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Zrem_lt_neg_neg"·class="idref"·href="#Zrem_lt_neg_neg"><span·class="id"·title="lemma">Zrem_lt_neg_neg</span></a>·<a·id="a:34"·class="idref"·href="#a:34"><span·class="id"·title="binder">a</span></a>·<a·id="b:35"·class="idref"·href="#b:35"><span·class="id"·title="binder">b</span></a>·:·<a·class="idref"·href="Coq.ZArith.Zquot.html#a:34"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#306329b0eca7a2b86c198702f594ad8e"><span·class="id"·title="notation"><=</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#b:35"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:x_'<'_x"><span·class="id"·title="notation"><</span></a>0·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#b:35"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#3e2cc3b784fd1c5341d23eca6b98405f"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.rem"><span·class="id"·title="definition">Z.rem</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#a:34"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#b:35"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#3e2cc3b784fd1c5341d23eca6b98405f"><span·class="id"·title="notation"><=</span></a>·0.<br/> |
230 | <br/> | 230 | <br/> |
231 | </div> | 231 | </div> |
232 | <div·class="doc"> | 232 | <div·class="doc"> |
233 | <a·id="lab | 233 | <a·id="lab422"></a><h1·class="section">Unicity·results</h1> |
234 | </div> | 234 | </div> |
235 | <div·class="code"> | 235 | <div·class="code"> |
236 | <br/> | 236 | <br/> |
237 | <span·class="id"·title="keyword">Definition</span>·<a·id="Remainder"·class="idref"·href="#Remainder"><span·class="id"·title="definition">Remainder</span></a>·<a·id="a:36"·class="idref"·href="#a:36"><span·class="id"·title="binder">a</span></a>·<a·id="b:37"·class="idref"·href="#b:37"><span·class="id"·title="binder">b</span></a>·<a·id="r:38"·class="idref"·href="#r:38"><span·class="id"·title="binder">r</span></a>·:=<br/> | 237 | <span·class="id"·title="keyword">Definition</span>·<a·id="Remainder"·class="idref"·href="#Remainder"><span·class="id"·title="definition">Remainder</span></a>·<a·id="a:36"·class="idref"·href="#a:36"><span·class="id"·title="binder">a</span></a>·<a·id="b:37"·class="idref"·href="#b:37"><span·class="id"·title="binder">b</span></a>·<a·id="r:38"·class="idref"·href="#r:38"><span·class="id"·title="binder">r</span></a>·:=<br/> |
238 | <a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">(</span></a>0·<a·class="idref"·href="Coq.ZArith.BinInt.html#306329b0eca7a2b86c198702f594ad8e"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#a:36"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·0·<a·class="idref"·href="Coq.ZArith.BinInt.html#bdb3edde5f841a282ce8fc1b00e3d211"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#r:38"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#bdb3edde5f841a282ce8fc1b00e3d211"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.abs"><span·class="id"·title="definition">Z.abs</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#b:37"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zquot.html#a:36"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#306329b0eca7a2b86c198702f594ad8e"><span·class="id"·title="notation"><=</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:'-'_x"><span·class="id"·title="notation">-</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#Z.abs"><span·class="id"·title="definition">Z.abs</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#b:37"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#3e2cc3b784fd1c5341d23eca6b98405f"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#r:38"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#3e2cc3b784fd1c5341d23eca6b98405f"><span·class="id"·title="notation"><=</span></a>·0<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">)</span></a>.<br/> | 238 | <a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">(</span></a>0·<a·class="idref"·href="Coq.ZArith.BinInt.html#306329b0eca7a2b86c198702f594ad8e"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#a:36"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·0·<a·class="idref"·href="Coq.ZArith.BinInt.html#bdb3edde5f841a282ce8fc1b00e3d211"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#r:38"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#bdb3edde5f841a282ce8fc1b00e3d211"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.abs"><span·class="id"·title="definition">Z.abs</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#b:37"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">)</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">\/</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">(</span></a><a·class="idref"·href="Coq.ZArith.Zquot.html#a:36"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#306329b0eca7a2b86c198702f594ad8e"><span·class="id"·title="notation"><=</span></a>·0·<a·class="idref"·href="Coq.Init.Logic.html#ba2b0e492d2b4675a0acf3ea92aabadd"><span·class="id"·title="notation">/\</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:'-'_x"><span·class="id"·title="notation">-</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#Z.abs"><span·class="id"·title="definition">Z.abs</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#b:37"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#3e2cc3b784fd1c5341d23eca6b98405f"><span·class="id"·title="notation"><</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#r:38"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#3e2cc3b784fd1c5341d23eca6b98405f"><span·class="id"·title="notation"><=</span></a>·0<a·class="idref"·href="Coq.Init.Logic.html#f031fe1957c4a4a8e217aa46af2b4e25"><span·class="id"·title="notation">)</span></a>.<br/> |
Offset 261, 15 lines modified | Offset 261, 15 lines modified | ||
261 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Zrem_unique_full"·class="idref"·href="#Zrem_unique_full"><span·class="id"·title="lemma">Zrem_unique_full</span></a>·<a·id="a:53"·class="idref"·href="#a:53"><span·class="id"·title="binder">a</span></a>·<a·id="b:54"·class="idref"·href="#b:54"><span·class="id"·title="binder">b</span></a>·<a·id="q:55"·class="idref"·href="#q:55"><span·class="id"·title="binder">q</span></a>·<a·id="r:56"·class="idref"·href="#r:56"><span·class="id"·title="binder">r</span></a>·:<br/> | 261 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Zrem_unique_full"·class="idref"·href="#Zrem_unique_full"><span·class="id"·title="lemma">Zrem_unique_full</span></a>·<a·id="a:53"·class="idref"·href="#a:53"><span·class="id"·title="binder">a</span></a>·<a·id="b:54"·class="idref"·href="#b:54"><span·class="id"·title="binder">b</span></a>·<a·id="q:55"·class="idref"·href="#q:55"><span·class="id"·title="binder">q</span></a>·<a·id="r:56"·class="idref"·href="#r:56"><span·class="id"·title="binder">r</span></a>·:<br/> |
262 | <a·class="idref"·href="Coq.ZArith.Zquot.html#Remainder"><span·class="id"·title="definition">Remainder</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#a:53"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#b:54"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#r:56"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#a:53"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#b:54"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a><a·class="idref"·href="Coq.ZArith.Zquot.html#q:55"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#r:56"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#r:56"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.rem"><span·class="id"·title="definition">Z.rem</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#a:53"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#b:54"><span·class="id"·title="variable">b</span></a>.<br/> | 262 | <a·class="idref"·href="Coq.ZArith.Zquot.html#Remainder"><span·class="id"·title="definition">Remainder</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#a:53"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#b:54"><span·class="id"·title="variable">b</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#r:56"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#a:53"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#b:54"><span·class="id"·title="variable">b</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a><a·class="idref"·href="Coq.ZArith.Zquot.html#q:55"><span·class="id"·title="variable">q</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#r:56"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#r:56"><span·class="id"·title="variable">r</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.rem"><span·class="id"·title="definition">Z.rem</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#a:53"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#b:54"><span·class="id"·title="variable">b</span></a>.<br/> |
263 | <br/> | 263 | <br/> |
264 | </div> | 264 | </div> |
265 | <div·class="doc"> | 265 | <div·class="doc"> |
266 | <a·id="lab | 266 | <a·id="lab423"></a><h1·class="section">Order·results·about·Zrem·and·Zquot</h1> |
267 | </div> | 267 | </div> |
268 | <div·class="code"> | 268 | <div·class="code"> |
269 | <br/> | 269 | <br/> |
270 | <br/> | 270 | <br/> |
Offset 359, 15 lines modified | Offset 359, 15 lines modified | ||
359 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Zquot_sgn"·class="idref"·href="#Zquot_sgn"><span·class="id"·title="lemma">Zquot_sgn</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:81"·class="idref"·href="#a:81"><span·class="id"·title="binder">a</span></a>·<a·id="b:82"·class="idref"·href="#b:82"><span·class="id"·title="binder">b</span></a>,<br/> | 359 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Zquot_sgn"·class="idref"·href="#Zquot_sgn"><span·class="id"·title="lemma">Zquot_sgn</span></a>:·<span·class="id"·title="keyword">forall</span>·<a·id="a:81"·class="idref"·href="#a:81"><span·class="id"·title="binder">a</span></a>·<a·id="b:82"·class="idref"·href="#b:82"><span·class="id"·title="binder">b</span></a>,<br/> |
360 | 0·<a·class="idref"·href="Coq.ZArith.BinInt.html#306329b0eca7a2b86c198702f594ad8e"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.sgn"><span·class="id"·title="definition">Z.sgn</span></a>·(<a·class="idref"·href="Coq.ZArith.Zquot.html#a:81"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#576dd7a0f6e53f28cb92f8a06f69a45e"><span·class="id"·title="notation">÷</span></a><a·class="idref"·href="Coq.ZArith.Zquot.html#b:82"><span·class="id"·title="variable">b</span></a>)·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.sgn"><span·class="id"·title="definition">Z.sgn</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#a:81"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.sgn"><span·class="id"·title="definition">Z.sgn</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#b:82"><span·class="id"·title="variable">b</span></a>.<br/> | 360 | 0·<a·class="idref"·href="Coq.ZArith.BinInt.html#306329b0eca7a2b86c198702f594ad8e"><span·class="id"·title="notation"><=</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.sgn"><span·class="id"·title="definition">Z.sgn</span></a>·(<a·class="idref"·href="Coq.ZArith.Zquot.html#a:81"><span·class="id"·title="variable">a</span></a><a·class="idref"·href="Coq.ZArith.BinInt.html#576dd7a0f6e53f28cb92f8a06f69a45e"><span·class="id"·title="notation">÷</span></a><a·class="idref"·href="Coq.ZArith.Zquot.html#b:82"><span·class="id"·title="variable">b</span></a>)·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.sgn"><span·class="id"·title="definition">Z.sgn</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#a:81"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#d3ea1afb7d81263dc23c4eb0da2a3c4e"><span·class="id"·title="notation">*</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.sgn"><span·class="id"·title="definition">Z.sgn</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#b:82"><span·class="id"·title="variable">b</span></a>.<br/> |
361 | <br/> | 361 | <br/> |
362 | </div> | 362 | </div> |
363 | <div·class="doc"> | 363 | <div·class="doc"> |
364 | <a·id="lab | 364 | <a·id="lab424"></a><h1·class="section">Relations·between·usual·operations·and·Z.modulo·and·Z.div</h1> |
365 | <div·class="paragraph">·</div> | 365 | <div·class="paragraph">·</div> |
366 | ·First,·a·result·that·used·to·be·always·valid·with·Zdiv, | 366 | ·First,·a·result·that·used·to·be·always·valid·with·Zdiv, |
367 | ····but·must·be·restricted·here. | 367 | ····but·must·be·restricted·here. |
368 | ····For·instance,·now·(9+(-5)*2)·rem·2·=·-1·<>·1·=·9·rem·2· | 368 | ····For·instance,·now·(9+(-5)*2)·rem·2·=·-1·<>·1·=·9·rem·2· |
369 | </div> | 369 | </div> |
Offset 523, 15 lines modified | Offset 523, 15 lines modified | ||
523 | <br/> | 523 | <br/> |
524 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zodd_rem"·class="idref"·href="#Zodd_rem"><span·class="id"·title="lemma">Zodd_rem</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="a:137"·class="idref"·href="#a:137"><span·class="id"·title="binder">a</span></a>,·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.odd"><span·class="id"·title="definition">Z.odd</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#a:137"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#negb"><span·class="id"·title="definition">negb</span></a>·(<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.eqb"><span·class="id"·title="definition">Z.eqb</span></a>·(<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.rem"><span·class="id"·title="definition">Z.rem</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#a:137"><span·class="id"·title="variable">a</span></a>·2)·0).<br/> | 524 | <span·class="id"·title="keyword">Lemma</span>·<a·id="Zodd_rem"·class="idref"·href="#Zodd_rem"><span·class="id"·title="lemma">Zodd_rem</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="a:137"·class="idref"·href="#a:137"><span·class="id"·title="binder">a</span></a>,·<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.odd"><span·class="id"·title="definition">Z.odd</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#a:137"><span·class="id"·title="variable">a</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#6cd0f7b28b6092304087c7049437bb1a"><span·class="id"·title="notation">=</span></a>·<a·class="idref"·href="Coq.Init.Datatypes.html#negb"><span·class="id"·title="definition">negb</span></a>·(<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.eqb"><span·class="id"·title="definition">Z.eqb</span></a>·(<a·class="idref"·href="Coq.ZArith.BinInt.html#Z.rem"><span·class="id"·title="definition">Z.rem</span></a>·<a·class="idref"·href="Coq.ZArith.Zquot.html#a:137"><span·class="id"·title="variable">a</span></a>·2)·0).<br/> |
525 | <br/> | 525 | <br/> |
526 | </div> | 526 | </div> |
527 | <div·class="doc"> | 527 | <div·class="doc"> |
528 | <a·id="lab | 528 | <a·id="lab425"></a><h1·class="section">Interaction·with·"historic"·Zdiv</h1> |
529 | <div·class="paragraph">·</div> | 529 | <div·class="paragraph">·</div> |
530 | ·They·agree·at·least·on·positive·numbers:· | 530 | ·They·agree·at·least·on·positive·numbers:· |
531 | </div> | 531 | </div> |
532 | <div·class="code"> | 532 | <div·class="code"> |
Offset 64, 15 lines modified | Offset 64, 15 lines modified | ||
64 | <br/> | 64 | <br/> |
65 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">Z_scope</span>.<br/> | 65 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">Z_scope</span>.<br/> |
66 | <br/> | 66 | <br/> |
67 | </div> | 67 | </div> |
68 | <div·class="doc"> | 68 | <div·class="doc"> |
69 | <a·id="lab | 69 | <a·id="lab484"></a><h1·class="section">Moving·terms·from·one·side·to·the·other·of·an·inequality</h1> |
70 | </div> | 70 | </div> |
71 | <div·class="code"> | 71 | <div·class="code"> |
72 | <br/> | 72 | <br/> |
73 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Zne_left"·class="idref"·href="#Zne_left"><span·class="id"·title="lemma">Zne_left</span></a>·<a·id="n:1"·class="idref"·href="#n:1"><span·class="id"·title="binder">n</span></a>·<a·id="m:2"·class="idref"·href="#m:2"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.ZArith.BinInt.html#Zne"><span·class="id"·title="definition">Zne</span></a>·<a·class="idref"·href="Coq.ZArith.auxiliary.html#n:1"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.auxiliary.html#m:2"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Zne"><span·class="id"·title="definition">Zne</span></a>·(<a·class="idref"·href="Coq.ZArith.auxiliary.html#n:1"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.ZArith.auxiliary.html#m:2"><span·class="id"·title="variable">m</span></a>)·0.<br/> | 73 | <span·class="id"·title="keyword">Theorem</span>·<a·id="Zne_left"·class="idref"·href="#Zne_left"><span·class="id"·title="lemma">Zne_left</span></a>·<a·id="n:1"·class="idref"·href="#n:1"><span·class="id"·title="binder">n</span></a>·<a·id="m:2"·class="idref"·href="#m:2"><span·class="id"·title="binder">m</span></a>·:·<a·class="idref"·href="Coq.ZArith.BinInt.html#Zne"><span·class="id"·title="definition">Zne</span></a>·<a·class="idref"·href="Coq.ZArith.auxiliary.html#n:1"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.auxiliary.html#m:2"><span·class="id"·title="variable">m</span></a>·<a·class="idref"·href="Coq.Init.Logic.html#::type_scope:x_'->'_x"><span·class="id"·title="notation">-></span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#Zne"><span·class="id"·title="definition">Zne</span></a>·(<a·class="idref"·href="Coq.ZArith.auxiliary.html#n:1"><span·class="id"·title="variable">n</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#46584eddd5fdb16176a10a2843177d3a"><span·class="id"·title="notation">+</span></a>·<a·class="idref"·href="Coq.ZArith.BinInt.html#::Z_scope:'-'_x"><span·class="id"·title="notation">-</span></a>·<a·class="idref"·href="Coq.ZArith.auxiliary.html#m:2"><span·class="id"·title="variable">m</span></a>)·0.<br/> |
Offset 140, 15 lines modified | Offset 140, 15 lines modified | ||
140 | <br/> | 140 | <br/> |
141 | <span·class="id"·title="keyword">Section</span>·<a·id="Definitions"·class="idref"·href="#Definitions"><span·class="id"·title="section">Definitions</span></a>.<br/> | 141 | <span·class="id"·title="keyword">Section</span>·<a·id="Definitions"·class="idref"·href="#Definitions"><span·class="id"·title="section">Definitions</span></a>.<br/> |
142 | <br/> | 142 | <br/> |
143 | </div> | 143 | </div> |
144 | <div·class="doc"> | 144 | <div·class="doc"> |
145 | <a·id="lab5 | 145 | <a·id="lab539"></a><h1·class="section">Global,·inductive·definitions.</h1> |
146 | <div·class="paragraph">·</div> | 146 | <div·class="paragraph">·</div> |
147 | ·A·Horner·polynomial·is·either·a·constant,·or·a·product·P·×·(i·+·Q),·where·i· | 147 | ·A·Horner·polynomial·is·either·a·constant,·or·a·product·P·×·(i·+·Q),·where·i· |
148 | ··is·a·variable.· | 148 | ··is·a·variable.· |
149 | </div> | 149 | </div> |
150 | <div·class="code"> | 150 | <div·class="code"> |
Offset 213, 15 lines modified | Offset 213, 15 lines modified | ||
213 | <span·class="id"·title="keyword">Program·Instance</span>·<a·id="Decidable_PosLe"·class="idref"·href="#Decidable_PosLe"><span·class="id"·title="instance">Decidable_PosLe</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="p:33"·class="idref"·href="#p:33"><span·class="id"·title="binder">p</span></a>·<a·id="q:34"·class="idref"·href="#q:34"><span·class="id"·title="binder">q</span></a>,·<a·class="idref"·href="Coq.Classes.DecidableClass.html#Decidable"><span·class="id"·title="class">Decidable</span></a>·(<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.le"><span·class="id"·title="definition">Pos.le</span></a>·<a·class="idref"·href="Coq.btauto.Algebra.html#p:33"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.btauto.Algebra.html#q:34"><span·class="id"·title="variable">q</span></a>)·:=<br/> | 213 | <span·class="id"·title="keyword">Program·Instance</span>·<a·id="Decidable_PosLe"·class="idref"·href="#Decidable_PosLe"><span·class="id"·title="instance">Decidable_PosLe</span></a>·:·<span·class="id"·title="keyword">forall</span>·<a·id="p:33"·class="idref"·href="#p:33"><span·class="id"·title="binder">p</span></a>·<a·id="q:34"·class="idref"·href="#q:34"><span·class="id"·title="binder">q</span></a>,·<a·class="idref"·href="Coq.Classes.DecidableClass.html#Decidable"><span·class="id"·title="class">Decidable</span></a>·(<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.le"><span·class="id"·title="definition">Pos.le</span></a>·<a·class="idref"·href="Coq.btauto.Algebra.html#p:33"><span·class="id"·title="variable">p</span></a>·<a·class="idref"·href="Coq.btauto.Algebra.html#q:34"><span·class="id"·title="variable">q</span></a>)·:=<br/> |
214 | {·<a·class="idref"·href="Coq.Classes.DecidableClass.html#Decidable_witness"><span·class="id"·title="method">Decidable_witness</span></a>·:=·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.leb"><span·class="id"·title="definition">Pos.leb</span></a>·<span·class="id"·title="var">p</span>·<span·class="id"·title="var">q</span>·}.<br/> | 214 | {·<a·class="idref"·href="Coq.Classes.DecidableClass.html#Decidable_witness"><span·class="id"·title="method">Decidable_witness</span></a>·:=·<a·class="idref"·href="Coq.PArith.BinPos.html#Pos.leb"><span·class="id"·title="definition">Pos.leb</span></a>·<span·class="id"·title="var">p</span>·<span·class="id"·title="var">q</span>·}.<br/> |
215 | <br/> | 215 | <br/> |
216 | </div> | 216 | </div> |
217 | <div·class="doc"> | 217 | <div·class="doc"> |
218 | <a·id="lab5 | 218 | <a·id="lab540"></a><h1·class="section">The·core·reflexive·part.</h1> |
219 | </div> | 219 | </div> |
220 | <div·class="code"> | 220 | <div·class="code"> |
221 | <br/> | 221 | <br/> |
222 | #[<span·class="id"·title="var">local</span>]<br/> | 222 | #[<span·class="id"·title="var">local</span>]<br/> |
223 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Constructors</span>·<a·class="idref"·href="Coq.btauto.Algebra.html#valid"><span·class="id"·title="inductive">valid</span></a>·:·<span·class="id"·title="var">core</span>.<br/> | 223 | <span·class="id"·title="keyword">Hint</span>·<span·class="id"·title="keyword">Constructors</span>·<a·class="idref"·href="Coq.btauto.Algebra.html#valid"><span·class="id"·title="inductive">valid</span></a>·:·<span·class="id"·title="var">core</span>.<br/> |
Offset 58, 19 lines modified | Offset 58, 19 lines modified | ||
58 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Arith.Arith.html#"><span·class="id"·title="library">Arith</span></a>.<br/> | 58 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Arith.Arith.html#"><span·class="id"·title="library">Arith</span></a>.<br/> |
59 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.extraction.ExtrHaskellNatNum.html#"><span·class="id"·title="library">ExtrHaskellNatNum</span></a>.<br/> | 59 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.extraction.ExtrHaskellNatNum.html#"><span·class="id"·title="library">ExtrHaskellNatNum</span></a>.<br/> |
60 | <br/> | 60 | <br/> |
61 | </div> | 61 | </div> |
62 | <div·class="doc"> | 62 | <div·class="doc"> |
63 | <a·id="lab | 63 | <a·id="lab297"></a><h1·class="section">Disclaimer:·trying·to·obtain·efficient·certified·programs</h1> |
64 | <a·id="lab | 64 | <a·id="lab298"></a><h1·class="section">by·extracting·<span·class="inlinecode"><span·class="id"·title="var">nat</span></span>·into·<span·class="inlinecode"><span·class="id"·title="var">Int</span></span>·is·definitively·*not*·a·good·idea.</h1> |
65 | <a·id="lab | 65 | <a·id="lab299"></a><h1·class="section">See·comments·in·<span·class="inlinecode"><span·class="id"·title="var">ExtrOcamlNatInt.v</span></span>.</h1> |
66 | · | 66 | · |
67 | </div> | 67 | </div> |
68 | <div·class="code"> | 68 | <div·class="code"> |
69 | <br/> | 69 | <br/> |
70 | <span·class="id"·title="keyword">Extract</span>·<span·class="id"·title="keyword">Inductive</span>·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·=>·"Prelude.Int"·[·"0"·"Prelude.succ"·]<br/> | 70 | <span·class="id"·title="keyword">Extract</span>·<span·class="id"·title="keyword">Inductive</span>·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·=>·"Prelude.Int"·[·"0"·"Prelude.succ"·]<br/> |
Offset 58, 19 lines modified | Offset 58, 19 lines modified | ||
58 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Arith.Arith.html#"><span·class="id"·title="library">Arith</span></a>.<br/> | 58 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.Arith.Arith.html#"><span·class="id"·title="library">Arith</span></a>.<br/> |
59 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.extraction.ExtrHaskellNatNum.html#"><span·class="id"·title="library">ExtrHaskellNatNum</span></a>.<br/> | 59 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.extraction.ExtrHaskellNatNum.html#"><span·class="id"·title="library">ExtrHaskellNatNum</span></a>.<br/> |
60 | <br/> | 60 | <br/> |
61 | </div> | 61 | </div> |
62 | <div·class="doc"> | 62 | <div·class="doc"> |
63 | <a·id="lab | 63 | <a·id="lab294"></a><h1·class="section">Disclaimer:·trying·to·obtain·efficient·certified·programs</h1> |
64 | <a·id="lab | 64 | <a·id="lab295"></a><h1·class="section">by·extracting·<span·class="inlinecode"><span·class="id"·title="var">nat</span></span>·into·<span·class="inlinecode"><span·class="id"·title="var">Integer</span></span>·isn't·necessarily·a·good·idea.</h1> |
65 | <a·id="lab | 65 | <a·id="lab296"></a><h1·class="section">See·comments·in·<span·class="inlinecode"><span·class="id"·title="var">ExtrOcamlNatInt.v</span></span>.</h1> |
66 | </div> | 66 | </div> |
67 | <div·class="code"> | 67 | <div·class="code"> |
68 | <br/> | 68 | <br/> |
69 | <span·class="id"·title="keyword">Extract</span>·<span·class="id"·title="keyword">Inductive</span>·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·=>·"Prelude.Integer"·[·"0"·"Prelude.succ"·]<br/> | 69 | <span·class="id"·title="keyword">Extract</span>·<span·class="id"·title="keyword">Inductive</span>·<a·class="idref"·href="Coq.Init.Datatypes.html#nat"><span·class="id"·title="inductive">nat</span></a>·=>·"Prelude.Integer"·[·"0"·"Prelude.succ"·]<br/> |
Offset 43, 23 lines modified | Offset 43, 23 lines modified | ||
43 | <h1·class="libtitle">Library·Coq.extraction.ExtrHaskellNatNum</h1> | 43 | <h1·class="libtitle">Library·Coq.extraction.ExtrHaskellNatNum</h1> |
44 | <div·class="code"> | 44 | <div·class="code"> |
45 | </div> | 45 | </div> |
46 | <div·class="doc"> | 46 | <div·class="doc"> |
47 | <a·id="lab3 | 47 | <a·id="lab306"></a><h1·class="section">Efficient·(but·uncertified)·extraction·of·usual·<span·class="inlinecode"><span·class="id"·title="var">nat</span></span>·functions</h1> |
48 | <a·id="lab3 | 48 | <a·id="lab307"></a><h1·class="section">into·equivalent·versions·in·Haskell's·Prelude·that·are·defined</h1> |
49 | <a·id="lab3 | 49 | <a·id="lab308"></a><h1·class="section">for·any·<span·class="inlinecode"><span·class="id"·title="var">Num</span></span>·typeclass·instances.··Useful·in·combination·with</h1> |
50 | <a·id="lab3 | 50 | <a·id="lab309"></a><h1·class="section"><span·class="inlinecode"><span·class="id"·title="keyword">Extract</span></span>·<span·class="inlinecode"><span·class="id"·title="keyword">Inductive</span></span>·<span·class="inlinecode"><span·class="id"·title="var">nat</span></span>·that·maps·<span·class="inlinecode"><span·class="id"·title="var">nat</span></span>·onto·a·Haskell·type·that</h1> |
51 | <a·id="lab3 | 51 | <a·id="lab310"></a><h1·class="section">implements·<span·class="inlinecode"><span·class="id"·title="var">Num</span></span>.</h1> |
52 | · | 52 | · |
53 | </div> | 53 | </div> |
54 | <div·class="code"> | 54 | <div·class="code"> |
55 | <br/> | 55 | <br/> |
56 | <span·class="id"·title="keyword">Require</span>·<a·class="idref"·href="Coq.extraction.Extraction.html#"><span·class="id"·title="library">Coq.extraction.Extraction</span></a>.<br/> | 56 | <span·class="id"·title="keyword">Require</span>·<a·class="idref"·href="Coq.extraction.Extraction.html#"><span·class="id"·title="library">Coq.extraction.Extraction</span></a>.<br/> |
Offset 43, 15 lines modified | Offset 43, 15 lines modified | ||
43 | <h1·class="libtitle">Library·Coq.extraction.ExtrHaskellString</h1> | 43 | <h1·class="libtitle">Library·Coq.extraction.ExtrHaskellString</h1> |
44 | <div·class="code"> | 44 | <div·class="code"> |
45 | </div> | 45 | </div> |
46 | <div·class="doc"> | 46 | <div·class="doc"> |
47 | <a·id="lab | 47 | <a·id="lab300"></a><h1·class="section">Special·handling·of·ascii·and·strings·for·extraction·to·Haskell.</h1> |
48 | · | 48 | · |
49 | </div> | 49 | </div> |
50 | <div·class="code"> | 50 | <div·class="code"> |
51 | <br/> | 51 | <br/> |
52 | <span·class="id"·title="keyword">Require</span>·<a·class="idref"·href="Coq.extraction.Extraction.html#"><span·class="id"·title="library">Coq.extraction.Extraction</span></a>.<br/> | 52 | <span·class="id"·title="keyword">Require</span>·<a·class="idref"·href="Coq.extraction.Extraction.html#"><span·class="id"·title="library">Coq.extraction.Extraction</span></a>.<br/> |
Offset 64, 24 lines modified | Offset 64, 24 lines modified | ||
64 | <br/> | 64 | <br/> |
65 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.extraction.ExtrHaskellBasic.html#"><span·class="id"·title="library">ExtrHaskellBasic</span></a>.<br/> | 65 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Export</span>·<a·class="idref"·href="Coq.extraction.ExtrHaskellBasic.html#"><span·class="id"·title="library">ExtrHaskellBasic</span></a>.<br/> |
66 | <br/> | 66 | <br/> |
67 | </div> | 67 | </div> |
68 | <div·class="doc"> | 68 | <div·class="doc"> |
69 | <a·id="lab | 69 | <a·id="lab301"></a><h1·class="section">At·the·moment,·Coq's·extraction·has·no·way·to·add·extra·import</h1> |
70 | <a·id="lab | 70 | <a·id="lab302"></a><h1·class="section">statements·to·the·extracted·Haskell·code.··You·will·have·to</h1> |
71 | <a·id="lab | 71 | <a·id="lab303"></a><h1·class="section">manually·add:</h1> |
72 | ·* | 72 | ·* |
73 | <a·id="lab | 73 | <a·id="lab304"></a><h1·class="section">import·qualified·Data.Bits</h1> |
74 | <a·id="lab | 74 | <a·id="lab305"></a><h1·class="section">import·qualified·Data.Char</h1> |
75 | · | 75 | · |
76 | </div> | 76 | </div> |
77 | <div·class="code"> | 77 | <div·class="code"> |
78 | <br/> | 78 | <br/> |
79 | <span·class="id"·title="keyword">Extract</span>·<span·class="id"·title="keyword">Inductive</span>·<a·class="idref"·href="Coq.Strings.Ascii.html#ascii"><span·class="id"·title="inductive">ascii</span></a>·=>·"Prelude.Char"<br/> | 79 | <span·class="id"·title="keyword">Extract</span>·<span·class="id"·title="keyword">Inductive</span>·<a·class="idref"·href="Coq.Strings.Ascii.html#ascii"><span·class="id"·title="inductive">ascii</span></a>·=>·"Prelude.Char"<br/> |
Offset 58, 19 lines modified | Offset 58, 19 lines modified | ||
58 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.ZArith.ZArith.html#"><span·class="id"·title="library">ZArith</span></a>.<br/> | 58 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.ZArith.ZArith.html#"><span·class="id"·title="library">ZArith</span></a>.<br/> |
59 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.extraction.ExtrHaskellZNum.html#"><span·class="id"·title="library">ExtrHaskellZNum</span></a>.<br/> | 59 | <span·class="id"·title="keyword">Require</span>·<span·class="id"·title="keyword">Import</span>·<a·class="idref"·href="Coq.extraction.ExtrHaskellZNum.html#"><span·class="id"·title="library">ExtrHaskellZNum</span></a>.<br/> |
60 | <br/> | 60 | <br/> |
61 | </div> | 61 | </div> |
62 | <div·class="doc"> | 62 | <div·class="doc"> |
63 | <a·id="lab3 | 63 | <a·id="lab311"></a><h1·class="section">Disclaimer:·trying·to·obtain·efficient·certified·programs</h1> |
64 | <a·id="lab3 | 64 | <a·id="lab312"></a><h1·class="section">by·extracting·<span·class="inlinecode"><span·class="id"·title="var">Z</span></span>·into·<span·class="inlinecode"><span·class="id"·title="var">Int</span></span>·is·definitively·*not*·a·good·idea.</h1> |
65 | <a·id="lab3 | 65 | <a·id="lab313"></a><h1·class="section">See·comments·in·<span·class="inlinecode"><span·class="id"·title="var">ExtrOcamlNatInt.v</span></span>.</h1> |
66 | · | 66 | · |
67 | </div> | 67 | </div> |
68 | <div·class="code"> | 68 | <div·class="code"> |
69 | <br/> | 69 | <br/> |
70 | <span·class="id"·title="keyword">Extract</span>·<span·class="id"·title="keyword">Inductive</span>·<a·class="idref"·href="Coq.Numbers.BinNums.html#positive"><span·class="id"·title="inductive">positive</span></a>·=>·"Prelude.Int"·[<br/> | 70 | <span·class="id"·title="keyword">Extract</span>·<span·class="id"·title="keyword">Inductive</span>·<a·class="idref"·href="Coq.Numbers.BinNums.html#positive"><span·class="id"·title="inductive">positive</span></a>·=>·"Prelude.Int"·[<br/> |
Offset 43, 23 lines modified | Offset 43, 23 lines modified | ||
43 | <h1·class="libtitle">Library·Coq.extraction.ExtrHaskellZNum</h1> | 43 | <h1·class="libtitle">Library·Coq.extraction.ExtrHaskellZNum</h1> |
44 | <div·class="code"> | 44 | <div·class="code"> |
45 | </div> | 45 | </div> |
46 | <div·class="doc"> | 46 | <div·class="doc"> |
47 | <a·id="lab3 | 47 | <a·id="lab314"></a><h1·class="section">Efficient·(but·uncertified)·extraction·of·usual·<span·class="inlinecode"><span·class="id"·title="var">Z</span></span>·functions</h1> |
48 | <a·id="lab3 | 48 | <a·id="lab315"></a><h1·class="section">into·equivalent·versions·in·Haskell's·Prelude·that·are·defined</h1> |
49 | <a·id="lab3 | 49 | <a·id="lab316"></a><h1·class="section">for·any·<span·class="inlinecode"><span·class="id"·title="var">Num</span></span>·typeclass·instances.··Useful·in·combination·with</h1> |
50 | <a·id="lab3 | 50 | <a·id="lab317"></a><h1·class="section"><span·class="inlinecode"><span·class="id"·title="keyword">Extract</span></span>·<span·class="inlinecode"><span·class="id"·title="keyword">Inductive</span></span>·<span·class="inlinecode"><span·class="id"·title="var">Z</span></span>·that·maps·<span·class="inlinecode"><span·class="id"·title="var">Z</span></span>·onto·a·Haskell·type·that</h1> |
51 | <a·id="lab3 | 51 | <a·id="lab318"></a><h1·class="section">implements·<span·class="inlinecode"><span·class="id"·title="var">Num</span></span>.</h1> |
52 | · | 52 | · |
53 | </div> | 53 | </div> |
54 | <div·class="code"> | 54 | <div·class="code"> |
55 | <br/> | 55 | <br/> |
56 | <span·class="id"·title="keyword">Require</span>·<a·class="idref"·href="Coq.extraction.Extraction.html#"><span·class="id"·title="library">Coq.extraction.Extraction</span></a>.<br/> | 56 | <span·class="id"·title="keyword">Require</span>·<a·class="idref"·href="Coq.extraction.Extraction.html#"><span·class="id"·title="library">Coq.extraction.Extraction</span></a>.<br/> |
Offset 51, 15 lines modified | Offset 51, 15 lines modified | ||
51 | <br/> | 51 | <br/> |
52 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">Z_scope</span>.<br/> | 52 | <span·class="id"·title="keyword">Local·Open</span>·<span·class="id"·title="keyword">Scope</span>·<span·class="id"·title="var">Z_scope</span>.<br/> |
53 | <br/> | 53 | <br/> |
54 | </div> | 54 | </div> |
55 | <div·class="doc"> | 55 | <div·class="doc"> |
56 | <a·id="lab | 56 | <a·id="lab538"></a><h1·class="section"><span·class="inlinecode"><span·class="id"·title="var">Z.div_mod_to_equations</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">Z.quot_rem_to_equations</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">Z.to_euclidean_division_equations</span></span>:</h1> |
57 | ·····the·tactics·for·preprocessing·<span·class="inlinecode"><span·class="id"·title="var">Z.div</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">Z.modulo</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">Z.quot</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">Z.rem</span></span>· | 57 | ·····the·tactics·for·preprocessing·<span·class="inlinecode"><span·class="id"·title="var">Z.div</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">Z.modulo</span></span>,·<span·class="inlinecode"><span·class="id"·title="var">Z.quot</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">Z.rem</span></span>· |
58 | <div·class="paragraph">·</div> | 58 | <div·class="paragraph">·</div> |
59 | ·These·tactics·use·the·complete·specification·of·<span·class="inlinecode"><span·class="id"·title="var">Z.div</span></span>·and | 59 | ·These·tactics·use·the·complete·specification·of·<span·class="inlinecode"><span·class="id"·title="var">Z.div</span></span>·and |
60 | ····<span·class="inlinecode"><span·class="id"·title="var">Z.modulo</span></span>·(<span·class="inlinecode"><span·class="id"·title="var">Z.quot</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">Z.rem</span></span>,·respectively)·to·remove·these | 60 | ····<span·class="inlinecode"><span·class="id"·title="var">Z.modulo</span></span>·(<span·class="inlinecode"><span·class="id"·title="var">Z.quot</span></span>·and·<span·class="inlinecode"><span·class="id"·title="var">Z.rem</span></span>,·respectively)·to·remove·these |
61 | ····functions·from·the·goal·without·losing·information.··The | 61 | ····functions·from·the·goal·without·losing·information.··The |