passagemath-combinat 10.6.1rc3__cp311-cp311-win_amd64.whl → 10.6.44__cp311-cp311-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. passagemath_combinat/__init__.py +3 -0
  2. passagemath_combinat-10.6.44.dist-info/DELVEWHEEL +2 -0
  3. {passagemath_combinat-10.6.1rc3.dist-info → passagemath_combinat-10.6.44.dist-info}/METADATA +30 -23
  4. {passagemath_combinat-10.6.1rc3.dist-info → passagemath_combinat-10.6.44.dist-info}/RECORD +76 -75
  5. passagemath_combinat-10.6.44.dist-info/top_level.txt +3 -0
  6. passagemath_combinat.libs/libgmp-10-20eff6468ebffd10e3a6f0c3780fee4e.dll +0 -0
  7. passagemath_combinat.libs/{libsymmetrica-3-1e2c5e20489b005650f13ca8d6065d77.dll → libsymmetrica-3-fa8ae274cd9618eec4c7c5aca1f11bc7.dll} +0 -0
  8. sage/algebras/all.py +0 -1
  9. sage/algebras/nil_coxeter_algebra.py +1 -1
  10. sage/all__sagemath_combinat.py +3 -3
  11. sage/combinat/chas/fsym.py +2 -2
  12. sage/combinat/cluster_complex.py +1 -1
  13. sage/combinat/colored_permutations.py +1 -1
  14. sage/combinat/crystals/letters.cp311-win_amd64.pyd +0 -0
  15. sage/combinat/crystals/pbw_datum.cp311-win_amd64.pyd +0 -0
  16. sage/combinat/crystals/spins.cp311-win_amd64.pyd +0 -0
  17. sage/combinat/crystals/tensor_product_element.cp311-win_amd64.pyd +0 -0
  18. sage/combinat/debruijn_sequence.cp311-win_amd64.pyd +0 -0
  19. sage/combinat/degree_sequences.cp311-win_amd64.pyd +0 -0
  20. sage/combinat/degree_sequences.pyx +2 -2
  21. sage/combinat/diagram_algebras.py +1 -1
  22. sage/combinat/expnums.cp311-win_amd64.pyd +0 -0
  23. sage/combinat/fast_vector_partitions.cp311-win_amd64.pyd +0 -0
  24. sage/combinat/gelfand_tsetlin_patterns.py +1 -1
  25. sage/combinat/growth.py +4 -4
  26. sage/combinat/matrices/hadamard_matrix.py +15 -11
  27. sage/combinat/ncsf_qsym/ncsf.py +8 -8
  28. sage/combinat/parallelogram_polyomino.py +14 -14
  29. sage/combinat/partition_algebra.py +18 -16
  30. sage/combinat/path_tableaux/dyck_path.py +1 -1
  31. sage/combinat/path_tableaux/semistandard.py +1 -1
  32. sage/combinat/plane_partition.py +1 -1
  33. sage/combinat/q_bernoulli.cp311-win_amd64.pyd +0 -0
  34. sage/combinat/quickref.py +1 -1
  35. sage/combinat/ribbon_shaped_tableau.py +1 -1
  36. sage/combinat/rigged_configurations/rigged_partition.cp311-win_amd64.pyd +0 -0
  37. sage/combinat/set_partition_iterator.cp311-win_amd64.pyd +0 -0
  38. sage/combinat/sf/character.py +7 -7
  39. sage/combinat/sf/classical.py +1 -1
  40. sage/combinat/sf/dual.py +2 -2
  41. sage/combinat/sf/hall_littlewood.py +6 -6
  42. sage/combinat/sf/hecke.py +1 -1
  43. sage/combinat/sf/jack.py +5 -5
  44. sage/combinat/sf/k_dual.py +25 -12
  45. sage/combinat/sf/llt.py +28 -10
  46. sage/combinat/sf/monomial.py +1 -1
  47. sage/combinat/sf/orthogonal.py +1 -1
  48. sage/combinat/sf/orthotriang.py +2 -2
  49. sage/combinat/sf/schur.py +14 -7
  50. sage/combinat/sf/sf.py +22 -15
  51. sage/combinat/sf/symplectic.py +1 -1
  52. sage/combinat/skew_partition.py +2 -2
  53. sage/combinat/sloane_functions.py +5 -3
  54. sage/combinat/species/cycle_species.py +2 -2
  55. sage/combinat/subword_complex_c.cp311-win_amd64.pyd +0 -0
  56. sage/combinat/symmetric_group_algebra.py +1 -1
  57. sage/combinat/symmetric_group_representations.py +16 -4
  58. sage/combinat/tableau.py +1 -1
  59. sage/combinat/tiling.py +19 -19
  60. sage/combinat/triangles_FHM.py +1 -0
  61. sage/combinat/tutorial.py +5 -5
  62. sage/combinat/words/finite_word.py +5 -4
  63. sage/combinat/words/word.py +24 -16
  64. sage/combinat/words/word_char.cp311-win_amd64.pyd +0 -0
  65. sage/combinat/words/word_datatypes.cp311-win_amd64.pyd +0 -0
  66. sage/combinat/words/word_generators.py +1 -1
  67. sage/databases/findstat.py +1 -1
  68. sage/games/sudoku_backtrack.cp311-win_amd64.pyd +0 -0
  69. sage/libs/symmetrica/symmetrica.cp311-win_amd64.pyd +0 -0
  70. sage/libs/symmetrica/symmetrica.pxi +1 -0
  71. sage/monoids/free_abelian_monoid_element.cp311-win_amd64.pyd +0 -0
  72. sage/monoids/string_monoid.py +8 -0
  73. sage/monoids/string_monoid_element.py +9 -2
  74. sage/monoids/string_ops.py +1 -1
  75. sage/sat/solvers/satsolver.cp311-win_amd64.pyd +0 -0
  76. passagemath_combinat-10.6.1rc3.dist-info/DELVEWHEEL +0 -2
  77. passagemath_combinat-10.6.1rc3.dist-info/top_level.txt +0 -2
  78. passagemath_combinat.libs/libgmp-10-bc1853bff119db9ebb9e2560702badbf.dll +0 -0
  79. {passagemath_combinat-10.6.1rc3.dist-info → passagemath_combinat-10.6.44.dist-info}/WHEEL +0 -0
