@@ -598,7 +598,7 @@ def _precompute_intervals(self):
598
598
"""
599
599
n = self .order ()
600
600
v_up = (frozenset (self .depth_first_search (v )) for v in range (n ))
601
- v_down = [frozenset (self .depth_first_search (v , neighbors = self .neighbors_in ))
601
+ v_down = [frozenset (self .depth_first_search (v , neighbors = self .neighbor_in_iterator ))
602
602
for v in range (n )]
603
603
self ._intervals = [[sorted (up .intersection (down )) for down in v_down ]
604
604
for up in v_up ]
@@ -1232,7 +1232,7 @@ def order_ideal(self, elements):
1232
1232
[0, 1, 2, 3, 4, 5, 6, 7, 8, 10]
1233
1233
"""
1234
1234
return sorted (self .depth_first_search (elements ,
1235
- neighbors = self .neighbors_in ))
1235
+ neighbors = self .neighbor_in_iterator ))
1236
1236
1237
1237
def order_ideal_cardinality (self , elements ):
1238
1238
r"""
@@ -1256,7 +1256,7 @@ def order_ideal_cardinality(self, elements):
1256
1256
continue
1257
1257
size += 1
1258
1258
seen .add (v )
1259
- q .extend (self .neighbors_in (v ))
1259
+ q .extend (self .neighbor_in_iterator (v ))
1260
1260
1261
1261
return ZZ (size )
1262
1262
@@ -2545,9 +2545,9 @@ def common_upper_covers(self, vertices):
2545
2545
sage: H.common_upper_covers([4, 5]) # optional - sage.combinat
2546
2546
[6]
2547
2547
"""
2548
- covers = set (self .neighbors_out (vertices .pop ()))
2548
+ covers = set (self .neighbor_out_iterator (vertices .pop ()))
2549
2549
for v in vertices :
2550
- covers = covers .intersection (self .neighbors_out (v ))
2550
+ covers = covers .intersection (self .neighbor_out_iterator (v ))
2551
2551
return list (covers )
2552
2552
2553
2553
def common_lower_covers (self , vertices ):
@@ -2566,9 +2566,9 @@ def common_lower_covers(self, vertices):
2566
2566
sage: H.common_lower_covers([4, 5]) # optional - sage.combinat
2567
2567
[3]
2568
2568
"""
2569
- covers = set (self .neighbors_in (vertices .pop ()))
2569
+ covers = set (self .neighbor_in_iterator (vertices .pop ()))
2570
2570
for v in vertices :
2571
- covers = covers .intersection (self .neighbors_in (v ))
2571
+ covers = covers .intersection (self .neighbor_in_iterator (v ))
2572
2572
return list (covers )
2573
2573
2574
2574
def _trivial_nonregular_congruence (self ):
@@ -2764,7 +2764,7 @@ def sublattice(elms, e):
2764
2764
break
2765
2765
2766
2766
# Special case to handle at last.
2767
- if len ( self .neighbors_out ( 0 ) ) == 1 :
2767
+ if self .out_degree ( 0 ) == 1 :
2768
2768
result .append (set (range (1 , N )))
2769
2769
2770
2770
return result
@@ -2830,8 +2830,8 @@ def kappa_dual(self, a):
2830
2830
uc = next (self .neighbor_out_iterator (a ))
2831
2831
if self .in_degree (uc ) == 1 :
2832
2832
return uc
2833
- lt_a = set (self .depth_first_search (a , neighbors = self .neighbors_in ))
2834
- tmp = list (self .depth_first_search (uc , neighbors = lambda v : [v_ for v_ in self .neighbor_in_iterator (v ) if v_ not in lt_a ]))
2833
+ lt_a = set (self .depth_first_search (a , neighbors = self .neighbor_in_iterator ))
2834
+ tmp = set (self .depth_first_search (uc , neighbors = lambda v : [v_ for v_ in self .neighbor_in_iterator (v ) if v_ not in lt_a ]))
2835
2835
result = None
2836
2836
for e in tmp :
2837
2837
if all (x not in tmp for x in self .neighbor_in_iterator (e )):
@@ -2990,7 +2990,7 @@ def neutral_elements(self):
2990
2990
2991
2991
def is_neutral (a ):
2992
2992
noncomp = all_elements .difference (self .depth_first_search (a ))
2993
- noncomp .difference_update (self .depth_first_search (a , neighbors = self .neighbors_in ))
2993
+ noncomp .difference_update (self .depth_first_search (a , neighbors = self .neighbor_in_iterator ))
2994
2994
2995
2995
for x in noncomp .intersection (todo ):
2996
2996
meet_ax = mt [a , x ]
@@ -3071,7 +3071,7 @@ def kappa(self, a):
3071
3071
if self .out_degree (lc ) == 1 :
3072
3072
return lc
3073
3073
gt_a = set (self .depth_first_search (a ))
3074
- tmp = list (self .depth_first_search (lc , neighbors = lambda v : [v_ for v_ in self .neighbor_out_iterator (v ) if v_ not in gt_a ]))
3074
+ tmp = set (self .depth_first_search (lc , neighbors = lambda v : [v_ for v_ in self .neighbor_out_iterator (v ) if v_ not in gt_a ]))
3075
3075
result = None
3076
3076
for e in tmp :
3077
3077
if all (x not in tmp for x in self .neighbor_out_iterator (e )):
@@ -3346,9 +3346,9 @@ def find_nontrivial_congruence(self):
3346
3346
join_irreducibles = [v for v in self if self .in_degree (v ) == 1 ]
3347
3347
meet_irreducibles = [v for v in self if self .out_degree (v ) == 1 ]
3348
3348
if len (join_irreducibles ) < len (meet_irreducibles ):
3349
- irr = [(v , self .neighbors_in (v )[ 0 ] ) for v in join_irreducibles ]
3349
+ irr = [(v , next ( self .neighbor_in_iterator (v )) ) for v in join_irreducibles ]
3350
3350
else :
3351
- irr = [(self .neighbors_out (v )[ 0 ] , v ) for v in meet_irreducibles ]
3351
+ irr = [(next ( self .neighbor_out_iterator (v )) , v ) for v in meet_irreducibles ]
3352
3352
irr .sort (key = lambda x : x [0 ] - x [1 ])
3353
3353
tried = []
3354
3354
for pair in irr :
0 commit comments