-
-
Notifications
You must be signed in to change notification settings - Fork 654
Closed
Milestone
Description
Sara Billey (of Univ of Washington) reported these.
~/Sara$ sage-develop
┌────────────────────────────────────────────────────────────────────┐
│ SageMath version 7.6.beta5, Release Date: 2017-02-26 │
│ Type "notebook()" for the browser-based notebook interface. │
│ Type "help()" for help. │
└────────────────────────────────────────────────────────────────────┘
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Warning: this is a prerelease version, and it may be unstable. ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
sage: P=Polyhedron(vertices =[(8.3319544851638732, 7.0567045956967727), (6.4876921900819049, 4.8435898415984129)])
sage: P
The empty polyhedron in (Real Field with 57 bits of precision)^2
sage: # WRONG! It should not be empty. Indeed, look:
sage: P=Polyhedron(vertices =[(8.3319544851638732, 7.0567045956967727), (6.4876921900819049, 4.84358984159841)])
sage: P
A 1-dimensional polyhedron in RDF^2 defined as the convex hull of 2 vertices
sage: # Also, here's a hub traceback for no reason (as a second but maybe related bug):
sage: P=Polyhedron(vertices =[(8.3319544851638732, 7.0567045956967727), (6.4876921900819049, 4.8435898415984129)], base_ring=RealField(40))
sage: P.plot()
---------------------------------------------------------------------------
KeyError Traceback (most recent call last)
<ipython-input-8-d297b4e23e6b> in <module>()
----> 1 P.plot()
/projects/sage/sage-dev/local/lib/python2.7/site-packages/sage/geometry/polyhedron/base.pyc in plot(self, point, line, polygon, wireframe, fill, projection_direction, **kwds)
694 return polyhedron.projection()
695
--> 696 projection = project(self)
697 try:
698 plot_method = projection.plot
/projects/sage/sage-dev/local/lib/python2.7/site-packages/sage/geometry/polyhedron/base.pyc in project(polyhedron)
692 return polyhedron.schlegel_projection()
693 else:
--> 694 return polyhedron.projection()
695
696 projection = project(self)
/projects/sage/sage-dev/local/lib/python2.7/site-packages/sage/geometry/polyhedron/base.pyc in projection(self)
3759 """
3760 from .plot import Projection
-> 3761 self.projection = Projection(self)
3762 return self.projection
3763
/projects/sage/sage-dev/local/lib/python2.7/site-packages/sage/geometry/polyhedron/plot.py in __init__(self, polyhedron, proj)
492
493 if polyhedron.ambient_dim() == 2:
--> 494 self._init_from_2d(polyhedron)
495 elif polyhedron.ambient_dim() == 3:
496 self._init_from_3d(polyhedron)
/projects/sage/sage-dev/local/lib/python2.7/site-packages/sage/geometry/polyhedron/plot.py in _init_from_2d(self, polyhedron)
748 self.dimension = 2
749 self._init_points(polyhedron)
--> 750 self._init_lines_arrows(polyhedron)
751 self._init_area_2d(polyhedron)
752
/projects/sage/sage-dev/local/lib/python2.7/site-packages/sage/geometry/polyhedron/plot.py in _init_lines_arrows(self, polyhedron)
812 if not obj[i].is_vertex(): continue
813 for j in range(len(obj)):
--> 814 if polyhedron.vertex_adjacency_matrix()[i,j] == 0: continue
815 if i < j and obj[j].is_vertex():
816 l = [obj[i].vector(), obj[j].vector()]
/projects/sage/sage-dev/src/sage/misc/cachefunc.pyx in sage.misc.cachefunc.CachedMethodCallerNoArgs.__call__ (/projects/sage/sage-dev/src/build/cythonized/sage/misc/cachefunc.c:13453)()
2399 if self.cache is None:
2400 f = self.f
-> 2401 self.cache = f(self._instance)
2402 return self.cache
2403
/projects/sage/sage-dev/local/lib/python2.7/site-packages/sage/geometry/polyhedron/base.pyc in vertex_adjacency_matrix(self)
1933 (0, 0, 1, 1, 0) A vertex at (3, 0)
1934 """
-> 1935 return self._vertex_adjacency_matrix()
1936
1937 adjacency_matrix = vertex_adjacency_matrix
/projects/sage/sage-dev/local/lib/python2.7/site-packages/sage/geometry/polyhedron/base.pyc in _vertex_adjacency_matrix(self)
318 M[j, i] = 1
319
--> 320 face_lattice = self.face_lattice()
321 for face in face_lattice:
322 Vrep = face.ambient_Vrepresentation()
/projects/sage/sage-dev/src/sage/misc/cachefunc.pyx in sage.misc.cachefunc.CachedMethodCallerNoArgs.__call__ (/projects/sage/sage-dev/src/build/cythonized/sage/misc/cachefunc.c:13453)()
2399 if self.cache is None:
2400 f = self.f
-> 2401 self.cache = f(self._instance)
2402 return self.cache
2403
/projects/sage/sage-dev/local/lib/python2.7/site-packages/sage/geometry/polyhedron/base.pyc in face_lattice(self)
3408 return Hasse_diagram_from_incidences\
3409 (atoms_incidences, coatoms_incidences,
-> 3410 face_constructor=face_constructor, required_atoms=atoms_vertices)
3411
3412 def faces(self, face_dimension):
/projects/sage/sage-dev/local/lib/python2.7/site-packages/sage/geometry/hasse_diagram.pyc in Hasse_diagram_from_incidences(atom_to_coatoms, coatom_to_atoms, face_constructor, required_atoms, key, **kwds)
180 # Make sure that coatoms are in the end in proper order
181 tail = [faces[atoms, frozenset([coatom])]
--> 182 for coatom, atoms in enumerate(coatom_to_atoms)]
183 tail.append(faces[A, frozenset()])
184 new_order = [n for n in new_order if n not in tail] + tail
KeyError: (frozenset([]), frozenset([0]))
sage:
See public worksheet: https://cloud.sagemath.com/projects/53b9d6b6-ce2c-4007-843a-257cc01bf65b/files/Sara/Polygon%20Bug.sagews
CC: @jplab @mo271 @mkoeppe @videlec
Component: geometry
Keywords: base ring, polyhedron, days88, IMA coding sprints
Author: Jean-Philippe Labbé
Branch/Commit: 150c7df
Reviewer: Vincent Delecroix
Issue created by migration from https://trac.sagemath.org/ticket/22552