# GeneralizedUnivariatePowerSeries(Coef, Expon, var, cen)¶

genser.spad line 192 [edit on github]

Coef: Ring

Expon: Join(OrderedAbelianMonoid, SemiRing)

var: Symbol

cen: Coef

Author: Waldek Hebisch

- 0: %
from AbelianMonoid

- 1: %
from MagmaWithUnit

- *: (%, %) -> %
from Magma

- *: (%, Coef) -> %
from RightModule Coef

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

- *: (Coef, %) -> %
from LeftModule Coef

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

- *: (Integer, %) -> %
from AbelianGroup

- *: (NonNegativeInteger, %) -> %
from AbelianMonoid

- *: (PositiveInteger, %) -> %
from AbelianSemiGroup

- +: (%, %) -> %
from AbelianSemiGroup

- -: % -> %
from AbelianGroup

- -: (%, %) -> %
from AbelianGroup

- /: (%, %) -> % if Coef has Field and Expon has AbelianGroup
from Field

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

- ^: (%, %) -> % if Coef has Algebra Fraction Integer
- ^: (%, Integer) -> % if Coef has Field and Expon has AbelianGroup
from DivisionRing

- ^: (%, NonNegativeInteger) -> %
from MagmaWithUnit

- ^: (%, PositiveInteger) -> %
from Magma

- annihilate?: (%, %) -> Boolean
from Rng

- antiCommutator: (%, %) -> %

- apply_taylor: (Stream Coef, %) -> %
`apply_taylor(ts, s)`

applies Taylor series with coefficients`ts`

to`s`

, that is computes infinite sum`ts`

(0) +`ts`

(1)`*s`

+`ts`

(2)`*s^2`

+ … Note:`s`

must be of positive order

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

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

- associator: (%, %, %) -> %
from NonAssociativeRng

- center: % -> Coef
from UnivariatePowerSeriesCategory(Coef, Expon)

- characteristic: () -> NonNegativeInteger
from NonAssociativeRing

- charthRoot: % -> Union(%, failed) if Coef has CharacteristicNonZero

- coefficient: (%, Expon) -> Coef
from AbelianMonoidRing(Coef, Expon)

- coerce: % -> % if Coef has CommutativeRing
from Algebra %

- coerce: % -> OutputForm
from CoercibleTo OutputForm

- coerce: Coef -> % if Coef has CommutativeRing
from Algebra Coef

- coerce: Fraction Integer -> % if Coef has Algebra Fraction Integer
- coerce: Integer -> %
from NonAssociativeRing

- commutator: (%, %) -> %
from NonAssociativeRng

- 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

- divide: (%, %) -> Record(quotient: %, remainder: %) if Coef has Field and Expon has AbelianGroup
from EuclideanDomain

- elt: (%, %) -> %
from Eltable(%, %)

- elt: (%, Expon) -> Coef
from UnivariatePowerSeriesCategory(Coef, Expon)

- euclideanSize: % -> NonNegativeInteger if Coef has Field and Expon has AbelianGroup
from EuclideanDomain

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

- expressIdealMember: (List %, %) -> Union(List %, failed) if Coef has Field and Expon has AbelianGroup
from PrincipalIdealDomain

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

- extend: (%, Expon) -> %
from UnivariatePowerSeriesCategory(Coef, Expon)

- extendedEuclidean: (%, %) -> Record(coef1: %, coef2: %, generator: %) if Coef has Field and Expon has AbelianGroup
from EuclideanDomain

- extendedEuclidean: (%, %, %) -> Union(Record(coef1: %, coef2: %), failed) if Coef has Field and Expon has AbelianGroup
from EuclideanDomain

- factor: % -> Factored % if Coef has Field and Expon has AbelianGroup

- gcd: (%, %) -> % if Coef has Field and Expon has AbelianGroup
from GcdDomain

- gcd: List % -> % if Coef has Field and Expon has AbelianGroup
from GcdDomain

- gcdPolynomial: (SparseUnivariatePolynomial %, SparseUnivariatePolynomial %) -> SparseUnivariatePolynomial % if Coef has Field and Expon has AbelianGroup
from GcdDomain

- infsum: Stream % -> %
`infsum(x)`

computes sum of all elements of`x`

. Degrees of elements of`x`

must be nondecreasing and tend to infinity.

- inv: % -> % if Coef has Field and Expon has AbelianGroup
from DivisionRing

- latex: % -> String
from SetCategory

- lcm: (%, %) -> % if Coef has Field and Expon has AbelianGroup
from GcdDomain

- lcm: List % -> % if Coef has Field and Expon has AbelianGroup
from GcdDomain

- lcmCoef: (%, %) -> Record(llcm_res: %, coeff1: %, coeff2: %) if Coef has Field and Expon has AbelianGroup
from LeftOreRing

- leadingCoefficient: % -> Coef
from PowerSeriesCategory(Coef, Expon, SingletonAsOrderedSet)

- leadingMonomial: % -> %
from PowerSeriesCategory(Coef, Expon, SingletonAsOrderedSet)

- leadingSupport: % -> Expon
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)

