Commit 2025-03-18 10:57 a80159d3
View on Github →chore(SetTheory): split Cardinal/Basic.lean (#23014)
This PR splits SetTheory.Cardinal.Basic into three files:
Cardinal/Defs.lean: definition ofCardinal, addition, zero,א0Cardinal/Order.lean: definition of pre/linear/wellorder onCardinal, semiring and ordered semiring structuresCardinal/Basic.lean: leftovers, in particular finite/countable/small types and sets In particular,Defs.leandefines cardinals without importing any algebra (measured with anassert_not_exists Monoid). I would have liked to do more withCardinal/Order.leansuch as splitting it into a file focused more on the order and a file focused more on the arithmetic, but unfortunately the two are currently so interwoven that it would not make sense to break them apart. (It would require substantial redoing of proofs.) Even moving thePreorder Cardinalinstance upstream is hard since it depends on Schröder-Bernstein which imports lots of algebra. It wouldn't actually help the imports much.