passagemath-combinat 10.6.1__cp312-cp312-musllinux_1_2_aarch64.whl → 10.8.1a1__cp312-cp312-musllinux_1_2_aarch64.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 (221) hide show
  1. passagemath_combinat/__init__.py +3 -0
  2. {passagemath_combinat-10.6.1.dist-info → passagemath_combinat-10.8.1a1.dist-info}/METADATA +17 -20
  3. {passagemath_combinat-10.6.1.dist-info → passagemath_combinat-10.8.1a1.dist-info}/RECORD +220 -218
  4. {passagemath_combinat-10.6.1.dist-info → passagemath_combinat-10.8.1a1.dist-info}/WHEEL +1 -1
  5. passagemath_combinat-10.8.1a1.dist-info/top_level.txt +3 -0
  6. sage/algebras/affine_nil_temperley_lieb.py +3 -3
  7. sage/algebras/all.py +0 -1
  8. sage/algebras/askey_wilson.py +1 -1
  9. sage/algebras/associated_graded.py +2 -2
  10. sage/algebras/cellular_basis.py +3 -6
  11. sage/algebras/cluster_algebra.py +2 -3
  12. sage/algebras/down_up_algebra.py +6 -6
  13. sage/algebras/free_algebra.py +3 -32
  14. sage/algebras/free_algebra_element.py +21 -25
  15. sage/algebras/free_algebra_quotient_element.py +9 -38
  16. sage/algebras/free_zinbiel_algebra.py +4 -3
  17. sage/algebras/hall_algebra.py +2 -2
  18. sage/algebras/hecke_algebras/ariki_koike_algebra.py +8 -8
  19. sage/algebras/hecke_algebras/ariki_koike_specht_modules.py +2 -2
  20. sage/algebras/hecke_algebras/cubic_hecke_algebra.py +11 -14
  21. sage/algebras/hecke_algebras/cubic_hecke_base_ring.py +1 -1
  22. sage/algebras/hecke_algebras/cubic_hecke_matrix_rep.py +5 -5
  23. sage/algebras/iwahori_hecke_algebra.py +59 -57
  24. sage/algebras/jordan_algebra.py +97 -89
  25. sage/algebras/lie_conformal_algebras/abelian_lie_conformal_algebra.py +6 -6
  26. sage/algebras/lie_conformal_algebras/affine_lie_conformal_algebra.py +14 -12
  27. sage/algebras/lie_conformal_algebras/bosonic_ghosts_lie_conformal_algebra.py +6 -6
  28. sage/algebras/lie_conformal_algebras/fermionic_ghosts_lie_conformal_algebra.py +4 -4
  29. sage/algebras/lie_conformal_algebras/finitely_freely_generated_lca.py +13 -13
  30. sage/algebras/lie_conformal_algebras/free_bosons_lie_conformal_algebra.py +8 -6
  31. sage/algebras/lie_conformal_algebras/free_fermions_lie_conformal_algebra.py +7 -5
  32. sage/algebras/lie_conformal_algebras/freely_generated_lie_conformal_algebra.py +7 -7
  33. sage/algebras/lie_conformal_algebras/graded_lie_conformal_algebra.py +6 -5
  34. sage/algebras/lie_conformal_algebras/lie_conformal_algebra.py +12 -11
  35. sage/algebras/lie_conformal_algebras/lie_conformal_algebra_element.py +3 -3
  36. sage/algebras/lie_conformal_algebras/lie_conformal_algebra_with_basis.py +3 -3
  37. sage/algebras/lie_conformal_algebras/lie_conformal_algebra_with_structure_coefs.py +11 -11
  38. sage/algebras/lie_conformal_algebras/n2_lie_conformal_algebra.py +3 -3
  39. sage/algebras/lie_conformal_algebras/neveu_schwarz_lie_conformal_algebra.py +8 -7
  40. sage/algebras/lie_conformal_algebras/virasoro_lie_conformal_algebra.py +9 -8
  41. sage/algebras/lie_conformal_algebras/weyl_lie_conformal_algebra.py +6 -5
  42. sage/algebras/nil_coxeter_algebra.py +4 -4
  43. sage/algebras/q_commuting_polynomials.py +6 -6
  44. sage/algebras/q_system.py +3 -3
  45. sage/algebras/quantum_clifford.py +8 -8
  46. sage/algebras/quantum_groups/fock_space.py +48 -8
  47. sage/algebras/quantum_groups/quantum_group_gap.py +5 -7
  48. sage/algebras/quantum_matrix_coordinate_algebra.py +7 -7
  49. sage/algebras/quantum_oscillator.py +3 -3
  50. sage/algebras/quaternion_algebra_element.py +5 -3
  51. sage/algebras/schur_algebra.py +3 -3
  52. sage/algebras/shuffle_algebra.py +5 -8
  53. sage/algebras/splitting_algebra.py +129 -85
  54. sage/algebras/tensor_algebra.py +7 -7
  55. sage/algebras/yangian.py +16 -15
  56. sage/algebras/yokonuma_hecke_algebra.py +13 -11
  57. sage/combinat/all.py +9 -0
  58. sage/combinat/all__sagemath_combinat.py +1 -0
  59. sage/combinat/alternating_sign_matrix.py +36 -29
  60. sage/combinat/baxter_permutations.py +32 -12
  61. sage/combinat/bijectionist.py +13 -17
  62. sage/combinat/chas/fsym.py +6 -6
  63. sage/combinat/chas/wqsym.py +23 -29
  64. sage/combinat/colored_permutations.py +9 -11
  65. sage/combinat/colored_permutations_representations.py +13 -12
  66. sage/combinat/composition_tableau.py +2 -2
  67. sage/combinat/constellation.py +57 -30
  68. sage/combinat/crystals/affine_factorization.py +5 -4
  69. sage/combinat/crystals/alcove_path.py +2 -2
  70. sage/combinat/crystals/fully_commutative_stable_grothendieck.py +3 -2
  71. sage/combinat/crystals/infinity_crystals.py +18 -18
  72. sage/combinat/crystals/kac_modules.py +1 -1
  73. sage/combinat/crystals/kirillov_reshetikhin.py +2 -2
  74. sage/combinat/crystals/letters.cpython-312-aarch64-linux-musl.so +0 -0
  75. sage/combinat/crystals/littelmann_path.py +1 -1
  76. sage/combinat/crystals/pbw_datum.cpython-312-aarch64-linux-musl.so +0 -0
  77. sage/combinat/crystals/pbw_datum.pyx +3 -2
  78. sage/combinat/crystals/spins.cpython-312-aarch64-linux-musl.so +0 -0
  79. sage/combinat/crystals/tensor_product.py +7 -5
  80. sage/combinat/crystals/tensor_product_element.cpython-312-aarch64-linux-musl.so +0 -0
  81. sage/combinat/debruijn_sequence.cpython-312-aarch64-linux-musl.so +0 -0
  82. sage/combinat/debruijn_sequence.pyx +1 -2
  83. sage/combinat/degree_sequences.cpython-312-aarch64-linux-musl.so +0 -0
  84. sage/combinat/degree_sequences.pyx +241 -188
  85. sage/combinat/derangements.py +28 -22
  86. sage/combinat/diagram_algebras.py +12 -14
  87. sage/combinat/dyck_word.py +15 -14
  88. sage/combinat/e_one_star.py +1 -1
  89. sage/combinat/expnums.cpython-312-aarch64-linux-musl.so +0 -0
  90. sage/combinat/fast_vector_partitions.cpython-312-aarch64-linux-musl.so +0 -0
  91. sage/combinat/fqsym.py +13 -19
  92. sage/combinat/free_dendriform_algebra.py +2 -2
  93. sage/combinat/free_prelie_algebra.py +2 -2
  94. sage/combinat/fully_commutative_elements.py +8 -8
  95. sage/combinat/fully_packed_loop.py +9 -9
  96. sage/combinat/gelfand_tsetlin_patterns.py +4 -5
  97. sage/combinat/gray_codes.py +3 -4
  98. sage/combinat/grossman_larson_algebras.py +2 -2
  99. sage/combinat/growth.py +13 -13
  100. sage/combinat/hall_polynomial.py +1 -1
  101. sage/combinat/hillman_grassl.py +1 -1
  102. sage/combinat/integer_matrices.py +5 -7
  103. sage/combinat/k_tableau.py +8 -7
  104. sage/combinat/kazhdan_lusztig.py +3 -3
  105. sage/combinat/key_polynomial.py +845 -298
  106. sage/combinat/knutson_tao_puzzles.py +11 -13
  107. sage/combinat/matrices/hadamard_matrix.py +1 -1
  108. sage/combinat/matrices/latin.py +75 -92
  109. sage/combinat/misc.py +3 -3
  110. sage/combinat/multiset_partition_into_sets_ordered.py +27 -10
  111. sage/combinat/ncsf_qsym/generic_basis_code.py +5 -5
  112. sage/combinat/ncsf_qsym/ncsf.py +6 -5
  113. sage/combinat/ncsf_qsym/qsym.py +9 -17
  114. sage/combinat/ncsym/ncsym.py +8 -12
  115. sage/combinat/nu_dyck_word.py +1 -1
  116. sage/combinat/parallelogram_polyomino.py +3 -5
  117. sage/combinat/parking_functions.py +6 -5
  118. sage/combinat/partition_algebra.py +22 -57
  119. sage/combinat/partition_kleshchev.py +4 -4
  120. sage/combinat/partition_tuple.py +12 -10
  121. sage/combinat/plane_partition.py +10 -13
  122. sage/combinat/positive_integer_semigroup_test.py +17 -0
  123. sage/combinat/q_bernoulli.cpython-312-aarch64-linux-musl.so +0 -0
  124. sage/combinat/quickref.py +2 -2
  125. sage/combinat/recognizable_series.py +2 -2
  126. sage/combinat/regular_sequence.py +7 -7
  127. sage/combinat/regular_sequence_bounded.py +15 -21
  128. sage/combinat/restricted_growth.py +3 -3
  129. sage/combinat/ribbon.py +3 -3
  130. sage/combinat/rigged_configurations/bijection.py +3 -3
  131. sage/combinat/rigged_configurations/rigged_partition.cpython-312-aarch64-linux-musl.so +0 -0
  132. sage/combinat/rsk.py +2 -0
  133. sage/combinat/schubert_polynomial.py +11 -2
  134. sage/combinat/set_partition.py +3 -7
  135. sage/combinat/set_partition_iterator.cpython-312-aarch64-linux-musl.so +0 -0
  136. sage/combinat/set_partition_iterator.pyx +0 -1
  137. sage/combinat/set_partition_ordered.py +2 -2
  138. sage/combinat/sf/classical.py +1 -1
  139. sage/combinat/sf/dual.py +4 -8
  140. sage/combinat/sf/elementary.py +13 -7
  141. sage/combinat/sf/hall_littlewood.py +10 -8
  142. sage/combinat/sf/homogeneous.py +6 -3
  143. sage/combinat/sf/jack.py +11 -9
  144. sage/combinat/sf/llt.py +4 -5
  145. sage/combinat/sf/macdonald.py +10 -11
  146. sage/combinat/sf/monomial.py +6 -0
  147. sage/combinat/sf/ns_macdonald.py +92 -51
  148. sage/combinat/sf/powersum.py +9 -14
  149. sage/combinat/sf/schur.py +6 -0
  150. sage/combinat/sf/sf.py +21 -19
  151. sage/combinat/sf/sfa.py +13 -64
  152. sage/combinat/shifted_primed_tableau.py +5 -7
  153. sage/combinat/shuffle.py +1 -1
  154. sage/combinat/sine_gordon.py +18 -38
  155. sage/combinat/skew_partition.py +9 -12
  156. sage/combinat/skew_tableau.py +2 -7
  157. sage/combinat/sloane_functions.py +1 -1
  158. sage/combinat/species/all.py +67 -2
  159. sage/combinat/species/characteristic_species.py +3 -0
  160. sage/combinat/species/composition_species.py +3 -0
  161. sage/combinat/species/cycle_species.py +4 -0
  162. sage/combinat/species/empty_species.py +3 -0
  163. sage/combinat/species/functorial_composition_species.py +3 -0
  164. sage/combinat/species/generating_series.py +3 -0
  165. sage/combinat/species/library.py +3 -0
  166. sage/combinat/species/linear_order_species.py +3 -0
  167. sage/combinat/species/partition_species.py +3 -0
  168. sage/combinat/species/permutation_species.py +4 -0
  169. sage/combinat/species/product_species.py +3 -0
  170. sage/combinat/species/recursive_species.py +3 -0
  171. sage/combinat/species/set_species.py +3 -0
  172. sage/combinat/species/species.py +13 -7
  173. sage/combinat/species/structure.py +8 -9
  174. sage/combinat/species/subset_species.py +3 -0
  175. sage/combinat/species/sum_species.py +3 -0
  176. sage/combinat/subword.py +4 -1
  177. sage/combinat/subword_complex.py +7 -7
  178. sage/combinat/subword_complex_c.cpython-312-aarch64-linux-musl.so +0 -0
  179. sage/combinat/superpartition.py +1 -1
  180. sage/combinat/symmetric_group_algebra.py +9 -9
  181. sage/combinat/symmetric_group_representations.py +5 -5
  182. sage/combinat/t_sequences.py +4 -4
  183. sage/combinat/tableau.py +3 -4
  184. sage/combinat/tableau_tuple.py +2 -2
  185. sage/combinat/tiling.py +39 -42
  186. sage/combinat/triangles_FHM.py +38 -15
  187. sage/combinat/tutorial.py +2 -2
  188. sage/combinat/vector_partition.py +43 -31
  189. sage/combinat/words/abstract_word.py +4 -4
  190. sage/combinat/words/alphabet.py +12 -12
  191. sage/combinat/words/finite_word.py +25 -229
  192. sage/combinat/words/infinite_word.py +1 -1
  193. sage/combinat/words/morphic.py +13 -13
  194. sage/combinat/words/morphism.py +3 -12
  195. sage/combinat/words/paths.py +16 -17
  196. sage/combinat/words/word.py +60 -35
  197. sage/combinat/words/word_char.cpython-312-aarch64-linux-musl.so +0 -0
  198. sage/combinat/words/word_char.pyx +46 -7
  199. sage/combinat/words/word_datatypes.cpython-312-aarch64-linux-musl.so +0 -0
  200. sage/combinat/words/word_generators.py +39 -38
  201. sage/databases/findstat.py +72 -31
  202. sage/databases/oeis.py +125 -25
  203. sage/databases/sloane.py +14 -8
  204. sage/games/sudoku_backtrack.cpython-312-aarch64-linux-musl.so +0 -0
  205. sage/groups/indexed_free_group.py +3 -4
  206. sage/libs/symmetrica/symmetrica.cpython-312-aarch64-linux-musl.so +0 -0
  207. sage/libs/symmetrica/symmetrica.pxi +1 -0
  208. sage/monoids/automatic_semigroup.py +1 -3
  209. sage/monoids/free_abelian_monoid.py +7 -33
  210. sage/monoids/free_abelian_monoid_element.cpython-312-aarch64-linux-musl.so +0 -0
  211. sage/monoids/free_monoid.py +8 -40
  212. sage/monoids/free_monoid_element.py +1 -9
  213. sage/monoids/string_monoid.py +5 -2
  214. sage/monoids/string_monoid_element.py +12 -66
  215. sage/rings/all__sagemath_combinat.py +7 -0
  216. sage/sat/solvers/__init__.py +3 -4
  217. sage/sat/solvers/cryptominisat.py +2 -3
  218. sage/sat/solvers/picosat.py +2 -3
  219. sage/sat/solvers/sat_lp.py +2 -2
  220. sage/sat/solvers/satsolver.cpython-312-aarch64-linux-musl.so +0 -0
  221. passagemath_combinat-10.6.1.dist-info/top_level.txt +0 -2
