This file defines binary matroids and regular matroids. Basic API is provided.
Data describing a binary matroid on the ground set X ∪ Y
where X
and Y
are bundled.
- X : Set α
Basis elements -> row indices of [
1 | B
] - Y : Set α
Nonbasis elements -> column indices of
B
Necessary decidability
Necessary decidability
- hXY : self.X ⫗ self.Y
Basis and nonbasis elements are disjoint
The standard representation matrix
Instances For
Basis and nonbasis elements are disjoint
Given matrix B
, is the set of columns S
in the (standard) representation [1 | B
] Z2
-independent?
Equations
- B.IndepCols S = ∃ (hs : S ⊆ X ∪ Y), LinearIndependent (ι := ↑S) Z2 ((Matrix.fromColumns 1 B).submatrix id (Subtype.toSum ∘ hs.elem)).transpose
Instances For
A subset of a linearly independent set of columns is linearly independent.
A nonmaximal linearly independent set of columns can be augmented with another linearly independent column.
Any set of columns has the maximal subset property.
Binary matroid generated by its standard representation matrix, expressed as IndepMatroid
.
Equations
Instances For
Binary matroid generated by its standard representation matrix, expressed as Matroid
.
Equations
- B.toMatroid = B.toIndepMatroid.matroid
Instances For
Convert StandardRepresentation
to Matroid
.
Equations
- M.toMatroid = M.B.toMatroid
Instances For
Registered conversion from StandardRepresentation
to Matroid
.
Equations
- instCoeStandardRepresentationMatroid = { coe := StandardRepresentation.toMatroid }
The binary matroid is regular iff the standard representation matrix has a totally unimodular signing.
Equations
Instances For
The binary matroid is regular iff the entire matrix has a totally unimodular signing.