@@ -244,9 +244,9 @@ The sequences produced by random graphs *are* degree sequences::
244
244
 
245
245
  Checking that we indeed enumerate *all* the degree sequences for `n=5`::
246
246
 
247
- sage: ds1 = Set([tuple(g.degree_sequence()) for g in graphs(5)]) # needs sage.graphs
247
+ sage: ds1 = Set([tuple(g.degree_sequence()) for g in graphs(5)]) # needs nauty sage.graphs
248
248
  sage: ds2 = Set(map(tuple,list(DegreeSequences(5))))
249
- sage: ds1 == ds2 # needs sage.graphs
249
+ sage: ds1 == ds2 # needs nauty sage.graphs
250
250
  True
251
251
 
252
252
  Checking the consistency of enumeration and test::
@@ -358,7 +358,7 @@ class AbstractPartitionDiagram(AbstractSetPartition):
358
358
  sage: pd2 = da.AbstractPartitionDiagram(pd, [[[1,2],[-1,-2]]]) # indirect doctest
359
359
  Traceback (most recent call last):
360
360
  ...
361
- TypeError: unhashable type: 'list'
361
+ TypeError: ...unhashable type: 'list'...
362
362
  """
363
363
  if self._base_diagram:
364
364
  tst = frozenset(e for B in self._base_diagram for e in B)
Binary file
@@ -521,7 +521,7 @@ class GelfandTsetlinPattern(ClonableArray,
521
521
 
522
522
  sage: G = GelfandTsetlinPattern([[3,2,0],[2.2,0],[2]])
523
523
  sage: G.bender_knuth_involution(2)
524
- [[3, 2, 0], [2.80000000000000, 2], [2]]
524
+ [[3, 2, 0], [2.8..., 2], [2]]
525
525
 
526
526
  TESTS::
527
527
 
sage/combinat/growth.py CHANGED
@@ -2427,6 +2427,7 @@ class RuleLLMS(Rule):
2427
2427
 
2428
2428
  EXAMPLES::
2429
2429
 
2430
+ sage: # needs sage.modules
2430
2431
  sage: LLMS4 = GrowthDiagram.rules.LLMS(4)
2431
2432
  sage: v = LLMS4.vertices(3)[1]; v
2432
2433
  [2, 1]
@@ -3711,12 +3712,12 @@ class RuleRSK(RulePartitions):
3711
3712
  Instead of passing the rule to :class:`GrowthDiagram`, we can
3712
3713
  also call the rule to create growth diagrams. For example::
3713
3714
 
3715
+ sage: # needs sage.modules
3714
3716
  sage: m = matrix([[0,0,0,0,1],[1,1,0,2,0], [0,3,0,0,0]])
3715
3717
  sage: G = RuleRSK(m); G
3716
3718
  0 0 0 0 1
3717
3719
  1 1 0 2 0
3718
3720
  0 3 0 0 0
3719
-
3720
3721
  sage: ascii_art([G.P_symbol(), G.Q_symbol()])
3721
3722
  [ 1 2 2 2 3 1 2 2 2 2 ]
3722
3723
  [ 2 3 4 4 ]
@@ -3736,13 +3737,12 @@ class RuleRSK(RulePartitions):
3736
3737
  Because the of the coordinate conventions in
3737
3738
  :func:`~sage.combinat.rsk.RSK`, we have to transpose matrices::
3738
3739
 
3740
+ sage: # needs sage.modules
3739
3741
  sage: [G.P_symbol(), G.Q_symbol()] == RSK(m.transpose())
3740
3742
  True
3741
-
3742
3743
  sage: n = 5; l = [(pi, RuleRSK(pi)) for pi in Permutations(n)]
3743
3744
  sage: all([G.P_symbol(), G.Q_symbol()] == RSK(pi) for pi, G in l)
3744
3745
  True
3745
-
3746
3746
  sage: n = 5; l = [(w, RuleRSK(w)) for w in Words([1,2,3], 5)]
3747
3747
  sage: all([G.P_symbol(), G.Q_symbol()] == RSK(pi) for pi, G in l)
3748
3748
  True
@@ -3876,12 +3876,12 @@ class RuleBurge(RulePartitions):
3876
3876
  Instead of passing the rule to :class:`GrowthDiagram`, we can
3877
3877
  also call the rule to create growth diagrams. For example::
3878
3878
 
3879
+ sage: # needs sage.modules
3879
3880
  sage: m = matrix([[2,0,0,1,0],[1,1,0,0,0], [0,0,0,0,3]])
3880
3881
  sage: G = Burge(m); G
3881
3882
  2 0 0 1 0
3882
3883
  1 1 0 0 0
3883
3884
  0 0 0 0 3
3884
-
3885
3885
  sage: ascii_art([G.P_symbol(), G.Q_symbol()])
3886
3886
  [ 1 2 3 1 2 5 ]
3887
3887
  [ 1 3 1 5 ]
@@ -350,20 +350,21 @@ def hadamard_matrix_from_symmetric_conference_matrix(n, existence=False, check=T
350
350
  By default the function returns the Hadamard matrix ::
351
351
 
352
352
  sage: from sage.combinat.matrices.hadamard_matrix import hadamard_matrix_from_symmetric_conference_matrix
353
- sage: hadamard_matrix_from_symmetric_conference_matrix(20)
353
+ sage: hadamard_matrix_from_symmetric_conference_matrix(20) # needs database_graphs
354
354
  20 x 20 dense matrix over Integer Ring...
355
355
 
356
356
  If ``existence`` is set to True, the function returns True if the matrix exists,
357
357
  False if the conference matrix does not exist, and Unknown if the conference
358
358
  matrix cannot be constructed yet ::
359
359
 
360
- sage: hadamard_matrix_from_symmetric_conference_matrix(12, existence=True)
360
+ sage: hadamard_matrix_from_symmetric_conference_matrix(12, existence=True) # needs database_graphs
361
361
  True
362
- sage: hadamard_matrix_from_symmetric_conference_matrix(4*787, existence=True)
362
+ sage: hadamard_matrix_from_symmetric_conference_matrix(4*787, existence=True) # needs database_graphs
363
363
  True
364
364
 
365
365
  TESTS::
366
366
 
367
+ sage: # needs database_graphs
367
368
  sage: from sage.combinat.matrices.hadamard_matrix import is_hadamard_matrix
368
369
  sage: is_hadamard_matrix(hadamard_matrix_from_symmetric_conference_matrix(60, check=False))
369
370
  True
@@ -430,16 +431,17 @@ def hadamard_matrix_miyamoto_construction(n, existence=False, check=True):
430
431
  By default the function returns the Hadamard matrix ::
431
432
 
432
433
  sage: from sage.combinat.matrices.hadamard_matrix import hadamard_matrix_miyamoto_construction
433
- sage: hadamard_matrix_miyamoto_construction(20)
434
+ sage: hadamard_matrix_miyamoto_construction(20) # needs database_graphs
434
435
  20 x 20 dense matrix over Integer Ring...
435
436
 
436
437
  If ``existence`` is set to True, the function returns a boolean ::
437
438
 
438
- sage: hadamard_matrix_miyamoto_construction(36, existence=True)
439
+ sage: hadamard_matrix_miyamoto_construction(36, existence=True) # needs database_graphs
439
440
  True
440
441
 
441
442
  TESTS::
442
443
 
444
+ sage: # needs database_graphs
443
445
  sage: from sage.combinat.matrices.hadamard_matrix import is_hadamard_matrix
444
446
  sage: is_hadamard_matrix(hadamard_matrix_miyamoto_construction(68, check=False))
445
447
  True
@@ -1808,7 +1810,7 @@ def hadamard_matrix(n, existence=False, check=True, construction_name=False):
1808
1810
  False
1809
1811
  sage: matrix.hadamard(12,existence=True)
1810
1812
  True
1811
- sage: matrix.hadamard(668,existence=True)
1813
+ sage: matrix.hadamard(668,existence=True) # needs database_graphs
1812
1814
  Unknown
1813
1815
  sage: matrix.hadamard(10)
1814
1816
  Traceback (most recent call last):
@@ -1960,7 +1962,7 @@ def hadamard_matrix_www(url_file, comments=False):
1960
1962
  [ 1 -1 -1 1 1 1 -1 -1 -1 1 1 -1 -1 -1 1 1]
1961
1963
  [ 1 -1 -1 1 -1 -1 1 1 -1 1 1 -1 1 1 -1 -1]
1962
1964
  """
