§6 — the rank postulates (R) and the independence postulates (I) are equivalent
ProvedWhitneyMatroid.RankIndep.rank_indep_equivalentLet be a finite set of elements and the number of elements of a subset .
- If is a rank function satisfying Whitney's postulates (R₁), (R₂), (R₃), then the sets with satisfy the independence postulates (I₁), (I₂), the empty set is among them, and for every subset , equals the number of elements in a largest such set contained in .
- If a predicate "independent" on the subsets of satisfies (I₁), (I₂) and the empty set is independent, then
satisfies (R₁), (R₂), (R₃), and a set is independent if and only if .
In Whitney's words: either set of postulates (R) or (I) can be deduced from the other, and the definitions of the rank and of the independence of any subset agree under the two systems; hence the two systems are equivalent. This is the first of the cryptomorphisms of matroid theory, and it lets one pass freely between the rank and the independent sets of a matroid.
Formalization Note The paper takes for granted that the empty set is independent in system (I). Without it, (I₁) and (I₂) also hold for the predicate that declares no set independent; there the largest independent subset does not exist and the round trip fails. The hypothesis " is independent" is therefore stated explicitly in part 2; in part 1 it is proved. Postulate (I₂) is Whitney's form, in which has exactly one element more than . The agreement of the definitions is stated as equality of functions: the rank recovered from the independent sets of is itself, and the independent sets recovered from the rank of an independence system are the original ones.
import Mathlib import Definitions.Def_WhitneyMatroid_RankIndep_Postulates
namespace WhitneyMatroid.RankIndep
/-- §6, last paragraph (p. 514). The rank postulates (R) and the independence postulates (I)
are equivalent: each system yields the other, and the rank and the independence of every
subset agree under the two systems. The empty set is assumed independent in (I), as the
paper does tacitly. -/
theorem rank_indep_equivalent {α : Type*} [Fintype α] [DecidableEq α] :
(∀ r : Finset α → ℤ, IsRankSystem r →
IsIndepSystem (indepOfRank r) ∧ indepOfRank r ∅ ∧
rankOfIndep (indepOfRank r) = r) ∧
(∀ Indep : Finset α → Prop, IsIndepSystem Indep → Indep ∅ →
IsRankSystem (rankOfIndep Indep) ∧ indepOfRank (rankOfIndep Indep) = Indep) := by sorry
end WhitneyMatroid.RankIndep
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.