Macaulay2 » Documentation
Packages » Matroids :: coextension
next | previous | forward | backward | up | index | toc

coextension -- the free coextension of a matroid

Synopsis

Description

This function is provided by the package Matroids.

A matroid N is a coextension of the matroid M if the dual of M is an extension of the dual of N. The free coextension of M is the dual of the free extension of the dual of M. The free coextension of a uniform matroid U_{r,n} is U_{r+1,n+1}.

i1 : M = uniformMatroid(3, 4);
i2 : N = coextension M

o2 = a "matroid" of rank 4 on 5 elements

o2 : Matroid
i3 : quickIsomorphismTest(N, uniformMatroid(4, 5))

o3 = true

The free coextension N is a matroid whose ground set is the ground set of M plus one additional element e. Flats of the free coextension come in one of two types: They are either independent sets of M or sets containing e that become flats of M after removing e.

i4 : M = matroid completeGraph 3;
i5 : partition(I -> #I, independentSets M)

o5 = HashTable{0 => {set {}}                            }
               1 => {set {1}, set {2}, set {0}}
               2 => {set {1, 2}, set {0, 2}, set {0, 1}}

o5 : HashTable
i6 : partition(F -> rank(M, F), flats M)

o6 = HashTable{0 => {set {}}                   }
               1 => {set {2}, set {1}, set {0}}
               2 => {set {0, 1, 2}}

o6 : HashTable
i7 : N = coextension M

o7 = a "matroid" of rank 3 on 4 elements

o7 : Matroid
i8 : partition(F -> rank(N, F), flats N)

o8 = HashTable{0 => {set {}}                                                                }
               1 => {set {3}, set {2}, set {1}, set {0}}
               2 => {set {2, 3}, set {1, 3}, set {0, 3}, set {1, 2}, set {0, 2}, set {0, 1}}
               3 => {set {0, 1, 2, 3}}

o8 : HashTable

See also

Ways to use coextension :

For the programmer

The object coextension is a method function.