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,א0
Cardinal/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.lean
defines cardinals without importing any algebra (measured with anassert_not_exists Monoid
). I would have liked to do more withCardinal/Order.lean
such 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 Cardinal
instance upstream is hard since it depends on Schröder-Bernstein which imports lots of algebra. It wouldn't actually help the imports much.