This is actually implemented (as well as a host of other features) in the latest version of [Sage](http://www.sagemath.org/). This is the culmination of 2 and a half years of hard work by [Stefan van Zwam](https://web.math.princeton.edu/~svanzwam/) and [Rudi Pendavingh](http://www.win.tue.nl/~rudi/), together with help from Michael Welsh and Gordon Royle. See this [page](http://matroidunion.org/?p=286) from the Matroid Union Blog to get started. For your particular question, it is easy to construct $U_{2,4}$ via the Sage command Sage: N = matroids.Uniform(2,4) To test if an input matroid M has an N-minor you can run the Sage command Sage: M.has_minor(N) As you can see, Stefan and Rudi have worked hard to make the syntax easy to understand. Of course this is a very generic approach, so I am not sure how optimal it will be. Feel free to contact Stefan if you have any questions, or (better yet) want to develop for the package (Sage is open-source). **Edit.** Gordon Royle points out that using the is_binary() method is faster than the general purpose minor routine.