Skip to content

Commit

Permalink
WIP
Browse files Browse the repository at this point in the history
  • Loading branch information
Matthias Koeppe committed Oct 23, 2023
1 parent 185feec commit 8b04845
Show file tree
Hide file tree
Showing 6 changed files with 99 additions and 6 deletions.
1 change: 1 addition & 0 deletions build/pkgs/sagemath_brial/dependencies_check
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
sagelib
4 changes: 2 additions & 2 deletions pkgs/sagemath-brial/setup.cfg.m4
Original file line number Diff line number Diff line change
Expand Up @@ -18,5 +18,5 @@ install_requires =
[options.extras_require]

test =
# Testing is done with the modularized Sage library
SPKG_INSTALL_REQUIRES_sagemath_categories
# For now, we test with the monolithic Sage library
SPKG_INSTALL_REQUIRES_sagelib
1 change: 1 addition & 0 deletions pkgs/sagemath-objects/MANIFEST.in
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,7 @@ include sage/misc/prandom.* # dep of sage/rings/ring
include sage/ext/stdsage.pxd
include sage/ext/mod_int.*
include sage/ext/cplusplus.pxd
include sage/ext/ccobject.h
include sage/sets/pythonclass.*
include sage/arith/power.*
include sage/arith/numerical_approx.*
Expand Down
74 changes: 73 additions & 1 deletion src/sage/rings/all__sagemath_categories.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,78 @@
# Ring base classes
from .ring import Ring
from .ring import (Ring, Field, CommutativeRing, IntegralDomain,
DedekindDomain, PrincipalIdealDomain, EuclideanDomain)

# Ring element base classes
from sage.structure.element import (CommutativeAlgebraElement,
RingElement, CommutativeRingElement, IntegralDomainElement,
DedekindDomainElement, PrincipalIdealDomainElement,
EuclideanDomainElement, FieldElement)

# Rational numbers
from .rational import Rational
from .rational_field import RationalField, QQ
Rationals = RationalField

# Rational integers.
from .integer_ring import IntegerRing, ZZ, crt_basis
from .integer import Integer

# Integers modulo n.
from sage.rings.finite_rings.integer_mod_ring import IntegerModRing, Zmod
from sage.rings.finite_rings.integer_mod import IntegerMod, Mod, mod
Integers = IntegerModRing

# Infinities
from .infinity import infinity, Infinity, InfinityRing, unsigned_infinity, UnsignedInfinityRing
oo = infinity

# Quotient
from .quotient_ring import QuotientRing

# Localization
from .localization import Localization

# Fraction field
from .fraction_field import FractionField
Frac = FractionField

# Function field
from .function_field.all__sagemath_categories import *

# Double precision floating point numbers
from .real_double import RealDoubleField, RDF, RealDoubleElement

# Ideals
from .ideal import Ideal
ideal = Ideal

# Semirings
from .semirings.all import *

from .finite_rings.all__sagemath_categories import *
from .number_field.all__sagemath_categories import *
from .padics.all__sagemath_categories import *
from .polynomial.all__sagemath_categories import *

# Power series rings
from .power_series_ring import PowerSeriesRing

# Laurent series ring in one variable
from .laurent_series_ring import LaurentSeriesRing

# Puiseux series ring
from .puiseux_series_ring import PuiseuxSeriesRing

# Big-oh notation
from .big_oh import O

# continued fractions
from sage.rings.continued_fraction import (continued_fraction,
continued_fraction_list)

# Lazy reals
from .real_lazy import RealLazyField, RLF, ComplexLazyField, CLF

# Preliminary version of real numbers for doctesting without sage.rings.real_mpfr.
# sage.rings.all redefines it.
RealNumber = RR = RDF # used by the preparser to wrap real literals
4 changes: 1 addition & 3 deletions src/sage/rings/integer_ring.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -54,8 +54,6 @@ import sage.rings.infinity
import sage.rings.rational
import sage.rings.rational_field
import sage.rings.ideal
import sage.libs.pari.all
import sage.rings.ideal
from sage.categories.basic import EuclideanDomains
from sage.categories.infinite_enumerated_sets import InfiniteEnumeratedSets
from sage.rings.number_field.number_field_element_base import NumberFieldElement_base
Expand All @@ -69,7 +67,7 @@ from sage.misc.randstate cimport randstate, current_randstate, SAGE_RAND_MAX

cimport sage.rings.integer as integer

from . import ring
from sage.rings import ring

arith = None
cdef void late_import():
Expand Down
21 changes: 21 additions & 0 deletions src/sage/rings/polynomial/all__sagemath_categories.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# Quotient of polynomial ring
from sage.rings.polynomial.polynomial_quotient_ring import PolynomialQuotientRing
from sage.rings.polynomial.polynomial_quotient_ring_element import PolynomialQuotientRingElement

# Univariate Polynomial Rings
from sage.rings.polynomial.polynomial_ring_constructor import PolynomialRing
from sage.rings.polynomial.polynomial_ring import polygen, polygens
from sage.rings.polynomial.polynomial_element import Polynomial

# Multivariate Polynomial Rings
from sage.rings.polynomial.term_order import TermOrder
from sage.rings.polynomial.multi_polynomial_element import degree_lowest_rational_function

# Infinite Polynomial Rings
from sage.rings.polynomial.infinite_polynomial_ring import InfinitePolynomialRing

# Laurent Polynomial Rings
from sage.rings.polynomial.laurent_polynomial_ring import LaurentPolynomialRing

# Evaluation of cyclotomic polynomials
from sage.rings.polynomial.cyclotomic import cyclotomic_value

0 comments on commit 8b04845

Please sign in to comment.