# StreamExponentialSeriesOperations CoefΒΆ

StreamExponentialSeriesOperations implements arithmetic of exponential power series, where a power series is represented by a stream of its coefficients.

*: (Stream Coef, Stream Coef) -> Stream Coef

`a * b` returns the power series (Cauchy) product of `a` and `b:` `[a0, a1, ...] * [b0, b1, ...] = [c0, c1, ...]` where `ck = sum(i + j = k, binomial(k, i) * ai * bj)`.

deriv: Stream Coef -> Stream Coef

`deriv(f)` is the derivative, which simply coincides with left shift

exp0: Stream Coef -> Stream Coef

`exp0(f)` returns the exponential of the power series represented by cons(0, `f`), i.e. assuming zero constant term and therefore transcendentality is not involved.

integrate: (Coef, Stream Coef) -> Stream Coef

`integrate(c, f)` integrates with constant term `c`, this is simply the right shift

lazyIntegrate: (Coef, () -> Stream Coef) -> Stream Coef

`lazyIntegrate(c, f)` integrates with constant term `c`, this is simply the right shift

log1: Stream Coef -> Stream Coef

`log1(f)` returns the logarithm of the power series represented by cons(1, `f`), i.e. assuming that the constant term is 1 and therefore transcendentality is not involved.