@@ -19,15 +19,15 @@ AUTHORS:
19
19
 
20
20
  - Reimundo Heluani (2020-06-03): Initial implementation.
21
21
  """
22
- #******************************************************************************
22
+ # ***************************************************************************
23
23
  # Copyright (C) 2020 Reimundo Heluani <heluani@potuz.net>
24
24
  #
25
25
  # This program is free software: you can redistribute it and/or modify
26
26
  # it under the terms of the GNU General Public License as published by
27
27
  # the Free Software Foundation, either version 2 of the License, or
28
28
  # (at your option) any later version.
29
- # http://www.gnu.org/licenses/
30
- #*****************************************************************************
29
+ # https://www.gnu.org/licenses/
30
+ # ***************************************************************************
31
31
 
32
32
  from .graded_lie_conformal_algebra import GradedLieConformalAlgebra
33
33
 
@@ -73,7 +73,7 @@ class FermionicGhostsLieConformalAlgebra(GradedLieConformalAlgebra):
73
73
  sage: R.structure_coefficients()
74
74
  Finite family {('a', 'c'): ((0, K),), ('b', 'd'): ((0, K),), ('c', 'a'): ((0, K),), ('d', 'b'): ((0, K),)}
75
75
  """
76
- def __init__(self, R, ngens=2, names=None, index_set=None):
76
+ def __init__(self, R, ngens=2, names=None, index_set=None) -> None:
77
77
  """
78
78
  Initialize ``self``.
79
79
 
@@ -7,21 +7,19 @@ AUTHORS:
7
7
 
8
8
  - Reimundo Heluani (2019-08-09): Initial implementation.
9
9
  """
