Comments (7)
substructure require strict monotonicity but it's "accidental", it happens to be non strict + injective
from math-comp.
@zstone1 thanks for pointing that out.
math-comp/mathcomp/ssreflect/order.v
Lines 4958 to 4959 in 677ddcf
The definition of order morphism is indeed broken as even in the case of total orders it imposes that the morphism is a mono (hence the name btw). It must be updated to
{homo f : x y / x <= y}
from math-comp.
@proux01 could we safely assume that this definition has not been used anywhere yet? Otherwise we need to consider a two-phase deprecation process (step 2. rename and deprecate the old name, have the right notion with a different name. step 2. rename the right notion with the original name)
from math-comp.
I'm probably the one who made the mistake. Order morphism where inspired by ring morphisms (in ssralg.v) and my goal was only to be able to transport order structures to subtypes. With all the work during the porting to hierarchy-builder, it probably didn't receive enough attention. So indeed I wouldn't be surprised if there is (a lot of) room for improvement here.
could we safely assume that this definition has not been used anywhere yet
No, it's used in dioid (for instance https://github.com/math-comp/dioid/blob/cf0cafea45c700230d97ddd9342baa1479a0c522/complete_lattice.v#L458 ), which I should probably add to CI. However it's only in master and I haven't released it, so I'm fine with skipping the deprecation process.
from math-comp.
With all the work during the porting to hierarchy-builder, it probably didn't receive enough attention.
Indeed, I accidentally discovered the existence of this structure last week, so I probably didn't pay enough attention to this addition, mea culpa.
However it's only in master and I haven't released it, so I'm fine with skipping the deprecation process.
Thanks that would be very helpful.
from math-comp.
iiuc, we need to keep the current order_morphism
under a different name?
from math-comp.
Probably. I wonder whether we are not mixing two things (but maybe they are closely related) : monotonic functions (usually non strictly monotonic) and substructures for the order hierarchy (which require strict monotonicity ?).
from math-comp.
Related Issues (20)
- Avoid exporting warning settings
- Require Import order issue with associativity settings HOT 1
- Building with COQ 8.19 results in `Error: A left-recursive notation must have an explicit level.` in `fingroup/presentation.v` HOT 4
- Please pick the version you prefer for Coq 8.19 in Coq Platform 2024.01
- Add subobjects in the category of posets
- Importing Num.Def disables notation `|_|` for `Num.norm _` HOT 1
- Sharing bigop lemmas between monoids and idempotent semigroups (bands) HOT 5
- Provide column vector versions of defs/lemmas in mxalgebra and vector
- `FalgType` or `falgType` HOT 1
- typo: `gt_max` should be `gt_min`
- Nix CI of MathComp should run the test suites of Mczify and Algebra Tactics HOT 7
- `Search` `in` directive does not interact well with submodules designed for opacification
- Importing `Order.SetSubsetOrder.Exports` breaks the `{subset _ <= _}` notation
- renaming: `archiDomain`, etc.
- Help with docker-coq/docker-mathcomp rebuilds: looking for a volunteer
- `Import fingroup ssralg` broken HOT 2
- min notations never defined HOT 1
- Document global flags set by mathcomp HOT 1
- Split ssralg.v
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from math-comp.