9 Formal Power Series

 9.1 FormalPowerSeriesCategory
 9.2 FormalPowerSeries
 9.3 SeriesOrder
ToDo 35
rhx 24 02-Feb-2007: We should implement the multiplication algorithm of formal power series as given in [vdH02]. Currently we use the standard convolution algorithm in FormalPowerSeries to compute the n-th coefficient of a product.
This file implements formal power series. It could certainly be extended to encode Laurant series and Puiseux series. However, we currently very much rely on the fact that a formal power series is a function from to R and not from or . The code is tested in the file test/series.as.nw.

Basically, a formal power series (implemented through the domain FormalPowerSeries is given through a DataStream. However, we add a few more fields to the data structure since we want to allow recursive definitions of formal power series. Full laziness, also says that neither the arithmetic operations on power series nor their creation using new is allowed to do any real computation. They are O(1) operations.

More details can be found at the documentation of FormalPowerSeries.

ToDo 36
rhx 25 20-Jan-2007: In the following we introduce a macro for ArithmeticType since this type in the Aldor library has a few more operation that we do not yet want to implement and since it would require another workaround for making FormalPowerSeries available in Axiom.
196* 13+   55  307
-------------------------------------------------------------------
----
---- Combinat
---- Copyright (C) Ralf Hemmecke <ralf@hemmecke.de>
---- svn co svn://svn.risc.uni-linz.ac.at/hemmecke/combinat/
----
-------------------------------------------------------------------

#include "combinat"
macro {
        ArithmeticType == with {
                0: %;
                1: %;
                zero?: % -> Boolean;
                +: (%, %) -> %;
                *: (%, %) -> %;
        }
}
cat: FormalPowerSeriesCategory 199
dom: SeriesOrder 289
dom: FormalPowerSeries 242