10
-
11
- #******************************************************************************
10
+ # ****************************************************************************
12
11
  # Copyright (C) 2019 Reimundo Heluani <heluani@potuz.net>
13
12
  #
14
13
  # This program is free software: you can redistribute it and/or modify
15
14
  # it under the terms of the GNU General Public License as published by
16
15
  # the Free Software Foundation, either version 2 of the License, or
17
16
  # (at your option) any later version.
18
- # http://www.gnu.org/licenses/
19
- #*****************************************************************************
20
-
21
- from sage.misc.cachefunc import cached_method
17
+ # https://www.gnu.org/licenses/
18
+ # ***************************************************************************
22
19
  from sage.categories.lie_conformal_algebras import LieConformalAlgebras
23
20
  from .freely_generated_lie_conformal_algebra import \
24
- FreelyGeneratedLieConformalAlgebra
21
+ FreelyGeneratedLieConformalAlgebra
22
+ from sage.misc.cachefunc import cached_method
25
23
 
26
24
 
27
25
  class FinitelyFreelyGeneratedLCA(FreelyGeneratedLieConformalAlgebra):
@@ -34,7 +32,7 @@ class FinitelyFreelyGeneratedLCA(FreelyGeneratedLieConformalAlgebra):
34
32
  """
35
33
  def __init__(self, R, index_set=None, central_elements=None, category=None,
36
34
  element_class=None, prefix=None, names=None, latex_names=None,
37
- **kwds):
35
+ **kwds) -> None:
38
36
  """
