[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Axiom-developer] bug #10063 overview: Handling of power series
From: |
Clifton Williamson |
Subject: |
Re: [Axiom-developer] bug #10063 overview: Handling of power series |
Date: |
Mon, 23 Aug 2004 09:47:50 -0700 (PDT) |
This looks like an interpreter problem. There is no
problem if you first coerce 'a' to be of type
UPXS(EXPR FLOAT,x,0):
(1) -> a := series sin x
(2) -> aFloat := a :: UPXS(EXPR FLOAT,x,0)
(3) -> aFloat * 1.0
When computing a * 1.0, if you do
)set mess bot on
you'll find that the interpreter is looking for a
function * with arguments (UPXS(EXPR INT,x,0),FLOAT)
just before Axiom crashes:
Function Selection for *
Arguments: (UPXS(EXPR INT,x,0),FLOAT)
>> System error:
Caught fatal error [memory may be damaged]
You might also want to look at the messages you get
when you try to compute 1.0 * a. In this case, the
punch line is:
Function Selection for *
Arguments: (FLOAT,UPXS(EXPR INT,x,0))
-> no appropriate * found in Float
-> no appropriate * found in
UnivariatePuiseuxSeries(Expression Integer,x,0)
>> System error:
Caught fatal error [memory may be damaged]
--- Vanuxem Grégory <address@hidden> wrote:
> Le lun 23/08/2004 à 01:02, root a écrit :
> > Greg,
> >
> > Well, I wasn't looking for a new bug to chase but
> this is clearly one.
> >
> > The bug is actually in the algebra somewhere
> rather than in the lisp.
> > The NAG version fails with the error msg:
> >
> > +++ Error attempt to take the car of an atom: 0
> >
> > Did you file this in the axiom bug list?
> >
> > Tim
>
> Yes, but
>
> 1<enter algEqual : ((0 . 0) 0 . 1)\((0 0 . 0) 0 1 .
> 0)\(|Expression|
> (|Float|))
> 1<enter compiledLookupCheck : =\((|Boolean|) $
> $)\#<vector 08eccc78>
> 1>exit compiledLookupCheck : (#<compiled-function
> |EXPR;=;2$B;21|> .
> #<vector 08eccc78>)
>
> after SPADCALL (it's not traced) "=" in EXPR trigger
> the bug.
>
> algEqual : ((0 . 0) 0 . 1)\((0 0 . 0) 0 1 .
> 0)\(|Expression| (|Float|))
> ^^^^^^^^^^^^^^^
> I think above is not of type EXPR FLOAT.
>
>
> >
>
====================================================================
> > Hi,
> >
> > What do you think of this 'fatal 'bug?
> >
> >
> >
> > It seems that the interpreter handles strangely
> the power series:
> >
> > a:= series sin(x);
> > )di type %
> > Type of value of %:
> UnivariatePuiseuxSeries(Expression Integer,x,0)
> > a=a;
> > )di type %
> > Type of value of %: Equation Any
> >
> > If I coerce it...
> > a:=a::UnivariatePuiseuxSeries(Expression
> Integer,x,0);
> > a=a;
> > )di type %
> > Type of value of %: Equation
> UnivariatePuiseuxSeries(Expression
> > Integer,x,0)
> > ------------------------------------------------
> > Fatal bug:
> >
> > a:= series sin(x);
> > a*1.0;
> > >> System error:
> > Caught fatal error [memory may be damaged]
> >
> > protected-symbol-warn called with (NIL)
> >
> > >From trace:
> > It seems that the interpreter doesn't coerce one
> args
> > in Expression (Float):
> >
> > 1<enter valueArgsEqual? :
> (|UnivariatePuiseuxSeries| (|Expression|
> > (|Integer|)) |x| ((0 . 0) 0 .
> 1))\(|UnivariatePuiseuxSeries|
> > (|Expression| (|Float|)) |x| ((0 . 0) 0 . 1))
> >
> > ...
> >
> > And here:
> >
> > 1<enter algEqual : ((0 . 0) 0 . 1)\((0 0 . 0) 0 1
> . 0)\(|Expression|
> > (|Float|))
> > 1<enter compiledLookupCheck : =\((|Boolean|) $
> $)\#<vector 08eccc78>
> > 1>exit compiledLookupCheck : (#<compiled-function
> |EXPR;=;2$B;21|> .
> > #<vector 08eccc78>)
> >
> > after SPADCALL (it's not traced) "=" in EXPR
> trigger the bug.
> >
> > algEqual : ((0 . 0) 0 . 1)\((0 0 . 0) 0 1 .
> 0)\(|Expression| (|Float|))
> > ^^^^^^^^^^^^^^^
> > I think above is not of type EXPR FLOAT.
> >
> > Cheers, Greg
>
>
> _______________________________________________
> Axiom-developer mailing list
> address@hidden
>
http://lists.nongnu.org/mailman/listinfo/axiom-developer
>
__________________________________
Do you Yahoo!?
Y! Messenger - Communicate in real time. Download now.
http://messenger.yahoo.com