DynamicAlgebraicNumberΒΆ
algclos.spad line 82 [edit on github]
Implement an ACF according to cite{Steel_AlgebraicallyClosedFields_2010
}, i.e. the algebraic closure of rational numbers. In contrast to the domain AlgebraicNunber in FriCAS, this domain certifies that that zero tests are corrct. Let tst
(a, b
)==
(x:=sqrt(a*b);y:=sqrt(a)*sqrt(b
);zero?(x
-y
) or zero?(x+y)), then tst
(2::AN,3::AN) returns false
whereas tst
(2::DAN,3::DAN) gives true
.
- 0: %
from AbelianMonoid
- 1: %
from MagmaWithUnit
- *: (%, %) -> %
from LeftModule %
- *: (%, Fraction Integer) -> %
from RightModule Fraction Integer
- *: (Fraction Integer, %) -> %
from LeftModule Fraction Integer
- *: (Integer, %) -> %
from AbelianGroup
- *: (NonNegativeInteger, %) -> %
from AbelianMonoid
- *: (PositiveInteger, %) -> %
from AbelianSemiGroup
- +: (%, %) -> %
from AbelianSemiGroup
- -: % -> %
from AbelianGroup
- -: (%, %) -> %
from AbelianGroup
- ^: (%, Fraction Integer) -> %
from RadicalCategory
- ^: (%, Integer) -> %
from DivisionRing
- ^: (%, NonNegativeInteger) -> %
from MagmaWithUnit
- ^: (%, PositiveInteger) -> %
from Magma
- annihilate?: (%, %) -> Boolean
from Rng
- antiCommutator: (%, %) -> %
- associates?: (%, %) -> Boolean
from EntireRing
- associator: (%, %, %) -> %
from NonAssociativeRng
- characteristic: () -> NonNegativeInteger
from NonAssociativeRing
- coerce: % -> %
from Algebra %
- coerce: % -> OutputForm
from CoercibleTo OutputForm
- coerce: Fraction Integer -> %
- coerce: Integer -> %
from NonAssociativeRing
- commutator: (%, %) -> %
from NonAssociativeRng
- divide: (%, %) -> Record(quotient: %, remainder: %)
from EuclideanDomain
- euclideanSize: % -> NonNegativeInteger
from EuclideanDomain
- expressIdealMember: (List %, %) -> Union(List %, failed)
from PrincipalIdealDomain
- exquo: (%, %) -> Union(%, failed)
from EntireRing
- extendBy!: SparseUnivariatePolynomial % -> %
extendBy!(f)
is only exported for debugging purposes. If used then zero?(f
(r
)) should not hold for any of the known roots stored internally (including xroots).
- extendedEuclidean: (%, %) -> Record(coef1: %, coef2: %, generator: %)
from EuclideanDomain
- extendedEuclidean: (%, %, %) -> Union(Record(coef1: %, coef2: %), failed)
from EuclideanDomain
extensionPolynomial: PositiveInteger -> SparseUnivariatePolynomial %
- gcdPolynomial: (SparseUnivariatePolynomial %, SparseUnivariatePolynomial %) -> SparseUnivariatePolynomial %
from GcdDomain
getRoot: PositiveInteger -> %
- hash: % -> SingleInteger
from SetCategory
- hashUpdate!: (HashState, %) -> HashState
from SetCategory
- inv: % -> %
from DivisionRing
- latex: % -> String
from SetCategory
- lcmCoef: (%, %) -> Record(llcm_res: %, coeff1: %, coeff2: %)
from LeftOreRing
- leftPower: (%, NonNegativeInteger) -> %
from MagmaWithUnit
- leftPower: (%, PositiveInteger) -> %
from Magma
- leftRecip: % -> Union(%, failed)
from MagmaWithUnit
- multiEuclidean: (List %, %) -> Union(List %, failed)
from EuclideanDomain
- nthRoot: (%, Integer) -> %
from RadicalCategory
- one?: % -> Boolean
from MagmaWithUnit
- opposite?: (%, %) -> Boolean
from AbelianMonoid
- primitiveNthRootOfUnity: Integer -> %
primitiveNthRootOfUnity(
n
) returns a numberx
such thatx^n=1
andx^k
is not 1 for every 1<k<n.
- principalIdeal: List % -> Record(coef: List %, generator: %)
from PrincipalIdealDomain
- quo: (%, %) -> %
from EuclideanDomain
rank: () -> Integer
- recip: % -> Union(%, failed)
from MagmaWithUnit
- rem: (%, %) -> %
from EuclideanDomain
- retractIfCan: % -> Union(Fraction Integer, failed)
from RetractableTo Fraction Integer
- rightPower: (%, NonNegativeInteger) -> %
from MagmaWithUnit
- rightPower: (%, PositiveInteger) -> %
from Magma
- rightRecip: % -> Union(%, failed)
from MagmaWithUnit
- rootOf: (SparseUnivariatePolynomial %, Symbol) -> %
- rootOf: Polynomial % -> %
- rootOf: SparseUnivariatePolynomial % -> %
- rootsOf: (SparseUnivariatePolynomial %, Symbol) -> List %
- rootsOf: Polynomial % -> List %
- rootsOf: SparseUnivariatePolynomial % -> List %
- sample: %
from AbelianMonoid
show: () -> Void
- sizeLess?: (%, %) -> Boolean
from EuclideanDomain
- solveLinearPolynomialEquation: (List SparseUnivariatePolynomial %, SparseUnivariatePolynomial %) -> Union(List SparseUnivariatePolynomial %, failed)
- sqrt: % -> %
from RadicalCategory
- squareFree: % -> Factored %
- squareFreePart: % -> %
- subtractIfCan: (%, %) -> Union(%, failed)
- unit?: % -> Boolean
from EntireRing
- unitCanonical: % -> %
from EntireRing
- unitNormal: % -> Record(unit: %, canonical: %, associate: %)
from EntireRing
- zero?: % -> Boolean
from AbelianMonoid
- zeroOf: (SparseUnivariatePolynomial %, Symbol) -> %
- zeroOf: Polynomial % -> %
- zeroOf: SparseUnivariatePolynomial % -> %
- zerosOf: (SparseUnivariatePolynomial %, Symbol) -> List %
- zerosOf: Polynomial % -> List %
- zerosOf: SparseUnivariatePolynomial % -> List %
Algebra %
BiModule(%, %)
BiModule(Fraction Integer, Fraction Integer)
CoercibleFrom Fraction Integer
Module %
PolynomialFactorizationExplicit