Theorem 18 — three characterizations of the components
ProvedWhitneyMatroid.Components.components_tfaeLet be a finite matroid on a ground set with rank function , and let be distinct, nonempty, non-separable subsets of with . Then the following statements are equivalent:
- are the components of (the set is the set of components);
- no two of have common elements, and there is no circuit of containing elements of more than one of them;
The theorem shows that the components are detected by rank additivity alone, and that they are separated from each other by circuits.
Formalization Note Whitney tacitly takes to be distinct, nonempty matroids. Both are made explicit: if two of them could coincide, a single loop listed twice () would satisfy (3) but not (2); if one could be empty, (2) and (3) would hold but (1) would fail. The family is indexed by ; ranks are Mathlib's M.eRk, finite here. As Whitney remarks, rank cannot be replaced by nullity in (3).
import Mathlib import Definitions.Def_WhitneyMatroid_Components_IsSeparable import Definitions.Def_WhitneyMatroid_Components_IsComponent
namespace WhitneyMatroid.Components
theorem components_tfae {α : Type*} (M : Matroid α) [M.Finite]
(p : ℕ) (Ms : Fin p → Set α) (hcover : (⋃ i, Ms i) = M.E)
(hinj : Function.Injective Ms) (hne : ∀ i, (Ms i).Nonempty)
(hns : ∀ i, IsNonSeparable M (Ms i)) :
[Set.range Ms = {K : Set α | IsComponent M K},
(∀ i j, i ≠ j → Disjoint (Ms i) (Ms j)) ∧
¬ ∃ (P : Set α) (i j : Fin p), i ≠ j ∧ M.IsCircuit P ∧
(P ∩ Ms i).Nonempty ∧ (P ∩ Ms j).Nonempty,
M.eRk M.E = ∑ i, M.eRk (Ms i)].TFAE := by sorry
end WhitneyMatroid.Components
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.