39
37
  Initialize ``self``.
40
38
 
@@ -54,7 +52,8 @@ class FinitelyFreelyGeneratedLCA(FreelyGeneratedLieConformalAlgebra):
54
52
  raise TypeError("index_set must be a finite set")
55
53
 
56
54
  super().__init__(R,
57
- index_set=index_set, central_elements=central_elements,
55
+ index_set=index_set,
56
+ central_elements=central_elements,
58
57
  category=category, element_class=element_class,
59
58
  prefix=prefix, **kwds)
60
59
  self._ngens = len(self._generators)
@@ -89,7 +88,7 @@ class FinitelyFreelyGeneratedLCA(FreelyGeneratedLieConformalAlgebra):
89
88
  """
90
89
  return self.sum(self.gens())
91
90
 
92
- def ngens(self):
91
+ def ngens(self) -> int:
93
92
  """
94
93
  The number of generators of this Lie conformal algebra.
95
94
 
@@ -103,7 +102,7 @@ class FinitelyFreelyGeneratedLCA(FreelyGeneratedLieConformalAlgebra):
103
102
  return self._ngens
104
103
 
105
104
  @cached_method
106
- def gens(self):
105
+ def gens(self) -> tuple:
107
106
  """
108
107
  The generators for this Lie conformal algebra.
109
108
 
@@ -127,13 +126,14 @@ class FinitelyFreelyGeneratedLCA(FreelyGeneratedLieConformalAlgebra):
127
126
  return self.lie_conformal_algebra_generators()
128
127
 
129
128
  @cached_method
130
- def central_elements(self):
129
+ def central_elements(self) -> tuple:
131
130
  """
132
131
  The central elements of this Lie conformal algebra.
133
132
 
134
133
  EXAMPLES::
135
134
 
136
- sage: R = lie_conformal_algebras.NeveuSchwarz(QQ); R.central_elements()
135
+ sage: R = lie_conformal_algebras.NeveuSchwarz(QQ)
136
+ sage: R.central_elements()
137
137
  (C,)
138
138
  """
139
139
  return tuple(FreelyGeneratedLieConformalAlgebra.central_elements(self))
@@ -23,15 +23,15 @@ AUTHORS:
23
23
  - Reimundo Heluani (2019-08-09): Initial implementation.
24
24
  """
25
25
 
26
- #******************************************************************************
26
+ # ****************************************************************************
27
27
  # Copyright (C) 2019 Reimundo Heluani <heluani@potuz.net>
28
28
  #
29
29
  # This program is free software: you can redistribute it and/or modify
30
30
  # it under the terms of the GNU General Public License as published by
31
31
  # the Free Software Foundation, either version 2 of the License, or
32
32
  # (at your option) any later version.
33
- # http://www.gnu.org/licenses/
34
- #*****************************************************************************
33
+ # https://www.gnu.org/licenses/
34
+ # ***************************************************************************
35
35
 
36
36
  from sage.matrix.special import identity_matrix
37
37
  from .graded_lie_conformal_algebra import GradedLieConformalAlgebra
@@ -111,17 +111,19 @@ class FreeBosonsLieConformalAlgebra(GradedLieConformalAlgebra):
111
111
  sage: TestSuite(V).run()