- multiEuclidean: (List %, %) -> Union(List %, failed) if Coef has Field and Expon has AbelianGroup
from EuclideanDomain

- multiplyExponents: (%, PositiveInteger) -> %
from UnivariatePowerSeriesCategory(Coef, Expon)

- one?: % -> Boolean
from MagmaWithUnit

- opposite?: (%, %) -> Boolean
from AbelianMonoid

- order: % -> Expon
from UnivariatePowerSeriesCategory(Coef, Expon)

- order: (%, Expon) -> Expon
from UnivariatePowerSeriesCategory(Coef, Expon)

- plenaryPower: (%, PositiveInteger) -> % if Coef has Algebra Fraction Integer or Coef has CommutativeRing
from NonAssociativeAlgebra %

- pole?: % -> Boolean
from PowerSeriesCategory(Coef, Expon, SingletonAsOrderedSet)

- prime?: % -> Boolean if Coef has Field and Expon has AbelianGroup

- principalIdeal: List % -> Record(coef: List %, generator: %) if Coef has Field and Expon has AbelianGroup
from PrincipalIdealDomain

- quo: (%, %) -> % if Coef has Field and Expon has AbelianGroup
from EuclideanDomain

- recip: % -> Union(%, failed)
from MagmaWithUnit

- reductum: % -> %
from IndexedProductCategory(Coef, Expon)

- rem: (%, %) -> % if Coef has Field and Expon has AbelianGroup
from EuclideanDomain

- removeZeros: (%, Expon) -> %
`removeZeros(s, k)`

removes leading zero terms in`s`

with exponent smaller than`k`

- rightPower: (%, NonNegativeInteger) -> %
from MagmaWithUnit

- rightPower: (%, PositiveInteger) -> %
from Magma

- rightRecip: % -> Union(%, failed)
from MagmaWithUnit

- sample: %
from AbelianMonoid

- sizeLess?: (%, %) -> Boolean if Coef has Field and Expon has AbelianGroup
from EuclideanDomain

- squareFree: % -> Factored % if Coef has Field and Expon has AbelianGroup

- squareFreePart: % -> % if Coef has Field and Expon has AbelianGroup

- subtractIfCan: (%, %) -> Union(%, failed)

- terms: % -> Stream Record(k: Expon, c: Coef)
from UnivariatePowerSeriesCategory(Coef, Expon)

- truncate: (%, Expon) -> %
from UnivariatePowerSeriesCategory(Coef, Expon)

- truncate: (%, Expon, Expon) -> %
from UnivariatePowerSeriesCategory(Coef, Expon)

- 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
from UnivariatePowerSeriesCategory(Coef, Expon)

- zero?: % -> Boolean
from AbelianMonoid

AbelianMonoidRing(Coef, Expon)

Algebra % if Coef has CommutativeRing

Algebra Coef if Coef has CommutativeRing

Algebra Fraction Integer if Coef has Algebra Fraction Integer

ArcHyperbolicFunctionCategory if Coef has Algebra Fraction Integer

ArcTrigonometricFunctionCategory if Coef has Algebra Fraction Integer

BiModule(%, %)

BiModule(Coef, Coef)

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

canonicalsClosed if Coef has Field and Expon has AbelianGroup

canonicalUnitNormal if Coef has Field and Expon has AbelianGroup

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

DivisionRing if Coef has Field and Expon has AbelianGroup

ElementaryFunctionCategory if Coef has Algebra Fraction Integer

Eltable(%, %)

EntireRing if Coef has IntegralDomain

EuclideanDomain if Coef has Field and Expon has AbelianGroup

Field if Coef has Field and Expon has AbelianGroup

GcdDomain if Coef has Field and Expon has AbelianGroup

HyperbolicFunctionCategory if Coef has Algebra Fraction Integer

IndexedProductCategory(Coef, Expon)

IntegralDomain if Coef has IntegralDomain

LeftModule Coef

LeftModule Fraction Integer if Coef has Algebra Fraction Integer

LeftOreRing if Coef has Field and Expon has AbelianGroup

Module % if Coef has CommutativeRing

Module Coef if Coef has CommutativeRing

Module Fraction Integer if Coef has Algebra Fraction Integer

NonAssociativeAlgebra % if Coef has CommutativeRing

NonAssociativeAlgebra Coef if Coef has CommutativeRing

NonAssociativeAlgebra Fraction Integer if Coef has Algebra Fraction Integer

noZeroDivisors if Coef has IntegralDomain

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

PowerSeriesCategory(Coef, Expon, SingletonAsOrderedSet)

PrincipalIdealDomain if Coef has Field and Expon has AbelianGroup

RightModule Coef

RightModule Fraction Integer if Coef has Algebra Fraction Integer

TranscendentalFunctionCategory if Coef has Algebra Fraction Integer

TrigonometricFunctionCategory if Coef has Algebra Fraction Integer

TwoSidedRecip if Coef has CommutativeRing

UniqueFactorizationDomain if Coef has Field and Expon has AbelianGroup

UnivariatePowerSeriesCategory(Coef, Expon)