1963
- n = eval(url_file.split(".")[1])
1965
+ n = int(url_file.split(".")[1])
1964
1966
  rws = []
1965
1967
  url = "http://neilsloane.com/hadamard/" + url_file
1966
1968
  with urlopen(url) as f:
@@ -2037,7 +2039,7 @@ def regular_symmetric_hadamard_matrix_with_constant_diagonal(n, e, existence=Fal
2037
2039
 
2038
2040
  Recursive construction::
2039
2041
 
2040
- sage: regular_symmetric_hadamard_matrix_with_constant_diagonal(144,-1)
2042
+ sage: regular_symmetric_hadamard_matrix_with_constant_diagonal(144,-1) # needs database_graphs
2041
2043
  144 x 144 dense matrix over Integer Ring (use the '.str()' method to see the entries)
2042
2044
 
2043
2045
  REFERENCE:
@@ -3378,7 +3380,7 @@ def symmetric_conference_matrix(n, check=True, existence=False):
3378
3380
  EXAMPLES::
3379
3381
 
3380
3382
  sage: from sage.combinat.matrices.hadamard_matrix import symmetric_conference_matrix
3381
- sage: C = symmetric_conference_matrix(10); C
3383
+ sage: C = symmetric_conference_matrix(10); C # needs database_graphs
3382
3384
  [ 0 1 1 1 1 1 1 1 1 1]
3383
3385
  [ 1 0 -1 -1 1 -1 1 1 1 -1]
3384
3386
  [ 1 -1 0 -1 1 1 -1 -1 1 1]
@@ -3389,7 +3391,7 @@ def symmetric_conference_matrix(n, check=True, existence=False):
3389
3391
  [ 1 1 -1 1 1 1 -1 0 -1 -1]
3390
3392
  [ 1 1 1 -1 -1 1 1 -1 0 -1]
3391
3393
  [ 1 -1 1 1 1 -1 1 -1 -1 0]
3392
- sage: C^2 == 9*identity_matrix(10) and C == C.T
3394
+ sage: C^2 == 9*identity_matrix(10) and C == C.T # needs database_graphs
3393
3395
  True
3394
3396
  """
3395
3397
  from sage.graphs.strongly_regular_db import strongly_regular_graph as srg
@@ -3505,6 +3507,7 @@ def rshcd_from_prime_power_and_conference_matrix(n):
3505
3507
 
3506
3508
  A 36x36 example ::
3507
3509
 
3510
+ sage: # needs database_graphs
3508
3511
  sage: from sage.combinat.matrices.hadamard_matrix import rshcd_from_prime_power_and_conference_matrix
3509
3512
  sage: from sage.combinat.matrices.hadamard_matrix import is_hadamard_matrix
3510
3513
  sage: H = rshcd_from_prime_power_and_conference_matrix(7); H
@@ -3514,6 +3517,7 @@ def rshcd_from_prime_power_and_conference_matrix(n):
3514
3517
 
3515
3518
  Bigger examples, only provided by this construction ::
3516
3519
 
3520
+ sage: # needs database_graphs
3517
3521
  sage: H = rshcd_from_prime_power_and_conference_matrix(27) # long time
3518
3522
  sage: H == H.T and is_hadamard_matrix(H) # long time
3519
3523
  True
@@ -3522,7 +3526,7 @@ def rshcd_from_prime_power_and_conference_matrix(n):
3522
3526
 
3523
3527
  In this example the conference matrix is not Paley, as 45 is not a prime power ::
3524
3528
 
3525
- sage: H = rshcd_from_prime_power_and_conference_matrix(47) # not tested (long time)
3529
+ sage: H = rshcd_from_prime_power_and_conference_matrix(47) # not tested (long time), needs database_graphs
3526
3530
 
3527
3531
  REFERENCE:
3528
3532
 
@@ -576,7 +576,7 @@ class NonCommutativeSymmetricFunctions(UniqueRepresentation, Parent):
576
576
 
577
577
  EXAMPLES::
578
578
 
579
- sage: # needs lrcalc
579
+ sage: # needs lrcalc_python
580
580
  sage: N = NonCommutativeSymmetricFunctions(QQ)
581
581
  sage: R = N.ribbon()
582
582
  sage: x = R.an_element(); x
@@ -1044,7 +1044,7 @@ class NonCommutativeSymmetricFunctions(UniqueRepresentation, Parent):
1044
1044
 
1045
1045
  Testing the `\pi(f^{\ast}) = \pi(f)` relation noticed above::
1046
1046
 
1047
- sage: # needs lrcalc
1047
+ sage: # needs lrcalc_python
1048
1048
  sage: NSym = NonCommutativeSymmetricFunctions(QQ)
1049
1049
  sage: R = NSym.R()
1050
1050
  sage: all( R(I).star_involution().to_symmetric_function()
@@ -1170,7 +1170,7 @@ class NonCommutativeSymmetricFunctions(UniqueRepresentation, Parent):
1170
1170
  Testing the `\pi(\omega(f)) = \omega(\pi(f))` relation noticed
1171
1171
  above::
1172
1172
 
1173
- sage: # needs lrcalc
1173
+ sage: # needs lrcalc_python
1174
1174
  sage: NSym = NonCommutativeSymmetricFunctions(QQ)
1175
1175
  sage: R = NSym.R()
1176
1176
  sage: all( R(I).omega_involution().to_symmetric_function()
@@ -1284,7 +1284,7 @@ class NonCommutativeSymmetricFunctions(UniqueRepresentation, Parent):
1284
1284
 
1285
1285
  sage: NSym = NonCommutativeSymmetricFunctions(QQ)
1286
1286
  sage: R = NSym.R()
1287
- sage: all( R(I).psi_involution().to_symmetric_function()
1287
+ sage: all( R(I).psi_involution().to_symmetric_function() # needs lrcalc_python
1288
1288
  ....: == R(I).to_symmetric_function().omega()
1289
1289
  ....: for I in Compositions(4) )
1290
1290
  True
@@ -1296,7 +1296,7 @@ class NonCommutativeSymmetricFunctions(UniqueRepresentation, Parent):
1296
1296
  sage: M = QSym.M()
1297
1297
  sage: NSym = NonCommutativeSymmetricFunctions(QQ)
1298
1298
  sage: S = NSym.S()
1299
- sage: all( all( M(I).psi_involution().duality_pairing(S(J))
1299
+ sage: all( all( M(I).psi_involution().duality_pairing(S(J)) # needs lrcalc_python
1300
1300
  ....: == M(I).duality_pairing(S(J).psi_involution())
1301
1301
  ....: for I in Compositions(2) )
1302
1302
  ....: for J in Compositions(3) )
@@ -1497,7 +1497,7 @@ class NonCommutativeSymmetricFunctions(UniqueRepresentation, Parent):
1497
1497
  ....: if x != y:
1498
1498
  ....: return False
1499
1499
  ....: return True
1500
- sage: testpi(3) # needs lrcalc
1500
+ sage: testpi(3) # needs lrcalc_python
1501
1501
  True
1502
1502
 
1503
1503
  TESTS::
@@ -1682,7 +1682,7 @@ class NonCommutativeSymmetricFunctions(UniqueRepresentation, Parent):
1682
1682
 
1683
1683
  EXAMPLES::
1684
1684
 
1685
- sage: # needs lrcalc
1685
+ sage: # needs lrcalc_python
1686
1686
  sage: N = NonCommutativeSymmetricFunctions(QQ)
1687
1687
  sage: R = N.ribbon()
1688
1688
  sage: x = R.an_element(); x
@@ -2669,7 +2669,7 @@ class NonCommutativeSymmetricFunctions(UniqueRepresentation, Parent):
2669
2669
 
2670
2670
  EXAMPLES::
2671
2671
 
2672
- sage: # needs lrcalc
2672
+ sage: # needs lrcalc_python
2673
2673
  sage: R = NonCommutativeSymmetricFunctions(QQ).R()
2674
2674
  sage: R.to_symmetric_function_on_basis(Composition([3,1,1]))
2675
2675
  s[3, 1, 1]
@@ -569,7 +569,7 @@ class _drawing_tool:
569
569
 
570
570
  EXAMPLES::
571
571
 
572
- sage: # needs sage.plot
572
+ sage: # needs sage.plot sage.symbolic
573
573
  sage: from sage.combinat.parallelogram_polyomino import (
574
574
  ....: _drawing_tool, default_tikz_options,
575
575
  ....: ParallelogramPolyominoesOptions
@@ -606,7 +606,7 @@ class _drawing_tool:
606
606
 
607
607
  EXAMPLES::
608
608
 
609
- sage: # needs sage.plot
609
+ sage: # needs sage.plot sage.symbolic
610
610
  sage: from sage.combinat.parallelogram_polyomino import (
611
611
  ....: _drawing_tool, default_tikz_options,
612
612
  ....: ParallelogramPolyominoesOptions
@@ -645,7 +645,7 @@ class _drawing_tool:
645
645
 
646
646
  EXAMPLES::
647
647
 
648
- sage: # needs sage.plot
648
+ sage: # needs sage.plot sage.symbolic
649
649
  sage: from sage.combinat.parallelogram_polyomino import (
650
650
  ....: _drawing_tool, ParallelogramPolyominoesOptions
651
651
  ....: )
@@ -756,7 +756,7 @@ class _drawing_tool:
756
756
 
757
757
  EXAMPLES::
758
758
 
759
- sage: # needs sage.plot
759
+ sage: # needs sage.plot sage.symbolic
760
760
  sage: from sage.combinat.parallelogram_polyomino import (
761
761
  ....: _drawing_tool, ParallelogramPolyominoesOptions
762
762
  ....: )
@@ -796,7 +796,7 @@ class _drawing_tool:
796
796
 
797
797
  EXAMPLES::
798
798
 
799
- sage: # needs sage.plot
799
+ sage: # needs sage.plot sage.symbolic
800
800
  sage: from sage.combinat.parallelogram_polyomino import (
801
801
  ....: _drawing_tool, ParallelogramPolyominoesOptions
802
802
  ....: )
@@ -833,7 +833,7 @@ class _drawing_tool:
833
833
 
834
834
  EXAMPLES::
835
835
 
836
- sage: # needs sage.plot
836
+ sage: # needs sage.plot sage.symbolic
837
837
  sage: from sage.combinat.parallelogram_polyomino import (
838
838
  ....: _drawing_tool, ParallelogramPolyominoesOptions
839
839
  ....: )
@@ -1463,7 +1463,7 @@ class ParallelogramPolyomino(ClonableList,
1463
1463
  ....: [1, 1, 0, 1, 1, 0, 0, 0, 1, 0]
1464
1464
  ....: ]
1465
1465
  ....: )
1466
- sage: pp._to_binary_tree_Aval_Boussicault()
1466
+ sage: pp._to_binary_tree_Aval_Boussicault() # needs sage.graphs
1467
1467
  [[., [[., .], [[., [., .]], .]]], [[., .], .]]
1468
1468
 
1469
1469
  sage: pp = ParallelogramPolyomino([[0, 1], [1, 0]])
@@ -1522,7 +1522,7 @@ class ParallelogramPolyomino(ClonableList,
1522
1522
  ....: [1, 1, 0, 1, 1, 0, 0, 0, 1, 0]
1523
1523
  ....: ]
1524
1524
  ....: )
1525
- sage: pp.to_binary_tree()
1525
+ sage: pp.to_binary_tree() # needs sage.graphs
1526
1526
  [[., [[., .], [[., [., .]], .]]], [[., .], .]]
1527
1527
 
1528
1528
  sage: pp = ParallelogramPolyomino([[0, 1], [1, 0]])
@@ -2703,7 +2703,7 @@ class ParallelogramPolyomino(ClonableList,
2703
2703
 
2704
2704
  TESTS::
2705
2705
 
2706
- sage: # needs sage.plot
2706
+ sage: # needs sage.plot sage.symbolic
2707
2707
  sage: pp = ParallelogramPolyomino(
2708
2708
  ....: [[0, 0, 1, 0, 0, 0, 1, 1], [1, 0, 1, 1, 0, 0, 0, 0]]
2709
2709
  ....: )
@@ -2772,7 +2772,7 @@ class ParallelogramPolyomino(ClonableList,
2772
2772
 
2773
2773
  TESTS::
2774
2774
 
2775
- sage: # needs sage.plot
2775
+ sage: # needs sage.plot sage.symbolic
2776
2776
  sage: pp = ParallelogramPolyomino(
2777
2777
  ....: [[0, 0, 0, 1, 1, 0, 1, 1], [1, 0, 1, 1, 0, 1, 0, 0]]
2778
2778
  ....: )
@@ -2886,7 +2886,7 @@ class ParallelogramPolyomino(ClonableList,
2886
2886
 
2887
2887
  TESTS::
2888
2888
 
2889
- sage: # needs sage.plot
2889
+ sage: # needs sage.plot sage.symbolic
2890
2890
  sage: pp = ParallelogramPolyomino(
2891
2891
  ....: [[0, 0, 0, 1, 1, 0, 1, 1], [1, 0, 1, 1, 0, 1, 0, 0]]
2892
2892
  ....: )
@@ -3509,7 +3509,7 @@ class ParallelogramPolyomino(ClonableList,
3509
3509
 
3510
3510
  EXAMPLES::
3511
3511
 
3512
- sage: # needs sage.plot
3512
+ sage: # needs sage.plot sage.symbolic
3513
3513
  sage: pp = ParallelogramPolyomino(
3514
3514
  ....: [[0,0,0,1,1,0,1,0,0,1,1,1],[1,1,1,0,0,1,1,0,0,1,0,0]]
3515
3515
  ....: )
@@ -3887,7 +3887,7 @@ class ParallelogramPolyomino(ClonableList,
3887
3887
 
3888
3888
  EXAMPLES::
3889
3889
 
3890
- sage: # needs sage.plot
3890
+ sage: # needs sage.plot sage.symbolic
3891
3891
  sage: pp = ParallelogramPolyomino([[0,1],[1,0]])
3892
3892
  sage: latex(pp)
3893
3893
  <BLANKLINE>
@@ -3906,7 +3906,7 @@ class ParallelogramPolyomino(ClonableList,
3906
3906
 
3907
3907
  EXAMPLES::
3908
3908
 
3909
- sage: # needs sage.plot
3909
+ sage: # needs sage.plot sage.symbolic
3910
3910
  sage: pp = ParallelogramPolyomino([[0,1],[1,0]])
3911
3911
  sage: print(pp._latex_drawing())
3912
3912
  <BLANKLINE>
@@ -115,10 +115,10 @@ def SetPartitionsAk(k):
115
115
  {{1, 2, 3, -1, -3, -2}}
116
116
  sage: A3.last() #random
117
117
  {{-1}, {-2}, {3}, {1}, {-3}, {2}}
118
- sage: A3.random_element() #random
118
+ sage: A3.random_element() #random # needs sage.symbolic
119
119
  {{1, 3, -3, -1}, {2, -2}}
120
120
 
121
- sage: A3.cardinality()
121
+ sage: A3.cardinality() # needs sage.libs.flint
122
122
  203
123
123
 
124
124
  sage: A2p5 = SetPartitionsAk(2.5); A2p5
@@ -130,7 +130,7 @@ def SetPartitionsAk(k):
130
130
  {{1, 2, 3, -1, -3, -2}}
131
131
  sage: A2p5.last() #random
132
132
  {{-1}, {-2}, {2}, {3, -3}, {1}}
133
- sage: A2p5.random_element() #random
133
+ sage: A2p5.random_element() #random # needs sage.symbolic
134
134
  {{-1}, {-2}, {3, -3}, {1, 2}}
135
135
  """
136
136
  is_int, k = _int_or_half_int(k)
@@ -272,7 +272,7 @@ def SetPartitionsSk(k):
272
272
  {{2, -2}, {3, -3}, {1, -1}}
273
273
  sage: S3.last() #random
274
274
  {{1, -3}, {2, -2}, {3, -1}}
275
- sage: S3.random_element() #random
275
+ sage: S3.random_element() #random # needs sage.symbolic
276
276
  {{1, -3}, {2, -1}, {3, -2}}
277
277
 
278
278
  sage: S3p5 = SetPartitionsSk(3.5); S3p5
@@ -291,7 +291,7 @@ def SetPartitionsSk(k):
291
291
  {{2, -2}, {3, -3}, {1, -1}, {4, -4}}
292
292
  sage: S3p5.last() #random
293
293
  {{1, -3}, {2, -2}, {4, -4}, {3, -1}}
294
- sage: S3p5.random_element() #random
294
+ sage: S3p5.random_element() #random # needs sage.symbolic
295
295
  {{1, -3}, {2, -2}, {4, -4}, {3, -1}}
296
296
  """
297
297
  is_int, k = _int_or_half_int(k)
@@ -460,7 +460,7 @@ def SetPartitionsIk(k):
460
460
  {{1, 2, 3, -1, -3, -2}}
461
461
  sage: I3.last() #random
462
462
  {{-1}, {-2}, {3}, {1}, {-3}, {2}}
463
- sage: I3.random_element() #random
463
+ sage: I3.random_element() #random # needs sage.symbolic
464
464
  {{-1}, {-3, -2}, {2, 3}, {1}}
465
465
 
466
466
  sage: I2p5 = SetPartitionsIk(2.5); I2p5
@@ -472,7 +472,7 @@ def SetPartitionsIk(k):
472
472
  {{1, 2, 3, -1, -3, -2}}
473
473
  sage: I2p5.last() #random
474
474
  {{-1}, {-2}, {2}, {3, -3}, {1}}
475
- sage: I2p5.random_element() #random
475
+ sage: I2p5.random_element() #random # needs sage.symbolic
476
476
  {{-1}, {-2}, {1, 3, -3}, {2}}
477
477
  """
478
478
  is_int, k = _int_or_half_int(k)
@@ -616,11 +616,12 @@ def SetPartitionsBk(k):
616
616
  sage: B3 = SetPartitionsBk(3); B3
617
617
  Set partitions of {1, ..., 3, -1, ..., -3} with block size 2
618
618
 
619
+ sage: # needs sage.graphs
619
620
  sage: B3.first() #random
620
621
  {{2, -2}, {1, -3}, {3, -1}}
621
622
  sage: B3.last() #random
622
623
  {{1, 2}, {3, -2}, {-3, -1}}
623
- sage: B3.random_element() #random
624
+ sage: B3.random_element() #random # needs sage.symbolic
624
625
  {{2, -1}, {1, -3}, {3, -2}}
625
626
 
626
627
  sage: B3.cardinality()
@@ -629,11 +630,12 @@ def SetPartitionsBk(k):
629
630
  sage: B2p5 = SetPartitionsBk(2.5); B2p5
630
631
  Set partitions of {1, ..., 3, -1, ..., -3} with 3 and -3 in the same block and with block size 2
631
632
 
633
+ sage: # needs sage.graphs
632
634
  sage: B2p5.first() #random
633
635
  {{2, -1}, {3, -3}, {1, -2}}
634
636
  sage: B2p5.last() #random
635
637
  {{1, 2}, {3, -3}, {-1, -2}}
636
- sage: B2p5.random_element() #random
638
+ sage: B2p5.random_element() #random # needs sage.symbolic
637
639
  {{2, -2}, {3, -3}, {1, -1}}
638
640
 
639
641
  sage: B2p5.cardinality()
@@ -703,14 +705,14 @@ class SetPartitionsBk_k(SetPartitionsAk_k):
703
705
  """
704
706
  TESTS::
705
707
 
706
- sage: SetPartitionsBk(1).list()
708
+ sage: SetPartitionsBk(1).list() # needs sage.graphs
707
709
  [{{-1, 1}}]
708
710
 
709
711
  ::
710
712
 
711
- sage: SetPartitionsBk(2).list() #random
713
+ sage: SetPartitionsBk(2).list() #random # needs sage.graphs
712
714
  [{{2, -1}, {1, -2}}, {{2, -2}, {1, -1}}, {{1, 2}, {-1, -2}}]
713
- sage: SetPartitionsBk(3).list() #random
715
+ sage: SetPartitionsBk(3).list() #random # needs sage.graphs
714
716
  [{{2, -2}, {1, -3}, {3, -1}},
715
717
  {{2, -1}, {1, -3}, {3, -2}},
716
718
  {{1, -3}, {2, 3}, {-1, -2}},
@@ -733,7 +735,7 @@ class SetPartitionsBk_k(SetPartitionsAk_k):
733
735
  ::
734
736
 
735
737
  sage: bks = [SetPartitionsBk(i) for i in range(1, 6)]
736
- sage: all(bk.cardinality() == len(bk.list()) for bk in bks)
738
+ sage: all(bk.cardinality() == len(bk.list()) for bk in bks) # needs sage.graphs
737
739
  True
738
740
  """
739
741
  for sp in SetPartitions(self._set, [2] * (len(self._set) // 2)):
@@ -833,7 +835,7 @@ def SetPartitionsPk(k):
833
835
  {{1, 2, 3, -1, -3, -2}}
834
836
  sage: P3.last() #random
835
837
  {{-1}, {-2}, {3}, {1}, {-3}, {2}}
836
- sage: P3.random_element() #random
838
+ sage: P3.random_element() #random # needs sage.symbolic
837
839
  {{1, 2, -1}, {-3}, {3, -2}}
838
840
 
839
841
  sage: P2p5 = SetPartitionsPk(2.5); P2p5
@@ -845,7 +847,7 @@ def SetPartitionsPk(k):
845
847
  {{1, 2, 3, -1, -3, -2}}
846
848
  sage: P2p5.last() #random
847
849
  {{-1}, {-2}, {2}, {3, -3}, {1}}
848
- sage: P2p5.random_element() #random
850
+ sage: P2p5.random_element() #random # needs sage.symbolic
849
851
  {{1, 2, 3, -3}, {-1, -2}}
850
852
  """
851
853
  is_int, k = _int_or_half_int(k)
@@ -1002,7 +1004,7 @@ def SetPartitionsTk(k):
1002
1004
  {{1, -3}, {2, 3}, {-1, -2}}
1003
1005
  sage: T3.last() # random
1004
1006
  {{1, 2}, {3, -1}, {-3, -2}}
1005
- sage: T3.random_element() # random
1007
+ sage: T3.random_element() # random # needs sage.symbolic
1006
1008
  {{1, -3}, {2, 3}, {-1, -2}}
1007
1009
 
1008
1010
  sage: T2p5 = SetPartitionsTk(2.5); T2p5
@@ -139,7 +139,7 @@ class DyckPath(PathTableau):
139
139
  sage: path_tableaux.DyckPath([0,1,2.5,1,0])
140
140
  Traceback (most recent call last):
141
141
  ...
142
- ValueError: [0, 1, 2.50000000000000, 1, 0] is not a sequence of integers
142
+ ValueError: [0, 1, 2.5..., 1, 0] is not a sequence of integers
143
143
  sage: path_tableaux.DyckPath(Partition([3,2,1]))
144
144
  Traceback (most recent call last):
145
145
  ...
@@ -137,7 +137,7 @@ class SemistandardPathTableau(PathTableau):
137
137
  [(), (5/2,), (7/2, 2)]
138
138
 
139
139
  sage: path_tableaux.SemistandardPathTableau([[], [2.5], [3.5,2]])
140
- [(), (2.50000000000000,), (3.50000000000000, 2)]
140
+ [(), (2.5...,), (3.5..., 2)]
141
141
  """
142
142
 
143
143
  @staticmethod
@@ -662,7 +662,7 @@ class PlanePartition(ClonableArray,
662
662
  EXAMPLES::
663
663
 
664
664
  sage: PP = PlanePartition([[4,3,3,1],[2,1,1],[1,1]])
665
- sage: PP.plot() # needs sage.plot
665
+ sage: PP.plot() # needs sage.plot sage.symbolic
666
666
  Graphics object consisting of 27 graphics primitives
667
667
  """
668
668
  from sage.functions.trig import cos, sin
sage/combinat/quickref.py CHANGED
@@ -49,7 +49,7 @@ Polytopes::
49
49
 
50
50
  sage: points = random_matrix(ZZ, 6, 3, x=7).rows() # needs sage.modules
51
51
  sage: L = LatticePolytope(points) # needs sage.geometry.polyhedron sage.modules
52
- sage: L.npoints(); L.plot3d() # random # needs sage.geometry.polyhedron sage.modules sage.plot
52
+ sage: L.npoints(); L.plot3d() # random # needs palp sage.geometry.polyhedron sage.modules sage.plot
53
53
 
54
54
  :ref:`Root systems, Coxeter and Weyl groups <sage.combinat.root_system.all>`::
55
55
 
@@ -453,7 +453,7 @@ class StandardRibbonShapedTableaux_shape(StandardRibbonShapedTableaux):
453
453
 
454
454
  EXAMPLES::
455
455
 
456
- sage: [t for t in StandardRibbonShapedTableaux([2,2])] # needs sage.graphs
456
+ sage: [t for t in StandardRibbonShapedTableaux([2,2])] # needs sage.graphs sage.modules
457
457
  [[[None, 1, 3], [2, 4]],
458
458
  [[None, 1, 2], [3, 4]],
459
459
  [[None, 2, 3], [1, 4]],
@@ -100,7 +100,7 @@ class Character_generic(SFA_generic):
100
100
  sage: s = Sym.s()
101
101
  sage: st._other_to_self(s[1] + s([]))
102
102
  2*st[] + st[1]
103
- sage: 7 * st[[]] * st[[]]
103
+ sage: 7 * st[[]] * st[[]] # needs lrcalc_python
104
104
  7*st[]
105
105
  """
106
106
  if sexpr == 0:
@@ -182,7 +182,7 @@ class InducedTrivialCharacterBasis(Character_generic):
182
182
  st[] + 2*st[1] + st[1, 1] + 2*st[2] + st[2, 1] + st[3]
183
183
  sage: ht(st[2,1])
184
184
  ht[1] - ht[1, 1] + ht[2, 1] - ht[3]
185
- sage: ht[2]*ht[1,1]
185
+ sage: ht[2]*ht[1,1] # needs lrcalc_python
186
186
  ht[1, 1] + 2*ht[1, 1, 1] + ht[2, 1, 1]
187
187
  sage: h[4,2].kronecker_product(h[4,1,1])
188
188
  h[2, 2, 1, 1] + 2*h[3, 1, 1, 1] + h[4, 1, 1]
@@ -190,14 +190,14 @@ class InducedTrivialCharacterBasis(Character_generic):
190
190
  3*s[1] - 2*s[1, 1] - 2*s[2] + s[2, 1]
191
191
  sage: st(s[2,1])
192
192
  st[] + 3*st[1] + 2*st[1, 1] + 2*st[2] + st[2, 1]
193
- sage: st[2]*st[1]
193
+ sage: st[2]*st[1] # needs lrcalc_python
194
194
  st[1] + st[1, 1] + st[2] + st[2, 1] + st[3]
195
195
  sage: s[4,2].kronecker_product(s[5,1])
196
196
  s[3, 2, 1] + s[3, 3] + s[4, 1, 1] + s[4, 2] + s[5, 1]
197
197
 
198
198
  TESTS::
199
199
 
200
- sage: TestSuite(ht).run()
200
+ sage: TestSuite(ht).run() # needs lrcalc_python
201
201
  """
202
202
 
203
203
  def __init__(self, Sym):
@@ -399,20 +399,20 @@ class IrreducibleCharacterBasis(Character_generic):
399
399
  3*s[1] - 2*s[1, 1] - 2*s[2] + s[2, 1]
400
400
  sage: st(s[2,1])
401
401
  st[] + 3*st[1] + 2*st[1, 1] + 2*st[2] + st[2, 1]
402
- sage: st[2]*st[1]
402
+ sage: st[2]*st[1] # needs lrcalc_python
403
403
  st[1] + st[1, 1] + st[2] + st[2, 1] + st[3]
404
404
  sage: s[4,2].kronecker_product(s[5,1])
405
405
  s[3, 2, 1] + s[3, 3] + s[4, 1, 1] + s[4, 2] + s[5, 1]
406
406
  sage: st[1,1,1].counit()
407
407
  -1
408
- sage: all(sum(c*st(la)*st(mu).antipode() for
408
+ sage: all(sum(c*st(la)*st(mu).antipode() for # needs lrcalc_python
409
409
  ....: ((la,mu),c) in st(ga).coproduct())==st(st(ga).counit())
410
410
  ....: for ga in Partitions(3))
411
411
  True
412
412
 
413
413
  TESTS::
414
414
 
415
- sage: TestSuite(st).run()
415
+ sage: TestSuite(st).run() # needs lrcalc_python
416
416
  """
417
417
 
418
418
  def __init__(self, Sym):
@@ -79,7 +79,7 @@ class SymmetricFunctionAlgebra_classical(sfa.SymmetricFunctionAlgebra_generic):
79
79
 
80
80
  TESTS::
81
81
 
82
- sage: # needs lrcalc
82
+ sage: # needs lrcalc_python
83
83
  sage: TestSuite(SymmetricFunctions(QQ).s()).run()
84
84
  sage: TestSuite(SymmetricFunctions(QQ).h()).run()
85
85
  sage: TestSuite(SymmetricFunctions(QQ).m()).run()