Testsuite failure in rtest14.mac - specint(t^(3/4)*%e^(-t^2/2/b)*%e^(-p*t),t);
Subject: Testsuite failure in rtest14.mac - specint(t^(3/4)*%e^(-t^2/2/b)*%e^(-p*t),t);
From: James Amundson
Date: Tue, 07 Dec 2004 13:29:52 -0600
On Mon, 2004-12-06 at 07:46, Raymond Toy wrote:
> David> I get a testsuite problem using CVS maxima with clisp-2.33.1 on cygwin.
> David> The testsuite stops in rtest14.mac in the first specint() tests after the
> David> line "prefer_whittaker:true;"
>
> Oops. Did you update hyp.lisp as well? I modified hyp.lisp so that
> it defaults to not returning Whittaker forms of the confluent
> hypergeometric function, but allowed the user to select that with
> prefer_whittaker:true.
>
> I did run the test suite and added prefer_whittaker:true so that it
> would complete. Honest! Perhaps I messed something up....
I can reproduce the problem with Clisp 2.33.2 on Linux. The problem
arises in one loop from hyp-negp-in-l:
CMUCL's answer for a sample input:
|abacus3>lisp
CMU Common Lisp 19a, running on abacus3
With core: /home/amundson/opt/cmucl/19a/lib/cmucl/lib/lisp.core
Dumped on: Wed, 2004-07-28 11:51:48-05:00 on lorien
See <http://www.cons.org/cmucl/> for support information.
Loaded subsystems:
Python 1.1, target Intel x86
CLOS based on Gerd's PCL 2004/04/14 03:32:47
* (loop for x in '(((RAT SIMP) 11 8))
when (and (numberp x) (minusp x))
maximize x)
0
*
Clisp's answer for the same input:
|abacus3>clisp
WARNING: *FOREIGN-ENCODING*: reset to ASCII
i i i i i i i ooooo o ooooooo ooooo ooooo
I I I I I I I 8 8 8 8 8 o 8 8
I \ `+' / I 8 8 8 8 8 8
\ `-+-' / 8 8 8 ooooo 8oooo
`-__|__-' 8 8 8 8 8
| 8 o 8 8 o 8 8
------+------ ooooo 8oooooo ooo8ooo ooooo 8
Copyright (c) Bruno Haible, Michael Stoll 1992, 1993
Copyright (c) Bruno Haible, Marcus Daniels 1994-1997
Copyright (c) Bruno Haible, Pierpaolo Bernardi, Sam Steingold 1998
Copyright (c) Bruno Haible, Sam Steingold 1999-2000
Copyright (c) Sam Steingold, Bruno Haible 2001-2004
[1]> (loop for x in '(((RAT SIMP) 11 8))
when (and (numberp x) (minusp x))
maximize x)
NIL
[2]>
The result of this loop gets passed to minusp, which causes a problem
under clisp. I don't understand loop well enough to guarantee that
Clisp's answer is illegal.
--Jim