# UnivariatePowerSeriesCategory(Coef, Expon)¶

UnivariatePowerSeriesCategory is the most general univariate power series category with exponents in an ordered abelian monoid. Note: this category exports a substitution function if it is possible to multiply exponents. Note: this category exports a derivative operation if it is possible to multiply coefficients by exponents.

0: %

from AbelianMonoid

1: %

from MagmaWithUnit

*: (%, %) -> %

from LeftModule %

*: (%, Coef) -> %

from RightModule Coef

*: (%, Fraction Integer) -> % if Coef has Algebra Fraction Integer
*: (Coef, %) -> %

from LeftModule Coef

*: (Fraction Integer, %) -> % if Coef has Algebra Fraction Integer
*: (Integer, %) -> %

from AbelianGroup

*: (NonNegativeInteger, %) -> %

from AbelianMonoid

*: (PositiveInteger, %) -> %

from AbelianSemiGroup

+: (%, %) -> %

from AbelianSemiGroup

-: % -> %

from AbelianGroup

-: (%, %) -> %

from AbelianGroup

/: (%, Coef) -> % if Coef has Field

from AbelianMonoidRing(Coef, Expon)

=: (%, %) -> Boolean

from BasicType

^: (%, NonNegativeInteger) -> %

from MagmaWithUnit

^: (%, PositiveInteger) -> %

from Magma

~=: (%, %) -> Boolean

from BasicType

annihilate?: (%, %) -> Boolean

from Rng

antiCommutator: (%, %) -> %
approximate: (%, Expon) -> Coef if Coef has coerce: Symbol -> Coef and Coef has ^: (Coef, Expon) -> Coef

approximate(f) returns a truncated power series with the series variable viewed as an element of the coefficient domain.

associates?: (%, %) -> Boolean if Coef has IntegralDomain

from EntireRing

associator: (%, %, %) -> %
center: % -> Coef

center(f) returns the point about which the series f is expanded.

characteristic: () -> NonNegativeInteger
charthRoot: % -> Union(%, failed) if Coef has CharacteristicNonZero
coefficient: (%, Expon) -> Coef

from AbelianMonoidRing(Coef, Expon)

coerce: % -> % if Coef has CommutativeRing

from Algebra %

coerce: % -> OutputForm
coerce: Coef -> % if Coef has CommutativeRing

from Algebra Coef

coerce: Fraction Integer -> % if Coef has Algebra Fraction Integer
coerce: Integer -> %
commutator: (%, %) -> %
complete: % -> %

from PowerSeriesCategory(Coef, Expon, SingletonAsOrderedSet)

construct: List Record(k: Expon, c: Coef) -> %

from IndexedProductCategory(Coef, Expon)

constructOrdered: List Record(k: Expon, c: Coef) -> %

from IndexedProductCategory(Coef, Expon)

D: % -> % if Coef has *: (Expon, Coef) -> Coef

from DifferentialRing

D: (%, List Symbol) -> % if Coef has *: (Expon, Coef) -> Coef and Coef has PartialDifferentialRing Symbol
D: (%, List Symbol, List NonNegativeInteger) -> % if Coef has *: (Expon, Coef) -> Coef and Coef has PartialDifferentialRing Symbol
D: (%, NonNegativeInteger) -> % if Coef has *: (Expon, Coef) -> Coef

from DifferentialRing

D: (%, Symbol) -> % if Coef has *: (Expon, Coef) -> Coef and Coef has PartialDifferentialRing Symbol
D: (%, Symbol, NonNegativeInteger) -> % if Coef has *: (Expon, Coef) -> Coef and Coef has PartialDifferentialRing Symbol
degree: % -> Expon

from PowerSeriesCategory(Coef, Expon, SingletonAsOrderedSet)

differentiate: % -> % if Coef has *: (Expon, Coef) -> Coef

from DifferentialRing

differentiate: (%, List Symbol) -> % if Coef has *: (Expon, Coef) -> Coef and Coef has PartialDifferentialRing Symbol
differentiate: (%, List Symbol, List NonNegativeInteger) -> % if Coef has *: (Expon, Coef) -> Coef and Coef has PartialDifferentialRing Symbol
differentiate: (%, NonNegativeInteger) -> % if Coef has *: (Expon, Coef) -> Coef

from DifferentialRing

differentiate: (%, Symbol) -> % if Coef has *: (Expon, Coef) -> Coef and Coef has PartialDifferentialRing Symbol
differentiate: (%, Symbol, NonNegativeInteger) -> % if Coef has *: (Expon, Coef) -> Coef and Coef has PartialDifferentialRing Symbol
elt: (%, %) -> % if Expon has SemiGroup

from Eltable(%, %)

elt: (%, Expon) -> Coef

elt(f(x), r) returns the coefficient of the term of degree r in f(x). This is the same as the function coefficient.

eval: (%, Coef) -> Stream Coef if Coef has ^: (Coef, Expon) -> Coef

eval(f, a) evaluates a power series at a value in the ground ring by returning a stream of partial sums.

exquo: (%, %) -> Union(%, failed) if Coef has IntegralDomain

