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

# isBinary -- whether a matroid is representable over F_2

- Usage:
    `isBinary M`
- Inputs:
  - M, a matroid,
- Outputs:
  - a Boolean value, whether M is binary

## Description

Determines if M is a binary matroid, i.e. is representable over the field $F_2$ of 2 elements.

A matroid is representable over F_2 iff it does not have U_{2,4} as a minor. However, this method does not go through hasMinor, for efficiency reasons: rather it checks whether the symmetric difference of any 2 distinct circuits is dependent.

Note: in general, determining representability is a difficult computational problem. For instance, assuming access to an independence oracle, it is known that the problem of determining whether a matroid is binary cannot be solved in polynomial time.

    i1 : M5 = matroid completeGraph 5

    o1 = a "matroid" of rank 4 on 10 elements

    o1 : Matroid

    i2 : isBinary M5

    o2 = true

    i3 : U48 = uniformMatroid(4, 8)

    o3 = a "matroid" of rank 4 on 8 elements

    o3 : Matroid

    i4 : isBinary U48

    o4 = false

## See also

- hasMinor -- whether a matroid has a given minor
- getRepresentation -- retrieves stored representation

## Ways to use isBinary:

- `isBinary(Matroid)`

## For the programmer

The object isBinary is a method function.

The source of this document is in /build/macaulay2-88fgJW/macaulay2-1.25.11+ds/M2/Macaulay2/packages/Matroids/doc-Matroids.m2:1572:0.