The dual matroid of a matroid M has the same ground set as M, and bases equal to the complements of bases of M.
Duality is a fundamental operation in matroid theory: for nearly any property/operation of matroids, there is a corresponding dual version, usually denoted with the prefix "co-". For instance, coloops are loops of the dual, and contraction is dual to deletion.
In this package, every dual matroid is created as a matroid-dual matroid pair, and each is cached as the dual of the other. Often the ideal of the dual matroid has a significantly different number of generators, so many algorithms in this package will use an equivalent check for the ideal with fewer generators.
|
|
|
|
|
|
A matroid that is isomorphic to its dual is called self-dual; and a matroid that is equal to its dual is called identically self-dual.
|
|
|
|
|
If a matroid has a representation stored, then this function will attempt to automatically compute a representation for the dual (whether this works depends on whether reducedRowEchelonForm is implemented for the underlying ring of the matrix).
|
|
|
|