[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Axiom-math] Curious behavior of Taylor series
From: |
Ralf Hemmecke |
Subject: |
Re: [Axiom-math] Curious behavior of Taylor series |
Date: |
Mon, 21 Aug 2006 22:21:03 +0200 |
User-agent: |
Thunderbird 1.5.0.5 (X11/20060719) |
(113) -> y := taylor x
(113) x
Type: UnivariateTaylorSeries(Expression Integer,x,0)
(114) -> x*y
(114) x x
Type: UnivariateTaylorSeries(Expression Integer,x,0)
(115) -> coefficient(%,1)
(115) x
But Axiom coerced the two x to the same domain!!!
Looking back, it didn't. One of the x's is in Expression Integer, and
the other is UTS.
In some sense you are rigth, BUT, for that to claim you would have to
know the internal representation of
UnivariateTaylorSeries(Expression Integer,x,0).
What if you are a poor Axiom user who doesn't have access to the source
code? How could you justify your statement. All you see is ONE type and
that is UnivariateTaylorSeries(Expression Integer,x,0) and nothing else.
Well, but how can you tell this to Axiom?
Axiom could try to coerce x to be the same type as y, or y to be the
same type as x. The latter would lose structure, and should fail.
So x should be coerced to the same domain as y.
As I said, Axiom does exactly that. But it has (at least two)
incompatible ways to do it. Maybe someone familiar with tracing the
search of the interpreter for the right coerce function could explain
that better than me.
But see, x is a symbol which should be coerce into a Taylor
series. The interpreter has several choices. So assuming the ideal
that the interpreter should have no mathematical knowledge itself,
it can only take the available information from the library. But
there are several available ways to go from x to UTS(Expression
Integer,x,0). So how can the interpreter ever know that it does the
wrong thing?
The problem is that it didn't even try to go from x to UTS; x ends up
as an Expression Integer. I think it should have tried coercing x
before multiplying x and y.
Let's abbreviate U := UnivariateTaylorSeries(Expression Integer,x,0) and
E := Expression(Integer).
That's what Axiom does. It tries to coerce to U, there is no such coerce
function. Then maybe after checking some other coerce functions that
fail, it finds a coercion to Expression(Integer), furthermore there is
function *: (E, U) -> U. So Axiom does a minimal thing: it interprets
x*y as (x::E)*y
note that the coercion to U would go like
(x::E::U) * y
and would then be more costly. You surely also consider that
unreasonable to go the long way if there is a shorter path. No?
It is dangerous to use Expression Integer as above, but I don't think
it should be. I think the commands at the beginning of this thread
were reasonable and should work.
You are talking to a computer not a human. Have mercy.
Ralf
- Re: [Axiom-math] Curious behavior of Taylor series, (continued)
- Re: [Axiom-math] Curious behavior of Taylor series, Igor Khavkine, 2006/08/20
- Re: [Axiom-math] Curious behavior of Taylor series, Jay Belanger, 2006/08/20
- Re: [Axiom-math] Curious behavior of Taylor series, Ralf Hemmecke, 2006/08/21
- Re: [Axiom-math] Curious behavior of Taylor series, Jay Belanger, 2006/08/21
- Re: [Axiom-math] Curious behavior of Taylor series, Ralf Hemmecke, 2006/08/21
- Re: [Axiom-math] Curious behavior of Taylor series, Martin Rubey, 2006/08/21
- Re: [Axiom-math] Curious behavior of Taylor series, Ralf Hemmecke, 2006/08/21
- Re: [Axiom-math] Curious behavior of Taylor series, Igor Khavkine, 2006/08/21
- Re: [Axiom-math] Curious behavior of Taylor series, Ralf Hemmecke, 2006/08/21
- Re: [Axiom-math] Curious behavior of Taylor series, Jay Belanger, 2006/08/21
- Re: [Axiom-math] Curious behavior of Taylor series,
Ralf Hemmecke <=
- Re: [Axiom-math] Curious behavior of Taylor series, Jay Belanger, 2006/08/22
- Re: [Axiom-math] Curious behavior of Taylor series, Ralf Hemmecke, 2006/08/22
Re: [Axiom-math] Curious behavior of Taylor series, Igor Khavkine, 2006/08/21
Re: [Axiom-math] Curious behavior of Taylor series, William Sit, 2006/08/30
Re: [Axiom-math] Curious behavior of Taylor series, Ralf Hemmecke, 2006/08/20