from EntireRing

extend: (%, Expon) -> %

extend(f, n) causes all terms of f of degree <= n to be computed.

hash: % -> SingleInteger

from SetCategory

hashUpdate!: (HashState, %) -> HashState

from SetCategory

latex: % -> String

from SetCategory

from PowerSeriesCategory(Coef, Expon, SingletonAsOrderedSet)

from PowerSeriesCategory(Coef, Expon, SingletonAsOrderedSet)

from IndexedProductCategory(Coef, Expon)

leadingTerm: % -> Record(k: Expon, c: Coef)

from IndexedProductCategory(Coef, Expon)

leftPower: (%, NonNegativeInteger) -> %

from MagmaWithUnit

leftPower: (%, PositiveInteger) -> %

from Magma

leftRecip: % -> Union(%, failed)

from MagmaWithUnit

map: (Coef -> Coef, %) -> %

from IndexedProductCategory(Coef, Expon)

monomial?: % -> Boolean

from IndexedProductCategory(Coef, Expon)

monomial: (Coef, Expon) -> %

from IndexedProductCategory(Coef, Expon)

multiplyExponents: (%, PositiveInteger) -> %

multiplyExponents(f, n) multiplies all exponents of the power series f by the positive integer n.

one?: % -> Boolean

from MagmaWithUnit

opposite?: (%, %) -> Boolean

from AbelianMonoid

order: % -> Expon

order(f) is the degree of the lowest order non-zero term in f. This will result in an infinite loop if f has no non-zero terms.

order: (%, Expon) -> Expon

order(f, n) = min(m, n), where m is the degree of the lowest order non-zero term in f.

pole?: % -> Boolean

from PowerSeriesCategory(Coef, Expon, SingletonAsOrderedSet)

recip: % -> Union(%, failed)

from MagmaWithUnit

reductum: % -> %

from IndexedProductCategory(Coef, Expon)

rightPower: (%, NonNegativeInteger) -> %

from MagmaWithUnit

rightPower: (%, PositiveInteger) -> %

from Magma

rightRecip: % -> Union(%, failed)

from MagmaWithUnit

sample: %

from AbelianMonoid

subtractIfCan: (%, %) -> Union(%, failed)
terms: % -> Stream Record(k: Expon, c: Coef)

terms(f(x)) returns a stream of non-zero terms, where a a term is an exponent-coefficient pair. The terms in the stream are ordered by increasing order of exponents. Warning: If the series f has only finitely many non-zero terms, then accessing the resulting stream might lead to an infinite search for the next non-zero coefficient.

truncate: (%, Expon) -> %

truncate(f, k) returns a (finite) power series consisting of the sum of all terms of f of degree <= k.

truncate: (%, Expon, Expon) -> %

truncate(f, k1, k2) returns a (finite) power series consisting of the sum of all terms of f of degree d with k1 <= d <= k2.

unit?: % -> Boolean if Coef has IntegralDomain

from EntireRing

unitCanonical: % -> % if Coef has IntegralDomain

from EntireRing

unitNormal: % -> Record(unit: %, canonical: %, associate: %) if Coef has IntegralDomain

from EntireRing

variable: % -> Symbol

variable(f) returns the (unique) power series variable of the power series f.

zero?: % -> Boolean

from AbelianMonoid

AbelianGroup

AbelianMonoid

AbelianMonoidRing(Coef, Expon)

AbelianSemiGroup

Algebra % if Coef has CommutativeRing

Algebra Coef if Coef has CommutativeRing

Algebra Fraction Integer if Coef has Algebra Fraction Integer

BasicType

BiModule(%, %)

BiModule(Coef, Coef)

BiModule(Fraction Integer, Fraction Integer) if Coef has Algebra Fraction Integer

CancellationAbelianMonoid

CharacteristicNonZero if Coef has CharacteristicNonZero

CharacteristicZero if Coef has CharacteristicZero

CommutativeRing if Coef has CommutativeRing

CommutativeStar if Coef has CommutativeRing

DifferentialRing if Coef has *: (Expon, Coef) -> Coef

Eltable(%, %) if Expon has SemiGroup

EntireRing if Coef has IntegralDomain

IndexedProductCategory(Coef, Expon)

IntegralDomain if Coef has IntegralDomain

LeftModule Coef

Magma

MagmaWithUnit

Module % if Coef has CommutativeRing

Module Coef if Coef has CommutativeRing

Module Fraction Integer if Coef has Algebra Fraction Integer

Monoid

NonAssociativeRing

NonAssociativeRng

NonAssociativeSemiRing

NonAssociativeSemiRng

noZeroDivisors if Coef has IntegralDomain

PartialDifferentialRing Symbol if Coef has *: (Expon, Coef) -> Coef and Coef has PartialDifferentialRing Symbol

PowerSeriesCategory(Coef, Expon, SingletonAsOrderedSet)

RightModule Coef

Ring

Rng

SemiGroup

SemiRing

SemiRng

SetCategory

TwoSidedRecip if Coef has CommutativeRing

unitsKnown

VariablesCommuteWithCoefficients