Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
sagemath
GitHub Repository: sagemath/sagesmc
Path: blob/master/src/sage/rings/all.py
8817 views
1
"""
2
Rings
3
"""
4
5
#*****************************************************************************
6
# Copyright (C) 2005 William Stein <[email protected]>
7
#
8
# Distributed under the terms of the GNU General Public License (GPL)
9
#
10
# This code is distributed in the hope that it will be useful,
11
# but WITHOUT ANY WARRANTY; without even the implied warranty of
12
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
# General Public License for more details.
14
#
15
# The full text of the GPL is available at:
16
#
17
# http://www.gnu.org/licenses/
18
#*****************************************************************************
19
20
# Ring base classes
21
from ring import Ring
22
from commutative_ring import CommutativeRing
23
from integral_domain import IntegralDomain
24
from dedekind_domain import DedekindDomain
25
from principal_ideal_domain import PrincipalIdealDomain
26
from euclidean_domain import EuclideanDomain
27
from field import Field
28
29
from commutative_algebra_element import CommutativeAlgebraElement
30
31
# Ring element base classes
32
from ring_element import RingElement
33
from commutative_ring_element import CommutativeRingElement
34
from integral_domain_element import IntegralDomainElement
35
from dedekind_domain_element import DedekindDomainElement
36
from principal_ideal_domain_element import PrincipalIdealDomainElement
37
from euclidean_domain_element import EuclideanDomainElement
38
from field_element import FieldElement
39
40
41
# Ideals
42
from ideal import Ideal
43
44
# Quotient
45
from quotient_ring import QuotientRing
46
47
# Infinities
48
from infinity import infinity, Infinity, InfinityRing, unsigned_infinity, UnsignedInfinityRing
49
50
# Rational integers.
51
from integer_ring import IntegerRing, ZZ, crt_basis
52
from integer import Integer
53
54
# Rational numbers
55
from rational_field import RationalField, QQ
56
from rational import Rational
57
Rationals = RationalField
58
59
# Integers modulo n.
60
from sage.rings.finite_rings.integer_mod_ring import IntegerModRing, Zmod
61
from sage.rings.finite_rings.integer_mod import IntegerMod, Mod, mod
62
Integers = IntegerModRing
63
64
# Finite fields
65
from finite_rings.all import *
66
67
# Number field
68
from number_field.all import *
69
70
# Function field
71
from function_field.all import *
72
73
# p-adic field
74
from padics.all import *
75
from padics.padic_printing import _printer_defaults as padic_printing
76
77
# Semirings
78
from semirings.all import *
79
80
# Real numbers
81
from real_mpfr import (RealField, RR,
82
create_RealNumber as RealNumber) # this is used by the preparser to wrap real literals -- very important.
83
Reals = RealField
84
85
from real_double import RealDoubleField, RDF, RealDoubleElement
86
87
from real_lazy import RealLazyField, RLF, ComplexLazyField, CLF
88
89
# Polynomial Rings and Polynomial Quotient Rings
90
from polynomial.all import *
91
92
93
# Algebraic numbers
94
from qqbar import (AlgebraicRealField, AA,
95
AlgebraicReal,
96
AlgebraicField, QQbar,
97
AlgebraicNumber,
98
number_field_elements_from_algebraics)
99
100
# Intervals
101
from real_mpfi import (RealIntervalField,
102
RIF,
103
RealInterval)
104
105
# Complex numbers
106
from complex_field import ComplexField
107
from complex_number import (create_ComplexNumber as ComplexNumber)
108
Complexes = ComplexField
109
from complex_interval_field import ComplexIntervalField
110
from complex_interval import (create_ComplexIntervalFieldElement as ComplexIntervalFieldElement)
111
112
from complex_double import ComplexDoubleField, ComplexDoubleElement, CDF
113
114
from complex_mpc import MPComplexField
115
116
# Power series rings
117
from power_series_ring import PowerSeriesRing
118
from power_series_ring_element import PowerSeries
119
120
# Laurent series ring in one variable
121
from laurent_series_ring import LaurentSeriesRing
122
from laurent_series_ring_element import LaurentSeries
123
124
# Pseudo-ring of PARI objects.
125
from pari_ring import PariRing, Pari
126
127
# Big-oh notation
128
from big_oh import O
129
130
# Fraction field
131
from fraction_field import FractionField
132
Frac = FractionField
133
134
# continued fractions
135
from contfrac import continued_fraction, CFF, ContinuedFractionField
136
137
# Arithmetic
138
from arith import *
139
from fast_arith import prime_range
140
141
from bernoulli_mod_p import bernoulli_mod_p, bernoulli_mod_p_single
142
143
from monomials import monomials
144
145
#from fast_polynomial.compiled_polynomial import compiled_polynomial
146
147
CC = ComplexField()
148
CIF = ComplexIntervalField()
149
150
# i = I = QuadraticField(-1, 'I').gen()
151
I = CC.gen()
152
153
from residue_field import ResidueField
154
155
156
from misc import composite_field
157
158
import tests
159
160
# Universal Cyclotomic Field
161
from sage.rings.universal_cyclotomic_field.all import *
162
163
from sage.misc.lazy_import import lazy_import
164
lazy_import('sage.rings.invariant_theory', 'invariant_theory')
165
166