112
112
  """
113
113
  from sage.matrix.matrix_space import MatrixSpace
114
- if (gram_matrix is not None):
114
+ if gram_matrix is not None:
115
115
  if ngens is None:
116
116
  ngens = gram_matrix.dimensions()[0]
117
117
  try:
118
118
  assert (gram_matrix in MatrixSpace(R, ngens, ngens))
119
119
  except AssertionError:
120
120
  raise ValueError("the gram_matrix should be a symmetric " +
121
- "{0} x {0} matrix, got {1}".format(ngens, gram_matrix))
121
+ "{0} x {0} matrix, got {1}".format(ngens,
122
+ gram_matrix))
122
123
  if not gram_matrix.is_symmetric():
123
124
  raise ValueError("the gram_matrix should be a symmetric " +
124
- "{0} x {0} matrix, got {1}".format(ngens, gram_matrix))
125
+ "{0} x {0} matrix, got {1}".format(ngens,
126
+ gram_matrix))
125
127
  else:
126
128
  if ngens is None:
127
129
  ngens = 1
@@ -24,15 +24,15 @@ AUTHORS:
24
24
 
25
25
  - Reimundo Heluani (2020-06-03): Initial implementation.
26
26
  """
27
- #******************************************************************************
27
+ # ***************************************************************************
28
28
  # Copyright (C) 2020 Reimundo Heluani <heluani@potuz.net>
29
29
  #
30
30
  # This program is free software: you can redistribute it and/or modify
31
31
  # it under the terms of the GNU General Public License as published by
32
32
  # the Free Software Foundation, either version 2 of the License, or
33
33
  # (at your option) any later version.
34
- # http://www.gnu.org/licenses/
35
- #*****************************************************************************
34
+ # https://www.gnu.org/licenses/
35
+ # ***************************************************************************
36
36
 
37
37
  from .graded_lie_conformal_algebra import GradedLieConformalAlgebra
38
38
 
@@ -102,10 +102,12 @@ class FreeFermionsLieConformalAlgebra(GradedLieConformalAlgebra):
102
102
  assert (gram_matrix in MatrixSpace(R, ngens, ngens))
103
103
  except AssertionError:
104
104
  raise ValueError("the Gram_matrix should be a symmetric " +
105
- "{0} x {0} matrix, got {1}".format(ngens, gram_matrix))
105
+ "{0} x {0} matrix, got {1}".format(ngens,
106
+ gram_matrix))
106
107
  if not gram_matrix.is_symmetric():
107
108
  raise ValueError("the Gram_matrix should be a symmetric " +
108
- "{0} x {0} matrix, got {1}".format(ngens, gram_matrix))
109
+ "{0} x {0} matrix, got {1}".format(ngens,
110
+ gram_matrix))
109
111
  else:
110
112
  if ngens is None:
111
113
  ngens = 1
@@ -8,15 +8,15 @@ AUTHORS:
8
8
  - Reimundo Heluani (2019-08-09): Initial implementation
9
9
  """
10
10
 
11
- #******************************************************************************
11
+ # ***************************************************************************
12
12
  # Copyright (C) 2019 Reimundo Heluani <heluani@potuz.net>
13
13
  #
14
14
  # This program is free software: you can redistribute it and/or modify
15
15
  # it under the terms of the GNU General Public License as published by
16
16
  # the Free Software Foundation, either version 2 of the License, or
17
17
  # (at your option) any later version.
18
- # http://www.gnu.org/licenses/
19
- #*****************************************************************************
18
+ # https://www.gnu.org/licenses/
19
+ # ***************************************************************************
20
20
 
21
21
  from .lie_conformal_algebra_with_basis import LieConformalAlgebraWithBasis
22
22
  from sage.sets.non_negative_integers import NonNegativeIntegers
@@ -40,7 +40,7 @@ class FreelyGeneratedLieConformalAlgebra(LieConformalAlgebraWithBasis):
40
40
  some central generators `C_i` such that `TC_i = 0`.
41
41
  """
42
42
  def __init__(self, R, index_set=None, central_elements=None, category=None,
43
- element_class=None, prefix=None, **kwds):
43
+ element_class=None, prefix=None, **kwds) -> None:
44
44
  """
45
45
  Initialize ``self``.
46
46
 
@@ -52,8 +52,8 @@ class FreelyGeneratedLieConformalAlgebra(LieConformalAlgebraWithBasis):
52
52
  self._generators = Family(index_set)
53
53
  E = cartesian_product([index_set, NonNegativeIntegers()])
54
54
  if central_elements is not None:
55
- self._generators = DisjointUnionEnumeratedSets([index_set,
56
- Family(central_elements)])
55
+ self._generators = DisjointUnionEnumeratedSets(
56
+ [index_set, Family(central_elements)])
57
57
  E = DisjointUnionEnumeratedSets((cartesian_product([
58
58
  Family(central_elements), {Integer(0)}]), E))
59
59
 
@@ -89,7 +89,7 @@ class FreelyGeneratedLieConformalAlgebra(LieConformalAlgebraWithBasis):
89
89
  return tuple(F)
90
90
  return F
91
91
 
92
- def central_elements(self):
92
+ def central_elements(self) -> Family:
93
93
  """
94
94
  The central generators of this Lie conformal algebra.
95
95
 
@@ -37,20 +37,20 @@ AUTHORS:
37
37
  """
38
38
 
39
39
 
40
- #******************************************************************************
40
+ # ***************************************************************************
41
41
  # Copyright (C) 2019 Reimundo Heluani <heluani@potuz.net>
42
42
  #
43
43
  # This program is free software: you can redistribute it and/or modify
44
44
  # it under the terms of the GNU General Public License as published by
45
45
  # the Free Software Foundation, either version 2 of the License, or
46
46
  # (at your option) any later version.
47
- # http://www.gnu.org/licenses/
48
- #*****************************************************************************
47
+ # https://www.gnu.org/licenses/
48
+ # ***************************************************************************
49
49
 
50
50
 
51
51
  from sage.categories.lie_conformal_algebras import LieConformalAlgebras
52
52
  from .lie_conformal_algebra_with_structure_coefs import \
53
- LieConformalAlgebraWithStructureCoefficients
53
+ LieConformalAlgebraWithStructureCoefficients
54
54
 
55
55
 
56
56
  class GradedLieConformalAlgebra(LieConformalAlgebraWithStructureCoefficients):
@@ -120,7 +120,8 @@ class GradedLieConformalAlgebra(LieConformalAlgebraWithStructureCoefficients):
120
120
  else:
121
121
  category = default_category.or_subcategory(category)
122
122
 
123
- LieConformalAlgebraWithStructureCoefficients.__init__(self, R,
123
+ LieConformalAlgebraWithStructureCoefficients.__init__(
124
+ self, R,
124
125
  s_coeff, index_set=index_set, central_elements=central_elements,
125
126
  category=category, prefix=prefix,
126
127
  names=names, latex_names=latex_names, parity=parity, **kwds)
@@ -164,15 +164,15 @@ AUTHORS:
164
164
  """
