Hello Alexey,
do you have implemented a general mechanism to give $sign more support for new
functions?
Such a mechanism would be interessting and is availabe for the conjugate
function. It is possible to put a CONJUGATE-FUNCTION on the property list which
is called by the algorithm of $conjugate.
The advantage would be that it is possible to add new functions without changing
the code of compar.lisp.
I have used this mechanism to support mirror symmetry for the functions in the
file gamma.lisp. No change of the code in the file conjugate.lisp was necessary.
Dieter Kaiser
-----Urspr?ngliche Nachricht-----
Von: maxima-bounces at math.utexas.edu [mailto:maxima-bounces at math.utexas.edu] Im
Auftrag von Alexey Beshenov
Gesendet: Samstag, 17. Januar 2009 23:41
An: maxima at math.utexas.edu
Betreff: [Maxima] sign(zeta(x))
I found that Maxima doesn't know how to find sign(zeta(x))
for non-integer or positive odd x:
integrate (t^3/(exp(t)-1), t, 0, inf)
Is zeta(3) positive, negative, or zero?
It happens because zeta(3) is not evaluated, so sign(zeta(3))=pnz.
Other examples:
sign (zeta(5/6)) => pnz
sign (zeta(-5/2)) => pnz
Maybe we can extend compar.lisp by the following stuff:
;; for real x, zeta(x) has
;; trivial negative even roots
;; and a pole at x=1
(defun sign-zeta (x)
(let ((arg (cadr x)))
(cond
((eq (mgqp arg 1) t) '$pos)
((eq (mgqp arg 0) t) '$neg)
((eq (mgrp 0 arg) t)
(if (integerp arg)
(let ((m (mod arg 4)))
(cond
((= m 3) '$neg)
((= m 1) '$pos)
(t '$zero)))
(let ((fl (take '($floor) arg)))
(if (integerp fl)
(if (= (mod (if (evenp fl) fl (1- fl)) 4) 0)
'$pos
'$neg)
'$pnz))))
(t '$pnz))))
Examples:
(sign-zeta '(($zeta) -23)) => $pos
(sign-zeta '(($zeta) -22)) => $zero
(sign-zeta '(($zeta) -21)) => $neg
(sign-zeta '(($zeta) 0) => $neg
(sign-zeta '(($zeta) 23)) => $pos
(sign-zeta '(($zeta) ((rat) 5 6))) => $neg
(sign-zeta '(($zeta) ((rat) -5 2))) => $pos
(sign-zeta '(($zeta) $%pi))) => $pos
(sign-zeta '(($zeta) ((mtimes) 23 $%i))) => $pnz
(sign-zeta '(($zeta) $x)) => $pnz
--
Boomtime, Chaos 17 YOLD 3175
Alexey Beshenov http://beshenov.ru/
_______________________________________________
Maxima mailing list
Maxima at math.utexas.edu
http://www.math.utexas.edu/mailman/listinfo/maxima