Ticket #12340: trac_12340.patch

File trac_12340.patch, 8.7 KB (added by benjaminfjones, 7 years ago)

mark doctests requiring polymake correctly

  • sage/geometry/polytope.py

    # HG changeset patch
    # User Benjamin Jones <benjaminfjones@gmail.com>
    # Date 1338014241 25200
    # Node ID 35ad5b415f3eeaad10dbe8341b6237dcba5c7fd9
    # Parent  9ab4ab6e12d0ce97566db069205815303514de4d
    Trac 12340: mark doctests that require polymake correctly
    
    diff --git a/sage/geometry/polytope.py b/sage/geometry/polytope.py
    a b  
    1616   If you have trouble with this module do::
    1717
    1818       sage: !polymake --reconfigure   # not tested
    19        
    20    at the command line.       
     19
     20   at the command line.
    2121
    2222AUTHORS:
    2323
     
    5555class Polytope(SageObject):
    5656    """
    5757    Create a polytope.
    58    
     58
    5959    EXAMPLES::
    60    
    61         sage: P = polymake.convex_hull([[1,0,0,0], [1,0,0,1], [1,0,1,0], [1,0,1,1],  [1,1,0,0], [1,1,0,1], [1,1,1,0], [1,1,1,1]])   # optional: needs polymake
    62    
     60
     61        sage: P = polymake.convex_hull([[1,0,0,0], [1,0,0,1], [1,0,1,0], [1,0,1,1],  [1,1,0,0], [1,1,0,1], [1,1,1,0], [1,1,1,1]])   # optional - polymake
     62
    6363    .. note::
    6464
    65        If you have trouble with this module do:: 
    66    
     65       If you have trouble with this module do::
     66
    6767          sage: !polymake --reconfigure   # not tested
    6868
    6969       at the command line.
     
    8484        except AttributeError:
    8585            pass
    8686        return s
    87        
     87
    8888
    8989
    9090    def __add__(self, other):
    91         """
    92        
    93         """
    9491        if not isinstance(other, Polytope):
    9592            raise TypeError, "other (=%s) must be a polytope"%other
    9693        output_file = tmp_filename()
    9794        infile1 = tmp_filename()
    9895        open(infile1,'w').write(self.__data)
    9996        infile2 = tmp_filename()
    100         open(infile2,'w').write(other.__data)       
     97        open(infile2,'w').write(other.__data)
    10198        cmd = "minkowski_sum %s 1 %s 1 %s"%(output_file, infile1,
    10299                                            infile2)
    103100        stdin, stdout, stderr = os.popen3(cmd)
     
    111108        os.unlink(infile2)
    112109        os.unlink(output_file)
    113110        return S
    114        
    115        
     111
     112
    116113    def data(self):
    117114        return self.__data
    118115
     
    133130            else:
    134131                j += i
    135132            return D[i+len(cmd2)-1:j]
    136        
     133
    137134        F = tmp_file
    138135        open(F,'w').write(self.__data)
    139136        c = '%s %s %s'%(polymake_command, F, cmd)
     
    146143                err,cmd)
    147144        self.__data = open(F).read()
    148145        return ans
    149    
     146
    150147
    151148    def facets(self):
    152149        """
    153150        EXAMPLES::
    154        
    155             sage: P = polymake.convex_hull([[1,0,0,0], [1,0,0,1], [1,0,1,0], [1,0,1,1],  [1,1,0,0], [1,1,0,1], [1,1,1,0], [1,1,1,1]])   # optional: needs polymake
    156             sage: P.facets()                            # optional
     151
     152            sage: P = polymake.convex_hull([[1,0,0,0], [1,0,0,1], [1,0,1,0], [1,0,1,1],  [1,1,0,0], [1,1,0,1], [1,1,1,0], [1,1,1,1]])   # optional - polymake
     153            sage: P.facets()                            # optional - polymake
    157154            [(0, 0, 0, 1), (0, 1, 0, 0), (0, 0, 1, 0), (1, 0, 0, -1), (1, 0, -1, 0), (1, -1, 0, 0)]
    158155        """
    159156        try:
     
    174171    def vertices(self):
    175172        """
    176173        EXAMPLES::
    177        
    178             sage: P = polymake.convex_hull([[1,0,0,0], [1,0,0,1], [1,0,1,0], [1,0,1,1],  [1,1,0,0], [1,1,0,1], [1,1,1,0], [1,1,1,1]])     # optional: needs polymake
    179             sage: P.vertices()                            # optional
     174
     175            sage: P = polymake.convex_hull([[1,0,0,0], [1,0,0,1], [1,0,1,0], [1,0,1,1],  [1,1,0,0], [1,1,0,1], [1,1,1,0], [1,1,1,1]])     # optional - polymake
     176            sage: P.vertices()                            # optional - polymake
    180177            [(1, 0, 0, 0), (1, 0, 0, 1), (1, 0, 1, 0), (1, 0, 1, 1), (1, 1, 0, 0), (1, 1, 0, 1), (1, 1, 1, 0), (1, 1, 1, 1)]
    181178        """
    182179        try:
     
    211208    def is_simple(self):
    212209        r"""
    213210        Return True if this polytope is simple.
    214        
     211
    215212        A polytope is *simple* if the degree of each vertex equals the
    216213        dimension of the polytope.
    217        
     214
    218215        EXAMPLES::
    219        
    220             sage: P = polymake.convex_hull([[1,0,0,0], [1,0,0,1], [1,0,1,0], [1,0,1,1],  [1,1,0,0], [1,1,0,1], [1,1,1,0], [1,1,1,1]])        # optional: needs polymake
    221             sage: P.is_simple()                              # optional
     216
     217            sage: P = polymake.convex_hull([[1,0,0,0], [1,0,0,1], [1,0,1,0], [1,0,1,1],  [1,1,0,0], [1,1,0,1], [1,1,1,0], [1,1,1,1]])        # optional - polymake
     218            sage: P.is_simple()                              # optional - polymake
    222219            True
    223        
     220
    224221        AUTHORS:
    225222
    226223        - Edwin O'Shea (2006-05-02): Definition of simple.
     
    233230        i = s.find('\n')
    234231        self.__is_simple = bool(int(s[i:]))
    235232        return self.__is_simple
    236        
    237    
    238    
     233
     234
     235
    239236    def n_facets(self):
    240237        """
    241238        EXAMPLES::
    242        
    243             sage: P = polymake.convex_hull([[1,0,0,0], [1,0,0,1], [1,0,1,0], [1,0,1,1],  [1,1,0,0], [1,1,0,1], [1,1,1,0], [1,1,1,1]])     # optional: needs polymake
    244             sage: P.n_facets()                            # optional
     239
     240            sage: P = polymake.convex_hull([[1,0,0,0], [1,0,0,1], [1,0,1,0], [1,0,1,1],  [1,1,0,0], [1,1,0,1], [1,1,1,0], [1,1,1,1]])     # optional - polymake
     241            sage: P.n_facets()                            # optional - polymake
    245242            6
    246243        """
    247244        try:
     
    268265    def reconfigure(self):
    269266        """
    270267        Reconfigure polymake.
    271        
     268
    272269        Remember to run polymake.reconfigure() as soon as you have changed
    273270        the customization file and/or installed missing software!
    274271        """
     
    276273
    277274    def associahedron(self, dimension):
    278275        return self.__make('associahedron %s %s'%(tmp_file, dimension),
    279                            '%s-dimensional associahedron'%dimension)   
    280                        
     276                           '%s-dimensional associahedron'%dimension)
     277
    281278    def birkhoff(self, n):
    282279        return self.__make('birkhoff %s %s'%(tmp_file, n),
    283280                           'Birkhoff %s'%n)
    284                        
     281
    285282
    286283    def cell24(self):
    287284        """
    288285        EXAMPLES::
    289        
    290             sage: polymake.cell24()            # optional: needs polymake
     286
     287            sage: polymake.cell24()            # optional - polymake
    291288            The 24-cell
    292289        """
    293290        return self.__make('24-cell %s'%tmp_file,
    294291                           'The 24-cell')
    295    
     292
    296293    def convex_hull(self, points=[]):
    297294        r"""
    298295        EXAMPLES::
    299        
     296
    300297            sage: R.<x,y,z> = PolynomialRing(QQ,3)
    301298            sage: f = x^3 + y^3 + z^3 + x*y*z
    302299            sage: e = f.exponents()
    303300            sage: a = [[1] + list(v) for v in e]
    304301            sage: a
    305302            [[1, 3, 0, 0], [1, 0, 3, 0], [1, 1, 1, 1], [1, 0, 0, 3]]
    306             sage: n = polymake.convex_hull(a)       # optional: needs polymake
    307             sage: n                                 # optional
     303            sage: n = polymake.convex_hull(a)       # optional - polymake
     304            sage: n                                 # optional - polymake
    308305            Convex hull of points [[1, 0, 0, 3], [1, 0, 3, 0], [1, 1, 1, 1], [1, 3, 0, 0]]
    309             sage: n.facets()                        # optional
     306            sage: n.facets()                        # optional - polymake
    310307            [(0, 1, 0, 0), (3, -1, -1, 0), (0, 0, 1, 0)]
    311             sage: n.is_simple()                     # optional
     308            sage: n.is_simple()                     # optional - polymake
    312309            True
    313             sage: n.graph()                         # optional
     310            sage: n.graph()                         # optional - polymake
    314311            'GRAPH\n{1 2}\n{0 2}\n{0 1}\n\n'
    315         """       
     312        """
    316313        f = 'POINTS\n'
    317314        points.sort()
    318315        for p in points:
     
    333330            cmd += ' -seed %s'%seed
    334331        return self.__make(cmd,
    335332              '%s-dimensional 0/1-polytope with %s random vertices (uniform distribution)'%(d, n))
    336            
     333
    337334
    338335
    339336polymake = Polymake()
  • sage/rings/polynomial/multi_polynomial.pyx

    diff --git a/sage/rings/polynomial/multi_polynomial.pyx b/sage/rings/polynomial/multi_polynomial.pyx
    a b  
    856856        """
    857857        Return the Newton polytope of this polynomial.
    858858
    859         You should have the optional polymake package installed.
    860 
    861859        EXAMPLES::
    862860
    863861            sage: R.<x,y> = QQ[]
     
    875873            The empty polyhedron in QQ^0
    876874            sage: R(1).newton_polytope()
    877875            A 0-dimensional polyhedron in QQ^2 defined as the convex hull of 1 vertex
    878            
     876
    879877        """
    880878        from sage.geometry.polyhedron.constructor import Polyhedron
    881879        e = self.exponents()