ModMonic(R, Rep)ΒΆ
modmon.spad line 1 [edit on github]
R: Ring
Rep: UnivariatePolynomialCategory R
This domain implements quotient of ring of univariate polynomials by ideal generated by modulus polynomial. Modulus must be monic. Before performing any operations you need to set modulus, subsequent operations use this modulus.
- 0: %
from AbelianMonoid
- 1: %
from MagmaWithUnit
- *: (%, %) -> %
from Magma
- *: (Integer, %) -> %
from AbelianGroup
- *: (NonNegativeInteger, %) -> %
from AbelianMonoid
- *: (PositiveInteger, %) -> %
from AbelianSemiGroup
- *: (R, %) -> %
from LeftModule R
- +: (%, %) -> %
from AbelianSemiGroup
- -: % -> %
from AbelianGroup
- -: (%, %) -> %
from AbelianGroup
- ^: (%, NonNegativeInteger) -> %
from MagmaWithUnit
- ^: (%, PositiveInteger) -> %
from Magma
- annihilate?: (%, %) -> Boolean
from Rng
- antiCommutator: (%, %) -> %
- associator: (%, %, %) -> %
from NonAssociativeRng
- characteristic: () -> NonNegativeInteger
from NonAssociativeRing
- coerce: % -> % if R has CommutativeRing
from Algebra %
- coerce: % -> OutputForm
from CoercibleTo OutputForm
- coerce: Integer -> %
from NonAssociativeRing
- coerce: R -> %
from CoercibleFrom R
- commutator: (%, %) -> %
from NonAssociativeRng
- convert: % -> InputForm if R has Finite
from ConvertibleTo InputForm
- frobenius: % -> % if R has FiniteFieldCategory
frobenius(x)
computesx^q
whereq
is the size ofR
.
- hash: % -> SingleInteger if R has Finite
from Hashable
- hashUpdate!: (HashState, %) -> HashState if R has Finite
from Hashable
- index: PositiveInteger -> % if R has Finite
from Finite
- latex: % -> String
from SetCategory
- leftPower: (%, NonNegativeInteger) -> %
from MagmaWithUnit
- leftPower: (%, PositiveInteger) -> %
from Magma
- leftRecip: % -> Union(%, failed)
from MagmaWithUnit
- lift: % -> Rep
lift(x)
returnsx
as a polynomial.
- lookup: % -> PositiveInteger if R has Finite
from Finite
- modulus: () -> Rep
modulus()
returns current modulus.
- one?: % -> Boolean
from MagmaWithUnit
- opposite?: (%, %) -> Boolean
from AbelianMonoid
- plenaryPower: (%, PositiveInteger) -> % if R has CommutativeRing
from NonAssociativeAlgebra %
- pow: () -> PrimitiveArray %
pow()
returns precomputed array of powers of variable modulo current modulus from defreed
up to degree2*d -1
, whered
is degree of the modulus. Note: element at index 0 is variable to powerd
.
- recip: % -> Union(%, failed)
from MagmaWithUnit
- reduce: Rep -> %
reduce(x)
reducesx
modulo current modulus.
- rightPower: (%, NonNegativeInteger) -> %
from MagmaWithUnit
- rightPower: (%, PositiveInteger) -> %
from Magma
- rightRecip: % -> Union(%, failed)
from MagmaWithUnit
- sample: %
from AbelianMonoid
- setPoly: Rep -> Rep
setPoly(x)
sets modulus for subsequent operations.
- size: () -> NonNegativeInteger if R has Finite
from Finite
- smaller?: (%, %) -> Boolean if R has Finite
from Comparable
- subtractIfCan: (%, %) -> Union(%, failed)
- UnVectorise: Vector R -> %
UnVectorise(v)
converts vector of coefficients to\%
.
- Vectorise: % -> Vector R
Vectorise(x)
returns vector of coefficients of lift(x
).
- zero?: % -> Boolean
from AbelianMonoid
Algebra % if R has CommutativeRing
BiModule(%, %)
CommutativeRing if R has CommutativeRing
CommutativeStar if R has CommutativeRing
Comparable if R has Finite
ConvertibleTo InputForm if R has Finite
Module % if R has CommutativeRing
NonAssociativeAlgebra % if R has CommutativeRing
TwoSidedRecip if R has CommutativeRing