Remaining multiset positions in each fibre #
Deletion is performed on labelled positions, so coincident vectors retain their separate multiplicities. The remaining fibres reconstruct exactly the remaining natural-valued weight.
@[reducible, inline]
A labelled copy of a group element, with one copy for each unit of its multiplicity.
Equations
- EGZ.Expansion.FibreSlots.Atom w = ((v : G) × Fin (w v))
Instances For
noncomputable def
EGZ.Expansion.FibreSlots.remaining
{G : Type u_1}
[Fintype G]
(w : G → ℕ)
(U : Finset (Atom w))
:
G → ℕ
The multiplicity function remaining after the selected atoms are removed.
Equations
- EGZ.Expansion.FibreSlots.remaining w U = EGZ.Expansion.pushWeight Sigma.fst fun (a : EGZ.Expansion.FibreSlots.Atom w) => if a ∉ U then 1 else 0
Instances For
@[reducible, inline]
abbrev
EGZ.Expansion.FibreSlots.Fibre
{G : Type u_1}
{H : Type u_2}
(w : G → ℕ)
(U : Finset (Atom w))
(π : G → H)
(q : H)
:
Type u_1
The retained atoms whose group elements project to the specified fibre label.
Equations
- EGZ.Expansion.FibreSlots.Fibre w U π q = { a : EGZ.Expansion.FibreSlots.Atom w // π a.fst = q ∧ a ∉ U }
Instances For
@[instance_reducible]
noncomputable instance
EGZ.Expansion.FibreSlots.fibreFintype
{G : Type u_1}
{H : Type u_2}
[Fintype G]
(w : G → ℕ)
(U : Finset (Atom w))
(π : G → H)
(q : H)
:
Equations
- EGZ.Expansion.FibreSlots.fibreFintype w U π q = Fintype.ofFinite (EGZ.Expansion.FibreSlots.Fibre w U π q)
@[reducible, inline]
The subtype of atoms that have not been removed.
Equations
- EGZ.Expansion.FibreSlots.Retained w U = { a : EGZ.Expansion.FibreSlots.Atom w // a ∉ U }
Instances For
noncomputable def
EGZ.Expansion.FibreSlots.removedInFibre
{G : Type u_1}
{H : Type u_2}
(w : G → ℕ)
(U : Finset (Atom w))
(π : G → H)
(q : H)
:
The number of removed atoms lying over a specified fibre label.
Equations
- EGZ.Expansion.FibreSlots.removedInFibre w U π q = {a ∈ U | π a.fst = q}.card
Instances For
noncomputable def
EGZ.Expansion.FibreSlots.labelledEquiv
{G : Type u_1}
{H : Type u_2}
{S : Type u_3}
(w : G → ℕ)
(U : Finset (Atom w))
(π : G → H)
(label : S → H)
(hinj : Function.Injective label)
(hcover : ∀ (v : G), w v ≠ 0 → ∃ (s : S), π v = label s)
:
The equivalence reassembling disjoint labelled fibres into all retained atoms.
Equations
- EGZ.Expansion.FibreSlots.labelledEquiv w U π label hinj hcover = Equiv.ofBijective (fun (z : (s : S) × EGZ.Expansion.FibreSlots.Fibre w U π (label s)) => ⟨↑z.snd, ⋯⟩) ⋯
Instances For
theorem
EGZ.Expansion.FibreSlots.reassemble_remaining
{G : Type u_1}
{H : Type u_2}
{S : Type u_3}
[Fintype G]
[Fintype S]
(w : G → ℕ)
(U : Finset (Atom w))
(π : G → H)
(label : S → H)
(hinj : Function.Injective label)
(hcover : ∀ (v : G), w v ≠ 0 → ∃ (s : S), π v = label s)
:
Reassembling all surviving labelled fibres recovers exactly the remaining multiplicities, without identifying coincident positions.
theorem
EGZ.Expansion.FibreSlots.remaining_isThickRelative
{p d r T : ℕ}
[NeZero p]
(w : FpCoord p d → ℕ)
(U : Finset (Atom w))
(π : FpCoord p d → FpCoord p r)
{δ : ℝ}
(hδ : 0 ≤ δ)
(hmass : p ≤ natMass w)
(hU : ↑U.card ≤ δ * ↑p / 2)
(hthick : IsThickRelative w π T δ)
:
IsThickRelative (remaining w U) π T (δ / 2)