Near-litters #
In this file, we define near-litters. A near-litter is a set of atoms that is near some litter set. Large families of near-litters will be used to obscure certain information from the model.
Since there is exactly one litter near a given near-litter, we will store this litter as extra data, which helps improve some definitional equalities.
Definition and basic results #
A near-litter consists of a litter, a set of atoms, and a proof that those atoms are near the litter set of that litter.
- litter : ConNF.Litter
- atoms : Set ConNF.Atom
Instances For
We write Nᴸ
for the litter associated to a near-litter N
.
Equations
- ConNF.instSuperLNearLitterLitter = { superL := fun (N : ConNF.NearLitter) => N.litter }
We write Nᴬ
for the set of atoms associated to a near-litter N
.
Equations
- ConNF.instSuperANearLitterSetAtom = { superA := fun (N : ConNF.NearLitter) => N.atoms }
We write Lᴺ
for the near-litter whose atoms are precisely the litter set of a litter L
.
A definitional simplification lemma for the ᴸ
notation.
A definitional simplification lemma for the ᴬ
notation.
The set of atoms of a near-litter N
is near the litter set of its associated litter.
There are precisely κ
-many atoms in each near-litter.
Near-litters are near (treated as sets of atoms) precisely if they are near the same litter.
The extensionality principle for near-litters: if two near-litters contain the same atoms, they are the same. This proves that the data of the litter near a given near-litter is redundant, but as mentioned, its presence helps with certain definitional equalities.
There are #μ
sets of atoms near a given litter set.
Strips away the name of the type of near-litters, converting it into a combination of types well-known to mathlib.
Equations
- One or more equations did not get rendered due to their size.
Instances For
There are exactly #μ
near-litters.
Interference of near-litters #
Later, we will prove some combinatorial results that relate to the ways that different near-litters interact under certain permutations of our atoms. More precisely, we will need to calculate where the images of atoms under a permutation can lie, given that we know the pointwise image of the permutation on some near-litters. If we know the pointwise images of two near-litters under a permutation of atoms, we know that (for example) atoms in the intersection of the two near-litters must be mapped to the intersection of the pointwise images, and the same holds for other operations on sets such as the symmetric difference.
This motivates the following definition: the interference of two near-litters N₁
and N₂
is
either their intersection or their symmetric difference, whichever is small. Note that precisely
one of these two sets will always be small. This is the set of atoms that is most tightly controlled
by the images of N₁
and N₂
under a permutation of atoms: an atom that was in the interference
of N₁
and N₂
must remain in the intersection or symmetric difference of their images, which
will still be a small set.
This definition will remain unused for quite some time; we will next revisit the interference of near-litters when we begin to prove the freedom of action theorem.
The interference of two near-litters N₁
and N₂
is their intersection if N₁
and N₂
are
near different litters, and their symmetric difference if N₁
and N₂
are near the same litter.
This will always be a small set.