A ModularCut M is a collection of flats of M that is closed under taking superflats and
under intersections of modular families. These parametrize the extensions of M by a single
element outside M and hence also the projections of M; see Matroid.extendBy and
Matroid.projectBy.
Instances For
Equations
- Matroid.ModularCut.instSetLikeSet M = { coe := Matroid.ModularCut.carrier, coe_injective := ⋯ }
Transfer a ModularCut across a matroid equality.
Equations
Instances For
Transfer a ModularCut along an injection
Equations
Instances For
The empty modular cut
Equations
- Matroid.ModularCut.empty M = { carrier := ∅, forall_isFlat := ⋯, forall_superset := ⋯, forall_inter := ⋯ }
Instances For
Equations
- Matroid.ModularCut.instPartialOrder M = { le := fun (U U' : M.ModularCut) => ↑U ⊆ ↑U', le_refl := ⋯, le_trans := ⋯, lt_iff_le_not_ge := ⋯, le_antisymm := ⋯ }
Equations
- Matroid.ModularCut.instBoundedOrder M = { top := Matroid.ModularCut.principal M ∅, le_top := ⋯, bot := Matroid.ModularCut.empty M, bot_le := ⋯ }
If X spans a flat outside U, but X ∪ {y} spans a flat in U for all
y ∈ Y \ M.closure X, then M.closure X is covered by M.closure Y.
A ModularCut in M gives a ModularCut in M ↾ R for any R ⊆ M.E.
Equations
Instances For
a ModularCut in M gives a ModularCut in M \ D for any D.
Instances For
Equations
- U.comapOfSubsetRange f hf = { carrier := Set.preimage f '' ↑U, forall_isFlat := ⋯, forall_superset := ⋯, forall_inter := ⋯ }
Instances For
Instances For
Given an element e of a matroid M, the modular cut of M \ e corresponding to the
extension M of M \ e. Intended to apply when e ∈ M.E.
Equations
Instances For
The modular family condition can be replaced by a condition about modular pairs and infinite chains.
Equations
- Matroid.ModularCut.ofForallIsModularPairChainInter M U h_isFlat h_superset h_pair h_chain = { carrier := U, forall_isFlat := h_isFlat, forall_superset := h_superset, forall_inter := ⋯ }
Instances For
For a finite-rank matroid, the intersection condition can be replaced with a condition about modular pairs rather than families.
Equations
- Matroid.ModularCut.ofForallIsModularPairInter M U h_isFlat h_superset h_pair = Matroid.ModularCut.ofForallIsModularPairChainInter M U h_isFlat h_superset h_pair ⋯