aboutsummaryrefslogtreecommitdiff
path: root/mathcomp/ssreflect
AgeCommit message (Collapse)Author
2020-08-12Get rid of displays in class fields and mixin parametersKazuhiko Sakaguchi
- In the definition of structures in order.v, displays are removed from parameters of mixins and fields of classes internally and now only appear in parameters of structures. Consequently, each mixin is now parameterized by a class rather than a structure, and the corresponding factory parameterized by a structure is provided to replace the use of the mixin. These factories have the same names as in the mixins before this change except that `bLatticeMixin` and `tbLatticeMixin` have been renamed to `bottomMixin` and `topMixin` respectively. - Added a factory `distrLatticePOrderMixin` in order.v to build a `distrLatticeType` from a `porderType`.
2020-08-11fix notation-incompatible-format warningsChristian Doczkal
2020-08-11Merge pull request #542 from chdoc/nothing-to-injectCyril Cohen
fix "Nothing to inject" warnings
2020-06-26fix "Nothing to inject" warningsChristian Doczkal
2020-06-26lemmas for proper and setCChristian Doczkal
2020-06-24Merge pull request #540 from thery/docCyril Cohen
fix the doc for ubnP in ssrnat
2020-06-24fix the doc for ubnP in ssrnatthery
2020-06-24simpler proofthery
2020-06-18conform to 80 chars limitChristian Doczkal
2020-06-18fixup spacingCyril Cohen
2020-06-18Apply suggestions from code reviewChristian Doczkal
Co-authored-by: Cyril Cohen <CohenCyril@users.noreply.github.com>
2020-06-18drop_uniq / CHANGELOGChristian Doczkal
2020-06-18add fcard_gt?P lemmas found in fourcolorChristian Doczkal
2020-06-18cards_eqP and cards2PChristian Doczkal
2020-06-18cardinality lemmas for #|A| <= 1 and n <= #|A|Christian Doczkal
2020-06-17contra lemmas involving propositionsChristian Doczkal
2020-06-09add lua&sed to shell and switch to coq 8.11 + fixing docCyril Cohen
2020-06-09fix coq 8.12 warningsCyril Cohen
2020-06-08Merge pull request #528 from CohenCyril/silence_warningsCyril Cohen
silencing warnings in individual packages
2020-06-08silencing warnings in individual packagesCyril Cohen
2020-06-08Documenting addition policy to coq.Cyril Cohen
2020-06-06bugfixCyril Cohen
2020-06-06Missing homo_mono lemmasCyril Cohen
2020-06-06ImprovementsCyril Cohen
- deprecating `fintype.arg_(min|max)P` - removing dangling comments connecting min max and meet join - better compatibility module - removing broken notations with `\min` and `\max` (no neutral available) - fixing `incompare` and `incomparel` in order.v - adding missing elimination lemmas (`(comparable_)?(max|min)E[lg][et]`) - adding missing `(comparable|real)_arg(min|max)P` - CHANGELOG update
2020-06-06tentative changelogReynald Affeldt
- mostly gathered the changes from previous commits - add `minrC` - minor doc addition to `order.v`
2020-06-06General theory of min and max, and use in ssrnumCyril Cohen
- min and max can now be used in a partial order (sometimes under preconditions) - min and max can now be used in a numDomainType (sometimes under preconditions)
2020-06-06Increasing definitional equalitiesCyril Cohen
- `Order.max` and `Order.min` are now convertible to `maxn` and `minn` - Inserting `(fun _ _ => erefl)` in `LeOrderMixin` and `LtOrderMixin` gives `meet`/`join` which are convertible to `min`/`max` - `Order.max` and `Order.min` are not convertible to former `Num.max` and `Num.min`
2020-06-06Generalizing max and min to porderTypeCyril Cohen
- max and min are not defined in terms or meet and join anymore - extremum_inP is a generalization of extremum suitable for a partial order - arg_min and arg_max are usable in a porderType - equivalences between min and meet, and max and join are proven for orderType - leP, ltP, ltgtP, and `[l]?comparable_.*P` lemmas have been generalized to take this into account - total_display was completely removed
2020-06-05Missing mono lemmas (#513)Cyril Cohen
* Missing mono lemmas
2020-05-16A few more revisionsKazuhiko Sakaguchi
2020-05-13Revise proofs in ssreflect/*.vKazuhiko Sakaguchi
This change reduces - use of numerical occurrence selectors (#436) and - use of non ssreflect tactics such as `auto`, and improves use of comparison predicates such as `posnP`, `leqP`, `ltnP`, `ltngtP`, and `eqVneq`.
2020-05-04Merge pull request #493 from pi8027/rm-tuple-lemmas-in-orderCyril Cohen
Remove the tuple extensions in order.v that is available in tuple.v
2020-05-04Remove the tuple extensions in order.v that is available in tuple.vKazuhiko Sakaguchi
2020-04-21Add dual_finLatticeType and fix dual_finDistrLatticeTypeKazuhiko Sakaguchi
This fixes two issues: - dual_finLatticeType was missing, and - dual_finDistrLatticeType was just an identity function.
2020-04-15Merge pull request #475 from CohenCyril/ssrnat_deprecated_symbolsaffeldt-aist
adding deprecations in ssrnat
2020-04-10adding depreciations in ssrnatCyril Cohen
2020-04-10Make `all2` better wrt the guard conditionCyril Cohen
fixes #469
2020-04-09Merge pull request #473 from affeldt-aist/long_short_suffixesaffeldt-aist
switching long suffixes to short suffixes
2020-04-09- switching long suffixes to short suffixesReynald Affeldt
+ `odd_add` -> `oddD` + `odd_sub` -> `oddB` + `take_addn` -> `takeD` + `rot_addn` -> `rotD` + `nseq_addn` -> `nseqD` fixes #359
2020-04-09Merge pull request #474 from llelf/doc-typosaffeldt-aist
Documentation typos
2020-04-09docs: more ".-tuple" fixesAntonio Nikishaev
2020-04-09more typosAntonio Nikishaev
2020-04-09Update mathcomp/ssreflect/ssrnat.v Antonio Nikishaev
the->this Co-Authored-By: Yves Bertot <yves.bertot@inria.fr>
2020-04-08fix typos in documentation: formulaeAntonio Nikishaev
2020-04-08fix typos in documentation: textAntonio Nikishaev
2020-04-06Some proof scripts made better using ssrAC.Cyril Cohen
%AC annotation are for backward compatilibity with coq <= 8.9
2020-04-06Rewriting with AC (not modulo AC), using a small scale command.Cyril Cohen
This replaces opA, opC, opAC, opCA, ... and any combinations of them - Right now the rewrite relies on an rather efficient computation of perm_eq using a "spaghetti sort" in O(n log n) - Wrongly formed AC statements send error messages showing the discrepancy between LHS and RHS patterns. Usage : rewrite [pattern](AC operator pattern-shape re-ordering) rewrite [pattern](ACl operator re-ordering) - pattern is optional, as usual, - operator must have a canonical Monoid.com_law structure (additions, multiplications, conjunction and disjunction do) - pattern-shape is expressed using the syntax p := n | p * p' where "*" is purely formal and n > 0 is number of left associated symbols examples of pattern shapes: + 4 represents (n * m * p * q) + (1*2) represents (n * (m * p)) - re-ordering is expressed using the syntax s := n | s * s' where "*" is purely formal and n is the position in the LHS If the ACl variant is used, the pattern-shape defaults to the pattern fully associated to the left i.e. n i.e (x * y * ...) Examples of re-orderings: - ACl op ((0*1)*2) is the identity (and should fail to rewrite) - opAC == ACl op ((0*2)*1) == AC op 3 ((0*2)*1) - opCA == AC op (2*1) (0*1*2) - rewrite opCA -opA == rewrite (ACl op (0*(2*1)) - opACA == AC (2*2) ((0*2)*(1*3))
2020-04-02Merge pull request #468 from ybertot/remove-deprecated-from-1.9Enrico Tassi
remove deprecated commands whose deprecation was introduced in 1.9.0
2020-04-01Merge pull request #429 from pi8027/extend-nat-comparisonYves Bertot
Extend comparison predicates for nat with minn and maxn and reorder arguments of those in order.v
2020-03-31remove deprecated commands whose deprecation was introduced in release 1.9.0Yves Bertot
fixes #418