Waldek,

Perhaps you recall the attached email from a few years ago where you
discussed multivariate Taylor series?  Recently I wanted to do
something in FriCAS similar to what is done easily in Maple, such as:

  mtaylor(sinh(x)*cosh(y),[x,y])

        x + 1/2 x y^2 + 1/6 x^3 + 1/24 x y^4 + ...

If I try this in FriCAS

   x:=taylor 'x
   y:=taylor 'y
   sinh(x)*cosh(y)

what I get is not a multivariate Taylor series.  But if I do this, for example

  sinh(x*y)

then the result does look like a multivariate series but the type is

  UnivariateTaylorSeries(UnivariateTaylorSeries(Expression(Integer),x,0), y,0)

so this is not quite what I expected either.

Am I missing something important about how to do this or is there
really something missing in the way FriCAS does this?

Bill.


On 21 October 2010 12:45, Waldek Hebisch <[email protected]> wrote:
> As I wrote in another mail we now have several new special
> functions and it is time to add series expansions for them.
> This uncovered some undesirable aspects of our current power
> series domains.  Namely, expansion of a function 'phi' in power
> series is done by having appropriate 'phi' function in power
> seres domains and applying it to expansions of arguments.
> Currently each power series domain has its own implementation
> of functions like 'exp', 'sin', etc.  Most of those implementations
> are trival: they retact arguments into Taylor series domain
> (if possible) and applay apriopriate version for Taylor series
> (which in turn uses functions on streams).  This leads to
> significant amount of boilerplate code.
>
> I am thinking about alternative way: having a 'compose'
> function in each domain which applies Taylor series to
> arguments from the domain and gives back result in the
> domain.  And then for each function expander giving
> series Taylor series in regular points (or error).
>
> That way we need single expander for regular point and
> possibly a few overrides to get Laurent/Puiseux (or
> maybe also multiseries) in singularities.
>
> Another thing that currently we have no support for multivariate
> expansions.  And we have way to do naive expansion (by computing
> successive derivatives).  I think we need a way to compute
> infinite sums of power series.  Probably something like
> 'addiag' in 'StreamTaylorSeriesOperations' but which takes
> stream of pairs (order_bound, series) where order_bound is
> lower bound on order of the series.  To make sum computable
> we need to assume that order_bound is non-decreasing, but
> this should hold in practical cases.  Such infinite sum
> is enough to define composition.  It is also enough to
> do naive expander (in multivariate case making sure that
> orderes are non-decreasing requires some effort, but should
> be doable).
>
> ATM I do not know how to make sure that in multivariate case
> our series are as lazy as possible.  Current TaylorSeries
> domain effectively assigns to each variable the same weight,
> which is suboptimal when computing something like f(x, x^2).
> One possibility is to generate exponents like for TaylorSeries,
> but then sort then with respect to order (which means that
> other computations will be ommited when consumer get terms
> of desired order).
>
>
> --
>                               Waldek Hebisch
> [email protected]
>
> --
> You received this message because you are subscribed to the Google Groups 
> "FriCAS - computer algebra system" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to 
> [email protected].
> For more options, visit this group at 
> http://groups.google.com/group/fricas-devel?hl=en.
>

-- 
You received this message because you are subscribed to the Google Groups 
"FriCAS - computer algebra system" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/fricas-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to