next | previous | forward | backward | up | top | index | toc | Macaulay2 web site
Matroids :: isomorphism(Matroid,Matroid)

isomorphism(Matroid,Matroid) -- isomorphisms between two matroids

Synopsis

Description

This method computes all isomorphisms between M and N: in particular, this method returns an empty list iff M and N are not isomorphic.

i1 : M = matroid({a,b,c},{{a,b},{a,c}})

o1 = a matroid of rank 2 on 3 elements

o1 : Matroid
i2 : isomorphism(M, uniformMatroid(2,3)) -- not isomorphic

o2 = {}

o2 : List
i3 : (M5, M6) = (5,6)/completeGraph/matroid

o3 = (a matroid of rank 4 on 10 elements, a matroid of rank 5 on 15 elements)

o3 : Sequence
i4 : minorM6 = minor(M6, set{8}, set{4,5,6,7})

o4 = a matroid of rank 4 on 10 elements

o4 : Matroid
i5 : time #isomorphism(M5, minorM6)
     -- used 0.293602 seconds

o5 = 120

We can verify that the Fano matroid (which is the projective plane over the field of two elements) has automorphism group of order 168 (and even give an explicit permutation representation for this group PGL(3, F2) inside the symmetric group S7):

i6 : F7 = specificMatroids "fano"

o6 = a matroid of rank 3 on 7 elements

o6 : Matroid
i7 : time autF7 = isomorphism(F7, F7); -- output is a list of permutations
     -- used 0.0396276 seconds
i8 : #autF7

o8 = 168

See also