#19049: New Hyperbolicity Algorithm
-------------------------------------+-------------------------------------
       Reporter:  borassi            |        Owner:
           Type:  enhancement        |       Status:  needs_work
       Priority:  major              |    Milestone:  sage-6.9
      Component:  graph theory       |   Resolution:
       Keywords:  Hyperbolicity      |    Merged in:
        Authors:  Michele Borassi    |    Reviewers:  David Coudert
Report Upstream:  N/A                |  Work issues:
         Branch:                     |       Commit:
  u/borassi/new_hyperbolicity_algorithm|  
9c97e2812e1aa2e34cefebaec06b335a6b4632f7
   Dependencies:                     |     Stopgaps:
-------------------------------------+-------------------------------------
Changes (by vbraun):

 * status:  positive_review => needs_work


Comment:

 32-bit linux:
 {{{
 sage -t --long src/sage/graphs/hyperbolicity.pyx
 **********************************************************************
 File "src/sage/graphs/hyperbolicity.pyx", line 1212, in
 sage.graphs.hyperbolicity.?
 Failed example:
     for i in xrange(10): # long time
         G = graphs.RandomBarabasiAlbert(100,2)
         d1,_,_ = hyperbolicity(G,algorithm='basic')
         d2,_,_ = hyperbolicity(G,algorithm='CCL')
         d3,_,_ = hyperbolicity(G,algorithm='CCL+')
         d4,_,_ = hyperbolicity(G,algorithm='CCL+FA')
         d5,_,_ = hyperbolicity(G,algorithm='BCCM')
         l3,_,u3 = hyperbolicity(G,approximation_factor=2)
         if (not d1==d2==d3==d4==d5) or l3>d1 or u3<d1:
            print "That's not good!"
 Expected nothing
 Got:
     That's not good!
     That's not good!
     That's not good!
     That's not good!
     That's not good!
     That's not good!
     That's not good!
     That's not good!
     That's not good!
     That's not good!
 **********************************************************************
 File "src/sage/graphs/hyperbolicity.pyx", line 1226, in
 sage.graphs.hyperbolicity.?
 Failed example:
     for i in range(10): # long time
         n = random.randint(2, 20)
         m = random.randint(0, n*(n-1) / 2)
         G = graphs.RandomGNM(n, m)
         for cc in G.connected_components_subgraphs():
             d1,_,_ = hyperbolicity(cc, algorithm='basic')
             d2,_,_ = hyperbolicity(cc, algorithm='CCL')
             d3,_,_ = hyperbolicity(cc, algorithm='CCL+')
             d4,_,_ = hyperbolicity(cc, algorithm='CCL+FA')
             d5,_,_ = hyperbolicity(cc, algorithm='BCCM')
             l3,_,u3 = hyperbolicity(cc, approximation_factor=2)
             if (not d1==d2==d3==d4==d5) or l3>d1 or u3<d1:
                 print "Error in graph ", cc.edges()
 Expected nothing
 Got:
     Error in graph  [(0, 2, None), (0, 5, None), (0, 6, None), (0, 7,
 None), (1, 2, None), (1, 5, None), (2, 4, None), (2, 7, None), (2, 8,
 None), (3, 5, None), (3, 6, None), (3, 8, None)]
     Error in graph  [(0, 1, None), (0, 8, None), (0, 10, None), (0, 11,
 None), (1, 4, None), (2, 9, None), (2, 10, None), (3, 5, None), (3, 9,
 None), (3, 10, None), (3, 11, None), (4, 7, None), (4, 9, None), (4, 11,
 None), (5, 8, None), (6, 8, None), (7, 8, None), (7, 9, None), (7, 10,
 None)]
     Error in graph  [(0, 1, None), (0, 3, None), (0, 7, None), (0, 11,
 None), (1, 2, None), (1, 6, None), (1, 9, None), (1, 10, None), (2, 8,
 None), (3, 4, None), (3, 5, None), (3, 7, None), (3, 10, None), (4, 5,
 None), (4, 6, None), (4, 9, None), (4, 10, None), (4, 11, None), (5, 8,
 None), (5, 9, None), (5, 10, None), (6, 7, None), (8, 11, None)]
     Error in graph  [(0, 1, None), (0, 2, None), (0, 3, None), (0, 4,
 None), (0, 5, None), (0, 6, None), (0, 7, None), (0, 9, None), (0, 11,
 None), (1, 2, None), (1, 3, None), (1, 4, None), (1, 5, None), (1, 6,
 None), (1, 7, None), (1, 8, None), (1, 9, None), (1, 10, None), (1, 11,
 None), (2, 3, None), (2, 6, None), (2, 7, None), (2, 8, None), (2, 10,
 None), (2, 11, None), (3, 4, None), (3, 5, None), (3, 6, None), (3, 7,
 None), (3, 8, None), (3, 10, None), (3, 11, None), (4, 6, None), (4, 7,
 None), (4, 9, None), (4, 10, None), (4, 11, None), (5, 6, None), (5, 7,
 None), (5, 8, None), (5, 9, None), (5, 10, None), (5, 11, None), (6, 8,
 None), (6, 9, None), (6, 10, None), (6, 11, None), (7, 8, None), (7, 9,
 None), (7, 11, None), (8, 9, None), (8, 10, None), (8, 11, None), (9, 10,
 None), (9, 11, None)]
     Error in graph  [(0, 1, None), (0, 2, None), (0, 3, None), (0, 4,
 None), (0, 5, None), (0, 9, None), (0, 10, None), (0, 11, None), (0, 12,
 None), (0, 13, None), (1, 4, None), (1, 6, None), (1, 9, None), (1, 11,
 None), (1, 12, None), (1, 13, None), (2, 3, None), (2, 5, None), (2, 8,
 None), (2, 9, None), (2, 12, None), (3, 6, None), (3, 10, None), (3, 12,
 None), (4, 9, None), (4, 11, None), (4, 12, None), (4, 13, None), (5, 8,
 None), (5, 9, None), (5, 10, None), (5, 13, None), (6, 7, None), (6, 12,
 None), (7, 10, None), (7, 12, None), (8, 12, None), (9, 10, None), (9, 12,
 None), (11, 12, None), (11, 13, None)]
     Error in graph  [(0, 3, None), (0, 4, None), (0, 6, None), (0, 7,
 None), (0, 8, None), (1, 10, None), (1, 11, None), (1, 15, None), (2, 5,
 None), (2, 10, None), (2, 13, None), (2, 14, None), (3, 4, None), (3, 8,
 None), (3, 12, None), (3, 14, None), (4, 5, None), (4, 9, None), (4, 13,
 None), (4, 17, None), (5, 10, None), (5, 13, None), (5, 14, None), (5, 17,
 None), (6, 15, None), (8, 9, None), (9, 13, None), (9, 15, None), (10, 11,
 None), (10, 12, None), (10, 15, None), (11, 15, None), (11, 17, None),
 (15, 17, None)]
     Error in graph  [(0, 2, None), (0, 3, None), (0, 5, None), (0, 7,
 None), (0, 8, None), (0, 9, None), (0, 10, None), (0, 11, None), (0, 12,
 None), (0, 14, None), (1, 2, None), (1, 3, None), (1, 4, None), (1, 5,
 None), (1, 6, None), (1, 7, None), (1, 8, None), (1, 10, None), (1, 11,
 None), (2, 4, None), (2, 5, None), (2, 6, None), (2, 7, None), (2, 9,
 None), (2, 13, None), (3, 4, None), (3, 5, None), (3, 6, None), (3, 7,
 None), (3, 8, None), (3, 9, None), (3, 10, None), (3, 13, None), (4, 6,
 None), (4, 8, None), (4, 9, None), (4, 10, None), (4, 11, None), (4, 12,
 None), (4, 14, None), (5, 6, None), (5, 7, None), (5, 9, None), (5, 11,
 None), (5, 12, None), (5, 13, None), (6, 8, None), (6, 9, None), (6, 10,
 None), (6, 11, None), (7, 8, None), (7, 9, None), (7, 10, None), (7, 11,
 None), (7, 12, None), (7, 13, None), (7, 14, None), (8, 9, None), (8, 10,
 None), (8, 11, None), (8, 12, None), (8, 14, None), (9, 10, None), (9, 13,
 None), (9, 14, None), (10, 11, None), (10, 12, None), (10, 13, None), (10,
 14, None), (11, 12, None), (11, 13, None), (11, 14, None), (12, 14, None),
 (13, 14, None)]
     Error in graph  [(0, 1, None), (0, 4, None), (0, 5, None), (0, 7,
 None), (0, 8, None), (1, 2, None), (1, 3, None), (1, 6, None), (1, 7,
 None), (1, 8, None), (2, 3, None), (2, 4, None), (2, 6, None), (2, 8,
 None), (2, 9, None), (3, 5, None), (3, 6, None), (3, 8, None), (3, 9,
 None), (4, 5, None), (4, 6, None), (4, 7, None), (4, 8, None), (4, 9,
 None), (5, 7, None), (6, 8, None), (6, 9, None), (7, 9, None), (8, 9,
 None)]
 **********************************************************************
 File "src/sage/graphs/hyperbolicity.pyx", line 1246, in
 sage.graphs.hyperbolicity.?
 Failed example:
     hyperbolicity(G)
 Expected:
     (1/2, [6, 7, 8, 9], 1/2)
 Got:
     (0, [], 0)
 **********************************************************************
 1 item had failures:
    3 of  50 in sage.graphs.hyperbolicity.?
     [66 tests, 3 failures, 0.41 s]
 }}}

--
Ticket URL: <http://trac.sagemath.org/ticket/19049#comment:10>
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