@@ -102,9 +102,8 @@ from .conversions \
102
102
from .conversions cimport Vrep_list_to_bit_rep
103
103
from sage.misc.cachefunc import cached_method
104
104
105
- from sage.data_structures.list_of_pairs cimport pair_s
106
- from sage.rings.integer cimport smallInteger
107
- from cysignals.signals cimport sig_check
105
+ from sage.rings.integer cimport smallInteger
106
+ from cysignals.signals cimport sig_check
108
107
109
108
from .face_data_structure cimport face_len_atoms, face_init, face_free
110
109
from .face_iterator cimport iter_t, parallel_f_vector
@@ -1232,15 +1231,10 @@ cdef class CombinatorialPolyhedron(SageObject):
1232
1231
def f (size_t i ):
1233
1232
return smallInteger(i)
1234
1233
1235
- # Getting the indices of the `i`-th edge.
1236
- cdef pair_s edge
1237
-
1238
- def get_edge (size_t i ):
1239
- edge = self ._edges.get(i)[0 ]
1240
- return (f(edge.first), f(edge.second))
1241
-
1242
1234
cdef size_t j
1243
- return tuple (get_edge(j) for j in range (self ._edges.length))
1235
+ return tuple ((f(self ._edges.get(j).first),
1236
+ f(self ._edges.get(j).second))
1237
+ for j in range (self ._edges.length))
1244
1238
1245
1239
def vertex_graph (self , names = True , algorithm = None ):
1246
1240
r """
@@ -1328,14 +1322,14 @@ cdef class CombinatorialPolyhedron(SageObject):
1328
1322
from sage.matrix.constructor import matrix
1329
1323
cdef Matrix_dense adjacency_matrix = matrix(
1330
1324
ZZ, self .n_Vrepresentation(), self .n_Vrepresentation(), 0 )
1331
- cdef size_t i
1332
- cdef pair_s edge
1325
+ cdef size_t i, first, second
1333
1326
1334
1327
self ._compute_edges(self ._algorithm_to_dual(algorithm))
1335
1328
for i in range (self ._edges.length):
1336
- edge = self ._edges.get(i)[0 ]
1337
- adjacency_matrix.set_unsafe_int(edge.first, edge.second, 1 )
1338
- adjacency_matrix.set_unsafe_int(edge.second, edge.first, 1 )
1329
+ first = self ._edges.get(i).first
1330
+ second = self ._edges.get(i).second
1331
+ adjacency_matrix.set_unsafe_int(first, second, 1 )
1332
+ adjacency_matrix.set_unsafe_int(second, first, 1 )
1339
1333
adjacency_matrix.set_immutable()
1340
1334
return adjacency_matrix
1341
1335
@@ -1458,17 +1452,15 @@ cdef class CombinatorialPolyhedron(SageObject):
1458
1452
def f (size_t i ):
1459
1453
return smallInteger(i)
1460
1454
1461
- cdef pair_s ridge
1462
-
1463
1455
if add_equations and names:
1464
1456
return tuple (
1465
- ((f(self ._ridges.get(i)[ 0 ] .first),) + self .equations(),
1466
- (f(self ._ridges.get(i)[ 0 ] .second),) + self .equations())
1457
+ ((f(self ._ridges.get(i).first),) + self .equations(),
1458
+ (f(self ._ridges.get(i).second),) + self .equations())
1467
1459
for i in range (n_ridges))
1468
1460
else :
1469
1461
return tuple (
1470
- (f(self ._ridges.get(i)[ 0 ] .first),
1471
- f(self ._ridges.get(i)[ 0 ] .second))
1462
+ (f(self ._ridges.get(i).first),
1463
+ f(self ._ridges.get(i).second))
1472
1464
for i in range (n_ridges))
1473
1465
1474
1466
@cached_method
@@ -1514,13 +1506,13 @@ cdef class CombinatorialPolyhedron(SageObject):
1514
1506
cdef Matrix_dense adjacency_matrix = matrix(
1515
1507
ZZ, self .n_facets(), self .n_facets(), 0 )
1516
1508
cdef size_t i
1517
- cdef pair_s ridge
1518
1509
1519
1510
self ._compute_ridges(self ._algorithm_to_dual(algorithm))
1520
1511
for i in range (self ._ridges.length):
1521
- ridge = self ._ridges.get(i)[0 ]
1522
- adjacency_matrix.set_unsafe_int(ridge.first, ridge.second, 1 )
1523
- adjacency_matrix.set_unsafe_int(ridge.second, ridge.first, 1 )
1512
+ first = self ._ridges.get(i).first
1513
+ second = self ._ridges.get(i).second
1514
+ adjacency_matrix.set_unsafe_int(first, second, 1 )
1515
+ adjacency_matrix.set_unsafe_int(second, first, 1 )
1524
1516
adjacency_matrix.set_immutable()
1525
1517
return adjacency_matrix
1526
1518
0 commit comments