Zulip Chat Archive

Stream: general

Topic: Rearranging files in `data/`


Anne Baanen (Mar 25 2022 at 11:59):

I still don't understand the split between data/polynomial, algebra/polynomial and ring_theory/polynomial, to be honest...

Patrick Massot (Mar 25 2022 at 11:59):

I still don't understand data...

Damiano Testa (Mar 25 2022 at 12:00):

Besides feeling silly, I am comforted by the fact that more people find the split weird!

Yaël Dillies (Mar 25 2022 at 12:01):

Some things definitely belong under data, like list, multiset, finset, sym, sym2... I do not quite see why polynomial should be one of them.

Yaël Dillies (Mar 25 2022 at 12:02):

Arguably, finsupp does belong under data. So the philosophy I suggest is to view finsupp as the data analog to polynomial, and polynomial as the ring theory analog to finsupp.

Anne Baanen (Mar 25 2022 at 12:03):

IMO data.equiv is the least understandable, why do we collect a random set of isomorphisms there instead of the structures that they preserve?

Yaël Dillies (Mar 25 2022 at 12:03):

I have been actively working against this, by putting properties of docs#order_iso under order.hom..

Anne Baanen (Mar 25 2022 at 12:04):

That is: move data/equiv/mul_add.leanalgebra/group/equiv.lean, ring.leanalgebra/ring/equiv.lean, module.leanalgebra/module/equiv.lean, etc.

Yaël Dillies (Mar 25 2022 at 12:04):

Yes please!

Yaël Dillies (Mar 25 2022 at 12:05):

(just note that there is now a algebra.hom. folder, so maybe those should rather be algebra.hom.module.equiv, algebra.hom.group.equiv, or be merged with the existing files there, which to me sounds best)

Anne Baanen (Mar 25 2022 at 12:05):

Perhaps even rename (the slimmed-down version of) data/equiv to logic/equiv?

Yaël Dillies (Mar 25 2022 at 12:06):

While we're at it, docs#continuous_map imports docs#homeomorph, and to me it should clearly be the other way around.

Notification Bot (Mar 25 2022 at 12:07):

12 messages were moved here from #Is there code for X? > char_p instance on polynomials by Anne Baanen.

Anne Baanen (Mar 25 2022 at 12:07):

Ok, I'll try and rearrange data/equiv after I finish eating my lunch!

Eric Rodriguez (Mar 25 2022 at 12:23):

file#data/equiv/embedding is basically just used for the cardinality of the embeddings, I'm not sure where it could go

Anne Baanen (Mar 25 2022 at 13:22):

I think I'll move docs#encodable and docs#denumerable to logic/ directly, rather than logic/equiv.

Anne Baanen (Mar 25 2022 at 13:23):

Eric Rodriguez said:

file#data/equiv/embedding is basically just used for the cardinality of the embeddings, I'm not sure where it could go

I think this can stay in logic/equiv/embedding.lean, or perhaps logic/embedding/equiv.lean.

Anne Baanen (Mar 25 2022 at 13:45):

#12929

Kevin Buzzard (Mar 25 2022 at 15:23):

Yaël Dillies said:

Arguably, finsupp does belong under data. So the philosophy I suggest is to view finsupp as the data analog to polynomial, and polynomial as the ring theory analog to finsupp.

This reminds of fin n v zmod n. They're different in an edge case but otherwise they're defeq, although one feels like data and one like ring theory.


Last updated: Dec 20 2023 at 11:08 UTC