Smallness #
In this file, we define what it means for a set to be small.
Main declarations #
ConNF.Small
: A set is small if its cardinality (as a type) is strictly less thanκ
.ConNF.IsNear
: Two sets are near if their symmetric difference is small.
A set is small if its cardinality is strictly less than κ
.
Equations
- ConNF.Small s = (Cardinal.mk ↑s < Cardinal.mk ConNF.κ)
Instances For
Criteria for smallness #
Subsets of small sets are small. We say that the 'smallness' relation is monotone.
Unions of small subsets are small.
The image of a small set under any function f
is small.
The preimage of a small set under an injective function f
is small.
A set is small if its image under an injective function is contained in a small set.
Nearness #
Two sets are near if their symmetric difference is small.
Equations
- ConNF.IsNear s t = ConNF.Small (symmDiff s t)
Instances For
A set is near itself.
A version of the is_near_refl
lemma that does not require the set s
to be given explicitly.
The value of s
will be inferred automatically by the elaborator.
If s
is near t
, then t
is near s
.
s
is near t
if and only if t
is near s
.
In each direction, this is an application of the is_near.symm
lemma.
Lemmas using ↔
can be used with rw
, so this form of the result is particularly useful.
Nearness is transitive: if s
is near t
and t
is near u
, then s
is near u
.
If two sets are near each other, then their images under an arbitrary function are also near.