165
165
 
166
166
 
167
- #******************************************************************************
167
+ # ***************************************************************************
168
168
  # Copyright (C) 2019 Reimundo Heluani <heluani@potuz.net>
169
169
  #
170
170
  # This program is free software: you can redistribute it and/or modify
171
171
  # it under the terms of the GNU General Public License as published by
172
172
  # the Free Software Foundation, either version 2 of the License, or
173
173
  # (at your option) any later version.
174
- # http://www.gnu.org/licenses/
175
- #*****************************************************************************
174
+ # https://www.gnu.org/licenses/
175
+ # ***************************************************************************
176
176
 
177
177
  from sage.structure.unique_representation import UniqueRepresentation
178
178
  from sage.sets.family import Family
@@ -336,18 +336,19 @@ class LieConformalAlgebra(UniqueRepresentation, Parent):
336
336
  graded = kwds.pop("graded", False)
337
337
  if weights is not None or graded:
338
338
  from .graded_lie_conformal_algebra import \
339
- GradedLieConformalAlgebra
340
- return GradedLieConformalAlgebra(R, Family(arg0),
339
+ GradedLieConformalAlgebra
340
+ return GradedLieConformalAlgebra(
341
+ R, Family(arg0),
341
342
  index_set=index_set, central_elements=central_elements,
342
343
  category=category, prefix=prefix, names=names,
343
344
  latex_names=latex_names, parity=parity, weights=weights,
344
345
  **kwds)
345
346
  else:
346
347
  from .lie_conformal_algebra_with_structure_coefs import \
347
- LieConformalAlgebraWithStructureCoefficients
348
- return LieConformalAlgebraWithStructureCoefficients(R,
349
- Family(arg0), index_set=index_set,
350
- central_elements=central_elements, category=category,
351
- prefix=prefix, names=names, latex_names=latex_names,
352
- parity=parity, **kwds)
348
+ LieConformalAlgebraWithStructureCoefficients
349
+ return LieConformalAlgebraWithStructureCoefficients(
350
+ R, Family(arg0),
351
+ index_set=index_set, central_elements=central_elements,
352
+ category=category, prefix=prefix, names=names,
353
+ latex_names=latex_names, parity=parity, **kwds)
353
354
  raise NotImplementedError("not implemented")
@@ -74,7 +74,7 @@ class LCAWithGeneratorsElement(IndexedFreeModuleElement):
74
74
  return p.zero()
75
75
  return sum(mon.T(n) for mon in self.terms())
76
76
 
77
- def is_monomial(self):
77
+ def is_monomial(self) -> bool:
78
78
  """
79
79
  Whether this element is a monomial.
80
80
 
@@ -149,7 +149,7 @@ class LCAStructureCoefficientsElement(LCAWithGeneratorsElement):
149
149
  ret[k] = ret.get(k, pz) + d[k]
150
150
  return {k: v for k, v in ret.items() if v}
151
151
 
152
- def _repr_(self):
152
+ def _repr_(self) -> str:
153
153
  r"""
154
154
  A visual representation of this element.
155
155
 
@@ -187,7 +187,7 @@ class LCAStructureCoefficientsElement(LCAWithGeneratorsElement):
187
187
 
188
188
  return repr_lincomb(terms, strip_one=True)
189
189
 
190
- def _latex_(self):
190
+ def _latex_(self) -> str:
191
191
  r"""
192
192
  A visual representation of this element.
193
193
 
@@ -8,15 +8,15 @@ AUTHORS:
8
8
  - Reimundo Heluani (2019-08-09): Initial implementation
9
9
  """
10
10
 
11
- #******************************************************************************
11
+ # ***************************************************************************
12
12
  # Copyright (C) 2019 Reimundo Heluani <heluani@potuz.net>
13
13
  #
14
14
  # This program is free software: you can redistribute it and/or modify
15
15
  # it under the terms of the GNU General Public License as published by
16
16
  # the Free Software Foundation, either version 2 of the License, or
17
17
  # (at your option) any later version.
18
- # http://www.gnu.org/licenses/
19
- #*****************************************************************************
18
+ # https://www.gnu.org/licenses/
19
+ # ***************************************************************************
20
20
 
21
21
  from sage.categories.lie_conformal_algebras import LieConformalAlgebras
22
22
  from sage.combinat.free_module import CombinatorialFreeModule
@@ -29,7 +29,7 @@ from sage.structure.indexed_generators import (IndexedGenerators,
29
29
 
30
30
 
31
31
  class LieConformalAlgebraWithStructureCoefficients(
32
- FinitelyFreelyGeneratedLCA):
32
+ FinitelyFreelyGeneratedLCA):
33
33
  r"""
34
34
  A Lie conformal algebra with a set of specified structure
35
35
  coefficients.
@@ -172,17 +172,17 @@ class LieConformalAlgebraWithStructureCoefficients(
172
172
  # We now add the skew-symmetric part to optimize
173
173
  # brackets computations later
174
174
  key = (mypair[1], mypair[0])
175
- if index_to_parity[mypair[0]]*index_to_parity[mypair[1]]:
175
+ if index_to_parity[mypair[0]] * index_to_parity[mypair[1]]:
176
176
  parsgn = -1
177
177
  else:
178
178
  parsgn = 1
179
179
  maxpole = max(v)
180
180
  vals = {}
181
- for k in range(maxpole+1):
181
+ for k in range(maxpole + 1):
182
182
  kth_product = {}
183
- for j in range(maxpole+1-k):
184
- if k+j in v.keys():
185
- for i in v[k+j]:
183
+ for j in range(maxpole + 1 - k):
184
+ if k + j in v.keys():
185
+ for i in v[k + j]:
186
186
  if (i[0] not in ce) or (
187
187
  i[0] in ce and i[1] + j == 0):
188
188
  kth_product[(i[0], i[1] + j)] = \
@@ -205,7 +205,7 @@ class LieConformalAlgebraWithStructureCoefficients(
205
205
 
206
206
  def __init__(self, R, s_coeff, index_set=None, central_elements=None,
207
207
  category=None, element_class=None, prefix=None, names=None,
208
- latex_names=None, parity=None, **kwds):
208
+ latex_names=None, parity=None, **kwds) -> None:
209
209
  """
210
210
  Initialize ``self``.
211
211
 
@@ -220,15 +220,15 @@ class LieConformalAlgebraWithStructureCoefficients(
220
220
 
221
221
  if names is not None and names != tuple(index_set):
222
222
  names2 = names + tuple(central_elements)
223
- index_set2 = DisjointUnionEnumeratedSets((index_set,
224
- Family(tuple(central_elements))))
223
+ index_set2 = DisjointUnionEnumeratedSets(
224
+ (index_set, Family(tuple(central_elements))))
225
225
  d = {x: index_set2[i] for i, x in enumerate(names2)}
226
226
  try:
227
227
  # If we are given a dictionary with names as keys,
228
228
  # convert to index_set as keys
229
229
  s_coeff = {(d[k[0]], d[k[1]]):
230
230
  {a: {(d[x[1]], x[2]): sck[a][x] for x in sck[a]}
231
- for a in s_coeff[k]}
231
+ for a in sck}
232
232
  for k, sck in s_coeff.items()}
233
233
 
234
234
  except KeyError:
@@ -284,7 +284,7 @@ class LieConformalAlgebraWithStructureCoefficients(
284
284
  self._parity = dict(zip(self.gens(),
285
285
  parity + (0,) * len(central_elements)))
286
286
 
287
- def structure_coefficients(self):
287
+ def structure_coefficients(self) -> Family:
288
288
  """
289
289
  The structure coefficients of this Lie conformal algebra.
290
290
 
@@ -74,14 +74,14 @@ class N2LieConformalAlgebra(GradedLieConformalAlgebra):
74
74
  sage: G.bracket(G)
75
75
  {0: 2*L, 2: 2/3*C}
76
76
  """
77
- def __init__(self, R):
77
+ def __init__(self, R) -> None:
78
78
  """
79
79
  Initialize ``self``.
80
80
 
81
81
  TESTS::
82
82
 
83
83
  sage: V = lie_conformal_algebras.N2(QQ)
84
- sage: TestSuite(V).run()
84
+ sage: TestSuite(V).run() # long time (:issue:`39569`)
85
85
  """
86
86
  n2dict = {('L', 'L'): {0: {('L', 1): 1},
87
87
  1: {('L', 0): 2},
@@ -105,7 +105,7 @@ class N2LieConformalAlgebra(GradedLieConformalAlgebra):
105
105
  central_elements=('C',),
106
106
  weights=weights, parity=parity)
107
107
 
108
- def _repr_(self):
108
+ def _repr_(self) -> str:
109
109
  """
110
110
  The name of this Lie conformal algebra.
111
111
 
@@ -16,15 +16,15 @@ AUTHORS:
16
16
 
17
17
  - Reimundo Heluani (2020-06-03): Initial implementation.
18
18
  """
19
- #******************************************************************************
19
+ # ***************************************************************************
20
20
  # Copyright (C) 2020 Reimundo Heluani <heluani@potuz.net>
21
21
  #
22
22
  # This program is free software: you can redistribute it and/or modify
23
23
  # it under the terms of the GNU General Public License as published by
24
24
  # the Free Software Foundation, either version 2 of the License, or
25
25
  # (at your option) any later version.
26
- # http://www.gnu.org/licenses/
27
- #*****************************************************************************
26
+ # https://www.gnu.org/licenses/
27
+ # ***************************************************************************
28
28
 
29
29
  from .graded_lie_conformal_algebra import GradedLieConformalAlgebra
30
30
 
@@ -51,7 +51,7 @@ class NeveuSchwarzLieConformalAlgebra(GradedLieConformalAlgebra):
51
51
  sage: G.degree()
52
52
  3/2
53
53
  """
54
- def __init__(self, R):
54
+ def __init__(self, R) -> None:
55
55
  """
56
56
  Initialize ``self``.
57
57
 
@@ -71,9 +71,10 @@ class NeveuSchwarzLieConformalAlgebra(GradedLieConformalAlgebra):
71
71
  weights = (2, QQ((3, 2)))
72
72
  parity = (0, 1)
73
73
  GradedLieConformalAlgebra.__init__(self, R, nsdict, names=('L', 'G'),
74
- central_elements=('C',), weights=weights, parity=parity)
74
+ central_elements=('C',),
75
+ weights=weights, parity=parity)
75
76
 
76
- def _repr_(self):
77
+ def _repr_(self) -> str:
77
78
  """
78
79
  The name of this Lie Conformal algebra.
79
80
 
@@ -83,4 +84,4 @@ class NeveuSchwarzLieConformalAlgebra(GradedLieConformalAlgebra):
83
84
  The Neveu-Schwarz super Lie conformal algebra over Finite Field of size 5
84
85
  """
85
86
  return "The Neveu-Schwarz super Lie conformal algebra over {}".\
86
- format(self.base_ring())
87
+ format(self.base_ring())
@@ -17,15 +17,15 @@ AUTHORS:
17
17
  - Reimundo Heluani (2019-08-09): Initial implementation.
18
18
  """
19
19
 
20
- #******************************************************************************
20
+ # ***************************************************************************
21
21
  # Copyright (C) 2019 Reimundo Heluani <heluani@potuz.net>
22
22
  #
23
23
  # This program is free software: you can redistribute it and/or modify
24
24
  # it under the terms of the GNU General Public License as published by
25
25
  # the Free Software Foundation, either version 2 of the License, or
26
26
  # (at your option) any later version.
27
- # http://www.gnu.org/licenses/
28
- #*****************************************************************************
27
+ # https://www.gnu.org/licenses/
28
+ # ***************************************************************************
29
29
 
30
30
  from .graded_lie_conformal_algebra import GradedLieConformalAlgebra
31
31
 
@@ -54,7 +54,7 @@ class VirasoroLieConformalAlgebra(GradedLieConformalAlgebra):
54
54
  sage: Vir.gens()
55
55
  (L, C)
56
56
  """
57
- def __init__(self, R):
57
+ def __init__(self, R) -> None:
58
58
  """
59
59
  Initialize ``self``.
60
60
 
@@ -66,10 +66,11 @@ class VirasoroLieConformalAlgebra(GradedLieConformalAlgebra):
66
66
  virdict = {('L', 'L'): {0: {('L', 1): 1},
67
67
  1: {('L', 0): 2},
68
68
  3: {('C', 0): R(2).inverse_of_unit()}}}
69
- GradedLieConformalAlgebra.__init__(self, R, virdict,
70
- names=('L',), central_elements=('C',), weights=(2,))
69
+ GradedLieConformalAlgebra.__init__(self, R, virdict, names=('L',),
70
+ central_elements=('C',),
71
+ weights=(2,))
71
72
 
72
- def _repr_(self):
73
+ def _repr_(self) -> str:
73
74
  """
74
75
  The name of this Lie conformal algebra.
75
76
 
@@ -79,4 +80,4 @@ class VirasoroLieConformalAlgebra(GradedLieConformalAlgebra):
79
80
  The Virasoro Lie conformal algebra over Algebraic Field
80
81
  """
81
82
  return "The Virasoro Lie conformal algebra over {}".format(
82
- self.base_ring())
83
+ self.base_ring())
@@ -143,8 +143,9 @@ class WeylLieConformalAlgebra(LieConformalAlgebraWithStructureCoefficients):
143
143
  try:
144
144
  assert (gram_matrix in MatrixSpace(R, ngens, ngens))
145
145
  except AssertionError:
146
- raise ValueError("the Gram_matrix should be a skew-symmetric "
147
- "{0} x {0} matrix, got {1}".format(ngens, gram_matrix))
146
+ raise ValueError("the Gram_matrix should be a "
147
+ "skew-symmetric {0} x {0} matrix, got {1}"
148
+ .format(ngens, gram_matrix))
148
149
  if (not gram_matrix.is_skew_symmetric() or
149
150
  gram_matrix.is_singular()):
150
151
  raise ValueError("the Gram_matrix should be a non degenerate "
@@ -163,8 +164,8 @@ class WeylLieConformalAlgebra(LieConformalAlgebraWithStructureCoefficients):
163
164
  latex_names = tuple(r'\alpha_{%d}' % i
164
165
  for i in range(ngens)) + ('K',)
165
166
  names, index_set = standardize_names_index_set(names=names,
166
- index_set=index_set,
167
- ngens=ngens)
167
+ index_set=index_set,
168
+ ngens=ngens)
168
169
  weyldict = {(i, j): {0: {('K', 0): gram_matrix[index_set.rank(i),
169
170
  index_set.rank(j)]}}
170
171
  for i in index_set for j in index_set}
@@ -175,7 +176,7 @@ class WeylLieConformalAlgebra(LieConformalAlgebraWithStructureCoefficients):
175
176
  central_elements=('K',))
176
177
  self._gram_matrix = gram_matrix
177
178
 
178
- def _repr_(self):
179
+ def _repr_(self) -> str:
179
180
  """
180
181
  The name of this Lie conformal algebra.
181
182
 
@@ -3,13 +3,13 @@
3
3
  """
4
4
  Nil-Coxeter Algebra
5
5
  """
6
- #*****************************************************************************
6
+ # ***************************************************************************
7
7
  # Copyright (C) 2011 Chris Berg <cberg at fields.utoronto.ca>
8
8
  # Anne Schilling <anne at math.ucdavis.edu>
9
9
  #
10
10
  # Distributed under the terms of the GNU General Public License (GPL)
11
- # http://www.gnu.org/licenses/
12
- #*****************************************************************************
11
+ # https://www.gnu.org/licenses/
12
+ # ***************************************************************************
13
13
  from sage.algebras.iwahori_hecke_algebra import IwahoriHeckeAlgebra
14
14
  from sage.combinat.sf.sf import SymmetricFunctions
15
15
  from sage.misc.misc_c import prod
@@ -67,7 +67,7 @@ class NilCoxeterAlgebra(IwahoriHeckeAlgebra.T):
67
67
  H = IwahoriHeckeAlgebra(W, 0, 0, base_ring=base_ring)
68
68
  super(IwahoriHeckeAlgebra.T, self).__init__(H, prefix=prefix)
69
69
 
70
- def _repr_(self):
70
+ def _repr_(self) -> str:
71
71
  r"""
72
72
  EXAMPLES::
73
73