diff --git a/src/sage/algebras/affine_nil_temperley_lieb.py b/src/sage/algebras/affine_nil_temperley_lieb.py index 8aff4321abb..f7901ae314d 100644 --- a/src/sage/algebras/affine_nil_temperley_lieb.py +++ b/src/sage/algebras/affine_nil_temperley_lieb.py @@ -7,7 +7,7 @@ # Distributed under the terms of the GNU General Public License (GPL) # https://www.gnu.org/licenses/ # **************************************************************************** -from sage.categories.all import AlgebrasWithBasis +from sage.categories.algebras_with_basis import AlgebrasWithBasis from sage.combinat.root_system.cartan_type import CartanType from sage.combinat.root_system.weyl_group import WeylGroup from sage.rings.ring import Ring diff --git a/src/sage/algebras/cluster_algebra.py b/src/sage/algebras/cluster_algebra.py index 62340be2072..eb005168275 100644 --- a/src/sage/algebras/cluster_algebra.py +++ b/src/sage/algebras/cluster_algebra.py @@ -354,7 +354,7 @@ from copy import copy -from sage.arith.all import binomial +from sage.arith.misc import binomial from sage.categories.homset import Hom from sage.categories.morphism import SetMorphism from sage.categories.rings import Rings diff --git a/src/sage/algebras/free_algebra.py b/src/sage/algebras/free_algebra.py index 7286f62ce27..3004878a378 100644 --- a/src/sage/algebras/free_algebra.py +++ b/src/sage/algebras/free_algebra.py @@ -149,7 +149,7 @@ from sage.structure.factory import UniqueFactory from sage.misc.cachefunc import cached_method -from sage.all import PolynomialRing +from sage.rings.polynomial.polynomial_ring_constructor import PolynomialRing from sage.rings.ring import Algebra from sage.categories.algebras_with_basis import AlgebrasWithBasis from sage.combinat.free_module import CombinatorialFreeModule @@ -282,7 +282,7 @@ def create_key(self, base_ring, arg1=None, arg2=None, PolRing = PolynomialRing(base_ring, *args, **kwds) if degrees is None: return (PolRing,) - from sage.all import TermOrder + from sage.rings.polynomial.term_order import TermOrder T = TermOrder(PolRing.term_order(), PolRing.ngens() + 1) varnames = list(PolRing.variable_names()) newname = 'x' diff --git a/src/sage/algebras/free_algebra_quotient.py b/src/sage/algebras/free_algebra_quotient.py index 583eb5f9ae8..b3090baa029 100644 --- a/src/sage/algebras/free_algebra_quotient.py +++ b/src/sage/algebras/free_algebra_quotient.py @@ -357,7 +357,7 @@ def hamilton_quatalg(R): """ n = 3 from sage.algebras.free_algebra import FreeAlgebra - from sage.matrix.all import MatrixSpace + from sage.matrix.matrix_space import MatrixSpace A = FreeAlgebra(R, n, 'i') F = A.monoid() i, j, k = F.gens() diff --git a/src/sage/algebras/group_algebra.py b/src/sage/algebras/group_algebra.py index 6821a64f68f..c639106b239 100644 --- a/src/sage/algebras/group_algebra.py +++ b/src/sage/algebras/group_algebra.py @@ -35,8 +35,8 @@ # http://www.gnu.org/licenses/ #***************************************************************************** -from sage.rings.all import IntegerRing -from sage.categories.all import Rings +from sage.rings.integer_ring import IntegerRing +from sage.categories.rings import Rings from sage.categories.magmas import Magmas from sage.categories.additive_magmas import AdditiveMagmas from sage.categories.sets_cat import Sets diff --git a/src/sage/algebras/hecke_algebras/ariki_koike_algebra.py b/src/sage/algebras/hecke_algebras/ariki_koike_algebra.py index c1596761c99..5f21e1049b0 100644 --- a/src/sage/algebras/hecke_algebras/ariki_koike_algebra.py +++ b/src/sage/algebras/hecke_algebras/ariki_koike_algebra.py @@ -540,7 +540,7 @@ def dimension(self): sage: LT.dimension() 29160 """ - from sage.arith.all import factorial + from sage.arith.misc import factorial return self._r**self._n * factorial(self._n) def some_elements(self): diff --git a/src/sage/algebras/iwahori_hecke_algebra.py b/src/sage/algebras/iwahori_hecke_algebra.py index 900039c7909..a9935dd36e2 100644 --- a/src/sage/algebras/iwahori_hecke_algebra.py +++ b/src/sage/algebras/iwahori_hecke_algebra.py @@ -30,10 +30,12 @@ from sage.structure.parent import Parent from sage.structure.unique_representation import UniqueRepresentation from sage.categories.realizations import Realizations, Category_realization_of_parent -from sage.categories.all import AlgebrasWithBasis, FiniteDimensionalAlgebrasWithBasis, CoxeterGroups +from sage.categories.algebras_with_basis import AlgebrasWithBasis +from sage.categories.finite_dimensional_algebras_with_basis import FiniteDimensionalAlgebrasWithBasis +from sage.categories.coxeter_groups import CoxeterGroups from sage.rings.integer_ring import ZZ from sage.rings.polynomial.laurent_polynomial_ring import LaurentPolynomialRing -from sage.arith.all import is_square +from sage.arith.misc import is_square from sage.combinat.root_system.coxeter_group import CoxeterGroup from sage.sets.family import Family from sage.combinat.free_module import CombinatorialFreeModule diff --git a/src/sage/algebras/lie_algebras/bch.py b/src/sage/algebras/lie_algebras/bch.py index 1cb3f0442cb..657b8c194a1 100644 --- a/src/sage/algebras/lie_algebras/bch.py +++ b/src/sage/algebras/lie_algebras/bch.py @@ -20,7 +20,7 @@ from sage.arith.misc import bernoulli from sage.categories.lie_algebras import LieAlgebras from sage.combinat.integer_vector import IntegerListsLex -from sage.arith.all import factorial +from sage.arith.misc import factorial from sage.rings.rational_field import QQ from sage.structure.element import canonical_coercion diff --git a/src/sage/algebras/lie_algebras/free_lie_algebra.py b/src/sage/algebras/lie_algebras/free_lie_algebra.py index af001d0fa57..207f8d63a8c 100644 --- a/src/sage/algebras/lie_algebras/free_lie_algebra.py +++ b/src/sage/algebras/lie_algebras/free_lie_algebra.py @@ -265,7 +265,7 @@ def graded_dimension(self, k): """ if k == 0: return 0 - from sage.arith.all import moebius + from sage.arith.misc import moebius s = len(self.lie_algebra_generators()) k = ZZ(k) # Make sure we have something that is in ZZ return sum(moebius(d) * s**(k // d) for d in k.divisors()) // k diff --git a/src/sage/algebras/lie_conformal_algebras/lie_conformal_algebra_element.py b/src/sage/algebras/lie_conformal_algebras/lie_conformal_algebra_element.py index c40e654e157..d10426501f2 100644 --- a/src/sage/algebras/lie_conformal_algebras/lie_conformal_algebra_element.py +++ b/src/sage/algebras/lie_conformal_algebras/lie_conformal_algebra_element.py @@ -14,7 +14,7 @@ # (at your option) any later version. # https://www.gnu.org/licenses/ # **************************************************************************** -from sage.arith.all import factorial +from sage.arith.misc import factorial from sage.misc.misc_c import prod from sage.misc.repr import repr_lincomb from sage.misc.latex import latex diff --git a/src/sage/algebras/lie_conformal_algebras/lie_conformal_algebra_with_structure_coefs.py b/src/sage/algebras/lie_conformal_algebras/lie_conformal_algebra_with_structure_coefs.py index b2cf3582793..46119ad45f1 100644 --- a/src/sage/algebras/lie_conformal_algebras/lie_conformal_algebra_with_structure_coefs.py +++ b/src/sage/algebras/lie_conformal_algebras/lie_conformal_algebra_with_structure_coefs.py @@ -17,7 +17,7 @@ # https://www.gnu.org/licenses/ # **************************************************************************** -from sage.arith.all import binomial +from sage.arith.misc import binomial from sage.sets.family import Family from .lie_conformal_algebra_element import LCAStructureCoefficientsElement from sage.categories.lie_conformal_algebras import LieConformalAlgebras diff --git a/src/sage/algebras/quatalg/quaternion_algebra.py b/src/sage/algebras/quatalg/quaternion_algebra.py index 4b7af26d31c..a6d080d8cd7 100644 --- a/src/sage/algebras/quatalg/quaternion_algebra.py +++ b/src/sage/algebras/quatalg/quaternion_algebra.py @@ -35,9 +35,14 @@ # https://www.gnu.org/licenses/ # **************************************************************************** -from sage.arith.all import (hilbert_conductor_inverse, hilbert_conductor, - factor, gcd, kronecker_symbol, valuation) -from sage.rings.all import RR, Integer +from sage.arith.misc import (hilbert_conductor_inverse, + hilbert_conductor, + factor, + gcd, + kronecker as kronecker_symbol, + valuation) +from sage.rings.real_mpfr import RR +from sage.rings.integer import Integer from sage.rings.integer_ring import ZZ from sage.rings.rational import Rational from sage.rings.finite_rings.finite_field_constructor import GF diff --git a/src/sage/algebras/schur_algebra.py b/src/sage/algebras/schur_algebra.py index b716db0ce94..ff960e56dd9 100644 --- a/src/sage/algebras/schur_algebra.py +++ b/src/sage/algebras/schur_algebra.py @@ -41,7 +41,7 @@ from sage.combinat.sf.sf import SymmetricFunctions from sage.combinat.symmetric_group_algebra import SymmetricGroupAlgebra from sage.combinat.tableau import SemistandardTableaux -from sage.arith.all import binomial +from sage.arith.misc import binomial from sage.matrix.constructor import Matrix from sage.misc.cachefunc import cached_method from sage.misc.flatten import flatten diff --git a/src/sage/algebras/shuffle_algebra.py b/src/sage/algebras/shuffle_algebra.py index 26c8a40f485..5d383f8dfab 100644 --- a/src/sage/algebras/shuffle_algebra.py +++ b/src/sage/algebras/shuffle_algebra.py @@ -972,7 +972,7 @@ def expansion_on_basis(self, w): sage: S.expansion_on_basis(Word('abab')) 2*B[aabb] + B[abab] """ - from sage.arith.all import factorial + from sage.arith.misc import factorial if not w: return self._alg.one() if len(w) == 1: diff --git a/src/sage/algebras/steenrod/steenrod_algebra.py b/src/sage/algebras/steenrod/steenrod_algebra.py index 49b281d9a49..978a3557a9d 100644 --- a/src/sage/algebras/steenrod/steenrod_algebra.py +++ b/src/sage/algebras/steenrod/steenrod_algebra.py @@ -455,7 +455,9 @@ from sage.combinat.free_module import CombinatorialFreeModule from sage.misc.lazy_attribute import lazy_attribute from sage.misc.cachefunc import cached_method -from sage.categories.all import ModulesWithBasis, tensor, Hom +from sage.categories.modules_with_basis import ModulesWithBasis +from sage.categories.tensor import tensor +from sage.categories.homset import Hom ###################################################### # the main class @@ -584,7 +586,7 @@ def __init__(self, p=2, basis='milnor', **kwds): sage: A1 == SteenrodAlgebra(2, profile=[2,1], basis='pst') False """ - from sage.arith.all import is_prime + from sage.arith.misc import is_prime from sage.categories.super_hopf_algebras_with_basis import SuperHopfAlgebrasWithBasis from sage.categories.infinite_enumerated_sets import InfiniteEnumeratedSets from sage.categories.finite_enumerated_sets import FiniteEnumeratedSets diff --git a/src/sage/algebras/steenrod/steenrod_algebra_mult.py b/src/sage/algebras/steenrod/steenrod_algebra_mult.py index ec92c86fcc5..1fb52aba028 100644 --- a/src/sage/algebras/steenrod/steenrod_algebra_mult.py +++ b/src/sage/algebras/steenrod/steenrod_algebra_mult.py @@ -611,8 +611,9 @@ def multinomial_odd(list,p): sage: multinomial_odd([1,2,4], 107) 105 """ - from sage.rings.all import GF, Integer - from sage.arith.all import binomial + from sage.rings.finite_rings.finite_field_constructor import FiniteField as GF + from sage.rings.integer import Integer + from sage.arith.misc import binomial n = sum(list) answer = 1 F = GF(p) diff --git a/src/sage/combinat/affine_permutation.py b/src/sage/combinat/affine_permutation.py index 9ae5c240be1..dd3d1b3654b 100644 --- a/src/sage/combinat/affine_permutation.py +++ b/src/sage/combinat/affine_permutation.py @@ -23,7 +23,7 @@ from sage.rings.integer_ring import ZZ from sage.groups.perm_gps.permgroup_named import SymmetricGroup -from sage.arith.all import binomial +from sage.arith.misc import binomial from sage.combinat.root_system.cartan_type import CartanType from sage.combinat.root_system.weyl_group import WeylGroup from sage.combinat.composition import Composition diff --git a/src/sage/combinat/alternating_sign_matrix.py b/src/sage/combinat/alternating_sign_matrix.py index 921320fe22e..9ece92160e1 100644 --- a/src/sage/combinat/alternating_sign_matrix.py +++ b/src/sage/combinat/alternating_sign_matrix.py @@ -46,7 +46,7 @@ from sage.modules.free_module_element import zero_vector from sage.misc.cachefunc import cached_method from sage.rings.integer_ring import ZZ -from sage.arith.all import factorial +from sage.arith.misc import factorial from sage.rings.integer import Integer from sage.combinat.posets.lattices import LatticePoset from sage.combinat.gelfand_tsetlin_patterns import GelfandTsetlinPatternsTopRow diff --git a/src/sage/combinat/baxter_permutations.py b/src/sage/combinat/baxter_permutations.py index 3fe87a12842..c4f34c073f5 100644 --- a/src/sage/combinat/baxter_permutations.py +++ b/src/sage/combinat/baxter_permutations.py @@ -232,7 +232,7 @@ def cardinality(self): """ if self._n == 0: return 1 - from sage.arith.all import binomial + from sage.arith.misc import binomial return sum((binomial(self._n + 1, k) * binomial(self._n + 1, k + 1) * binomial(self._n + 1, k + 2)) // diff --git a/src/sage/combinat/binary_recurrence_sequences.py b/src/sage/combinat/binary_recurrence_sequences.py index a1f2d969c4c..8c244342712 100644 --- a/src/sage/combinat/binary_recurrence_sequences.py +++ b/src/sage/combinat/binary_recurrence_sequences.py @@ -65,7 +65,8 @@ from sage.rings.finite_rings.integer_mod_ring import Integers from sage.rings.finite_rings.finite_field_constructor import GF from sage.rings.integer import Integer -from sage.arith.all import lcm, next_prime, is_prime, next_prime_power, legendre_symbol +from sage.arith.functions import lcm +from sage.arith.misc import is_prime, next_prime, next_prime_power, legendre_symbol from sage.functions.log import log from sage.misc.functional import sqrt diff --git a/src/sage/combinat/blob_algebra.py b/src/sage/combinat/blob_algebra.py index c3d7037ae4c..95899fd66a6 100644 --- a/src/sage/combinat/blob_algebra.py +++ b/src/sage/combinat/blob_algebra.py @@ -24,7 +24,7 @@ #from sage.misc.inherit_comparison import InheritComparisonClasscallMetaclass from sage.misc.cachefunc import cached_method from sage.misc.misc import powerset -from sage.arith.all import binomial +from sage.arith.misc import binomial from sage.categories.finite_enumerated_sets import FiniteEnumeratedSets from sage.categories.algebras import Algebras from sage.combinat.diagram_algebras import (TemperleyLiebDiagrams, diagram_latex, diff --git a/src/sage/combinat/cluster_algebra_quiver/cluster_seed.py b/src/sage/combinat/cluster_algebra_quiver/cluster_seed.py index 283f4ab8985..114c85ae35d 100644 --- a/src/sage/combinat/cluster_algebra_quiver/cluster_seed.py +++ b/src/sage/combinat/cluster_algebra_quiver/cluster_seed.py @@ -43,13 +43,13 @@ from sage.rings.fraction_field import FractionField from sage.rings.polynomial.polynomial_ring_constructor import PolynomialRing from sage.rings.fraction_field_element import FractionFieldElement -from sage.sets.all import Set +from sage.sets.set import Set from sage.graphs.digraph import DiGraph from sage.combinat.cluster_algebra_quiver.quiver_mutation_type import QuiverMutationType_Irreducible, QuiverMutationType_Reducible from sage.combinat.cluster_algebra_quiver.mutation_type import is_mutation_finite from random import randint from sage.misc.misc_c import prod -from sage.matrix.all import identity_matrix +from sage.matrix.special import identity_matrix from sage.matrix.constructor import matrix from sage.combinat.cluster_algebra_quiver.quiver import ClusterQuiver from sage.rings.integer import Integer @@ -3111,7 +3111,7 @@ def principal_extension(self): sage: T2 == T True """ - from sage.matrix.all import identity_matrix + from sage.matrix.special import identity_matrix if self._m != 0: raise ValueError("the b-matrix is not square") M = self._M.stack(identity_matrix(self._n)) @@ -4600,7 +4600,7 @@ def _bino(n, k): 0 """ if n >= 0: - from sage.arith.all import binomial + from sage.arith.misc import binomial return binomial(n, k) else: return 0 diff --git a/src/sage/combinat/cluster_algebra_quiver/quiver.py b/src/sage/combinat/cluster_algebra_quiver/quiver.py index ae459dd8838..5a34fed2294 100644 --- a/src/sage/combinat/cluster_algebra_quiver/quiver.py +++ b/src/sage/combinat/cluster_algebra_quiver/quiver.py @@ -558,7 +558,8 @@ def plot(self, circular=True, center=(0, 0), directed=True, mark=None, """ from sage.plot.colors import rainbow from sage.graphs.graph_generators import GraphGenerators - from sage.all import e, pi, I + from sage.symbolic.constants import e, pi + from sage.rings.imaginary_unit import I graphs = GraphGenerators() # returns positions for graph vertices on two concentric cycles with radius 1 and 2 diff --git a/src/sage/combinat/cluster_algebra_quiver/quiver_mutation_type.py b/src/sage/combinat/cluster_algebra_quiver/quiver_mutation_type.py index 80e66662a2e..13349acbb42 100644 --- a/src/sage/combinat/cluster_algebra_quiver/quiver_mutation_type.py +++ b/src/sage/combinat/cluster_algebra_quiver/quiver_mutation_type.py @@ -27,7 +27,7 @@ from sage.rings.infinity import infinity from sage.graphs.digraph import DiGraph from sage.graphs.graph import Graph -from sage.arith.all import binomial, euler_phi +from sage.arith.misc import binomial, euler_phi from sage.misc.misc_c import prod from sage.matrix.constructor import matrix diff --git a/src/sage/combinat/combinat.py b/src/sage/combinat/combinat.py index a4ad56b0170..845216c49a2 100644 --- a/src/sage/combinat/combinat.py +++ b/src/sage/combinat/combinat.py @@ -167,11 +167,11 @@ from __future__ import annotations from typing import Iterator +from sage.arith.misc import bernoulli, factorial from sage.rings.integer_ring import ZZ from sage.rings.rational_field import QQ from sage.rings.integer import Integer from sage.rings.infinity import infinity -from sage.arith.all import bernoulli, factorial from sage.rings.polynomial.polynomial_element import Polynomial from sage.rings.polynomial.polynomial_ring_constructor import PolynomialRing from sage.libs.pari.all import pari diff --git a/src/sage/combinat/combination.py b/src/sage/combinat/combination.py index 810e55308ec..42e727c6877 100644 --- a/src/sage/combinat/combination.py +++ b/src/sage/combinat/combination.py @@ -28,7 +28,7 @@ from sage.rings.integer import Integer from sage.rings.integer_ring import ZZ -from sage.arith.all import binomial +from sage.arith.misc import binomial from .integer_vector import IntegerVectors from sage.categories.finite_enumerated_sets import FiniteEnumeratedSets from sage.structure.parent import Parent diff --git a/src/sage/combinat/composition_signed.py b/src/sage/combinat/composition_signed.py index 3ba592cd7ae..03e9acfe31e 100644 --- a/src/sage/combinat/composition_signed.py +++ b/src/sage/combinat/composition_signed.py @@ -20,7 +20,7 @@ from sage.rings.integer_ring import ZZ from .composition import Compositions_n, Composition from sage.rings.integer import Integer -from sage.arith.all import binomial +from sage.arith.misc import binomial class SignedCompositions(Compositions_n): diff --git a/src/sage/combinat/crystals/alcove_path.py b/src/sage/combinat/crystals/alcove_path.py index b60717a13ee..91923aee027 100644 --- a/src/sage/combinat/crystals/alcove_path.py +++ b/src/sage/combinat/crystals/alcove_path.py @@ -31,7 +31,7 @@ from sage.graphs.digraph import DiGraph from sage.combinat.root_system.cartan_type import CartanType from sage.combinat.root_system.root_system import RootSystem -from sage.all import vector +from sage.modules.free_module_element import free_module_element as vector from sage.rings.integer import Integer from sage.combinat.root_system.weyl_group import WeylGroup from sage.misc.misc_c import prod diff --git a/src/sage/combinat/cyclic_sieving_phenomenon.py b/src/sage/combinat/cyclic_sieving_phenomenon.py index e654a8fc94a..d09168791cb 100644 --- a/src/sage/combinat/cyclic_sieving_phenomenon.py +++ b/src/sage/combinat/cyclic_sieving_phenomenon.py @@ -26,7 +26,7 @@ # **************************************************************************** from __future__ import annotations from sage.rings.integer_ring import ZZ -from sage.arith.all import lcm +from sage.arith.functions import lcm from sage.rings.polynomial.polynomial_ring_constructor import PolynomialRing diff --git a/src/sage/combinat/decorated_permutation.py b/src/sage/combinat/decorated_permutation.py index 2ca513767c4..e7281b7d3bb 100644 --- a/src/sage/combinat/decorated_permutation.py +++ b/src/sage/combinat/decorated_permutation.py @@ -24,7 +24,7 @@ from sage.structure.unique_representation import UniqueRepresentation from sage.structure.parent import Parent from sage.categories.finite_enumerated_sets import FiniteEnumeratedSets -from sage.arith.all import factorial +from sage.arith.misc import factorial from sage.rings.integer import Integer from sage.combinat.permutation import Permutations from sage.combinat.subset import Subsets diff --git a/src/sage/combinat/descent_algebra.py b/src/sage/combinat/descent_algebra.py index 1245a8d1d59..f34df107585 100644 --- a/src/sage/combinat/descent_algebra.py +++ b/src/sage/combinat/descent_algebra.py @@ -19,7 +19,7 @@ from sage.structure.unique_representation import UniqueRepresentation from sage.categories.algebras import Algebras from sage.categories.realizations import Realizations, Category_realization_of_parent -from sage.categories.all import FiniteDimensionalAlgebrasWithBasis +from sage.categories.finite_dimensional_algebras_with_basis import FiniteDimensionalAlgebrasWithBasis from sage.rings.integer_ring import ZZ from sage.rings.rational_field import QQ from sage.arith.misc import factorial diff --git a/src/sage/combinat/designs/bibd.py b/src/sage/combinat/designs/bibd.py index 72be454ec63..ad25d270dfc 100644 --- a/src/sage/combinat/designs/bibd.py +++ b/src/sage/combinat/designs/bibd.py @@ -53,7 +53,7 @@ from sage.categories.sets_cat import EmptySetError from sage.misc.unknown import Unknown from .design_catalog import transversal_design # type:ignore -from sage.arith.all import binomial, is_prime_power +from sage.arith.misc import binomial, is_prime_power from .group_divisible_designs import GroupDivisibleDesign from .designs_pyx import is_pairwise_balanced_design diff --git a/src/sage/combinat/designs/block_design.py b/src/sage/combinat/designs/block_design.py index abdaca1e17b..6e1c58f0224 100644 --- a/src/sage/combinat/designs/block_design.py +++ b/src/sage/combinat/designs/block_design.py @@ -52,13 +52,13 @@ # (at your option) any later version. # https://www.gnu.org/licenses/ #***************************************************************************** +from sage.arith.misc import binomial, integer_floor, is_prime_power +from sage.categories.sets_cat import EmptySetError from sage.modules.free_module import VectorSpace from sage.rings.integer import Integer from sage.rings.integer_ring import ZZ -from sage.arith.all import binomial, integer_floor, is_prime_power from .incidence_structures import IncidenceStructure from sage.rings.finite_rings.finite_field_constructor import FiniteField -from sage.categories.sets_cat import EmptySetError from sage.misc.unknown import Unknown from sage.matrix.matrix_space import MatrixSpace from sage.libs.gap.libgap import libgap diff --git a/src/sage/combinat/designs/covering_design.py b/src/sage/combinat/designs/covering_design.py index 1c0dfa47628..d87ddc6dfbd 100644 --- a/src/sage/combinat/designs/covering_design.py +++ b/src/sage/combinat/designs/covering_design.py @@ -51,7 +51,7 @@ from sage.misc.sage_eval import sage_eval from sage.structure.sage_object import SageObject from sage.rings.rational import Rational -from sage.arith.all import binomial +from sage.arith.misc import binomial from sage.combinat.combination import Combinations from sage.combinat.designs.incidence_structures import IncidenceStructure from sage.cpython.string import bytes_to_str diff --git a/src/sage/combinat/designs/difference_matrices.py b/src/sage/combinat/designs/difference_matrices.py index 03aeb966af5..9e27b4688c4 100644 --- a/src/sage/combinat/designs/difference_matrices.py +++ b/src/sage/combinat/designs/difference_matrices.py @@ -10,11 +10,11 @@ --------- """ +from sage.arith.misc import divisors, is_prime_power from sage.misc.unknown import Unknown from sage.misc.cachefunc import cached_function from sage.categories.sets_cat import EmptySetError from sage.rings.finite_rings.finite_field_constructor import FiniteField -from sage.arith.all import is_prime_power, divisors from .designs_pyx import is_difference_matrix from .database import DM as DM_constructions diff --git a/src/sage/combinat/designs/group_divisible_designs.py b/src/sage/combinat/designs/group_divisible_designs.py index 6bb032a793d..b6898358c45 100644 --- a/src/sage/combinat/designs/group_divisible_designs.py +++ b/src/sage/combinat/designs/group_divisible_designs.py @@ -31,7 +31,7 @@ # http://www.gnu.org/licenses/ #***************************************************************************** -from sage.arith.all import is_prime_power +from sage.arith.misc import is_prime_power from sage.misc.unknown import Unknown from .incidence_structures import IncidenceStructure diff --git a/src/sage/combinat/designs/incidence_structures.py b/src/sage/combinat/designs/incidence_structures.py index dfb6c90f652..774885a0363 100644 --- a/src/sage/combinat/designs/incidence_structures.py +++ b/src/sage/combinat/designs/incidence_structures.py @@ -1577,7 +1577,7 @@ def is_t_design(self, t=None, v=None, k=None, l=None, return_parameters=False): sage: I.is_t_design(return_parameters=True) (False, (0, 0, 0, 0)) """ - from sage.arith.all import binomial + from sage.arith.misc import binomial # Missing parameters ? if v is None: diff --git a/src/sage/combinat/designs/orthogonal_arrays_build_recursive.py b/src/sage/combinat/designs/orthogonal_arrays_build_recursive.py index 526487adb97..9716849b744 100644 --- a/src/sage/combinat/designs/orthogonal_arrays_build_recursive.py +++ b/src/sage/combinat/designs/orthogonal_arrays_build_recursive.py @@ -365,7 +365,7 @@ def OA_and_oval(q, *, solver=None, integrality_tolerance=1e-3): sage: _ = OA_and_oval """ - from sage.arith.all import is_prime_power + from sage.arith.misc import is_prime_power from sage.combinat.designs.block_design import projective_plane from .orthogonal_arrays import OA_relabel @@ -683,7 +683,7 @@ def thwart_lemma_3_5(k,n,m,a,b,c,d=0,complement=False,explain_construction=False Charles J.Colbourn, Jeffrey H. Dinitz, Mieczyslaw Wojtas. Designs, Codes and Cryptography 5, no. 3 (1995): 189-197. """ - from sage.arith.all import is_prime_power + from sage.arith.misc import is_prime_power from sage.rings.finite_rings.finite_field_constructor import FiniteField as GF if complement: @@ -797,7 +797,7 @@ def thwart_lemma_4_1(k,n,m,explain_construction=False): Canad. Math. Bull vol7 num.4 (1964) """ from sage.rings.finite_rings.finite_field_constructor import FiniteField - from sage.arith.all import is_prime_power + from sage.arith.misc import is_prime_power from .block_design import DesarguesianProjectivePlaneDesign from itertools import chain @@ -1387,7 +1387,7 @@ def brouwer_separable_design(k,t,q,x,check=False,verbose=False,explain_construct from sage.combinat.designs.orthogonal_arrays import OA_from_PBD from .difference_family import difference_family from .orthogonal_arrays import incomplete_orthogonal_array - from sage.arith.all import is_prime_power + from sage.arith.misc import is_prime_power if explain_construction: return ("Brouwer's separable design construction with t={},q={},x={} from:\n"+ diff --git a/src/sage/combinat/designs/orthogonal_arrays_find_recursive.pyx b/src/sage/combinat/designs/orthogonal_arrays_find_recursive.pyx index d1d4eb10828..3fee26e2a22 100644 --- a/src/sage/combinat/designs/orthogonal_arrays_find_recursive.pyx +++ b/src/sage/combinat/designs/orthogonal_arrays_find_recursive.pyx @@ -48,7 +48,7 @@ Functions from sage.misc.cachefunc import cached_function from .orthogonal_arrays import orthogonal_array from sage.rings.integer cimport Integer, smallInteger -from sage.arith.all import prime_powers +from sage.arith.misc import prime_powers @cached_function def find_recursive_construction(k, n): diff --git a/src/sage/combinat/designs/resolvable_bibd.py b/src/sage/combinat/designs/resolvable_bibd.py index 7085e2d9ab1..944a1b6d4a7 100644 --- a/src/sage/combinat/designs/resolvable_bibd.py +++ b/src/sage/combinat/designs/resolvable_bibd.py @@ -48,7 +48,7 @@ --------- """ from itertools import repeat -from sage.arith.all import is_prime_power +from sage.arith.misc import is_prime_power from sage.combinat.designs.bibd import BalancedIncompleteBlockDesign from sage.categories.sets_cat import EmptySetError from .bibd import balanced_incomplete_block_design diff --git a/src/sage/combinat/dyck_word.py b/src/sage/combinat/dyck_word.py index beb6b4404f6..83baa7a0f5e 100644 --- a/src/sage/combinat/dyck_word.py +++ b/src/sage/combinat/dyck_word.py @@ -89,7 +89,7 @@ from sage.structure.unique_representation import UniqueRepresentation from sage.categories.finite_enumerated_sets import FiniteEnumeratedSets from sage.categories.infinite_enumerated_sets import InfiniteEnumeratedSets -from sage.categories.all import Posets +from sage.categories.posets import Posets from sage.rings.integer_ring import ZZ from sage.rings.rational_field import QQ @@ -1979,7 +1979,7 @@ def number_of_parking_functions(self) -> int: sage: DyckWord(area_sequence=[0,0,0]).number_of_parking_functions() 6 """ - from sage.arith.all import multinomial + from sage.arith.misc import multinomial return multinomial(self.rise_composition()) def list_parking_functions(self): @@ -3778,7 +3778,7 @@ def cardinality(self) -> int: ....: for p in range(7)) True """ - from sage.arith.all import binomial + from sage.arith.misc import binomial return (self.k1 - self.k2 + 1) * binomial(self.k1 + self.k2, self.k2) // (self.k1 + 1) ################################################################ diff --git a/src/sage/combinat/free_module.py b/src/sage/combinat/free_module.py index c8269e5f96f..0d59caabd55 100644 --- a/src/sage/combinat/free_module.py +++ b/src/sage/combinat/free_module.py @@ -24,7 +24,10 @@ from sage.misc.cachefunc import cached_method from sage.misc.lazy_attribute import lazy_attribute from sage.categories.morphism import SetMorphism -from sage.categories.all import Category, Sets, ModulesWithBasis, GradedAlgebrasWithBasis +from sage.categories.category import Category +from sage.categories.sets_cat import Sets +from sage.categories.modules_with_basis import ModulesWithBasis +from sage.categories.graded_algebras_with_basis import GradedAlgebrasWithBasis from sage.categories.tensor import tensor import sage.data_structures.blas_dict as blas from sage.typeset.ascii_art import AsciiArt, ascii_art diff --git a/src/sage/combinat/fully_packed_loop.py b/src/sage/combinat/fully_packed_loop.py index b24d6e19ce1..ed007d0a27e 100644 --- a/src/sage/combinat/fully_packed_loop.py +++ b/src/sage/combinat/fully_packed_loop.py @@ -38,7 +38,7 @@ from sage.misc.decorators import options from sage.matrix.constructor import matrix -from sage.arith.all import factorial +from sage.arith.misc import factorial from sage.rings.integer import Integer from sage.misc.misc_c import prod diff --git a/src/sage/combinat/integer_vector.py b/src/sage/combinat/integer_vector.py index 82d4886f100..94a5010f445 100644 --- a/src/sage/combinat/integer_vector.py +++ b/src/sage/combinat/integer_vector.py @@ -42,7 +42,7 @@ from sage.categories.infinite_enumerated_sets import InfiniteEnumeratedSets from sage.categories.finite_enumerated_sets import FiniteEnumeratedSets from sage.rings.infinity import PlusInfinity -from sage.arith.all import binomial +from sage.arith.misc import binomial from sage.rings.integer_ring import ZZ from sage.rings.semirings.non_negative_integer_semiring import NN from sage.rings.integer import Integer diff --git a/src/sage/combinat/integer_vector_weighted.py b/src/sage/combinat/integer_vector_weighted.py index a03314b6bf7..1b110c34140 100644 --- a/src/sage/combinat/integer_vector_weighted.py +++ b/src/sage/combinat/integer_vector_weighted.py @@ -282,7 +282,8 @@ def __init__(self, weight): sage: TestSuite(C).run() """ self._weights = weight - from sage.sets.all import Family, NonNegativeIntegers + from sage.sets.family import Family + from sage.sets.non_negative_integers import NonNegativeIntegers # Use "partial" to make the basis function (with the weights # argument specified) pickleable. Otherwise, it seems to # cause problems... diff --git a/src/sage/combinat/interval_posets.py b/src/sage/combinat/interval_posets.py index e8168802800..0dff0188cda 100644 --- a/src/sage/combinat/interval_posets.py +++ b/src/sage/combinat/interval_posets.py @@ -36,7 +36,7 @@ from sage.categories.enumerated_sets import EnumeratedSets from sage.categories.finite_enumerated_sets import FiniteEnumeratedSets from sage.categories.posets import Posets -from sage.categories.all import Monoids +from sage.categories.monoids import Monoids from sage.combinat.posets.posets import Poset, FinitePoset from sage.categories.finite_posets import FinitePosets from sage.combinat.binary_tree import BinaryTrees @@ -3709,7 +3709,7 @@ def cardinality(self) -> Integer: sage: [TamariIntervalPosets(i).cardinality() for i in range(6)] [1, 1, 3, 13, 68, 399] """ - from sage.arith.all import binomial + from sage.arith.misc import binomial n = self._size if n == 0: return Integer(1) diff --git a/src/sage/combinat/matrices/hadamard_matrix.py b/src/sage/combinat/matrices/hadamard_matrix.py index bf915399d20..1fa92388214 100644 --- a/src/sage/combinat/matrices/hadamard_matrix.py +++ b/src/sage/combinat/matrices/hadamard_matrix.py @@ -54,21 +54,27 @@ # https://www.gnu.org/licenses/ # ***************************************************************************** +from math import sqrt from urllib.request import urlopen -from sage.combinat.designs.difference_family import get_fixed_relative_difference_set, relative_difference_set_from_homomorphism, skew_supplementary_difference_set +from sage.arith.misc import divisors, is_prime_power, is_square +from sage.combinat.designs.difference_family import (get_fixed_relative_difference_set, + relative_difference_set_from_homomorphism, + skew_supplementary_difference_set) +from sage.combinat.t_sequences import T_sequences_smallcases +from sage.cpython.string import bytes_to_str from sage.rings.integer_ring import ZZ -from sage.matrix.constructor import matrix, block_matrix, block_diagonal_matrix, diagonal_matrix -from sage.arith.all import is_square, is_prime_power, divisors -from math import sqrt -from sage.matrix.constructor import identity_matrix as I -from sage.matrix.constructor import ones_matrix as J -from sage.matrix.constructor import zero_matrix, matrix_method +from sage.rings.polynomial.polynomial_ring_constructor import PolynomialRing +from sage.matrix.constructor import (block_matrix, + block_diagonal_matrix, + diagonal_matrix, + identity_matrix as I, + ones_matrix as J, + matrix, + matrix_method, + zero_matrix) from sage.misc.unknown import Unknown -from sage.cpython.string import bytes_to_str from sage.modules.free_module_element import vector -from sage.combinat.t_sequences import T_sequences_smallcases -from sage.rings.polynomial.polynomial_ring_constructor import PolynomialRing def normalise_hadamard(H, skew=False): diff --git a/src/sage/combinat/matrices/latin.py b/src/sage/combinat/matrices/latin.py index 82e6ff65311..e36edf0fc82 100644 --- a/src/sage/combinat/matrices/latin.py +++ b/src/sage/combinat/matrices/latin.py @@ -139,7 +139,7 @@ from sage.combinat.permutation import Permutation from sage.interfaces.gap import gap from sage.groups.perm_gps.permgroup import PermutationGroup -from sage.arith.all import is_prime +from sage.arith.misc import is_prime from sage.rings.finite_rings.finite_field_constructor import FiniteField from sage.misc.flatten import flatten diff --git a/src/sage/combinat/multiset_partition_into_sets_ordered.py b/src/sage/combinat/multiset_partition_into_sets_ordered.py index 6f5495f36e9..283926a2c87 100755 --- a/src/sage/combinat/multiset_partition_into_sets_ordered.py +++ b/src/sage/combinat/multiset_partition_into_sets_ordered.py @@ -81,7 +81,7 @@ from sage.rings.infinity import infinity from sage.rings.integer_ring import ZZ from sage.rings.power_series_ring import PowerSeriesRing -from sage.arith.all import binomial +from sage.arith.misc import binomial from sage.combinat.subset import Subsets_sk from sage.combinat.composition import Composition, Compositions, composition_iterator_fast diff --git a/src/sage/combinat/ncsf_qsym/generic_basis_code.py b/src/sage/combinat/ncsf_qsym/generic_basis_code.py index 8763a8e1bee..270a79e1a46 100644 --- a/src/sage/combinat/ncsf_qsym/generic_basis_code.py +++ b/src/sage/combinat/ncsf_qsym/generic_basis_code.py @@ -34,7 +34,7 @@ from sage.combinat.partition import Partition from sage.combinat.permutation import Permutations from sage.rings.integer import Integer -from sage.categories.all import AlgebrasWithBasis +from sage.categories.algebras_with_basis import AlgebrasWithBasis from sage.misc.lazy_attribute import lazy_attribute from sage.misc.abstract_method import abstract_method from sage.categories.category_types import Category_over_base_ring diff --git a/src/sage/combinat/ncsf_qsym/ncsf.py b/src/sage/combinat/ncsf_qsym/ncsf.py index f1fd9622bae..a17d14b33d9 100644 --- a/src/sage/combinat/ncsf_qsym/ncsf.py +++ b/src/sage/combinat/ncsf_qsym/ncsf.py @@ -2254,7 +2254,7 @@ def coproduct(self): From: Non-Commutative Symmetric Functions over the Rational Field in the Complete basis To: Non-Commutative Symmetric Functions over the Rational Field in the Complete basis # Non-Commutative Symmetric Functions over the Rational Field in the Complete basis """ - from sage.categories.all import tensor + from sage.categories.tensor import tensor if hasattr(self, "coproduct_on_generators"): return self.algebra_morphism(self.coproduct_on_generators, codomain = tensor([self, self])) else: @@ -2500,7 +2500,7 @@ def coproduct_on_generators(self, i): if i < 1: raise ValueError("Not a positive integer: {}".format(i)) x = self.algebra_generators()[i] - from sage.categories.all import tensor + from sage.categories.tensor import tensor return tensor([self.one(), x]) + tensor([x, self.one()]) class Ribbon(CombinatorialFreeModule, BindableClass): diff --git a/src/sage/combinat/ncsf_qsym/qsym.py b/src/sage/combinat/ncsf_qsym/qsym.py index 08633d12c4e..8bdef2fa7dd 100644 --- a/src/sage/combinat/ncsf_qsym/qsym.py +++ b/src/sage/combinat/ncsf_qsym/qsym.py @@ -3688,7 +3688,7 @@ def _precompute_M(self, n): M = self.realization_of().M() if l <= n: from sage.misc.cachefunc import cached_function - from sage.arith.all import gcd + from sage.arith.misc import gcd @cached_function def monolambda(I): diff --git a/src/sage/combinat/ncsym/bases.py b/src/sage/combinat/ncsym/bases.py index 25f3bece38e..8b703487547 100644 --- a/src/sage/combinat/ncsym/bases.py +++ b/src/sage/combinat/ncsym/bases.py @@ -18,7 +18,9 @@ from sage.misc.bindable_class import BindableClass from sage.categories.graded_hopf_algebras import GradedHopfAlgebras from sage.categories.realizations import Category_realization_of_parent -from sage.categories.all import ModulesWithBasis, tensor, Hom +from sage.categories.modules_with_basis import ModulesWithBasis +from sage.categories.tensor import tensor +from sage.categories.homset import Hom from sage.combinat.set_partition import SetPartition, SetPartitions from sage.combinat.free_module import CombinatorialFreeModule diff --git a/src/sage/combinat/necklace.py b/src/sage/combinat/necklace.py index a065cabdd2c..bcfb0d45185 100644 --- a/src/sage/combinat/necklace.py +++ b/src/sage/combinat/necklace.py @@ -22,15 +22,15 @@ # https://www.gnu.org/licenses/ # **************************************************************************** -from sage.combinat.composition import Composition +from sage.arith.misc import divisors, euler_phi, factorial, gcd from sage.categories.finite_enumerated_sets import FiniteEnumeratedSets +from sage.combinat.composition import Composition +from sage.combinat.misc import DoublyLinkedList +from sage.misc.misc_c import prod +from sage.rings.integer import Integer +from sage.rings.integer_ring import ZZ from sage.structure.parent import Parent from sage.structure.unique_representation import UniqueRepresentation -from sage.arith.all import euler_phi, factorial, divisors, gcd -from sage.rings.integer_ring import ZZ -from sage.rings.integer import Integer -from sage.misc.misc_c import prod -from sage.combinat.misc import DoublyLinkedList def Necklaces(content): diff --git a/src/sage/combinat/partition.py b/src/sage/combinat/partition.py index cf1b0c2aee9..5dcea144623 100644 --- a/src/sage/combinat/partition.py +++ b/src/sage/combinat/partition.py @@ -283,10 +283,9 @@ from copy import copy from itertools import accumulate +from sage.arith.misc import binomial, factorial, gcd, multinomial from sage.libs.pari.all import pari from sage.libs.flint.arith import number_of_partitions as flint_number_of_partitions - -from sage.arith.misc import multinomial from sage.structure.global_options import GlobalOptions from sage.structure.parent import Parent from sage.structure.unique_representation import UniqueRepresentation @@ -308,7 +307,6 @@ from sage.rings.integer_ring import ZZ from sage.rings.rational_field import QQ from sage.rings.semirings.non_negative_integer_semiring import NN -from sage.arith.all import factorial, gcd from sage.rings.polynomial.polynomial_ring_constructor import PolynomialRing from sage.rings.integer import Integer from sage.rings.infinity import infinity @@ -326,7 +324,6 @@ from sage.combinat.combinatorial_map import combinatorial_map from sage.groups.perm_gps.permgroup import PermutationGroup from sage.graphs.dot2tex_utils import have_dot2tex -from sage.arith.all import binomial class Partition(CombinatorialElement): diff --git a/src/sage/combinat/partition_algebra.py b/src/sage/combinat/partition_algebra.py index fcece47fbf8..9136b682c59 100644 --- a/src/sage/combinat/partition_algebra.py +++ b/src/sage/combinat/partition_algebra.py @@ -15,18 +15,18 @@ # # https://www.gnu.org/licenses/ # **************************************************************************** -from .combinat import catalan_number -from sage.combinat.free_module import CombinatorialFreeModule +from sage.arith.misc import binomial, factorial from sage.categories.algebras_with_basis import AlgebrasWithBasis +from sage.combinat.combinat import catalan_number +from sage.combinat.free_module import CombinatorialFreeModule +from sage.combinat.permutation import Permutations from sage.combinat.set_partition import SetPartition, SetPartitions, SetPartitions_set -from sage.sets.set import Set, Set_generic +from sage.combinat.subset import Subsets +from sage.functions.all import ceil from sage.graphs.graph import Graph -from sage.arith.all import factorial, binomial -from .permutation import Permutations from sage.rings.integer_ring import ZZ from sage.rings.rational_field import QQ -from .subset import Subsets -from sage.functions.all import ceil +from sage.sets.set import Set, Set_generic def _int_or_half_int(k): diff --git a/src/sage/combinat/path_tableaux/frieze.py b/src/sage/combinat/path_tableaux/frieze.py index 1706a5cd4e1..b1bbdab1ed7 100644 --- a/src/sage/combinat/path_tableaux/frieze.py +++ b/src/sage/combinat/path_tableaux/frieze.py @@ -327,7 +327,7 @@ def triangulation(self): from sage.plot.line import line from sage.plot.text import text from sage.functions.trig import sin, cos - from sage.all import pi + from sage.symbolic.constants import pi G = Graphics() G.set_aspect_ratio(1.0) diff --git a/src/sage/combinat/permutation.py b/src/sage/combinat/permutation.py index ec1958ee313..14aeb35c876 100644 --- a/src/sage/combinat/permutation.py +++ b/src/sage/combinat/permutation.py @@ -239,37 +239,37 @@ # **************************************************************************** from __future__ import annotations from typing import Iterator +import itertools -from sage.structure.parent import Parent -from sage.structure.unique_representation import UniqueRepresentation -from sage.categories.infinite_enumerated_sets import InfiniteEnumeratedSets +from sage.arith.misc import factorial, multinomial from sage.categories.finite_enumerated_sets import FiniteEnumeratedSets -from sage.categories.sets_with_grading import SetsWithGrading -from sage.categories.finite_weyl_groups import FiniteWeylGroups from sage.categories.finite_permutation_groups import FinitePermutationGroups -from sage.structure.list_clone import ClonableArray -from sage.structure.global_options import GlobalOptions +from sage.categories.finite_weyl_groups import FiniteWeylGroups +from sage.categories.infinite_enumerated_sets import InfiniteEnumeratedSets +from sage.categories.sets_with_grading import SetsWithGrading +from sage.combinat.backtrack import GenericBacktracker +from sage.combinat.combinat import CombinatorialElement, catalan_number +from sage.combinat.combinatorial_map import combinatorial_map +from sage.combinat.composition import Composition +from sage.combinat.permutation_cython import (left_action_product, right_action_product, + left_action_same_n, right_action_same_n, + map_to_list, next_perm) +from sage.combinat.rsk import RSK, RSK_inverse +from sage.combinat.tools import transitive_ideal +from sage.graphs.digraph import DiGraph +from sage.groups.perm_gps.permgroup_element import PermutationGroupElement +from sage.groups.perm_gps.permgroup_named import SymmetricGroup from sage.libs.gap.libgap import libgap +from sage.matrix.matrix_space import MatrixSpace +from sage.misc.cachefunc import cached_method +from sage.misc.prandom import sample from sage.rings.integer import Integer from sage.rings.integer_ring import ZZ from sage.rings.polynomial.polynomial_ring_constructor import PolynomialRing -from sage.arith.all import factorial, multinomial -from sage.matrix.matrix_space import MatrixSpace -from sage.combinat.tools import transitive_ideal -from sage.combinat.composition import Composition -from sage.groups.perm_gps.permgroup_named import SymmetricGroup -from sage.groups.perm_gps.permgroup_element import PermutationGroupElement -from sage.misc.prandom import sample -from sage.graphs.digraph import DiGraph -import itertools -from .combinat import CombinatorialElement, catalan_number -from sage.misc.cachefunc import cached_method -from .backtrack import GenericBacktracker -from sage.combinat.combinatorial_map import combinatorial_map -from sage.combinat.rsk import RSK, RSK_inverse -from sage.combinat.permutation_cython import (left_action_product, - right_action_product, left_action_same_n, right_action_same_n, - map_to_list, next_perm) +from sage.structure.global_options import GlobalOptions +from sage.structure.list_clone import ClonableArray +from sage.structure.parent import Parent +from sage.structure.unique_representation import UniqueRepresentation class Permutation(CombinatorialElement): diff --git a/src/sage/combinat/posets/hasse_diagram.py b/src/sage/combinat/posets/hasse_diagram.py index f59f4fd951f..c794ef1f2f1 100644 --- a/src/sage/combinat/posets/hasse_diagram.py +++ b/src/sage/combinat/posets/hasse_diagram.py @@ -23,7 +23,7 @@ from sage.rings.finite_rings.finite_field_constructor import GF from sage.misc.lazy_attribute import lazy_attribute from sage.misc.cachefunc import cached_method -from sage.arith.all import binomial +from sage.arith.misc import binomial from sage.misc.rest_index_of_methods import gen_rest_table_index from sage.combinat.posets.hasse_cython import (moebius_matrix_fast, coxeter_matrix_fast, diff --git a/src/sage/combinat/posets/posets.py b/src/sage/combinat/posets/posets.py index 239258cb42c..19627d360cb 100644 --- a/src/sage/combinat/posets/posets.py +++ b/src/sage/combinat/posets/posets.py @@ -292,7 +292,7 @@ from sage.misc.cachefunc import cached_method from sage.misc.lazy_attribute import lazy_attribute from sage.misc.misc_c import prod -from sage.arith.all import binomial +from sage.arith.misc import binomial from sage.categories.category import Category from sage.categories.sets_cat import Sets from sage.categories.finite_enumerated_sets import FiniteEnumeratedSets diff --git a/src/sage/combinat/rigged_configurations/kleber_tree.py b/src/sage/combinat/rigged_configurations/kleber_tree.py index e6c73af4d50..82c99e8ad73 100644 --- a/src/sage/combinat/rigged_configurations/kleber_tree.py +++ b/src/sage/combinat/rigged_configurations/kleber_tree.py @@ -71,7 +71,7 @@ from sage.misc.cachefunc import cached_method from sage.misc.latex import latex from sage.misc.misc_c import prod -from sage.arith.all import binomial +from sage.arith.misc import binomial from sage.features import FeatureNotPresentError from sage.rings.integer import Integer diff --git a/src/sage/combinat/root_system/cartan_matrix.py b/src/sage/combinat/root_system/cartan_matrix.py index 2cf987db202..3a26227b4f1 100644 --- a/src/sage/combinat/root_system/cartan_matrix.py +++ b/src/sage/combinat/root_system/cartan_matrix.py @@ -489,7 +489,7 @@ def symmetrizer(self): iset = self.index_set() # The result from is_symmetrizable needs to be scaled # to integer coefficients - from sage.arith.all import LCM + from sage.arith.functions import lcm as LCM from sage.rings.rational_field import QQ scalar = LCM([QQ(x).denominator() for x in sym]) return Family( {iset[i]: ZZ(val*scalar) for i, val in enumerate(sym)} ) diff --git a/src/sage/combinat/root_system/coxeter_type.py b/src/sage/combinat/root_system/coxeter_type.py index 9c10c3c04db..39fa6ca0d01 100644 --- a/src/sage/combinat/root_system/coxeter_type.py +++ b/src/sage/combinat/root_system/coxeter_type.py @@ -23,7 +23,7 @@ from sage.combinat.root_system.cartan_type import CartanType import sage.rings.abc from sage.matrix.args import SparseEntry -from sage.matrix.all import Matrix +from sage.matrix.constructor import Matrix from sage.symbolic.ring import SR from sage.structure.unique_representation import UniqueRepresentation from sage.structure.sage_object import SageObject diff --git a/src/sage/combinat/root_system/reflection_group_complex.py b/src/sage/combinat/root_system/reflection_group_complex.py index 626c7e2c2a8..fe3eae18357 100644 --- a/src/sage/combinat/root_system/reflection_group_complex.py +++ b/src/sage/combinat/root_system/reflection_group_complex.py @@ -208,7 +208,8 @@ from sage.combinat.permutation import Permutation from sage.rings.integer_ring import ZZ from sage.rings.rational_field import QQ -from sage.matrix.all import Matrix, identity_matrix +from sage.matrix.constructor import Matrix +from sage.matrix.special import identity_matrix from sage.structure.element import is_Matrix from sage.interfaces.gap3 import gap3 from sage.rings.universal_cyclotomic_field import E @@ -1554,7 +1555,7 @@ def cartan_matrix(self): if self.is_crystallographic(): from sage.combinat.root_system.cartan_matrix import CartanMatrix as CartanMat else: - from sage.matrix.all import Matrix as CartanMat + from sage.matrix.constructor import Matrix as CartanMat return CartanMat(self._gap_group.CartanMat().sage()) def invariant_form(self, brute_force=False): diff --git a/src/sage/combinat/root_system/reflection_group_element.pyx b/src/sage/combinat/root_system/reflection_group_element.pyx index 02761726799..5d6efdf5a76 100644 --- a/src/sage/combinat/root_system/reflection_group_element.pyx +++ b/src/sage/combinat/root_system/reflection_group_element.pyx @@ -33,7 +33,8 @@ from sage.interfaces.gap3 import gap3 from sage.combinat.root_system.cartan_matrix import CartanMatrix from sage.misc.sage_eval import sage_eval from sage.combinat.root_system.reflection_group_c import reduced_word_c, reduce_in_coset -from sage.matrix.all import Matrix, identity_matrix +from sage.matrix.constructor import Matrix +from sage.matrix.special import identity_matrix cdef class ComplexReflectionGroupElement(PermutationGroupElement): diff --git a/src/sage/combinat/root_system/weyl_characters.py b/src/sage/combinat/root_system/weyl_characters.py index f306df7eddf..8d4fffe20fb 100644 --- a/src/sage/combinat/root_system/weyl_characters.py +++ b/src/sage/combinat/root_system/weyl_characters.py @@ -10,7 +10,8 @@ # **************************************************************************** import sage.combinat.root_system.branching_rules -from sage.categories.all import Algebras, AlgebrasWithBasis +from sage.categories.algebras import Algebras +from sage.categories.algebras_with_basis import AlgebrasWithBasis from sage.combinat.free_module import CombinatorialFreeModule from sage.combinat.root_system.cartan_type import CartanType from sage.combinat.root_system.root_system import RootSystem diff --git a/src/sage/combinat/root_system/weyl_group.py b/src/sage/combinat/root_system/weyl_group.py index d64d2c1f366..8ece3dd1a30 100644 --- a/src/sage/combinat/root_system/weyl_group.py +++ b/src/sage/combinat/root_system/weyl_group.py @@ -53,7 +53,9 @@ from sage.combinat.root_system.root_lattice_realizations import RootLatticeRealizations from sage.structure.unique_representation import UniqueRepresentation from sage.structure.richcmp import richcmp, richcmp_not_equal -from sage.categories.all import WeylGroups, FiniteWeylGroups, AffineWeylGroups +from sage.categories.weyl_groups import WeylGroups +from sage.categories.finite_weyl_groups import FiniteWeylGroups +from sage.categories.affine_weyl_groups import AffineWeylGroups from sage.categories.permutation_groups import PermutationGroups from sage.sets.family import Family from sage.matrix.constructor import Matrix diff --git a/src/sage/combinat/schubert_polynomial.py b/src/sage/combinat/schubert_polynomial.py index 7e9164db5de..930d5a0be25 100644 --- a/src/sage/combinat/schubert_polynomial.py +++ b/src/sage/combinat/schubert_polynomial.py @@ -73,7 +73,8 @@ # # https://www.gnu.org/licenses/ # **************************************************************************** -from sage.categories.all import GradedAlgebrasWithBasis + +from sage.categories.graded_algebras_with_basis import GradedAlgebrasWithBasis from sage.combinat.free_module import CombinatorialFreeModule from sage.combinat.key_polynomial import KeyPolynomial from sage.combinat.permutation import Permutations, Permutation diff --git a/src/sage/combinat/set_partition_ordered.py b/src/sage/combinat/set_partition_ordered.py index 268126d65ef..b883df5cb98 100644 --- a/src/sage/combinat/set_partition_ordered.py +++ b/src/sage/combinat/set_partition_ordered.py @@ -24,7 +24,7 @@ # # https://www.gnu.org/licenses/ # **************************************************************************** -from sage.arith.all import factorial, multinomial +from sage.arith.misc import factorial, multinomial from sage.categories.cartesian_product import cartesian_product from sage.categories.finite_enumerated_sets import FiniteEnumeratedSets from sage.categories.infinite_enumerated_sets import InfiniteEnumeratedSets diff --git a/src/sage/combinat/sf/character.py b/src/sage/combinat/sf/character.py index c3b2ba786ce..eda80d2d1c3 100644 --- a/src/sage/combinat/sf/character.py +++ b/src/sage/combinat/sf/character.py @@ -27,11 +27,11 @@ # https://www.gnu.org/licenses/ # **************************************************************************** -from sage.combinat.sf.sfa import SymmetricFunctionAlgebra_generic as SFA_generic -from sage.misc.cachefunc import cached_method +from sage.arith.misc import binomial, divisors, moebius from sage.categories.homset import Hom from sage.categories.morphism import SetMorphism -from sage.arith.all import divisors, moebius, binomial +from sage.combinat.sf.sfa import SymmetricFunctionAlgebra_generic as SFA_generic +from sage.misc.cachefunc import cached_method from sage.rings.integer import Integer diff --git a/src/sage/combinat/sf/elementary.py b/src/sage/combinat/sf/elementary.py index 8ec26324de0..8d242f55b84 100644 --- a/src/sage/combinat/sf/elementary.py +++ b/src/sage/combinat/sf/elementary.py @@ -17,12 +17,13 @@ # # http://www.gnu.org/licenses/ #***************************************************************************** -from . import multiplicative, classical +from sage.arith.misc import binomial, factorial from sage.combinat.partition import Partition +from sage.combinat.sf import multiplicative, classical from sage.misc.misc_c import prod -from sage.arith.all import factorial, binomial from sage.rings.infinity import infinity + ################################### # # # Elementary Symmetric Functions # diff --git a/src/sage/combinat/sf/homogeneous.py b/src/sage/combinat/sf/homogeneous.py index d339118ccc7..b97bfae074c 100644 --- a/src/sage/combinat/sf/homogeneous.py +++ b/src/sage/combinat/sf/homogeneous.py @@ -25,11 +25,11 @@ # Homogeneous Symmetric Functions # # # #################################### -from . import multiplicative, classical +from sage.arith.misc import binomial, factorial from sage.combinat.partition import Partition -from sage.rings.infinity import infinity +from sage.combinat.sf import multiplicative, classical from sage.misc.misc_c import prod -from sage.arith.all import factorial, binomial +from sage.rings.infinity import infinity class SymmetricFunctionAlgebra_homogeneous(multiplicative.SymmetricFunctionAlgebra_multiplicative): diff --git a/src/sage/combinat/sf/jack.py b/src/sage/combinat/sf/jack.py index 617f31f7f1d..7c067bcdf03 100644 --- a/src/sage/combinat/sf/jack.py +++ b/src/sage/combinat/sf/jack.py @@ -33,7 +33,8 @@ import sage.categories.all from sage.rings.integer import Integer from sage.rings.rational_field import QQ -from sage.arith.all import gcd, lcm +from sage.arith.misc import gcd +from sage.arith.functions import lcm from sage.rings.fraction_field import is_FractionField from sage.misc.misc_c import prod from sage.categories.morphism import SetMorphism diff --git a/src/sage/combinat/sf/k_dual.py b/src/sage/combinat/sf/k_dual.py index 84577daf725..391fb488943 100644 --- a/src/sage/combinat/sf/k_dual.py +++ b/src/sage/combinat/sf/k_dual.py @@ -31,7 +31,7 @@ from sage.structure.parent import Parent from sage.structure.unique_representation import UniqueRepresentation -from sage.categories.all import GradedHopfAlgebras +from sage.categories.graded_hopf_algebras import GradedHopfAlgebras from sage.combinat.partition import Partition, Partitions, Partitions_all_bounded, PartitionsGreatestLE from sage.combinat.free_module import CombinatorialFreeModule from sage.categories.realizations import Realizations, Category_realization_of_parent diff --git a/src/sage/combinat/sf/macdonald.py b/src/sage/combinat/sf/macdonald.py index 5702e469658..99c9a00ca5b 100644 --- a/src/sage/combinat/sf/macdonald.py +++ b/src/sage/combinat/sf/macdonald.py @@ -53,7 +53,7 @@ from sage.categories.modules_with_basis import ModulesWithBasis from . import sfa from sage.combinat.partition import Partitions_n, _Partitions -from sage.matrix.all import MatrixSpace +from sage.matrix.matrix_space import MatrixSpace from sage.rings.rational_field import QQ from sage.misc.misc_c import prod from sage.misc.cachefunc import cached_function diff --git a/src/sage/combinat/sf/powersum.py b/src/sage/combinat/sf/powersum.py index ab216cf3e84..22a277b1ef8 100644 --- a/src/sage/combinat/sf/powersum.py +++ b/src/sage/combinat/sf/powersum.py @@ -19,7 +19,7 @@ #***************************************************************************** from . import sfa, multiplicative, classical from sage.combinat.partition import Partition -from sage.arith.all import divisors +from sage.arith.misc import divisors from sage.rings.infinity import infinity from sage.rings.polynomial.polynomial_ring_constructor import PolynomialRing from sage.misc.misc_c import prod diff --git a/src/sage/combinat/sf/sfa.py b/src/sage/combinat/sf/sfa.py index b435764a746..6a2fc0412d8 100644 --- a/src/sage/combinat/sf/sfa.py +++ b/src/sage/combinat/sf/sfa.py @@ -1015,7 +1015,7 @@ def gessel_reutenauer(self, lam): m = lam.to_exp_dict() # == {i: m_i | i occurs in lam} p = self.realization_of().power() h = self.realization_of().complete() - from sage.arith.all import moebius, squarefree_divisors + from sage.arith.misc import moebius, squarefree_divisors mu = moebius def component(i, g): # == h_g[L_i] @@ -1809,7 +1809,7 @@ def __init__(self, Sym, basis_name=None, prefix=None, graded=True): sage: TestSuite(s).run() """ R = Sym.base_ring() - from sage.categories.all import CommutativeRings + from sage.categories.commutative_rings import CommutativeRings if R not in CommutativeRings(): raise TypeError("argument R must be a commutative ring") try: @@ -4711,7 +4711,8 @@ def arithmetic_product(self, x): parent = self.parent() if parent.has_coerce_map_from(QQ): from sage.combinat.partition import Partition - from sage.arith.all import gcd, lcm + from sage.arith.misc import gcd + from sage.arith.functions import lcm from itertools import product, repeat, chain p = parent.realization_of().power() diff --git a/src/sage/combinat/sf/witt.py b/src/sage/combinat/sf/witt.py index a129a267229..cceebed7889 100644 --- a/src/sage/combinat/sf/witt.py +++ b/src/sage/combinat/sf/witt.py @@ -757,7 +757,7 @@ def _precompute_p(self, n): """ l = len(self._p_transition_matrices) if l <= n: - from sage.arith.all import divisors + from sage.arith.misc import divisors from sage.combinat.partition import Partition from sage.misc.cachefunc import cached_function @@ -1149,7 +1149,7 @@ def wsum(m): # expansion of h_m in w-basis, for m > 0 return result if parent_name == "powersum": - from sage.arith.all import divisors + from sage.arith.misc import divisors from sage.combinat.partition import Partition @cached_function diff --git a/src/sage/combinat/similarity_class_type.py b/src/sage/combinat/similarity_class_type.py index cf32b79905c..923dc64cb0d 100644 --- a/src/sage/combinat/similarity_class_type.py +++ b/src/sage/combinat/similarity_class_type.py @@ -189,22 +189,22 @@ class type, it is also possible to compute the number of classes of that type # **************************************************************************** from itertools import chain, product -from sage.misc.misc_c import prod -from sage.arith.misc import factorial -from sage.arith.all import moebius, divisors -from sage.misc.inherit_comparison import InheritComparisonClasscallMetaclass -from sage.structure.element import Element, is_Matrix -from sage.structure.parent import Parent -from sage.structure.unique_representation import UniqueRepresentation + +from sage.arith.misc import divisors, factorial, moebius from sage.categories.finite_enumerated_sets import FiniteEnumeratedSets from sage.combinat.combinat import CombinatorialElement +from sage.combinat.misc import IterableFunctionCall from sage.combinat.partition import Partitions, Partition +from sage.misc.cachefunc import cached_in_parent_method, cached_function +from sage.misc.inherit_comparison import InheritComparisonClasscallMetaclass +from sage.misc.misc_c import prod from sage.rings.fraction_field import FractionField from sage.rings.integer_ring import ZZ -from sage.rings.rational_field import QQ -from sage.misc.cachefunc import cached_in_parent_method, cached_function -from sage.combinat.misc import IterableFunctionCall from sage.rings.polynomial.polynomial_ring_constructor import PolynomialRing +from sage.rings.rational_field import QQ +from sage.structure.element import Element, is_Matrix +from sage.structure.parent import Parent +from sage.structure.unique_representation import UniqueRepresentation @cached_function diff --git a/src/sage/combinat/skew_tableau.py b/src/sage/combinat/skew_tableau.py index 66c0a410f8f..8c1d5566667 100644 --- a/src/sage/combinat/skew_tableau.py +++ b/src/sage/combinat/skew_tableau.py @@ -36,9 +36,9 @@ from sage.rings.integer import Integer from sage.rings.integer_ring import ZZ from sage.rings.rational_field import QQ -from sage.arith.all import factorial +from sage.arith.misc import factorial from sage.rings.infinity import PlusInfinity -from sage.matrix.all import zero_matrix +from sage.matrix.special import zero_matrix from sage.structure.list_clone import ClonableList from sage.combinat.partition import Partition diff --git a/src/sage/combinat/species/cycle_species.py b/src/sage/combinat/species/cycle_species.py index a0afba3b1d0..20d89a770db 100644 --- a/src/sage/combinat/species/cycle_species.py +++ b/src/sage/combinat/species/cycle_species.py @@ -12,11 +12,11 @@ # http://www.gnu.org/licenses/ #***************************************************************************** -from .species import GenericCombinatorialSpecies -from .structure import GenericSpeciesStructure -from sage.structure.unique_representation import UniqueRepresentation -from sage.arith.all import divisors, euler_phi +from sage.arith.misc import divisors, euler_phi from sage.combinat.species.misc import accept_size +from sage.combinat.species.species import GenericCombinatorialSpecies +from sage.combinat.species.structure import GenericSpeciesStructure +from sage.structure.unique_representation import UniqueRepresentation class CycleSpeciesStructure(GenericSpeciesStructure): diff --git a/src/sage/combinat/species/generating_series.py b/src/sage/combinat/species/generating_series.py index 7f2d1f27c38..9d63ce27691 100644 --- a/src/sage/combinat/species/generating_series.py +++ b/src/sage/combinat/species/generating_series.py @@ -53,7 +53,7 @@ from sage.rings.lazy_series_ring import LazyPowerSeriesRing, LazySymmetricFunctions from sage.rings.integer import Integer from sage.rings.rational_field import QQ -from sage.arith.all import divisors +from sage.arith.misc import divisors from sage.combinat.partition import Partition, Partitions from sage.combinat.sf.sf import SymmetricFunctions from sage.misc.cachefunc import cached_function diff --git a/src/sage/combinat/subset.py b/src/sage/combinat/subset.py index 5cae6958510..9543046a7a7 100644 --- a/src/sage/combinat/subset.py +++ b/src/sage/combinat/subset.py @@ -38,7 +38,7 @@ from sage.structure.element import Element from sage.sets.set import Set, Set_object_enumerated -from sage.arith.all import binomial +from sage.arith.misc import binomial from sage.misc.misc import _stable_uniq as uniq from sage.rings.integer_ring import ZZ from sage.rings.integer import Integer @@ -1062,7 +1062,7 @@ def cardinality(self): sage: len(S.list()) 24 """ - from sage.all import prod + from sage.misc.misc_c import prod return Integer(prod(k + 1 for k in self._d.values())) def random_element(self): diff --git a/src/sage/combinat/symmetric_group_algebra.py b/src/sage/combinat/symmetric_group_algebra.py index b8a0bebab44..2b7df01dd0a 100644 --- a/src/sage/combinat/symmetric_group_algebra.py +++ b/src/sage/combinat/symmetric_group_algebra.py @@ -21,7 +21,7 @@ from sage.categories.weyl_groups import WeylGroups from sage.rings.polynomial.polynomial_ring_constructor import PolynomialRing from sage.rings.rational_field import QQ -from sage.arith.all import factorial +from sage.arith.misc import factorial from sage.matrix.constructor import matrix from sage.modules.free_module_element import vector from sage.groups.perm_gps.permgroup_element import PermutationGroupElement diff --git a/src/sage/combinat/tableau.py b/src/sage/combinat/tableau.py index 1105a3ea177..5d0fb107734 100644 --- a/src/sage/combinat/tableau.py +++ b/src/sage/combinat/tableau.py @@ -85,35 +85,35 @@ # https://www.gnu.org/licenses/ # **************************************************************************** from itertools import repeat -from sage.sets.disjoint_union_enumerated_sets import DisjointUnionEnumeratedSets -from sage.sets.family import Family -from sage.sets.non_negative_integers import NonNegativeIntegers -from sage.structure.global_options import GlobalOptions -from sage.structure.unique_representation import UniqueRepresentation -from sage.structure.list_clone import ClonableList -from sage.structure.parent import Parent -from sage.structure.richcmp import richcmp, richcmp_method -from sage.misc.persist import register_unpickle_override -from sage.misc.inherit_comparison import InheritComparisonClasscallMetaclass -from sage.rings.finite_rings.integer_mod_ring import IntegerModRing -from sage.rings.infinity import PlusInfinity -from sage.arith.all import factorial, binomial -from sage.arith.misc import multinomial -from sage.rings.integer import Integer -from sage.combinat.composition import Composition, Compositions -from sage.combinat.integer_vector import IntegerVectors, integer_vectors_nk_fast_iter + import sage.libs.symmetrica.all as symmetrica import sage.misc.prandom as random -from sage.combinat import permutation -from sage.groups.perm_gps.permgroup import PermutationGroup -from sage.misc.misc_c import prod -from sage.misc.misc import powerset + +from sage.arith.misc import binomial, factorial, multinomial from sage.categories.finite_enumerated_sets import FiniteEnumeratedSets from sage.categories.infinite_enumerated_sets import InfiniteEnumeratedSets from sage.categories.sets_cat import Sets - +from sage.combinat import permutation from sage.combinat.combinatorial_map import combinatorial_map +from sage.combinat.composition import Composition, Compositions +from sage.combinat.integer_vector import IntegerVectors, integer_vectors_nk_fast_iter from sage.combinat.posets.posets import Poset +from sage.groups.perm_gps.permgroup import PermutationGroup +from sage.misc.inherit_comparison import InheritComparisonClasscallMetaclass +from sage.misc.misc import powerset +from sage.misc.misc_c import prod +from sage.misc.persist import register_unpickle_override +from sage.rings.finite_rings.integer_mod_ring import IntegerModRing +from sage.rings.infinity import PlusInfinity +from sage.rings.integer import Integer +from sage.sets.disjoint_union_enumerated_sets import DisjointUnionEnumeratedSets +from sage.sets.family import Family +from sage.sets.non_negative_integers import NonNegativeIntegers +from sage.structure.global_options import GlobalOptions +from sage.structure.list_clone import ClonableList +from sage.structure.parent import Parent +from sage.structure.richcmp import richcmp, richcmp_method +from sage.structure.unique_representation import UniqueRepresentation @richcmp_method diff --git a/src/sage/combinat/tableau_tuple.py b/src/sage/combinat/tableau_tuple.py index 8b9af538b00..85a8555ee9b 100644 --- a/src/sage/combinat/tableau_tuple.py +++ b/src/sage/combinat/tableau_tuple.py @@ -228,7 +228,7 @@ from sage.misc.lazy_attribute import lazy_attribute from sage.misc.misc_c import prod from sage.misc.prandom import randint -from sage.arith.all import factorial +from sage.arith.misc import factorial from sage.rings.finite_rings.integer_mod_ring import IntegerModRing from sage.rings.integer import Integer from sage.rings.semirings.non_negative_integer_semiring import NN diff --git a/src/sage/combinat/tamari_lattices.py b/src/sage/combinat/tamari_lattices.py index c08b1348e44..6ef7dd06cdc 100644 --- a/src/sage/combinat/tamari_lattices.py +++ b/src/sage/combinat/tamari_lattices.py @@ -48,7 +48,7 @@ # **************************************************************************** from __future__ import annotations from sage.combinat.posets.lattices import LatticePoset, MeetSemilattice -from sage.arith.all import gcd +from sage.arith.misc import gcd def paths_in_triangle(i, j, a, b) -> list[tuple[int, ...]]: diff --git a/src/sage/combinat/words/lyndon_word.py b/src/sage/combinat/words/lyndon_word.py index ca271c5a114..6adb96421e5 100644 --- a/src/sage/combinat/words/lyndon_word.py +++ b/src/sage/combinat/words/lyndon_word.py @@ -12,17 +12,15 @@ # https://www.gnu.org/licenses/ # **************************************************************************** -from sage.structure.unique_representation import UniqueRepresentation -from sage.structure.parent import Parent - +from sage.arith.misc import divisors, gcd, moebius, multinomial +from sage.combinat.combinat_cython import lyndon_word_iterator from sage.combinat.composition import Composition, Compositions -from sage.rings.integer import Integer -from sage.arith.all import divisors, gcd, moebius, multinomial - from sage.combinat.necklace import _sfc -from sage.combinat.words.words import FiniteWords from sage.combinat.words.finite_word import FiniteWord_class -from sage.combinat.combinat_cython import lyndon_word_iterator +from sage.combinat.words.words import FiniteWords +from sage.rings.integer import Integer +from sage.structure.parent import Parent +from sage.structure.unique_representation import UniqueRepresentation def LyndonWords(e=None, k=None): diff --git a/src/sage/combinat/words/morphism.py b/src/sage/combinat/words/morphism.py index 5b302a34742..da112663af2 100644 --- a/src/sage/combinat/words/morphism.py +++ b/src/sage/combinat/words/morphism.py @@ -3003,7 +3003,7 @@ def rauzy_fractal_plot(self, n=None, exchange=False, eig=None, # 1D plots if dim_fractal == 1: - from sage.all import plot + from sage.plot.plot import plot for a in col_dict: # We plot only the points with a color in col_dict and with positive opacity if (a in col_dict) and (opacity[a] > 0): diff --git a/src/sage/combinat/words/paths.py b/src/sage/combinat/words/paths.py index 3d0ee41a4c4..9d35fe149ee 100644 --- a/src/sage/combinat/words/paths.py +++ b/src/sage/combinat/words/paths.py @@ -1226,7 +1226,7 @@ def tikz_trajectory(self): '(0.000, 0.000) -- (1.00, 0.000) -- (1.50, 0.866) -- (1.00, 1.73) -- (0.000, 1.73) -- (-0.500, 0.866)' """ - from sage.all import n + from sage.misc.functional import N as n f = lambda x: n(x,digits=3) l = [str(tuple(map(f, pt))) for pt in self.points()] return ' -- '.join(l) diff --git a/src/sage/combinat/words/shuffle_product.py b/src/sage/combinat/words/shuffle_product.py index 101e7ca695c..7363d642126 100644 --- a/src/sage/combinat/words/shuffle_product.py +++ b/src/sage/combinat/words/shuffle_product.py @@ -22,7 +22,7 @@ # https://www.gnu.org/licenses/ # **************************************************************************** from sage.combinat.words.word import Word_class, Word -from sage.arith.all import binomial +from sage.arith.misc import binomial from sage.categories.finite_enumerated_sets import FiniteEnumeratedSets from sage.combinat.integer_vector import IntegerVectors from sage.combinat.composition import Composition diff --git a/src/sage/combinat/words/word_generators.py b/src/sage/combinat/words/word_generators.py index b485205878f..66c5f25eda7 100644 --- a/src/sage/combinat/words/word_generators.py +++ b/src/sage/combinat/words/word_generators.py @@ -66,7 +66,7 @@ from sage.combinat.words.finite_word import FiniteWord_class, Factorization from sage.combinat.words.words import FiniteWords, InfiniteWords from sage.combinat.words.morphism import WordMorphism -from sage.arith.all import gcd +from sage.arith.misc import gcd from sage.misc.decorators import rename_keyword diff --git a/src/sage/matroids/basis_matroid.pyx b/src/sage/matroids/basis_matroid.pyx index ff70add1ce2..042f529fedc 100644 --- a/src/sage/matroids/basis_matroid.pyx +++ b/src/sage/matroids/basis_matroid.pyx @@ -79,7 +79,7 @@ from .basis_exchange_matroid cimport BasisExchangeMatroid from .set_system cimport SetSystem from cpython.object cimport Py_EQ, Py_NE -from sage.arith.all import binomial +from sage.arith.misc import binomial from itertools import permutations, combinations diff --git a/src/sage/matroids/constructor.py b/src/sage/matroids/constructor.py index 1fb2cd2b93e..ea3bd181f0c 100644 --- a/src/sage/matroids/constructor.py +++ b/src/sage/matroids/constructor.py @@ -107,7 +107,8 @@ from sage.structure.element import is_Matrix from sage.rings.integer_ring import ZZ from sage.rings.rational_field import QQ -from sage.categories.all import Fields, Rings +from sage.categories.fields import Fields +from sage.categories.rings import Rings from sage.rings.finite_rings.finite_field_base import FiniteField import sage.matroids.matroid import sage.matroids.basis_exchange_matroid diff --git a/src/sage/matroids/extension.pyx b/src/sage/matroids/extension.pyx index 0408e60f86e..04ccf9ec61f 100644 --- a/src/sage/matroids/extension.pyx +++ b/src/sage/matroids/extension.pyx @@ -31,7 +31,7 @@ Methods from sage.data_structures.bitset_base cimport * from .basis_matroid cimport BasisMatroid -from sage.arith.all import binomial +from sage.arith.misc import binomial cdef class CutNode: diff --git a/src/sage/matroids/lean_matrix.pyx b/src/sage/matroids/lean_matrix.pyx index 6b3cf27bcf2..70510e53797 100644 --- a/src/sage/matroids/lean_matrix.pyx +++ b/src/sage/matroids/lean_matrix.pyx @@ -37,7 +37,10 @@ from cysignals.signals cimport sig_on, sig_off from sage.data_structures.bitset_base cimport * from sage.matrix.matrix2 cimport Matrix -from sage.rings.all import ZZ, FiniteField, GF, QQ +from sage.rings.integer_ring import ZZ +from sage.rings.finite_rings.finite_field_constructor import FiniteField +from sage.rings.finite_rings.finite_field_constructor import FiniteField as GF +from sage.rings.rational_field import QQ from sage.rings.integer cimport Integer from sage.rings.rational cimport Rational from sage.libs.gmp.mpq cimport * diff --git a/src/sage/matroids/linear_matroid.pyx b/src/sage/matroids/linear_matroid.pyx index 0c9b0a1baff..5c697a696b4 100644 --- a/src/sage/matroids/linear_matroid.pyx +++ b/src/sage/matroids/linear_matroid.pyx @@ -111,27 +111,27 @@ Methods # https://www.gnu.org/licenses/ # **************************************************************************** +from copy import copy, deepcopy +from itertools import combinations, product + from cpython.object cimport Py_EQ, Py_NE from sage.data_structures.bitset_base cimport * -from sage.structure.richcmp cimport rich_to_bool -from sage.matroids.matroid cimport Matroid -from sage.matroids.basis_exchange_matroid cimport BasisExchangeMatroid -from .lean_matrix cimport (LeanMatrix, GenericMatrix, BinaryMatrix, - TernaryMatrix, QuaternaryMatrix, PlusMinusOneMatrix, - RationalMatrix, generic_identity) -from .set_system cimport SetSystem -from .utilities import newlabel, spanning_stars, spanning_forest, lift_cross_ratios -from sage.graphs.spanning_tree import kruskal from sage.graphs.graph import Graph - -from sage.matrix.matrix2 cimport Matrix -import sage.matrix.constructor +from sage.graphs.spanning_tree import kruskal from sage.matrix.constructor import matrix -from copy import copy, deepcopy -from sage.rings.all import ZZ, QQ, FiniteField, GF -import itertools -from itertools import combinations, product +from sage.matrix.matrix2 cimport Matrix +from sage.matroids.basis_exchange_matroid cimport BasisExchangeMatroid +from sage.matroids.lean_matrix cimport (LeanMatrix, GenericMatrix, BinaryMatrix, + TernaryMatrix, QuaternaryMatrix, PlusMinusOneMatrix, + RationalMatrix, generic_identity) +from sage.matroids.matroid cimport Matroid +from sage.matroids.set_system cimport SetSystem +from sage.matroids.utilities import newlabel, spanning_stars, spanning_forest, lift_cross_ratios +from sage.rings.finite_rings.finite_field_constructor import FiniteField as GF +from sage.rings.integer_ring import ZZ +from sage.rings.rational_field import QQ +from sage.structure.richcmp cimport rich_to_bool cdef bint GF2_not_defined = True cdef GF2, GF2_one, GF2_zero