Macaulay2 » Documentation
Packages » Matroids :: isSimple(Matroid)
next | previous | forward | backward | up | index | toc

isSimple(Matroid) -- whether a matroid is simple

Synopsis

Description

A matroid is simple if it has no loops or parallel classes; equivalently, it has no circuits of size <= 2.

Among the class of simple matroids, the lattice of flats is a complete invariant. Every matroid has a unique simplification which has the same lattice of flats.

i1 : isSimple matroid completeGraph 3

o1 = true
i2 : M = matroid(completeGraph 3, ParallelEdges => {set{0,1},set{0,1},set{1,2}}, Loops => {0,2})

o2 = a "matroid" of rank 2 on 8 elements

o2 : Matroid
i3 : isSimple M

o3 = false
i4 : S = simpleMatroid M

o4 = a "matroid" of rank 2 on 3 elements

o4 : Matroid
i5 : isSimple S

o5 = true
i6 : latticeOfFlats M == latticeOfFlats S

o6 = true

Note that the dual of a simple matroid may not be simple:

i7 : U = uniformMatroid(2, 2)

o7 = a "matroid" of rank 2 on 2 elements

o7 : Matroid
i8 : isSimple U

o8 = true
i9 : isSimple dual U

o9 = false

See also

Ways to use this method: