#18946: unweighted matroid intersection using blocking flow approach
-------------------------------------+-------------------------------------
       Reporter:  chaoxu             |        Owner:
           Type:  enhancement        |       Status:  needs_review
       Priority:  minor              |    Milestone:  sage-6.9
      Component:  matroid theory     |   Resolution:
       Keywords:                     |    Merged in:
        Authors:                     |    Reviewers:
Report Upstream:  N/A                |  Work issues:
         Branch:  u/chaoxu/faster-   |       Commit:
  abstract-matroid-intersection      |  c9fb292e9d2155ddc647e83970204a256ae53b3f
   Dependencies:                     |     Stopgaps:
-------------------------------------+-------------------------------------

Comment (by Stefan):

 The runtime seems to depend a lot on the type of matroid.

 {{{
 sage: M1 = Matroid(MatrixSpace(GF(2), 500, 2000).random_element())
 sage: M2 = Matroid(MatrixSpace(GF(3), 500, 2000).random_element())
 sage: %time X = M1.intersection(M2)
 CPU times: user 929 ms, sys: 122 ms, total: 1.05 s
 Wall time: 1.05 s
 sage: %time X = M1._intersection_unweighted(M2)
 CPU times: user 332 ms, sys: 1.68 ms, total: 334 ms
 Wall time: 334 ms
 sage: M1 = Matroid(MatrixSpace(GF(7), 500, 2000).random_element())
 sage: M2 = Matroid(MatrixSpace(GF(3), 500, 2000).random_element())
 sage: %time X = M1.intersection(M2)
 CPU times: user 37 s, sys: 201 ms, total: 37.2 s
 Wall time: 37.2 s
 sage: %time X2 = M1._intersection_unweighted(M2)
 CPU times: user 5min 1s, sys: 217 ms, total: 5min 1s
 Wall time: 5min 2s
 }}}

 Your method is not accessible to end users; mention it in the
 documentation of the intersection method. After adding that documentation
 (where you could say something like "a method that might be faster,
 depending on the matroids involved"), I would say it's good to go in

--
Ticket URL: <http://trac.sagemath.org/ticket/18946#comment:5>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.

Reply via email to