Offset 1, 9 lines modified | Offset 1, 9 lines modified | ||
1 | ·19520add216e4f81ac1f8ed69860ae43·8759968·debug·optional·coq-dbgsym_8.20.0+dfsg-1_amd64.deb | 1 | ·19520add216e4f81ac1f8ed69860ae43·8759968·debug·optional·coq-dbgsym_8.20.0+dfsg-1_amd64.deb |
2 | · | 2 | ·f584e1bb98f20ab8188c2965e4516900·76948560·math·optional·coq_8.20.0+dfsg-1_amd64.deb |
3 | ·2f0ca551ef8790d3ac6909739996f371·637876·debug·optional·coqide-dbgsym_8.20.0+dfsg-1_amd64.deb | 3 | ·2f0ca551ef8790d3ac6909739996f371·637876·debug·optional·coqide-dbgsym_8.20.0+dfsg-1_amd64.deb |
4 | ·438cdcef1b92cf49a909ffc1776542f8·1927168·math·optional·coqide_8.20.0+dfsg-1_amd64.deb | 4 | ·438cdcef1b92cf49a909ffc1776542f8·1927168·math·optional·coqide_8.20.0+dfsg-1_amd64.deb |
5 | ·5a5b46d479e6e43643935a08d9e174cd·2515372·debug·optional·libcoq-core-ocaml-dbgsym_8.20.0+dfsg-1_amd64.deb | 5 | ·5a5b46d479e6e43643935a08d9e174cd·2515372·debug·optional·libcoq-core-ocaml-dbgsym_8.20.0+dfsg-1_amd64.deb |
6 | ·bf2b6a661e24b1be9a97bbdc641c4e1a·69382728·ocaml·optional·libcoq-core-ocaml-dev_8.20.0+dfsg-1_amd64.deb | ||
7 | ·4a3cc1c0f17ee303fac2c00cff311c4d·25869688·ocaml·optional·libcoq-core-ocaml_8.20.0+dfsg-1_amd64.deb | ||
8 | · | 6 | ·a29820a7333e6047c0c8f17c3447c7a1·69383612·ocaml·optional·libcoq-core-ocaml-dev_8.20.0+dfsg-1_amd64.deb |
7 | ·93bfa0283ae546031ee668ec1606c8ec·25864980·ocaml·optional·libcoq-core-ocaml_8.20.0+dfsg-1_amd64.deb | ||
8 | ·6213bee679d8496062b17c0d7167fe05·23529224·math·optional·libcoq-stdlib_8.20.0+dfsg-1_amd64.deb |
Offset 1, 3 lines modified | Offset 1, 3 lines modified | ||
1 | -rw-r--r--···0········0········0········4·2024-11-20·09:37:25.000000·debian-binary | 1 | -rw-r--r--···0········0········0········4·2024-11-20·09:37:25.000000·debian-binary |
2 | -rw-r--r--···0········0········0·····2276·2024-11-20·09:37:25.000000·control.tar.xz | 2 | -rw-r--r--···0········0········0·····2276·2024-11-20·09:37:25.000000·control.tar.xz |
3 | -rw-r--r--···0········0········0·7694 | 3 | -rw-r--r--···0········0········0·76946092·2024-11-20·09:37:25.000000·data.tar.xz |
Offset 3, 25 lines modified | Offset 3, 25 lines modified | ||
3 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-11-20·09:37:25.000000·./usr/bin/ | 3 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-11-20·09:37:25.000000·./usr/bin/ |
4 | -rwxr-xr-x···0·root·········(0)·root·········(0)······891·2024-11-20·09:37:25.000000·./usr/bin/coq-makefile-make-both-single-timing-files | 4 | -rwxr-xr-x···0·root·········(0)·root·········(0)······891·2024-11-20·09:37:25.000000·./usr/bin/coq-makefile-make-both-single-timing-files |
5 | -rwxr-xr-x···0·root·········(0)·root·········(0)······931·2024-11-20·09:37:25.000000·./usr/bin/coq-makefile-make-both-time-files | 5 | -rwxr-xr-x···0·root·········(0)·root·········(0)······931·2024-11-20·09:37:25.000000·./usr/bin/coq-makefile-make-both-time-files |
6 | -rwxr-xr-x···0·root·········(0)·root·········(0)······697·2024-11-20·09:37:25.000000·./usr/bin/coq-makefile-make-one-time-file | 6 | -rwxr-xr-x···0·root·········(0)·root·········(0)······697·2024-11-20·09:37:25.000000·./usr/bin/coq-makefile-make-one-time-file |
7 | -rwxr-xr-x···0·root·········(0)·root·········(0)··1347848·2024-11-20·09:37:25.000000·./usr/bin/coq-tex | 7 | -rwxr-xr-x···0·root·········(0)·root·········(0)··1347848·2024-11-20·09:37:25.000000·./usr/bin/coq-tex |
8 | -rwxr-xr-x···0·root·········(0)·root·········(0)··2714824·2024-11-20·09:37:25.000000·./usr/bin/coq_makefile | 8 | -rwxr-xr-x···0·root·········(0)·root·········(0)··2714824·2024-11-20·09:37:25.000000·./usr/bin/coq_makefile |
9 | -rwxr-xr-x···0·root·········(0)·root·········(0)·20123048·2024-11-20·09:37:25.000000·./usr/bin/coqc | 9 | -rwxr-xr-x···0·root·········(0)·root·········(0)·20123048·2024-11-20·09:37:25.000000·./usr/bin/coqc |
10 | -rwxr-xr-x···0·root·········(0)·root·········(0)·503258 | 10 | -rwxr-xr-x···0·root·········(0)·root·········(0)·50325809·2024-11-20·09:37:25.000000·./usr/bin/coqc.byte |
11 | -rwxr-xr-x···0·root·········(0)·root·········(0)··6356136·2024-11-20·09:37:25.000000·./usr/bin/coqchk | 11 | -rwxr-xr-x···0·root·········(0)·root·········(0)··6356136·2024-11-20·09:37:25.000000·./usr/bin/coqchk |
12 | -rwxr-xr-x···0·root·········(0)·root·········(0)··3003720·2024-11-20·09:37:25.000000·./usr/bin/coqdep | 12 | -rwxr-xr-x···0·root·········(0)·root·········(0)··3003720·2024-11-20·09:37:25.000000·./usr/bin/coqdep |
13 | -rwxr-xr-x···0·root·········(0)·root·········(0)··2867112·2024-11-20·09:37:25.000000·./usr/bin/coqdoc | 13 | -rwxr-xr-x···0·root·········(0)·root·········(0)··2867112·2024-11-20·09:37:25.000000·./usr/bin/coqdoc |
14 | -rwxr-xr-x···0·root·········(0)·root·········(0)·50882 | 14 | -rwxr-xr-x···0·root·········(0)·root·········(0)·50882599·2024-11-20·09:37:25.000000·./usr/bin/coqidetop.byte |
15 | -rwxr-xr-x···0·root·········(0)·root·········(0)·20455272·2024-11-20·09:37:25.000000·./usr/bin/coqidetop.opt | 15 | -rwxr-xr-x···0·root·········(0)·root·········(0)·20455272·2024-11-20·09:37:25.000000·./usr/bin/coqidetop.opt |
16 | -rwxr-xr-x···0·root·········(0)·root·········(0)··6652008·2024-11-20·09:37:25.000000·./usr/bin/coqnative | 16 | -rwxr-xr-x···0·root·········(0)·root·········(0)··6652008·2024-11-20·09:37:25.000000·./usr/bin/coqnative |
17 | -rwxr-xr-x···0·root·········(0)·root·········(0)··1665992·2024-11-20·09:37:25.000000·./usr/bin/coqpp | 17 | -rwxr-xr-x···0·root·········(0)·root·········(0)··1665992·2024-11-20·09:37:25.000000·./usr/bin/coqpp |
18 | -rwxr-xr-x···0·root·········(0)·root·········(0)··2075176·2024-11-20·09:37:25.000000·./usr/bin/coqtimelog2html | 18 | -rwxr-xr-x···0·root·········(0)·root·········(0)··2075176·2024-11-20·09:37:25.000000·./usr/bin/coqtimelog2html |
19 | -rwxr-xr-x···0·root·········(0)·root·········(0)·20123016·2024-11-20·09:37:25.000000·./usr/bin/coqtop | 19 | -rwxr-xr-x···0·root·········(0)·root·········(0)·20123016·2024-11-20·09:37:25.000000·./usr/bin/coqtop |
20 | -rwxr-xr-x···0·root·········(0)·root·········(0)·737112 | 20 | -rwxr-xr-x···0·root·········(0)·root·········(0)·73711275·2024-11-20·09:37:25.000000·./usr/bin/coqtop.byte |
21 | -rwxr-xr-x···0·root·········(0)·root·········(0)··1005320·2024-11-20·09:37:25.000000·./usr/bin/coqwc | 21 | -rwxr-xr-x···0·root·········(0)·root·········(0)··1005320·2024-11-20·09:37:25.000000·./usr/bin/coqwc |
22 | -rwxr-xr-x···0·root·········(0)·root·········(0)·20123944·2024-11-20·09:37:25.000000·./usr/bin/coqworker.opt | 22 | -rwxr-xr-x···0·root·········(0)·root·········(0)·20123944·2024-11-20·09:37:25.000000·./usr/bin/coqworker.opt |
23 | -rwxr-xr-x···0·root·········(0)·root·········(0)··1534184·2024-11-20·09:37:25.000000·./usr/bin/coqworkmgr | 23 | -rwxr-xr-x···0·root·········(0)·root·········(0)··1534184·2024-11-20·09:37:25.000000·./usr/bin/coqworkmgr |
24 | -rwxr-xr-x···0·root·········(0)·root·········(0)··2568072·2024-11-20·09:37:25.000000·./usr/bin/csdpcert | 24 | -rwxr-xr-x···0·root·········(0)·root·········(0)··2568072·2024-11-20·09:37:25.000000·./usr/bin/csdpcert |
25 | -rwxr-xr-x···0·root·········(0)·root·········(0)··1561800·2024-11-20·09:37:25.000000·./usr/bin/ocamllibdep | 25 | -rwxr-xr-x···0·root·········(0)·root·········(0)··1561800·2024-11-20·09:37:25.000000·./usr/bin/ocamllibdep |
26 | -rwxr-xr-x···0·root·········(0)·root·········(0)··1804680·2024-11-20·09:37:25.000000·./usr/bin/votour | 26 | -rwxr-xr-x···0·root·········(0)·root·········(0)··1804680·2024-11-20·09:37:25.000000·./usr/bin/votour |
27 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-11-20·09:37:25.000000·./usr/lib/ | 27 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-11-20·09:37:25.000000·./usr/lib/ |
Offset 2889433, 255932 lines modified | Offset 2889433, 255932 lines modified | ||
02c16d80:·dc05·47db·4040·4084·95a6·be00·0000·4f00··..G.@@@.......O. | 02c16d80:·dc05·47db·4040·4084·95a6·be00·0000·4f00··..G.@@@.......O. | ||
02c16d90:·0000·0600·0000·2000·0000·16a0·2f2f·776f··......·.....//wo | 02c16d90:·0000·0600·0000·2000·0000·16a0·2f2f·776f··......·.....//wo | ||
02c16da0:·726b·7370·6163·655f·726f·6f74·a034·2f77··rkspace_root.4/w | 02c16da0:·726b·7370·6163·655f·726f·6f74·a034·2f77··rkspace_root.4/w | ||
02c16db0:·6f72·6b73·7061·6365·5f72·6f6f·742f·636c··orkspace_root/cl | 02c16db0:·6f72·6b73·7061·6365·5f72·6f6f·742f·636c··orkspace_root/cl | ||
02c16dc0:·6962·a009·242f·776f·726b·7370·6163·655f··ib..$/workspace_ | 02c16dc0:·6962·a009·242f·776f·726b·7370·6163·655f··ib..$/workspace_ | ||
02c16dd0:·726f·6f74·2f63·6c69·622f·2e63·6c69·622e··root/clib/.clib. | 02c16dd0:·726f·6f74·2f63·6c69·622f·2e63·6c69·622e··root/clib/.clib. | ||
02c16de0:·6f62·6a73·2f62·7974·6540·0008·d6bc·8495··objs/byte@...... | 02c16de0:·6f62·6a73·2f62·7974·6540·0008·d6bc·8495··objs/byte@...... | ||
02c16df0:·a6be·0000·3bd | 02c16df0:·a6be·0000·3bd8·0000·0aeb·0000·2d32·0000··....;.......-2.. | ||
02c16e00:·2c9 | 02c16e00:·2c98·a008·0000·2f00·0106·0828·4861·7368··,...../....(Hash | ||
02c16e10:·636f·6e73·b0c0·265f·6e6f·6e65·5f40·4000··cons..&_none_@@. | 02c16e10:·636f·6e73·b0c0·265f·6e6f·6e65·5f40·4000··cons..&_none_@@. | ||
02c16e20:·ff04·0241·4122·3f3f·4140·d040·4040·4040··...AA"??A@.@@@@@ | 02c16e20:·ff04·0241·4122·3f3f·4140·d040·4040·4040··...AA"??A@.@@@@@ | ||
02c16e30:·a040·4040·40a0·0800·002f·0001·05f0·0409··.@@@@..../...... | 02c16e30:·a040·4040·40a0·0800·002f·0001·05f0·0409··.@@@@..../...... | ||
02c16e40:·0408·4104·0541·4004·0404·0340·40a0·0800··..A..A@....@@... | 02c16e40:·0408·4104·0541·4004·0404·0340·40a0·0800··..A..A@....@@... | Diff chunk too large, falling back to line-by-line diff (12477 lines added, 12477 lines removed) | |
02c16e50:·002f·0001·05e0·040b·040a·4104·0741·c3c3··./........A..A.. | 02c16e50:·002f·0001·05e0·040b·040a·4104·0741·c3c3··./........A..A.. | ||
02c16e60:·b4b0·c3b4·b4ab·a | 02c16e60:·b4b0·c3b4·b4ab·a7b2·b2b2·b2b2·b2b2·b2b2··................ | ||
02c16e70:·b2b2·b2b | 02c16e70:·b2b2·b2b1·b1b1·b1b1·b1b1·b1b1·b1b1·b1b1··................ | ||
02c16e80:·b1b1·b1b1· | 02c16e80:·b1b1·b1b1·40a3·2561·7272·6179·4808·0000··....@.%arrayH... | ||
02c16e90:· | 02c16e90:·3b00·a0c0·9040·0205·f5e1·0040·4d40·4104··;....@.....@M@A. | ||
02c16ea0:·0 | 02c16ea0:·0141·40a0·7f40·a040·4040·4004·3840·4040··.A@..@.@@@@.8@@@ | ||
02c16eb0:· | 02c16eb0:·9204·08a3·2462·6f6f·6c45·0800·003b·0040··....$boolE...;.@ | ||
02c16ec0:·40 | 02c16ec0:·40a2·a0e0·a325·6661·6c73·655e·9040·4004··@....%false^.@@. | ||
02c16ed0:· | 02c16ed0:·4240·9204·03a0·e0a3·2474·7275·655f·9040··B@......$true_.@ | ||
02c16ee0:·40 | 02c16ee0:·4004·4840·9204·0340·4041·4040·4040·4004··@.H@...@@A@@@@@. | ||
02c16ef0:· | 02c16ef0:·4940·4140·9204·10a3·2463·6861·7242·0800··I@A@....$charB.. | ||
02c16f00:·00 | 02c16f00:·003b·0040·4004·1841·4040·4040·4004·4d40··.;.@@..A@@@@@.M@ | ||
02c16f10:·4 | 02c16f10:·4140·9204·03a3·2365·786e·4708·0000·3b00··A@....#exnG...;. | ||
02c16f20:· | 02c16f20:·4040·4041·4040·4040·4004·5140·4040·9204··@@@A@@@@@.Q@@@.. | ||
02c16f30:·0 | 02c16f30:·03a3·3565·7874·656e·7369·6f6e·5f63·6f6e··..5extension_con | ||
02c16f40:· | 02c16f40:·7374·7275·6374·6f72·5008·0000·3b00·4040··structorP...;.@@ | ||
02c16f50:·4 | 02c16f50:·0420·4140·4040·4040·0455·4040·4092·0403··.·A@@@@@.U@@@... | ||
02c16f60:· | 02c16f60:·a325·666c·6f61·7444·0800·003b·0040·4004··.%floatD...;.@@. | ||
02c16f70:· | 02c16f70:·2441·4040·4040·4004·5940·4040·9204·03a3··$A@@@@@.Y@@@.... | ||
02c16f80:· | 02c16f80:·2a66·6c6f·6174·6172·7261·7951·0800·003b··*floatarrayQ...; | ||
02c16f90:· | 02c16f90:·0040·4004·2841·4040·4040·4004·5d40·4040··.@@.(A@@@@@.]@@@ | ||
02c16fa0:· | 02c16fa0:·9204·03a3·2369·6e74·4108·0000·3b00·4040··....#intA...;.@@ | ||
02c16fb0:· | 02c16fb0:·042c·4140·4040·4040·0461·4041·4092·0403··.,A@@@@@.a@A@... | ||
02c16fc0:· | 02c16fc0:·a325·696e·7433·324c·0800·003b·0040·4004··.%int32L...;.@@. | ||
02c16fd0:·04 | 02c16fd0:·3041·4040·4040·4004·6540·4040·9204·03a3··0A@@@@@.e@@@.... | ||
02c16fe0:· | 02c16fe0:·2569·6e74·3634·4d08·0000·3b00·4040·0434··%int64M...;.@@.4 | ||
02c16ff0:· | 02c16ff0:·4140·4040·4040·0469·4040·4092·0403·a326··A@@@@@.i@@@....& | ||
02c17000:· | 02c17000:·6c61·7a79·5f74·4e08·0000·3b00·a0c0·043a··lazy_tN...;....: | ||
02c17010:· | 02c17010:·0205·f5e1·0040·4f40·4104·3a41·40a0·5940··.....@O@A.:A@.Y@ | ||
02c17020:· | 02c17020:·a040·4040·4004·7140·4040·9204·07a3·246c··.@@@@.q@@@....$l | ||
02c17030:·6 | 02c17030:·6973·7449·0800·003b·00a0·c004·4202·05f5··istI...;....B... | ||
02c17040:· | 02c17040:·e100·4050·4041·a2a0·e0a3·225b·5d61·9040··..@P@A...."[]a.@ | ||
02c17050:·40 | 02c17050:·4004·7d40·9204·03a0·e0a3·223a·3a62·90a0··@.}@......"::b.. | ||
02c17060:· | 02c17060:·040e·a0c0·b390·0416·a004·1340·9040·0205··...........@.@.. | ||
02c17070:· | 02c17070:·f5e1·0040·5140·4004·8a40·9204·0a40·4041··...@Q@@..@...@@A | ||
02c17080:·4 | 02c17080:·40a0·5940·a040·4040·4004·8d40·4040·9204··@.Y@.@@@@..@@@.. | ||
02c17090:· | 02c17090:·1ba3·296e·6174·6976·6569·6e74·4b08·0000··..)nativeintK... | ||
02c170a0:· | 02c170a0:·3b00·4040·045c·4140·4040·4040·0491·4040··;.@@.\A@@@@@..@@ | ||
02c170b0:·40 | 02c170b0:·4092·0403·a326·6f70·7469·6f6e·4a08·0000··@....&optionJ... | ||
02c170c0:· | 02c170c0:·3b00·a0c0·0462·0205·f5e1·0040·5340·41a2··;....b.....@S@A. | ||
02c170d0:·a | 02c170d0:·a0e0·a324·4e6f·6e65·6390·4040·049d·4092··...$Nonec.@@..@. | ||
02c170e0:· | 02c170e0:·0403·a0e0·a324·536f·6d65·6490·a004·0e40··.....$Somed....@ | ||
02c170f0:·40 | 02c170f0:·4004·a440·9204·0440·4041·40a0·5940·a040··@..@...@@A@.Y@.@ | ||
02c17100:·4040·40 | 02c17100:·4040·4004·a740·4040·9204·15a3·2673·7472··@@@..@@@....&str | ||
02c17110:· | 02c17110:·696e·674f·0800·003b·0040·4004·7641·4040··ingO...;.@@.vA@@ | ||
02c17120:·4040·40 | 02c17120:·4040·4004·ab40·4040·9204·03a3·2562·7974··@@@..@@@....%byt | ||
02c17130:· | 02c17130:·6573·4308·0000·3b00·4040·047a·4140·4040··esC...;.@@.zA@@@ | ||
02c17140:·4040· | 02c17140:·4040·04af·4040·4092·0403·a324·756e·6974··@@..@@@....$unit | ||
02c17150:· | 02c17150:·4608·0000·3b00·4040·a2a0·e0a3·2228·2960··F...;.@@...."()` | ||
02c17160:· | 02c17160:·9040·4004·b940·9204·0340·4041·4040·4040··.@@..@...@@A@@@@ | ||
02c17170:·40 | 02c17170:·4004·ba40·4140·9204·0aa3·2e41·7373·6572··@..@A@.....Asser | ||
02c17180:·7 | 02c17180:·745f·6661·696c·7572·655c·0800·0023·0090··t_failure\...#.. | ||
02c17190:· | 02c17190:·0471·4090·a0c0·92a0·c0b3·9004·1f40·9040··.q@..........@.@ | ||
02c171a0:· | 02c171a0:·0205·f5e1·0040·4aa0·c0b3·9004·6e40·9040··.....@J.....n@.@ | ||
02c171b0:· | 02c171b0:·0205·f5e1·0040·40a0·0405·4002·05f5·e100··.....@@...@..... | ||
02c171c0:· | 02c171c0:·4056·4040·4104·cea0·b0a0·3d6f·6361·6d6c··@V@@A.....=ocaml | ||
02c171d0:· | 02c171d0:·2e77·6172·6e5f·6f6e·5f6c·6974·6572·616c··.warn_on_literal | ||
02c171e0:· | 02c171e0:·5f70·6174·7465·726e·04d2·049d·04d2·4092··_pattern......@. | ||
02c171f0:· | 02c171f0:·0417·a330·4469·7669·7369·6f6e·5f62·795f··...0Division_by_ | ||
02c17200:· | 02c17200:·7a65·726f·5908·0000·2300·0418·4090·4040··zeroY...#...@.@@ | ||
02c17210:·4 | 02c17210:·4104·d7a0·b0a0·0409·04da·04a5·04da·4092··A.............@. | ||
02c17220:· | 02c17220:·0407·a32b·456e·645f·6f66·5f66·696c·6558··...+End_of_fileX | ||
02c17230:· | 02c17230:·0800·0023·0004·2040·9040·4041·04df·a0b0··...#..·@.@@A.... | ||
02c17240:· | 02c17240:·a004·1104·e204·ad04·e240·9204·07a3·2746··.........@....'F | ||
02c17250:· | 02c17250:·6169·6c75·7265·5508·0000·2300·0428·4090··ailureU...#..(@. | ||
02c17260:· | 02c17260:·a004·2440·4041·04e8·a0b0·a004·1a04·eb04··..$@@A.......... | ||
02c17270:· | 02c17270:·b604·eb40·9204·08a3·3049·6e76·616c·6964··...@....0Invalid | ||
02c17280:· | 02c17280:·5f61·7267·756d·656e·7454·0800·0023·0004··_argumentT...#.. | ||
02c17290:· | 02c17290:·3140·90a0·042d·4040·4104·f1a0·b0a0·0423··1@...-@@A......# | ||
02c172a0:· | 02c172a0:·04f4·04bf·04f4·4092·0408·a32d·4d61·7463··......@....-Matc | ||
02c172b0:·6 | 02c172b0:·685f·6661·696c·7572·6552·0800·0023·0004··h_failureR...#.. | ||
02c172c0:· | 02c172c0:·3a40·90a0·c092·a004·39a0·0435·a004·3640··:@......9..5..6@ | ||
02c172d0:· | 02c172d0:·0205·f5e1·0040·5c40·4041·04ff·a0b0·a004··.....@\@@A...... | ||
02c172e0:· | 02c172e0:·3105·0102·04cd·0501·0240·9204·0da3·294e··1........@....)N | ||
02c172f0:· | 02c172f0:·6f74·5f66·6f75·6e64·5608·0000·2300·0448··ot_foundV...#..H | ||
02c17300:· | 02c17300:·4090·4040·4105·0107·a0b0·a004·3905·010a··@.@@A.......9... | ||
02c17310:·0 | 02c17310:·04d5·0501·0a40·9204·07a3·2d4f·7574·5f6f··.....@....-Out_o | ||
02c17320:· | 02c17320:·665f·6d65·6d6f·7279·5308·0000·2300·0450··f_memoryS...#..P | ||
02c17330:· | 02c17330:·4090·4040·4105·010f·a0b0·a004·4105·0112··@.@@A.......A... | ||
02c17340:·0 | 02c17340:·04dd·0501·1240·9204·07a3·2e53·7461·636b··.....@.....Stack | ||
02c17350:· | 02c17350:·5f6f·7665·7266·6c6f·775a·0800·0023·0004··_overflowZ...#.. | ||
02c17360:· | 02c17360:·5840·9040·4041·0501·17a0·b0a0·0449·0501··X@.@@A.......I.. | ||
02c17370:· | 02c17370:·1a04·e505·011a·4092·0407·a32e·5379·735f··......@.....Sys_ | ||
02c17380:· | 02c17380:·626c·6f63·6b65·645f·696f·5b08·0000·2300··blocked_io[...#. | ||
02c17390:· | 02c17390:·0460·4090·4040·4105·011f·a0b0·a004·5105··.`@.@@A.......Q. | ||
02c173a0:· | 02c173a0:·0122·04ed·0501·2240·9204·07a3·2953·7973··."...."@....)Sys | ||
02c173b0:· | 02c173b0:·5f65·7272·6f72·5708·0000·2300·0468·4090··_errorW...#..h@. | ||
02c173c0:· | 02c173c0:·a004·6440·4041·0501·28a0·b0a0·045a·0501··..d@@A..(....Z.. | ||
02c173d0:· | 02c173d0:·2b04·f605·012b·4092·0408·a33a·556e·6465··+....+@....:Unde | ||
02c173e0:·6 | 02c173e0:·6669·6e65·645f·7265·6375·7273·6976·655f··fined_recursive_ | ||
02c173f0:·6 | 02c173f0:·6d6f·6475·6c65·5d08·0000·2300·0471·4090··module]...#..q@. | ||
02c17400:· | 02c17400:·a0c0·92a0·0470·a004·6ca0·046d·4002·05f5··.....p..l..m@... | ||
02c17410:· | 02c17410:·e100·4063·4040·4105·0136·a0b0·a004·6805··..@c@@A..6....h. | ||
02c17420:· | 02c17420:·0139·0501·0405·0139·4092·040d·9092·2653··.9.....9@.....&S | ||
02c17430:· | 02c17430:·7464·6c69·6292·264f·7074·696f·6eb1·2e48··tdlib.&Option..H | ||
02c17440:· | 02c17440:·6173·6863·6f6e·7365·6454·7970·6501·0113··ashconsedType... | ||
02c17450:· | 02c17450:·43c0·9091·a0c1·b121·7401·010e·4108·0000··C......!t...A... | ||
02c17460:· | 02c17460:·3b00·4040·9040·4140·4040·4040·b0c0·3063··;.@@.@A@@@@@..0c | ||
02c17470:· | 02c17470:·6c69·622f·6861·7368·636f·6e73·2e6d·6c5b··lib/hashcons.ml[ | ||
02c17480:· | 02c17480:·0105·3101·0535·c004·025b·0105·3101·053b··..1..5...[..1..; | ||
02c17490:· | 02c17490:·4040·4040·a105·0150·4041·40a0·c1b1·2175··@@@@...P@A@...!u | ||
02c174a0:· | 02c174a0:·0101·0f42·0800·003b·0040·4004·0b41·4040··...B...;.@@..A@@ | ||
02c174b0:·4040· | 02c174b0:·4040·40b0·c004·0a5c·0105·3c01·0540·c004··@@@....\..<..@.. | ||
02c174c0:·0 | 02c174c0:·0b5c·0105·3c01·0546·4040·4040·a105·0159··.\..<..F@@@@...Y | ||
02c174d0:·4 | 02c174d0:·4141·40a0·b0a0·2868·6173·6863·6f6e·7301··AA@...(hashcons. | ||
02c174e0:· | 02c174e0:·0110·d0c0·c140·c0b3·9004·1140·9040·0205··.....@.....@.@.. | ||
02c174f0:· | 02c174f0:·f5e1·0040·0105·99c0·c140·c0b3·9004·2240··...@.....@...."@ | ||
02c17500:· | 02c17500:·9040·0205·f5e1·0040·0105·9ac0·b390·0426··.@.....@.......& | ||
02c17510:· | 02c17510:·4090·4002·05f5·e100·4001·059b·4002·05f5··@.@.....@...@... | ||
02c17520:· | 02c17520:·e100·4001·059c·4002·05f5·e100·4001·059d··..@...@.....@... | ||
02c17530:· | 02c17530:·40b0·c004·235d·0105·4701·054b·c004·245d··@...#]..G..K..$] | ||
02c17540:·0105·4 | 02c17540:·0105·4701·0566·4040·a105·0172·4240·a0b0··..G..f@@...rB@.. | ||
02c17550:· | 02c17550:·a022·6571·0101·11d0·c0c1·40c0·b390·0435··."eq......@....5 | ||
Max diff block lines reached; 33590839/35313876 bytes (95.12%) of diff not shown. |
Offset 2924232, 255933 lines modified | Offset 2924232, 255932 lines modified | ||
02c9ec70:·47dd·4140·0547·dc05·47db·4040·4084·95a6··G.A@.G..G.@@@... | 02c9ec70:·47dd·4140·0547·dc05·47db·4040·4084·95a6··G.A@.G..G.@@@... | ||
02c9ec80:·be00·0000·4f00·0000·0600·0000·2000·0000··....O.......·... | 02c9ec80:·be00·0000·4f00·0000·0600·0000·2000·0000··....O.......·... | ||
02c9ec90:·16a0·2f2f·776f·726b·7370·6163·655f·726f··..//workspace_ro | 02c9ec90:·16a0·2f2f·776f·726b·7370·6163·655f·726f··..//workspace_ro | ||
02c9eca0:·6f74·a034·2f77·6f72·6b73·7061·6365·5f72··ot.4/workspace_r | 02c9eca0:·6f74·a034·2f77·6f72·6b73·7061·6365·5f72··ot.4/workspace_r | ||
02c9ecb0:·6f6f·742f·636c·6962·a009·242f·776f·726b··oot/clib..$/work | 02c9ecb0:·6f6f·742f·636c·6962·a009·242f·776f·726b··oot/clib..$/work | ||
02c9ecc0:·7370·6163·655f·726f·6f74·2f63·6c69·622f··space_root/clib/ | 02c9ecc0:·7370·6163·655f·726f·6f74·2f63·6c69·622f··space_root/clib/ | ||
02c9ecd0:·2e63·6c69·622e·6f62·6a73·2f62·7974·6540··.clib.objs/byte@ | 02c9ecd0:·2e63·6c69·622e·6f62·6a73·2f62·7974·6540··.clib.objs/byte@ | ||
02c9ece0:·0008·d6bc·8495·a6be·0000·3bd | 02c9ece0:·0008·d6bc·8495·a6be·0000·3bd8·0000·0aeb··..........;..... | ||
02c9ecf0:·0000·2d3 | 02c9ecf0:·0000·2d32·0000·2c98·a008·0000·2f00·0106··..-2..,...../... | ||
02c9ed00:·0828·4861·7368·636f·6e73·b0c0·265f·6e6f··.(Hashcons..&_no | 02c9ed00:·0828·4861·7368·636f·6e73·b0c0·265f·6e6f··.(Hashcons..&_no | ||
02c9ed10:·6e65·5f40·4000·ff04·0241·4122·3f3f·4140··ne_@@....AA"??A@ | 02c9ed10:·6e65·5f40·4000·ff04·0241·4122·3f3f·4140··ne_@@....AA"??A@ | ||
02c9ed20:·d040·4040·4040·a040·4040·40a0·0800·002f··.@@@@@.@@@@..../ | 02c9ed20:·d040·4040·4040·a040·4040·40a0·0800·002f··.@@@@@.@@@@..../ | ||
02c9ed30:·0001·05f0·0409·0408·4104·0541·4004·0404··........A..A@... | 02c9ed30:·0001·05f0·0409·0408·4104·0541·4004·0404··........A..A@... | Diff chunk too large, falling back to line-by-line diff (12477 lines added, 12477 lines removed) | |
02c9ed40:·0340·40a0·0800·002f·0001·05e0·040b·040a··.@@..../........ | 02c9ed40:·0340·40a0·0800·002f·0001·05e0·040b·040a··.@@..../........ | ||
02c9ed50:·4104·0741·c3c3·b4b0·c3b4·b4ab·a | 02c9ed50:·4104·0741·c3c3·b4b0·c3b4·b4ab·a7b2·b2b2··A..A............ | ||
02c9ed60:·b2b2·b2b2·b2b2·b2b2·b2b | 02c9ed60:·b2b2·b2b2·b2b2·b2b2·b2b1·b1b1·b1b1·b1b1··................ | ||
02c9ed70:·b1b1·b1b1·b1b1·b1b1·b1b1· | 02c9ed70:·b1b1·b1b1·b1b1·b1b1·b1b1·40a3·2561·7272··..........@.%arr | ||
02c9ed80:· | 02c9ed80:·6179·4808·0000·3b00·a0c0·9040·0205·f5e1··ayH...;....@.... | ||
02c9ed90:· | 02c9ed90:·0040·4d40·4104·0141·40a0·7f40·a040·4040··.@M@A..A@..@.@@@ | ||
02c9eda0:·40 | 02c9eda0:·4004·3840·4040·9204·08a3·2462·6f6f·6c45··@.8@@@....$boolE | ||
02c9edb0:· | 02c9edb0:·0800·003b·0040·40a2·a0e0·a325·6661·6c73··...;.@@....%fals | ||
02c9edc0:· | 02c9edc0:·655e·9040·4004·4240·9204·03a0·e0a3·2474··e^.@@.B@......$t | ||
02c9edd0:·7 | 02c9edd0:·7275·655f·9040·4004·4840·9204·0340·4041··rue_.@@.H@...@@A | ||
02c9ede0:·4 | 02c9ede0:·4040·4040·4004·4940·4140·9204·10a3·2463··@@@@@.I@A@....$c | ||
02c9edf0:·6 | 02c9edf0:·6861·7242·0800·003b·0040·4004·1841·4040··harB...;.@@..A@@ | ||
02c9ee00:·4040·40 | 02c9ee00:·4040·4004·4d40·4140·9204·03a3·2365·786e··@@@.M@A@....#exn | ||
02c9ee10:· | 02c9ee10:·4708·0000·3b00·4040·4041·4040·4040·4004··G...;.@@@A@@@@@. | ||
02c9ee20:· | 02c9ee20:·5140·4040·9204·03a3·3565·7874·656e·7369··Q@@@....5extensi | ||
02c9ee30:·6 | 02c9ee30:·6f6e·5f63·6f6e·7374·7275·6374·6f72·5008··on_constructorP. | ||
02c9ee40:·0 | 02c9ee40:·0000·3b00·4040·0420·4140·4040·4040·0455··..;.@@.·A@@@@@.U | ||
02c9ee50:· | 02c9ee50:·4040·4092·0403·a325·666c·6f61·7444·0800··@@@....%floatD.. | ||
02c9ee60:·00 | 02c9ee60:·003b·0040·4004·2441·4040·4040·4004·5940··.;.@@.$A@@@@@.Y@ | ||
02c9ee70:·4040· | 02c9ee70:·4040·9204·03a3·2a66·6c6f·6174·6172·7261··@@....*floatarra | ||
02c9ee80:· | 02c9ee80:·7951·0800·003b·0040·4004·2841·4040·4040··yQ...;.@@.(A@@@@ | ||
02c9ee90:·40 | 02c9ee90:·4004·5d40·4040·9204·03a3·2369·6e74·4108··@.]@@@....#intA. | ||
02c9eea0:·0 | 02c9eea0:·0000·3b00·4040·042c·4140·4040·4040·0461··..;.@@.,A@@@@@.a | ||
02c9eeb0:· | 02c9eeb0:·4041·4092·0403·a325·696e·7433·324c·0800··@A@....%int32L.. | ||
02c9eec0:·00 | 02c9eec0:·003b·0040·4004·3041·4040·4040·4004·6540··.;.@@.0A@@@@@.e@ | ||
02c9eed0:·4040· | 02c9eed0:·4040·9204·03a3·2569·6e74·3634·4d08·0000··@@....%int64M... | ||
02c9eee0:· | 02c9eee0:·3b00·4040·0434·4140·4040·4040·0469·4040··;.@@.4A@@@@@.i@@ | ||
02c9eef0:·40 | 02c9eef0:·4092·0403·a326·6c61·7a79·5f74·4e08·0000··@....&lazy_tN... | ||
02c9ef00:· | 02c9ef00:·3b00·a0c0·043a·0205·f5e1·0040·4f40·4104··;....:.....@O@A. | ||
02c9ef10:· | 02c9ef10:·3a41·40a0·5940·a040·4040·4004·7140·4040··:A@.Y@.@@@@.q@@@ | ||
02c9ef20:· | 02c9ef20:·9204·07a3·246c·6973·7449·0800·003b·00a0··....$listI...;.. | ||
02c9ef30:· | 02c9ef30:·c004·4202·05f5·e100·4050·4041·a2a0·e0a3··..B.....@P@A.... | ||
02c9ef40:· | 02c9ef40:·225b·5d61·9040·4004·7d40·9204·03a0·e0a3··"[]a.@@.}@...... | ||
02c9ef50:· | 02c9ef50:·223a·3a62·90a0·040e·a0c0·b390·0416·a004··"::b............ | ||
02c9ef60:· | 02c9ef60:·1340·9040·0205·f5e1·0040·5140·4004·8a40··.@.@.....@Q@@..@ | ||
02c9ef70:· | 02c9ef70:·9204·0a40·4041·40a0·5940·a040·4040·4004··...@@A@.Y@.@@@@. | ||
02c9ef80:· | 02c9ef80:·8d40·4040·9204·1ba3·296e·6174·6976·6569··.@@@....)nativei | ||
02c9ef90:·6 | 02c9ef90:·6e74·4b08·0000·3b00·4040·045c·4140·4040··ntK...;.@@.\A@@@ | ||
02c9efa0:·4040· | 02c9efa0:·4040·0491·4040·4092·0403·a326·6f70·7469··@@..@@@....&opti | ||
02c9efb0:·6 | 02c9efb0:·6f6e·4a08·0000·3b00·a0c0·0462·0205·f5e1··onJ...;....b.... | ||
02c9efc0:· | 02c9efc0:·0040·5340·41a2·a0e0·a324·4e6f·6e65·6390··.@S@A....$Nonec. | ||
02c9efd0:· | 02c9efd0:·4040·049d·4092·0403·a0e0·a324·536f·6d65··@@..@......$Some | ||
02c9efe0:·6 | 02c9efe0:·6490·a004·0e40·4004·a440·9204·0440·4041··d....@@..@...@@A | ||
02c9eff0:·4 | 02c9eff0:·40a0·5940·a040·4040·4004·a740·4040·9204··@.Y@.@@@@..@@@.. | ||
02c9f000:· | 02c9f000:·15a3·2673·7472·696e·674f·0800·003b·0040··..&stringO...;.@ | ||
02c9f010:·40 | 02c9f010:·4004·7641·4040·4040·4004·ab40·4040·9204··@.vA@@@@@..@@@.. | ||
02c9f020:·0 | 02c9f020:·03a3·2562·7974·6573·4308·0000·3b00·4040··..%bytesC...;.@@ | ||
02c9f030:· | 02c9f030:·047a·4140·4040·4040·04af·4040·4092·0403··.zA@@@@@..@@@... | ||
02c9f040:· | 02c9f040:·a324·756e·6974·4608·0000·3b00·4040·a2a0··.$unitF...;.@@.. | ||
02c9f050:· | 02c9f050:·e0a3·2228·2960·9040·4004·b940·9204·0340··.."()`.@@..@...@ | ||
02c9f060:·404 | 02c9f060:·4041·4040·4040·4004·ba40·4140·9204·0aa3··@A@@@@@..@A@.... | ||
02c9f070:· | 02c9f070:·2e41·7373·6572·745f·6661·696c·7572·655c··.Assert_failure\ | ||
02c9f080:· | 02c9f080:·0800·0023·0090·0471·4090·a0c0·92a0·c0b3··...#...q@....... | ||
02c9f090:· | 02c9f090:·9004·1f40·9040·0205·f5e1·0040·4aa0·c0b3··...@.@.....@J... | ||
02c9f0a0:· | 02c9f0a0:·9004·6e40·9040·0205·f5e1·0040·40a0·0405··..n@.@.....@@... | ||
02c9f0b0:· | 02c9f0b0:·4002·05f5·e100·4056·4040·4104·cea0·b0a0··@.....@V@@A..... | ||
02c9f0c0:· | 02c9f0c0:·3d6f·6361·6d6c·2e77·6172·6e5f·6f6e·5f6c··=ocaml.warn_on_l | ||
02c9f0d0:·6 | 02c9f0d0:·6974·6572·616c·5f70·6174·7465·726e·04d2··iteral_pattern.. | ||
02c9f0e0:· | 02c9f0e0:·049d·04d2·4092·0417·a330·4469·7669·7369··....@....0Divisi | ||
02c9f0f0:·6 | 02c9f0f0:·6f6e·5f62·795f·7a65·726f·5908·0000·2300··on_by_zeroY...#. | ||
02c9f100:·0 | 02c9f100:·0418·4090·4040·4104·d7a0·b0a0·0409·04da··..@.@@A......... | ||
02c9f110:· | 02c9f110:·04a5·04da·4092·0407·a32b·456e·645f·6f66··....@....+End_of | ||
02c9f120:· | 02c9f120:·5f66·696c·6558·0800·0023·0004·2040·9040··_fileX...#..·@.@ | ||
02c9f130:·404 | 02c9f130:·4041·04df·a0b0·a004·1104·e204·ad04·e240··@A.............@ | ||
02c9f140:· | 02c9f140:·9204·07a3·2746·6169·6c75·7265·5508·0000··....'FailureU... | ||
02c9f150:· | 02c9f150:·2300·0428·4090·a004·2440·4041·04e8·a0b0··#..(@...$@@A.... | ||
02c9f160:· | 02c9f160:·a004·1a04·eb04·b604·eb40·9204·08a3·3049··.........@....0I | ||
02c9f170:· | 02c9f170:·6e76·616c·6964·5f61·7267·756d·656e·7454··nvalid_argumentT | ||
02c9f180:· | 02c9f180:·0800·0023·0004·3140·90a0·042d·4040·4104··...#..1@...-@@A. | ||
02c9f190:· | 02c9f190:·f1a0·b0a0·0423·04f4·04bf·04f4·4092·0408··.....#......@... | ||
02c9f1a0:· | 02c9f1a0:·a32d·4d61·7463·685f·6661·696c·7572·6552··.-Match_failureR | ||
02c9f1b0:· | 02c9f1b0:·0800·0023·0004·3a40·90a0·c092·a004·39a0··...#..:@......9. | ||
02c9f1c0:· | 02c9f1c0:·0435·a004·3640·0205·f5e1·0040·5c40·4041··.5..6@.....@\@@A | ||
02c9f1d0:· | 02c9f1d0:·04ff·a0b0·a004·3105·0102·04cd·0501·0240··......1........@ | ||
02c9f1e0:· | 02c9f1e0:·9204·0da3·294e·6f74·5f66·6f75·6e64·5608··....)Not_foundV. | ||
02c9f1f0:· | 02c9f1f0:·0000·2300·0448·4090·4040·4105·0107·a0b0··..#..H@.@@A..... | ||
02c9f200:·a0 | 02c9f200:·a004·3905·010a·04d5·0501·0a40·9204·07a3··..9........@.... | ||
02c9f210:· | 02c9f210:·2d4f·7574·5f6f·665f·6d65·6d6f·7279·5308··-Out_of_memoryS. | ||
02c9f220:· | 02c9f220:·0000·2300·0450·4090·4040·4105·010f·a0b0··..#..P@.@@A..... | ||
02c9f230:·a0 | 02c9f230:·a004·4105·0112·04dd·0501·1240·9204·07a3··..A........@.... | ||
02c9f240:· | 02c9f240:·2e53·7461·636b·5f6f·7665·7266·6c6f·775a··.Stack_overflowZ | ||
02c9f250:· | 02c9f250:·0800·0023·0004·5840·9040·4041·0501·17a0··...#..X@.@@A.... | ||
02c9f260:· | 02c9f260:·b0a0·0449·0501·1a04·e505·011a·4092·0407··...I........@... | ||
02c9f270:· | 02c9f270:·a32e·5379·735f·626c·6f63·6b65·645f·696f··..Sys_blocked_io | ||
02c9f280:· | 02c9f280:·5b08·0000·2300·0460·4090·4040·4105·011f··[...#..`@.@@A... | ||
02c9f290:· | 02c9f290:·a0b0·a004·5105·0122·04ed·0501·2240·9204··....Q.."...."@.. | ||
02c9f2a0:· | 02c9f2a0:·07a3·2953·7973·5f65·7272·6f72·5708·0000··..)Sys_errorW... | ||
02c9f2b0:· | 02c9f2b0:·2300·0468·4090·a004·6440·4041·0501·28a0··#..h@...d@@A..(. | ||
02c9f2c0:· | 02c9f2c0:·b0a0·045a·0501·2b04·f605·012b·4092·0408··...Z..+....+@... | ||
02c9f2d0:· | 02c9f2d0:·a33a·556e·6465·6669·6e65·645f·7265·6375··.:Undefined_recu | ||
02c9f2e0:· | 02c9f2e0:·7273·6976·655f·6d6f·6475·6c65·5d08·0000··rsive_module]... | ||
02c9f2f0:· | 02c9f2f0:·2300·0471·4090·a0c0·92a0·0470·a004·6ca0··#..q@......p..l. | ||
02c9f300:· | 02c9f300:·046d·4002·05f5·e100·4063·4040·4105·0136··.m@.....@c@@A..6 | ||
02c9f310:· | 02c9f310:·a0b0·a004·6805·0139·0501·0405·0139·4092··....h..9.....9@. | ||
02c9f320:· | 02c9f320:·040d·9092·2653·7464·6c69·6292·264f·7074··....&Stdlib.&Opt | ||
02c9f330:·6 | 02c9f330:·696f·6eb1·2e48·6173·6863·6f6e·7365·6454··ion..HashconsedT | ||
02c9f340:· | 02c9f340:·7970·6501·0113·43c0·9091·a0c1·b121·7401··ype...C......!t. | ||
02c9f350:· | 02c9f350:·010e·4108·0000·3b00·4040·9040·4140·4040··..A...;.@@.@A@@@ | ||
02c9f360:·40 | 02c9f360:·4040·b0c0·3063·6c69·622f·6861·7368·636f··@@..0clib/hashco | ||
02c9f370:· | 02c9f370:·6e73·2e6d·6c5b·0105·3101·0535·c004·025b··ns.ml[..1..5...[ | ||
02c9f380:·0105·3 | 02c9f380:·0105·3101·053b·4040·4040·a105·0150·4041··..1..;@@@@...P@A | ||
02c9f390:·40a | 02c9f390:·40a0·c1b1·2175·0101·0f42·0800·003b·0040··@...!u...B...;.@ | ||
02c9f3a0:·4 | 02c9f3a0:·4004·0b41·4040·4040·40b0·c004·0a5c·0105··@..A@@@@@....\.. | ||
02c9f3b0:· | 02c9f3b0:·3c01·0540·c004·0b5c·0105·3c01·0546·4040··<..@...\..<..F@@ | ||
02c9f3c0:· | 02c9f3c0:·4040·a105·0159·4141·40a0·b0a0·2868·6173··@@...YAA@...(has | ||
02c9f3d0:· | 02c9f3d0:·6863·6f6e·7301·0110·d0c0·c140·c0b3·9004··hcons......@.... | ||
02c9f3e0:· | 02c9f3e0:·1140·9040·0205·f5e1·0040·0105·99c0·c140··.@.@.....@.....@ | ||
02c9f3f0:· | 02c9f3f0:·c0b3·9004·2240·9040·0205·f5e1·0040·0105··...."@.@.....@.. | ||
02c9f400:· | 02c9f400:·9ac0·b390·0426·4090·4002·05f5·e100·4001··.....&@.@.....@. | ||
02c9f410:·0 | 02c9f410:·059b·4002·05f5·e100·4001·059c·4002·05f5··..@.....@...@... | ||
02c9f420:· | 02c9f420:·e100·4001·059d·40b0·c004·235d·0105·4701··..@...@...#]..G. | ||
02c9f430:·0 | 02c9f430:·054b·c004·245d·0105·4701·0566·4040·a105··.K..$]..G..f@@.. | ||
02c9f440:·01 | 02c9f440:·0172·4240·a0b0·a022·6571·0101·11d0·c0c1··.rB@..."eq...... | ||
Max diff block lines reached; 33590628/35313665 bytes (95.12%) of diff not shown. |
Offset 3299842, 894463 lines modified | Offset 3299842, 894463 lines modified | ||
0325a010:·4040·4084·95a6·be00·0000·4f00·0000·0600··@@@.......O..... | 0325a010:·4040·4084·95a6·be00·0000·4f00·0000·0600··@@@.......O..... | ||
0325a020:·0000·2000·0000·16a0·2f2f·776f·726b·7370··..·.....//worksp | 0325a020:·0000·2000·0000·16a0·2f2f·776f·726b·7370··..·.....//worksp | ||
0325a030:·6163·655f·726f·6f74·a034·2f77·6f72·6b73··ace_root.4/works | 0325a030:·6163·655f·726f·6f74·a034·2f77·6f72·6b73··ace_root.4/works | ||
0325a040:·7061·6365·5f72·6f6f·742f·636c·6962·a009··pace_root/clib.. | 0325a040:·7061·6365·5f72·6f6f·742f·636c·6962·a009··pace_root/clib.. | ||
0325a050:·242f·776f·726b·7370·6163·655f·726f·6f74··$/workspace_root | 0325a050:·242f·776f·726b·7370·6163·655f·726f·6f74··$/workspace_root | ||
0325a060:·2f63·6c69·622f·2e63·6c69·622e·6f62·6a73··/clib/.clib.objs | 0325a060:·2f63·6c69·622f·2e63·6c69·622e·6f62·6a73··/clib/.clib.objs | ||
0325a070:·2f62·7974·6540·002f·32ec·8495·a6be·0000··/byte@./2....... | 0325a070:·2f62·7974·6540·002f·32ec·8495·a6be·0000··/byte@./2....... | ||
0325a080:·3bd | 0325a080:·3bd8·0000·0aeb·0000·2d32·0000·2c98·a008··;.......-2..,... | ||
0325a090:·0000·2f00·0106·0828·4861·7368·636f·6e73··../....(Hashcons | 0325a090:·0000·2f00·0106·0828·4861·7368·636f·6e73··../....(Hashcons | ||
0325a0a0:·b0c0·265f·6e6f·6e65·5f40·4000·ff04·0241··..&_none_@@....A | 0325a0a0:·b0c0·265f·6e6f·6e65·5f40·4000·ff04·0241··..&_none_@@....A | ||
0325a0b0:·4122·3f3f·4140·d040·4040·4040·a040·4040··A"??A@.@@@@@.@@@ | 0325a0b0:·4122·3f3f·4140·d040·4040·4040·a040·4040··A"??A@.@@@@@.@@@ | ||
0325a0c0:·40a0·0800·002f·0001·05f0·0409·0408·4104··@..../........A. | 0325a0c0:·40a0·0800·002f·0001·05f0·0409·0408·4104··@..../........A. | ||
0325a0d0:·0541·4004·0404·0340·40a0·0800·002f·0001··.A@....@@..../.. | 0325a0d0:·0541·4004·0404·0340·40a0·0800·002f·0001··.A@....@@..../.. | ||
0325a0e0:·05e0·040b·040a·4104·0741·c3c3·b4b0·c3b4··......A..A...... | 0325a0e0:·05e0·040b·040a·4104·0741·c3c3·b4b0·c3b4··......A..A...... | ||
0325a0f0:·b4ab·a | 0325a0f0:·b4ab·a7b2·b2b2·b2b2·b2b2·b2b2·b2b2·b2b1··................ | Diff chunk too large, falling back to line-by-line diff (12475 lines added, 12475 lines removed) | |
0325a100:·b1b1·b1b1·b1b1·b1b1·b1b1·b1b1·b1b1·b1b1··................ | 0325a100:·b1b1·b1b1·b1b1·b1b1·b1b1·b1b1·b1b1·b1b1··................ | ||
0325a110:· | 0325a110:·40a3·2561·7272·6179·4808·0000·3b00·a0c0··@.%arrayH...;... | ||
0325a120:· | 0325a120:·9040·0205·f5e1·0040·4d40·4104·0141·40a0··.@.....@M@A..A@. | ||
0325a130:· | 0325a130:·7f40·a040·4040·4004·3840·4040·9204·08a3··.@.@@@@.8@@@.... | ||
0325a140:· | 0325a140:·2462·6f6f·6c45·0800·003b·0040·40a2·a0e0··$boolE...;.@@... | ||
0325a150:· | 0325a150:·a325·6661·6c73·655e·9040·4004·4240·9204··.%false^.@@.B@.. | ||
0325a160:·0 | 0325a160:·03a0·e0a3·2474·7275·655f·9040·4004·4840··....$true_.@@.H@ | ||
0325a170:· | 0325a170:·9204·0340·4041·4040·4040·4004·4940·4140··...@@A@@@@@.I@A@ | ||
0325a180:· | 0325a180:·9204·10a3·2463·6861·7242·0800·003b·0040··....$charB...;.@ | ||
0325a190:·404 | 0325a190:·4004·1841·4040·4040·4004·4d40·4140·9204··@..A@@@@@.M@A@.. | ||
0325a1a0:·0 | 0325a1a0:·03a3·2365·786e·4708·0000·3b00·4040·4041··..#exnG...;.@@@A | ||
0325a1b0:·4 | 0325a1b0:·4040·4040·4004·5140·4040·9204·03a3·3565··@@@@@.Q@@@....5e | ||
0325a1c0:· | 0325a1c0:·7874·656e·7369·6f6e·5f63·6f6e·7374·7275··xtension_constru | ||
0325a1d0:· | 0325a1d0:·6374·6f72·5008·0000·3b00·4040·0420·4140··ctorP...;.@@.·A@ | ||
0325a1e0:·4040·4040· | 0325a1e0:·4040·4040·0455·4040·4092·0403·a325·666c··@@@@.U@@@....%fl | ||
0325a1f0:·6 | 0325a1f0:·6f61·7444·0800·003b·0040·4004·2441·4040··oatD...;.@@.$A@@ | ||
0325a200:·4040·40 | 0325a200:·4040·4004·5940·4040·9204·03a3·2a66·6c6f··@@@.Y@@@....*flo | ||
0325a210:·6 | 0325a210:·6174·6172·7261·7951·0800·003b·0040·4004··atarrayQ...;.@@. | ||
0325a220:· | 0325a220:·2841·4040·4040·4004·5d40·4040·9204·03a3··(A@@@@@.]@@@.... | ||
0325a230:· | 0325a230:·2369·6e74·4108·0000·3b00·4040·042c·4140··#intA...;.@@.,A@ | ||
0325a240:·4040·4040· | 0325a240:·4040·4040·0461·4041·4092·0403·a325·696e··@@@@.a@A@....%in | ||
0325a250:· | 0325a250:·7433·324c·0800·003b·0040·4004·3041·4040··t32L...;.@@.0A@@ | ||
0325a260:·4040·40 | 0325a260:·4040·4004·6540·4040·9204·03a3·2569·6e74··@@@.e@@@....%int | ||
0325a270:· | 0325a270:·3634·4d08·0000·3b00·4040·0434·4140·4040··64M...;.@@.4A@@@ | ||
0325a280:·4040· | 0325a280:·4040·0469·4040·4092·0403·a326·6c61·7a79··@@.i@@@....&lazy | ||
0325a290:· | 0325a290:·5f74·4e08·0000·3b00·a0c0·043a·0205·f5e1··_tN...;....:.... | ||
0325a2a0:· | 0325a2a0:·0040·4f40·4104·3a41·40a0·5940·a040·4040··.@O@A.:A@.Y@.@@@ | ||
0325a2b0:·40 | 0325a2b0:·4004·7140·4040·9204·07a3·246c·6973·7449··@.q@@@....$listI | ||
0325a2c0:· | 0325a2c0:·0800·003b·00a0·c004·4202·05f5·e100·4050··...;....B.....@P | ||
0325a2d0:· | 0325a2d0:·4041·a2a0·e0a3·225b·5d61·9040·4004·7d40··@A...."[]a.@@.}@ | ||
0325a2e0:· | 0325a2e0:·9204·03a0·e0a3·223a·3a62·90a0·040e·a0c0··......"::b...... | ||
0325a2f0:· | 0325a2f0:·b390·0416·a004·1340·9040·0205·f5e1·0040··.......@.@.....@ | ||
0325a300:· | 0325a300:·5140·4004·8a40·9204·0a40·4041·40a0·5940··Q@@..@...@@A@.Y@ | ||
0325a310:· | 0325a310:·a040·4040·4004·8d40·4040·9204·1ba3·296e··.@@@@..@@@....)n | ||
0325a320:·6 | 0325a320:·6174·6976·6569·6e74·4b08·0000·3b00·4040··ativeintK...;.@@ | ||
0325a330:· | 0325a330:·045c·4140·4040·4040·0491·4040·4092·0403··.\A@@@@@..@@@... | ||
0325a340:· | 0325a340:·a326·6f70·7469·6f6e·4a08·0000·3b00·a0c0··.&optionJ...;... | ||
0325a350:· | 0325a350:·0462·0205·f5e1·0040·5340·41a2·a0e0·a324··.b.....@S@A....$ | ||
0325a360:· | 0325a360:·4e6f·6e65·6390·4040·049d·4092·0403·a0e0··Nonec.@@..@..... | ||
0325a370:· | 0325a370:·a324·536f·6d65·6490·a004·0e40·4004·a440··.$Somed....@@..@ | ||
0325a380:· | 0325a380:·9204·0440·4041·40a0·5940·a040·4040·4004··...@@A@.Y@.@@@@. | ||
0325a390:· | 0325a390:·a740·4040·9204·15a3·2673·7472·696e·674f··.@@@....&stringO | ||
0325a3a0:· | 0325a3a0:·0800·003b·0040·4004·7641·4040·4040·4004··...;.@@.vA@@@@@. | ||
0325a3b0:· | 0325a3b0:·ab40·4040·9204·03a3·2562·7974·6573·4308··.@@@....%bytesC. | ||
0325a3c0:·0 | 0325a3c0:·0000·3b00·4040·047a·4140·4040·4040·04af··..;.@@.zA@@@@@.. | ||
0325a3d0:· | 0325a3d0:·4040·4092·0403·a324·756e·6974·4608·0000··@@@....$unitF... | ||
0325a3e0:· | 0325a3e0:·3b00·4040·a2a0·e0a3·2228·2960·9040·4004··;.@@...."()`.@@. | ||
0325a3f0:· | 0325a3f0:·b940·9204·0340·4041·4040·4040·4004·ba40··.@...@@A@@@@@..@ | ||
0325a400:·4 | 0325a400:·4140·9204·0aa3·2e41·7373·6572·745f·6661··A@.....Assert_fa | ||
0325a410:·6 | 0325a410:·696c·7572·655c·0800·0023·0090·0471·4090··ilure\...#...q@. | ||
0325a420:· | 0325a420:·a0c0·92a0·c0b3·9004·1f40·9040·0205·f5e1··.........@.@.... | ||
0325a430:· | 0325a430:·0040·4aa0·c0b3·9004·6e40·9040·0205·f5e1··.@J.....n@.@.... | ||
0325a440:· | 0325a440:·0040·40a0·0405·4002·05f5·e100·4056·4040··.@@...@.....@V@@ | ||
0325a450:·4 | 0325a450:·4104·cea0·b0a0·3d6f·6361·6d6c·2e77·6172··A.....=ocaml.war | ||
0325a460:· | 0325a460:·6e5f·6f6e·5f6c·6974·6572·616c·5f70·6174··n_on_literal_pat | ||
0325a470:·74 | 0325a470:·7465·726e·04d2·049d·04d2·4092·0417·a330··tern......@....0 | ||
0325a480:· | 0325a480:·4469·7669·7369·6f6e·5f62·795f·7a65·726f··Division_by_zero | ||
0325a490:· | 0325a490:·5908·0000·2300·0418·4090·4040·4104·d7a0··Y...#...@.@@A... | ||
0325a4a0:· | 0325a4a0:·b0a0·0409·04da·04a5·04da·4092·0407·a32b··..........@....+ | ||
0325a4b0:· | 0325a4b0:·456e·645f·6f66·5f66·696c·6558·0800·0023··End_of_fileX...# | ||
0325a4c0:· | 0325a4c0:·0004·2040·9040·4041·04df·a0b0·a004·1104··..·@.@@A........ | ||
0325a4d0:· | 0325a4d0:·e204·ad04·e240·9204·07a3·2746·6169·6c75··.....@....'Failu | ||
0325a4e0:·7 | 0325a4e0:·7265·5508·0000·2300·0428·4090·a004·2440··reU...#..(@...$@ | ||
0325a4f0:·404 | 0325a4f0:·4041·04e8·a0b0·a004·1a04·eb04·b604·eb40··@A.............@ | ||
0325a500:· | 0325a500:·9204·08a3·3049·6e76·616c·6964·5f61·7267··....0Invalid_arg | ||
0325a510:· | 0325a510:·756d·656e·7454·0800·0023·0004·3140·90a0··umentT...#..1@.. | ||
0325a520:· | 0325a520:·042d·4040·4104·f1a0·b0a0·0423·04f4·04bf··.-@@A......#.... | ||
0325a530:· | 0325a530:·04f4·4092·0408·a32d·4d61·7463·685f·6661··..@....-Match_fa | ||
0325a540:·6 | 0325a540:·696c·7572·6552·0800·0023·0004·3a40·90a0··ilureR...#..:@.. | ||
0325a550:· | 0325a550:·c092·a004·39a0·0435·a004·3640·0205·f5e1··....9..5..6@.... | ||
0325a560:· | 0325a560:·0040·5c40·4041·04ff·a0b0·a004·3105·0102··.@\@@A......1... | ||
0325a570:·0 | 0325a570:·04cd·0501·0240·9204·0da3·294e·6f74·5f66··.....@....)Not_f | ||
0325a580:· | 0325a580:·6f75·6e64·5608·0000·2300·0448·4090·4040··oundV...#..H@.@@ | ||
0325a590:·4 | 0325a590:·4105·0107·a0b0·a004·3905·010a·04d5·0501··A.......9....... | ||
0325a5a0:·0 | 0325a5a0:·0a40·9204·07a3·2d4f·7574·5f6f·665f·6d65··.@....-Out_of_me | ||
0325a5b0:·6d6 | 0325a5b0:·6d6f·7279·5308·0000·2300·0450·4090·4040··moryS...#..P@.@@ | ||
0325a5c0:·4 | 0325a5c0:·4105·010f·a0b0·a004·4105·0112·04dd·0501··A.......A....... | ||
0325a5d0:· | 0325a5d0:·1240·9204·07a3·2e53·7461·636b·5f6f·7665··.@.....Stack_ove | ||
0325a5e0:·7 | 0325a5e0:·7266·6c6f·775a·0800·0023·0004·5840·9040··rflowZ...#..X@.@ | ||
0325a5f0:· | 0325a5f0:·4041·0501·17a0·b0a0·0449·0501·1a04·e505··@A.......I...... | ||
0325a600:· | 0325a600:·011a·4092·0407·a32e·5379·735f·626c·6f63··..@.....Sys_bloc | ||
0325a610:·6 | 0325a610:·6b65·645f·696f·5b08·0000·2300·0460·4090··ked_io[...#..`@. | ||
0325a620:·40 | 0325a620:·4040·4105·011f·a0b0·a004·5105·0122·04ed··@@A.......Q..".. | ||
0325a630:·0 | 0325a630:·0501·2240·9204·07a3·2953·7973·5f65·7272··.."@....)Sys_err | ||
0325a640:· | 0325a640:·6f72·5708·0000·2300·0468·4090·a004·6440··orW...#..h@...d@ | ||
0325a650:· | 0325a650:·4041·0501·28a0·b0a0·045a·0501·2b04·f605··@A..(....Z..+... | ||
0325a660:· | 0325a660:·012b·4092·0408·a33a·556e·6465·6669·6e65··.+@....:Undefine | ||
0325a670:·6 | 0325a670:·645f·7265·6375·7273·6976·655f·6d6f·6475··d_recursive_modu | ||
0325a680:·6 | 0325a680:·6c65·5d08·0000·2300·0471·4090·a0c0·92a0··le]...#..q@..... | ||
0325a690:· | 0325a690:·0470·a004·6ca0·046d·4002·05f5·e100·4063··.p..l..m@.....@c | ||
0325a6a0:·40 | 0325a6a0:·4040·4105·0136·a0b0·a004·6805·0139·0501··@@A..6....h..9.. | ||
0325a6b0:·0 | 0325a6b0:·0405·0139·4092·040d·9092·2653·7464·6c69··...9@.....&Stdli | ||
0325a6c0:·6 | 0325a6c0:·6292·264f·7074·696f·6eb1·2e48·6173·6863··b.&Option..Hashc | ||
0325a6d0:· | 0325a6d0:·6f6e·7365·6454·7970·6501·0113·43c0·9091··onsedType...C... | ||
0325a6e0:· | 0325a6e0:·a0c1·b121·7401·010e·4108·0000·3b00·4040··...!t...A...;.@@ | ||
0325a6f0:· | 0325a6f0:·9040·4140·4040·4040·b0c0·3063·6c69·622f··.@A@@@@@..0clib/ | ||
0325a700:· | 0325a700:·6861·7368·636f·6e73·2e6d·6c5b·0105·3101··hashcons.ml[..1. | ||
0325a710:· | 0325a710:·0535·c004·025b·0105·3101·053b·4040·4040··.5...[..1..;@@@@ | ||
0325a720:· | 0325a720:·a105·0150·4041·40a0·c1b1·2175·0101·0f42··...P@A@...!u...B | ||
0325a730:· | 0325a730:·0800·003b·0040·4004·0b41·4040·4040·40b0··...;.@@..A@@@@@. | ||
0325a740:· | 0325a740:·c004·0a5c·0105·3c01·0540·c004·0b5c·0105··...\..<..@...\.. | ||
0325a750:· | 0325a750:·3c01·0546·4040·4040·a105·0159·4141·40a0··<..F@@@@...YAA@. | ||
0325a760:·0 | 0325a760:·b0a0·2868·6173·6863·6f6e·7301·0110·d0c0··..(hashcons..... | ||
0325a770:· | 0325a770:·c140·c0b3·9004·1140·9040·0205·f5e1·0040··.@.....@.@.....@ | ||
0325a780:· | 0325a780:·0105·99c0·c140·c0b3·9004·2240·9040·0205··.....@...."@.@.. | ||
0325a790:· | 0325a790:·f5e1·0040·0105·9ac0·b390·0426·4090·4002··...@.......&@.@. | ||
0325a7a0:· | 0325a7a0:·05f5·e100·4001·059b·4002·05f5·e100·4001··....@...@.....@. | ||
0325a7b0:·0 | 0325a7b0:·059c·4002·05f5·e100·4001·059d·40b0·c004··..@.....@...@... | ||
0325a7c0:· | 0325a7c0:·235d·0105·4701·054b·c004·245d·0105·4701··#]..G..K..$]..G. | ||
0325a7d0:·0 | 0325a7d0:·0566·4040·a105·0172·4240·a0b0·a022·6571··.f@@...rB@..."eq | ||
0325a7e0:· | 0325a7e0:·0101·11d0·c0c1·40c0·b390·0435·4090·4002··......@....5@.@. | ||
Max diff block lines reached; 121700476/123423375 bytes (98.60%) of diff not shown. |
Offset 1, 3 lines modified | Offset 1, 3 lines modified | ||
1 | -rw-r--r--···0········0········0········4·2024-11-20·09:37:25.000000·debian-binary | 1 | -rw-r--r--···0········0········0········4·2024-11-20·09:37:25.000000·debian-binary |
2 | -rw-r--r--···0········0········0····701 | 2 | -rw-r--r--···0········0········0····70112·2024-11-20·09:37:25.000000·control.tar.xz |
3 | -rw-r--r--···0········0········0·6931 | 3 | -rw-r--r--···0········0········0·69313308·2024-11-20·09:37:25.000000·data.tar.xz |
Offset 114, 15 lines modified | Offset 114, 15 lines modified | ||
114 | -rw-r--r--···0·root·········(0)·root·········(0)···153109·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cArray.cmt | 114 | -rw-r--r--···0·root·········(0)·root·········(0)···153109·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cArray.cmt |
115 | -rw-r--r--···0·root·········(0)·root·········(0)····47372·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cArray.cmti | 115 | -rw-r--r--···0·root·········(0)·root·········(0)····47372·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cArray.cmti |
116 | -rw-r--r--···0·root·········(0)·root·········(0)·····5386·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cArray.cmx | 116 | -rw-r--r--···0·root·········(0)·root·········(0)·····5386·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cArray.cmx |
117 | -rw-r--r--···0·root·········(0)·root·········(0)····22530·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cArray.ml | 117 | -rw-r--r--···0·root·········(0)·root·········(0)····22530·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cArray.ml |
118 | -rw-r--r--···0·root·········(0)·root·········(0)·····8277·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cArray.mli | 118 | -rw-r--r--···0·root·········(0)·root·········(0)·····8277·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cArray.mli |
119 | -rw-r--r--···0·root·········(0)·root·········(0)······539·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cEphemeron.cmi | 119 | -rw-r--r--···0·root·········(0)·root·········(0)······539·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cEphemeron.cmi |
120 | -rw-r--r--···0·root·········(0)·root·········(0)····11423·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cEphemeron.cmt | 120 | -rw-r--r--···0·root·········(0)·root·········(0)····11423·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cEphemeron.cmt |
121 | -rw-r--r--···0·root·········(0)·root·········(0)·····385 | 121 | -rw-r--r--···0·root·········(0)·root·········(0)·····3858·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cEphemeron.cmti |
122 | -rw-r--r--···0·root·········(0)·root·········(0)·····2010·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cEphemeron.cmx | 122 | -rw-r--r--···0·root·········(0)·root·········(0)·····2010·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cEphemeron.cmx |
123 | -rw-r--r--···0·root·········(0)·root·········(0)·····3535·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cEphemeron.ml | 123 | -rw-r--r--···0·root·········(0)·root·········(0)·····3535·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cEphemeron.ml |
124 | -rw-r--r--···0·root·········(0)·root·········(0)·····2441·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cEphemeron.mli | 124 | -rw-r--r--···0·root·········(0)·root·········(0)·····2441·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cEphemeron.mli |
125 | -rw-r--r--···0·root·········(0)·root·········(0)·····9716·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cList.cmi | 125 | -rw-r--r--···0·root·········(0)·root·········(0)·····9716·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cList.cmi |
126 | -rw-r--r--···0·root·········(0)·root·········(0)···183121·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cList.cmt | 126 | -rw-r--r--···0·root·········(0)·root·········(0)···183121·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cList.cmt |
127 | -rw-r--r--···0·root·········(0)·root·········(0)····56509·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cList.cmti | 127 | -rw-r--r--···0·root·········(0)·root·········(0)····56509·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cList.cmti |
128 | -rw-r--r--···0·root·········(0)·root·········(0)····11411·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cList.cmx | 128 | -rw-r--r--···0·root·········(0)·root·········(0)····11411·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.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)····92444·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cMap.cmt | 132 | -rw-r--r--···0·root·········(0)·root·········(0)····92444·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cMap.cmt |
133 | -rw-r--r--···0·root·········(0)·root·········(0)····34081·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cMap.cmti | 133 | -rw-r--r--···0·root·········(0)·root·········(0)····34081·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cMap.cmti |
134 | -rw-r--r--···0·root·········(0)·root·········(0)·····2584·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cMap.cmx | 134 | -rw-r--r--···0·root·········(0)·root·········(0)·····2584·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cMap.cmx |
135 | -rw-r--r--···0·root·········(0)·root·········(0)····10377·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cMap.ml | 135 | -rw-r--r--···0·root·········(0)·root·········(0)····10377·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cMap.ml |
136 | -rw-r--r--···0·root·········(0)·root·········(0)·····4120·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cMap.mli | 136 | -rw-r--r--···0·root·········(0)·root·········(0)·····4120·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cMap.mli |
137 | -rw-r--r--···0·root·········(0)·root·········(0)······598·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cObj.cmi | 137 | -rw-r--r--···0·root·········(0)·root·········(0)······598·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cObj.cmi |
138 | -rw-r--r--···0·root·········(0)·root·········(0)····34881·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cObj.cmt | 138 | -rw-r--r--···0·root·········(0)·root·········(0)····34881·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cObj.cmt |
139 | -rw-r--r--···0·root·········(0)·root·········(0)·····461 | 139 | -rw-r--r--···0·root·········(0)·root·········(0)·····4612·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cObj.cmti |
140 | -rw-r--r--···0·root·········(0)·root·········(0)·····4493·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cObj.cmx | 140 | -rw-r--r--···0·root·········(0)·root·········(0)·····4493·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cObj.cmx |
141 | -rw-r--r--···0·root·········(0)·root·········(0)·····6267·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cObj.ml | 141 | -rw-r--r--···0·root·········(0)·root·········(0)·····6267·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cObj.ml |
142 | -rw-r--r--···0·root·········(0)·root·········(0)·····2333·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cObj.mli | 142 | -rw-r--r--···0·root·········(0)·root·········(0)·····2333·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cObj.mli |
143 | -rw-r--r--···0·root·········(0)·root·········(0)·····2844·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cSet.cmi | 143 | -rw-r--r--···0·root·········(0)·root·········(0)·····2844·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cSet.cmi |
144 | -rw-r--r--···0·root·········(0)·root·········(0)····16756·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cSet.cmt | 144 | -rw-r--r--···0·root·········(0)·root·········(0)····16756·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cSet.cmt |
145 | -rw-r--r--···0·root·········(0)·root·········(0)·····90 | 145 | -rw-r--r--···0·root·········(0)·root·········(0)·····9049·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cSet.cmti |
146 | -rw-r--r--···0·root·········(0)·root·········(0)·····3602·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cSet.cmx | 146 | -rw-r--r--···0·root·········(0)·root·········(0)·····3602·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cSet.cmx |
147 | -rw-r--r--···0·root·········(0)·root·········(0)·····1924·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cSet.ml | 147 | -rw-r--r--···0·root·········(0)·root·········(0)·····1924·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cSet.ml |
148 | -rw-r--r--···0·root·········(0)·root·········(0)·····1181·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cSet.mli | 148 | -rw-r--r--···0·root·········(0)·root·········(0)·····1181·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cSet.mli |
149 | -rw-r--r--···0·root·········(0)·root·········(0)·····4823·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cSig.cmi | 149 | -rw-r--r--···0·root·········(0)·root·········(0)·····4823·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cSig.cmi |
150 | -rw-r--r--···0·root·········(0)·root·········(0)····206 | 150 | -rw-r--r--···0·root·········(0)·root·········(0)····20685·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cSig.cmti |
151 | -rw-r--r--···0·root·········(0)·root·········(0)·····3481·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cSig.mli | 151 | -rw-r--r--···0·root·········(0)·root·········(0)·····3481·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cSig.mli |
152 | -rw-r--r--···0·root·········(0)·root·········(0)····17720·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cString.cmi | 152 | -rw-r--r--···0·root·········(0)·root·········(0)····17720·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cString.cmi |
153 | -rw-r--r--···0·root·········(0)·root·········(0)····65662·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cString.cmt | 153 | -rw-r--r--···0·root·········(0)·root·········(0)····65662·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cString.cmt |
154 | -rw-r--r--···0·root·········(0)·root·········(0)····45833·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cString.cmti | 154 | -rw-r--r--···0·root·········(0)·root·········(0)····45833·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cString.cmti |
155 | -rw-r--r--···0·root·········(0)·root·········(0)····20796·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cString.cmx | 155 | -rw-r--r--···0·root·········(0)·root·········(0)····20796·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cString.cmx |
156 | -rw-r--r--···0·root·········(0)·root·········(0)·····5634·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cString.ml | 156 | -rw-r--r--···0·root·········(0)·root·········(0)·····5634·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cString.ml |
157 | -rw-r--r--···0·root·········(0)·root·········(0)·····3347·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cString.mli | 157 | -rw-r--r--···0·root·········(0)·root·········(0)·····3347·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cString.mli |
158 | -rw-r--r--···0·root·········(0)·root·········(0)·····1057·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cThread.cmi | 158 | -rw-r--r--···0·root·········(0)·root·········(0)·····1057·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cThread.cmi |
159 | -rw-r--r--···0·root·········(0)·root·········(0)····20518·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cThread.cmt | 159 | -rw-r--r--···0·root·········(0)·root·········(0)····20518·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cThread.cmt |
160 | -rw-r--r--···0·root·········(0)·root·········(0)·····48 | 160 | -rw-r--r--···0·root·········(0)·root·········(0)·····4887·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cThread.cmti |
161 | -rw-r--r--···0·root·········(0)·root·········(0)·····1601·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cThread.cmx | 161 | -rw-r--r--···0·root·········(0)·root·········(0)·····1601·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cThread.cmx |
162 | -rw-r--r--···0·root·········(0)·root·········(0)·····3816·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cThread.ml | 162 | -rw-r--r--···0·root·········(0)·root·········(0)·····3816·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cThread.ml |
163 | -rw-r--r--···0·root·········(0)·root·········(0)·····1786·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cThread.mli | 163 | -rw-r--r--···0·root·········(0)·root·········(0)·····1786·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cThread.mli |
164 | -rw-r--r--···0·root·········(0)·root·········(0)·····1175·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cUnix.cmi | 164 | -rw-r--r--···0·root·········(0)·root·········(0)·····1175·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cUnix.cmi |
165 | -rw-r--r--···0·root·········(0)·root·········(0)····27200·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cUnix.cmt | 165 | -rw-r--r--···0·root·········(0)·root·········(0)····27200·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cUnix.cmt |
166 | -rw-r--r--···0·root·········(0)·root·········(0)·····6762·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cUnix.cmti | 166 | -rw-r--r--···0·root·········(0)·root·········(0)·····6762·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cUnix.cmti |
167 | -rw-r--r--···0·root·········(0)·root·········(0)·····2711·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cUnix.cmx | 167 | -rw-r--r--···0·root·········(0)·root·········(0)·····2711·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cUnix.cmx |
168 | -rw-r--r--···0·root·········(0)·root·········(0)·····5769·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cUnix.ml | 168 | -rw-r--r--···0·root·········(0)·root·········(0)·····5769·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cUnix.ml |
169 | -rw-r--r--···0·root·········(0)·root·········(0)·····2800·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cUnix.mli | 169 | -rw-r--r--···0·root·········(0)·root·········(0)·····2800·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/cUnix.mli |
170 | -rw-r--r--···0·root·········(0)·root·········(0)··1167490·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/clib.a | 170 | -rw-r--r--···0·root·········(0)·root·········(0)··1167490·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/clib.a |
171 | -rw-r--r--···0·root·········(0)·root·········(0)····17693·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/clib.cmxa | 171 | -rw-r--r--···0·root·········(0)·root·········(0)····17693·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/clib.cmxa |
172 | -rw-r--r--···0·root·········(0)·root·········(0)·····1480·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/diff2.cmi | 172 | -rw-r--r--···0·root·········(0)·root·········(0)·····1480·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/diff2.cmi |
173 | -rw-r--r--···0·root·········(0)·root·········(0)····27434·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/diff2.cmt | 173 | -rw-r--r--···0·root·········(0)·root·········(0)····27434·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/diff2.cmt |
174 | -rw-r--r--···0·root·········(0)·root·········(0)·····81 | 174 | -rw-r--r--···0·root·········(0)·root·········(0)·····8155·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/diff2.cmti |
175 | -rw-r--r--···0·root·········(0)·root·········(0)······510·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/diff2.cmx | 175 | -rw-r--r--···0·root·········(0)·root·········(0)······510·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/diff2.cmx |
176 | -rw-r--r--···0·root·········(0)·root·········(0)·····4667·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/diff2.ml | 176 | -rw-r--r--···0·root·········(0)·root·········(0)·····4667·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/diff2.ml |
177 | -rw-r--r--···0·root·········(0)·root·········(0)·····3057·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/diff2.mli | 177 | -rw-r--r--···0·root·········(0)·root·········(0)·····3057·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/diff2.mli |
178 | -rw-r--r--···0·root·········(0)·root·········(0)·····2753·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/dyn.cmi | 178 | -rw-r--r--···0·root·········(0)·root·········(0)·····2753·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/dyn.cmi |
179 | -rw-r--r--···0·root·········(0)·root·········(0)····36872·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/dyn.cmt | 179 | -rw-r--r--···0·root·········(0)·root·········(0)····36872·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/dyn.cmt |
180 | -rw-r--r--···0·root·········(0)·root·········(0)····14007·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/dyn.cmti | 180 | -rw-r--r--···0·root·········(0)·root·········(0)····14007·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/dyn.cmti |
181 | -rw-r--r--···0·root·········(0)·root·········(0)·····3320·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/dyn.cmx | 181 | -rw-r--r--···0·root·········(0)·root·········(0)·····3320·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/dyn.cmx |
Offset 190, 15 lines modified | Offset 190, 15 lines modified | ||
190 | -rw-r--r--···0·root·········(0)·root·········(0)·····3716·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/hMap.cmi | 190 | -rw-r--r--···0·root·········(0)·root·········(0)·····3716·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/hMap.cmi |
191 | -rw-r--r--···0·root·········(0)·root·········(0)····90963·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/hMap.cmt | 191 | -rw-r--r--···0·root·········(0)·root·········(0)····90963·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/hMap.cmt |
192 | -rw-r--r--···0·root·········(0)·root·········(0)····10326·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/hMap.cmti | 192 | -rw-r--r--···0·root·········(0)·root·········(0)····10326·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/hMap.cmti |
193 | -rw-r--r--···0·root·········(0)·root·········(0)·····6874·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/hMap.cmx | 193 | -rw-r--r--···0·root·········(0)·root·········(0)·····6874·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/hMap.cmx |
194 | -rw-r--r--···0·root·········(0)·root·········(0)····11496·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/hMap.ml | 194 | -rw-r--r--···0·root·········(0)·root·········(0)····11496·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/hMap.ml |
195 | -rw-r--r--···0·root·········(0)·root·········(0)·····1324·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/hMap.mli | 195 | -rw-r--r--···0·root·········(0)·root·········(0)·····1324·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/hMap.mli |
196 | -rw-r--r--···0·root·········(0)·root·········(0)·····1389·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/hashcons.cmi | 196 | -rw-r--r--···0·root·········(0)·root·········(0)·····1389·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/hashcons.cmi |
197 | -rw-r--r--···0·root·········(0)·root·········(0)····192 | 197 | -rw-r--r--···0·root·········(0)·root·········(0)····19255·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/hashcons.cmt |
198 | -rw-r--r--···0·root·········(0)·root·········(0)·····8601·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/hashcons.cmti | 198 | -rw-r--r--···0·root·········(0)·root·········(0)·····8601·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/hashcons.cmti |
199 | -rw-r--r--···0·root·········(0)·root·········(0)·····1428·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/hashcons.cmx | 199 | -rw-r--r--···0·root·········(0)·root·········(0)·····1428·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/hashcons.cmx |
200 | -rw-r--r--···0·root·········(0)·root·········(0)·····4300·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/hashcons.ml | 200 | -rw-r--r--···0·root·········(0)·root·········(0)·····4300·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/hashcons.ml |
201 | -rw-r--r--···0·root·········(0)·root·········(0)·····3510·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/hashcons.mli | 201 | -rw-r--r--···0·root·········(0)·root·········(0)·····3510·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/hashcons.mli |
202 | -rw-r--r--···0·root·········(0)·root·········(0)·····1237·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/hashset.cmi | 202 | -rw-r--r--···0·root·········(0)·root·········(0)·····1237·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/hashset.cmi |
203 | -rw-r--r--···0·root·········(0)·root·········(0)····42741·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/hashset.cmt | 203 | -rw-r--r--···0·root·········(0)·root·········(0)····42741·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/hashset.cmt |
204 | -rw-r--r--···0·root·········(0)·root·········(0)·····6875·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/hashset.cmti | 204 | -rw-r--r--···0·root·········(0)·root·········(0)·····6875·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/hashset.cmti |
Offset 263, 39 lines modified | Offset 263, 39 lines modified | ||
263 | -rw-r--r--···0·root·········(0)·root·········(0)····14423·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/polyMap.cmt | 263 | -rw-r--r--···0·root·········(0)·root·········(0)····14423·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/polyMap.cmt |
264 | -rw-r--r--···0·root·········(0)·root·········(0)·····7163·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/polyMap.cmti | 264 | -rw-r--r--···0·root·········(0)·root·········(0)·····7163·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/polyMap.cmti |
265 | -rw-r--r--···0·root·········(0)·root·········(0)·····1382·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/polyMap.cmx | 265 | -rw-r--r--···0·root·········(0)·root·········(0)·····1382·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/polyMap.cmx |
266 | -rw-r--r--···0·root·········(0)·root·········(0)·····2367·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/polyMap.ml | 266 | -rw-r--r--···0·root·········(0)·root·········(0)·····2367·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/polyMap.ml |
267 | -rw-r--r--···0·root·········(0)·root·········(0)·····1740·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/polyMap.mli | 267 | -rw-r--r--···0·root·········(0)·root·········(0)·····1740·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/polyMap.mli |
268 | -rw-r--r--···0·root·········(0)·root·········(0)·····1492·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/predicate.cmi | 268 | -rw-r--r--···0·root·········(0)·root·········(0)·····1492·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/predicate.cmi |
269 | -rw-r--r--···0·root·········(0)·root·········(0)····20586·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/predicate.cmt | 269 | -rw-r--r--···0·root·········(0)·root·········(0)····20586·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/predicate.cmt |
270 | -rw-r--r--···0·root·········(0)·root·········(0)·····840 | 270 | -rw-r--r--···0·root·········(0)·root·········(0)·····8409·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/predicate.cmti |
271 | -rw-r--r--···0·root·········(0)·root·········(0)·····1998·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/predicate.cmx | 271 | -rw-r--r--···0·root·········(0)·root·········(0)·····1998·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/predicate.cmx |
272 | -rw-r--r--···0·root·········(0)·root·········(0)·····3830·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/predicate.ml | 272 | -rw-r--r--···0·root·········(0)·root·········(0)·····3830·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/predicate.ml |
273 | -rw-r--r--···0·root·········(0)·root·········(0)·····2744·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/predicate.mli | 273 | -rw-r--r--···0·root·········(0)·root·········(0)·····2744·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/predicate.mli |
274 | -rw-r--r--···0·root·········(0)·root·········(0)······796·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/range.cmi | 274 | -rw-r--r--···0·root·········(0)·root·········(0)······796·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/range.cmi |
275 | -rw-r--r--···0·root·········(0)·root·········(0)····17162·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/range.cmt | 275 | -rw-r--r--···0·root·········(0)·root·········(0)····17162·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/range.cmt |
276 | -rw-r--r--···0·root·········(0)·root·········(0)·····472 | 276 | -rw-r--r--···0·root·········(0)·root·········(0)·····4726·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/range.cmti |
277 | -rw-r--r--···0·root·········(0)·root·········(0)·····1273·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/range.cmx | 277 | -rw-r--r--···0·root·········(0)·root·········(0)·····1273·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/range.cmx |
278 | -rw-r--r--···0·root·········(0)·root·········(0)·····2663·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/range.ml | 278 | -rw-r--r--···0·root·········(0)·root·········(0)·····2663·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/range.ml |
279 | -rw-r--r--···0·root·········(0)·root·········(0)·····1306·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/range.mli | 279 | -rw-r--r--···0·root·········(0)·root·········(0)·····1306·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/range.mli |
280 | -rw-r--r--···0·root·········(0)·root·········(0)·····1445·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/sList.cmi | 280 | -rw-r--r--···0·root·········(0)·root·········(0)·····1445·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/sList.cmi |
281 | -rw-r--r--···0·root·········(0)·root·········(0)····23410·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/sList.cmt | 281 | -rw-r--r--···0·root·········(0)·root·········(0)····23410·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/sList.cmt |
282 | -rw-r--r--···0·root·········(0)·root·········(0)·····83 | 282 | -rw-r--r--···0·root·········(0)·root·········(0)·····8379·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/sList.cmti |
283 | -rw-r--r--···0·root·········(0)·root·········(0)·····1466·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/sList.cmx | 283 | -rw-r--r--···0·root·········(0)·root·········(0)·····1466·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/sList.cmx |
284 | -rw-r--r--···0·root·········(0)·root·········(0)·····3442·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/sList.ml | 284 | -rw-r--r--···0·root·········(0)·root·········(0)·····3442·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/sList.ml |
285 | -rw-r--r--···0·root·········(0)·root·········(0)·····2141·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/sList.mli | 285 | -rw-r--r--···0·root·········(0)·root·········(0)·····2141·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/sList.mli |
286 | -rw-r--r--···0·root·········(0)·root·········(0)······437·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/segmenttree.cmi | 286 | -rw-r--r--···0·root·········(0)·root·········(0)······437·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/segmenttree.cmi |
287 | -rw-r--r--···0·root·········(0)·root·········(0)····19791·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/segmenttree.cmt | 287 | -rw-r--r--···0·root·········(0)·root·········(0)····19791·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/segmenttree.cmt |
288 | -rw-r--r--···0·root·········(0)·root·········(0)·····31 | 288 | -rw-r--r--···0·root·········(0)·root·········(0)·····3134·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/segmenttree.cmti |
289 | -rw-r--r--···0·root·········(0)·root·········(0)·····1002·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/segmenttree.cmx | 289 | -rw-r--r--···0·root·········(0)·root·········(0)·····1002·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/segmenttree.cmx |
290 | -rw-r--r--···0·root·········(0)·root·········(0)·····5268·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/segmenttree.ml | 290 | -rw-r--r--···0·root·········(0)·root·········(0)·····5268·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/segmenttree.ml |
291 | -rw-r--r--···0·root·········(0)·root·········(0)·····1379·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/segmenttree.mli | 291 | -rw-r--r--···0·root·········(0)·root·········(0)·····1379·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/segmenttree.mli |
292 | -rw-r--r--···0·root·········(0)·root·········(0)······647·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/store.cmi | 292 | -rw-r--r--···0·root·········(0)·root·········(0)······647·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/store.cmi |
293 | -rw-r--r--···0·root·········(0)·root·········(0)·····895 | 293 | -rw-r--r--···0·root·········(0)·root·········(0)·····8955·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/store.cmt |
294 | -rw-r--r--···0·root·········(0)·root·········(0)·····433 | 294 | -rw-r--r--···0·root·········(0)·root·········(0)·····4336·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/store.cmti |
295 | -rw-r--r--···0·root·········(0)·root·········(0)·····1104·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/store.cmx | 295 | -rw-r--r--···0·root·········(0)·root·········(0)·····1104·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/store.cmx |
296 | -rw-r--r--···0·root·········(0)·root·········(0)·····1658·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/store.ml | 296 | -rw-r--r--···0·root·········(0)·root·········(0)·····1658·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/store.ml |
297 | -rw-r--r--···0·root·········(0)·root·········(0)·····1421·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/store.mli | 297 | -rw-r--r--···0·root·········(0)·root·········(0)·····1421·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/store.mli |
298 | -rw-r--r--···0·root·········(0)·root·········(0)·····1374·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/terminal.cmi | 298 | -rw-r--r--···0·root·········(0)·root·········(0)·····1374·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/terminal.cmi |
299 | -rw-r--r--···0·root·········(0)·root·········(0)····42191·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/terminal.cmt | 299 | -rw-r--r--···0·root·········(0)·root·········(0)····42191·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/terminal.cmt |
300 | -rw-r--r--···0·root·········(0)·root·········(0)·····7169·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/terminal.cmti | 300 | -rw-r--r--···0·root·········(0)·root·········(0)·····7169·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/terminal.cmti |
301 | -rw-r--r--···0·root·········(0)·root·········(0)·····1676·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/terminal.cmx | 301 | -rw-r--r--···0·root·········(0)·root·········(0)·····1676·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/terminal.cmx |
Offset 28, 215 lines modified | Offset 28, 215 lines modified | ||
000001b0:·91f0·79f2·6da0·8f39·e8c0·a0a0·2653·7464··..y.m..9....&Std | 000001b0:·91f0·79f2·6da0·8f39·e8c0·a0a0·2653·7464··..y.m..9....&Std | ||
000001c0:·6c69·6290·30e8·d9af·4585·47c4·5080·a71b··lib.0...E.G.P... | 000001c0:·6c69·6290·30e8·d9af·4585·47c4·5080·a71b··lib.0...E.G.P... | ||
000001d0:·9a6e·aed6·58a0·a038·4361·6d6c·696e·7465··.n..X..8Camlinte | 000001d0:·9a6e·aed6·58a0·a038·4361·6d6c·696e·7465··.n..X..8Camlinte | ||
000001e0:·726e·616c·466f·726d·6174·4261·7369·6373··rnalFormatBasics | 000001e0:·726e·616c·466f·726d·6174·4261·7369·6373··rnalFormatBasics | ||
000001f0:·9030·2ef2·d91c·ed81·f6c7·2f85·2bab·8ab4··.0......../.+... | 000001f0:·9030·2ef2·d91c·ed81·f6c7·2f85·2bab·8ab4··.0......../.+... | ||
00000200:·06e0·4084·95a6·be00·0000·0400·0000·0200··..@............. | 00000200:·06e0·4084·95a6·be00·0000·0400·0000·0200··..@............. | ||
00000210:·0000·0500·0000·05a0·9040·4043·616d·6c31··.........@@Caml1 | 00000210:·0000·0500·0000·05a0·9040·4043·616d·6c31··.........@@Caml1 | ||
00000220:·3939·3954·3033·3484·95a6·bd0f·995 | 00000220:·3939·3954·3033·3484·95a6·bd0f·995c·b348··999T034......\.H | ||
00000230:·86 | 00000230:·861d·9d74·9a67·28b5·2ffd·0058·9d66·005a··...t.g(./..X.f.Z | ||
00000240:·b690·254e·6066·713a·68ee·ce7c·6568·f245··..%N`fq:h..|eh.E | |||
00000250:·2ec4·876a·a2ae·2157·307b·41ce·20b6·cf74··...j..!W0{A.·..t | |||
00000260:·08c1·222e·937b·ffa3·2d25·b189·ecbe·4a23··.."..{..-%....J# | |||
00000270:·9276·17f5·d000·0671·3412·61ee·d796·a10e··.v.....q4.a..... | |||
00000280:·2657·2c7f·2cd4·8756·3dcb·70cf·ac40·d62e··&W,.,..V=.p..@.. | |||
00000290:·5bee·5c02·5e02·1302·46da·eecc·18a9·aad7··[.\.^...F....... | |||
000002a0:·e91e·2146·b00c·38a0·f7be·eeb6·523f·5433··..!F..8.....R?T3 | |||
000002b0:·feb8·c7a9·ee6d·5d7d·67a5·2001·8b44·2902··.....m]}g.·..D). | |||
000002c0:·be18·7f0d·68f3·736b·aa7b·21ee·7aaa·547e··....h.sk.{!.z.T~ | |||
000002d0:·f598·4099·1188·aeb7·c23f·7453·421c·d53d··..@......?tSB..= | |||
000002e0:·2690·819e·17be·ad6f·a556·37a5·3f27·25f0··&......o.V7.?'%. | |||
000002f0:·8028·a774·f6bb·ab94·be3c·35e0·1625·0962··.(.t.....<5..%.b | |||
00000300:·6cdb·8b6d·1bc5·a0b0·384d·4128·817a·44d1··l..m....8MA(.zD. | |||
00000310:·f65b·5f10·a6a9·ae7a·74c8·ee10·01ed·f062··.[_....zt......b | |||
00000320:·dbb0·d965·93a2·2402·100e·9ff7·ea2a·b5ba··...e..$......*.. | |||
00000330:·a9ce·ea0c·01d5·4063·83cd·2e1b·958b·ff84··......@c........ | |||
00000340:·d44b·5587·6a12·22a0·161b·6ab3·f8b5·a6ae··.KU.j."...j..... | |||
00000350:·9447·f1eb·eaa5·ec4d·594c·894c·5e8b·7277··.G.....MYL.L^.rw | |||
00000360:·831d·6ed4·769a·738a·18db·9e1e·1326·8c62··..n.v.s......&.b | |||
00000370:·1b36·49d8·60d9·4c96·c190·f0f8·f32a·5da5··.6I.`.L......*]. | |||
00000380:·34fe·9c4f·2650·0a2b·4ca8·9140·4689·aef6··4..O&P.+L..@F... | |||
00000390:·a301·9f40·e5d7·2f55·10b0·0927·41b6·629d··...@../U...'A.b. | |||
000003a0:·8580·5994·d0b2·6d58·f7ad·db43·037e·d944··..Y...mX...C.~.D | |||
000003b0:·706f·2f0f·4d0f·137b·ab76·5d21·600f·4db4··po/.M..{.v]!`.M. | |||
000003c0:·ad3f·5435·b535·200b·b386·cd28·84f9·c2b6··.?T5.5·....(.... | |||
000003d0:·af6c·302e·b1fd·c2b6·612a·2448·64c0·2f5b··.l0.....a*$Hd./[ | |||
000003e0:·060a·f423·037e·d940·9ce6·931d·9dab·4703··...#.~.@......G. | |||
000003f0:·bea8·38d9·629b·47a7·5e27·504f·08f8·8140··..8.b.G.^'PO...@ | |||
00000400:·c111·2b1f·1431·a26d·0d02·b636·a379·3a69··..+..1.m...6.y:i | |||
00000410:·5b67·c0ba·19cd·1982·0df8·4934·bdde·2a08··[g........I4..*. | |||
00000420:·4837·a339·9fe0·abb9·0feb·6c2f·97b2·b766··H7.9......l/...f | |||
00000430:·fbba·e82b·0081·36a3·3997·d8a2·9f01·a96c··...+..6.9......l | |||
00000440:·3998·b238·1ad0·83cd·689e·e69c·a739·a3a4··9..8....h....9.. | |||
00000450:·fec3·9a06·fcb2·7936·a389·dae6·8495·f0d9··......y6........ | |||
00000460:·a3ab·20e0·970d·c49c·3ade·bd2a·1a50·83cd··..·.....:..*.P.. | |||
00000470:·68ce·794a·b2ed·91cd·997a·7b6d·4a48·2c9c··h.yJ.....z{mJH,. | |||
00000480:·73ce·3d57·d8f3·34b7·d304·61c2·623b·cb20··s.=W..4...a.b;.· | |||
00000490:·cb60·3c78·518c·6910·701e·1d6d·d922·8411··.`<xQ.i.p..m.".. | |||
000004a0:·461c·cd05·b639·7766·24cb·6078·9071·6669··F....9wf$.`x.qfi | |||
000004b0:·dc21·b504·3618·2c46·2180·79d9·7b7e·11b3··.!..6.,F!.y.{~.. | |||
000004c0:·c5bc·c0c4·2c60·6295·eab5·4c1c·8eaa·7a9c··....,`b...L...z. | |||
000004d0:·9158·e863·dba7·9818·5f2f·3473·940d·c932··.X.c...._/4s...2 | |||
000004e0:·987d·ca12·eed0·c85e·fcad·67b9·7450·3619··.}.....^..g.tP6. | |||
000004f0:·2acb·6002·439f·04c7·b5a5·3ad7·9c4f·beba··*.`.C.....:..O.. | |||
00000500:·173f·712b·17e5·cf8a·e2ee·36ce·249b·f314··.?q+......6.$... | |||
00000510:·b3c5·421b·25a4·bde7·c96a·32bc·a249·2a9a··..B.%....j2..I*. | |||
00000520:·0c77·b873·a8d8·a729·f664·4193·2d4d·b6a0··.w.s...).dA.-M.. | |||
00000530:·c970·eac4·2d8b·6ba6·a049·2f2c·2e2f·4d56··.p..-.k..I/,./MV | |||
00000540:·29d2·2491·26c3·9626·b7e0·185e·a89a·6469··).$.&..&...^..di | |||
00000550:·1868·326a·b201·ed88·d3ae·a000·db51·bc34··.h2j.........Q.4 | |||
00000560:·29ba·4871·2866·8b85·2368·7223·10a3·a5ef··).Hq(f..#hr#.... | |||
00000570:·7141·9068·1288·2675·b40c·3419·ce24·71cb··qA.h..&u..4..$q. | |||
00000580:·3295·6872·4efb·438a·3fa4·a84d·d9ab·74e5··2.hrN.C.?..M..t. | |||
00000590:·f887·9ec7·4d6c·4419·ee59·4493·48e6·114d··....MlD..YD.H..M | |||
000005a0:·7a79·2009·239a·f422·9a1c·82c4·0f4d·fed0··zy·.#..".....M.. | |||
000005b0:·46f0·8902·0588·267f·6872·1aa0·c907·3419··F.....&.hr....4. | |||
000005c0:·02d1·e411·3f34·b903·d098·7880·4694·5ba2··....?4....x.F.[. | |||
000005d0:·dc22·cab0·8850·018d·a789·0e07·a488·8414··."...P.......... | |||
000005e0:·73cc·160b·354d·ee03·62d4·de47·57df·45f0··s...5M..b..GW.E. | |||
000005f0:·25ca·2e51·ca11·651b·51a6·1165·3851·71cb··%..Q..e.Q..e8Qq. | |||
00000600:·32c7·1c51·ce79·8103·a4e8·0029·5a89·d962··2..Q.y.....)Z..b | |||
00000610:·a1fb·e74a·b1bf·2808·7e64·8b0d·b1bd·370c··...J..(.~d....7. | |||
00000620:·b571·b7ab·d9e1·9e65·4409·c034·234a·2f73··.q.....eD..4#J/s | |||
00000630:·9621·0416·5176·d100·035d·a2c4·22ca·4945··.!..Qv...]..".IE | |||
00000640:·945c·4419·7689·3208·2ca2·dc50·1c50·8096··.\D.v.2.,..P.P.. | |||
00000650:·287d·88f2·8828·b768·9171·a288·b8e2·0702··(}...(.h.q...... | |||
00000660:·03f8·2045·0048·d115·b3c5·422e·516e·0362··..·E.H....B.Qn.b | |||
00000670:·d41f·3403·4629·040e·5106·4559·1465·3851··..4.F)..Q.EY.e8Q | |||
00000680:·db0c·22ca·3961·33cc·01a3·a463·6ea4·3c60··..".9a3....cn.<` | |||
00000690:·221d·30d1·c66c·b1f0·8728·774e·0131·bebe··".0..l...(wN.1.. | |||
000006a0:·89cd·d197·1087·70e7·1025·5194·58a2·0ce7··......p..%Q.X... | |||
000006b0:·296e·59c0·9836·44e9·e584·4dc3·9c22·36e7··)nY..6D...M.."6. | |||
000006c0:·0b51·ce10·6548·14e5·0f32·e228·b70a·5172··.Q..eH...2.(..Qr | |||
000006d0:·89cd·39e1·7883·284a·1ce5·9c23·8ed7·0bcd··..9.x.(J...#.... | |||
000006e0:·c036·6983·71f1·3227·1b6a·0045·49da·806c··.6i.q.2'.j.EI..l | |||
000006f0:·473d·c838·7380·b012·250c·16c3·328f·bc4c··G=.8s...%...2..L | |||
00000700:·34c6·8089·60c0·442f·668b·85ac·2837·0131··4...`.D/f...(7.1 | |||
00000710:·bea6·8f39·219b·0e58·b827·019b·0851·86a7··...9!..X.'...Q.. | |||
00000720:·0964·9ba7·397d·a29c·734e·8912·4a94·a7a9··.d..9}..sN..J... | |||
00000730:·c036·4f39·7b4e·2eb6·38cd·19b7·2c73·ce49··.6O9{N..8...,s.I | |||
00000740:·c096·45ce·9e4b·f63c·4dd8·69ee·2023·6973··..E..K.<M.i.·#is | |||
00000750:·2224·94ab·9ab6·aefe·a8db·5b35·c5ef·baac··"$........[5.... | |||
00000760:·2854·53fc·5dcd·9fc4·dd7d·f830·e9fa·faa1··(TS.]....}.0.... | |||
00000770:·9aed·bb8a·de5f·e52f·dafa·b0cb·f3aa·ee71··....._./.......q | |||
00000780:·3701·bdbd·3c3f·7eb5·afae·fe1c·642b·beab··7...<?~.....d+.. | |||
00000 | 00000240:·b694·254b·4066·713a·09ef·52ef·f58a·7ea8··..%K@fq:..R...~. | ||
00000250:·2b8f·8e92·39aa·fc69·e33e·c31d·e209·676c··+...9..i.>....gl | |||
00000260:·807c·4bbe·ffd1·9604·3691·dd57·6944·d2ee··.|K.....6..WiD.. | |||
00000270:·a23f·5967·336f·668d·08e2·51e1·15f1·6154··.?Yg3of...Q...aT | |||
00000280:·2f20·190f·398b·a257·5d23·476d·b8b2·0560··/·..9..W]#Gm...` | |||
00000290:·025c·0215·023d·3448·acea·75fa·4709·92cc··.\...=4H..u.G... | |||
000002a0:·0927·f4de·d7dd·d7ea·8b6a·c61f·f778·d5bd··.'.......j...x.. | |||
000002b0:·adad·ef2c·9013·b082·2849·c017·e3b7·016d··...,....(I.....m | |||
000002c0:·826e·5d75·4fc4·5d8f·b5ca·b11f·1428·8109··.n]uO.]......(.. | |||
000002d0:·46d7·6be1·2fba·2b22·8eea·1f14·d8c0·4f0c··F.k./.+"......O. | |||
000002e0:·dfd7·bf56·adbb·d25f·9513·7840·9459·3afb··...V..._..x@.Y:. | |||
000002f0:·ddd6·4a5f·1f1b·1080·284f·8863·db6e·6c1b··..J_....(O.c.nl. | |||
00000300:·6976·c5c5·694a·e504·2282·45db·7f7d·4398··iv..iJ..".E..}C. | |||
00000310:·aeba·ead1·22db·9303·12e2·c6b6·6533·8d0d··....".......e3.. | |||
00000320:·28ca·04a0·1f5a·deab·ad55·ebae·3acb·4301··(....Z...U..:.C. | |||
00000330:·1806·8f4d·36d3·d84a·b8f8·5758·c558·b5a8··...M6..J..WX.X.. | |||
00000340:·42c9·01cf·78b2·e96c·16bf·d614·b6f2·287e··B...x..l......(~ | |||
00000350:·5dbd·95bd·2b8b·a911·ca7b·51ee·7ab0·c3ad··]...+....{Q.z... | |||
00000360:·b3a9·e6cc·12c7·b627·5108·5820·cdb6·6c06··.......'Q.X·..l. | |||
00000370:·6db2·124d·a914·73c2·e3cf·abb4·b5d2·f873··m..M..s........s | |||
00000380:·56a1·c02f·bea4·60b3·6426·8aae·f6ab·01b9··V../..`.d&...... | |||
00000390:·d8c9·af63·ac24·6016·5586·6cc5·3a2b·0137··...c.$`.U.l.:+.7 | |||
000003a0:·15e0·b665·ddbf·ee4f·0d98·b49d·e0de·5e9f··...e...O......^. | |||
000003b0:·9a9f·10ec·ad1a·7695·8046·4cd1·b67e·51d5··......v..FL..~Q. | |||
000003c0:·d4da·8031·ccc9·c386·34c2·a461·db30·6c32··...1....4..a.0l2 | |||
000003d0:·2b66·9b86·6dcb·584e·9ccc·8049·1b07·2a14··+f..m.XN...I..*. | |||
000003e0:·3403·26ed·2454·d34a·8fce·d5ab·018f·4aa8··4.&.$T.J......J. | |||
000003f0:·f264·9b6d·1fbd·8aad·403d·25a0·a672·4113··.d.m....@=%..rA. | |||
00000400:·9808·1630·d1b6·2601·bd0d·69aa·54da·561a··...0..&...i.T.V. | |||
00000410:·d0b5·21cd·39c2·0dd8·41d1·f47a·ad24·600a··..!.9...A..z.$`. | |||
00000420:·1bd2·9c56·f0d5·dc87·75b6·975b·d95b·b37d··...V....u..[.[.} | |||
00000430:·7df4·1880·276c·4873·4ab1·474f·036a·79b2··}...'lHsJ.GO.jy. | |||
00000440:·e960·eae2·6a40·291b·d254·cd39·5573·feac··.`..j@)..T.9Us.. | |||
Max diff block lines reached; -1/29182 bytes (-0.00%) of diff not shown. |
Offset 32, 258 lines modified | Offset 32, 258 lines modified | ||
000001f0:·d4d0·f117·c7a0·a026·5374·646c·6962·9030··.......&Stdlib.0 | 000001f0:·d4d0·f117·c7a0·a026·5374·646c·6962·9030··.......&Stdlib.0 | ||
00000200:·e8d9·af45·8547·c450·80a7·1b9a·6eae·d658··...E.G.P....n..X | 00000200:·e8d9·af45·8547·c450·80a7·1b9a·6eae·d658··...E.G.P....n..X | ||
00000210:·a0a0·3843·616d·6c69·6e74·6572·6e61·6c46··..8CamlinternalF | 00000210:·a0a0·3843·616d·6c69·6e74·6572·6e61·6c46··..8CamlinternalF | ||
00000220:·6f72·6d61·7442·6173·6963·7390·302e·f2d9··ormatBasics.0... | 00000220:·6f72·6d61·7442·6173·6963·7390·302e·f2d9··ormatBasics.0... | ||
00000230:·1ced·81f6·c72f·852b·ab8a·b406·e040·8495··...../.+.....@.. | 00000230:·1ced·81f6·c72f·852b·ab8a·b406·e040·8495··...../.+.....@.. | ||
00000240:·a6be·0000·0004·0000·0002·0000·0005·0000··................ | 00000240:·a6be·0000·0004·0000·0002·0000·0005·0000··................ | ||
00000250:·0005·a090·4040·4361·6d6c·3139·3939·5430··....@@Caml1999T0 | 00000250:·0005·a090·4040·4361·6d6c·3139·3939·5430··....@@Caml1999T0 | ||
00000260:·3334·8495·a6bd·0f9f·1 | 00000260:·3334·8495·a6bd·0f9f·13c9·6e89·54ab·70a7··34........n.T.p. | ||
00000270:· | 00000270:·5f28·b52f·fd00·5855·7c00·4acd·6c2b·4b30··_(./..XU|.J.l+K0 | ||
00000280:·2272·3aff·ffff·439a·a0e9·05f0·f74c·3daa··"r:...C......L=. | |||
00000290:·0dbf·0074·3b69·442a·76f6·0c4e·dff9·6688··...t;iD*v..N..f. | |||
000002a0:·88dc·8e26·b2d5·1142·2469·db2d·b4e6·a98e··...&...B$i.-.... | |||
000002b0:·54cc·a1a1·e753·17f1·de42·3de8·5a4b·e29d··T....S...B=.ZK.. | |||
000002c0:·2d45·23db·9ea4·dcd4·02b1·0282·02a7·02b7··-E#............. | |||
000002d0:·7113·99ae·ba14·44a5·b1d2·112a·d805·63ba··q.....D....*..c. | |||
000002e0:·2988·ea46·c127·c682·b658·a6bd·5e31·8baf··)..F.'...X..^1.. | |||
000002f0:·ccc6·7017·24dc·91bf·9730·87a1·1dc2·2909··..p.$....0....). | |||
00000300:·93ef·2b66·c97c·1984·bdc4·a926·239c·0360··..+f.|.....&#..` | |||
00000310:·a232·280b·2d54·7e91·f93c·dd64·84fb·699a··.2(.-T~..<.d..i. | |||
00000320:·0a33·cdd2·5eb2·fcd2·b6a5·164e·88bf·530c··.3..^......N..S. | |||
00000330:·dbb2·eca5·7396·219c·fb77·b0c5·dc59·cc4d··....s.!..w...Y.M | |||
00000340:·95db·32fb·b4b7·410b·a707·178d·2dcd·f614··..2...A.....-... | |||
00000350:·7aaf·d805·3d28·acc4·0417·4716·73df·ea14··z...=(....G.s... | |||
00000360:·b3cb·1425·b834·be58·f0ca·5eb2·fc8a·6129··...%.4.X..^...a) | |||
00000370:·4b70·64dc·99b7·3ac5·e420·87d6·cc6b·0a76··Kpd...:..·...k.v | |||
00000380:·a16e·1426·383b·33c8·c4a1·d5da·abbd·402f··.n.&8;3.......@/ | |||
00000390:·b4fa·822f·9c5f·38f4·a28c·30d8·e30e·325d··.../._8...0...2] | |||
000003a0:·b53a·6d31·77bd·56e4·50e5·f6ad·7230·6fab··.:m1w.V.P...r0o. | |||
000003b0:·23ab·954f·0736·b481·d793·bd74·6845·d165··#..O.6.....thE.e | |||
000003c0:·845b·e289·0f86·8480·a6e8·8b6d·4870·4724··.[.........mHpG$ | |||
000003d0:·8956·4fc1·92e0·e62c·3de1·1b6a·3108·8703··.VO....,=..j1... | |||
000003e0:·106c·e6be·c52c·2d37·21c1·e1d9·6f3e·8b73··.l...,-7!...o>.s | |||
000003f0:·1624·4d56·70be·ba96·8370·6bae·687c·2dd4··.$MVp....pk.h|-. | |||
00000400:·d51e·1ec2·8950·5998·545a·6a09·739f·9937··.....PY.TZj.s..7 | |||
00000410:·39b9·5dc2·dc37·1812·1210·0ecf·46e3·8909··9.]..7......F... | |||
00000420:·0384·c3b3·dbb8·2a93·9216·2f88·0407·c5c1··......*.../..... | |||
00000430:·d2cc·ed2c·fa35·65c6·0383·70e1·064e·9e60··...,.5e...p..N.` | |||
00000440:·2c11·34d1·f826·c18d·9954·d5e5·d2f8·1ec1··,.4..&...T...... | |||
00000450:·c926·55ad·5a88·70b0·28da·cba0·2c09·ce83··.&U.Z.p.(...,... | |||
00000460:·4955·2b53·98f5·670b·b588·f3f7·c2f9·8ad8··IU+S..g......... | |||
00000470:·6a29·2b01·0ecc·a4aa·950a·96b2·4770·4e13··j)+.........GpN. | |||
00000480:·4ae8·cd3e·2438·2993·aaba·aaab·562d·2f6b··J..>$8).....V-/k | |||
00000490:·0b35·121c·9e7d·6552·dd3c·b022·e8c9·92e0··.5...}eR.<.".... | |||
000004a0:·f0ec·36b5·4a01·7386·21c1·5d30·a96a·ad41··..6.J.s.!.]0.j.A | |||
000004b0:·66ad·b5ee·3ac2·aeae·3a5d·7583·baca·73c7··f...:...:]u...s. | |||
000004c0:·77f5·96db·2b0b·562b·9f2a·535e·187a·4970··w...+.V+.*S^.zIp | |||
000004d0:·150e·9c38·7176·f8e1·87ba·c0ac·75af·9aac··...8qv......u... | |||
000004e0:·563e·4466·2532·6b2d·221d·8bce·37f8·9939··V>Df%2k-"...7..9 | |||
000004f0:·1d3a·d7a1·f32b·17a4·198d·812d·7d47·b00b··.:...+.....-}G.. | |||
00000500:·7ead·dc48·8d74·06a9·47ad·f6be·0c82·1e9d··~..H.t..G....... | |||
00000510:·f268·3486·3d3a·055a·a82b·86b6·cf86·54d4··.h4.=:.Z.+....T. | |||
00000520:·9f1d·03cb·d486·19ac·4959·2ae2·7cf5·876d··........IY*.|..m | |||
00000530:·326a·453b·e342·6990·2067·8cac·0df4·a028··2jE;.Bi.·g.....( | |||
00000540:·c51e·9565·6acd·5c91·82de·77c5·a919·137d··...ej.\...w....} | |||
00000550:·0202·a5b1·e2bc·90db·7bdf·5c01·cc40·56b5··........{.\..@V. | |||
00000560:·be2c·cef8·1594·1bb5·94d5·4620·cdfb·32d1··.,........F·..2. | |||
00000570:·1e71·18f7·4835·06b6·9484·6495·b45a·f904··.q..H5....d..Z.. | |||
00000580:·451d·9aee·2b1a·345c·bcbf·798f·fdcc·9c98··E...+.4\..y..... | |||
00000590:·7731·ef9f·9830·548b·1e38·05a3·d842·dda7··w1...0T..8...B.. | |||
000005a0:·ace9·9010·6da2·da06·d5fd·5893·7cb2·7952··....m.....X.|.yR | |||
000005b0:·cb74·5f05·f381·d67d·071d·d83d·99ee·c725··.t_....}...=...% | |||
000005c0:·ddf7·20eb·c278·b96d·259a·b42c·e99e·0720··..·..x.m%..,...· | |||
000005d0:·c274·5990·de9f·bc7b·3f33·376e·e97e·1be0··.tY....{?37n.~.. | |||
000005e0:·fe7a·8556·8bf7·c986·4eac·58e9·be5a·b1d2··.z.V....N.X..Z.. | |||
000005f0:·7dad·4e5e·8ee9·724c·7f89·31fb·859e·1529··}.N^..rL..1....) | |||
00000600:·082a·b151·74f6·dd59·14c5·17f4·6019·7c12··.*.Qt..Y....`.|. | |||
00000610:·6dec·42e5·9089·6a80·d4fd·92ee·91ba·af48··m.B...j........H | |||
00000620:·1d52·f7b5·c231·7d8a·e962·7e66·8e35·9d35··.R...1}..b~f.5.5 | |||
00000630:·1dcc·13be·b00c·3e61·2bcb·545f·f142·cd9e··......>a+.T_.B.. | |||
00000640:·6ed8·caba·a565·16c4·9786·f682·a167·29b6··n....e.......g). | |||
00000650:·56a4·5331·cf86·a047·75c6·54a4·5116·533b··V.S1...Gu.T.Q.S; | |||
00000660:·c3b6·fcd1·2910·676a·a38a·40d0·a334·3bd3··....).gj..@..4;. | |||
00000670:·f409·5f7c·3d8d·f317·daa7·d003·a947·b3a6··.._|=........G.. | |||
00000680:·94d2·20fa·b335·d186·31ab·6d35·5afe·a80d··..·..5..1.m5Z... | |||
00000690:·3d3b·d314·043d·5a64·6957·53f1·ceb8·503c··=;...=ZdiWS...P< | |||
000006a0:·42dd·bb6a·20fe·60f8·b7e1·2fd4·7d15·12ea··B..j·.`.../.}... | |||
000006b0:·bed6·9e99·85f4·2ca4·7f39·63f4·846f·e8cd··......,..9c..o.. | |||
000006c0:·443a·d337·8a36·61b1·e6aa·7b36·fc03·e8bc··D:.7.6a...{6.... | |||
000006d0:·fbb1·42f1·c9a6·0ad0·7dad·57f8·20dd·07e9··..B.....}.W.·... | |||
000006e0:·4e19·bc64·32c8·c39f·aafa·e15f·f586·1b3d··N..d2......_...= | |||
000006f0:·fccf·c8c3·1f0f·ff91·0d7f·1de6·e8e1·4d9b··..............M. | |||
00000700:·9d84·7f0c·fe6f·fc71·3b98·7183·1ae9·54d2··.....o.q;.q...T. | |||
00000710:·bbfc·ccdc·1886·ff2e·c01d·4646·8912·fe6e··..........FF...n | |||
00000720:·fca3·58c2·7fac·2e9f·6cec·d8f1·aff5·5646··..X.....l.....VF | |||
00000730:·7a19·e94d·145f·2ac6·9ab9·6218·2a7a·d4d2··z..M._*...b.*z.. | |||
00000740:·bc26·8a24·e53f·ee1a·c71f·4c35·c2bf·8a87··.&.$.?....L5.... | |||
00000750:·2dc7·7fc7·f187·e33f·baf1·cf01·881a·ed3e··-......?.......> | |||
00000760:·b9aa·e8cf·e46f·648e·1587·3639·c43c·900e··.....od...69.<.. | |||
00000770:·46fa·969f·991b·d5f8·6f21·eeb0·5790·f657··F.......o!..W..W | |||
00000780:·6096·e03f·e56f·f31f·6bf5·c9a6·9ae0·5feb··`..?.o..k....._. | |||
00000790:·9796·f496·74a6·9f99·1ba9·9118·0b73·14c5··....t........s.. | |||
000007a0:·9706·0599·5f8e·0ded·7157·32fe·09d4·9a7f··...._...qW2..... | |||
000007b0:·9557·03e8·1fc6·bfd2·c9d5·4ac6·7f8c·ffa8··.W........J..... | |||
000007c0:·c05c·f36e·fde5·e46a·2d1a·d2f8·1eb9·ed3b··.\.n...j-......; | |||
000007d0:·6f72·aa6a·4d72·4481·49c3·7b75·ddf0·0ec6··or.jMrD.I.{u.... | |||
000007e0:·ff76·cba9·c979·0fdc·aa2a·9caa·4a19·909e··.v...y...*..J... | |||
000007f0:·80f4·a59f·991b·b5f8·6f02·dcad·992b·22d9··........o....+". | |||
00000800:·7204·0cb0·fef0·f13f·7cfc·0c12·1ff2·c708··r......?|....... | |||
00000810:·447e·151b·75fa·90ef·061f·f2f7·903f·c621··D~..u........?.! | |||
00000820:·1f0a·3bfc·d8a3·0df9·6cc8·1f5d·5509·f96a··..;.....l..]U..j | |||
00000830:·e4bf·f0c4·1977·cc01·4719·3e3e·868f·8770··.....w..G.>>...p | |||
00000840:·47fe·2e52·b484·fc9b·7c3b·4cc8·1f2b·159f··G..R....|;L..+.. | |||
00000850:·6ca4·9042·7ead·77e8·f838·1d1f·3753·54f3··l..B~.w..8..7ST. | |||
00000860:·6c15·fa44·8e7c·3747·c8af·aa55·0e9d·39f2··l..D.|7G...U..9. | |||
00000870:·7790·233f·4e2e·881c·136f·e4bb·913f·dee4··w.#?N....o...?.. | |||
00000880:·3bb1·9120·224e·0f3e·eec6·c7a7·6490·bf89··;..·"N.>....d... | |||
00000890:·d43c·3b4b·1393·cf80·fc1f·9946·7e4d·9346··.<;K.......F~M.F | |||
000008a0:·7ead·b89a·8fd7·7c3c·8a1a·d53c·3b8b·d999··~.....|<...<;... | |||
000008b0:·d699·8b91·955f·447e·4dca·e48f·758a·4f36··....._D~M...u.O6 | |||
000008c0:·6564·19f9·b562·1fb7·c0c7·6d3f·33e7·468f··ed...b....m?3.F. | |||
000008d0:·bbd1·e33a·b4d1·ef82·dfd4·4771·a662·2d67··...:......Gq.b-g | |||
000008e0:·908a·5796·e94c·d76c·8cd2·6cb4·2be5·d162··..W..L.l..l.+..b | |||
000008f0:·d82b·1a02·8542·9bb6·5be8·1996·93fc·28aa··.+...B..[.....(. | |||
00000900:·27bf·aab5·4418·f94a·a493·125e·e46f·25f9··'...D..J...^.o%. | |||
00000910:·db02·f99b·2a57·6b75·92df·2509·a636·d4a8··....*Wku..%..6.. | |||
00000920:·229f·0a12·50ce·28a3·22c9·af40·fe58·44fe··"...P.(."..@.XD. | |||
00000930:·114e·2419·77a8·aa6a·f582·8b22·f28d·6822··.N$.w..j..."..h" | |||
00000940:·486a·4145·8f47·d1e3·e2cf·cc8d·0dc8·df08··HjAE.G.......... | |||
00000950:·b88b·dad3·e26b·0c2c·0f0d·91ef·aa2e·ff8a··.....k.,........ | |||
00000960:·eea5·1822·bf0e·915f·6b9d·353d·bea6·c7cb··..."..._k.5=.... | |||
00000970:·242d·3d65·2cf4·0908·3409·ab93·6fa7·7b29··$-=e,...4...o.{) | |||
00000980:·7fac·527c·b2a9·5540·baaf·aa75·8f22·f8e8··..R|..U@...u.".. | |||
00000990:·de8d·6e8f·eef5·20a2·8e19·6210·638e·1add··..n...·...b.c... | |||
000009a0:·ef2e·6a1a·dda3·d1fd·68a7·fb38·7958·4861··..j.....h..8yXHa | |||
000009b0:·d717·d28c·3734·bac7·6b3d·9eb1·e87e·0f71··....74..k=...~.q | |||
000009c0:·1773·ad4e·9cee·5de8·5e85·3add·d73a·7570··.s.N..].^.:..:up | |||
000009d0:·8f7f·e971·dacf·ccf9·f1ee·c7fb·6ca8·9635··...q........l..5 | |||
Max diff block lines reached; -1/35120 bytes (-0.00%) of diff not shown. |
Offset 172, 395 lines modified | Offset 172, 395 lines modified | ||
00000ab0:·6115·3dd0·a419·8abf·e1a0·a028·4861·7368··a.=........(Hash | 00000ab0:·6115·3dd0·a419·8abf·e1a0·a028·4861·7368··a.=........(Hash | ||
00000ac0:·636f·6e73·9030·94bd·c6ac·3201·831c·154e··cons.0....2....N | 00000ac0:·636f·6e73·9030·94bd·c6ac·3201·831c·154e··cons.0....2....N | ||
00000ad0:·2be6·acee·cd5e·a0a0·3843·616d·6c69·6e74··+....^..8Camlint | 00000ad0:·2be6·acee·cd5e·a0a0·3843·616d·6c69·6e74··+....^..8Camlint | ||
00000ae0:·6572·6e61·6c46·6f72·6d61·7442·6173·6963··ernalFormatBasic | 00000ae0:·6572·6e61·6c46·6f72·6d61·7442·6173·6963··ernalFormatBasic | ||
00000af0:·7390·302e·f2d9·1ced·81f6·c72f·852b·ab8a··s.0......../.+.. | 00000af0:·7390·302e·f2d9·1ced·81f6·c72f·852b·ab8a··s.0......../.+.. | ||
00000b00:·b406·e040·8495·a6be·0000·0004·0000·0002··...@............ | 00000b00:·b406·e040·8495·a6be·0000·0004·0000·0002··...@............ | Diff chunk too large, falling back to line-by-line diff (388 lines added, 388 lines removed) | |
00000b10:·0000·0005·0000·0005·a090·4040·4361·6d6c··..........@@Caml | 00000b10:·0000·0005·0000·0005·a090·4040·4361·6d6c··..........@@Caml | ||
00000b20:·3139·3939·5430·3334·8495·a6bd·0fb0·2 | 00000b20:·3139·3939·5430·3334·8495·a6bd·0fb0·22f2··1999T034......". | ||
00000b30:· | 00000b30:·3e94·36d1·7bcf·5028·b52f·fd00·58cd·c000··>.6.{.P(./..X... | ||
00000b40:· | 00000b40:·1a2e·2d42·5410·204a·d9e6·03bc·5635·585d··..-BT.·J....V5X] | ||
00000b50:· | 00000b50:·361b·1d31·ace3·90ae·dcae·1e65·ac58·060f··6..1.......e.X.. | ||
00000b60:· | 00000b60:·50cf·bc1e·89c6·85f1·1074·4a54·4d10·ff4b··P........tJTM..K | ||
00000b70:· | 00000b70:·631f·c5ae·0246·eaad·dd0c·e0df·8d00·5e4a··c....F........^J | ||
00000b80:· | 00000b80:·e0f5·d849·c1c0·34d3·be94·00af·3e12·5412··...I..4.....>.T. | ||
00000b90:· | 00000b90:·313a·c468·7752·a3d4·02ee·0349·04f3·030e··1:.hwR.....I.... | ||
00000ba0:· | 00000ba0:·efbe·4e7b·901e·8543·b4ff·11ed·6ffc·75da··..N{...C....o.u. | ||
00000bb0:· | 00000bb0:·9768·7f53·002a·8a88·b482·de8c·a6fd·cd69··.h.S.*.........i | ||
00000bc0:· | 00000bc0:·c3b4·7f3c·ed49·9cb5·d7d0·fe2c·b4bf·6f8c··...<.I.....,..o. | ||
00000bd0:·a | 00000bd0:·a6fd·4dbb·9a23·dadf·3767·bcb9·1cdf·9cf6··..M..#..7g...... | ||
00000be0:· | 00000be0:·305e·d869·7f33·148d·eeab·20b3·172e·4bfb··0^.i.3....·...K. | ||
00000bf0:· | 00000bf0:·a81e·85ef·a285·addd·d65a·3e63·0cfb·d0fe··.........Z>c.... | ||
00000c00:· | 00000c00:·e620·2d36·2ae5·bc22·327b·f18c·0067·1bde··.·-6*.."2{...g.. | ||
00000c10:· | 00000c10:·b4c7·ed77·e276·1880·4632·eddf·e58d·cbd1··...w.v..F2...... | ||
00000c20:· | 00000c20:·6854·c342·fbfb·369b·152e·b4b7·d0fe·0ab3··hT.B..6......... | ||
00000c30:·56 | 00000c30:·5690·8b6a·0d15·6917·0a73·dafb·d4a3·f0a7··V..j..i..s...... | ||
00000c40:· | 00000c40:·9042·ec3b·6213·f119·6338·4d7b·7e9a·d1ad··.B.;b...c8M{~... | ||
00000c50:· | 00000c50:·15f4·63da·5168·1fd3·3e06·09b1·8d10·3bcb··..c.Qh..>.....;. | ||
00000c60:· | 00000c60:·678c·db88·dd46·6c2b·9f31·8677·6f34·92d0··g....Fl+.1.wo4.. | ||
00000c70:· | 00000c70:·de65·37a5·1dfe·11da·9bb4·c3f9·770d·8c36··.e7.........w..6 | ||
00000c80:· | 00000c80:·46b4·fc5f·dabd·da07·d00e·ffae·47a1·0d4f··F.._........G..O | ||
00000c90:· | 00000c90:·d69e·26c5·0411·da83·62b4·b46b·d0fe·68f1··..&.....b..k..h. | ||
00000ca0:· | 00000ca0:·7f96·f600·94e0·4111·43a8·e9d0·9bc1·be4a··......A.C......J | ||
00000cb0:· | 00000cb0:·3b95·76d8·ab9d·84b0·3a74·1ed8·2ea5·1dde··;.v.....:t...... | ||
00000cc0:· | 00000cc0:·7d03·a38d·d168·34fb·30de·bff6·b3f8·7f8e··}....h4.0....... | ||
00000cd0:· | 00000cd0:·106e·d09b·6d8c·ef59·da9b·a5bd·9c1c·c4a6··.n..m..Y........ | ||
00000ce0:· | 00000ce0:·416c·2c9f·3186·9db4·67a0·6e94·3dbd·826b··Al,.1...g.n.=..k | ||
00000cf0:· | 00000cf0:·ef28·e379·e1fc·3946·a111·de7d·9611·1957··.(.y..9F...}...W | ||
00000d00:· | 00000d00:·0af4·b95a·4664·2f54·cf09·0afc·f2ad·411e··...ZFd/T......A. | ||
00000d10:· | 00000d10:·0a96·b6ec·570f·6579·3e54·4d7f·a84f·3532··....W.ey>TM..O52 | ||
00000d20:· | 00000d20:·c1f0·0712·7665·5934·69c8·83c9·9af2·7ca8··....veY4i.....|. | ||
00000d30:· | 00000d30:·94de·0ae4·e2b5·635a·ba21·d392·b015·f863··......cZ.!.....c | ||
00000d40:· | 00000d40:·51b0·9527·a577·ba5a·ba21·91d6·18bb·06d1··Q..'.w.Z.!...... | ||
00000d50:·2 | 00000d50:·20ef·b7f2·dcaf·acdc·1047·fb11·9ffa·b5fe···........G...... | ||
00000d60:· | 00000d60:·78ee·8a95·34fc·696f·5267·cc73·c64c·1617··x...4.ioRg.s.L.. | ||
00000d70:· | 00000d70:·e9ea·b9e7·556e·e8ed·5bae·8a06·bfa0·b027··....Un..[......' | ||
00000d80:· | 00000d80:·cf97·024f·3075·ca69·48c5·9c31·bfef·c368··...O0u.iH..1...h | ||
00000d90:· | 00000d90:·44c8·d190·8924·2830·fdf1·7e2b·cfa7·422d··D....$(0..~+..B- | ||
00000da0:· | 00000da0:·0d91·3062·7cdf·8751·c9ca·a218·f0c6·b852··..0b|..Q.......R | ||
00000db0:· | 00000db0:·b034·88d3·9007·aaf1·6a54·59d4·754f·2f1e··.4......jTY.uO/. | ||
00000dc0:· | 00000dc0:·f064·5137·05f2·d495·a7b2·6798·0e18·3c7b··.dQ7......g...<{ | ||
00000dd0:· | 00000dd0:·2b05·19ce·57e3·eeff·489d·313f·1855·4c16··+...W...H.1?.UL. | ||
00000de0:· | 00000de0:·e7f7·7fe3·5b1b·aad5·ca26·28fb·054c·cf1f··....[....&(..L.. | ||
00000df0:· | 00000df0:·cf65·d1b6·dde9·8633·e070·4112·9290·1037··.e.....3.pA....7 | ||
00000e00:· | 00000e00:·55bf·8886·313c·b5a8·3bc6·5534·44cb·82a2··U...1<..;.U4D... | ||
00000e10:· | 00000e10:·a6ac·db1a·0dcd·b490·66cc·af0f·0dae·5a44··........f.....ZD | ||
00000e20:· | 00000e20:·433a·f9ac·87aa·2b16·9116·95ba·a6ae·d76a··C:....+........j | ||
00000e30:· | 00000e30:·342c·53e5·aa29·0a96·baa7·9a34·d4f2·1f86··4,S..).....4.... | ||
00000e40:·c | 00000e40:·c873·1973·96f1·3d8b·3397·31bf·5c13·4c20··.s.s..=.3.1.\.L· | ||
00000e50:· | 00000e50:·34a4·93bd·9c4e·9808·0de9·e4b2·dd0f·9972··4....N.........r | ||
00000e60:· | 00000e60:·db14·4834·ec40·4916·d518·672c·9737·86c1··..H4.@I...g,.7.. | ||
00000e70:· | 00000e70:·0934·1a6e·70c5·e381·0cac·74ec·70d5·b468··.4.np.....t.p..h | ||
00000e80:·1 | 00000e80:·1836·92fd·6ee7·aae9·d0b0·1dc9·fe89·280d··.6..n.........(. | ||
00000e90:· | 00000e90:·d720·eeb9·027f·4543·2923·d9ff·1076·757b··.·....EC)#...vu{ | ||
00000ea0:· | 00000ea0:·5fac·dbaa·6b8f·a7ae·69ab·a2ae·18da·6308··_...k...i.....c. | ||
00000eb0:· | 00000eb0:·6524·fb8f·52c5·d0a1·618f·6a04·c29e·5d3d··e$..R...a.j...]= | ||
00000ec0:· | 00000ec0:·a261·9191·ec77·7f35·fe13·1efa·c5ba·4443··.a...w.5......DC | ||
00000ed0:· | 00000ed0:·3a39·c948·f657·e3ff·fb04·6d81·e7af·6848··:9.H.W....m...hH | ||
00000ee0:· | 00000ee0:·2797·fd43·01d7·958b·6828·6424·fbff·1dd6··'..C....h(d$.... | ||
00000ef0:· | 00000ef0:·7845·ed9f·87aa·abca·33ca·bf41·fe1d·d5b8··xE......3..A.... | ||
00000f00:·fb | 00000f00:·fbab·afd5·69c2·c57f·e32c·3576·b2ec·5934··....i....,5v..Y4 | ||
00000f10:· | 00000f10:·7c33·3315·5428·63e6·8bc6·ff5c·db11·34fe··|33.T(c....\..4. | ||
00000f20:· | 00000f20:·eeff·7b14·feff·e718·e1fc·ffff·eedf·ff9a··..{............. | ||
00000f30:· | 00000f30:·8f5a·adfc·5fc0·0c62·bb11·fbca·678c·e11b··.Z.._..b....g... | ||
00000f40:· | 00000f40:·63de·fd74·bb41·66b5·a55a·adcc·3b21·9ce1··c..t.Af..Z..;!.. | ||
00000f50:· | 00000f50:·2e69·2f90·1e85·ff82·cf18·c362·8f11·bb2a··.i/........b...* | ||
00000f60:· | 00000f60:·0506·752e·aad5·6be2·4a81·bd5c·0ce3·c60c··..u...k.J..\.... | ||
00000f70:· | 00000f70:·c445·37ea·35b6·e543·59d4·c766·2d99·d101··.E7.5..CY..f-... | ||
00000f80:· | 00000f80:·0367·98cc·45b5·9e88·6a4f·b55a·1956·744f··.g..E...jO.Z.VtO | ||
00000f90:· | 00000f90:·415b·1e18·caf2·5657·0938·078d·a9d9·3075··A[....VW.8....0u | ||
00000fa0:· | 00000fa0:·936d·74a5·9b0b·8567·f18d·4a15·dd46·529a··.mt....g..J..FR. | ||
00000fb0:· | 00000fb0:·4aa6·1e99·5a89·2c71·2cdc·a029·a8d6·9050··J...Z.,q,..)...P | ||
00000fc0:· | 00000fc0:·7816·f7b4·d842·4577·7065·7fbc·2968·cb5b··x....BEwpe..)h.[ | ||
00000fd0:· | 00000fd0:·dda5·2847·3e4b·8d5b·6aa2·f6f9·0172·31c5··..(G>K.[j....r1. | ||
00000fe0:· | 00000fe0:·6f3d·4ad3·2875·0a4a·6df6·0b18·312a·9021··o=J.(u.Jm...1*.! | ||
00000ff0:·5 | 00000ff0:·45b7·dba6·40de·ea1e·752d·a0d4·4452·e749··E...@...u-..DR.I | ||
00001000:· | 00001000:·ea1b·3368·d450·c0c6·8d05·a2e8·6edd·3615··..3h.P......n.6. | ||
00001010:· | 00001010:·438d·a074·8992·d4bf·a4a6·8183·811c·0d98··C..t............ | ||
00001020:· | 00001020:·4142·5074·0381·278f·5d7f·473f·1649·7890··ABPt..'.].G?.Ix. | ||
00001030:· | 00001030:·1a09·a486·3144·5454·333a·7aa2·db45·5bae··....1DTT3:z..E[. | ||
00001040:· | 00001040:·afd6·08ad·d243·6a1e·52ff·2025·2929·2d31··.....Cj.R.·%))-1 | ||
00001050:· | 00001050:·39e1·9380·0e47·7dc3·51b3·c8e9·9a9c·1ca0··9....G}.Q....... | ||
00001060:· | 00001060:·d244·37f0·fc9a·8216·f5b6·b847·ed75·d4a4··.D7........G.u.. | ||
00001070:· | 00001070:·8e1d·3c7a·3cb0·8589·ee20·1a1c·e2b2·00e9··..<z<....·...... | ||
00001080:· | 00001080:·a889·8e7a·6c08·2290·80ca·12bc·3645·3a01··...zl.".....6E:. | ||
00001090:· | 00001090:·f0a4·a897·1475·1413·f8f8·6141·0599·82df··.....u....aA.... | ||
000010a0:·29 | 000010a0:·29d1·eda6·40af·b6e8·82d4·02a2·f641·d44b··)...@........A.K | ||
000010b0:· | 000010b0:·0079·0a22·042a·4a6a·8a2a·8f9b·baec·e995··.y.".*Jj.*...... | ||
000010c0:· | 000010c0:·c463·21d4·37a1·8640·95d5·1556·d610·2245··.c!.7..@...V.."E | ||
000010d0:· | 000010d0:·f0f0·949e·08b1·c66c·3566·3340·6bcb·0895··.......l5f3@k... | ||
000010e0:· | 000010e0:·2348·9228·4902·98fe·8c9c·fcb0·2647·abc9··#H.(I.......&G.. | ||
000010f0:· | 000010f0:·d139·d47a·0993·264e·9ef0·2eb8·d3ed·7506··.9.z..&N......u. | ||
00001100:· | 00001100:·879a·4001·8781·8e19·681a·4eae·1e98·d11f··..@.....h.N..... | ||
00001110:·2 | 00001110:·2df6·a13f·30a3·fbdc·7abd·73e8·7de3·478b··-..?0...z.s.}.G. | ||
00001120:· | 00001120:·a14c·a0db·075c·7f4c·96c0·0147·d380·a3e3··.L...\.L...G.... | ||
00001130:· | 00001130:·74a5·5130·18fd·3d8b·a500·832a·1229·d192··t.Q0..=....*.).. | ||
00001140:·1 | 00001140:·17b0·2cd0·1e2c·d06d·56af·296c·eb7e·8149··..,..,.mV.)l.~.I | ||
00001150:· | 00001150:·20a7·a4cc·0637·3a83·1bbd·264c·6c0c·830c···....7:...&Ll... | ||
00001160:·5 | 00001160:·a854·39a2·db6d·4f60·5292·2c47·6c74·111b··.T9..mO`R.,Glt.. | ||
00001170:· | 00001170:·6da6·c106·1c00·c04a·071e·5c31·4287·442c··m......J..\1B.D, | ||
00001180:· | 00001180:·ab46·57d5·6832·1f80·8025·0059·b4d4·4228··.FW.h2...%.Y..B( | ||
00001190:· | 00001190:·a2db·6dd9·f4a7·7424·53a1·d162·34fa·842d··..m...t$S..b4..- | ||
000011a0:· | 000011a0:·5c44·78bb·906d·8900·9291·3868·6634·9919··\Dx..m....8hf4.. | ||
000011b0:· | 000011b0:·1da6·d65e·0430·c297·016c·21a2·dba7·a63f··...^.0...l!....? | ||
000011c0:· | 000011c0:·a22d·15bc·c868·1164·7417·3061·4828·6108··.-...h.dt.0aH(a. | ||
000011d0:· | 000011d0:·25ad·1956·88d1·6631·3a04·3126·1000·02dd··%..V..f1:.1&.... | ||
000011e0:· | 000011e0:·68bb·ae5d·3da3·2215·e488·d137·6234·08b5··h..]=."....7b4.. | ||
000011f0:· | 000011f0:·3e21·0ba1·d8fc·3d8b·cb1e·b044·0486·1460··>!....=....D...` | ||
00001200:· | 00001200:·340a·30ba·835a·0fc7·90b1·d32d·7606·8f86··4.0..Z.....-v... | ||
00001210:· | 00001210:·4c21·c48b·fee1·4557·41a1·4c01·deb3·d800··L!....EWA.L..... | ||
00001220:· | 00001220:·75ba·5daf·95b7·94d5·c37c·d138·5eb4·580a··u.]......|.8^.X. | ||
00001230:·c0 | 00001230:·66ce·d0e1·a969·f008·0b02·1c2e·5a01·17cd··f....i......Z... | ||
00001240:· | 00001240:·a249·7380·0c3b·a0bb·7555·3488·02d1·2b34··.Is..;..uU4...+4 | ||
00001250:· | 00001250:·3340·5d06·a883·662a·bc67·f159·03ba·81a7··3@]...f*.g.Y.... | ||
00001260:· | 00001260:·9afa·d8b3·8764·b563·026a·24a0·4ed5·ac80··.....d.c.j$.N... | ||
00001270:· | 00001270:·0016·d630·a0fb·f74b·7d44·5545·d4f0·d332··...0...K}DUE...2 | ||
00001280:· | 00001280:·fc34·da82·0b2f·bc67·7102·d8cc·e976·d574··.4.../.gq....v.t | ||
Max diff block lines reached; -1/54040 bytes (-0.00%) of diff not shown. |
Offset 296, 999 lines modified | Offset 296, 998 lines modified | ||
00001270:·b5ee·abd2·a0a0·2653·7464·6c69·6290·30e8··......&Stdlib.0. | 00001270:·b5ee·abd2·a0a0·2653·7464·6c69·6290·30e8··......&Stdlib.0. | ||
00001280:·d9af·4585·47c4·5080·a71b·9a6e·aed6·58a0··..E.G.P....n..X. | 00001280:·d9af·4585·47c4·5080·a71b·9a6e·aed6·58a0··..E.G.P....n..X. | ||
00001290:·a038·4361·6d6c·696e·7465·726e·616c·466f··.8CamlinternalFo | 00001290:·a038·4361·6d6c·696e·7465·726e·616c·466f··.8CamlinternalFo | ||
000012a0:·726d·6174·4261·7369·6373·9030·2ef2·d91c··rmatBasics.0.... | 000012a0:·726d·6174·4261·7369·6373·9030·2ef2·d91c··rmatBasics.0.... | ||
000012b0:·ed81·f6c7·2f85·2bab·8ab4·06e0·4084·95a6··..../.+.....@... | 000012b0:·ed81·f6c7·2f85·2bab·8ab4·06e0·4084·95a6··..../.+.....@... | ||
000012c0:·be00·0000·0600·0000·0300·0000·0800·0000··................ | 000012c0:·be00·0000·0600·0000·0300·0000·0800·0000··................ | Diff chunk too large, falling back to line-by-line diff (991 lines added, 992 lines removed) | |
000012d0:·08a0·41a0·9040·4043·616d·6c31·3939·3954··..A..@@Caml1999T | 000012d0:·08a0·41a0·9040·4043·616d·6c31·3939·3954··..A..@@Caml1999T | ||
000012e0:·3033·3484·95a6·bd12·fb | 000012e0:·3033·3484·95a6·bd12·fb58·82ca·41bb·6581··034......X..A.e. | ||
000012f0:·ee4 | 000012f0:·ee40·81eb·4a28·b52f·fd00·587d·ee01·dacf··.@..J(./..X}.... | ||
00001300:· | 00001300:·469a·4610·488f·aa31·00d6·2bc2·28c4·8025··F.F.H..1..+.(..% | ||
00001310:· | 00001310:·0516·0909·4000·a9ce·e505·8ba1·7602·41ce··....@.......v.A. | ||
00001320:· | 00001320:·4c9d·03b2·2f31·33be·de26·4ca1·3d1f·990e··L.../13..&L.=... | ||
00001330:· | 00001330:·19f5·442d·0624·2bd4·b7f2·d5aa·2058·9665··..D-.$+.....·X.e | ||
00001340:· | 00001340:·d938·7eb2·fdd3·de93·3f84·0977·09d7·095e··.8~.....?..w...^ | ||
00001350:· | 00001350:·5c4e·9ae0·a0fd·0a80·1b49·900c·43c0·a03d··\N.......I..C..= | ||
00001360:· | 00001360:·04ed·05ed·2a68·df01·d0fe·2445·bb14·8d88··....*h....$E.... | ||
00001370:· | 00001370:·1029·da8d·23de·68ce·3f7a·ec00·681f·d270··.)..#.h.?z..h..p | ||
00001380:· | 00001380:·d631·228a·76e3·88f7·89f6·212d·88bf·ceaf··.1".v.....!-.... | ||
00001390:· | 00001390:·82d3·8fa6·e32a·d738·8671·fc55·a35d·4761··.....*.8.q.U.]Ga | ||
000013a0:· | 000013a0:·ec95·5c7e·cd68·f7f3·63da·773e·82d7·a72e··..\~.h..c.w>.... | ||
000013b0:·6 | 000013b0:·6bfa·a343·e1a5·df10·a320·a5ff·8649·7f0f··k..C.....·...I.. | ||
000013c0:· | 000013c0:·4048·2faa·1afd·8c7e·8852·4c99·e0a3·fd7d··@H/....~.RL....} | ||
000013d0:· | 000013d0:·fe0f·fab7·9fbf·1728·6ac4·7e35·08eb·6f82··.......(j.~5..o. | ||
000013e0:· | 000013e0:·9b9f·cabf·006f·8f88·27a1·eff8·767c·b4f3··.....o..'...v|.. | ||
000013f0:· | 000013f0:·6b28·24d4·9b1f·cc0f·e7df·d908·5e9f·3b64··k($.........^.;d | ||
00001400:· | 00001400:·0dfe·a897·1d06·ff17·9dfe·c7ac·f92f·c8a1··............./.. | ||
00001410:· | 00001410:·b1d1·c87e·31ff·06f3·e320·488f·8fc0·ef25··...~1....·H....% | ||
00001420:· | 00001420:·ca5f·f5e3·70b3·fcb0·2913·a515·3f5a·b197··._..p...)...?Z.. | ||
00001430:·7 | 00001430:·7085·6ee6·af4b·60ec·3c36·b9c4·9a52·c8ff··p.n..K`.<6...R.. | ||
00001440:· | 00001440:·ea97·f2ef·5c04·afcf·16f2·f18f·deb8·71fd··....\.........q. | ||
00001450:· | 00001450:·d9e6·e41f·72c0·dfa4·86c4·d10d·42fe·ac7f··....r.......B... | ||
00001460:· | 00001460:·5ffd·6d0f·4589·0cf8·6f5c·ea87·b43e·3d5b··_.m.E...o\...>=[ | ||
00001470:· | 00001470:·c021·1a64·7861·c581·56dc·255c·a19b·c5af··.!.dxa..V.%\.... | ||
00001480:· | 00001480:·4960·9c34·8a51·3946·99f8·f17f·e2df·590b··I`.4.Q9F......Y. | ||
00001490:· | 00001490:·afcf·3ab9·c41f·ddb4·d288·3f10·eb01·f875··..:.......?....u | ||
000014a0:·0 | 000014a0:·0ff1·3fad·c003·52c1·a944·9678·7594·35f7··..?...R..D.xu.5. | ||
000014b0:· | 000014b0:·e3fe·8d7f·b57d·9f13·7e58·bf69·d1fa·37eb··.....}..~X.i..7. | ||
000014c0:·a | 000014c0:·a129·cd12·1fe8·0878·562c·67c5·5cc2·15ba··.).....xV,g.\... | ||
000014d0:· | 000014d0:·23ad·d723·303e·328d·6160·cb2e·138c·d6ef··#..#0>2.a`...... | ||
000014e0:· | 000014e0:·59df·68fd·ce44·f0fa·4493·6d58·1f05·011f··Y.h..D..D.mX.... | ||
000014f0:·5 | 000014f0:·5a1f·c28c·16c3·7a40·86d6·170a·6250·9c0e··Z.....z@....bP.. | ||
00001500:· | 00001500:·5658·ff67·fdde·b31e·883e·1c6c·a067·3d08··VX.g.....>.l.g=. | ||
00001510:·6 | 00001510:·6cd6·23d7·73f9·c103·0cca·9e6a·565c·66c5··l.#.s......jV\f. | ||
00001520:·46 | 00001520:·46e1·0add·70d6·6b22·c65f·5f48·2fa8·b2f5··F...p.k".__H/... | ||
00001530:· | 00001530:·5bd6·63b0·7ee7·2178·7d72·59b3·3e6a·6593··[.c.~.!x}rY.>je. | ||
00001540:· | 00001540:·05eb·b168·3ab3·fe01·0ad6·9bc9·2486·cc18··...h:.......$... | ||
00001550:· | 00001550:·07d6·8759·bfb7·acc7·a4c0·0412·5c59·6fe5··...Y........\Yo. | ||
00001560:· | 00001560:·c97a·13eb·6bac·979a·0e84·61e0·cb8a·b1ac··.z..k.....a..... | ||
00001570:· | 00001570:·f889·94f5·5a00·8c99·47a7·1269·5c4f·633d··....Z...G..i\Oc= | ||
00001580:· | 00001580:·d7fa·9d85·e0f5·d995·0f58·1f8d·6169·c97a··.........X..ai.z | ||
00001590:· | 00001590:·193e·1c59·8f65·647d·914a·5957·acf0·58bf··.>.Y.ed}.JYW..X. | ||
000015a0:· | 000015a0:·63fd·a6b1·9e92·95b3·49c0·fa18·6b00·eb19··c.......I...k... | ||
000015b0:·a9 | 000015b0:·a9cf·34a9·c5ba·5426·a1ac·786b·c55b·c215··..4...T&..xk.[.. | ||
000015c0:· | 000015c0:·ba4f·acd7·0108·b01e·937a·e2fa·9db3·f0fa··.O.......z...... | ||
000015d0:· | 000015d0:·cc91·43ac·8f52·527b·705a·ef83·cac3·6f3d··..C..RR{pZ....o= | ||
000015e0:· | 000015e0:·bbfa·d6f7·76c0·3939·80b6·feeb·3726·f592··....v.99....7&.. | ||
000015f0:· | 000015f0:·66ab·9224·95d4·539a·41bd·07ea·5588·24a9··f..$..S.A...U.$. | ||
00001600:· | 00001600:·c890·2cac·1517·57ec·44b8·4277·23f5·5a04··..,...W.D.Bw#.Z. | ||
00001610:· | 00001610:·c6c7·b125·d891·2945·837a·3fea·0fa9·df39··...%..)E.z?....9 | ||
00001620:· | 00001620:·085e·9f28·b221·f551·1320·b9a0·be0f·21f5··.^.(.!.Q.·....!. | ||
00001630:· | 00001630:·83d4·6f3f·ea1f·05ca·069c·a0de·0438·ea9b··..o?.........8.. | ||
00001640:· | 00001640:·ea1b·70b4·8786·8c18·542b·8e5a·f101·c215··..p.....T+.Z.... | ||
00001650:· | 00001650:·baef·a8d7·0060·ac5c·3a8f·4928·4a64·1345··.....`.\:.I(Jd.E | ||
00001660:· | 00001660:·07ea·1950·1f47·fdce·40f0·facc·71a0·3efa··...P.G..@...q.>. | ||
00001670:·4 | 00001670:·4587·0cd4·2b90·031b·f565·9eea·350e·69a0··E...+....e..5.i. | ||
00001680:·a | 00001680:·4a64·32ea·c7a8·df0c·a8bf·4102·0102·4840··Jd2.......A...H@ | ||
00001690:· | 00001690:·fd17·29ea·5ba8·d7d1·68cb·9310·d85b·b16d··..).[...h....[.m | ||
000016a0:· | 000016a0:·c54d·9cea·7508·8cbd·bc8c·53d4·e750·9f54··.M..u.....S..P.T | ||
000016b0:· | 000016b0:·bff3·0fbc·3e77·c850·d447·3323·2ff5·568b··....>w.P.G3#/.V. | ||
000016c0:·e | 000016c0:·9ea8·d7da·52ef·4491·92da·89a8·1fa2·7ee7··....R.D.......~. | ||
000016d0:· | 000016d0:·509f·e807·5e67·6b2e·aacf·ea09·f558·7d50··P...^gk......X}P | ||
000016e0:· | 000016e0:·fdb6·81c6·264c·cee4·b1c4·aba1·9628·a9f8··....&L.......(.. | ||
000016f0:· | 000016f0:·918a·9908·57e8·76a1·5e3f·610c·7604·2b81··....W.v.^?a.v.+. | ||
00001700:· | 00001700:·423d·50fd·94fa·9d7d·e0f5·4928·47a9·8fee··B=P....}..I(G... | ||
00001710:· | 00001710:·108d·50df·539f·f940·7326·aa17·40fd·06aa··..P.S..@s&..@... | ||
00001720:· | 00001720:·afe1·c9d1·0dfb·d557·eb5b·279a·334f·fd4e··.......W.['.3O.N | ||
00001730:· | 00001730:·bd94·5e51·7a1f·d2ef·4337·5551·a239·d18c··..^Qz...C7UQ.9.. | ||
00001740:· | 00001740:·a890·8aa3·2a5e·92aa·d7c3·ad26·f204·a6f4··....*^.....&.... | ||
00001750:· | 00001750:·95d2·674a·bf73·0fbc·3e4b·c83d·a48f·e6cc··..gJ.s..>K.=.... | ||
00001760:· | 00001760:·43fa·1d0a·a56f·213d·0de9·6970·94be·0e34··C....o!=..ip...4 | ||
00001770:· | 00001770:·6716·0239·47bc·ba85·f46f·9d68·5e01·0515··g..9G....o.h^... | ||
00001780:· | 00001780:·ef51·b112·e10a·dd8b·d26b·278c·af38·c3c0··.Q.......k'..8.. | ||
00001790:· | 00001790:·8e51·7a87·77eb·0c43·fa18·faa4·87a6·ff63··.Qz.w..C.......c | ||
000017a0:·0 | 000017a0:·080b·86f4·7946·1041·c576·549c·44b8·42f7··....yF.A.vT.D.B. | ||
000017b0:· | 000017b0:·a0f4·3a87·1063·e788·7c42·fa14·d2ef·625e··..:..c..|B....b^ | ||
000017c0:· | 000017c0:·a6d7·91de·48fa·3928·f038·21fd·1b23·7ece··....H.9(.8!..#~. | ||
000017d0:· | 000017d0:·331a·7554·ac81·8a91·0857·e8e6·935e·e308··3.uT.....W...^.. | ||
000017e0:· | 000017e0:·62ec·4c1e·4b6c·31d1·770b·afcf·acd3·a878··b.L.Kl1.w......x | ||
000017f0:· | 000017f0:·0215·1b11·aed0·3d27·bdd6·4185·b196·f3a8··......='..A..... | ||
00001800:· | 00001800:·6524·6a0e·a233·5b67·aef4·c6d4·48fa·2405··e$j..3[g....H.$. | ||
00001810:· | 00001810:·93fe·cb95·300c·e40c·2681·2de9·bfa4·7fa3··....0...&.-..... | ||
00001820:· | 00001820:·fa01·2a47·12af·ce92·be4e·f4cd·6f66·207d··..*G.....N..of·} | ||
00001830:· | 00001830:·eeb2·40fa·3d96·5e8b·a55d·e973·313f·49b3··..@.=.^..].s1?I. | ||
00001840:· | 00001840:·74d6·0eae·f459·4838·de92·5eef·39ce·394c··t....YH8..^.9.9L | ||
00001850:·1 | 00001850:·18f1·be50·3350·ad23·fd5b·07fa·e617·8871··...P3P.#.[.....q | ||
00001860:· | 00001860:·f2eb·4804·4a4a·7a9d·953a·9b5a·e947·1892··..H.JJz..:.Z.G.. | ||
00001870:· | 00001870:·9e4a·988e·08a4·84a0·4747·fa1e·f009·e12f··.J......GG...../ | ||
00001880:· | 00001880:·c29f·3347·84ad·11ef·0bcd·51ad·b395·3115··..3G......Q...1. | ||
00001890:· | 00001890:·4b51·b196·7085·ee1d·e9f5·d50f·632a·4712··KQ..p.......c*G. | ||
000018a0:·8 | 000018a0:·8ff0·7731·2fc2·cfd9·d12f·ada5·90f0·67b0··..w1/..../....g. | ||
000018b0:· | 000018b0:·a953·fa1c·c3c5·9a5e·abe9·0f41·e053·25c2··.S.....^...A.S%. | ||
000018c0:· | 000018c0:·d734·4b9f·5100·81bf·2fe1·6b4b·911c·e1e7··.4K.Q.../.kK.... | ||
000018d0:· | 000018d0:·c0eb·3303·d3e7·1cc5·868a·6da8·78c8·8ae6··..3.......m.x... | ||
000018e0:· | 000018e0:·9129·464c·229d·4a31·aa63·92cb·d8ac·b264··.)FL".J1.c.....d | ||
000018f0:· | 000018f0:·7211·99cb·2fa2·d7b1·6984·2875·067f·eb0c··r.../...i.(u.... | ||
00001900:· | 00001900:·099f·c5f6·61ec·542e·afa0·3422·8da3·2a2a··....a.T...4"..** | ||
00001910:· | 00001910:·ce71·c651·430f·e3b0·a553·0b4a·d700·c0d3··.q.QC....S.J.... | ||
00001920:· | 00001920:·550d·602e·6638·84f0·b5e0·7770·8884·0815··U.`.f8....wp.... | ||
00001930:· | 00001930:·0355·2cc4·057c·6dc5·c338·8974·4ac1·dfc3··.U,..|m..8.tJ... | ||
00001940:· | 00001940:·b598·9ff8·68f0·f5d6·64a6·e007·4186·cfd5··....h...d...A... | ||
00001950:· | 00001950:·063f·6bba·3401·be96·2037·901d·c09f·b400··.?k.4...·7...... | ||
00001960:· | 00001960:·fe9b·1fc0·cf92·c2e0·ef04·f0f5·177c·fde6··.............|.. | ||
00001970:· | 00001970:·2412·df0a·afcf·cc06·3f67·5faa·e254·c541··$.......?g_..T.A | ||
00001980:· | 00001980:·842b·7413·954b·a4d2·0851·856d·ed5a·7aa1··.+t..K...Q.m.Zz. | ||
00001990:· | 00001990:·d05b·e729·f83e·ac19·db61·cc2c·564a·1fa9··.[.).>...a.,VJ.. | ||
000019a0:·3 | 000019a0:·39ce·574a·f0cd·40f5·abc3·38a9·c42a·a111··9.WJ..@...8..*.. | ||
000019b0:· | 000019b0:·6936·5679·0c5f·2bc1·d739·0c3f·e744·889a··i6Vy._+..9.?.D.. | ||
000019c0:· | 000019c0:·e05b·20c6·55b4·d239·1f4a·6728·e68c·d767··.[·.U..9.Jg(...g | ||
000019d0:· | 000019d0:·ce39·63f5·859c·b395·b6d2·7987·dea1·7331··.9c.......y...s1 | ||
000019e0:· | 000019e0:·bf56·b902·233e·54a3·39c6·0fb1·cec9·698e··.V..#>T.9.....i. | ||
000019f0:· | 000019f0:·93e0·bf2f·d438·e28d·6a9d·7358·94e2·1752··.../.8..j.sX...R | ||
00001a00:· | 00001a00:·0c44·b842·7716·be2e·e630·562e·914a·b1a8··.D.Bw....0V..J.. | ||
00001a10:· | 00001a10:·39b3·14b3·59ab·8bcf·ad81·6b31·3b95·5825··9...Y.....k1;.X% | ||
00001a20:· | 00001a20:·c8b4·a4c8·5e02·ba0e·3826·c5bc·9660·5bc7··....^...8&...`[. | ||
00001a30:· | 00001a30:·3164·9329·d675·646e·791d·95c8·afa3·97d2··1d.).udny....... | ||
00001a40:· | 00001a40:·c88c·b215·f848·984b·26f3·88a2·4c8a·c912··.....H.K&...L... | ||
Max diff block lines reached; -1/137324 bytes (-0.00%) of diff not shown. |
Offset 61, 246 lines modified | Offset 61, 246 lines modified | ||
000003c0:·a0a0·2653·7464·6c69·6290·30e8·d9af·4585··..&Stdlib.0...E. | 000003c0:·a0a0·2653·7464·6c69·6290·30e8·d9af·4585··..&Stdlib.0...E. | ||
000003d0:·47c4·5080·a71b·9a6e·aed6·58a0·a038·4361··G.P....n..X..8Ca | 000003d0:·47c4·5080·a71b·9a6e·aed6·58a0·a038·4361··G.P....n..X..8Ca | ||
000003e0:·6d6c·696e·7465·726e·616c·466f·726d·6174··mlinternalFormat | 000003e0:·6d6c·696e·7465·726e·616c·466f·726d·6174··mlinternalFormat | ||
000003f0:·4261·7369·6373·9030·2ef2·d91c·ed81·f6c7··Basics.0........ | 000003f0:·4261·7369·6373·9030·2ef2·d91c·ed81·f6c7··Basics.0........ | ||
00000400:·2f85·2bab·8ab4·06e0·4084·95a6·be00·0000··/.+.....@....... | 00000400:·2f85·2bab·8ab4·06e0·4084·95a6·be00·0000··/.+.....@....... | ||
00000410:·0400·0000·0200·0000·0500·0000·05a0·9040··...............@ | 00000410:·0400·0000·0200·0000·0500·0000·05a0·9040··...............@ | ||
00000420:·4043·616d·6c31·3939·3954·3033·3484·95a6··@Caml1999T034... | 00000420:·4043·616d·6c31·3939·3954·3033·3484·95a6··@Caml1999T034... | ||
00000430:·bd0f·9d | 00000430:·bd0f·9d5b·ba62·8865·a60f·a346·28b5·2ffd··...[.b.e...F(./. | ||
00000440:·0058· | 00000440:·0058·9576·002a·d1f4·2c4b·2020·d674·21c0··.X.v.*..,K··.t!. | ||
00000450:·a485·98f0·6e12·112a·981d·7569·61d4·7aa8··....n..*..uia.z. | |||
00000460:·43c7·f262·3ce2·cc8b·6849·8e8f·4d6e·4793··C..b<...hI..MnG. | |||
00000470:·ddc5·197d·92b4·6d67·1969·03e6·9437·838e··...}..mg.i...7.. | |||
00000480:·d972·5ac6·3d03·d404·1ce5·fddf·5291·c3d5··.rZ.=.......R... | |||
00000490:·de24·8d49·6e91·2db9·02b4·0298·02e9·2cfb··.$.In.-.......,. | |||
000004a0:·b83b·37c8·5593·59f8·3a41·7d36·bd9c·6730··.;7.U.Y.:A}6..g0 | |||
000004b0:·f354·1fed·4147·f5ad·d85c·6535·5759·85f2··.T..AG...\e5WY.. | |||
000004c0:·d62f·b73a·b96e·2f95·a07e·ef51·eb1e·c12a··./.:.n/..~.Q...* | |||
000004d0:·b256·ead1·b481·e6b6·81a4·2ecb·f026·82e5··.V...........&.. | |||
000004e0:·086a·33cc·6933·07b4·d3d7·40d3·9e7b·5c03··.j3.i3....@..{\. | |||
000004f0:·6e3a·cb4b·3f3b·5e26·f5ec·6823·59e3·4d3f··n:.K?;^&..h#Y.M? | |||
00000500:·3bf4·01b1·8b26·75b5·8d03·b5d4·789a·3a51··;....&u.....x.:Q | |||
00000510:·9b60·4d97·a34d·d74a·2c4c·78b0·fa5a·cc6d··.`M..M.J,Lx..Z.m | |||
00000520:·9a1a·88f7·f3b4·47b0·a6a3·c44d·d2c0·b3aa··......G....M.... | |||
00000530:·09c6·1b32·c1d4·266d·a696·da60·9418·f226··...2..&m...`...& | |||
00000540:·180f·4853·95b9·711a·07da·36c8·754b·2f9e··..HS..q...6.uK/. | |||
00000550:·ab7e·965a·a9db·3690·6f25·201e·ab3e·0554··.~.Z..6.o%·..>.T | |||
00000560:·dcfe·e6f6·5def·ca4d·e4a1·9517·4f0e·275e··....]..M....O.'^ | |||
00000570:·6a9c·0eca·0cc1·da48·8652·6592·8c37·e7cd··j......H.Re..7.. | |||
00000580:·ed68·5ee2·6281·6284·27c6·164d·8e36·d0b6··.h^.b.b.'..M.6.. | |||
00000590:·c15a·8974·84b7·459c·8be6·252e·976d·6a0b··.Z.t..E...%..mj. | |||
000005a0:·c02a·da28·351e·c978·4938·b911·dcd2·d49c··.*.(5..xI8...... | |||
000005b0:·8739·900c·4dcd·4712·2c37·589a·e114·8cc4··.9..M.G.,7X..... | |||
000005c0:·85e2·7ed2·d31e·c19d·e59c·858a·dbf3·6dca··..~...........m. | |||
000005d0:·9a5d·afa3·79cb·4559·3d2c·160f·0ab4·a923··.]..y.EY=,.....# | |||
000005e0:·c7d0·0672·539f·e70c·c60b·a24d·0540·0df0··...rS......M.@.. | |||
000005f0:·40e1·63a9·2bc2·f3c1·e8d4·bc8a·e6c3·63b3··@.c.+.........c. | |||
00000600:·0455·8e26·3f7f·782f·a0e9·b7a3·358d·db4d··.U.&?.x/....5..M | |||
00000610:·4578·72fa·1951·975b·a948·d394·728f·3cb7··Exr..Q.[.H..r.<. | |||
00000620:·7f78·2c50·e1e5·a8a5·461e·9640·bc0c·721e··.x,P....F..@..r. | |||
00000630:·7377·12e4·30b7·6370·5136·bd1e·e676·94c6··sw..0.cpQ6...v.. | |||
00000640:·8409·0f4f·4e17·1376·79e2·e1c9·e932·cc32··...ON..vy....2.2 | |||
00000650:·5312·3f47·b208·4fc7·65c9·c9ed·7525·0e56··S.?G..O.e...u%.V | |||
00000660:·5910·923f·3c30·5688·94e0·aa24·19e2·e5e8··Y..?<0V....$.... | |||
00000670:·c31b·ef2e·cf66·bc1c·7b78·faee·7296·2088··.....f..{x..r.·. | |||
00000680:·171e·f170·9336·1f5e·97bb·cb99·c9dc·5cd4··...p.6.^......\. | |||
00000690:·99fc·2cb7·0896·7b3c·4bcd·a9b4·033c·2e77··..,...{<K....<.w | |||
000006a0:·9773·9492·4af7·f0b0·38b9·4566·7813·8bf0··.s..J...8.Efx... | |||
000006b0:·8eee·2ecf·3213·a875·262f·c293·d3a7·dc5d··....2..u&/.....] | |||
000006c0:·8ee0·e68c·7ad1·2719·da7c·7872·ba0c·3923··....z.'..|xr..9# | |||
000006d0:·917b·d38a·f096·dcdd·bd83·9533·a8cb·5d82··.{.........3..]. | |||
000006e0:·3f3d·6fd0·f3cc·c99d·652b·99d5·051c·6f33··?=o.....e+....o3 | |||
000006f0:·daeb·52aa·42d3·0c7d·7859·8d9a·356b·6a40··..R.B..}xY..5kj@ | |||
00000700:·8326·03b9·3977·d650·0137·cf72·cef5·5ae5··.&..9w.P.7.r..Z. | |||
00000710:·9c73·8ffb·94e6·9c73·9e65·3467·5613·168b··.s.....s.e4gV... | |||
00000720:·47ce·a3eb·f62a·b8f5·e9d6·a691·c4c1·c418··G....*.......... | |||
00000730:·6d24·4559·2f6d·dd3e·73d5·2a8e·2007·52c3··m$EY/m.>s.*.·.R. | |||
00000740:·3ac2·62f1·e833·abb4·a7bb·5aa8·cd9b·9391··:.b..3....Z..... | |||
00000750:·1196·118b·c523·4cbe·1ffa·da58·83c8·f759··.....#L....X...Y | |||
00000760:·b46a·2eea·a205·c197·e47b·24df·a744·be8f··.j.......{$..D.. | |||
00000770:·2384·0619·3ab7·c5d3·6781·ef85·7c9f·ce72··#...:...g...|..r | |||
00000780:·fd5e·08fb·5160·f1e3·d3a2·8a20·df03·f9a8··.^..Q`.....·.... | |||
00000790:·34d7·59a1·a209·9d9a·844e·adb9·6e2f·0de0··4.Y......N..n/.. | |||
000007a0:·fb5e·42ad·51e2·26c1·1b1f·a780·ecf7·6fec··.^B.Q.&.......o. | |||
000007b0:·7fdf·a719·4abd·5646·b21d·f6af·8852·3aec··....J.VF.....R:. | |||
000007c0:·6f31·469a·38e0·b0ff·860e·6730·4951·c3fe··o1F.8.....g0IQ.. | |||
000007d0:·1cfb·b343·add8·5ce5·7c54·c484·fdac·857d··...C..\.|T.....} | |||
000007e0:·29ec·a76f·ec03·a9c2·3e13·4f9a·bcb1·7f40··)..o....>.O....@ | |||
000007f0:·abe6·a21d·5a70·2ced·0107·6699·8d7d·12ec··....Zp,...f..}.. | |||
00000800:·5bfd·68d5·5cb4·a6b5·8455·83e4·884e·35a2··[.h.\....U...N5. | |||
00000810:·5341·d7ed·a543·d8ef·20d4·aa79·a84d·f167··SA...C..·..y.M.g | |||
00000820:·07fb·dd3e·0ff6·d38c·54af·d598·9cda·bf6a··...>....T......j | |||
00000830:·c180·160e·f65f·b068·ecdf·603f·edf6·0b38··....._.h..`?...8 | |||
00000840:·8344·1168·5fe3·82fd·163c·b0bf·80fd·2496··.D.h_....<....$. | |||
00000850:·8032·41ac·4973·c2d7·315f·9f5c·b797·9660··.2A.Is..1_.\...` | |||
00000860:·bff3·5a75·3992·20de·f9c0·3e12·fb62·eca7··..Zu9.·...>..b.. | |||
00000870:·f9a8·5e2b·a230·f6af·847c·6460·1f66·3ff7··..^+.0...|d`.f?. | |||
00000880:·a8b2·5f64·3fe7·5c3a·fb4d·f6a5·5c80·c4fe··.._d?.\:.M..\... | |||
00000890:·0060·ecd7·ec73·b139·fb5b·802f·2380·90a2··.`...s.9.[./#... | |||
000008a0:·1d08·d13e·2d80·2e1d·6c70·c5be·04ad·2a53··...>-...lp....*S | |||
000008b0:·7c66·3fdb·4f91·d8df·5942·ea26·f699·d897··|f?.O...YB.&.... | |||
000008c0:·7d21·fbe9·2cff·b0af·437d·23ea·a73c·8cd8··}!..,...C}#..<.. | |||
000008d0:·70cb·d72c·5f27·685a·f295·e82b·9721·f6fb··p..,_'hZ...+.!.. | |||
000008e0:·4986·da3c·c0be·9bfa·40ec·a7d9·a85e·ab30··I..<....@....^.0 | |||
000008f0:·3201·f6af·8600·c065·bf08·29ea·ebb4·ec53··2......e..)....S | |||
00000900:·513f·27f0·3af6·c1a8·7f85·8f9b·fab7·65ed··Q?'.:.........e. | |||
00000910:·c351·df8c·fa6d·7a39·57fb·2cfb·d531·247b··.Q...mz9W.,..1${ | |||
00000920:·a3be·1b76·8e10·50a9·c92f·ea7b·51b5·2032··...v..P../.{Q.·2 | |||
00000930:·8497·630f·da6f·1765·7365·b3ed·1e54·cd55··..c..o.ese...T.U | |||
00000940:·ce53·d497·a27e·eaa6·3eab·c504·901e·e913··.S...~..>....... | |||
00000950:·f59d·a88f·5a75·4ee4·d4bc·aac8·e7a8·be95··....ZuN......... | |||
00000960:·5526·a2fe·1067·ea87·a94f·c6ea·8700·ec57··U&...g...O.....W | |||
00000970:·d6d7·2d76·9471·6b18·b76a·71dd·5e9a·a67e··..-v.qk..jq.^..~ | |||
00000980:·376b·25a2·a17e·0af5·6ba8·9fe6·22ab·fa6c··7k%..~..k..."..l | |||
00000990:·b20c·f5af·72b6·4aa1·3e0c·66ea·a300·8617··....r.J.>.f..... | |||
000009a0:·29d4·7fe1·6b2e·ea2c·d447·d15e·995e·4804··)...k..,.G.^.^H. | |||
000009b0:·bdca·19ad·7fc2·547d·a6fa·ba7e·eac2·085b··......T}...~...[ | |||
000009c0:·c099·c287·5bd9·dc9a·c575·7b29·07f5·bb8f··....[....u{).... | |||
000009d0:·5ab5·8e0c·a540·aecb·954d·a8ea·d7ea·57d5··Z....@...M....W. | |||
000009e0:·4ff3·ac5e·ab2f·99d7·bf02·5bc8·d50f·ebe7··O..^./....[..... | |||
000009f0:·36bd·9c77·fdb2·7e5a·ab6f·6654·6303·da77··6..w..~Z.ofTc..w | |||
00000a00:·2eca·e62a·e70a·ea83·f503·3a2a·e438·4adc··...*......:*.8J. | |||
00000a10:·24a6·d25c·87c3·e288·db7c·8671·6bff·e8d4··$..\.....|.qk... | |||
00000a20:·0374·aa17·d7ed·29f1·5589·af5d·b86e·6bdc··.t....).U..].nk. | |||
00000a30:·e814·845b·357d·ea1a·c038·930c·a1c6·1376··...[5}...8.....v | |||
00000a40:·5635·e133·c437·5177·e293·0c4b·a8f1·c427··V5.3.7Qw...K...' | |||
00000a50:·0f6f·1cc3·70ad·d46d·33c4·a6ce·e542·530b··.o..p..m3....BS. | |||
00000a60:·7eda·e93d·4fe0·73ab·cfad·5736·3ecb·3d72··~..=O.s...W6>.=r | |||
00000a70:·b1d4·d970·1559·6eac·4f2c·1849·cfad·717c··...p.Yn.O,.I..q| | |||
00000a80:·95c9·757b·33d8·3a83·ad54·6038·4dd2·b699··..u{3.:..T`8M... | |||
00000a90:·c31a·179e·e10d·f331·9cc2·355d·2b75·9b56··.......1..5]+u.V | |||
00000aa0:·ea70·19e2·20dc·e2a2·26f5·09a3·1a4b·2c18··.p..·...&....K,. | |||
00000ab0:·c3f6·e6a5·0e57·9164·a8e3·e718·25ea·f8c9··.....W.d....%... | |||
00000ac0:·7110·6e9d·5c43·615d·6e6c·ea1b·dfa5·be69··q.n.\Ca]nl.....i | |||
00000ad0:·c118·a649·5a48·8ea1·5488·cf11·873c·ac61··...IZH..T....<.a | |||
00000ae0:·db88·4b2d·a571·4e87·4b1d·b5f9·2ef1·3962··..K-.qN.K.....9b | |||
00000af0:·5d2e·610c·033a·312f·b5a9·6db6·b186·cbdd··].a..:1/..m..... | |||
00000b00:·00ae·85da·c421·2e37·c6b8·20dc·ba89·a1c6··.....!.7..·..... | |||
00000b10:·427b·ca09·6318·5439·4e6d·92dc·b673·c4b8··B{..c.T9Nm...s.. | |||
00000b20:·cd73·b8aa·1376·def8·3885·8370·8b24·f514··.s...v..8..p.$.. | |||
00000b30:·8e32·f714·d67c·d481·c17c·9778·d730·96c1··.2...|...|.x.0.. | |||
00000b40:·90c8·6044·98c4·8546·4bd8·b6f1·39c3·1754··..`D...FK...9..T | |||
00000b50:·16ab·d57b·9661·8bad·5b6c·4dd2·3280·ad03··...{.a..[lM.2... | |||
00000b60:·d82a·0588·e454·484d·4a48·4649·5504·b06e··.*...THMJHFIU..n | |||
00000b70:·6a75·536b·1424·b024·59b0·3e4b·2d8e·55b0··juSk.$.$Y.>K-.U. | |||
00000b80:·3892·341d·1326·4353·973a·0a36·f579·ea2a··8.4..&CS.:.6.y.* | |||
00000b90:·188b·5294·3653·b54e·d50a·c575·7ba9·6de3··..R.6S.N...u{.m. | |||
00000ba0:·1367·6a8e·f58d·6353·d74a·1dae·e973·ace1··.gj...cS.J...s.. | |||
Max diff block lines reached; -1/33474 bytes (-0.00%) of diff not shown. |
Offset 68, 356 lines modified | Offset 68, 356 lines modified | ||
00000430:·4d3c·babc·af4f·a0a0·2653·7464·6c69·6290··M<...O..&Stdlib. | 00000430:·4d3c·babc·af4f·a0a0·2653·7464·6c69·6290··M<...O..&Stdlib. | ||
00000440:·30e8·d9af·4585·47c4·5080·a71b·9a6e·aed6··0...E.G.P....n.. | 00000440:·30e8·d9af·4585·47c4·5080·a71b·9a6e·aed6··0...E.G.P....n.. | ||
00000450:·58a0·a038·4361·6d6c·696e·7465·726e·616c··X..8Camlinternal | 00000450:·58a0·a038·4361·6d6c·696e·7465·726e·616c··X..8Camlinternal | ||
00000460:·466f·726d·6174·4261·7369·6373·9030·2ef2··FormatBasics.0.. | 00000460:·466f·726d·6174·4261·7369·6373·9030·2ef2··FormatBasics.0.. | ||
00000470:·d91c·ed81·f6c7·2f85·2bab·8ab4·06e0·4084··....../.+.....@. | 00000470:·d91c·ed81·f6c7·2f85·2bab·8ab4·06e0·4084··....../.+.....@. | ||
00000480:·95a6·be00·0000·0400·0000·0200·0000·0500··................ | 00000480:·95a6·be00·0000·0400·0000·0200·0000·0500··................ | ||
00000490:·0000·05a0·9040·4043·616d·6c31·3939·3954··.....@@Caml1999T | 00000490:·0000·05a0·9040·4043·616d·6c31·3939·3954··.....@@Caml1999T | ||
000004a0:·3033·3484·95a6·bd0f·ab38·e | 000004a0:·3033·3484·95a6·bd0f·ab38·e577·8e3b·bf5b··034......8.w.;.[ | ||
000004b0:·bb | 000004b0:·bb0d·28b5·2ffd·0058·7dad·009a·1f91·3c5a··..(./..X}.....<Z | ||
000004c0:·20d2·41da·7455·559d·f195·ef79·1edc·2670···.A.tUU....y..&p | |||
000004d0:·47b5·576a·1e39·97fe·fcea·0c26·f5f9·4213··G.Wj.9.....&..B. | |||
000004e0:·8cda·e0ab·0e53·a5d7·8ef9·c52c·42d1·6f6d··.....S.....,B.om | |||
000004f0:·ed36·9069·f1f7·fba4·81c4·7fa2·1a8b·6b86··.6.i..........k. | |||
00000500:·601d·8ffe·7507·8f11·4db8·98cd·750f·f456··`...u...M...u..V | |||
00000510:·f59b·7551·cff1·7349·4b1b·bd03·a603·9603··..uQ..sIK....... | |||
00000520:·dcd1·e89f·fb69·7b9a·360d·b127·eeb7·3551··.....i{.6..'..5Q | |||
00000530:·f4a0·7f06·0ffa·3be8·9f68·f4a1·5063·5664··......;..h..PcVd | |||
00000540:·467f·cd99·7e97·3e99·fef9·4419·9f14·a118··F...~.>...D..... | |||
00000550:·ba1e·d2b5·1315·b59d·61f4·b300·ba5d·b1d1··........a....].. | |||
00000560:·d545·dfd6·f7a2·7fda·224d·9b38·7beb·dfa8··.E......"M.8{... | |||
00000570:·00a3·45bf·8abe·2563·b3d6·4c7f·04fd·d3d6··..E...%c..L..... | |||
00000580:·ff12·0204·e4dc·ac15·d3a7·224b·3fa9·9f44··.........."K?..D | |||
00000590:·df8b·9728·fa60·6cd6·fea8·60a8·09e6·66bd··...(.`l...`...f. | |||
000005a0:·dc6c·0aa8·aeb9·ae83·54d4·766e·a09f·03d0··.l......T.vn.... | |||
000005b0:·ed8a·8d2e·0464·34cc·1302·49f4·7fe8·5b0b··.....d4...I...[. | |||
000005c0:·44df·88fe·7944·3f07·0cf4·8d08·e287·a6a4··D...yD?......... | |||
000005d0:·fe94·3e0f·7d6b·7920·0333·f7d0·0773·cb16··..>.}ky·.3...s.. | |||
000005e0:·887e·0f4e·33ef·d03a·7561·2ca1·c4db·49df··.~.N3..:ua,...I. | |||
000005f0:·0463·cb59·a8f4·d78c·c175·185c·0329·f573··.c.Y.....u.\.).s | |||
00000600:·1100·c0bc·31c4·b135·f45d·fdd3·046a·ad15··....1..5.]...j.. | |||
00000610:·b07f·b6ac·67a5·6fad·b545·bca9·f4fb·3ba8··....g.o..E....;. | |||
00000620:·17bb·80be·b535·f4d1·9899·863e·989b·d9b2··.....5.....>.... | |||
00000630:·d636·6db2·d6da·3464·acb5·76cb·db6c·59d3··.6m...4d..v..lY. | |||
00000640:·da33·5770·4d86·6b26·2a6a·3b9f·f473·0b47··.3WpM.k&*j;..s.G | |||
00000650:·b7ec·03cb·25d9·d1ca·cb29·c8e9·7423·b79a··....%....)..t#.. | |||
00000660:·ceac·83b6·6c93·1f4c·58fc·e1c1·f402·4318··....l..LX.....C. | |||
00000670:·16fa·c164·0ef9·886e·4883·8d33·d745·024b··...d...nH..3.E.K | |||
00000680:·92f6·5dd2·05bb·2218·bb30·31ca·0bb5·9dfe··..]..."..01..... | |||
00000690:·1472·24c9·8b53·5b61·6804·5db0·6bf4·8de1··.r$..S[ah.].k... | |||
000006a0:·cb55·2e09·b16a·2a2c·2069·0c63·e445·1a5d··.U...j*,·i.c.E.] | |||
000006b0:·469f·8785·5835·95d0·1239·ceee·cc15·1b5d··F...X5...9.....] | |||
000006c0:·98d6·6455·0340·5f0a·4ca4·8d31·171e·8170··..dU.@_.L..1...p | |||
000006d0:·6add·a7a1·0b9a·b9a0·99c9·f644·f661·8fc9··j..........D.a.. | |||
000006e0:·aa96·0328·58bc·335a·11e9·b960·60e8·2189··...(X.3Z...``.!. | |||
000006f0:·3f3c·b519·7041·b369·b3a0·518e·ac50·7301··?<..pA.i..Q..Ps. | |||
00000700:·951b·8231·576c·74c1·449f·20b5·15a4·a1a6··...1Wlt.D.·..... | |||
00000710:·cd82·5619·c9cb·00d7·d20b·4402·8df0·d4b0··..V.......D..... | |||
00000720:·a036·5424·2fc6·de91·2bf4·c88b·c1d0·258e··.6T$/...+.....%. | |||
00000730:·2e91·f492·88e4·33db·d096·b552·baa0·d982··......3....R.... | |||
00000740:·49c0·30d9·b269·ab50·f3c4·e374·ba41·c325··I.0..i.P...t.A.% | |||
00000750:·6921·e8c5·5c98·bc65·d962·d5c4·94a9·0107··i!..\..e.b...... | |||
00000760:·c8cd·110c·8ab4·1e35·297a·ca8b·975e·3e6a··.......5)z...^>j | |||
00000770:·4f34·2912·4112·973f·6a48·7469·a2d9·84dd··O4).A..?jHti.... | |||
00000780:·d928·d4a3·a626·37f1·5d71·04ea·2194·441c··.(...&7.]q..!.D. | |||
00000790:·417c·34fe·a86d·5182·45f0·2281·d813·716a··A|4..mQ.E."...qj | |||
000007a0:·38d8·0850·2627·7607·9ab3·5013·8c2d·ef40··8..P&'v...P..-.@ | |||
000007b0:·b3f9·7ae1·859b·9a9a·fc00·8f68·e8a6·a626··..z........h...& | |||
000007c0:·2bd1·b241·3fb8·04c3·1e35·a42a·4da8·2d03··+..A?....5.*M.-. | |||
000007d0:·61d7·1203·bcf0·478d·64c2·820b·e292·0308··a.....G.d....... | |||
000007e0:·c122·e8a3·7685·32d9·560b·8b20·8f5a·8c32··."..v.2.V..·.Z.2 | |||
000007f0:·59eb·24a7·f632·82bd·318c·f9a8·59a1·4cd6··Y.$..2..1...Y.L. | |||
00000800:·0691·23fe·6824·2ec5·f173·8923·588a·172b··..#.h$...s.#X..+ | |||
00000810:·dd16·6a0b·a04c·d622·1195·2e8f·9a14·5a84··..j..L."......Z. | |||
00000820:·f464·5f8f·9a0f·65b2·2ddb·b2d6·89eb·d248··.d_...e.-......H | |||
00000830:·dca3·a626·2ba1·4ca6·955b·865e·cc47·4d4d··...&+.L..[.^.GMM | |||
00000840:·56c2·5a9f·701c·5f3d·6a31·5026·6bad·0db5··V.Z.p._=j1P&k... | |||
00000850:·d6da·6c73·c8b6·6569·cb32·b127·31d4·3867··..ls..ei.2.'1.8g | |||
00000860:·4d5b·3ec1·703a·dd98·61c9·2349·cf47·cd7a··M[>.p:..a.#I.G.z | |||
00000870:·f1f2·e54b·06b8·70b1·2750·6bf3·49c8·e974··...K..p.'Pk.I..t | |||
00000880:·4307·b53a·a8b5·6354·d4b6·04d7·4b70·ad04··C..:..cT....Kp.. | |||
00000890:·0c67·2c25·508c·f2ed·bcc0·f063·d9ce·9aa5··.g,%P......c.... | |||
000008a0:·bc20·0643·10d3·eaec·e272·49a8·b680·a5ba··.·.C.....rI..... | |||
000008b0:·f0a5·02b6·9cb3·d902·81ae·71b2·d675·c551··..........q..u.Q | |||
000008c0:·74fd·b09d·58e9·6256·38f3·be31·279f·489c··t...X.bV8..1'.H. | |||
000008d0:·f964·5202·c528·3d3e·4e3d·a7d3·8db3·d9f8··.dR..(=>N=...... | |||
000008e0:·d522·11c4·b4ef·2af9·5417·b0d4·04a4·a80e··."....*.T....... | |||
000008f0:·7d09·f42b·fad3·2a69·da84·2d10·fa5b·8e2e··}..+..*i..-..[.. | |||
00000900:·7ad0·eba0·3ce8·6fe8·cf12·e8cf·a470·8121··z...<.o......p.! | |||
00000910:·cc6c·6404·fa1c·b405·ddb9·74b7·9900·0735··.ld.......t....5 | |||
00000920:·81f0·4109·d518·d5a0·8ada·ced3·6713·ba8f··..A.........g... | |||
00000930:·5c37·7c79·30ef·92ae·1b82·b11d·32ba·8fe9··\7|y0.......2... | |||
00000940:·8e46·19dd·4f9b·a469·531a·69f8·a05a·85ea··.F..O..iS.i..Z.. | |||
00000950:·988a·dad2·bcd3·bcef·ad4b·30ef·92a1·57f1··.........K0...W. | |||
00000960:·28d6·f28e·b0a4·21a2·1b82·b1a1·7ab1·275e··(.....!.....z.'^ | |||
00000970:·ec7d·9528·462b·eb0d·c158·1daa·b02f·ba1f··.}.(F+...X.../.. | |||
00000980:·b162·74bf·8529·810a·ba8b·b9a5·a0fb·165f··.bt..)........._ | |||
00000990:·7447·0117·67c8·508b·ee66·ba9f·63ba·93e0··tG..g.P..f..c... | |||
000009a0:·0ad9·8b8a·ee61·3a25·ba87·dd77·e87e·6e01··.....a:%...w.~n. | |||
000009b0:·8515·2a51·92a0·fa08·aa8b·54d4·7676·e99e··..*Q......T.vv.. | |||
000009c0:·4be8·5602·6331·5ae9·ba46·de2c·48ad·bb0e··K.V.c1Z..F.,H... | |||
000009d0:·dd97·e87e·da9f·20ba·7f49·a2fb·0d8b·165b··...~..·..I.....[ | |||
000009e0:·ba67·09c2·8c96·eeb9·074b·44f7·21ba·9f3a··.g.......KD.!..: | |||
000009f0:·74cf·8202·5e70·916d·0ad0·64b9·a13b·9625··t...^p.m..d..;.% | |||
00000a00:·dd73·7407·d289·00c9·4c08·ca44·f1fe·f2fe··.st.....L..D.... | |||
00000a10:·66dd·b3aa·1b97·60e8·1ab1·4b86·bd23·26dd··f.....`...K..#&. | |||
00000a20:·57e8·4ea5·03ea·7eda·199a·3655·a9d2·ddda··W.N...~...6U.... | |||
00000a30:·0604·bd83·de35·a8a8·ed2c·c11a·ab31·b0c6··.....5...,...1.. | |||
00000a40:·7648·1056·8954·1284·d558·adab·5677·1e7e··vH.V.T...X..Vw.~ | |||
00000a50:·badf·6eb0·38d2·bdc7·1545·bab7·d0b5·badb··..n.8....E...... | |||
00000a60:·10c0·703a·c142·7721·ddcf·15ba·5bc1·6a22··..p:.Bw!....[.j" | |||
00000a70:·5b1e·dd6f·ba1a·70d7·82bb·1820·48a1·c380··[..o..p....·H... | |||
00000a80:·1621·7c78·f3f0·f646·e89e·49c0·df25·c9f1··.!|x...F..I..%.. | |||
00000a90:·d3b1·0177·35dc·d750·83fb·6991·346d·3a75··...w5..P..i.4m:u | |||
00000aa0:·bfb5·3aef·1ad0·2652·511b·16da·5868·0fb1··..:...&RQ...Xh.. | |||
00000ab0:·7048·2b2f·391b·c958·85d5·b10c·bd7a·49af··pH+/9..X.....zI. | |||
00000ac0:·4804·61de·0deb·92d8·628d·b886·975c·bd68··H.a.....b....\.h | |||
00000ad0:·6529·9234·7cc9·4a74·5487·6aad·d546·bc32··e).4|.JtT.j..F.2 | |||
00000ae0:·5c8d·4c09·ea51·97c8·117f·9704·6115·8b97··\.L..Q......a... | |||
00000af0:·2469·5fbd·325c·62d2·c365·253a·1a8a·fdd4··$i_.2\b..e%:.... | |||
00000b00:·2e6b·b8af·2c1a·dc6f·6094·3183·7b18·6bb8··.k..,..o`.1.{.k. | |||
00000b10:·c780·fba9·863b·1932·8066·48c3·1d8c·2edc··.....;.2.fH..... | |||
00000b20:·7be0·bec5·86c6·880c·3018·e0bd·7a5b·5151··{.......0...z[QQ | |||
00000b30:·dbb9·05f7·aca3·fb08·2471·99b3·01ee·4570··........$q....Ep | |||
00000b40:·9782·03dc·4f7b·a469·d314·5370·b7f6·490e··....O{.i..Sp..I. | |||
00000b50:·ed1c·da54·64d8·3baa·5e15·c17a·b3c3·baa9··...Td.;.^..z.... | |||
00000b60:·a107·6250·046b·187a·f549·e531·84fb·99ed··..bP.k.z.I.1.... | |||
00000b70:·12dc·85ac·06b8·df86·18c3·0477·2d4b·70af··...........w-Kp. | |||
00000b80:·713f·8be0·fe01·2496·4a22·b80f·7103·f728··q?....$.J"..q..( | |||
00000b90:·dcaf·5441·8111·8c4d·a12d·44bb·8a8a·dace··..TA...M.-D..... | |||
00000ba0:·0770·cf23·74e3·11e6·ba48·e3ec·923b·59b8··.p.#t....H...;Y. | |||
00000bb0:·83dc·71e0·7e5a·9fa6·4d3f·e8ec·12f7·1b4c··..q.~Z..M?.....L | |||
00000bc0:·0c8d·7b0c·732f·b99f·2077·2a44·2037·973b··..{.s/..·w*D·7.; | |||
00000bd0:·4c08·f710·b817·800b·e322·4009·3a38·da3f··L........"@.:8.? | |||
00000be0:·e85a·8a8a·da4e·29dc·738e·ee3b·f344·9738··.Z...N).s..;.D.8 | |||
00000bf0:·8ade·2784·05ee·957b·8b7b·02b8·b7c0·fdb4··..'....{.{...... | |||
00000c00:·469a·36d9·22dc·adfd·c0d8·f5d8·b590·8ada··F.6."........... | |||
00000c10:·ce8a·53de·cf3b·2a63·602d·2f1e·6936·5419··..S..;*c`-/.i6T. | |||
Max diff block lines reached; -1/48655 bytes (-0.00%) of diff not shown. |
Offset 87, 425 lines modified | Offset 87, 424 lines modified | ||
00000560:·fc24·dea3·8400·68a0·a026·5374·646c·6962··.$....h..&Stdlib | 00000560:·fc24·dea3·8400·68a0·a026·5374·646c·6962··.$....h..&Stdlib | ||
00000570:·9030·e8d9·af45·8547·c450·80a7·1b9a·6eae··.0...E.G.P....n. | 00000570:·9030·e8d9·af45·8547·c450·80a7·1b9a·6eae··.0...E.G.P....n. | ||
00000580:·d658·a0a0·3843·616d·6c69·6e74·6572·6e61··.X..8Camlinterna | 00000580:·d658·a0a0·3843·616d·6c69·6e74·6572·6e61··.X..8Camlinterna | ||
00000590:·6c46·6f72·6d61·7442·6173·6963·7390·302e··lFormatBasics.0. | 00000590:·6c46·6f72·6d61·7442·6173·6963·7390·302e··lFormatBasics.0. | ||
000005a0:·f2d9·1ced·81f6·c72f·852b·ab8a·b406·e040··......./.+.....@ | 000005a0:·f2d9·1ced·81f6·c72f·852b·ab8a·b406·e040··......./.+.....@ | ||
000005b0:·8495·a6be·0000·0004·0000·0002·0000·0005··................ | 000005b0:·8495·a6be·0000·0004·0000·0002·0000·0005··................ | Diff chunk too large, falling back to line-by-line diff (417 lines added, 418 lines removed) | |
000005c0:·0000·0005·a090·4040·4361·6d6c·3139·3939··......@@Caml1999 | 000005c0:·0000·0005·a090·4040·4361·6d6c·3139·3939··......@@Caml1999 | ||
000005d0:·5430·3334·8495·a6bd·10b3·7 | 000005d0:·5430·3334·8495·a6bd·10b3·7781·8877·9422··T034......w..w." | ||
000005e0:·d7 | 000005e0:·d70d·d160·28b5·2ffd·0058·75cf·007a·4269··...`(./..Xu..zBi | ||
000005f0:·445 | 000005f0:·4458·204c·4ada·7469·6cef·efe7·f599·62bf··DX·LJ.til.....b. | ||
00000600:· | 00000600:·3d97·9144·9918·d61b·79a5·621c·dcb0·9b4f··=..D....y.b....O | ||
00000610:· | 00000610:·d14c·e010·dc9d·5c49·27b5·7cb5·9139·d4a1··.L....\I'.|..9.. | ||
00000620:· | 00000620:·51c6·48a4·4545·b57e·a3ab·d812·3133·45a9··Q.H.EE.~....13E. | ||
00000630:· | 00000630:·9929·d69b·a71a·73c0·7a24·9e38·c64d·b52d··.)....s.z$.8.M.- | ||
00000640:· | 00000640:·13ab·a3f1·df5a·2e69·6903·4004·1a04·2d04··.....Z.ii.@...-. | ||
00000650:· | 00000650:·24df·89af·5a60·717c·1bff·aab7·89df·4df2··$...Z`q|......M. | ||
00000660:· | 00000660:·7b40·81df·9de3·abdd·6d04·0296·5002·0c3f··{@......m...P..? | ||
00000670:· | 00000670:·06be·f893·0ec1·1742·0a89·23d8·74ab·7c1f··.......B..#.t.|. | ||
00000680:· | 00000680:·f82a·183e·0bfc·6e23·2c80·9664·8ff4·b6c0··.*.>..n#,..d.... | ||
00000690:· | 00000690:·b7ba·ba53·57b7·9b88·1f98·55e6·105e·7655··...SW.....U..^vU | ||
000006a0:· | 000006a0:·d7f0·afaa·de20·aed2·5877·14bf·db04·7e13··.....·..Xw....~. | ||
000006b0:· | 000006b0:·bf4d·c7a8·d66e·c00d·e776·f285·1fc3·7a6d··.M...n...v....zm | ||
000006c0:· | 000006c0:·a8e1·ec94·a64e·7cdc·7b35·c39a·c644·7eac··.....N|.{5...D~. | ||
000006d0:· | 000006d0:·bff0·6fc7·9adc·6e1c·dac4·bad9·5235·14bf··..o...n.....R5.. | ||
000006e0:· | 000006e0:·fb8c·2798·9f60·467a·d955·0d8d·c68c·e790··..'..`Fz.U...... | ||
000006f0:· | 000006f0:·31e3·19d2·ccf0·94d5·429a·198e·6129·8641··1.......B...a).A | ||
00000700:· | 00000700:·ae1e·2b33·673f·ae7a·db09·6626·98ab·bcec··..+3g?.z..f&.... | ||
00000710:· | 00000710:·6a43·7737·b92d·e5d2·20f2·d734·d669·ac17··jCw7.-..·..4.i.. | ||
00000720:· | 00000720:·70e6·6360·ab9a·0167·2ffc·345d·c59f·f4ea··p.c`...g/.4].... | ||
00000730:· | 00000730:·dee6·2107·661b·98a9·bcec·aa5e·e1df·580d··..!.f......^..X. | ||
00000740:·e6d | 00000740:·e6d2·b4d9·4c99·8f2a·1610·16ab·7563·54ea··....L..*....ucT. | ||
00000750:· | 00000750:·dd61·638d·9647·3da6·98c8·da0c·dde2·632a··.ac..G=.......c* | ||
00000760:· | 00000760:·3d22·535a·1aa1·c8f3·8693·8db7·a5d9·5892··="SZ..........X. | ||
00000770:· | 00000770:·b471·568a·9024·07e3·8f70·336f·b7f1·47ce··.qV..$...p3o..G. | ||
00000780:· | 00000780:·4792·492e·cd46·3132·b3c6·b474·466d·81e5··G.I..F12...tFm.. | ||
00000790:· | 00000790:·3420·818c·59a3·dd46·2873·498c·4c44·b7c0··4·..Y..F(sI.LD.. | ||
000007a0:· | 000007a0:·7215·6c89·ba99·b6d1·b644·3397·50dc·15a2··r.l......D3.P... | ||
000007b0:· | 000007b0:·5c0d·7e97·5989·3369·4ba8·69e5·478e·c507··\.~.Y.3iK.i.G... | ||
000007c0:· | 000007c0:·0385·bd4c·d83b·b56a·7192·a122·1251·0e0f··...L.;.jq..".Q.. | ||
000007d0:· | 000007d0:·17b4·1c6d·b8a6·9bb8·3423·6b22·5479·2424··...m....4#k"Ty$$ | ||
000007e0:·1 | 000007e0:·1706·13f6·a68d·8415·210a·0739·0f78·196b··........!..9.x.k | ||
000007f0:· | 000007f0:·246d·8966·2ecd·4a28·4072·5858·61d3·46c2··$m.f..J(@rXXa.F. | ||
00000800:· | 00000800:·7e31·6fe3·094b·514c·2414·f944·482e·0e13··~1o..KQL$..DH... | ||
00000810:· | 00000810:·db63·cbdb·88a2·e2d3·524d·bc8d·2859·5b2a··.c......RM..(Y[* | ||
00000820:· | 00000820:·cda5·f226·9259·72d5·db63·63dd·5da0·b0b7··...&.Yr..cc.]... | ||
00000830:· | 00000830:·9da8·b899·5a6f·da5e·6cca·eac1·62b5·c08c··....Zo.^l...b... | ||
00000840:· | 00000840:·375c·8d14·694b·e86d·3ccf·182c·47c4·9b30··7\..iK.m<..,G..0 | ||
00000850:· | 00000850:·3f3a·008a·8292·252e·2817·8493·7344·a398··?:....%.(...sD.. | ||
00000860:· | 00000860:·8472·5657·9a4a·f286·9e3e·7236·f070·ed4d··.rVW.J...>r6.p.M | ||
00000870:· | 00000870:·67a3·cddc·1294·a373·7390·8da5·6925·680b··g......ss...i%h. | ||
00000880:· | 00000880:·95d2·24d1·27d3·478e·8610·d092·1ca1·4854··..$.'.G.......HT | ||
00000890:· | 00000890:·2c7f·e4d0·7427·c04e·6569·35f6·9eb1·a9d5··,...t'.Nei5..... | ||
000008a0:· | 000008a0:·7ad5·d89b·3225·4902·94a3·7355·1095·9280··z...2%I...sU.... | ||
000008b0:·7 | 000008b0:·7274·6e9b·5863·3942·4fb2·1694·c37d·b9c2··rtn.Xc9BO....}.. | ||
000008c0:· | 000008c0:·c4ae·d70a·ba14·7582·58f3·911b·83e4·8111··......u.X....... | ||
000008d0:·15 | 000008d0:·5b15·2322·6849·0ae5·483b·d5b1·185a·923d··[.#"hI..H;...Z.= | ||
000008e0:· | 000008e0:·72a3·9dea·ce32·9413·9fa0·a259·a309·e594··r....2.....Y.... | ||
000008f0:· | 000008f0:·ec54·3796·9b89·ca70·37f4·2c4d·d952·6992··.T7....p7.,M.Ri. | ||
00000900:·6739·a265· | 00000900:·6739·a265·c622·b92f·76aa·5b4a·5966·ec91··g9.e."./v.[JYf.. | ||
00000910:· | 00000910:·1381·896d·7213·9d64·41b9·2776·aa63·1deb··...mr..dA.'v.c.. | ||
00000920:· | 00000920:·c6b2·34e2·6e68·508e·cea5·62a7·d212·c6b3··..4.nhP...b..... | ||
00000930:· | 00000930:·26d2·8472·746e·9b6e·2835·d364·0aca·29b1··&..rtn.n(5.d..). | ||
00000940:· | 00000940:·53dd·dd63·bbbb·6f0f·e076·8c89·8d35·52b3··S..c..o..v...5R. | ||
00000950:· | 00000950:·b220·e35d·a7eb·6529·61b1·5a53·a2c4·db4d··.·.]..e)a.ZS...M | ||
00000960:· | 00000960:·14ca·7555·951b·373a·f0d0·17d8·eecb·22c2··..uU..7:......". | ||
00000970:·6 | 00000970:·62b5·76d8·de61·bb19·c03c·03f3·9497·5dbb··b.v..a...<....]. | ||
00000980:· | 00000980:·b0ba·b09a·9035·1bcc·8846·2367·454c·644d··.....5...F#gELdM | ||
00000990:·6 | 00000990:·065b·d5b0·0766·04c9·0743·c220·468c·1811··.[...f...C.·F... | ||
000009a0:· | 000009a0:·0d29·6214·c29e·9ec2·2046·21cc·b412·0e09··.)b.....·F!..... | ||
000009b0:· | 000009b0:·6135·b34b·28ca·c820·2779·13bb·8427·7a14··a5.K(..·'y...'z. | ||
000009c0:· | 000009c0:·ce4a·312c·6361·9090·280c·c39e·1e18·9adb··.J1,ca..(....... | ||
000009d0:· | 000009d0:·888e·b7a7·db88·9664·b825·9412·a219·9d64··.......d.%.....d | ||
000009e0:· | 000009e0:·38b1·a908·1d4b·d868·1b9d·6427·514d·9491··8....K.h..d'QM.. | ||
000009f0:· | 000009f0:·a84c·bc3d·1515·2579·4251·a724·66cc·8461··.L.=..%yBQ.$f..a | ||
00000a00:· | 00000a00:·d843·33c3·b186·9b99·b6f0·94d5·6035·12c5··.C3.........`5.. | ||
00000a10:· | 00000a10:·8534·3344·6fe6·5328·8627·7992·4e5c·c230··.43Do.S(.'y.N\.0 | ||
00000a20:· | 00000a20:·ec81·2981·1992·04c6·e684·9237·b3a9·160b··..)........7.... | ||
00000a30:·7 | 00000a30:·4759·39de·461a·8d7c·12fe·7862·a583·2b21··GY9.F..|..xb..+! | ||
00000a40:·7 | 00000a40:·07e7·6d8c·420a·c772·6cc2·4109·6966·589a··..m.B..rl.A.ifX. | ||
00000a50:· | 00000a50:·242a·a2e5·681b·6b4f·3632·2c63·6118·f634··$*..h.kO62,ca..4 | ||
00000a60:· | 00000a60:·b358·3d6e·a4d6·7b6f·1af3·b169·b0ba·97c6··.X=n..{o...i.... | ||
00000a70:· | 00000a70:·d22c·977c·ac2a·5a66·4461·359b·2833·87ae··.,.|.*ZfDa5.(3.. | ||
00000a80:·a | 00000a80:·7a83·7ad5·2923·1a8d·7c22·c472·c262·b502··z.z.)#..|".r.b.. | ||
00000a90:· | 00000a90:·6353·69d6·3a08·b738·a972·8e28·eec9·66ca··cSi.:..8.r.(..f. | ||
00000aa0:· | 00000aa0:·4225·a331·e399·263c·65b5·a430·0cc3·b0c7··B%.1..&<e..0.... | ||
00000ab0:· | 00000ab0:·0466·b17a·6cb0·7fea·38f6·575a·ec6f·5cc0··.f.zl...8.WZ.o\. | ||
00000ac0:·6 | 00000ac0:·de06·6a7f·6bb0·a9d5·dac4·5e4d·8dd5·9e00··..j.k.....^M.... | ||
00000ad0:· | 00000ad0:·2e00·8008·7b29·1b26·00c2·feca·a043·cfc7··....{).&.....C.. | ||
00000ae0:· | 00000ae0:·bf54·b6ca·5e6d·f120·812a·0a00·71fb·4d05··.T..^m.·.*..q.M. | ||
00000af0:· | 00000af0:·d27b·26b5·7701·5c21·0210·40c1·5ecd·67c6··.{&.w.\!..@.^.g. | ||
00000b00:· | 00000b00:·013a·58a6·b25c·caf1·903e·c6fe·8ab5·d987··.:X..\...>...... | ||
00000b10:· | 00000b10:·b135·7b31·1ead·8619·d4f4·3a59·b22f·c15e··.5{1......:Y./.^ | ||
00000b20:· | 00000b20:·d562·df7d·7921·b562·8f64·79d8·e3b0·f7c0··.b.}y!.b.dy..... | ||
00000b30:· | 00000b30:·be8a·bf29·9685·0358·3ec1·b20d·87ad·89b8··...)...X>....... | ||
00000b40:· | 00000b40:·31a3·9054·d555·9341·2d97·966b·2fbb·aa4a··1..T.U.A-..k/..J | ||
00000b50:· | 00000b50:·ecef·8bf9·94d5·7a5c·3be9·05f6·6aac·adf0··......z\;...j... | ||
00000b60:· | 00000b60:·2ec7·3b1e·ef55·41d6·023b·852d·550b·d977··..;..UA..;.-U..w | ||
00000b70:·8 | 00000b70:·d786·582e·b26c·4251·88d6·70e7·7833·e27a··..X..lBQ..p.x3.z | ||
00000b80:· | 00000b80:·d90b·c186·2cf7·b04c·e6b0·bf52·2ab8·c2bb··....,..L...R*... | ||
00000b90:·eb | 00000b90:·1aeb·1dba·57c0·bb10·dea5·d235·f743·17de··....W......5.C.. | ||
00000ba0:· | 00000ba0:·1c4f·8a17·5e78·effe·b169·789c·c7e3·2672··.O..^x...ix...&r | ||
00000bb0:· | 00000bb0:·4915·decb·40e3·0c8f·c7f0·9826·85f7·1b65··I...@......&...e | ||
00000bc0:· | 00000bc0:·0712·5baa·0603·041e·d3f1·787c·d955·8de3··..[.......x|.U.. | ||
00000bd0:· | 00000bd0:·fd4e·c180·79cb·4f0f·de8b·f0de·8377·3343··.N..y.O......w3C | ||
00000be0:· | 00000be0:·0ce1·bd1b·8b20·3c0e·c263·199a·518c·8804··.....·<..c..Q... | ||
00000bf0:· | 00000bf0:·a3d1·c827·3f66·6e38·542c·9bc8·3344·714f··...'?fn8T,..3DqO | ||
00000c00:· | 00000c00:·e551·08e4·6a20·3cb6·f298·e965·5729·39dd··.Q..j·<....eW)9. | ||
00000c10:· | 00000c10:·af77·a9d8·cdbb·9a82·7725·efea·556f·c7b4··.w......w%..Uo.. | ||
00000c20:· | 00000c20:·e83e·27f6·e6b6·0ade·c778·4fd7·7857·1b0a··.>'......xO.xW.. | ||
00000c30:· | 00000c30:·5b2a·2929·efdd·6ea2·3c26·e3b1·188e·4e28··[*))..n.<&....N( | ||
00000c40:· | 00000c40:·1a26·851e·9cf1·2e36·0ade·af6a·ac0f·8df7··.&.....6...j.... | ||
00000c50:· | 00000c50:·f28c·7733·ded5·31de·d380·823a·6dde·6b4b··..w3..1....:m.kK | ||
00000c60:· | 00000c60:·bc5b·ef16·7857·4bd0·6496·6246·8f97·3c0e··.[..xWK.d.bF..<. | ||
00000c70:· | 00000c70:·f3b2·ab5a·82f7·9b83·d909·6d2a·c79a·8f6b··...Z......m*...k | ||
00000c80:· | 00000c80:·2755·2f08·de79·783f·f298·7857·fb09·5baa··'U/..yx?..xW..[. | ||
00000c90:· | 00000c90:·a6e2·bd5b·e9c7·e30d·3c2e·4109·4d0a·9d50··...[....<.A.M..P | ||
00000ca0:· | 00000ca0:·22a5·3229·3ccb·1b0e·1d6f·a152·19a2·213a··".2)<....o.R..!: | ||
00000cb0:· | 00000cb0:·3625·8547·8cbc·db4e·e2fd·2a47·9e23·de77··6%.G...N..*G.#.w | ||
00000cc0:· | 00000cc0:·a041·c4bb·0fef·fd66·ed36·f23e·e48c·201a··.A.....f.6.>..·. | ||
00000cd0:· | 00000cd0:·5c90·de39·2de4·3dc8·bbca·c33b·0936·a820··\..9-.=....;.6.· | ||
00000ce0:· | 00000ce0:·8793·6d1d·de73·785a·749f·d3bd·0466·9c6b··..m..sxZt....f.k | ||
00000cf0:· | 00000cf0:·7836·6aa0·3fe9·b5ea·9e5a·5d75·d555·fbb4··x6j.?....Z]u.U.. | ||
00000d00:· | 00000d00:·3cee·3c56·7ad9·55bd·f78b·8319·1d9b·7a5c··<.<Vz.U.......z\ | ||
00000d10:· | 00000d10:·3be9·1642·74b7·ea2e·a70b·a303·4ec4·10a3··;..Bt.......N... | ||
00000d20:· | 00000d20:·7b37·cbbb·ea98·898e·934e·20ae·2cba·c359··{7.......N·.,..Y | ||
00000d30:· | 00000d30:·2289·8e8d·e898·8497·5dd5·2bba·df27·1430··".......].+..'.0 | ||
Max diff block lines reached; -1/58101 bytes (-0.00%) of diff not shown. |
Offset 1, 1204 lines modified | Offset 1, 1204 lines modified | Diff chunk too large, falling back to line-by-line diff (1203 lines added, 1203 lines removed) | |
00000000:·4361·6d6c·3139·3939·5430·3334·8495·a6bd··Caml1999T034.... | 00000000:·4361·6d6c·3139·3939·5430·3334·8495·a6bd··Caml1999T034.... | ||
00000010:·1381·961 | 00000010:·1381·9618·82c9·25ba·4d81·ee42·81ea·0428··......%.M..B...( | ||
00000020:·b52f·fd00·58 | 00000020:·b52f·fd00·587d·5802·3ab5·3bc7·4f10·106c··./..X}X.:.;.O..l | ||
00000030:·11a5·03ff·b | 00000030:·11a5·03ff·b074·bf89·8cfe·7a65·ff9f·0450··.....t....ze...P | ||
00000040:·7 | 00000040:·7f46·74fb·9170·4ee9·001f·c3b0·3251·46cd··.Ft..pN.....2QF. | ||
00000050:· | 00000050:·cbb6·b7ec·54a1·0f50·5f4e·0753·f022·cd18··....T..P_N.S.".. | ||
00000060:· | 00000060:·638c·3106·9f0c·60a2·b50a·a8a7·0a46·af86··c.1...`......F.. | ||
00000070:·ff | 00000070:·fff6·7fc9·b359·4262·49f8·4db6·410c·260c··.....YBbI.M.A.&. | ||
00000080:·0c | 00000080:·470c·532c·51a8·bc95·0ee6·03f6·1eb0·5f32··G.S,Q........._2 | ||
00000090:·c | 00000090:·cab7·01a4·8043·b4da·3885·cacb·3043·c9bd··.....C..8...0C.. | ||
000000a0:· | 000000a0:·858b·f253·461a·4a6e·2d27·ec26·ec57·87eb··...SF.Jn-'.&.W.. | ||
000000b0:· | 000000b0:·8dc3·f50e·e242·0cf1·2898·70c1·9aba·2d28··.....B..(.p...-( | ||
000000c0:· | 000000c0:·df72·caf7·9cf2·c738·e537·b054·7888·94cf··.r.....8.7.Tx... | ||
000000d0:· | 000000d0:·b150·7267·19c0·da4b·4b94·57a2·fc25·2ada··.Prg...KK.W..%*. | ||
000000e0:· | 000000e0:·c1a3·878f·a3f2·3f94·20e2·8812·860b·9ac7··......?.·....... | ||
000000f0:·0 | 000000f0:·0fe5·7d28·7f39·28df·58c6·3744·ab5d·b2a1··..}(.9(.X.7D.].. | ||
00000100:· | 00000100:·fc9e·f297·4df9·ee81·8f96·f2eb·d5a0·bc9d··....M........... | ||
00000110:· | 00000110:·3b17·94f7·91a3·3c09·e5a7·cadf·17f8·dd02··;.....<......... | ||
00000120:· | 00000120:·bf79·e0f3·1e6e·0482·f502·4a1e·aed6·b229··.y...n....J....) | ||
00000130:· | 00000130:·4df9·0696·6f1e·e58f·4be5·83e5·a74a·6e2d··M...o...K....Jn- | ||
00000140:·25 | 00000140:·2500·297f·5541·790a·cadf·314c·52f5·a5e1··%.).UAy...1LR... | ||
00000150:· | 00000150:·6416·4e76·1241·794b·8519·0e11·98f2·1da6··d.Nv.AyK........ | ||
00000160:· | 00000160:·7cdf·287f·d452·fe49·f986·52be·6fe5·8f0f··|.(..R.I..R.o... | ||
00000170:· | 00000170:·9497·52fe·5e1e·e5bb·2128·ff2b·7fc5·3049··..R.^...!(.+..0I | ||
00000180:· | 00000180:·d578·a898·cadb·a572·0af3·9b26·537e·4c79··.x.....r...&S~Ly | ||
00000190:· | 00000190:·106e·94b7·b7d2·dae9·28e5·6f94·effe·52de··.n......(.o...R. | ||
000001a0:· | 000001a0:·4bf9·1b86·49aa·5621·852d·e5ad·943e·c0c9··K...I.V!.-...>.. | ||
000001b0:· | 000001b0:·7e4e·7e12·c2ab·fc91·f23b·dcca·773b·29df··~N~......;..w;). | ||
000001c0:· | 000001c0:·a4fc·0573·c29d·2e6f·a3d8·3a59·2baf·0ab3··...s...o..:Y+... | ||
000001d0:· | 000001d0:·9ade·b0b7·a647·d3df·bebf·9dfe·63d2·2f41··.....G......c./A | ||
000001e0:· | 000001e0:·061c·6c50·47aa·8a46·fecd·1f55·7267·31a1··..lPG..F...Urg1. | ||
000001f0:· | 000001f0:·34a0·3cd5·9506·2577·960f·3c28·b9b3·9c50··4.<...%w..<(...P | ||
00000200:· | 00000200:·3675·5072·6759·0156·be2c·7fbf·3049·d524··6uPrgY.V.,..0I.$ | ||
00000210:· | 00000210:·489d·dcc1·c94d·5aaf·f2f6·4904·7f47·fdeb··H....MZ...I..G.. | ||
00000220:· | 00000220:·7f5b·007f·f3fa·831f·8392·3bcb·132f·2acf··.[........;../*. | ||
00000230:· | 00000230:·2fc6·afc4·7fbb·8a9f·4ec9·9da5·21f8·2dd4··/.......N...!.-. | ||
00000240:· | 00000240:·6fa5·8cdd·51bf·0555·fc5e·fc5d·fcd7·85bf··o...Q..U.^.].... | ||
00000250:· | 00000250:·35c8·404e·770b·fa4b·f85b·80fa·bbb3·fe29··5.@Nw..K.[.....) | ||
00000260:· | 00000260:·fe6b·ffa6·fa1b·cf7f·ec0b·e4dc·a55e·71c7··.k...........^q. | ||
00000270:· | 00000270:·6a4b·f8d7·9b65·49c8·ea46·e24f·6a5e·e7f9··jK...eI..F.Oj^.. | ||
00000280:· | 00000280:·57f8·bb91·e8ce·f353·5072·6fe9·f34f·19bb··W......SPro..O.. | ||
00000290:· | 00000290:·db14·7bad·352a·6b6d·6b3b·cfff·a6e4·ded2··..{.5*kmk;...... | ||
000002a0:· | 000002a0:·2bfc·714a·6e2d·37fc·36fc·3787·8e02·9af8··+.qJn-7.6.7..... | ||
000002b0:·7 | 000002b0:·746f·d60a·59dd·ddc1·df1e·fc0d·c17f·94f3··to..Y........... | ||
000002c0:· | 000002c0:·83f0·df36·25b7·1638·ede6·bf52·e14f·e1bf··...6%..8...R.O.. | ||
000002d0:· | 000002d0:·5e98·a46a·dfd2·c962·4eee·564a·1aaf·09bf··^..j...bN.VJ.... | ||
000002e0:· | 000002e0:·75c2·bcd4·2bee·a821·6bdd·e0e4·3827·f35a··u...+..!k...8'.Z | ||
000002f0:· | 000002f0:·2969·8cb2·2afd·12fc·3b40·f077·73f0·6ff0··)i..*...;@.ws.o. | ||
00000300:· | 00000300:·df2e·4c52·f517·2f77·ce6f·e5fc·376b·e535··..LR../w.o..7k.5 | ||
00000310:· | 00000310:·6186·22b2·9d65·abb2·bafb·f6a7·bf92·df6a··a."..e.........j | ||
00000320:· | 00000320:·0d71·2807·f8db·0a4a·ee2c·73a6·8c56·ca38··.q(....J.,s..V.8 | ||
00000330:·5 | 00000330:·6564·5372·67b1·a0e4·2963·6319·a78c·dd4c··edSrg...)cc....L | ||
00000340:·f | 00000340:·ffd2·7fb9·3049·d55d·aa9c·dce4·e40a·947e··....0I.].......~ | ||
00000350:· | 00000350:·cbbb·5947·db54·d776·2bf9·7bfc·3cfe·8b24··..YG.T.v+.{.<..$ | ||
00000360:· | 00000360:·c7e5·dff2·df24·ff01·0f10·7523·f023·b98f··.....$....u#.#.. | ||
00000370:· | 00000370:·efb8·8d32·fdc1·78fd·7f77·9f41·de0c·f2d7··...2..x..w.A.... | ||
00000380:· | 00000380:·b615·e4ab·209d·20df·0449·04f9·3f64·0fe4··....·.·..I..?d.. | ||
00000390:· | 00000390:·f990·7bc8·eb21·8f65·a38c·3de8·f50e·c8ff··..{..!.e..=..... | ||
000003a0:· | 000003a0:·60e3·ef06·8092·abe3·5fa9·2c8e·ffea·68a5··`......._.,...h. | ||
000003b0:· | 000003b0:·b630·4905·c488·480f·afaf·5746·3ba4·1c64··.0I...H...WF;..d | ||
000003c0:· | 000003c0:·a590·189d·cce3·e409·66bf·c592·8403·f27d··........f......} | ||
000003d0:· | 000003d0:·c997·ffed·4bfe·bd01·f9c6·807c·9730·3ae4··....K......|.0:. | ||
000003e0:· | 000003e0:·cd40·4898·e140·91ef·21f9·3e4b·b48c·95b2··.@H..@..!.>K.... | ||
000003f0:· | 000003f0:·d28b·b40c·342b·f5a8·4b47·98cb·8821·df5f··....4+..KG...!._ | ||
00000400:· | 00000400:·c837·ad56·6e21·7f65·b405·32c2·2cc5·09f9··.7.Vn!.e..2.,... | ||
00000410:·9 | 00000410:·e691·ef5b·892b·f9e4·4a06·8a30·2340·be08··...[.+..J..0#@.. | ||
00000420:· | 00000420:·115d·5119·af17·7a9d·0acf·1173·1179·0370··.]Q...z....s.y.p | ||
00000430:· | 00000430:·901f·2a6d·9007·81bc·1133·8dbc·1596·8dea··..*m.....3...... | ||
00000440:· | 00000440:·2235·9a67·ad6d·0ec8·3bf1·1b8a·24be·19de··"5.g.m..;...$... | ||
00000450:· | 00000450:·4176·37d1·1338·4810·c877·1df2·52e4·6f13··Av7..8H..w..R.o. | ||
00000460:· | 00000460:·ed88·56db·f4fa·6a8f·dded·e7f5·1e5e·8fe2··..V...j......^.. | ||
00000470:· | 00000470:·75ab·2b09·e080·b10d·1813·0b10·8549·9eea··u.+..........I.. | ||
00000480:· | 00000480:·ca28·8510·2b53·f039·ef70·061a·608a·acf3··.(..+S.9.p..`... | ||
00000490:· | 00000490:·13f9·2b23·1555·a856·3440·7e0d·c23c·5ce3··..+#.U.V4@~..<\. | ||
000004a0:· | 000004a0:·1bf2·a8b2·4670·8673·fe1d·e08a·f5ca·88c5··....Fp.s........ | ||
000004b0:· | 000004b0:·03e4·8130·0f7b·3e20·530f·7b6d·5349·72c0··...0.{>·S.{mSIr. | ||
000004c0:· | 000004c0:·b980·b393·0ef2·c6db·590c·2222·bf5e·19b5··........Y."".^.. | ||
000004d0:· | 000004d0:·58af·8c8d·653c·fe60·f661·af6d·de94·d6cd··X...e<.`.a.m.... | ||
000004e0:· | 000004e0:·2099·0c92·9974·90e7·a288·3c49·7e25·f43a···....t....<I~%.: | ||
000004f0:· | 000004f0:·1e1f·58b6·795a·50f2·23e8·206f·d4c0·cd0f··..X.yZP.#.·o.... | ||
00000500:· | 00000500:·a8e6·a8e8·236e·4192·bdf6·602e·027d·3bac··....#nA...`..};. | ||
00000510:· | 00000510:·b06c·946f·0d1c·2f6c·9ef8·580f·607e·4264··.l.o../l..X.`~Bd | ||
00000520:·5 | 00000520:·578b·a7d7·785d·8dd7·6f1f·702b·e375·32ec··W...x]..o.p+.u2. | ||
00000530:· | 00000530:·f1ea·d85a·98a4·6a9a·ec64·3e39·022d·ac20··...Z..j..d>9.-.· | ||
00000540:· | 00000540:·c00c·5c2a·4a89·0289·d78f·30e2·89a3·1180··..\*J.....0..... | ||
00000550:· | 00000550:·7a78·9d84·d7a3·5e9f·e175·2bab·205e·ef46··zx....^..u+.·^.F | ||
00000560:· | 00000560:·e275·2788·1822·4b01·9048·026a·0925·604c··.u'.."K..H.j.%`L | ||
00000570:· | 00000570:·048c·8bc6·d76d·151e·cc50·dd33·bc6e·5580··.....m...P.3.nU. | ||
00000580:· | 00000580:·018f·0aaf·7777·efb0·238d·6bd4·eb4d·af5f··....ww..#.k..M._ | ||
00000590:· | 00000590:·6192·eae9·f556·f3fa·6aec·a6d7·dbbc·fe43··a....V..j......C | ||
000005a0:· | 000005a0:·0baf·7753·bd1e·040a·af8b·215a·a9ac·09af··..wS......!Z.... | ||
000005b0:· | 000005b0:·5f1d·575e·3716·26a9·f8fc·2912·35bd·be52··_.W^7.&...).5..R | ||
000005c0:· | 000005c0:·5d19·d73e·3fc0·5807·1813·53d2·78a5·5eb7··]..>?.X...S.x.^. | ||
000005d0:·5 | 000005d0:·5476·54f9·3976·135f·1fbe·7ebb·cdb8·aee5··TvT.9v._..~..... | ||
000005e0:· | 000005e0:·f50e·a347·cdeb·6b5f·d066·b526·b9da·6313··...G..k_.f.&..c. | ||
000005f0:· | 000005f0:·87be·d757·3ba5·8859·0c91·d57a·f11c·3b89··...W;..Y...z..;. | ||
00000600:· | 00000600:·49aa·5e03·84b1·0fc6·6c52·d278·c7bc·be5a··I.^.....lR.x...Z | ||
00000610:· | 00000610:·2962·987d·697a·5778·58ad·604c·5deb·c4f5··)b.}izWxX.`L]... | ||
00000620:· | 00000620:·cef2·fa96·d76f·6779·3d07·2618·27c1·5898··.....ogy=.&.'.X. | ||
00000630:· | 00000630:·9246·224a·1ea2·e4a7·9434·2e79·3d8a·57f4··.F"J.....4.y=.W. | ||
00000640:· | 00000640:·5ae0·f5f4·f56b·af5d·5def·00cb·3603·af13··Z....k.]]...6... | ||
00000650:· | 00000650:·bdde·c0eb·b7ab·3049·a5a4·1378·fda8·8300··......0I...x.... | ||
00000660:· | 00000660:·475e·37e0·65e4·f522·af5f·a2d7·75f0·61a6··G^7.e.."._..u.a. | ||
00000670:· | 00000670:·ca15·f27a·90d7·572a·4b64·fa15·89bf·62af··...z..W*Kd....b. | ||
00000680:· | 00000680:·4814·52f4·119f·883d·293f·a456·aaab·6377··H.R....=)?.V..cw | ||
00000690:· | 00000690:·01af·eb78·91af·13e1·7ad6·0c43·af28·4c1e··...x....z..C.(L. | ||
000006a0:· | 000006a0:·6800·c648·601c·9cbd·6e77·ccc4·62af·48fc··h..H`...nw..b.H. | ||
000006b0:· | 000006b0:·eb53·b85e·be7e·9b0a·9354·bae6·d78f·50c8··.S.^.~...T....P. | ||
000006c0:· | 000006c0:·a086·eb51·c460·86eb·5d94·e13a·1930·20e0··...Q.`..]..:.0·. | ||
000006d0:·2 | 000006d0:·8811·2e5c·dfc2·f53b·85eb·2f5c·4164·081a··...\...;../\Ad.. | ||
000006e0:· | 000006e0:·d70b·e03a·143e·b86e·82eb·d7f5·ebc2·123f··...:.>.n.......? | ||
000006f0:· | 000006f0:·8a0e·c001·631b·8cd5·a4a4·f116·e1ba·b5c1··....c........... | ||
00000700:· | 00000700:·dce3·07d7·6970·bd8f·ebb7·a730·4945·46d9··....ip.....0IEF. | ||
00000710:· | 00000710:·3db8·7e7c·a105·02b8·1e83·0eae·e7e0·faa5··=.~|............ | ||
00000720:· | 00000720:·c1f5·3c7a·6a32·d86a·3b70·1d06·d75f·585d··..<zj2.j;p..._X] | ||
00000730:· | 00000730:·efc0·f511·5cb7·1a00·0b26·0cf6·c645·c2d0··....\....&...E.. | ||
00000740:· | 00000740:·2879·8c92·8129·69bc·27b8·6e87·9805·e0ba··(y...)i.'.n..... | ||
00000750:· | 00000750:·1405·aebf·719d·4e94·1401·b83e·0801·5e94··....q.N....>..^. | ||
00000760:· | 00000760:·7c80·92d3·a4a4·f17a·e0ba·85a2·63ee·3181··|......z....c.1. | ||
00000770:· | 00000770:·eb16·a871·1d8d·eb4f·5cb7·aa20·ca04·ae1b··...q...O\..·.... | ||
00000780:· | 00000780:·c08a·2a4a·86a2·6408·e0b8·6e9f·e480·ae0b··..*J..d...n..... | ||
00000790:· | 00000790:·5dbf·bc7e·e27a·d005·05e8·7aa0·279c·2819··]..~.z....z.'.(. | ||
000007a0:· | 000007a0:·8992·7f29·69bc·4fae·5b27·382b·4c52·3510··...)i.O.['8+LR5. | ||
000007b0:· | 000007b0:·7e4a·cea1·6434·2969·bc62·5cb7·5188·98bb··~J..d4)i.b\.Q... | ||
000007c0:· | 000007c0:·1075·ab64·11d7·3b6a·359a·a40f·520f·cf75··.u.d..;j5...R..u | ||
000007d0:· | 000007d0:·9eeb·cd73·bdfb·8692·3f28·d997·9246·3c67··...s....?(...F<g | ||
Max diff block lines reached; -1/166094 bytes (-0.00%) of diff not shown. |
Offset 88, 439 lines modified | Offset 88, 439 lines modified | ||
00000570:·e35a·23a0·a026·5374·646c·6962·9030·e8d9··.Z#..&Stdlib.0.. | 00000570:·e35a·23a0·a026·5374·646c·6962·9030·e8d9··.Z#..&Stdlib.0.. | ||
00000580:·af45·8547·c450·80a7·1b9a·6eae·d658·a0a0··.E.G.P....n..X.. | 00000580:·af45·8547·c450·80a7·1b9a·6eae·d658·a0a0··.E.G.P....n..X.. | ||
00000590:·3843·616d·6c69·6e74·6572·6e61·6c46·6f72··8CamlinternalFor | 00000590:·3843·616d·6c69·6e74·6572·6e61·6c46·6f72··8CamlinternalFor | ||
000005a0:·6d61·7442·6173·6963·7390·302e·f2d9·1ced··matBasics.0..... | 000005a0:·6d61·7442·6173·6963·7390·302e·f2d9·1ced··matBasics.0..... | ||
000005b0:·81f6·c72f·852b·ab8a·b406·e040·8495·a6be··.../.+.....@.... | 000005b0:·81f6·c72f·852b·ab8a·b406·e040·8495·a6be··.../.+.....@.... | ||
000005c0:·0000·0004·0000·0002·0000·0005·0000·0005··................ | 000005c0:·0000·0004·0000·0002·0000·0005·0000·0005··................ | Diff chunk too large, falling back to line-by-line diff (432 lines added, 432 lines removed) | |
000005d0:·a090·4040·4361·6d6c·3139·3939·5430·3334··..@@Caml1999T034 | 000005d0:·a090·4040·4361·6d6c·3139·3939·5430·3334··..@@Caml1999T034 | ||
000005e0:·8495·a6bd·10b5·6 | 000005e0:·8495·a6bd·10b5·6981·8904·952d·d94b·d46e··......i....-.K.n | ||
000005f0:·28b5·2ffd·0058· | 000005f0:·28b5·2ffd·0058·05d7·008a·56ed·4757·204a··(./..X....V.GW·J | ||
00000600:· | 00000600:·cada·7429·259d·774b·b5f9·539b·77a9·5faa··..t)%.wK..S.w._. | ||
00000610:· | 00000610:·a623·d24f·485f·ccf4·e6fd·c225·2436·f605··.#.OH_.....%$6.. | ||
00000620:· | 00000620:·4c22·a42e·f69c·3dbb·b314·51f1·297f·b057··L"....=...Q.)..W | ||
00000630:·c | 00000630:·c898·a79b·0d21·b85b·b4e0·2db2·b7d9·0188··.....!.[..-..... | ||
00000640:· | 00000640:·4896·2a26·b150·9266·b3e8·ba6a·58b5·f5bb··H.*&.P.f...jX... | ||
00000650:·5cd2 | 00000650:·915c·d2d2·067f·0464·0459·043c·5ef8·8cd7··.\.....d.Y.<^... | ||
00000660:· | 00000660:·39af·a7c0·ac4e·0957·27e1·6a25·30ab·d3a2··9....N.W'.j%0... | ||
00000670:· | 00000670:·0f26·b643·7f45·a26f·8098·9c8c·93e8·ebd0··.&.C.E.o........ | ||
00000680:· | 00000680:·a7c3·80fe·8a63·6d71·bb5d·1f63·325e·8ff1··.....cmq.].c2^.. | ||
00000690:· | 00000690:·5a0a·ccea·ac74·4be9·6e82·59dd·6a94·8ea4··Z....tK.n.Y.j... | ||
000006a0:· | 000006a0:·6daa·444f·2b73·a44a·af8d·acd5·c62a·f4a2··m.DO+s.J.....*.. | ||
000006b0:· | 000006b0:·25ad·bc53·a479·b36a·a9ac·b4a5·688f·da78··%..S.y.j....h..x | ||
000006c0:·2 | 000006c0:·2b81·84fa·413e·dd99·395e·281f·e453·794f··+...A>..9^(..SyO | ||
000006d0:· | 000006d0:·1bd9·e5a2·e585·fa41·5e1f·e4a5·3ddd·2222··.......A^...=."" | ||
000006e0:· | 000006e0:·e948·955e·2ad9·0dbd·50b4·a7a2·132b·bde3··.H.^*...P....+.. | ||
000006f0:· | 000006f0:·45cb·8b96·46e6·59a6·32f3·46bb·5366·6923··E...F.Y.2.F.Sfi# | ||
00000700:· | 00000700:·67b6·f3d6·c6f4·4c6f·ec22·6997·cba7·d65f··g.....Lo."i...._ | ||
00000710:· | 00000710:·338e·d31f·8275·fd5d·9804·14d1·1f93·4310··3....u.]......C. | ||
00000720:· | 00000720:·fd1f·fa58·8e0e·e338·7d38·63d8·383d·314b··...X...8}8c.8=1K | ||
00000730:· | 00000730:·2035·9756·6db3·c338·4d1f·4d7f·d5a1·2fa6···5.Vm..8M.M.../. | ||
00000740:·8 | 00000740:·8726·4cb0·987e·185a·5f4b·df86·dd0a·f3a6··.&L..~.Z_K...... | ||
00000750:· | 00000750:·a1df·4687·7112·a514·879a·b5f4·d536·3bbc··..F.q........6;. | ||
00000760:· | 00000760:·b5c3·463e·e84e·ea66·8259·dd0a·433f·4bd0··..F>.N.f.Y..C?K. | ||
00000770:· | 00000770:·4dda·46ab·aa53·b623·97a1·96fd·3586·6d58··M.F..S.#....5.mX | ||
00000780:· | 00000780:·7ceb·57f5·f39a·a9fa·3886·316e·8bc3·577d··|.W.....8.1n..W} | ||
00000790:· | 00000790:·8c7f·747f·dd4d·6056·57c7·d555·b87a·09cc··..t..M`VW..U.z.. | ||
000007a0:· | 000007a0:·ead6·6bf4·a5bc·a4d4·4dd1·5bd5·9532·e142··..k.....M.[..2.B | ||
000007b0:· | 000007b0:·a5f7·de94·44cd·f2a2·a949·5691·35f2·9254··....D....IV.5..T | ||
000007c0:· | 000007c0:·e9a5·9d97·b4ca·4a2f·4925·e54a·f1b1·b273··......J/I%.J...s | ||
000007d0:· | 000007d0:·2694·d78c·c93e·142a·c654·4ce1·6a26·5cbd··&....>.*.TL.j&\. | ||
000007e0:· | 000007e0:·04b3·ba75·ece7·5804·dd29·8e2d·1791·cb25··...u..X..).-...% | ||
000007f0:·e | 000007f0:·e618·6ecd·2b98·9d5a·a42d·0ecb·79e3·6a34··..n.+..Z.-..y.j4 | ||
00000800:· | 00000800:·ae4e·02b3·ba15·4a3f·17a9·d14d·b465·0787··.N....J?...M.e.. | ||
00000810:· | 00000810:·355b·6063·b849·8756·6a2e·0169·4995·b559··5[`c.I.Vj..iI..Y | ||
00000820:· | 00000820:·eaa4·434b·1d22·8322·6bb7·d959·1545·5e95··..CK."."k..Y.E^. | ||
00000830:· | 00000830:·a8ed·2623·6d51·33d2·2c69·e4cc·9c42·2477··..&#mQ3.,i...B$w | ||
00000840:· | 00000840:·d4af·623b·6d36·5228·b7e3·e92c·a366·e416··..b;m6R(...,.f.. | ||
00000850:· | 00000850:·d959·938a·42b3·9c8c·721b·8c80·75d6·6836··.Y..B...r...u.h6 | ||
00000860:·2 | 00000860:·f2ea·8cda·221b·5327·a31c·cc29·cb76·5691··....".S'...).vV. | ||
00000870:·5 | 00000870:·5551·b433·2abd·3515·e524·e853·9999·b793··UQ.3*.5..$.S.... | ||
00000880:·e | 00000880:·1695·9e4c·42b9·ee63·a1c2·663a·366b·e9a2··...LB..c..f:6k.. | ||
00000890:· | 00000890:·50c9·d2d1·4951·4e8f·94d4·24ab·6e53·b631··P...IQN...$.nS.1 | ||
000008a0:· | 000008a0:·6a56·d6c6·2b73·0929·4706·1d9b·55bc·849d··jV..+s.)G...U... | ||
000008b0:· | 000008b0:·a2b4·2337·012b·64ad·a445·d1ce·a899·8984··..#7.+d..E...... | ||
000008c0:· | 000008c0:·28a7·4516·56c5·4bd8·2ba7·8dec·1295·2555··(.E.V.K.+.....%U | ||
000008d0:· | 000008d0:·5e95·4790·7273·ac8f·356d·649a·8e56·51b5··^.G.rs..5md..VQ. | ||
000008e0:· | 000008e0:·d146·a665·2dca·3ca3·4cdb·8805·425e·b38f··.F.e-.<.L...B^.. | ||
000008f0:· | 000008f0:·8d61·4c85·0a9b·71b9·a48d·962e·abf8·8a55··.aL...q........U | ||
00000900:· | 00000900:·5d40·2e97·8885·b4dd·6ae5·488b·4a6d·248a··]@......j.H.Jm$. | ||
00000910:· | 00000910:·c68c·7244·1ca1·4588·c78f·525a·9ab7·1cb9··..rD..E...RZ.... | ||
00000920:· | 00000920:·3846·5032·cd92·0aca·b969·9a32·4b5b·8aea··8FP2.....i.2K[.. | ||
00000930:· | 00000930:·c8e9·f003·ce66·7546·569d·4e39·7276·7219··.....fuFV.N9rvr. | ||
00000940:· | 00000940:·1969·9e4c·399c·9698·6799·5a9d·3a72·6298··.i.L9...g.Z.:rb. | ||
00000950:· | 00000950:·a466·690a·e54e·c031·582d·2838·059b·bf58··.fi..N.1X-(8...X | ||
00000960:· | 00000960:·b58d·2ea7·60b3·2a45·84c8·4fce·4e6e·6184··....`.*E..O.Nna. | ||
00000970:· | 00000970:·7afa·c9d9·c964·62f8·c952·8a96·b51c·b9ab··z....db..R...... | ||
00000980:· | 00000980:·2b4d·5697·99d2·a8ac·2e63·4d47·cee6·2449··+MV......cMG..$I | ||
00000990:· | 00000990:·88d9·e407·90d4·2c83·7224·582d·1c8b·a566··......,.r$X-...f | ||
000009a0:· | 000009a0:·0994·a359·2d8c·a10c·e5a4·8ea4·e359·a305··...Y-........Y.. | ||
000009b0:· | 000009b0:·e5b2·582d·8c9f·d8ce·5476·b3a5·a879·caa2··..X-....Tv...y.. | ||
000009c0:· | 000009c0:·ccb3·444d·32e5·4206·c98d·60b5·304e·6272··..DM2.B...`.0Nbr | ||
000009d0:· | 000009d0:·2181·7254·6c11·db48·25cb·9143·62b5·700c··!.rTl..H%..Cb.p. | ||
000009e0:· | 000009e0:·c730·8612·45de·6c69·8e9c·9dcc·c46a·a959··.0..E.li.....j.Y | ||
000009f0:· | 000009f0:·48b4·36d2·8272·7632·198c·91d4·ce53·2a47··H.6..rv2.....S*G | ||
00000a00:· | 00000a00:·ee03·ab85·31f6·b118·639c·f100·328e·611b··....1...c...2.a. | ||
00000a10:· | 00000a10:·c34e·b06b·8b3c·f7b0·aacb·2e0f·5c2e·5149··.N.k.<......\.QI | ||
00000a20:· | 00000a20:·d668·b38d·4139·bcb5·c586·8d99·3469·7006··.h..A9......4ip. | ||
00000a30:·1 | 00000a30:·16e3·ec02·e272·8916·586c·81c5·b88b·0bcb··.....r..Xl...... | ||
00000a40:· | 00000a40:·7504·6675·18c7·ca5a·9591·d591·5459·93fd··u.fu...Z....TY.. | ||
00000a50:· | 00000a50:·d0ad·d7c7·4808·4d65·248d·4616·91b3·12bd··....H.Me$.F..... | ||
00000a60:· | 00000a60:·a7c9·e392·5765·3aca·ca9a·95d5·78b3·6aa4··....We:.....x.j. | ||
00000a70:· | 00000a70:·ed66·7549·db68·9e65·3ada·48ab·f3d6·6ab1··.fuI.h.e:.H...j. | ||
00000a80:· | 00000a80:·7bef·f5f1·3182·22ad·b2a4·cc48·1b39·b335··{...1."....H.9.5 | ||
00000a90:· | 00000a90:·3d5d·9344·4f2a·d91d·af8d·bc3a·2f9a·92e8··=].DO*.....:/... | ||
00000aa0:· | 00000aa0:·25d3·d22c·69e6·d2bd·bdd8·80d1·e59c·d598··%..,i........... | ||
00000ab0:· | 00000ab0:·0336·0d17·c651·a479·9a51·3a74·6bca·854c··.6...Q.y.Q:tk..L | ||
00000ac0:·5 | 00000ac0:·8d6a·55a3·ec1c·caab·0e6b·5eb5·c874·9495··.jU......k^..t.. | ||
00000ad0:· | 00000ad0:·33d2·f644·c865·c4e5·1203·646a·9666·d843··3..D.e....dj.f.C | ||
00000ae0:· | 00000ae0:·619f·461e·fb15·3b69·8bc3·ae1f·e31b·5a00··a.F...;i......Z. | ||
00000af0:· | 00000af0:·5b05·b0bb·dc94·74ba·3dee·d86f·c165·d8ef··[.....t.=..o.e.. | ||
00000b00:· | 00000b00:·9620·420c·fb26·86c0·639f·c51d·fb09·0821··.·B..&..c......! | ||
00000b10:· | 00000b10:·8114·50c0·c2fe·0afb·150a·fb20·aaf0·6202··..P........·..b. | ||
00000b20:·1 | 00000b20:·13f6·4b88·b11f·edaf·e224·8175·959e·604f··..K......$.u..`O | ||
00000b30:· | 00000b30:·819d·05b3·ba75·08fb·6ca3·db3c·4bf3·1634··.....u..l..<K..4 | ||
00000b40:· | 00000b40:·c6fe·665f·2607·fb15·3769·8b33·6386·04bb··..f_&...7i.3c... | ||
00000b50:· | 00000b50:·02b0·b160·5657·c5fb·89f7·557a·9aa9·1529··...`VW....Uz...) | ||
00000b60:· | 00000b60:·e342·de7b·efd3·8501·01f6·6df0·0df6·3b2b··.B.{......m...;+ | ||
00000b70:· | 00000b70:·3834·d8db·dea8·f62b·20c0·fe00·0a78·c189··84.....+·....x.. | ||
00000b80:· | 00000b80:·2654·b04f·c17e·bdd9·bbf1·3247·8912·ecad··&T.O.~....2G.... | ||
00000b90:· | 00000b90:·62f6·a2bd·06b6·cd96·238c·2802·ce1b·88f7··b.......#.(..... | ||
00000ba0:· | 00000ba0:·0d66·75ab·947d·cea0·9bbc·3aab·489b·8e22··.fu..}....:.H.." | ||
00000bb0:· | 00000bb0:·f637·ec9d·5823·f62b·66d2·16c7·6499·ec31··.7..X#.+f...d..1 | ||
00000bc0:· | 00000bc0:·56f3·cef2·4661·56f7·f316·c0db·3623·a7cc··V...FaV.....6#.. | ||
00000bd0:· | 00000bd0:·914a·66de·ee8c·44cb·4b52·a5d7·2c6f·d66c··.Jf...D.KR..,o.l | ||
00000be0:· | 00000be0:·246d·b5f1·a223·166d·09bd·d5ac·d0a7·4b3b··$m...#.m......K; | ||
00000bf0:· | 00000bf0:·c7d9·6c7c·ba2d·08b1·0f71·08f6·3b18·1b0f··..l|.-...q..;... | ||
00000c00:· | 00000c00:·ec03·b0c5·81fd·9015·621f·6445·d2e0·8690··........b.dE.... | ||
00000c10:·3 | 00000c10:·3d0f·fbf5·863d·1040·18c0·30b0·87d9·3bdf··=....=.@..0...;. | ||
00000c20:·e | 00000c20:·e57c·b762·cd04·9682·1a11·38f0·fede·25c0··.|.b......8...%. | ||
00000c30:· | 00000c30:·ac6e·7dd9·e700·74cf·6623·109e·ef55·7c37··.n}...t.f#...U|7 | ||
00000c40:·0 | 00000c40:·038c·ef2b·5ed2·1697·e7fb·8e71·9f08·db71··...+^......q...q | ||
00000c50:· | 00000c50:·6c9f·5c9e·6e56·cd3c·ef94·5916·91e6·69bb··l.\.nV.<..Y...i. | ||
00000c60:· | 00000c60:·a5a4·ed42·71b9·4f17·dbf9·9eb1·17df·773b··...Bq.O.......w; | ||
00000c70:· | 00000c70:·355b·7c97·c2ce·772d·beaf·557c·ffe1·0a38··5[|...w-..U|...8 | ||
00000c80:· | 00000c80:·6f70·14df·77b8·ef54·dfbf·a469·820d·106a··op..w..T...i...j | ||
00000c90:· | 00000c90:·78b0·9d83·6d13·6675·eb11·df33·06dd·e699··x...m.fu...3.... | ||
00000ca0:· | 00000ca0:·92b5·29b3·4485·c87c·f7f2·5d4d·eefb·8a97··..).D..|..]M.... | ||
00000cb0:· | 00000cb0:·dae2·d6ac·f98e·b118·2db6·b1d8·aea1·4ff7··........-.....O. | ||
00000cc0:· | 00000cc0:·4c2f·3a65·9e35·52ea·4271·7942·5394·4c2f··L/:e.5R.BqyBS.L/ | ||
00000cd0:·4 | 00000cd0:·147a·b9dc·2ab2·eae9·06b1·e17b·11ac·c3f7··.z..*......{.... | ||
00000ce0:· | 00000ce0:·1d16·9a31·dfb3·7cb8·e1bb·016c·f85e·c319··...1..|....l.^.. | ||
00000cf0:· | 00000cf0:·f5a9·ca0b·df0b·f07d·f5f2·ddcc·0a5f·142e··.......}....._.. | ||
00000d00:· | 00000d00:·dfb1·947c·c7f1·5dc8·57c6·c6c4·24ad·9140··...|..].W...$..@ | ||
00000d10:· | 00000d10:·6a96·6049·c976·08b6·b7c0·ac6e·2dbf·6758··j.`I.v.....n-.gX | ||
00000d20:· | 00000d20:·7715·5905·b4f4·3dc8·7729·4bbe·af58·495b··w.Y...=.w)K..XI[ | ||
00000d30:· | 00000d30:·dc94·29df·31fe·e0b3·9dc6·d765·eda4·c242··..).1......e...B | ||
00000d40:· | 00000d40:·cd72·4ccd·5396·f4fa·7e07·c9f7·1d52·0fb1··.rL.S...~....R.. | ||
Max diff block lines reached; -1/60101 bytes (-0.00%) of diff not shown. |
Offset 44, 253 lines modified | Offset 44, 253 lines modified | ||
000002b0:·c707·f2ac·7565·232e·f1fb·f6a0·a026·5374··....ue#......&St | 000002b0:·c707·f2ac·7565·232e·f1fb·f6a0·a026·5374··....ue#......&St | ||
000002c0:·646c·6962·9030·e8d9·af45·8547·c450·80a7··dlib.0...E.G.P.. | 000002c0:·646c·6962·9030·e8d9·af45·8547·c450·80a7··dlib.0...E.G.P.. | ||
000002d0:·1b9a·6eae·d658·a0a0·3843·616d·6c69·6e74··..n..X..8Camlint | 000002d0:·1b9a·6eae·d658·a0a0·3843·616d·6c69·6e74··..n..X..8Camlint | ||
000002e0:·6572·6e61·6c46·6f72·6d61·7442·6173·6963··ernalFormatBasic | 000002e0:·6572·6e61·6c46·6f72·6d61·7442·6173·6963··ernalFormatBasic | ||
000002f0:·7390·302e·f2d9·1ced·81f6·c72f·852b·ab8a··s.0......../.+.. | 000002f0:·7390·302e·f2d9·1ced·81f6·c72f·852b·ab8a··s.0......../.+.. | ||
00000300:·b406·e040·8495·a6be·0000·0004·0000·0002··...@............ | 00000300:·b406·e040·8495·a6be·0000·0004·0000·0002··...@............ | ||
00000310:·0000·0005·0000·0005·a090·4040·4361·6d6c··..........@@Caml | 00000310:·0000·0005·0000·0005·a090·4040·4361·6d6c··..........@@Caml | ||
00000320:·3139·3939·5430·3334·8495·a6bd·0f9e·3 | 00000320:·3139·3939·5430·3334·8495·a6bd·0f9e·3fc5··1999T034......?. | ||
00000330:·5 | 00000330:·5f8b·47b0·26ae·2828·b52f·fd00·58b5·7900··_.G.&.((./..X.y. | ||
00000340:·fac8·f82a·4a20·5cd6·e603·0d0c·ac40·bc8c··...*J·\......@.. | |||
00000350:·8a09·0706·0a2d·eca0·a637·799f·b210·146e··.....-...7y....n | |||
00000360:·3001·5081·68a1·0488·b07d·f5b4·cd25·6253··0.P.h....}...%bS | |||
00000370:·7744·2460·a645·d5fe·3eff·873b·62cb·7be0··wD$`.E..>..;b.{. | |||
00000380:·8b0f·ffe8·0116·69a0·ae5a·444a·5292·0daa··......i..ZDJR... | |||
00000390:·0289·0290·0255·a468·2b41·2a52·5686·f69d··.....U.h+A*RV... | |||
000003a0:·4e46·3904·9cae·4af2·06de·6436·5276·e2b2··NF9...J...d6Rv.. | |||
000003b0:·c072·01b0·3fd5·461c·6993·9d24·16a2·9c8b··.r..?.F.i..$.... | |||
000003c0:·1dea·8abe·53f4·c5d2·6d91·a29d·df15·588e··....S...m.....X. | |||
000003d0:·0e2e·e708·de70·51e5·27ab·85e2·4735·3231··.....pQ.'...G521 | |||
000003e0:·c9ad·3145·5ff4·9be8·2e4a·4872·647c·01c5··..1E_....JHrd|.. | |||
000003f0:·d026·b391·b2da·98a4·24b7·474f·a3df·4483··.&......$.GO..D. | |||
00000400:·214b·b003·d9d5·2ca4·0aa9·30c9·2d21·a581··!K....,...0.-!.. | |||
00000410:·f458·82e7·f94d·c9c4·af04·cf50·948d·a46c··.X...M.....P...l | |||
00000420:·2cbf·2a0b·6e7a·8174·ecff·e98a·be2f·d514··,.*.nz.t...../.. | |||
00000430:·074b·77d1·ffd2·a82b·c8e5·fa01·0596·3831··.Kw....+......81 | |||
00000440:·fc6c·b2b3·044d·3366·94ab·6387·0c51·1220··.l...M3f..c..Q.· | |||
00000450:·a533·1c71·4772·4120·99e0·7935·13ca·c9c9··.3.qGrA·..y5.... | |||
00000460:·1235·86e5·690e·e5d4·bcb9·7dd1·1a78·239d··.5..i.....}..x#. | |||
00000470:·8ee4·f8dc·1b68·e048·6239·e2d4·3492·e139··.....h.Hb9..4..9 | |||
00000480:·450e·e5d2·5439·c710·a40a·cf6f·24ca·7df0··E...T9.....o$.}. | |||
00000490:·af42·6365·f022·f435·d3a8·1cdd·15a1·2f3a··.Bce.".5....../: | |||
000004a0:·8b12·0528·c7e7·a2f9·c484·01ca·f1b9·6c62··...(..........lb | |||
000004b0:·af85·e934·43f1·480e·0726·8b94·d65d·2ca7··...4C.H..&...],. | |||
000004c0:·ecaa·834f·1cca·7170·c509·949b·1508·9a9c··...O..qp........ | |||
000004d0:·6328·940b·1beb·63b1·730c·8372·6063·fd67··c(....c.s..r`c.g | |||
000004e0:·5094·fba8·9c1f·29da·8472·621a·eb5f·4b49··P.....)..rb.._KI | |||
000004f0:·8e24·4d36·92a1·3982·a715·f824·07a6·b1fe··.$M6..9....$.... | |||
00000500:·9746·2b30·28d7·454a·4f29·3f29·da91·1c95··.F+0(.EJO)?).... | |||
00000510:·c6fa·d8c7·feb5·c840·5c79·1ec9·f1b9·4d8d··.......@\y....M. | |||
00000520:·858e·014d·f1b3·09e5·f85c·36ff·4922·49ce··...M.....\6.I"I. | |||
00000530:·8ee4·2868·acff·07d2·ffff·f743·b81f·93d2··..(h.......C.... | |||
00000540:·b1bf·f2ae·2fe4·f0fa·a8ee·ba28·70b9·7e60··..../......(p.~` | |||
00000550:·70f5·95e5·2794·fbad·ad38·71dc·bc79·05fa··p...'....8q..y.. | |||
00000560:·ffba·9ab8·5c3f·88f4·13e9·7f0d·2c7f·b1ac··....\?......,... | |||
00000570:·e5d5·ba36·95db·54ae·128a·3723·306a·fcca··...6..T...7#0j.. | |||
00000580:·a359·28d2·8c74·2910·2046·2319·9e5f·094e··.Y(..t).·F#.._.N | |||
00000590:·919e·3992·348f·e881·2459·3c50·eaf4·a2c6··..9.4...$Y<P.... | |||
000005a0:·90aa·044d·b09c·f240·3194·aaf2·a670·6548··...M...@1....peH | |||
000005b0:·52f4·8846·2f8a·1493·64f1·3ecf·044b·dcf9··R..F/...d.>..K.. | |||
000005c0:·8136·ef0c·bdf3·933a·cf29·9066·057a·4bc4··.6.....:.).f.zK. | |||
000005d0:·0f67·e23c·f2f4·68a1·d454·49de·4833·f4c0··.g.<..h..TI.H3.. | |||
000005e0:·1277·d270·e569·7ee7·57f3·c46f·24c3·9336··.w.p.i~.W..o$..6 | |||
000005f0:·e26c·de95·0896·b829·eff3·ccd0·3343·292e··.l.....)....3C). | |||
00000600:·9ee7·7940·8098·a719·8a5e·0dac·02cb·3879··..y@.....^....8y | |||
00000610:·5b3f·715a·d0dd·7bd1·5890·dec3·f52f·0347··[?qZ..{.X..../.G | |||
00000620:·7294·0de9·d2d3·0a3c·8dc4·db47·238b·6e6a··r......<...G#.nj | |||
00000630:·437a·532c·306a·fcb6·08b9·905c·ae1f·0142··CzS,0j.....\...B | |||
00000640:·ece8·a9ce·8311·3a3c·d5ed·4c51·1d0b·23da··......:<..LQ..#. | |||
00000650:·54bf·4d1c·016a·537d·3624·3444·7523·8a88··T.M..jS}6$4Du#.. | |||
00000660:·a1fa·95c3·8002·3154·77a0·8137·d5d7·544f··......1Tw..7..TO | |||
00000670:·6ba8·5ea7·4df5·1888·1850·4375·3a4a·e4ea··k.^.M....PCu:J.. | |||
00000680:·cc08·bafb·1760·c899·ea57·aa4b·d521·90c8··.....`...W.K.!.. | |||
00000690:·aa3f·3e9a·6bb3·9857·eb52·15aa·5f03·98a7··.?>.k..W.R.._... | |||
000006a0:·be5b·d008·d5a3·aa93·503d·7d2a·dc5a·6680··.[......P=}*.Zf. | |||
000006b0:·7005·4407·d5c5·abea·563f·98dc·7a9c·6318··p.D.....V?..z.c. | |||
000006c0:·845e·2931·d537·a89e·4655·9f33·ab7e·bdf4··.^)1.7..FU.3.~.. | |||
000006d0:·9983·4af5·02aa·0fa9·7184·f8ec·a803·0e35··..J.....q......5 | |||
000006e0:·2c9b·6119·ead5·ba14·4bf5·5b00·b3d4·1935··,.a.....K.[....5 | |||
000006f0:·82e2·5052·7521·d595·aaa7·8fc4·ad25·c5c7··..PRu!.......%.. | |||
00000700:·aaef·fe2b·8063·41f5·a35a·4175·0a7c·8052··...+.cA..ZAu.|.R | |||
00000710:·cb10·03bd·480d·541d·563d·1552·bd07·24d5··....H.T.V=.R..$. | |||
00000720:·2f03·750f·17a9·90ea·6fb6·862a·1f2f·f254··/.u.....o..*./.T | |||
00000730:·6159·0acb·610c·a87e·0990·9961·929f·eab1··aY..a..~...a.... | |||
00000740:·a783·3d65·b7c3·9efe·54ff·9fea·ff50·6c59··..=e....T....PlY | |||
00000750:·deb2·0ce6·3443·2b4f·fab0·ebd8·eb60·4f7f··....4C+O.....`O. | |||
00000760:·0ab7·16d6·c7c1·be43·2207·37d8·ebb8·4983··.......C".7...I. | |||
00000770:·3d0b·f6b7·a3fb·1783·fd0c·1cf6·f4f0·068e··=............... | |||
00000780:·0f4f·05fb·1df6·54c7·dea6·0efb·75e2·869c··.O....T.....u... | |||
00000790:·8ebd·0ebb·1b1c·7e8d·1a37·ec68·d86d·604f··......~..7.h.m`O | |||
000007a0:·d9ec·40e7·b776·3f43·9665·2ccb·5e5e·ad4b··..@..v?C.e,.^^.K | |||
000007b0:·b7d8·ef00·cce6·48d2·8ee4·c0ae·865d·07f6··......H......].. | |||
000007c0:·f463·dc5a·679e·0dfb·eedf·05f6·cb9e·aa61··.c.Zg..........a | |||
000007d0:·5fe3·2c03·fb5d·815d·8eee·ff59·58c1·0cbb··_.,..].]...YX... | |||
000007e0:·1ae7·9fa2·1543·d6b7·809e·46d0·3b86·1d95··.....C....F.;... | |||
000007f0:·b3fb·14d0·583e·63f9·e9d5·bad4·04f6·2b00··....X>c.......+. | |||
00000800:·f3d5·3975·0385·6e1b·687a·9fc6·4ec5·9e16··..9u..n.hz..N... | |||
00000810:·e9d8·7f15·8e3d·763f·c601·7bec·43f6·8ffd··.....=v?..{.C... | |||
00000820:·fdff·c083·d83f·b7d6·ff3f·8d1d·f7ff·53ee··.....?...?....S. | |||
00000830:·2fdd·8f3d·1afb·34ce·63d8·17e8·ad9f·c159··/..=..4.c......Y | |||
00000840:·8a1d·4575·9f11·7477·ef87·0082·659c·652e··..Eu..tw....e.e. | |||
00000850:·afd6·a532·f61b·0b80·f934·b2e5·52e2·72fd··...2.....4..R.r. | |||
00000860:·b831·adf4·3eb1·17e9·27f6·7f62·ff37·a12c··.1..>...'..b.7., | |||
00000870:·4359·def2·6a5d·ea7d·6022·794f·3cf0·2000··CY..j].}`"yO<.·. | |||
00000880:·d23f·4da4·637f·8e4c·4158·b350·ac9d·4e43··.?M.c..LAX.P..NC | |||
00000890:·5868·0434·31a0·88ab·9137·1948·159a·258e··Xh.41....7.H..%. | |||
000008a0:·0696·b21a·3886·36b0·3676·8992·3362·f752··....8.6.6v..3b.R | |||
000008b0:·9265·0912·e586·c290·a1ac·0696·a191·e24c··.e.............L | |||
000008c0:·665e·3919·e51c·d020·a619·f36c·2459·6af1··f^9....·...l$Yj. | |||
000008d0:·3820·913c·b0c8·6b72·fdc7·5ead·4b8b·947e··8·.<..kr..^.K..~ | |||
000008e0:·eefd·d80c·ff5c·b4af·694f·6f7a·d39b·def4··.....\..iOoz.... | |||
000008f0:·a637·bde9·4d6f·7ad3·fb31·33ec·63d8·eddc··.7..Moz..13.c... | |||
00000900:·efa2·3d4d·fb9e·f6f4·ab70·6bfd·df69·d7a3··..=M.....pk..i.. | |||
00000910:·3f4f·fb8e·4e1e·78da·89b8·83c7·9cf6·288a··?O..N.x.......(. | |||
00000920:·bce6·74fb·1377·2861·c000·70da·e9b4·a769··..t..w(a..p....i | |||
00000930:·daed·98d3·7e75·00f2·234d·7b9f·3de4·0809··....~u..#M{.=... | |||
00000940:·e2d5·598f·e6a8·57eb·d2db·7e8b·309f·6054··..Y...W...~.0.`T | |||
00000950:·5056·7bec·4b68·87d2·5e25·abfd·b3da·fff1··PV{.Kh..^%...... | |||
00000960:·d8d3·bca7·198c·1a43·2bb0·3632·4d80·a6bd··.......C+.62M... | |||
00000970:·a9dd·84f6·f49b·b8b5·8af8·33ed·bb24·3940··..........3..$9@ | |||
00000980:·685f·8ae3·aabd·c641·7b15·1c65·b6d0·02aa··h_.....A{..e.... | |||
00000990:·9d0b·3d5e·da67·ed69·53bb·1b50·ed37·032b··..=^.g.iS..P.7.+ | |||
000009a0:·764d·ed6c·d011·068b·2b94·da93·dad3·d8c3··vM.l....+....... | |||
000009b0:·dadd·b02e·a4d7·f88e·c289·25ec·3417·d14c··..........%.4..L | |||
000009c0:·7bb5·2e8d·a0fd·26c0·3c4e·8565·4c21·a3f6··{.....&.<N.eL!.. | |||
000009d0:·20ed·47ed·e933·716b·e1f0·45ed·bbff·06d0···.G..3qk..E..... | |||
000009e0:·106a·1fa0·1b68·0f3a·e3d5·4304·9106·69f7··.j...h.:..C...i. | |||
000009f0:·d15e·870e·b707·d09e·0669·2fc3·47fb·bd63··.^.......i/.G..c | |||
00000a00:·0b4e·19d6·eb58·c743·861a·de72·e2f0·b043··.N...X.C...r...C | |||
00000a10:·330e·cddf·1bd6·ef8b·593c·cdb0·7ec7·fa19··3.......Y<..~... | |||
00000a20:·d6d3·c7c0·3ad6·8f61·7df7·2f46·183b·eb5b··....:..a}./F.;.[ | |||
00000a30:·dc90·bb63·7d67·fd83·c2ba·16d6·d33b·d6c1··...c}g.......;.. | |||
00000a40:·d859·bf4a·a8a1·218e·7527·eb36·cb67·0c2a··.Y.J..!.u'.6.g.* | |||
00000a50:·ec1a·1b64·c86a·c66a·26f3·6a5d·4a84·f58b··...d.j.j&.j]J... | |||
00000a60:·0073·4d0a·488e·75d0·fa1c·ebe9·2f71·6b41··.sM.H.u...../qkA | |||
00000a70:·bd0f·d677·373d·6fac·8be0·c216·3958·87c1··...w7=o.....9X.. | |||
00000a80:·8df5·9ba7·0516·5440·6105·eb2e·6841·c6fa··......T@a...hA.. | |||
00000a90:·3d81·8433·1f9a·12a4·f07c·609d·8c35·631d··=..3.....|`..5c. | |||
Max diff block lines reached; -1/34432 bytes (-0.00%) of diff not shown. |
Offset 85, 440 lines modified | Offset 85, 440 lines modified | ||
00000540:·2c63·443b·a0a0·2653·7464·6c69·6290·30e8··,cD;..&Stdlib.0. | 00000540:·2c63·443b·a0a0·2653·7464·6c69·6290·30e8··,cD;..&Stdlib.0. | ||
00000550:·d9af·4585·47c4·5080·a71b·9a6e·aed6·58a0··..E.G.P....n..X. | 00000550:·d9af·4585·47c4·5080·a71b·9a6e·aed6·58a0··..E.G.P....n..X. | ||
00000560:·a038·4361·6d6c·696e·7465·726e·616c·466f··.8CamlinternalFo | 00000560:·a038·4361·6d6c·696e·7465·726e·616c·466f··.8CamlinternalFo | ||
00000570:·726d·6174·4261·7369·6373·9030·2ef2·d91c··rmatBasics.0.... | 00000570:·726d·6174·4261·7369·6373·9030·2ef2·d91c··rmatBasics.0.... | ||
00000580:·ed81·f6c7·2f85·2bab·8ab4·06e0·4084·95a6··..../.+.....@... | 00000580:·ed81·f6c7·2f85·2bab·8ab4·06e0·4084·95a6··..../.+.....@... | ||
00000590:·be00·0000·0400·0000·0200·0000·0500·0000··................ | 00000590:·be00·0000·0400·0000·0200·0000·0500·0000··................ | Diff chunk too large, falling back to line-by-line diff (433 lines added, 433 lines removed) | |
000005a0:·05a0·9040·4043·616d·6c31·3939·3954·3033··...@@Caml1999T03 | 000005a0:·05a0·9040·4043·616d·6c31·3939·3954·3033··...@@Caml1999T03 | ||
000005b0:·3484·95a6·bd10·b57 | 000005b0:·3484·95a6·bd10·b57a·8184·5697·40de·4fdb··4......z..V.@.O. | ||
000005c0:· | 000005c0:·7428·b52f·fd00·588d·d700·7a4f·4947·5410··t(./..X...zOIGT. | ||
000005d0:· | 000005d0:·2869·d1a6·0309·62e4·0670·fa4e·3474·b504··(i....b..p.N4t.. | ||
000005e0:· | 000005e0:·d2a3·4e44·60b7·e5aa·04eb·b9cb·837f·f1f0··..ND`........... | ||
000005f0:· | 000005f0:·7612·575b·a339·4930·bf12·48a3·6f87·25e5··v.W[.9I0..H.o.%. | ||
00000600:· | 00000600:·d144·abd1·6c50·3c63·859f·eea0·50e2·697b··.D..lP<c....P.i{ | ||
00000610:· | 00000610:·8600·8a79·8640·d7cc·9f9d·11b3·3e35·21b9··...y.@......>5!. | ||
00000620:· | 00000620:·a4b7·0d62·044d·0467·043a·bc67·3a78·ac34··...b.M.g.:.g:x.4 | ||
00000630:· | 00000630:·9caf·4640·0a9f·0df3·5928·b2bb·cb54·bce3··..F@....Y(...T.. | ||
00000640:· | 00000640:·096a·473f·bc73·e05d·ca0b·c17b·ee28·7b73··.jG?.s.]...{.({s | ||
00000650:· | 00000650:·4dc4·7b37·0ae8·67d1·cf3e·21cd·ab26·648e··M.{7..g..>!..&d. | ||
00000660:· | 00000660:·1aec·336e·25ef·53fa·03ef·5fdd·4ade·3bf0··..3n%.S..._.J.;. | ||
00000670:· | 00000670:·9e39·f08e·4393·774c·c3bb·9c5d·7763·394d··.9..C.wL...]wc9M | ||
00000680:· | 00000680:·b0b7·e1b6·81e8·c0e4·7d5d·7765·7658·b6af··........}]wevX.. | ||
00000690:· | 00000690:·b62a·3f3b·e5b3·4e64·7797·31f0·8e25·b0b6··.*?;..Ndw.1..%.. | ||
000006a0:·4 | 000006a0:·4bcd·c232·9130·a235·77d9·e70b·6e37·d70e··K..2.0.5w...n7.. | ||
000006b0:· | 000006b0:·f636·d8e3·8ce3·68b1·1f3d·1964·2f68·b060··.6....h..=.d/h.` | ||
000006c0:· | 000006c0:·06fb·456c·ecbb·2560·819e·3456·1cc3·da77··..El..%`..4V...w | ||
000006d0:· | 000006d0:·ecfb·81ab·b3c7·6a16·d068·ec0f·d9e7·d49e··......j..h...... | ||
000006e0:· | 000006e0:·4c15·539c·6934·f6b0·4f9d·b162·33f6·72be··L.S.i4..O..b3.r. | ||
000006f0:· | 000006f0:·70b7·145e·14a9·bd97·fdda·69ec·1b0a·0f11··p..^......i..... | ||
00000700:· | 00000700:·0bf6·1801·5d00·fbee·b555·b0ef·14ec·2f10··....]....U..../. | ||
00000710:· | 00000710:·c61e·83b1·c76b·6fe1·b2ef·6e28·7b73·bb9d··.....ko...n({s.. | ||
00000720:·7 | 00000720:·7db7·1418·9f85·f1d9·29d9·9d62·9592·687a··}.......)..b..hz | ||
00000730:· | 00000730:·aaa5·8a9a·38f3·9665·de48·1535·cfda·6965··....8..e.H.5..ie | ||
00000740:· | 00000740:·6592·6849·e24e·728a·4a96·35a4·903d·c65a··e.hI.Nr.J.5..=.Z | ||
00000750:· | 00000750:·5aa5·8433·6e2d·f6de·1a35·b9db·d585·b5aa··Z..3n-...5...... | ||
00000760:· | 00000760:·4dab·b432·a36a·6041·1888·fd98·f02c·139e··M..2.j`A.....,.. | ||
00000770:·d | 00000770:·5d92·e6f6·85d2·7e95·b3c3·2edc·3694·cdbe··].....~.....6... | ||
00000780:· | 00000780:·cc0e·af2d·acc5·a129·d411·1684·6719·38e4··...-...)....g.8. | ||
00000790:·d9 | 00000790:·d943·9e55·b2b2·b0d6·7622·a181·6df6·3d6b··.C.U....v"..m.=k | ||
000007a0:· | 000007a0:·dcfd·c7cf·acdb·de5c·77f7·059f·f53e·cb44··.......\w....>.D | ||
000007b0:· | 000007b0:·7677·7cba·1b08·ee21·b8bb·d759·9fb9·2ded··vw|....!...Y..-. | ||
000007c0:· | 000007c0:·635c·38dd·c22d·16fb·75dd·9533·d62f·8c7b··c\8..-..u..3./.{ | ||
000007d0:· | 000007d0:·0249·7896·8f67·93c8·ee2e·53d9·e359·04d6··.Ix..g....S..Y.. | ||
000007e0:· | 000007e0:·aa33·e0c0·6ec0·6022·9ee5·328e·627f·c18d··.3..n.`"..2.b... | ||
000007f0:· | 000007f0:·62df·51ec·bbf7·e4e0·d91c·3c7b·4476·7799··b.Q.......<{Dvw. | ||
00000800:· | 00000800:·e482·8322·776c·2137·88dd·f1be·b8b3·4e92··..."wl!7......N. | ||
00000810:· | 00000810:·e4a5·a252·34bc·a84e·5b95·3a95·e4b5·7e50··...R4..N[.:...~P | ||
00000820:·9 | 00000820:·9b62·dab4·aa52·2c9a·b975·e26e·5a35·f346··.b...R,..u.nZ5.F | ||
00000830:· | 00000830:·ab32·d1d3·caac·429d·f0d0·39d9·07e0·96de··.2....B...9..... | ||
00000840:· | 00000840:·6ea6·92ae·8694·f4a4·5599·586a·a98d·8a86··n.......U.Xj.... | ||
00000850:· | 00000850:·eb9a·6ad2·c918·214b·6ab3·ba99·5b29·0d4b··..j...!Kj...[).K | ||
00000860:· | 00000860:·ad54·a79a·74b2·a9ae·5b8a·6562·d1ac·529a··.T..t...[.eb..R. | ||
00000870:· | 00000870:·aa95·8449·c7c2·fe49·15aa·955a·d1d4·1489··...I...I...Z.... | ||
00000880:· | 00000880:·92ce·da93·d0e7·e221·2ef6·da31·b9aa·a9e5··.......!...1.... | ||
00000890:· | 00000890:·1126·5d14·4d54·d4c4·d2b2·722b·6955·a7ad··.&].MT....r+iU.. | ||
000008a0:· | 000008a0:·dc42·a59e·744d·0c71·f1da·79ae·1321·3574··.B..tM.q..y..!5t | ||
000008b0:· | 000008b0:·1580·62da·4e2b·9a55·4aab·4283·dcd0·054a··..b.N+.UJ.B....J | ||
000008c0:· | 000008c0:·e2ae·9de7·4649·6fa6·165a·17d5·b975·463d··....FIo..Z...uF= | ||
000008d0:·e | 000008d0:·e97c·b8b1·8bde·4c55·2db3·68b6·f266·aaa7··.|....LU-.h..f.. | ||
000008e0:· | 000008e0:·8d86·a634·f456·66f1·8133·8edd·59f7·933e··...4.Vf..3..Y..> | ||
000008f0:· | 000008f0:·17f7·4944·8ed7·0eaf·1de5·ae30·1a30·9848··..ID.......0.0.H | ||
00000900:· | 00000900:·8279·d3b2·9da5·154d·bd99·38dc·ac49·47c7··.y.....M..8..IG. | ||
00000910:· | 00000910:·4e15·251b·4642·d413·d53a·d2dd·0085·33d5··N.%.FB...:....3. | ||
00000920:· | 00000920:·2e2a·24dd·9c24·56d0·f3a6·e292·7468·dee4··.*$..$V.....th.. | ||
00000930:· | 00000930:·2e5e·ab4c·ac74·ea48·2708·b3a9·9968·8ae4··.^.L.t.H'....h.. | ||
00000940:· | 00000940:·688a·089a·9e6a·569a·a46b·a188·8a9e·e6d6··h....jV..k...... | ||
00000950:·a | 00000950:·a996·a892·ae84·3ec0·f55a·d227·5ccc·e5ae··......>..Z.'\... | ||
00000960:· | 00000960:·7276·f884·8b57·2a1e·3c8c·7482·7098·728a··rv...W*.<.t.p.r. | ||
00000970:·9 | 00000970:·1423·9d20·ac66·d64a·a454·dc69·3bd2·6d45··.#.·.f.J.T.i;.mE | ||
00000980:· | 00000980:·4972·7718·894a·ebd2·52da·9274·b723·3a3a··Irw..J..R..t.#:: | ||
00000990:· | 00000990:·408d·6cc0·818a·9e48·ba2b·d7ab·6733·153d··@.l....H.+..g3.= | ||
000009a0:· | 000009a0:·69e8·acae·57f7·9225·1d55·945a·a636·2b24··i...W..%.U.Z.6+$ | ||
000009b0:· | 000009b0:·1d95·ebd5·ade4·96aa·35ad·9b8a·43d3·1a0d··........5...C... | ||
000009c0:· | 000009c0:·4d4f·1c6a·aa5c·e60e·dd08·d7ab·7b08·ca65··MO.j.\......{..e | ||
000009d0:· | 000009d0:·d2d0·3db9·406e·e555·ed48·17e4·7af5·ac67··..=.@n.U.H..z..g | ||
000009e0:· | 000009e0:·dd4b·68a6·d64d·3dd2·09c2·45ae·d74a·c5c4··.Kh..M=...E..J.. | ||
000009f0:· | 000009f0:·d94a·2b24·9d20·aca6·3b88·2d4d·a98e·743d··.J+$.·..;.-M..t= | ||
00000a00:· | 00000a00:·ae57·77c7·6e77·37ee·2eb8·677d·677d·a461··.Ww.nw7...g}g}.a | ||
00000a10:· | 00000a10:·8314·ddeb·7587·6120·c060·a208·5de5·ed56··....u.a·.`..]..V | ||
00000a20:· | 00000a20:·22e9·1a0e·9c38·71da·c820·43c3·b8dd·18c6··"....8q..·C..... | ||
00000a30:· | 00000a30:·010c·26be·b8fd·e276·df20·bbbb·359e·5de3··..&....v.·..5.]. | ||
00000a40:· | 00000a40:·d922·a70d·ab49·c59d·4670·4e54·a7ad·d6b4··."...I..FpNT.... | ||
00000a50:· | 00000a50:·cb64·134e·c59d·36d2·c4dd·caac·29d2·298e··.d.N..6.....).). | ||
00000a60:· | 00000a60:·981d·c678·9d3d·70ab·8075·d34c·3445·6949··...x.=p..u.L4EiI | ||
00000a70:· | 00000a70:·bbac·7299·6a93·0dab·aca5·4b38·a3c9·387b··..r.j.....K8..8{ | ||
00000a80:· | 00000a80:·a9b8·d3c8·1412·0c0a·0613·0350·e0bd·1732··...........P...2 | ||
00000a90:· | 00000a90:·1abc·0c07·a841·0ff0·4d20·08e0·7980·19ec··.....A..M·..y... | ||
00000aa0:· | 00000aa0:·00fd·1891·041e·0706·e497·1e22·f6b0·00ff··...........".... | ||
00000ab0:·0 | 00000ab0:·0284·21e8·c723·f843·0f40·e439·6441·1588··..!..#.C.@.9dA.. | ||
00000ac0:· | 00000ac0:·6420·077e·4197·e25f·f467·437f·0520·1475··d·.~A.._.gC..·.u | ||
00000ad0:· | 00000ad0:·2090·c30d·867e·417f·3927·0e10·3f92·bf7c···....~A.9'..?..| | ||
00000ae0:· | 00000ae0:·6114·a801·6d6e·75b7·37d9·dde5·3e3f·c6c0··a...mnu.7...>?.. | ||
00000af0:· | 00000af0:·5af3·5666·61a5·b51a·11f8·abfc·41fc·b98f··Z.Vfa.......A... | ||
00000b00:· | 00000b00:·d89b·c3d2·3dfc·5f59·5adc·f9bd·9061·b1fb··....=._YZ....a.. | ||
00000b10:·c | 00000b10:·cdbc·8980·cedf·001d·fe1c·5638·20f7·029b··..........V8·... | ||
00000b20:· | 00000b20:·ff0d·0457·7e8c·cd90·b9f2·539d·5100·0b3f··...W~.....S.Q..? | ||
00000b30:· | 00000b30:·9918·28e5·c706·6061·0529·bf98·b526·76f9··..(...`a.)...&v. | ||
00000b40:·a | 00000b40:·a564·855b·fe2b·5afe·ae3f·57f9·41b5·0028··.d.[.+Z..?W.A..( | ||
00000b50:· | 00000b50:·9850·4295·ffa0·6d20·1480·e7a9·66ac·5ab8··.PB...m·....f.Z. | ||
00000b60:· | 00000b60:·82fc·13fc·11fc·82b6·8148·008e·7035·bdc5··.........H..p5.. | ||
00000b70:· | 00000b70:·729b·25bb·bb9c·e4c7·31ac·b595·5a02·3091··r.%.....1...Z.0. | ||
00000b80:· | 00000b80:·84fc·2bfe·217f·6e23·f6e6·9634·90ff·abdb··..+.!.n#...4.... | ||
00000b90:· | 00000b90:·8705·7ffc·4ff7·f1f7·8081·1efc·b4a2·f137··....O..........7 | ||
00000ba0:·7 | 00000ba0:·fd79·c55f·858d·1f67·f02a·5456·fc53·7c60··.y._...g.*TV.S|` | ||
00000bb0:· | 00000bb0:·8d53·9552·9cdc·2eb9·4565·7797·29f8·310c··.S.R....Eew.).1. | ||
00000bc0:·a | 00000bc0:·6baf·542b·a869·4b8a·fdb3·8ee2·1ecf·7da0··k.T+.iK.......}. | ||
00000bd0:· | 00000bd0:·d8df·b1bf·3bc9·8ddb·1bb7·b6f2·6666·a5a4··....;.......ff.. | ||
00000be0:· | 00000be0:·89e5·b431·d94a·2d9c·9310·16dd·03ba·97e2··...1.J-......... | ||
00000bf0:· | 00000bf0:·3e77·117b·7310·28ba·5224·ba27·74ef·9b58··>w.{s.(.R$.'t..X | ||
00000c00:· | 00000c00:·7401·25a4·3ef7·83ee·33a0·fb28·fcdc·633d··t.%.>...3..(..c= | ||
00000c10:· | 00000c10:·3232·d0e1·9e00·f76a·34d0·0124·6690·305a··22.....j4..$f.0Z | ||
00000c20:· | 00000c20:·dc42·707b·e51e·5f40·c39d·4b74·ee73·f70f··.Bp{.._@..Kt.s.. | ||
00000c30:· | 00000c30:·b8cf·4dc4·de5c·1337·c879·62ce·3d1b·39f7··..M..\.7.yb.=.9. | ||
00000c40:· | 00000c40:·719c·9821·067e·c551·66ee·d7dc·e7dc·7da2··q..!.~.Qf.....}. | ||
00000c50:· | 00000c50:·05dc·6331·302a·6e09·f715·dcbb·b84d·2872··..c10*n......M(r | ||
00000c60:· | 00000c60:·c1bb·3d07·9eb8·b689·6baf·0a70·8f2d·b096··..=.....k..p.-.. | ||
00000c70:· | 00000c70:·863b·6d74·b96f·716f·c27d·6e29·7b73·757a··.;mt.oqo.}n){suz | ||
00000c80:· | 00000c80:·cbfd·5777·2fa1·75cf·c1ed·fb3e·18c8·bac7··..Ww/.u....>.... | ||
00000c90:· | 00000c90:·3cee·e558·e01e·3bb9·c75e·bbee·aedd·9f87··<..X..;..^...... | ||
00000ca0:· | 00000ca0:·a610·1a64·a8d0·91fb·2925·861c·51c4·8d7b··...d....)%..Q..{ | ||
00000cb0:·4 | 00000cb0:·4048·60af·2fdc·19a8·40d2·7d8e·fbdc·e2be··@H`./...@.}..... | ||
00000cc0:· | 00000cc0:·d08d·7b4c·5e3d·41b4·b8a7·0013·4bf7·6b88··..{L^=A.....K.k. | ||
00000cd0:· | 00000cd0:·3c3c·5c5b·e75a·2bd9·dd65·d93d·9659·9bc5··<<\[.Z+..e.=.Y.. | ||
00000ce0:· | 00000ce0:·3cb7·8e56·dccf·bad0·f732·df65·5871·df2b··<..V.....2.eXq.+ | ||
00000cf0:· | 00000cf0:·ee7d·f70e·6eae·7573·6d95·19f5·64e8·bb9b··.}..n.usm...d... | ||
00000d00:· | 00000d00:·ef88·94f8·9e5b·047b·7389·127d·ef8e·e1cb··.....[.{s..}.... | ||
00000d10:· | 00000d10:·b55f·aea5·52d1·f2bc·955b·6495·a996·3753··._..R....[d...7S | ||
Max diff block lines reached; -1/60239 bytes (-0.00%) of diff not shown. |
Offset 22, 176 lines modified | Offset 22, 175 lines modified | ||
00000150:·1f8a·e0de·a0a0·2653·7464·6c69·6290·30e8··......&Stdlib.0. | 00000150:·1f8a·e0de·a0a0·2653·7464·6c69·6290·30e8··......&Stdlib.0. | ||
00000160:·d9af·4585·47c4·5080·a71b·9a6e·aed6·58a0··..E.G.P....n..X. | 00000160:·d9af·4585·47c4·5080·a71b·9a6e·aed6·58a0··..E.G.P....n..X. | ||
00000170:·a038·4361·6d6c·696e·7465·726e·616c·466f··.8CamlinternalFo | 00000170:·a038·4361·6d6c·696e·7465·726e·616c·466f··.8CamlinternalFo | ||
00000180:·726d·6174·4261·7369·6373·9030·2ef2·d91c··rmatBasics.0.... | 00000180:·726d·6174·4261·7369·6373·9030·2ef2·d91c··rmatBasics.0.... | ||
00000190:·ed81·f6c7·2f85·2bab·8ab4·06e0·4084·95a6··..../.+.....@... | 00000190:·ed81·f6c7·2f85·2bab·8ab4·06e0·4084·95a6··..../.+.....@... | ||
000001a0:·be00·0000·0400·0000·0200·0000·0500·0000··................ | 000001a0:·be00·0000·0400·0000·0200·0000·0500·0000··................ | ||
000001b0:·05a0·9040·4043·616d·6c31·3939·3954·3033··...@@Caml1999T03 | 000001b0:·05a0·9040·4043·616d·6c31·3939·3954·3033··...@@Caml1999T03 | ||
000001c0:·3484·95a6·bd0f·94 | 000001c0:·3484·95a6·bd0f·946e·ad51·8601·9b4c·987a··4......n.Q...L.z | ||
000001d0:·28b5·2ffd·0058· | 000001d0:·28b5·2ffd·0058·2d53·007a·9204·1f53·705c··(./..X-S.z...Sp\ | ||
000001e0:·d574·fec9·9b12·cf33·9706·d370·e9a4·1175··.t.....3...p...u | |||
000001f0:·04f9·bea3·bb08·83d1·f1ed·8a27·ef29·e96f··...........'.).o | |||
00000200:·7fd8·4526·443e·f145·76f1·7adb·92b6·dda4··..E&D>.Ev.z..... | |||
00000210:·b26b·abb1·add3·8564·9e45·1bcb·52ad·321a··.k.....d.E..R.2. | |||
00000220:·9599·513a·ced6·b643·44da·2437·3492·76a7··..Q:...CD.$74.v. | |||
00000230:·1dd3·01d2·01d6·012b·496c·1803·aff7·62e9··.......+Il....b. | |||
00000240:·d08a·6287·227b·9072·c10c·8e17·20fa·e218··..b."{.r....·... | |||
00000250:·0c99·838e·68f5·ac15·43de·f053·846f·a845··....h...C..S.o.E | |||
00000260:·1952·8519·96e6·1e5d·1696·8760·c8a6·bde4··.R.....]...`.... | |||
00000270:·b338·fbc0·0c05·c1f9·eaa4·2c43·9e20·44e3··.8........,C.·D. | |||
00000280:·6b65·577b·7886·dce0·4598·b4a0·f760·6e0d··keW{x...E....`n. | |||
00000290:·e6f8·a4b6·3d98·7b6c·f5e8·f142·366d·10bc··....=.{l...B6m.. | |||
000002a0:·95ea·856c·da2c·740f·d4a3·c50b·c290·b223··...l.,t........# | |||
000002b0:·3fb3·b67d·346b·9681·07ca·9021·053a·76e0··?..}4k.....!.:v. | |||
000002c0:·2138·0e68·7c63·c8a3·49fb·aed3·f8da·205f··!8.h|c..I.....·_ | |||
000002d0:·93f6·1f44·43b6·7e68·2f83·af18·d282·49fb··...DC.~h/.....I. | |||
000002e0:·070a·b3fe·62a1·1671·fe58·385f·115b·ad64··....b..q.X8_.[.d | |||
000002f0:·1f20·914c·da3f·0f56·b236·48a2·9913·7a46··.·.L.?.V.6H...zF | |||
00000300:·1f0c·b933·69df·7df7·1fc4·b2b1·50c3·904d··...3i.}.....P..M | |||
00000310:·5bc8·a48d·1658·11f4·5e31·64d3·66e1·7f07··[....X..^1d.f... | |||
00000320:·ccb9·0543·fa98·b4ff·6f99·ffff·fb39·d8df··...C....o....9.. | |||
00000330:·fdec·9e82·dfa4·0883·723f·d6f6·06c1·b6ad··........r?...... | |||
00000340:·4c30·f3c2·d08b·21bf·4913·274e·5e60·c2e4··L0....!.I.'N^`.. | |||
00000350:·1598·ff7b·7360·db56·68cc·a731·ff3f·15f7··...{s`.Vh..1.?.. | |||
00000360:·54fc·c765·d65a·e0bc·05ce·855c·1086·1253··T..e.Z.....\...S | |||
00000370:·ad0b·7e3a·6a65·0bca·bb21·da18·e8c9·aa85··..~:je...!...... | |||
00000380:·65b1·665d·458d·6f3e·12af·0bc7·aa57·6139··e.f]E.o>.....Wa9 | |||
00000390:·7cd5·227c·9392·3c58·f5aa·a8b1·156d·9864··|."|..<X.....m.d | |||
000003a0:·c3ba·d2d5·bba1·aa36·69a6·eb2b·d7da·d55a··.......6i..+...Z | |||
000003b0:·6b4b·0bea·45b4·36d4·557c·a9af·5c71·beda··kK..E.6.U|..\q.. | |||
000003c0:·d3d8·c2aa·0593·6057·acb3·d0ca·aa57·c55b··......`W.....W.[ | |||
000003d0:·2d18·7365·5815·af11·91ba·038b·9311·6a7b··-.seX.........j{ | |||
000003e0:·efb1·1360·9eb1·fdb3·2cce·9825·532b·b592··...`....,..%S+.. | |||
000003f0:·d528·10e6·7d99·6697·2a94·bba4·591b·6a8d··.(..}.f.*...Y.j. | |||
00000400:·2dac·c80e·e5d8·74b6·6d25·e30e·723a·3e61··-.....t.m%..r:>a | |||
00000410:·fa5f·72da·845c·c2e9·46e1·9570·ea64·698a··._r..\..F..p.di. | |||
00000420:·d31d·8494·1a14·a79b·fae7·c070·4409·e50a··...........pD... | |||
00000430:·529c·6e27·4e37·adf6·ff51·9cd6·9c96·509c··R.n'N7...Q....P. | |||
00000440:·aac0·430f·3afc·3771·5a3a·2dbb·dfc0·690a··..C.:.7qZ:-...i. | |||
00000450:·d499·387d·52fb·c7e1·09be·36c6·7de7·f884··..8}R.....6.}... | |||
00000460:·c6b4·7f08·2046·a66f·c2f4·35c8·307d·c974··....·F.o..5.0}.t | |||
00000470:·232e·b356·d29c·6e03·dc2d·9207·83d9·5d8c··#..V..n..-....]. | |||
00000480:·d769·99c0·8c39·8539·dde5·3672·fadd·ffcc··.i...9.9..6r.... | |||
00000490:·e9ff·9153·23a7·2ea7·dd27·71ba·bfcb·d9ff··...S#....'q..... | |||
000004a0:·3dec·d0fd·fb5c·7a99·d3ff·1bac·8a5b·150f··=....\z......[.. | |||
000004b0:·7299·b5b2·a256·de0d·5557·83b4·cc2f·bb66··r....V..UW.../.f | |||
000004c0:·76b9·9fc8·2994·ffcf·d9cf·b3bf·fbb1·7b13··v...).........{. | |||
000004d0:·a807·39ad·319b·fc09·d455·4ec7·b1e6·3530··..9.1....UN...50 | |||
000004e0:·32ed·fd3f·f8a0·e250·545c·c865·d64a·21a7··2..?...PT\.e.J!. | |||
000004f0:·bb2b·c05d·37d0·64cb·b16d·2bbb·5b2a·378d··.+.]7.d..m+.[*7. | |||
00000500:·d9fd·8f0c·4de3·1e1b·b4d6·055d·7a48·8636··....M......]zH.6 | |||
00000510:·f2f8·562c·2bbb·6218·fb6c·c872·597c·5fd6··..V,+.b..l.rY|_. | |||
00000520:·852b·e841·a69c·1609·7318·da19·f286·2a5f··.+.A....s.....*_ | |||
00000530:·96cb·227d·196c·b1c4·d910·8a64·0089·920c··.."}.l.....d.... | |||
00000540:·be42·2bcb·2ca4·cfd3·4328·d265·6816·6698··.B+.,...C(.eh.f. | |||
00000550:·85b1·5e99·a563·3f27·d200·a744·2e1c·cb2f··..^..c?'...D.../ | |||
00000560:·96ce·3e33·a43b·4d92·c4dc·53e6·a6d5·848c··..>3.;M...S..... | |||
00000570:·3eed·5170·22c7·20a2·b185·c58a·428f·e5ba··>.Qp".·.....B... | |||
00000580:·a027·c33d·3624·1753·e61e·9f88·5901·901b··.'.=6$.S....Y... | |||
00000590:·6415·462c·785f·ac57·66b9·f04e·0e32·0a27··d.F,x_.Wf..N.2.' | |||
000005a0:·e6f8·44cc·2339·b419·b066·ad2b·bb3f·6c48··..D.#9...f.+.?lH | |||
000005b0:·2166·cbc4·a1d5·da4b·6281·5e68·f505·5938··!f.....Kb.^h..Y8 | |||
000005c0:·b370·e829·8960·97bb·6576·ff44·49cc·fd37··.p.).`..ev.DI..7 | |||
000005d0:·c813·5a6d·8f7f·648e·9b8d·6d0b·34b5·a686··..Zm..d...m.4... | |||
000005e0:·c562·fdf8·682a·61f3·1236·d711·c3ac·63ad··.b..h*a..6....c. | |||
000005f0:·1b6a·9cbf·2121·1f9d·5ad3·f508·f9f4·546d··.j..!!..Z.....Tm | |||
00000600:·5474·c359·52d6·a955·46c2·e642·3621·5b0e··Tt.YR..UF..B6![. | |||
00000610:·ccb3·4492·3268·65f6·47aa·6aec·69f1·8a62··..D.2he.G.j.i..b | |||
00000620:·575f·3987·4015·83ac·53ad·1191·5a2b·4d0d··W_9.@...S...Z+M. | |||
00000630:·b2fd·772e·b356·d200·61d9·fb3b·1bee·1f09··..w..V..a..;.... | |||
00000640:·476b·70b4·dcdd·064e·839c·46d9·afe2·688a··Gkp....N..F...h. | |||
00000650:·a3af·241c·2d3f·c7e7·5251·5147·7d01·ea2a··..$.-?..RQQG}..* | |||
00000660:·9759·4362·3a12·d391·88e0·f55e·555f·55b5··.YCb:......^U_U. | |||
00000670:·e2f5·8456·5a55·414f·165a·8d2f·be75·85a4··...VZUAO.Z./.u.. | |||
00000680:·aa33·8b64·8b3c·d8ad·d8ab·617e·5511·2967··.3.d.<....a~U.)g | |||
00000690:·b0ae·7445·aaaa·7a34·c4d1·9c2f·c251·269a··..tE..z4.../.Q&. | |||
000006a0:·1a88·70b4·6688·868e·a33d·dc05·1674·dcbf··..p.f....=...t.. | |||
000006b0:·0f8e·f270·b44c·7174·868e·a37b·0767·8428··...p.Lqt...{.g.( | |||
000006c0:·c551·19ca·e790·1cf9·1c1c·a5e1·68d9·3d19··.Q..........h.=. | |||
000006d0:·4e47·708a·83d3·3286·184e·e867·0810·ea39··NGp...2..N.g...9 | |||
000006e0:·d493·b8cc·5ab9·0047·f701·ee49·31a4·9c41··....Z..G...I1..A | |||
000006f0:·99dd·c558·ee32·9c42·711a·0067·86d3·f23b··...X.2.Bq..g...; | |||
00000700:·9f4b·2bdc·0a47·ff5d·98ae·a717·7199·b59a··.K+..G.]....q... | |||
00000710:·8ad7·549c·88cb·ea30·8bd5·b6aa·1663·b01e··..T....0.....c.. | |||
00000720:·385f·7d5d·387f·3604·4259·9c6b·16ab·0b7b··8_}]8.6.BY.k...{ | |||
00000730:·b566·8583·8323·53d5·ac6e·8e6a·043e·aa52··.f...#S..n.j.>.R | |||
00000740:·8dc0·47bd·b9aa·faba·7575·2353·5523·5d57··..G.....uu#SU#]W | |||
00000750:·4aaa·1ada·22ab·f1b5·35eb·fb65·51f4·b467··J..."...5..eQ..g | |||
00000760:·a4ad·f66c·f8d5·d50a·8542·5508·7064·b566··...l.....BU.pd.f | |||
00000770:·06e7·a8d6·e05c·1c15·821b·59ad·99b9·39aa··.....\....Y...9. | |||
00000780:·3537·1787·aa5a·240f·a6aa·4da0·d372·7f16··57...Z$...M..r.. | |||
00000790:·4e97·fc18·4e99·a670·ba04·0ca7·4f38·fd28··N...N..p....O8.( | |||
000007a0:·b5ff·2c9c·7ae1·d405·2a8e·3062·8a53·a629··..,.z...*.0b.S.) | |||
000007b0:·0d04·3f73·3a5e·e1b4·0aa7·7bef·99d3·b107··..?s:^....{..... | |||
000007c0:·4779·7074·effd·400f·e494·3673·5abe·021c··Gypt..@...6sZ... | |||
000007d0:·1d8f·385a·fee8·7414·80a3·e56f·3adb·b6a2··..8Z..t....o:... | |||
000007e0:·53eb·de88·1235·e013·6abc·d001·1010·3c1f··S....5..j.....<. | |||
000007f0:·ecd8·c084·1536·238f·d3bd·a168·0a81·8125··.....6#....h...% | |||
00000800:·2462·6085·d181·0476·c790·440b·9bd1·e7de··$b`....v..D..... | |||
00000810:·4d00·dc10·0293·1c1f·a484·10c3·832d·1660··M............-.` | |||
00000820:·e20b·94cd·287e·57f4·72b4·070b·3310·d0c3··....(~W.r...3... | |||
00000830:·20cc·d3e1·b1f7·7f8d·b96a·e268·22c0·8002···........j.h"... | |||
00000840:·5740·5902·8b2d·a6b0·62a5·b219·ff63·58f6··W@Y..-..b....cX. | |||
00000850:·111c·dd46·7074·17c1·d13d·0447·77dd·5be7··...Fpt...=.Gw.[. | |||
00000860:·1cb2·ece7·2589·4861·5692·4ab9·ccd1·65be··....%.HaV.J...e. | |||
00000870:·34be·a798·eff4·7261·1f0c·4b3e·bd88·49d6··4.....ra..K>..I. | |||
00000880:·7512·bd0b·7aa7·8c4f·28a5·8b63·342c·3da7··u...z..O(..c4,=. | |||
00000890:·17d1·e5d9·d048·9f58·7a4e·2fa1·1653·3628··.....H.XzN/..S6( | |||
000008a0:·1cd4·03a9·182e·3a29·c5f0·054f·3a76·b076··......:)...O:v.v | |||
000008b0:·f050·4ab5·2e38·c3d2·737a·b17a·d64a·8947··.PJ..8..sz.z.J.G | |||
000008c0:·ad8c·6a5d·f043·f59c·5e44·fb61·1b86·b1ef··..j].C..^D.a.... | |||
000008d0:·cba7·1d3a·63ec·9df0·6d9d·688a·4e2f·363a··...:c...m.h.N/6: | |||
000008e0:·4e36·949c·5e74·5246·7d29·7c5b·a950·8ca5··N6..^tRF})|[.P.. | |||
000008f0:·1cd8·86b6·6de5·8b38·4a83·c4b2·f70a·4769··....m..8J.....Gi | |||
00000900:·a460·d95b·e694·4608·cbde·3426·0d0f·2c7b··.`.[..F...4&..,{ | |||
00000910:·3f0b·4638·37c2·794f·1102·3827·80f3·0966··?.F87.yO..8'...f | |||
00000920:·40ad·b433·e4b3·a3d3·3364·004e·8abb·1477··@..3....3d.N...w | |||
00000930:·9e1b·140e·51b5·22b6·df1d·52bf·0bb6·6240··....Q."...R...b@ | |||
Max diff block lines reached; -1/23745 bytes (-0.00%) of diff not shown. |
Offset 1, 560 lines modified | Offset 1, 560 lines modified | Diff chunk too large, falling back to line-by-line diff (559 lines added, 559 lines removed) | |
00000000:·4361·6d6c·3139·3939·5430·3334·8495·a6bd··Caml1999T034.... | 00000000:·4361·6d6c·3139·3939·5430·3334·8495·a6bd··Caml1999T034.... | ||
00000010:·10c5· | 00000010:·10c5·5f81·9f37·9c58·f441·f202·28b5·2ffd··.._..7.X.A..(./. | ||
00000020:·0058· | 00000020:·0058·b516·015a·c24d·5e56·1028·2b6b·d201··.X...Z.M^V.(+k.. | ||
00000030:· | 00000030:·c2a5·476b·db06·6217·d9c3·592c·adf0·e904··..Gk..b...Y,.... | ||
00000040:· | 00000040:·0c9a·f092·f8bf·0fc2·cf3c·e70d·02a8·10c2··.........<...... | ||
00000050:· | 00000050:·6bd8·bb03·23bc·40aa·16b5·8499·2a7a·df07··k...#.@.....*z.. | ||
00000060:· | 00000060:·0040·5676·0b15·a2ff·d7ad·30a7·75d0·8cea··.@Vv......0.u... | ||
00000070:·0 | 00000070:·400c·87f0·a81b·ca50·2384·484b·9b90·6c01··@......P#.HK..l. | ||
00000080:·f | 00000080:·f705·c005·9a05·4ab4·e901·8508·62cb·87ca··......J.....b... | ||
00000090:· | 00000090:·3b54·ce02·dee6·6036·b9e8·4c29·1fdf·93f8··;T....`6..L).... | ||
000000a0:· | 000000a0:·9ee7·fb6d·245c·7907·6833·bef7·da18·61e7··...m$\y.h3....a. | ||
000000b0:· | 000000b0:·fb9b·0984·f11d·0b30·be7f·5104·1768·ce48··.......0..Q..h.H | ||
000000c0:· | 000000c0:·f17d·cef7·9bc4·7736·567c·b74e·e070·4312··.}....w6V|.N.pC. | ||
000000d0:· | 000000d0:·df25·c055·8599·326e·beb7·f9d2·7ccf·f2fd··.%.U..2n....|... | ||
000000e0:· | 000000e0:·842f·0245·6025·e06a·86ca·2e54·c6e2·53d3··./.E`%.j...T..S. | ||
000000f0:·b | 000000f0:·fbc3·771b·01b3·e925·2765·ea7e·a8f9·3ef5··..w....%'e.~..>. | ||
00000100:· | 00000100:·9d87·efb7·93b8·f268·8de6·7baf·4b10·397c··.......h..{.K.9| | ||
00000110:· | 00000110:·9702·c201·df63·50c0·f732·3f58·a990·020b··.....cP..2?X.... | ||
00000120:· | 00000120:·dfc5·8441·2d0e·9500·df0f·f0fd·4e7d·5fc3··...A-.......N}_. | ||
00000130:· | 00000130:·c277·fb45·3735·f5fd·0e51·0030·bbdb·f72e··.w.E75...Q.0.... | ||
00000140:· | 00000140:·1fd3·f7ef·bbcf·0701·a85b·9728·b3f2·acf2··.........[.(.... | ||
00000150:· | 00000150:·152d·df2d·0e2e·52be·ebf8·3ee5·fb6d·24ae··.-.-..R...>..m$. | ||
00000160:· | 00000160:·3c10·1aca·f71e·043c·34f9·8e83·48cd·92ef··<......<4...H... | ||
00000170:· | 00000170:·458e·a441·f21d·c897·f41d·e901·236c·d1d2··E..A........#l.. | ||
00000180:· | 00000180:·56a8·00f9·4efb·4183·be13·7dbf·3abe·ef00··V...N.A...}.:... | ||
00000190:· | 00000190:·e4bb·ade0·6bb2·a4e3·fb19·1f2e·f898·9cf4··....k........... | ||
000001a0:· | 000001a0:·8def·107c·78f8·74f8·67e8·d0f3·2541·72d4··...|x.t.g...%Ar. | ||
000001b0:·9 | 000001b0:·953f·a86c·c5a7·a617·fc6e·6f30·9fe6·2e08··.?.l.....no0.... | ||
000001c0:· | 000001c0:·0dbe·19fc·3cfc·db47·5c79·44da·0ebf·d73d··....<..G\yD....= | ||
000001d0:· | 000001d0:·065f·8c38·7c34·7c36·fc9b·8317·02f0·e09e··._.8|4|6........ | ||
000001e0:· | 000001e0:·3fa8·95da·a048·6521·95ab·6480·6f21·60ae··?....He!..d.o!`. | ||
000001f0:· | 000001f0:·3aa7·a44c·0cf0·89e0·5fc1·bf6d·c495·17eb··:..L...._..m.... | ||
00000200:· | 00000200:·2af8·bd20·7867·fe10·fce6·4abb·91e0·3fc1··*..·xg....J...?. | ||
00000210:· | 00000210:·bf44·f02d·1cbe·4d3b·e887·087e·03ce·7d94··.D.-..M;...~..}. | ||
00000220:· | 00000220:·c504·5607·1142·6d18·3eba·d5eb·1682·1f44··..V..Bm.>......D | ||
00000230:· | 00000230:·197e·18be·0dfc·3267·2dfe·56da·5d81·0f6a··.~....2g-.V.]..j | ||
00000240:· | 00000240:·d754·74ab·d75a·bd8e·0000·95c7·ca54·7c6a··.Tt..Z.......T|j | ||
00000250:· | 00000250:·7a77·e0db·00d8·3ae8·b56d·00be·026c·e063··zw....:..m...l.c | ||
00000260:· | 00000260:·91c1·e29f·7c59·c7c0·b732·23db·fdbd·aaac··....|Y...2#..... | ||
00000270:· | 00000270:·6506·e0e7·01bb·dbc8·7612·dbb2·4665·bd80··e.......v...Fe.. | ||
00000280:· | 00000280:·939f·da30·fc1d·5f8a·cfa3·6a69·dd70·8681··...0.._...ji.p.. | ||
00000290:· | 00000290:·8fa2·29ed·07ed·59db·2258·190f·c84d·3e35··..)...Y."X...M>5 | ||
000002a0:·bd2 | 000002a0:·bd2b·f0ad·1100·987d·b48e·ef85·7f65·cda3··.+.....}.....e.. | ||
000002b0:· | 000002b0:·f62b·032a·7ecb·ba9b·2baf·bb5b·c71f·03ed··.+.*~...+..[.... | ||
000002c0:· | 000002c0:·be73·06c8·7540·9ee2·53d3·8be3·5b99·0de6··.s..u@..S...[... | ||
000002d0:· | 000002d0:·f347·eb35·e4f5·12ad·8c77·edb5·eaa1·4ab8··.G.5.....w....J. | ||
000002e0:· | 000002e0:·f27a·035c·808c·0190·997c·6a7a·b7f0·ed91··.z.\.....|jz.... | ||
000002f0:·0 | 000002f0:·0e66·a61f·ad2e·32d7·4e50·9bf8·4dfc·6ee2··.f....2.NP..M.n. | ||
00000300:· | 00000300:·775f·00e4·2340·26c1·a7a6·2280·2c02·c84f··w_..#@&...".,..O | ||
00000310:· | 00000310:·7c6a·7a4b·229d·f9a4·cb95·3b9c·8d0b·d56d··|jzK".....;....m | ||
00000320:· | 00000320:·2aea·b47d·2977·e6cd·892a·a73b·cb27·5bce··*..})w...*.;.'[. | ||
00000330:· | 00000330:·0bad·cc9d·65cd·76d2·ce5d·c905·678b·3a4d··....e.v..]..g.:M | ||
00000340:· | 00000340:·a9dc·ae3c·71b4·2fe5·19c5·c526·559a·5f4a··...<q./....&U._J | ||
00000350:· | 00000350:·223b·db8d·66d3·99bb·3277·964f·e693·69e2··";..f...2w.O..i. | ||
00000360:· | 00000360:·4af3·4b09·652b·4f2a·a392·4897·3b69·b5dc··J.K.e+O*..H.;i.. | ||
00000370:· | 00000370:·ed46·2b81·4c29·1a0e·a8ac·d9a4·68b8·aaa7··.F+.L)......h... | ||
00000380:·9 | 00000380:·9256·9a3b·aad2·a452·2a80·ac63·ed7e·f2e3··.V.;...R*..c.~.. | ||
00000390:· | 00000390:·cac9·767b·3a99·7e5c·a11d·d4b4·cc4c·2fb6··..v{:.~\.....L/. | ||
000003a0:· | 000003a0:·9d8e·aa66·ea66·4f26·ce06·653e·e1a6·7c90··...f.fO&..e>..|. | ||
000003b0:· | 000003b0:·45c4·a7a2·cbe9·7466·90ac·1f58·72b6·d993··E.....tf...Xr... | ||
000003c0:· | 000003c0:·d9a5·96bb·39cd·7655·4c44·593d·ae7c·c9dd··....9.vULDY=.|.. | ||
000003d0:·a | 000003d0:·a074·a697·dcac·4b8d·7632·1165·e960·aad2··.t....K.v2.e.`.. | ||
000003e0:· | 000003e0:·e5a4·4ca9·1954·6e76·523d·19ca·b2c1·6f7a··..L..TnvR=....oz | ||
000003f0:· | 000003f0:·c251·e5a0·6667·ce49·90ac·173f·4b14·d53a··.Q..fg.I...?K..: | ||
00000400:· | 00000400:·51ed·551a·25aa·76d2·9a0c·659d·21e5·c499··Q.U.%.v...e.!... | ||
00000410:· | 00000410:·5254·5c74·b4d9·93ed·46f3·8253·2a92·0586··RT\t....F..S*... | ||
00000420:· | 00000420:·13d5·a2ad·449d·82e4·82ac·2daa·9837·1bd4··....D.....-..7.. | ||
00000430:· | 00000430:·0c2a·377b·c225·0dc9·9213·a7a2·ad44·b592··.*7{.%.......D.. | ||
00000440:· | 00000440:·d399·28cc·aa9c·66b8·9c6d·67f3·6243·2a92··..(...f..mg.bC*. | ||
00000450:· | 00000450:·85c4·0895·ac38·9d79·9eb4·a9d9·8da6·334f··.....8.y......3O | ||
00000460:· | 00000460:·db6d·86cb·cd70·3ada·9710·ecb5·6495·7537··.m...p:.....d.u7 | ||
00000470:· | 00000470:·4551·6d47·2d59·7395·5ab4·ab54·f415·f47a··EQmG-Ys.Z..T...z | ||
00000480:· | 00000480:·8959·4c1d·d5cd·4683·9a9d·3a73·b793·1165··.YL...F...:s...e | ||
00000490:· | 00000490:·11c1·5542·1020·4048·4e1b·8e4a·284b·88a3··..UB.·@HN..J(K.. | ||
000004a0:· | 000004a0:·9d79·5639·f9c8·da7a·c205·67d3·9dbb·1f59··.yV9...z..g....Y | ||
000004b0:· | 000004b0:·65d4·d86a·d127·532a·c724·94d5·6575·a899··e..j.'S*.$..eu.. | ||
000004c0:· | 000004c0:·b89c·1321·a625·b89c·ed9c·cafd·c85a·c0d2··...!.%.......Z.. | ||
000004d0:· | 000004d0:·89b3·995e·6c27·0d17·248b·00dd·32d4·2b12··...^l'..$...2.+. | ||
000004e0:· | 000004e0:·7a85·6a53·a8e8·566a·57a8·1675·fae0·03a0··z.jS..VjW..u.... | ||
000004f0:· | 000004f0:·ac2e·2b86·a605·0b50·5697·3523·6b28·4ae7··..+....PV.5#k(J. | ||
00000500:· | 00000500:·ce76·13ca·a2b2·f264·849a·5a27·e7ac·0a05··.v.....d..Z'.... | ||
00000510:· | 00000510:·daed·47d6·094d·34e0·408a·0906·199c·389b··..G..M4.@.....8. | ||
00000520:· | 00000520:·8f2c·5bbd·6a99·ecc4·d982·b2cc·7ad5·4d82··.,[.j.......z.M. | ||
00000530:· | 00000530:·902c·1ad2·49cb·dda0·7c64·69a9·57dd·5074··.,..I...|di.W.Pt | ||
00000540:· | 00000540:·b9b3·46a5·3b77·b85c·6d86·cb6d·9065·a55e··..F.;w.\m..m.e.^ | ||
00000550:·7 | 00000550:·7527·c181·3183·b2a6·8c50·8d74·b4a8·9a50··u'..1....P.t...P | ||
00000560:· | 00000560:·1652·bd6a·59cb·baa1·cc4c·2add·2994·d565··.R.jY....L*.)..e | ||
00000570:·9 | 00000570:·97d4·2b74·8bb9·bbd1·a07c·6475·5933·dd49··..+t.....|duY3.I | ||
00000580:· | 00000580:·b75c·ce49·28eb·48bd·ea6e·b276·77db·0e63··.\.I(.H..n.vw..c | ||
00000590:· | 00000590:·5b36·4295·7593·7e61·51c6·bf46·53fb·3af2··[6B.u.~aQ..FS.:. | ||
000005a0:· | 000005a0:·7a89·4aaa·683a·1dcd·4756·6b69·ad59·8346··z.J.h:..GVki.Y.F | ||
000005b0:· | 000005b0:·4def·a8dd·f695·c1eb·25e6·a839·6ae7·a8dd··M.......%..9j... | ||
000005c0:· | 000005c0:·2080·7c01·c84d·7c6a·9ac3·c739·7cbc·7493···.|..M|j...9|.t. | ||
000005d0:· | 000005d0:·222a·72b2·dd6a·43e9·1522·a424·7a32·6d50··"*r..jC..".$z2mP | ||
000005e0:· | 000005e0:·b69a·39b5·c351·9d50·e6ad·3475·b472·f774··..9..Q.P..4u.r.t | ||
000005f0:· | 000005f0:·336d·50a5·b9cb·457d·299f·74b9·9aa9·2bcd··3mP...E}).t...+. | ||
00000600:· | 00000600:·9b93·6d87·334f·3026·ad3c·6da5·69ee·4af3··..m.3O0&.<m.i.J. | ||
00000610:· | 00000610:·4b59·9625·69ee·68b5·5247·bb51·d56c·a78e··KY.%i.h.RG.Q.l.. | ||
00000620:· | 00000620:·3655·ee6c·5167·89b3·9544·804c·5dee·dc95··6U.lQg...D.L]... | ||
00000630:· | 00000630:·4fe6·54d5·89a3·022a·71b4·7277·e24c·29f3··O.T....*q.rw.L). | ||
00000640:· | 00000640:·3625·652b·cd1b·d553·4eaa·dcd9·a2a4·9463··6%e+...SN......c | ||
00000650:· | 00000650:·c635·56a9·b516·95c5·ea1a·afee·9989·cbe1··.5V............. | ||
00000660:· | 00000660:·663f·d27b·8231·4fa2·9b14·ad96·1362·6f99··f?.{.1O......bo. | ||
00000670:· | 00000670:·6baf·95a9·cb9d·4c3e·5e47·af97·1896·6902··k.....L>^G....i. | ||
00000680:· | 00000680:·e11b·4ef8·aef0·b704·594f·20fc·0ddf·0d27··..N.....YO·....' | ||
00000690:· | 00000690:·3c13·e1af·153a·499c·8f38·9f80·078d·87f1··<....:I..8...... | ||
000006a0:· | 000006a0:·3cff·217c·7bb9·bd09·cd93·66ea·6a3f·6e57··<.!|{.....f.j?nW | ||
000006b0:·7 | 000006b0:·77ab·107e·4b78·5c78·2d0e·88dc·4b5e·8860··w..~Kx\x-...K^.` | ||
000006c0:· | 000006c0:·88dc·05f8·ad34·0c14·2bed·5613·3e4d·f8eb··.....4..+.V.>M.. | ||
000006d0:· | 000006d0:·842b·af6d·4fe7·2d67·2e68·c2db·28b7·ab67··.+.mO.-g.h..(..g | ||
000006e0:· | 000006e0:·9b17·be2a·3c98·f0b7·2afc·0de1·ef2d·7c01··...*<...*....-|. | ||
000006f0:· | 000006f0:·a444·b985·7f21·7c55·f829·62c2·e3aa·905a··.D...!|U.)b....Z | ||
00000700:· | 00000700:·40e1·4b78·0c5c·40e4·6662·0b8f·95da·42a5··@.Kx.\@.fb....B. | ||
00000710:· | 00000710:·244d·b218·5940·ac42·dc12·5e82·f037·c217··$M..Y@.B..^..7.. | ||
00000720:· | 00000720:·85d7·b242·8c0a·9f2c·39f7·d9f4·a9e9·9d85··...B...,9....... | ||
00000730:· | 00000730:·b74b·48e8·2e0a·ff53·1209·7fbb·83ca·6e41··.KH....S......nA | ||
00000740:· | 00000740:·bc11·7e08·f064·f8ee·ce03·3b1a·59c0·8e85··..~..d....;.Y... | ||
00000750:· | 00000750:·13b0·3731·04ec·42f0·60b7·36c0·5e03·8c0a··..71..B.`.6.^... | ||
00000760:· | 00000760:·f613·762e·db54·606f·4a82·1d09·03d8·8d94··..v..T`oJ....... | ||
00000770:· | 00000770:·b05b·0083·fdb0·5fdb·1df8·d5f8·af6d·5919··.[...._......mY. | ||
00000780:· | 00000780:·3f19·1bf8·b938·9d5f·8b9f·cb5a·a5ad·051e··?....8._...Z.... | ||
00000790:· | 00000790:·87df·8dd6·8ef0·dd40·e13f·b83d·c24f·d19a··.......@.?.=.O.. | ||
000007a0:· | 000007a0:·04a1·3c4b·41f8·2d26·2318·e99e·f8a3·75f2··..<KA.-&#.....u. | ||
000007b0:· | 000007b0:·3be0·e05c·747e·c211·de2a·41b9·e2ef·397f··;..\t~...*A...9. | ||
000007c0:· | 000007c0:·2cfc·ed39·7f07·ea15·7ff7·0d7f·2be0·ef34··,..9........+..4 | ||
000007d0:· | 000007d0:·d4e8·c01a·af10·0bd8·d12d·27cc·2fb4·f0cb··.........-'./... | ||
Max diff block lines reached; -1/77224 bytes (-0.00%) of diff not shown. |
Offset 35, 237 lines modified | Offset 35, 237 lines modified | ||
00000220:·01ec·28d5·1825·a0a0·2653·7464·6c69·6290··..(..%..&Stdlib. | 00000220:·01ec·28d5·1825·a0a0·2653·7464·6c69·6290··..(..%..&Stdlib. | ||
00000230:·30e8·d9af·4585·47c4·5080·a71b·9a6e·aed6··0...E.G.P....n.. | 00000230:·30e8·d9af·4585·47c4·5080·a71b·9a6e·aed6··0...E.G.P....n.. | ||
00000240:·58a0·a038·4361·6d6c·696e·7465·726e·616c··X..8Camlinternal | 00000240:·58a0·a038·4361·6d6c·696e·7465·726e·616c··X..8Camlinternal | ||
00000250:·466f·726d·6174·4261·7369·6373·9030·2ef2··FormatBasics.0.. | 00000250:·466f·726d·6174·4261·7369·6373·9030·2ef2··FormatBasics.0.. | ||
00000260:·d91c·ed81·f6c7·2f85·2bab·8ab4·06e0·4084··....../.+.....@. | 00000260:·d91c·ed81·f6c7·2f85·2bab·8ab4·06e0·4084··....../.+.....@. | ||
00000270:·95a6·be00·0000·0400·0000·0200·0000·0500··................ | 00000270:·95a6·be00·0000·0400·0000·0200·0000·0500··................ | ||
00000280:·0000·05a0·9040·4043·616d·6c31·3939·3954··.....@@Caml1999T | 00000280:·0000·05a0·9040·4043·616d·6c31·3939·3954··.....@@Caml1999T | ||
00000290:·3033·3484·95a6·bd0f·9c4 | 00000290:·3033·3484·95a6·bd0f·9c4e·bd7a·8a23·aa61··034......N.z.#.a | ||
000002a0:·a8 | 000002a0:·a844·28b5·2ffd·0058·2d72·001a·bf78·284c··.D(./..X-r...x(L | ||
000002b0:·20e2·d574·431f·02d0·3f04·41d5·557d·6a27···..tC...?.A.U}j' | |||
000002c0:·784b·55ec·068d·00f3·6a27·4044·6b50·c515··xKU.....j'@DkP.. | |||
000002d0:·d1b0·6ddf·dc76·d767·7f5a·a8d9·e5e7·a57c··..m..v.g.Z.....| | |||
000002e0:·377e·8ab6·6f68·ccbd·563c·bec5·fe0e·d24f··7~..oh..V<.....O | |||
000002f0:·f52a·3d2f·a892·9492·5a80·0267·026c·023f··.*=/....Z..g.l.? | |||
00000300:·a695·a6d0·8bd1·7098·59f8·c962·6314·cc65··......p.Y..bc..e | |||
00000310:·2281·0015·7e35·113f·85b1·30b3·8e84·b9cc··"...~5.?..0..... | |||
00000320:·0d60·5162·68c3·b658·2d8c·9138·a696·d964··.`Qbh..X-..8...d | |||
00000330:·0b0d·c485·b518·192e·fd98·49bc·0c62·b31f··..........I..b.. | |||
00000340:·364b·e5b0·38cd·c8ce·4acb·9c20·0b09·621b··6K..8...J..·..b. | |||
00000350:·0e8c·d8c5·68de·d73d·814a·43e6·027e·d85c··....h..=.JC..~.\ | |||
00000360:·fe1e·568b·9424·268b·0bfe·bc5a·ac16·c668··..V..$&....Z...h | |||
00000370:·20d2·12d3·db69·7bf9·7bd8·2ea1·884b·8845···....i{.{....K.E | |||
00000380:·c9bc·272f·ca90·9947·cd26·b1a0·8849·b2bb··..'/...G.&...I.. | |||
00000390:·c5be·4ec4·a4f7·c5c0·3006·8a1d·d406·f9cc··..N.....0....... | |||
000003a0:·49ec·eb7f·cb20·363f·0e53·e448·e572·f92a··I....·6?.S.H.r.* | |||
000003b0:·d872·7564·b5d2·f182·45dc·e775·b518·29e2··.rud....E..u..). | |||
000003c0:·717c·b9cc·38e8·10e1·4709·8f14·d203·7148··q|..8...G.....qH | |||
000003d0:·4c37·8e46·4c46·c97a·cc35·98c0·809e·488e··L7.FLF.z.5....H. | |||
000003e0:·3ee6·1b32·b8b0·b9a4·615b·0843·62ce·c971··>..2....a[.Cb..q | |||
000003f0:·6618·0c97·90c0·a680·a147·de42·1f33·4785··f........G.B.3G. | |||
00000400:·043d·fce4·911d·f863·9ef9·57e3·c11f·61b3··.=.....c..W...a. | |||
00000410:·69cb·35b9·7c84·cda5·ecc9·131e·734e·5ea2··i.5.|.......sN^. | |||
00000420:·fbd2·c463·cec9·665e·7f45·891c·bd0f·8959··...c..f^.E.....Y | |||
00000430:·a60b·53cd·e6f2·1219·8b2a·a1fb·7c4c·1fac··..S......*..|L.. | |||
00000440:·3071·a243·95a2·0a48·d0eb·314b·2bf5·af17··0q.C...H..1K+... | |||
00000450:·097a·47cc·1aac·d4bf·0740·a60c·51c8·2efc··.zG......@..Q... | |||
00000460:·6a3d·a60b·56ea·ff8a·1892·339c·488e·6038··j=..V.....3.H.`8 | |||
00000470:·8b81·a137·8298·1483·9b98·63ac·d47f·1228··...7......c....( | |||
00000480:·061f·314f·a859·23b1·739a·2131·c358·a97f··..1O.Y#.s.!1.X.. | |||
00000490:·7d12·fb50·318c·1349·24e6·9c4c·8295·2a43··}..P1..I$..L..*C | |||
000004a0:·c0e3·d7d5·7acc·39d9·cc3f·d217·8632·24a6··....z.9..?...2$. | |||
000004b0:·cc4a·fd7f·12fb·ff9f·5f85·fcaf·9a7d·bd95··.J......_....}.. | |||
000004c0:·5fc1·e187·d32f·73b9·83a8·4e14·bb1e·f3a9··_..../s...N..... | |||
000004d0:·a8d4·a839·02cd·bfec·7f5e·55b0·5ae9·10d9··...9.....^U.Z... | |||
000004e0:·24d6·c7e6·331b·b1ff·faff·b653·5f64·ffc7··$...3......S_d.. | |||
000004f0:·106a·7ba9·ed01·cbe6·ce3b·de5a·78f1·2d2a··.j{......;.Zx.-* | |||
00000500:·cb1d·5243·2697·732e·5f4a·ec21·abff·1806··..RC&.s._J.!.... | |||
00000510:·4330·e693·3b67·21cd·f5d9·ba59·f893·cffc··C0..;g!....Y.... | |||
00000520:·1358·2dff·ffff·faf2·7f95·c16a·a5f3·df04··.X-........j.... | |||
00000530:·426d·58ed·2b2c·9b3b·1fb0·f945·4037·6984··BmX.+,.;...E@7i. | |||
00000540:·6ab5·64b5·d2c9·afa9·339f·64aa·ca0e·da4e··j.d.....3.d....N | |||
00000550:·7d15·96cd·51a9·cd41·ed25·efb3·b9b0·1892··}...Q..A.%...... | |||
00000560:·a390·ccfb·66ae·dcb9·63f3·1103·dd30·2354··....f...c....0#T | |||
00000570:·737c·38f3·2985·c590·84f5·ac8e·562b·9d4f··s|8.).......V+.O | |||
00000580:·a4fa·ff9a·1a6c·d360·5b84·28b0·bb35·ef06··.....l.`[.(..5.. | |||
00000590:·e1be·eee9·6227·f292·38e9·f2ec·d841·1dff··....b'..8....A.. | |||
000005a0:·20d4·abae·7802·10ea·3927·faa0·de86·1dd4···...x...9'...... | |||
000005b0:·f960·2307·0b63·cea0·3e43·0b65·7653·459d··.`#..c..>C.evSE. | |||
000005c0:·0dea·a71b·ea6a·cea0·9ebd·7822·dd50·3fa3··.....j....x".P?. | |||
000005d0:·30e3·0428·2ca8·5f81·0375·28d4·6134·8d14··0..(,._..u(.a4.. | |||
000005e0:·b7f0·f36c·cf6c·c74e·ea39·0130·2575·2cd4··...l.l.N.9.0%u,. | |||
000005f0:·8320·43fd·fc28·6da7·ca94·a1fe·df31·d9b6··.·C..(m......1.. | |||
00000600:·62fb·4b77·490c·5b81·3ad0·d740·bdca·ca12··b.KwI.[.:..@.... | |||
00000610:·3350·671a·010d·0cd4·3f28·2558·a04e·a32b··3Pg.....?(%X.N.+ | |||
00000620:·501f·9384·0955·a87c·1212·8d7a·67a4·8c51··P....U.|...zg..Q | |||
00000630:·1f81·fa89·853a·1234·eab9·0bcd·0003·2cd4··.....:.4......,. | |||
00000640:·8d68·6246·5f1a·fc12·752b·1350·dfa1·1e01··.hbF_...u+.P.... | |||
00000650:·2da2·8326·4c88·5cb6·95d8·f6c2·b2b9·9303··-..&L.\......... | |||
00000660:·ea19·816e·128f·4728·a00e·0175·207a·a99f··...n..G(...u·z.. | |||
00000670:·7fd4·76ea·9750·fff7·51c0·3602·b641·8822··..v..P..Q.6..A." | |||
00000680:·6f36·a4db·2a42·dd7e·03d4·abfe·8b50·6780··o6..*B.~.....Pg. | |||
00000690:·d6d1·ee44·bb17·ede7·9903·e801·069c·a491··...D............ | |||
000006a0:·323b·c0d2·b14d·6d77·2142·3d1f·d01d·45de··2;...Mmw!B=...E. | |||
000006b0:·6cd8·8e76·38ed·7edc·d17e·be51·dba9·3ffe··l..v8.~..~.Q..?. | |||
000006c0:·68ff·5f59·316a·8351·fb03·d797·990b·8c8a··h._Y1j.Q........ | |||
000006d0:·d274·c3f1·eb2e·c6b0·eb82·c2e0·ed2e·263b··.t............&; | |||
000006e0:·2c1e·dda0·1d33·da9b·f839·daab·de4c·c1d1··,....3...9...L.. | |||
000006f0:·be45·fbb7·c9fd·9bd1·fe46·fb09·a73d·7bb7··.E.......F...={. | |||
00000700:·e730·7e8b·3770·da87·f0fe·2353·0d1e·3e0e··.0~.7p....#S..>. | |||
00000710:·1765·7e6a·2fd7·54fd·6bd1·fe66·aafd·a91d··.e~j/.T.k..f.... | |||
00000720:·8676·2a21·bcb1·685f·93fb·cf4d·5166·39b6··.v*!..h_...MQf9. | |||
00000730:·5c53·f554·550f·859a·da4b·d4de·c2b2·b9f3··\S.TU....K...... | |||
00000740:·89f6·6c40·e6a3·bca1·fd7c·3d0c·ed3e·b4db··..l@.....|=..>.. | |||
00000750:·d0fe·afff·32ed·ff38·b4db·d07e·edeb·5768··....2..8...~..Wh | |||
00000760:·cf2f·a3fc·9fc2·09af·7fb5·9dfa·1fda·ff95··./.............. | |||
00000770:·88a1·f60b·b5b3·38cd·7050·7aec·99df·8476··......8.pPz....v | |||
00000780:·28a3·fc49·f95f·5fbe·fe07·effb·d44e·8175··(..I.__......N.u | |||
00000790:·c01a·592a·aa07·c27b·4c7b·59e6·3a23·6555··..Y*...{L{Y.:#eU | |||
000007a0:·ceef·820a·b571·b561·2c9b·3ba1·dab3·5101··.....q.a,.;...Q. | |||
000007b0:·ddb4·0f7b·b51e·1e7b·be9e·0495·8e48·c9bc··...{...{.....H.. | |||
000007c0:·8f46·c27c·a4ca·1066·5ff0·87a3·85b6·187e··.F.|...f_......~ | |||
000007d0:·f246·1137·c362·8c86·41af·8669·a096·27a6··.F.7.b..A..i..'. | |||
000007e0:·960f·c450·1471·3611·9322·a681·b84b·c3a3··...P.q6.."...K.. | |||
000007f0:·47bb·a337·7a4e·59ae·90d0·7d0a·ea0e·ea46··G..7zNY...}....F | |||
00000800:·ba57·68cb·162f·4b1a·8e55·c3b1·ea28·3f23··.Wh../K..U...(?# | |||
00000810:·263b·daf5·b9a3·183a·91b8·ee8a·61ed·e2cf··&;.....:....a... | |||
00000820:·ab5d·5816·a528·4858·8ebe·100c·bd51·c44f··.]X..(HX.....Q.O | |||
00000830:·17e3·51c9·05ba·4141·b158·8c49·8339·3cac··..Q...AA.X.I.9<. | |||
00000840:·9a87·551f·b16c·ee1c·c590·c4c9·3c91·04c3··..U..l......<... | |||
00000850:·d9a5·81dd·8561·593a·ba41·2f25·2c4b·4a97··.....aY:.A/%,KJ. | |||
00000860:·7402·e389·51b7·f0e8·dea7·1d56·4d65·4565··t...Q......VMeEe | |||
00000870:·6564·eb70·964b·82d8·760b·3ffc·84a3·085d··ed.p.K..v.?....] | |||
00000880:·12ec·c8d1·1bc7·d7ad·85a1·78e5·9210·1e5d··..........x....] | |||
00000890:·ec94·e5de·0b74·a7ac·fe5f·2c9b·3b81·a4ec··.....t..._,.;... | |||
000008a0:·e4fc·2f0d·ac9b·6159·77f3·8754·2fb2·eeb2··../...aYw..T/... | |||
000008b0:·ce63·3df7·8154·2f23·db51·bdcc·e958·3615··.c=..T/#.Q...X6. | |||
000008c0:·d827·62bd·e985·acff·d760·f3b6·798f·806f··.'b......`..y..o | |||
000008d0:·51e4·7d62·48f5·7300·eb02·587f·33ff·44ac··Q.}bH.s...X.3.D. | |||
000008e0:·ef58·3f5f·5f80·dda3·fa93·2973·3ad6·c8b2··.X?__.....)s:... | |||
000008f0:·b1d6·cbff·c2c0·8c94·59c7·96b9·eacd·54bd··........Y.....T. | |||
00000900:·52db·a9af·c9bc·9bbc·3d96·cd9d·8254·2f73··R.......=....T/s | |||
00000910:·9422·dd38·4c67·0509·55c9·c70e·677e·3daa··.".8Lg..U...g~=. | |||
00000920:·f351·5d8f·ea1c·74f1·dee2·0d86·6573·4cb5··.Q]...t.....esL. | |||
00000930:·996a·3319·5935·aa93·79f9·50fd·aca2·7a0b··.j3.Y5..y.P...z. | |||
00000940:·d5cf·7ce6·339f·f9cc·67fe·579b·fc2f·0aac··..|.3...g.W../.. | |||
00000950:·03b6·4d7e·2baa·f750·bd8b·2baa·9f9f·d476··..M~+..P..+....v | |||
00000960:·0a0e·9cea·ff5a·1ef0·6ec0·bb56·3436·dd90··.....Z..n..V46.. | |||
00000970:·04bd·fb85·686c·bab5·f08e·dfd7·dd91·46eb··....hl........F. | |||
00000980:·ee97·a2f1·128d·b7e9·3ad9·a1aa·be7a·29aa··........:....z). | |||
00000990:·5749·6df1·4475·1db4·5053·bd08·aaea·e71b··WIm.Du..PS...... | |||
000009a0:·3445·1838·53dd·ac7e·f650·ddcd·1008·1c90··4E.8S..~.P...... | |||
000009b0:·4375·a93a·ab2e·41f5·a29a·850d·ac01·76ac··Cu.:..A.......v. | |||
000009c0:·b721·b631·cbe6·4e17·aae7·05ba·3118·11db··.!.1..N.....1... | |||
000009d0:·7a68·d589·aa87·b8fa·f952·da4e·dd6e·d5ff··zh.......R.N.n.. | |||
000009e0:·0991·633b·0ddb·33ec·448e·a096·0b85·4b75··..c;..3.D.....Ku | |||
000009f0:·285e·84ea·5541·587c·a9ee·baa2·4b75·2a95··(^..UAX|....Ku*. | |||
00000a00:·4bf5·0fac·c082·c619·50aa·2b55·3f89·aa57··K.......P.+U?..W | |||
Max diff block lines reached; -1/32243 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·2024-11-20·09:37:25.000000·debian-binary | 1 | -rw-r--r--···0········0········0········4·2024-11-20·09:37:25.000000·debian-binary |
2 | -rw-r--r--···0········0········0·····3264·2024-11-20·09:37:25.000000·control.tar.xz | 2 | -rw-r--r--···0········0········0·····3264·2024-11-20·09:37:25.000000·control.tar.xz |
3 | -rw-r--r--···0········0········0·2586 | 3 | -rw-r--r--···0········0········0·25861524·2024-11-20·09:37:25.000000·data.tar.xz |
Offset 9, 15 lines modified | Offset 9, 15 lines modified | ||
9 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/boot/ | 9 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/boot/ |
10 | -rw-r--r--···0·root·········(0)·root·········(0)····27377·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/boot/boot.cma | 10 | -rw-r--r--···0·root·········(0)·root·········(0)····27377·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/boot/boot.cma |
11 | -rw-r--r--···0·root·········(0)·root·········(0)····45120·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/boot/boot.cmxs | 11 | -rw-r--r--···0·root·········(0)·root·········(0)····45120·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/boot/boot.cmxs |
12 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/checklib/ | 12 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/checklib/ |
13 | -rw-r--r--···0·root·········(0)·root·········(0)···271849·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/checklib/coq_checklib.cma | 13 | -rw-r--r--···0·root·········(0)·root·········(0)···271849·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/checklib/coq_checklib.cma |
14 | -rw-r--r--···0·root·········(0)·root·········(0)···355408·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/checklib/coq_checklib.cmxs | 14 | -rw-r--r--···0·root·········(0)·root·········(0)···355408·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/checklib/coq_checklib.cmxs |
15 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/ | 15 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/ |
16 | -rw-r--r--···0·root·········(0)·root·········(0)···73537 | 16 | -rw-r--r--···0·root·········(0)·root·········(0)···735372·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/clib.cma |
17 | -rw-r--r--···0·root·········(0)·root·········(0)···731744·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/clib.cmxs | 17 | -rw-r--r--···0·root·········(0)·root·········(0)···731744·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/clib/clib.cmxs |
18 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/config/ | 18 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/config/ |
19 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/config/byte/ | 19 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/config/byte/ |
20 | -rw-r--r--···0·root·········(0)·root·········(0)·····3178·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/config/byte/byte_config.cma | 20 | -rw-r--r--···0·root·········(0)·root·········(0)·····3178·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/config/byte/byte_config.cma |
21 | -rw-r--r--···0·root·········(0)·root·········(0)·····3896·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/config/config.cma | 21 | -rw-r--r--···0·root·········(0)·root·········(0)·····3896·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/config/config.cma |
22 | -rw-r--r--···0·root·········(0)·root·········(0)····25384·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/config/config.cmxs | 22 | -rw-r--r--···0·root·········(0)·root·········(0)····25384·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/config/config.cmxs |
23 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/coqworkmgrapi/ | 23 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-11-20·09:37:25.000000·./usr/lib/x86_64-linux-gnu/ocaml/5.2.0/coq-core/coqworkmgrapi/ |
Offset 1, 8 lines modified | Offset 1, 8 lines modified | ||
00000000:·4361·6d6c·3139·3939·4130·3334·0009·588 | 00000000:·4361·6d6c·3139·3939·4130·3334·0009·588a··Caml1999A034..X. | ||
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 10833, 35129 lines modified | Offset 10833, 35129 lines modified | ||
0002a500:·2b00·0000·0100·0000·a7ff·ffff·0900·0000··+............... | 0002a500:·2b00·0000·0100·0000·a7ff·ffff·0900·0000··+............... | ||
0002a510:·0000·0000·0c00·0000·0e00·0000·1000·0000··................ | 0002a510:·0000·0000·0c00·0000·0e00·0000·1000·0000··................ | ||
0002a520:·1200·0000·0800·0000·1200·0000·0a00·0000··................ | 0002a520:·1200·0000·0800·0000·1200·0000·0a00·0000··................ | ||
0002a530:·3e00·0000·0600·0000·0000·0000·2800·0000··>...........(... | 0002a530:·3e00·0000·0600·0000·0000·0000·2800·0000··>...........(... | ||
0002a540:·0900·0000·2b00·0000·0000·0000·d1ff·ffff··....+........... | 0002a540:·0900·0000·2b00·0000·0000·0000·d1ff·ffff··....+........... | ||
0002a550:·0900·0000·0000·0000·3f00·0000·0000·0000··........?....... | 0002a550:·0900·0000·0000·0000·3f00·0000·0000·0000··........?....... | Diff chunk too large, falling back to line-by-line diff (35122 lines added, 35122 lines removed) | |
0002a560:·1300·0000·0100·0000·3900·0000·0000·0000··........9....... | 0002a560:·1300·0000·0100·0000·3900·0000·0000·0000··........9....... | ||
0002a570:·8495·a6bd·0f9a·2 | 0002a570:·8495·a6bd·0f9a·25be·578c·1eb1·07b0·2a28··......%.W.....*( | ||
0002a580:·b52f·fd00·58 | 0002a580:·b52f·fd00·58e5·6800·ca9b·a021·4a20·e2d5··./..X.h....!J·.. | ||
0002a590:· | 0002a590:·742f·b83d·0068·1001·28bc·eef3·940b·e24b··t/.=.h..(......K | ||
0002a5a0:· | 0002a5a0:·6c83·e146·f35e·df7e·dcea·0f61·dc6f·fbdc··l..F.^.~...a.o.. | ||
0002a5b0:· | 0002a5b0:·dfad·5b8f·bd6c·acfa·60f9·cb83·edad·756c··..[..l..`.....ul | ||
0002a5c0:· | 0002a5c0:·9bb5·a634·c0de·4c37·5b37·de2f·3883·90fe··...4..L7[7./8... | ||
0002a5d0:· | 0002a5d0:·8706·4969·6f6a·0109·0203·021e·0255·4ef3··..Iioj.......UN. | ||
0002a5e0:· | 0002a5e0:·3c49·2075·0128·5367·c391·5b6e·e66e·cad6··<I·u.(Sg..[n.n.. | ||
0002a5f0:· | 0002a5f0:·f339·05a9·40ae·7031·77b9·93bc·326d·5b6e··.9..@.p1w...2m[n | ||
0002a600:· | 0002a600:·23ea·14a4·c69c·7ca7·c923·79b6·9c69·43ad··#.....|..#y..iC. | ||
0002a610:· | 0002a610:·988e·a82f·762a·b8d2·cacc·d950·f309·90ea··.../v*.....P.... | ||
0002a620:· | 0002a620:·262a·4ddf·b52f·d61a·45cb·0d1d·978e·a86e··&*M../..E......n | ||
0002a630:· | 0002a630:·4841·4b92·6745·758e·369c·6e37·5e95·4949··HAK.gEu.6.n7^.II | ||
0002a640:· | 0002a640:·d4ae·b56f·fa64·7a8a·9104·2a18·56c8·9d2e··...o.dz...*.V... | ||
0002a650:· | 0002a650:·67cb·9936·5c59·5444·0d5a·d1e9·93e9·27f3··g..6\YTD.Z....'. | ||
0002a660:· | 0002a660:·243d·b0f9·a674·573a·a224·aa12·422d·7679··$=...tW:.$..B-vy | ||
0002a670:· | 0002a670:·9228·3a56·d976·e349·a2ba·9dad·346d·e539··.(:V.v.I....4m.9 | ||
0002a680:· | 0002a680:·7209·daf1·c69b·3974·7f57·6cfb·4f25·4ddf··r.....9t.Wl.O%M. | ||
0002a690:· | 0002a690:·bfa2·d403·d67a·d357·eaf4·d5f3·7ac5·a2c8··.....z.W....z... | ||
0002a6a0:· | 0002a6a0:·d36a·a71b·7336·f424·7b3d·1ba4·12b1·9505··.j..s6.${=...... | ||
0002a6b0:· | 0002a6b0:·6802·1e23·5457·5ac9·5421·683d·12f5·4df9··h..#TWZ.T!h=..M. | ||
0002a6c0:· | 0002a6c0:·a83e·3051·95ba·13ed·fda8·30e8·80d5·37c5··.>0Q......0...7. | ||
0002a6d0:· | 0002a6d0:·913c·d349·a676·dd1a·6e64·693e·9139·2995··.<.I.v..ndi>.9). | ||
0002a6e0:· | 0002a6e0:·a60e·ad32·7f54·166a·68a9·23af·74e8·5802··...2.T.jh.#.t.X. | ||
0002a6f0:· | 0002a6f0:·a9e6·3f08·4d7f·f62d·3bdd·5aef·d937·9d5a··..?.M..-;.Z..7.Z | ||
0002a700:· | 0002a700:·b284·47ed·ba5c·4629·281e·b5eb·7eb1·0f25··..G..\F)(...~..% | ||
0002a710:· | 0002a710:·09ed·e976·3295·ea89·49a8·d7fb·04b5·f93c··...v2...I......< | ||
0002a720:· | 0002a720:·1877·3fea·6dc9·0225·3627·1454·8096·3a1f··.w?.m..%6'.T..:. | ||
0002a730:· | 0002a730:·15aa·b1de·5ab4·d4f5·a855·1aeb·bf89·88ea··....Z....U...... | ||
0002a740:· | 0002a740:·4484·8ee6·2ee7·a332·35d6·3f94·d344·6f56··D......25.?..DoV | ||
0002a750:· | 0002a750:·27da·2bcd·9bad·3475·bd92·44bb·9017·a8b5··'.+...4u..D..... | ||
0002a760:· | 0002a760:·c6fa·3f2a·bb90·3dea·9150·cfce·51cb·4da6··..?*..=..P..Q.M. | ||
0002a770:· | 0002a770:·2a69·acb7·2fb6·fd9f·d948·ab13·95a9·5d97··*i../....H....]. | ||
0002a780:· | 0002a780:·4963·bdd8·ff29·16b2·b71b·733e·6ad7·fdf2··Ic...)....s>j... | ||
0002a790:· | 0002a790:·5fb4·33cd·2999·7aa4·b1fe·5f6c·11ee·5ba1··_.3.).z..._l..[. | ||
0002a7a0:·b | 0002a7a0:·b6bf·f4af·33ec·f0f0·d3f5·be36·78bd·6248··....3......6x.bH | ||
0002a7b0:· | 0002a7b0:·bef1·3c47·1ff5·8146·0011·660c·1a0b·6b2b··..<G...F..f...k+ | ||
0002a7c0:· | 0002a7c0:·76d8·70f8·ffff·7ef0·6d93·263c·d676·cf79··v.p...~.m.&<.v.y | ||
0002a7d0:· | 0002a7d0:·fddb·c8d2·2c6d·3feb·8f3c·4dd4·c9e7·15f2··....,m?..<M..... | ||
0002a7e0:· | 0002a7e0:·0bc9·eb15·bb01·4446·6413·9187·44b6·3214··......DFd...D.2. | ||
0002a7f0:·201 | 0002a7f0:·3201·2b03·8399·4143·5f51·08fd·4271·6599··2.+...AC_Q..Bqe. | ||
0002a800:· | 0002a800:·8534·661c·6eec·6182·44e4·2322·5719·0ac9··.4f.n.a.D.#"W... | ||
0002a810:·c | 0002a810:·c030·0867·762a·0c33·48c0·6ca1·67e1·2c33··.0.gv*.3H.l.g.,3 | ||
0002a820:· | 0002a820:·69b5·1baf·7c46·323f·e8b0·0d3a·9cf4·1a0a··i...|F2?...:.... | ||
0002a830:· | 0002a830:·8f80·1985·7ea9·46b4·4716·7aaa·b5b5·a6f6··....~.F.G.z..... | ||
0002a840:·3fb | 0002a840:·53fb·39d8·33fb·c82d·3db3·22a1·1330·14fa··S.9.3..-=."..0.. | ||
0002a850:· | 0002a850:·1a13·1926·b214·dd8e·1754·fa70·4690·9aac··...&.....T.pF... | ||
0002a860:· | 0002a860:·6fc4·c45c·352e·f500·93c2·d67a·3dd2·6866··o..\5......z=.hf | ||
0002a870:· | 0002a870:·d33c·3aed·943e·a21e·ac54·2b5d·bf48·0873··.<:..>...T+].H.s | ||
0002a880:· | 0002a880:·e923·ea01·0ad0·68d0·0081·3f05·420f·fb17··.#....h...?.B... | ||
0002a890:· | 0002a890:·24f4·319a·c768·ceb2·26d6·3ffa·2db9·655c··$.1..h..&.?.-.e\ | ||
0002a8a0:· | 0002a8a0:·0a22·621f·80d0·b508·bb8d·7dfb·6fc3·d07f··."b.......}.o... | ||
0002a8b0:· | 0002a8b0:·bfde·1f3d·fa60·7c05·6334·8ae6·289a·6d1b··...=.`|.c4..(.m. | ||
0002a8c0:· | 0002a8c0:·b0a7·e97f·599f·88c7·4c6e·1997·6440·a4b0··....Y...Ln..d@.. | ||
0002a8d0:· | 0002a8d0:·b53e·4df3·9966·a935·22af·11d9·e988·0b4c··.>M..f.5"......L | ||
0002a8e0:· | 0002a8e0:·7310·cd51·50a4·7902·cd99·0498·49aa·93e4··s..QP.y.....I... | ||
0002a8f0:· | 0002a8f0:·f918·01a1·42b3·9766·2833·4e34·5186·0cd7··....B..f(3N4Q... | ||
0002a900:· | 0002a900:·1208·3093·5726·8f3c·7f8a·5018·9b6d·cd57··..0.W&.<..P..m.W | ||
0002a910:· | 0002a910:·9038·62cc·11ec·f785·4eb7·5623·7e4a·8809··.8b.....N.V#~J.. | ||
0002a920:· | 0002a920:·4245·8485·49f3·92e6·a721·c280·1142·06f6··BE..I....!...B.. | ||
0002a930:·e | 0002a930:·e75a·83f8·a108·1f0e·6046·c95e·0f4d·0323··.Z......`F.^.M.# | ||
0002a940:· | 0002a940:·cd44·9aad·f430·0b1a·c0ec·43ab·78e4·0c28··.D...0....C.x..( | ||
0002a950:· | 0002a950:·8066·9de6·2a5a·d779·07e7·a7a9·59eb·5d62··.f..*Z.y....Y.]b | ||
0002a960:· | 0002a960:·4fb7·561d·9c9f·6b0d·02b9·bffb·d6c6·5a0f··O.V...k.......Z. | ||
0002a970:· | 0002a970:·91e5·884c·0589·7dfd·fdff·ecfe·d17d·5bc4··...L..}......}[. | ||
0002a980:· | 0002a980:·6e1f·07e7·7127·9d15·c08c·db91·ba9c·0f90··n...q'.......... | ||
0002a990:· | 0002a990:·ebbe·fdb0·b5fe·ffe3·20b1·af6e·446e·23f2··........·..nDn#. | ||
0002a9a0:· | 0002a9a0:·941d·2f88·3c4d·b487·644a·b7bb·1d59·7f9f··../.<M..dJ...Y.. | ||
0002a9b0:· | 0002a9b0:·12c0·8cee·00b9·6e0c·e94a·5380·d969·07c8··......n..JS..i.. | ||
0002a9c0:· | 0002a9c0:·f483·35a5·dbe1·50a7·1fac·1488·fd26·45ee··..5...P......&E. | ||
0002a9d0:·a | 0002a9d0:·ac70·26cf·465e·e97a·a7d5·8d3c·6d38·b2d4··.p&.F^.z...<m8.. | ||
0002a9e0:· | 0002a9e0:·e548·5c39·6589·1a01·7b57·9214·81b1·0f8c··.H\9e...{W...... | ||
0002a9f0:· | 0002a9f0:·cf28·1b16·dc4d·87bf·166c·cf5a·a752·a9dd··.(...M...l.Z.R.. | ||
0002aa00:· | 0002aa00:·5825·0087·f11c·e72a·4b44·4b42·d2e1·af31··X%.....*KDKB...1 | ||
0002aa10:· | 0002aa10:·1d35·4599·4191·92e2·84b3·12ce·3c06·8608··.5E.A.......<... | ||
0002aa20:· | 0002aa20:·d989·40e6·a3c3·5f03·62a1·fd72·90b5·42a0··..@..._.b..r..B. | ||
0002aa30:· | 0002aa30:·c35f·3342·044b·7b03·3afc·b522·4f50·74c0··._3B.K{.:.."OPt. | ||
0002aa40:· | 0002aa40:·c179·06e7·2d6e·62fc·353b·6231·fe5a·1eb1··.y..-nb.5;b1.Z.. | ||
0002aa50:· | 0002aa50:·187f·6d4e·0cc6·478c·bf16·d369·bf51·7100··..mN..G....i.Qq. | ||
0002aa60:· | 0002aa60:·d0d1·51d2·be5e·5ae8·44ed·5a6f·7ee8·d0da··..Q..^Z.D.Zo~... | ||
0002aa70:· | 0002aa70:·b7d6·2c29·4c26·84e0·dcc5·59d7·26c6·5fab··..,)L&....Y.&._. | ||
0002aa80:· | 0002aa80:·2316·7ad6·1a74·7aa2·c339·6371·a682·23c6··#.z..tz..9cq..#. | ||
0002aa90:· | 0002aa90:·5f8b·2336·478c·a184·ce14·bad6·d64a·479a··_.#6G........JG. | ||
0002aaa0:· | 0002aaa0:·b506·a3dc·a5a8·99f3·3b93·48bc·468c·18bf··........;.H.F... | ||
0002aab0:· | 0002aab0:·1320·ed59·6b18·31a5·2627·6137·1172·46e2··.·.Yk.1.&'a7.rF. | ||
0002aac0:· | 0002aac0:·8c8b·ed08·15b1·2741·a985·adf5·47bc·8fe6··......'A....G... | ||
0002aad0:· | 0002aad0:·3d9a·a7a4·6cf0·80f3·10e7·dc1e·7cf4·31e7··=...l.......|.1. | ||
0002aae0:·f | 0002aae0:·f5a3·cc93·2842·9c4d·3b31·e06e·9abb·9ac9··....(B.M;1.n.... | ||
0002aaf0:· | 0002aaf0:·3bd4·887e·f188·2307·8e3c·d4e8·c1c0·ced2··;..~..#..<...... | ||
0002ab00:· | 0002ab00:·4e97·fb01·72dd·6f2a·03d8·2ca6·f946·479b··N...r.o*..,..FG. | ||
0002ab10:· | 0002ab10:·3ac2·88fe·5cab·9b37·7060·a2f3·9c3b·69ba··:...\..7p`...;i. | ||
0002ab20:· | 0002ab20:·3ed7·6a87·1366·dcce·8452·c40a·cd29·344f··>.j..f...R...)4O | ||
0002ab30:· | 0002ab30:·b5e1·c61b·2ec0·1187·1c73·5889·35e6·9344··.........sX.5..D | ||
0002ab40:· | 0002ab40:·75b2·273e·d1a5·98bc·6869·866a·1ed5·8012··u.'>....hi.j.... | ||
0002ab50:· | 0002ab50:·3ddd·5ad3·6743·cb5d·23c9·4d1d·60f6·95f6··=.Z.gC.]#.M.`... | ||
0002ab60:· | 0002ab60:·8b12·b3af·1c97·9e66·cddf·6ceb·3a83·0d1a··.......f..l.:... | ||
0002ab70:· | 0002ab70:·6908·1193·6a45·42d7·b2ff·df24·e664·2881··i...jEB....$.d(. | ||
0002ab80:· | 0002ab80:·6658·3316·3188·887e·c758·4346·1944·4433··fX3.1..~.XCF.DD3 | ||
0002ab90:· | 0002ab90:·32b8·01cc·fa0d·dcae·ab85·c45c·35f2·7a80··2..........\5.z. | ||
0002aba0:· | 0002aba0:·5cf7·95ba·ad10·598d·c851·5968·b105·175d··\.....Y..QYh...] | ||
0002abb0:· | 0002abb0:·78f1·0518·7b84·7e5f·08a3·e888·d997·d3e1··x...{.~_........ | ||
0002abc0:· | 0002abc0:·4cde·4f12·1544·881c·4664·a82a·acb8·22dd··L.O..D..Fd.*..". | ||
0002abd0:· | 0002abd0:·5ab1·082e·1931·f348·5e0f·1218·1544·f622··Z....1.H^....D." | ||
0002abe0:· | 0002abe0:·f295·28a4·98e2·4ce8·f705·2ad4·3415·31e3··..(...L...*.4.1. | ||
0002abf0:· | 0002abf0:·4a5d·4e76·8482·1691·7322·3f0d·8567·6068··J]Nv....s"?..g`h | ||
0002ac00:· | 0002ac00:·6069·a078·3221·f4ff·693a·0b02·f399·7d20··`i.x2!..i:....}· | ||
0002ac10:· | 0002ac10:·30ff·7500·988f·717f·31ee·7608·f7b0·a510··0.u...q.1.v..... | ||
0002ac20:· | 0002ac20:·d1ec·3fad·8e39·eebf·d9ff·4cc7·cc1b·cfb1··..?..9....L..... | ||
0002ac30:· | 0002ac30:·cae7·b271·cf22·15b5·25a8·c5f6·6445·8411··...q."..%...dE.. | ||
0002ac40:· | 0002ac40:·de70·df5a·2f07·5458·a84c·7910·4258·e39e··.p.Z/.TX.Ly.BX.. | ||
Max diff block lines reached; -1/4847983 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·2024-11-20·09:37:25.000000·debian-binary | 1 | -rw-r--r--···0········0········0········4·2024-11-20·09:37:25.000000·debian-binary |
2 | -rw-r--r--···0········0········0····6306 | 2 | -rw-r--r--···0········0········0····63060·2024-11-20·09:37:25.000000·control.tar.xz |
3 | -rw-r--r--···0········0········0·23465 | 3 | -rw-r--r--···0········0········0·23465972·2024-11-20·09:37:25.000000·data.tar.xz |
Offset 2440, 53 lines modified | Offset 2440, 53 lines modified | ||
2440 | -rw-r--r--···0·root·········(0)·root·········(0)····16144·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Bool.BoolEq.html | 2440 | -rw-r--r--···0·root·········(0)·root·········(0)····16144·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Bool.BoolEq.html |
2441 | -rw-r--r--···0·root·········(0)·root·········(0)····28687·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Bool.BoolOrder.html | 2441 | -rw-r--r--···0·root·········(0)·root·········(0)····28687·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Bool.BoolOrder.html |
2442 | -rw-r--r--···0·root·········(0)·root·········(0)····34692·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Bool.Bvector.html | 2442 | -rw-r--r--···0·root·········(0)·root·········(0)····34692·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Bool.Bvector.html |
2443 | -rw-r--r--···0·root·········(0)·root·········(0)····10524·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Bool.DecBool.html | 2443 | -rw-r--r--···0·root·········(0)·root·········(0)····10524·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Bool.DecBool.html |
2444 | -rw-r--r--···0·root·········(0)·root·········(0)····14176·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Bool.IfProp.html | 2444 | -rw-r--r--···0·root·········(0)·root·········(0)····14176·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Bool.IfProp.html |
2445 | -rw-r--r--···0·root·········(0)·root·········(0)····22507·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Bool.Sumbool.html | 2445 | -rw-r--r--···0·root·········(0)·root·········(0)····22507·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Bool.Sumbool.html |
2446 | -rw-r--r--···0·root·········(0)·root·········(0)·····9445·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Bool.Zerob.html | 2446 | -rw-r--r--···0·root·········(0)·root·········(0)·····9445·2024-11-20·09:37:25.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·2024-11-20·09:37:25.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·2024-11-20·09:37:25.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·2024-11-20·09:37:25.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·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Classes.DecidableClass.html |
2451 | -rw-r--r--···0·root·········(0)·root·········(0)····4130 | 2451 | -rw-r--r--···0·root·········(0)·root·········(0)····41301·2024-11-20·09:37:25.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·2024-11-20·09:37:25.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·2024-11-20·09:37:25.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·2024-11-20·09:37:25.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·2024-11-20·09:37:25.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·2024-11-20·09:37:25.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·2024-11-20·09:37:25.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·2024-11-20·09:37:25.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·2024-11-20·09:37:25.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·2024-11-20·09:37:25.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·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Classes.SetoidTactics.html |
2462 | -rw-r--r--···0·root·········(0)·root·········(0)·····3600·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Compat.AdmitAxiom.html | 2462 | -rw-r--r--···0·root·········(0)·root·········(0)·····3600·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Compat.AdmitAxiom.html |
2463 | -rw-r--r--···0·root·········(0)·root·········(0)····36191·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Compat.Coq818.html | 2463 | -rw-r--r--···0·root·········(0)·root·········(0)····36191·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Compat.Coq818.html |
2464 | -rw-r--r--···0·root·········(0)·root·········(0)·····2919·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Compat.Coq819.html | 2464 | -rw-r--r--···0·root·········(0)·root·········(0)·····2919·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Compat.Coq819.html |
2465 | -rw-r--r--···0·root·········(0)·root·········(0)·····2701·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Compat.Coq820.html | 2465 | -rw-r--r--···0·root·········(0)·root·········(0)·····2701·2024-11-20·09:37:25.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·2024-11-20·09:37:25.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·2024-11-20·09:37:25.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·2024-11-20·09:37:25.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·2024-11-20·09:37:25.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·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FMapList.html |
2471 | -rw-r--r--···0·root·········(0)·root·········(0)···272480·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FMapPositive.html | 2471 | -rw-r--r--···0·root·········(0)·root·········(0)···272480·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FMapPositive.html |
2472 | -rw-r--r--···0·root·········(0)·root·········(0)···273119·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FMapWeakList.html | 2472 | -rw-r--r--···0·root·········(0)·root·········(0)···273119·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FMapWeakList.html |
2473 | -rw-r--r--···0·root·········(0)·root·········(0)·····4419·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FMaps.html | 2473 | -rw-r--r--···0·root·········(0)·root·········(0)·····4419·2024-11-20·09:37:25.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·2024-11-20·09:37:25.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·2024-11-20·09:37:25.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·2024-11-20·09:37:25.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·2024-11-20·09:37:25.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·2024-11-20·09:37:25.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·2024-11-20·09:37:25.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·2024-11-20·09:37:25.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·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FSetList.html |
2482 | -rw-r--r--···0·root·········(0)·root·········(0)···284090·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FSetPositive.html | 2482 | -rw-r--r--···0·root·········(0)·root·········(0)···284090·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FSetPositive.html |
2483 | -rw-r--r--···0·root·········(0)·root·········(0)···330840·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FSetProperties.html | 2483 | -rw-r--r--···0·root·········(0)·root·········(0)···330840·2024-11-20·09:37:25.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·2024-11-20·09:37:25.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·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FSetWeakList.html |
2486 | -rw-r--r--···0·root·········(0)·root·········(0)·····5771·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FSets.html | 2486 | -rw-r--r--···0·root·········(0)·root·········(0)·····5771·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.FSets.FSets.html |
2487 | -rw-r--r--···0·root·········(0)·root·········(0)····43972·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Floats.FloatAxioms.html | 2487 | -rw-r--r--···0·root·········(0)·root·········(0)····43972·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Floats.FloatAxioms.html |
2488 | -rw-r--r--···0·root·········(0)·root·········(0)·····3707·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Floats.FloatClass.html | 2488 | -rw-r--r--···0·root·········(0)·root·········(0)·····3707·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Floats.FloatClass.html |
2489 | -rw-r--r--···0·root·········(0)·root·········(0)·····8314·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Floats.FloatLemmas.html | 2489 | -rw-r--r--···0·root·········(0)·root·········(0)·····8314·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Floats.FloatLemmas.html |
2490 | -rw-r--r--···0·root·········(0)·root·········(0)····21337·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Floats.FloatOps.html | 2490 | -rw-r--r--···0·root·········(0)·root·········(0)····21337·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Floats.FloatOps.html |
2491 | -rw-r--r--···0·root·········(0)·root·········(0)·····5273·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Floats.Floats.html | 2491 | -rw-r--r--···0·root·········(0)·root·········(0)·····5273·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Floats.Floats.html |
2492 | -rw-r--r--···0·root·········(0)·root·········(0)····29739·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Floats.PrimFloat.html | 2492 | -rw-r--r--···0·root·········(0)·root·········(0)····29739·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Floats.PrimFloat.html |
Offset 2512, 163 lines modified | Offset 2512, 163 lines modified | ||
2512 | -rw-r--r--···0·root·········(0)·root·········(0)····15205·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Lists.ListTactics.html | 2512 | -rw-r--r--···0·root·········(0)·root·········(0)····15205·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Lists.ListTactics.html |
2513 | -rw-r--r--···0·root·········(0)·root·········(0)···236380·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Lists.SetoidList.html | 2513 | -rw-r--r--···0·root·········(0)·root·········(0)···236380·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Lists.SetoidList.html |
2514 | -rw-r--r--···0·root·········(0)·root·········(0)····44917·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Lists.SetoidPermutation.html | 2514 | -rw-r--r--···0·root·········(0)·root·········(0)····44917·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Lists.SetoidPermutation.html |
2515 | -rw-r--r--···0·root·········(0)·root·········(0)····37550·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Lists.StreamMemo.html | 2515 | -rw-r--r--···0·root·········(0)·root·········(0)····37550·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Lists.StreamMemo.html |
2516 | -rw-r--r--···0·root·········(0)·root·········(0)····57012·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Lists.Streams.html | 2516 | -rw-r--r--···0·root·········(0)·root·········(0)····57012·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Lists.Streams.html |
2517 | -rw-r--r--···0·root·········(0)·root·········(0)····54223·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.Adjointification.html | 2517 | -rw-r--r--···0·root·········(0)·root·········(0)····54223·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.Adjointification.html |
2518 | -rw-r--r--···0·root·········(0)·root·········(0)····28317·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.Berardi.html | 2518 | -rw-r--r--···0·root·········(0)·root·········(0)····28317·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.Berardi.html |
2519 | -rw-r--r--···0·root·········(0)·root·········(0)···2380 | 2519 | -rw-r--r--···0·root·········(0)·root·········(0)···238047·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.ChoiceFacts.html |
2520 | -rw-r--r--···0·root·········(0)·root·········(0)·····3121·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.Classical.html | 2520 | -rw-r--r--···0·root·········(0)·root·········(0)·····3121·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.Classical.html |
2521 | -rw-r--r--···0·root·········(0)·root·········(0)····13475·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.ClassicalChoice.html | 2521 | -rw-r--r--···0·root·········(0)·root·········(0)····13475·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.ClassicalChoice.html |
2522 | -rw-r--r--···0·root·········(0)·root·········(0)····23909·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.ClassicalDescription.html | 2522 | -rw-r--r--···0·root·········(0)·root·········(0)····23909·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.ClassicalDescription.html |
2523 | -rw-r--r--···0·root·········(0)·root·········(0)····2659 | 2523 | -rw-r--r--···0·root·········(0)·root·········(0)····26594·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.ClassicalEpsilon.html |
2524 | -rw-r--r--···0·root·········(0)·root·········(0)···1678 | 2524 | -rw-r--r--···0·root·········(0)·root·········(0)···167808·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.ClassicalFacts.html |
2525 | -rw-r--r--···0·root·········(0)·root·········(0)····18610·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.ClassicalUniqueChoice.html | 2525 | -rw-r--r--···0·root·········(0)·root·········(0)····18610·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.ClassicalUniqueChoice.html |
2526 | -rw-r--r--···0·root·········(0)·root·········(0)····18177·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.Classical_Pred_Type.html | 2526 | -rw-r--r--···0·root·········(0)·root·········(0)····18177·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.Classical_Pred_Type.html |
2527 | -rw-r--r--···0·root·········(0)·root·········(0)····32672·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.Classical_Prop.html | 2527 | -rw-r--r--···0·root·········(0)·root·········(0)····32672·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.Classical_Prop.html |
2528 | -rw-r--r--···0·root·········(0)·root·········(0)···101777·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.ConstructiveEpsilon.html | 2528 | -rw-r--r--···0·root·········(0)·root·········(0)···101777·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.ConstructiveEpsilon.html |
2529 | -rw-r--r--···0·root·········(0)·root·········(0)····68338·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.Decidable.html | 2529 | -rw-r--r--···0·root·········(0)·root·········(0)····68338·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.Decidable.html |
2530 | -rw-r--r--···0·root·········(0)·root·········(0)·····5846·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.Description.html | 2530 | -rw-r--r--···0·root·········(0)·root·········(0)·····5846·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.Description.html |
2531 | -rw-r--r--···0·root·········(0)·root·········(0)····4215 | 2531 | -rw-r--r--···0·root·········(0)·root·········(0)····42150·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.Diaconescu.html |
2532 | -rw-r--r--···0·root·········(0)·root·········(0)····25787·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.Epsilon.html | 2532 | -rw-r--r--···0·root·········(0)·root·········(0)····25787·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.Epsilon.html |
2533 | -rw-r--r--···0·root·········(0)·root·········(0)·····7263·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.Eqdep.html | 2533 | -rw-r--r--···0·root·········(0)·root·········(0)·····7263·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.Eqdep.html |
2534 | -rw-r--r--···0·root·········(0)·root·········(0)···1387 | 2534 | -rw-r--r--···0·root·········(0)·root·········(0)···138738·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.EqdepFacts.html |
2535 | -rw-r--r--···0·root·········(0)·root·········(0)···10655 | 2535 | -rw-r--r--···0·root·········(0)·root·········(0)···106556·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.Eqdep_dec.html |
2536 | -rw-r--r--···0·root·········(0)·root·········(0)·····7937·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.ExtensionalFunctionRepresentative.html | 2536 | -rw-r--r--···0·root·········(0)·root·········(0)·····7937·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.ExtensionalFunctionRepresentative.html |
2537 | -rw-r--r--···0·root·········(0)·root·········(0)····275 | 2537 | -rw-r--r--···0·root·········(0)·root·········(0)····27526·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.ExtensionalityFacts.html |
2538 | -rw-r--r--···0·root·········(0)·root·········(0)····8720 | 2538 | -rw-r--r--···0·root·········(0)·root·········(0)····87201·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.FinFun.html |
2539 | -rw-r--r--···0·root·········(0)·root·········(0)····90604·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.FunctionalExtensionality.html | 2539 | -rw-r--r--···0·root·········(0)·root·········(0)····90604·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.FunctionalExtensionality.html |
2540 | -rw-r--r--···0·root·········(0)·root·········(0)····20623·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.HLevels.html | 2540 | -rw-r--r--···0·root·········(0)·root·········(0)····20623·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.HLevels.html |
2541 | -rw-r--r--···0·root·········(0)·root·········(0)···230 | 2541 | -rw-r--r--···0·root·········(0)·root·········(0)···230468·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.Hurkens.html |
2542 | -rw-r--r--···0·root·········(0)·root·········(0)····12821·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.IndefiniteDescription.html | 2542 | -rw-r--r--···0·root·········(0)·root·········(0)····12821·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.IndefiniteDescription.html |
2543 | -rw-r--r--···0·root·········(0)·root·········(0)····41309·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.JMeq.html | 2543 | -rw-r--r--···0·root·········(0)·root·········(0)····41309·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.JMeq.html |
2544 | -rw-r--r--···0·root·········(0)·root·········(0)·····5440·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.ProofIrrelevance.html | 2544 | -rw-r--r--···0·root·········(0)·root·········(0)·····5440·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.ProofIrrelevance.html |
2545 | -rw-r--r--···0·root·········(0)·root·········(0)····16240·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.ProofIrrelevanceFacts.html | 2545 | -rw-r--r--···0·root·········(0)·root·········(0)····16240·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.ProofIrrelevanceFacts.html |
2546 | -rw-r--r--···0·root·········(0)·root·········(0)·····5497·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.PropExtensionality.html | 2546 | -rw-r--r--···0·root·········(0)·root·········(0)·····5497·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.PropExtensionality.html |
2547 | -rw-r--r--···0·root·········(0)·root·········(0)····181 | 2547 | -rw-r--r--···0·root·········(0)·root·········(0)····18155·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.PropExtensionalityFacts.html |
2548 | -rw-r--r--···0·root·········(0)·root·········(0)·····749 | 2548 | -rw-r--r--···0·root·········(0)·root·········(0)·····7490·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.PropFacts.html |
2549 | -rw-r--r--···0·root·········(0)·root·········(0)·····7646·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.RelationalChoice.html | 2549 | -rw-r--r--···0·root·········(0)·root·········(0)·····7646·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.RelationalChoice.html |
2550 | -rw-r--r--···0·root·········(0)·root·········(0)·····339 | 2550 | -rw-r--r--···0·root·········(0)·root·········(0)·····3397·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.SetIsType.html |
2551 | -rw-r--r--···0·root·········(0)·root·········(0)····17187·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.SetoidChoice.html | 2551 | -rw-r--r--···0·root·········(0)·root·········(0)····17187·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.SetoidChoice.html |
2552 | -rw-r--r--···0·root·········(0)·root·········(0)·····9458·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.StrictProp.html | 2552 | -rw-r--r--···0·root·········(0)·root·········(0)·····9458·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.StrictProp.html |
2553 | -rw-r--r--···0·root·········(0)·root·········(0)····57550·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.WKL.html | 2553 | -rw-r--r--···0·root·········(0)·root·········(0)····57550·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.WKL.html |
2554 | -rw-r--r--···0·root·········(0)·root·········(0)····23285·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.WeakFan.html | 2554 | -rw-r--r--···0·root·········(0)·root·········(0)····23285·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Logic.WeakFan.html |
2555 | -rw-r--r--···0·root·········(0)·root·········(0)···1985 | 2555 | -rw-r--r--···0·root·········(0)·root·········(0)···198539·2024-11-20·09:37:25.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·2024-11-20·09:37:25.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·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.MSets.MSetEqProperties.html |
2558 | -rw-r--r--···0·root·········(0)·root·········(0)···1476 | 2558 | -rw-r--r--···0·root·········(0)·root·········(0)···147620·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.MSets.MSetFacts.html |
2559 | -rw-r--r--···0·root·········(0)·root·········(0)···239833·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.MSets.MSetGenTree.html | 2559 | -rw-r--r--···0·root·········(0)·root·········(0)···239833·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.MSets.MSetGenTree.html |
2560 | -rw-r--r--···0·root·········(0)·root·········(0)···3457 | 2560 | -rw-r--r--···0·root·········(0)·root·········(0)···345771·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.MSets.MSetInterface.html |
2561 | -rw-r--r--···0·root·········(0)·root·········(0)···203404·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.MSets.MSetList.html | 2561 | -rw-r--r--···0·root·········(0)·root·········(0)···203404·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.MSets.MSetList.html |
2562 | -rw-r--r--···0·root·········(0)·root·········(0)···233427·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.MSets.MSetPositive.html | 2562 | -rw-r--r--···0·root·········(0)·root·········(0)···233427·2024-11-20·09:37:25.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·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.MSets.MSetProperties.html |
2564 | -rw-r--r--···0·root·········(0)·root·········(0)···4638 | 2564 | -rw-r--r--···0·root·········(0)·root·········(0)···463865·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.MSets.MSetRBT.html |
2565 | -rw-r--r--···0·root·········(0)·root·········(0)····303 | 2565 | -rw-r--r--···0·root·········(0)·root·········(0)····30363·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.MSets.MSetToFiniteSet.html |
2566 | -rw-r--r--···0·root·········(0)·root·········(0)···12790 | 2566 | -rw-r--r--···0·root·········(0)·root·········(0)···127902·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.MSets.MSetWeakList.html |
2567 | -rw-r--r--···0·root·········(0)·root·········(0)·····5306·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.MSets.MSets.html | 2567 | -rw-r--r--···0·root·········(0)·root·········(0)·····5306·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.MSets.MSets.html |
2568 | -rw-r--r--···0·root·········(0)·root·········(0)···281095·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.NArith.BinNat.html | 2568 | -rw-r--r--···0·root·········(0)·root·········(0)···281095·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.NArith.BinNat.html |
2569 | -rw-r--r--···0·root·········(0)·root·········(0)····99064·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.NArith.BinNatDef.html | 2569 | -rw-r--r--···0·root·········(0)·root·········(0)····99064·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.NArith.BinNatDef.html |
2570 | -rw-r--r--···0·root·········(0)·root·········(0)·····7411·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.NArith.NArith.html | 2570 | -rw-r--r--···0·root·········(0)·root·········(0)·····7411·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.NArith.NArith.html |
2571 | -rw-r--r--···0·root·········(0)·root·········(0)····88281·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.NArith.Ndec.html | 2571 | -rw-r--r--···0·root·········(0)·root·········(0)····88281·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.NArith.Ndec.html |
2572 | -rw-r--r--···0·root·········(0)·root·········(0)·····8571·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.NArith.Ndiv_def.html | 2572 | -rw-r--r--···0·root·········(0)·root·········(0)·····8571·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.NArith.Ndiv_def.html |
2573 | -rw-r--r--···0·root·········(0)·root·········(0)·····6254·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.NArith.Ngcd_def.html | 2573 | -rw-r--r--···0·root·········(0)·root·········(0)·····6254·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.NArith.Ngcd_def.html |
2574 | -rw-r--r--···0·root·········(0)·root·········(0)····69143·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.NArith.Nnat.html | 2574 | -rw-r--r--···0·root·········(0)·root·········(0)····69143·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.NArith.Nnat.html |
2575 | -rw-r--r--···0·root·········(0)·root·········(0)·····3820·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.NArith.Nsqrt_def.html | 2575 | -rw-r--r--···0·root·········(0)·root·········(0)·····3820·2024-11-20·09:37:25.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·2024-11-20·09:37:25.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·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.BinNums.html |
2578 | -rw-r--r--···0·root·········(0)·root·········(0)·····4226·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.Cyclic.Abstract.CarryType.html | 2578 | -rw-r--r--···0·root·········(0)·root·········(0)·····4226·2024-11-20·09:37:25.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·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.Cyclic.Abstract.CyclicAxioms.html |
2580 | -rw-r--r--···0·root·········(0)·root·········(0)····14968·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.Cyclic.Abstract.DoubleType.html | 2580 | -rw-r--r--···0·root·········(0)·root·········(0)····14968·2024-11-20·09:37:25.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·2024-11-20·09:37:25.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·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.Cyclic.Int63.Cyclic63.html |
2583 | -rw-r--r--···0·root·········(0)·root·········(0)····18492·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.Cyclic.Int63.PrimInt63.html | 2583 | -rw-r--r--···0·root·········(0)·root·········(0)····18492·2024-11-20·09:37:25.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·2024-11-20·09:37:25.000000·./usr/share/doc/libcoq-stdlib/html/Coq.Numbers.Cyclic.Int63.Ring63.html |
Max diff block lines reached; 29908/57452 bytes (52.06%) 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="lab | 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="lab | 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="lab | 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="lab76 | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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, 8003 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 (7996 lines added, 7996 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·623 | 000006d0:·6c61·6231·3132·3922·3e3c·2f61·3e3c·6831··lab1129"></a><h1 | ||
000006e0:·636c | 000006e0:·2063·6c61·7373·3d22·7365·6374·696f·6e22···class="section" | ||
000006f0:·5479 | 000006f0:·3e54·7970·6563·6c61·7373·2d62·6173·6564··>Typeclass-based | ||
00000700:·7265 | 00000700:·2072·656c·6174·696f·6e73·2c20·7461·6374···relations,·tact | ||
00000710:·6373 | 00000710:·6963·7320·616e·6420·7374·616e·6461·7264··ics·and·standard | ||
00000720:·696e | 00000720:·2069·6e73·7461·6e63·6573·3c2f·6831·3e0a···instances</h1>. | ||
00000730:·0a3c | 00000730:·0a0a·3c64·6976·2063·6c61·7373·3d22·7061··..<div·class="pa | ||
00000740:·6167 | 00000740:·7261·6772·6170·6822·3e20·3c2f·6469·763e··ragraph">·</div> | ||
00000750:·0a | 00000750:·0a0a·2020·2054·6869·7320·6973·2074·6865··..···This·is·the | ||
00000760:·6261 | 00000760:·2062·6173·6963·2074·6865·6f72·7920·6e65···basic·theory·ne | ||
00000770:·6465 | 00000770:·6564·6564·2074·6f20·666f·726d·616c·697a··eded·to·formaliz | ||
00000780:·206d | 00000780:·6520·6d6f·7270·6869·736d·7320·616e·6420··e·morphisms·and· | ||
00000790:·6574 | 00000790:·7365·746f·6964·732e·0a0a·3c64·6976·2063··setoids...<div·c | ||
000007a0:·6173 | 000007a0:·6c61·7373·3d22·7061·7261·6772·6170·6822··lass="paragraph" | ||
000007b0:·203c | 000007b0:·3e20·3c2f·6469·763e·0a0a·2020·2041·7574··>·</div>..···Aut | ||
000007c0:·6f72 | 000007c0:·686f·723a·204d·6174·7468·6965·7520·536f··hor:·Matthieu·So | ||
000007d0:·6561 | 000007d0:·7a65·6175·0a20·2020·496e·7374·6974·7574··zeau.···Institut | ||
000007e0:·6f6e | 000007e0:·696f·6e3a·204c·5249·2c20·434e·5253·2055··ion:·LRI,·CNRS·U | ||
000007f0:·5220 | 000007f0:·4d52·2038·3632·3320·2d20·556e·6976·6572··MR·8623·-·Univer | ||
00000800:·6974 | 00000800:·7369·7479·2050·6172·6973·2053·7564·0a0a··sity·Paris·Sud.. | ||
00000810:·2f64 | 00000810:·3c2f·6469·763e·0a3c·6469·7620·636c·6173··</div>.<div·clas | ||
00000820:·3d | 00000820:·733d·2263·6f64·6522·3e0a·0a3c·6272·2f3e··s="code">..<br/> | ||
00000830:·3c73 | 00000830:·0a3c·7370·616e·2063·6c61·7373·3d22·6964··.<span·class="id | ||
00000840:·2074 | 00000840:·2220·7469·746c·653d·226b·6579·776f·7264··"·title="keyword | ||
00000850:·3e52 | 00000850:·223e·5265·7175·6972·653c·2f73·7061·6e3e··">Require</span> | ||
00000860:·3c73 | 00000860:·203c·7370·616e·2063·6c61·7373·3d22·6964···<span·class="id | ||
00000870:·2074 | 00000870:·2220·7469·746c·653d·226b·6579·776f·7264··"·title="keyword | ||
00000880:·3e45 | 00000880:·223e·4578·706f·7274·3c2f·7370·616e·3e20··">Export</span>· | ||
00000890:·6120 | 00000890:·3c61·2063·6c61·7373·3d22·6964·7265·6622··<a·class="idref" | ||
000008a0:·6872 | 000008a0:·2068·7265·663d·2243·6f71·2e43·6c61·7373···href="Coq.Class | ||
000008b0:·732e | 000008b0:·6573·2e49·6e69·742e·6874·6d6c·2322·3e3c··es.Init.html#">< | ||
000008c0:·7061 | 000008c0:·7370·616e·2063·6c61·7373·3d22·6964·2220··span·class="id"· | ||
000008d0:·6974 | 000008d0:·7469·746c·653d·226c·6962·7261·7279·223e··title="library"> | ||
000008e0:·6f71 | 000008e0:·436f·712e·436c·6173·7365·732e·496e·6974··Coq.Classes.Init | ||
000008f0:·2f73 | 000008f0:·3c2f·7370·616e·3e3c·2f61·3e2e·3c62·722f··</span></a>.<br/ | ||
00000900:·0a3c | 00000900:·3e0a·3c73·7061·6e20·636c·6173·733d·2269··>.<span·class="i | ||
00000910:·2220 | 00000910:·6422·2074·6974·6c65·3d22·6b65·7977·6f72··d"·title="keywor | ||
00000920:·223e | 00000920:·6422·3e52·6571·7569·7265·3c2f·7370·616e··d">Require</span | ||
00000930:·203c | 00000930:·3e20·3c73·7061·6e20·636c·6173·733d·2269··>·<span·class="i | ||
00000940:·2220 | 00000940:·6422·2074·6974·6c65·3d22·6b65·7977·6f72··d"·title="keywor | ||
00000950:·223e | 00000950:·6422·3e49·6d70·6f72·743c·2f73·7061·6e3e··d">Import</span> | ||
00000960:·3c61 | 00000960:·203c·6120·636c·6173·733d·2269·6472·6566···<a·class="idref | ||
00000970:·2068 | 00000970:·2220·6872·6566·3d22·436f·712e·5072·6f67··"·href="Coq.Prog | ||
00000980:·616d | 00000980:·7261·6d2e·4261·7369·6373·2e68·746d·6c23··ram.Basics.html# | ||
00000990:·3e3c | 00000990:·223e·3c73·7061·6e20·636c·6173·733d·2269··"><span·class="i | ||
000009a0:·2220 | 000009a0:·6422·2074·6974·6c65·3d22·6c69·6272·6172··d"·title="librar | ||
000009b0:·223e | 000009b0:·7922·3e43·6f71·2e50·726f·6772·616d·2e42··y">Coq.Program.B | ||
000009c0:·7369 | 000009c0:·6173·6963·733c·2f73·7061·6e3e·3c2f·613e··asics</span></a> | ||
000009d0:·3c62 | 000009d0:·2e3c·6272·2f3e·0a3c·7370·616e·2063·6c61··.<br/>.<span·cla | ||
000009e0:·733d | 000009e0:·7373·3d22·6964·2220·7469·746c·653d·226b··ss="id"·title="k | ||
000009f0:·79 | 000009f0:·6579·776f·7264·223e·5265·7175·6972·653c··eyword">Require< | ||
00000a00:·7370 | 00000a00:·2f73·7061·6e3e·203c·7370·616e·2063·6c61··/span>·<span·cla | ||
00000a10:·733d | 00000a10:·7373·3d22·6964·2220·7469·746c·653d·226b··ss="id"·title="k | ||
00000a20:·79 | 00000a20:·6579·776f·7264·223e·496d·706f·7274·3c2f··eyword">Import</ | ||
00000a30:·7061 | 00000a30:·7370·616e·3e20·3c61·2063·6c61·7373·3d22··span>·<a·class=" | ||
00000a40:·6472 | 00000a40:·6964·7265·6622·2068·7265·663d·2243·6f71··idref"·href="Coq | ||
00000a50:·5072 | 00000a50:·2e50·726f·6772·616d·2e54·6163·7469·6373··.Program.Tactics | ||
00000a60:·6874 | 00000a60:·2e68·746d·6c23·223e·3c73·7061·6e20·636c··.html#"><span·cl | ||
00000a70:·7373 | 00000a70:·6173·733d·2269·6422·2074·6974·6c65·3d22··ass="id"·title=" | ||
00000a80:·6962 | 00000a80:·6c69·6272·6172·7922·3e43·6f71·2e50·726f··library">Coq.Pro | ||
00000a90:·7261 | 00000a90:·6772·616d·2e54·6163·7469·6373·3c2f·7370··gram.Tactics</sp | ||
00000aa0:·6e3e | 00000aa0:·616e·3e3c·2f61·3e2e·3c62·722f·3e0a·3c73··an></a>.<br/>.<s | ||
00000ab0:·616e | 00000ab0:·7061·6e20·636c·6173·733d·2269·6422·2074··pan·class="id"·t | ||
00000ac0:·746c | 00000ac0:·6974·6c65·3d22·6b65·7977·6f72·6422·3e52··itle="keyword">R | ||
00000ad0:·7175 | 00000ad0:·6571·7569·7265·3c2f·7370·616e·3e20·3c73··equire</span>·<s | ||
00000ae0:·616e | 00000ae0:·7061·6e20·636c·6173·733d·2269·6422·2074··pan·class="id"·t | ||
00000af0:·746c | 00000af0:·6974·6c65·3d22·6b65·7977·6f72·6422·3e49··itle="keyword">I | ||
00000b00:·706f | 00000b00:·6d70·6f72·743c·2f73·7061·6e3e·203c·6120··mport</span>·<a· | ||
00000b10:·6c61 | 00000b10:·636c·6173·733d·2269·6472·6566·2220·6872··class="idref"·hr | ||
00000b20:·663d | 00000b20:·6566·3d22·436f·712e·5265·6c61·7469·6f6e··ef="Coq.Relation | ||
00000b30:·2e52 | 00000b30:·732e·5265·6c61·7469·6f6e·5f44·6566·696e··s.Relation_Defin | ||
00000b40:·7469 | 00000b40:·6974·696f·6e73·2e68·746d·6c23·223e·3c73··itions.html#"><s | ||
00000b50:·616e | 00000b50:·7061·6e20·636c·6173·733d·2269·6422·2074··pan·class="id"·t | ||
00000b60:·746c | 00000b60:·6974·6c65·3d22·6c69·6272·6172·7922·3e43··itle="library">C | ||
00000b70:·712e | 00000b70:·6f71·2e52·656c·6174·696f·6e73·2e52·656c··oq.Relations.Rel | ||
00000b80:·7469 | 00000b80:·6174·696f·6e5f·4465·6669·6e69·7469·6f6e··ation_Definition | ||
00000b90:·3c2f | 00000b90:·733c·2f73·7061·6e3e·3c2f·613e·2e3c·6272··s</span></a>.<br | ||
00000ba0:·3e0a | 00000ba0:·2f3e·0a0a·3c62·722f·3e0a·3c73·7061·6e20··/>..<br/>.<span· | ||
00000bb0:·6c61 | 00000bb0:·636c·6173·733d·2269·6422·2074·6974·6c65··class="id"·title | ||
00000bc0:·226b | 00000bc0:·3d22·6b65·7977·6f72·6422·3e47·656e·6572··="keyword">Gener | ||
00000bd0:·6c69 | 00000bd0:·616c·697a·6162·6c65·2056·6172·6961·626c··alizable·Variabl | ||
00000be0:·733c | 00000be0:·6573·3c2f·7370·616e·3e20·3c73·7061·6e20··es</span>·<span· | ||
00000bf0:·6c61 | 00000bf0:·636c·6173·733d·2269·6422·2074·6974·6c65··class="id"·title | ||
00000c00:·2276 | 00000c00:·3d22·7661·7222·3e41·3c2f·7370·616e·3e20··="var">A</span>· | ||
00000c10:·7370 | 00000c10:·3c73·7061·6e20·636c·6173·733d·2269·6422··<span·class="id" | ||
00000c20:·7469 | 00000c20:·2074·6974·6c65·3d22·7661·7222·3e42·3c2f···title="var">B</ | ||
00000c30:·7061 | 00000c30:·7370·616e·3e20·3c73·7061·6e20·636c·6173··span>·<span·clas | ||
00000c40:·3d | 00000c40:·733d·2269·6422·2074·6974·6c65·3d22·7661··s="id"·title="va | ||
00000c50:·223e | 00000c50:·7222·3e43·3c2f·7370·616e·3e20·3c73·7061··r">C</span>·<spa | ||
00000c60:·2063 | 00000c60:·6e20·636c·6173·733d·2269·6422·2074·6974··n·class="id"·tit | ||
00000c70:·653d | 00000c70:·6c65·3d22·7661·7222·3e44·3c2f·7370·616e··le="var">D</span | ||
00000c80:·203c | 00000c80:·3e20·3c73·7061·6e20·636c·6173·733d·2269··>·<span·class="i | ||
00000c90:·2220 | 00000c90:·6422·2074·6974·6c65·3d22·7661·7222·3e52··d"·title="var">R | ||
00000ca0:·2f73 | 00000ca0:·3c2f·7370·616e·3e20·3c73·7061·6e20·636c··</span>·<span·cl | ||
00000cb0:·7373 | 00000cb0:·6173·733d·2269·6422·2074·6974·6c65·3d22··ass="id"·title=" | ||
00000cc0:·6172 | 00000cc0:·7661·7222·3e53·3c2f·7370·616e·3e20·3c73··var">S</span>·<s | ||
00000cd0:·616e | 00000cd0:·7061·6e20·636c·6173·733d·2269·6422·2074··pan·class="id"·t | ||
00000ce0:·746c | 00000ce0:·6974·6c65·3d22·7661·7222·3e54·3c2f·7370··itle="var">T</sp | ||
00000cf0:·6e3e | 00000cf0:·616e·3e20·3c73·7061·6e20·636c·6173·733d··an>·<span·class= | ||
00000d00:·6964 | 00000d00:·2269·6422·2074·6974·6c65·3d22·7661·7222··"id"·title="var" | ||
00000d10:·553c | 00000d10:·3e55·3c2f·7370·616e·3e20·3c73·7061·6e20··>U</span>·<span· | ||
00000d20:·6c61 | 00000d20:·636c·6173·733d·2269·6422·2074·6974·6c65··class="id"·title | ||
00000d30:·2276 | 00000d30:·3d22·7661·7222·3e6c·3c2f·7370·616e·3e20··="var">l</span>· | ||
00000d40:·7370 | 00000d40:·3c73·7061·6e20·636c·6173·733d·2269·6422··<span·class="id" | ||
00000d50:·7469 | 00000d50:·2074·6974·6c65·3d22·7661·7222·3e65·7141···title="var">eqA | ||
00000d60:·2f73 | 00000d60:·3c2f·7370·616e·3e20·3c73·7061·6e20·636c··</span>·<span·cl | ||
00000d70:·7373 | 00000d70:·6173·733d·2269·6422·2074·6974·6c65·3d22··ass="id"·title=" | ||
00000d80:·6172 | 00000d80:·7661·7222·3e65·7142·3c2f·7370·616e·3e20··var">eqB</span>· | ||
00000d90:·7370 | 00000d90:·3c73·7061·6e20·636c·6173·733d·2269·6422··<span·class="id" | ||
00000da0:·7469 | 00000da0:·2074·6974·6c65·3d22·7661·7222·3e65·7143···title="var">eqC | ||
00000db0:·2f73 | 00000db0:·3c2f·7370·616e·3e20·3c73·7061·6e20·636c··</span>·<span·cl | ||
00000dc0:·7373 | 00000dc0:·6173·733d·2269·6422·2074·6974·6c65·3d22··ass="id"·title=" | ||
00000dd0:·6172 | 00000dd0:·7661·7222·3e65·7144·3c2f·7370·616e·3e2e··var">eqD</span>. | ||
00000de0:·6272 | 00000de0:·3c62·722f·3e0a·0a3c·6272·2f3e·0a3c·2f64··<br/>..<br/>.</d | ||
00000df0:·763e | 00000df0:·6976·3e0a·0a3c·6469·7620·636c·6173·733d··iv>..<div·class= | ||
00000e00:·646f | 00000e00:·2264·6f63·223e·0a57·6520·616c·6c6f·7720··"doc">.We·allow· | ||
00000e10:·6f20 | 00000e10:·746f·2075·6e66·6f6c·6420·7468·6520·3c73··to·unfold·the·<s | ||
00000e20:·616e | 00000e20:·7061·6e20·636c·6173·733d·2269·6e6c·696e··pan·class="inlin | ||
00000e30:·636f | 00000e30:·6563·6f64·6522·3e3c·7370·616e·2063·6c61··ecode"><span·cla | ||
Max diff block lines reached; -1/1103934 bytes (-0.00%) 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="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="lab | 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="lab | 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="lab9 | 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="lab9 | 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="lab9 | 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="lab9 | 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="lab9 | 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="lab9 | 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="lab9 | 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="lab9 | 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="lab9 | 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="lab9 | 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="lab9 | 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="lab98 | 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="lab9 | 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="lab9 | 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="lab9 | 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="lab9 | 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="lab9 | 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="lab9 | 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="lab9 | 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="lab9 | 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="lab9 | 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="lab9 | 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="lab9 | 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="lab9 | 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="lab9 | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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 158, 16 lines modified | Offset 158, 16 lines modified | ||
000009d0:·733d·2269·6422·2074·6974·6c65·3d22·7661··s="id"·title="va | 000009d0:·733d·2269·6422·2074·6974·6c65·3d22·7661··s="id"·title="va | ||
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·623 | 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·3 | 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:·623 | 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·623 | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab51 | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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; 29534/46780 bytes (63.13%) 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; 31838/41535 bytes (76.65%) 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; 6092/15026 bytes (40.54%) 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; 60568/98607 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="lab | 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; 64157/72740 bytes (88.20%) 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; 7258/14939 bytes (48.58%) 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="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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab5 | 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="lab5 | 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="lab5 | 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="lab5 | 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="lab5 | 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; 51482/61923 bytes (83.14%) 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="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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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; 11467/30043 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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; 78330/87486 bytes (89.53%) 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"></a><h1·class="section">Finite·sets·library·:·conversion·to·old·<span·class="inlinecode"><span·class="id"·title="var">Finite_sets</span></span></h1> | 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="lab | 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; 784/10394 bytes (7.54%) 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="lab1 | 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="lab1 | 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="lab1 | 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="lab1 | 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="lab1 | 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="lab1 | 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="lab1 | 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="lab1 | 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="lab1 | 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="lab1 | 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; 123797/137194 bytes (90.23%) 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="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="lab1 | 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="lab1 | 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="lab1 | 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="lab1 | 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="lab1 | 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="lab1 | 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="lab1 | 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="lab1 | 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; 29959/38374 bytes (78.07%) 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="lab1 | 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="lab1 | 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="lab1 | 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; 32465/48872 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="lab36 | 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; 37412/59684 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="lab | 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="lab | 87 | <a·id="lab884"></a><h1·class="section">Dedekind·cuts</h1> |
88 | <div·class="paragraph">·</div> | 88 | <div·class="paragraph">·</div> |
89 | <a·id="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 270 | <a·id="lab893"></a><h2·class="section">Order·for·DReal</h2> |
Max diff block lines reached; 1992/23117 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; 16651/52973 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="lab | 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="lab | 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="lab | 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="lab64 | 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="lab | 51 | <a·id="lab341"></a><h1·class="section">···································································</h1> |
52 | <a·id="lab | 52 | <a·id="lab342"></a><h1·class="section">Some·of·the·initial·definitions·were·taken·from·:</h1> |
53 | <a·id="lab | 53 | <a·id="lab343"></a><h1·class="section">Constructing·Recursion·Operators·in·Type·Theory</h1> |
54 | <a·id="lab | 54 | <a·id="lab344"></a><h1·class="section">L.·Paulson··JSC·(1986)·2,·325-355</h1> |
55 | <a·id="lab | 55 | <a·id="lab345"></a><h1·class="section">···································································</h1> |
56 | <a·id="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 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> |
314 | </div> | 314 | </div> |
315 | <div·class="code"> | 315 | <div·class="code"> |
Max diff block lines reached; 3490/12821 bytes (27.22%) 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="lab | 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; 352/15542 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/19503 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="lab | 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="lab | 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/58812 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="lab27 | 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="lab28 | 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="lab | 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="lab | 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="lab | 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="lab | 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="lab | 48 | <a·id="lab307"></a><h1·class="section">into·equivalent·versions·in·Haskell's·Prelude·that·are·defined</h1> |
49 | <a·id="lab | 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="lab | 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="lab | 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="lab | 63 | <a·id="lab311"></a><h1·class="section">Disclaimer:·trying·to·obtain·efficient·certified·programs</h1> |
64 | <a·id="lab | 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="lab | 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="lab | 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="lab | 48 | <a·id="lab315"></a><h1·class="section">into·equivalent·versions·in·Haskell's·Prelude·that·are·defined</h1> |
49 | <a·id="lab | 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="lab | 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="lab | 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 |
Offset 525, 16 lines modified | Offset 525, 16 lines modified | ||
525 | </table> | 525 | </table> |
526 | <hr/><a·id="global_T"></a><h2>T·</h2> | 526 | <hr/><a·id="global_T"></a><h2>T·</h2> |
527 | <a·href="Coq.Init.Nat.html#t">t</a>·[definition,·in·<a·href="Coq.Init.Nat.html">Coq.Init.Nat</a>]<br/> | 527 | <a·href="Coq.Init.Nat.html#t">t</a>·[definition,·in·<a·href="Coq.Init.Nat.html">Coq.Init.Nat</a>]<br/> |
528 | <a·href="Coq.Vectors.Fin.html#t">t</a>·[inductive,·in·<a·href="Coq.Vectors.Fin.html">Coq.Vectors.Fin</a>]<br/> | 528 | <a·href="Coq.Vectors.Fin.html#t">t</a>·[inductive,·in·<a·href="Coq.Vectors.Fin.html">Coq.Vectors.Fin</a>]<br/> |
529 | <a·href="Coq.micromega.VarMap.html#t">t</a>·[abbreviation,·in·<a·href="Coq.micromega.VarMap.html">Coq.micromega.VarMap</a>]<br/> | 529 | <a·href="Coq.micromega.VarMap.html#t">t</a>·[abbreviation,·in·<a·href="Coq.micromega.VarMap.html">Coq.micromega.VarMap</a>]<br/> |
530 | <a·href="Coq.micromega.VarMap.html#t">t</a>·[inductive,·in·<a·href="Coq.micromega.VarMap.html">Coq.micromega.VarMap</a>]<br/> | 530 | <a·href="Coq.micromega.VarMap.html#t">t</a>·[inductive,·in·<a·href="Coq.micromega.VarMap.html">Coq.micromega.VarMap</a>]<br/> |
531 | <a·href="Coq.Vectors.VectorDef.html#t">t</a>·[inductive,·in·<a·href="Coq.Vectors.VectorDef.html">Coq.Vectors.VectorDef</a>]<br/> | 531 | <a·href="Coq.Vectors.VectorDef.html#t">t</a>·[inductive,·in·<a·href="Coq.Vectors.VectorDef.html">Coq.Vectors.VectorDef</a>]<br/> |
532 | <a·href="Coq.Init.Tactics.html">Tactics</a>·[library]<br/> | ||
533 | <a·href="Coq.Program.Tactics.html">Tactics</a>·[library]<br/> | 532 | <a·href="Coq.Program.Tactics.html">Tactics</a>·[library]<br/> |
533 | <a·href="Coq.Init.Tactics.html">Tactics</a>·[library]<br/> | ||
534 | <a·href="Coq.ssr.ssreflect.html#tactic_view">tactic_view</a>·[constructor,·in·<a·href="Coq.ssr.ssreflect.html">Coq.ssr.ssreflect</a>]<br/> | 534 | <a·href="Coq.ssr.ssreflect.html#tactic_view">tactic_view</a>·[constructor,·in·<a·href="Coq.ssr.ssreflect.html">Coq.ssr.ssreflect</a>]<br/> |
535 | <a·href="Coq.rtauto.Bintree.html#Tadd">Tadd</a>·[definition,·in·<a·href="Coq.rtauto.Bintree.html">Coq.rtauto.Bintree</a>]<br/> | 535 | <a·href="Coq.rtauto.Bintree.html#Tadd">Tadd</a>·[definition,·in·<a·href="Coq.rtauto.Bintree.html">Coq.rtauto.Bintree</a>]<br/> |
536 | <a·href="Coq.ssr.ssrfun.html#tag">tag</a>·[definition,·in·<a·href="Coq.ssr.ssrfun.html">Coq.ssr.ssrfun</a>]<br/> | 536 | <a·href="Coq.ssr.ssrfun.html#tag">tag</a>·[definition,·in·<a·href="Coq.ssr.ssrfun.html">Coq.ssr.ssrfun</a>]<br/> |
537 | <a·href="Coq.ssr.ssrfun.html#Tag">Tag</a>·[section,·in·<a·href="Coq.ssr.ssrfun.html">Coq.ssr.ssrfun</a>]<br/> | 537 | <a·href="Coq.ssr.ssrfun.html#Tag">Tag</a>·[section,·in·<a·href="Coq.ssr.ssrfun.html">Coq.ssr.ssrfun</a>]<br/> |
538 | <a·href="Coq.ssr.ssrfun.html#Tagged">Tagged</a>·[definition,·in·<a·href="Coq.ssr.ssrfun.html">Coq.ssr.ssrfun</a>]<br/> | 538 | <a·href="Coq.ssr.ssrfun.html#Tagged">Tagged</a>·[definition,·in·<a·href="Coq.ssr.ssrfun.html">Coq.ssr.ssrfun</a>]<br/> |
539 | <a·href="Coq.ssr.ssrfun.html#tagged">tagged</a>·[definition,·in·<a·href="Coq.ssr.ssrfun.html">Coq.ssr.ssrfun</a>]<br/> | 539 | <a·href="Coq.ssr.ssrfun.html#tagged">tagged</a>·[definition,·in·<a·href="Coq.ssr.ssrfun.html">Coq.ssr.ssrfun</a>]<br/> |
540 | <a·href="Coq.ssr.ssrfun.html#Tagged2">Tagged2</a>·[definition,·in·<a·href="Coq.ssr.ssrfun.html">Coq.ssr.ssrfun</a>]<br/> | 540 | <a·href="Coq.ssr.ssrfun.html#Tagged2">Tagged2</a>·[definition,·in·<a·href="Coq.ssr.ssrfun.html">Coq.ssr.ssrfun</a>]<br/> |
Offset 954, 16 lines modified | Offset 954, 16 lines modified | ||
954 | <a·href="Coq.FSets.FSetEqProperties.html#WEqProperties_fun.BasicProperties.s''">WEqProperties_fun.BasicProperties.s''</a>·[variable,·in·<a·href="Coq.FSets.FSetEqProperties.html">Coq.FSets.FSetEqProperties</a>]<br/> | 954 | <a·href="Coq.FSets.FSetEqProperties.html#WEqProperties_fun.BasicProperties.s''">WEqProperties_fun.BasicProperties.s''</a>·[variable,·in·<a·href="Coq.FSets.FSetEqProperties.html">Coq.FSets.FSetEqProperties</a>]<br/> |
955 | <a·href="Coq.FSets.FSetEqProperties.html#WEqProperties_fun.BasicProperties.s'">WEqProperties_fun.BasicProperties.s'</a>·[variable,·in·<a·href="Coq.FSets.FSetEqProperties.html">Coq.FSets.FSetEqProperties</a>]<br/> | 955 | <a·href="Coq.FSets.FSetEqProperties.html#WEqProperties_fun.BasicProperties.s'">WEqProperties_fun.BasicProperties.s'</a>·[variable,·in·<a·href="Coq.FSets.FSetEqProperties.html">Coq.FSets.FSetEqProperties</a>]<br/> |
956 | <a·href="Coq.FSets.FSetEqProperties.html#WEqProperties_fun.BasicProperties.s">WEqProperties_fun.BasicProperties.s</a>·[variable,·in·<a·href="Coq.FSets.FSetEqProperties.html">Coq.FSets.FSetEqProperties</a>]<br/> | 956 | <a·href="Coq.FSets.FSetEqProperties.html#WEqProperties_fun.BasicProperties.s">WEqProperties_fun.BasicProperties.s</a>·[variable,·in·<a·href="Coq.FSets.FSetEqProperties.html">Coq.FSets.FSetEqProperties</a>]<br/> |
957 | <a·href="Coq.FSets.FSetEqProperties.html#WEqProperties_fun.BasicProperties">WEqProperties_fun.BasicProperties</a>·[section,·in·<a·href="Coq.FSets.FSetEqProperties.html">Coq.FSets.FSetEqProperties</a>]<br/> | 957 | <a·href="Coq.FSets.FSetEqProperties.html#WEqProperties_fun.BasicProperties">WEqProperties_fun.BasicProperties</a>·[section,·in·<a·href="Coq.FSets.FSetEqProperties.html">Coq.FSets.FSetEqProperties</a>]<br/> |
958 | <a·href="Coq.FSets.FSetEqProperties.html#WEqProperties_fun.Add">WEqProperties_fun.Add</a>·[definition,·in·<a·href="Coq.FSets.FSetEqProperties.html">Coq.FSets.FSetEqProperties</a>]<br/> | 958 | <a·href="Coq.FSets.FSetEqProperties.html#WEqProperties_fun.Add">WEqProperties_fun.Add</a>·[definition,·in·<a·href="Coq.FSets.FSetEqProperties.html">Coq.FSets.FSetEqProperties</a>]<br/> |
959 | <a·href="Coq.FSets.FSetEqProperties.html#WEqProperties_fun.MP">WEqProperties_fun.MP</a>·[module,·in·<a·href="Coq.FSets.FSetEqProperties.html">Coq.FSets.FSetEqProperties</a>]<br/> | 959 | <a·href="Coq.FSets.FSetEqProperties.html#WEqProperties_fun.MP">WEqProperties_fun.MP</a>·[module,·in·<a·href="Coq.FSets.FSetEqProperties.html">Coq.FSets.FSetEqProperties</a>]<br/> |
960 | <a·href="Coq.FSets.FSetEqProperties.html#WEqProperties_fun">WEqProperties_fun</a>·[module,·in·<a·href="Coq.FSets.FSetEqProperties.html">Coq.FSets.FSetEqProperties</a>]<br/> | 960 | <a·href="Coq.FSets.FSetEqProperties.html#WEqProperties_fun">WEqProperties_fun</a>·[module,·in·<a·href="Coq.FSets.FSetEqProperties.html">Coq.FSets.FSetEqProperties</a>]<br/> |
961 | <a·href="Coq.Init.Wf.html">Wf</a>·[library]<br/> | ||
962 | <a·href="Coq.Program.Wf.html">Wf</a>·[library]<br/> | 961 | <a·href="Coq.Program.Wf.html">Wf</a>·[library]<br/> |
962 | <a·href="Coq.Init.Wf.html">Wf</a>·[library]<br/> | ||
963 | <a·href="Coq.FSets.FMapFacts.html#WFacts">WFacts</a>·[module,·in·<a·href="Coq.FSets.FMapFacts.html">Coq.FSets.FMapFacts</a>]<br/> | 963 | <a·href="Coq.FSets.FMapFacts.html#WFacts">WFacts</a>·[module,·in·<a·href="Coq.FSets.FMapFacts.html">Coq.FSets.FMapFacts</a>]<br/> |
964 | <a·href="Coq.MSets.MSetFacts.html#WFacts">WFacts</a>·[module,·in·<a·href="Coq.MSets.MSetFacts.html">Coq.MSets.MSetFacts</a>]<br/> | 964 | <a·href="Coq.MSets.MSetFacts.html#WFacts">WFacts</a>·[module,·in·<a·href="Coq.MSets.MSetFacts.html">Coq.MSets.MSetFacts</a>]<br/> |
965 | <a·href="Coq.FSets.FSetFacts.html#WFacts">WFacts</a>·[module,·in·<a·href="Coq.FSets.FSetFacts.html">Coq.FSets.FSetFacts</a>]<br/> | 965 | <a·href="Coq.FSets.FSetFacts.html#WFacts">WFacts</a>·[module,·in·<a·href="Coq.FSets.FSetFacts.html">Coq.FSets.FSetFacts</a>]<br/> |
966 | <a·href="Coq.MSets.MSetFacts.html#WFactsOn">WFactsOn</a>·[module,·in·<a·href="Coq.MSets.MSetFacts.html">Coq.MSets.MSetFacts</a>]<br/> | 966 | <a·href="Coq.MSets.MSetFacts.html#WFactsOn">WFactsOn</a>·[module,·in·<a·href="Coq.MSets.MSetFacts.html">Coq.MSets.MSetFacts</a>]<br/> |
967 | <a·href="Coq.MSets.MSetFacts.html#WFactsOn.add_s_m">WFactsOn.add_s_m</a>·[instance,·in·<a·href="Coq.MSets.MSetFacts.html">Coq.MSets.MSetFacts</a>]<br/> | 967 | <a·href="Coq.MSets.MSetFacts.html#WFactsOn.add_s_m">WFactsOn.add_s_m</a>·[instance,·in·<a·href="Coq.MSets.MSetFacts.html">Coq.MSets.MSetFacts</a>]<br/> |
968 | <a·href="Coq.MSets.MSetFacts.html#WFactsOn.add_m">WFactsOn.add_m</a>·[instance,·in·<a·href="Coq.MSets.MSetFacts.html">Coq.MSets.MSetFacts</a>]<br/> | 968 | <a·href="Coq.MSets.MSetFacts.html#WFactsOn.add_m">WFactsOn.add_m</a>·[instance,·in·<a·href="Coq.MSets.MSetFacts.html">Coq.MSets.MSetFacts</a>]<br/> |
969 | <a·href="Coq.MSets.MSetFacts.html#WFactsOn.add_neq_b">WFactsOn.add_neq_b</a>·[lemma,·in·<a·href="Coq.MSets.MSetFacts.html">Coq.MSets.MSetFacts</a>]<br/> | 969 | <a·href="Coq.MSets.MSetFacts.html#WFactsOn.add_neq_b">WFactsOn.add_neq_b</a>·[lemma,·in·<a·href="Coq.MSets.MSetFacts.html">Coq.MSets.MSetFacts</a>]<br/> |
Offset 520, 16 lines modified | Offset 520, 16 lines modified | ||
520 | <td><a·href="index_record_Z.html">Z</a></td> | 520 | <td><a·href="index_record_Z.html">Z</a></td> |
521 | <td>_</td> | 521 | <td>_</td> |
522 | <td>other</td> | 522 | <td>other</td> |
523 | <td>(166·entries)</td> | 523 | <td>(166·entries)</td> |
524 | </tr> | 524 | </tr> |
525 | </table> | 525 | </table> |
526 | <hr/><a·id="library_T"></a><h2>T·(library)</h2> | 526 | <hr/><a·id="library_T"></a><h2>T·(library)</h2> |
527 | <a·href="Coq.Init.Tactics.html">Tactics</a>·<br/> | ||
528 | <a·href="Coq.Program.Tactics.html">Tactics</a>·<br/> | 527 | <a·href="Coq.Program.Tactics.html">Tactics</a>·<br/> |
528 | <a·href="Coq.Init.Tactics.html">Tactics</a>·<br/> | ||
529 | <a·href="Coq.micromega.Tauto.html">Tauto</a>·<br/> | 529 | <a·href="Coq.micromega.Tauto.html">Tauto</a>·<br/> |
530 | <a·href="Coq.Init.Tauto.html">Tauto</a>·<br/> | 530 | <a·href="Coq.Init.Tauto.html">Tauto</a>·<br/> |
531 | <a·href="Coq.Wellfounded.Transitive_Closure.html">Transitive_Closure</a>·<br/> | 531 | <a·href="Coq.Wellfounded.Transitive_Closure.html">Transitive_Closure</a>·<br/> |
532 | <a·href="Ltac2.TransparentState.html">TransparentState</a>·<br/> | 532 | <a·href="Ltac2.TransparentState.html">TransparentState</a>·<br/> |
533 | <br/><br/>····<div·id="sidebarWrapper"> | 533 | <br/><br/>····<div·id="sidebarWrapper"> |
534 | ······<div·id="sidebar"> | 534 | ······<div·id="sidebar"> |
535 | ········<div·class="block"> | 535 | ········<div·class="block"> |
Offset 523, 16 lines modified | Offset 523, 16 lines modified | ||
523 | <td>(166·entries)</td> | 523 | <td>(166·entries)</td> |
524 | </tr> | 524 | </tr> |
525 | </table> | 525 | </table> |
526 | <hr/><a·id="library_W"></a><h2>W·(library)</h2> | 526 | <hr/><a·id="library_W"></a><h2>W·(library)</h2> |
527 | <a·href="Coq.Logic.WeakFan.html">WeakFan</a>·<br/> | 527 | <a·href="Coq.Logic.WeakFan.html">WeakFan</a>·<br/> |
528 | <a·href="Coq.Wellfounded.Wellfounded.html">Wellfounded</a>·<br/> | 528 | <a·href="Coq.Wellfounded.Wellfounded.html">Wellfounded</a>·<br/> |
529 | <a·href="Coq.Wellfounded.Well_Ordering.html">Well_Ordering</a>·<br/> | 529 | <a·href="Coq.Wellfounded.Well_Ordering.html">Well_Ordering</a>·<br/> |
530 | <a·href="Coq.Init.Wf.html">Wf</a>·<br/> | ||
531 | <a·href="Coq.Program.Wf.html">Wf</a>·<br/> | 530 | <a·href="Coq.Program.Wf.html">Wf</a>·<br/> |
531 | <a·href="Coq.Init.Wf.html">Wf</a>·<br/> | ||
532 | <a·href="Coq.Arith.Wf_nat.html">Wf_nat</a>·<br/> | 532 | <a·href="Coq.Arith.Wf_nat.html">Wf_nat</a>·<br/> |
533 | <a·href="Coq.ZArith.Wf_Z.html">Wf_Z</a>·<br/> | 533 | <a·href="Coq.ZArith.Wf_Z.html">Wf_Z</a>·<br/> |
534 | <a·href="Coq.Logic.WKL.html">WKL</a>·<br/> | 534 | <a·href="Coq.Logic.WKL.html">WKL</a>·<br/> |
535 | <br/><br/>····<div·id="sidebarWrapper"> | 535 | <br/><br/>····<div·id="sidebarWrapper"> |
536 | ······<div·id="sidebar"> | 536 | ······<div·id="sidebar"> |
537 | ········<div·class="block"> | 537 | ········<div·class="block"> |
538 | ··········<h2·class="title">Navigation</h2> | 538 | ··········<h2·class="title">Navigation</h2> |