Matroid Duality #
For a matroid M on ground set E, the collection of complements of the bases of M is the
collection of bases of another matroid on E called the 'dual' of M.
The map from M to its dual is an involution, interacts nicely with minors,
and preserves many important matroid properties such as representability and connectivity.
This file defines the dual matroid M✶ of M, and gives associated API. The definition
is in terms of its independent sets, using IndepMatroid.matroid.
We also define 'Co-independence' (independence in the dual) of a set as a predicate M.Coindep X.
This is an abbreviation for M✶.Indep X, but has its own name for the sake of dot notation.
Main Definitions #
M.Dual, writtenM✶, is the matroid onM.Ewhich a setB ⊆ M.Eis a base if and only ifM.E \ Bis a base forM.M.Coindep XmeansM✶.Indep X, or equivalently thatXis contained inM.E \ Bfor some baseBofM.
Given M : Matroid α, the IndepMatroid α whose independent sets are
the subsets of M.E that are disjoint from some base of M
Equations
- One or more equations did not get rendered due to their size.
Instances For
The dual of a matroid; the bases are the complements (w.r.t M.E) of the bases of M.
Equations
Instances For
The ✶ symbol, which denotes matroid duality.
(This is distinct from the usual * symbol for multiplication, due to precedence issues.)
Equations
- Matroid.«term_✶» = Lean.ParserDescr.trailingNode `Matroid.«term_✶» 1024 1024 (Lean.ParserDescr.symbol "✶")
Instances For
A coindependent set of M is an independent set of the dual of M✶. we give it a separate
definition to enable dot notation. Which spelling is better depends on context.