[Maxima] Declare signum(x) to be real-valued

Dieter Kaiser drdieterkaiser at web.de
Sat May 9 07:34:21 CDT 2009

I have added code to handle real-valued functions and functions declared to be
real-valued for the routine rectform.

signum simplifies as a real function:

(%i10) rectform(signum(x));
(%o10) signum(x)

A unknown function:

(%i12) rectform(f(x));
(%o12) 'realpart(f(x))+%i*'imagpart(f(x))

The function can declared to be real-valued:

(%i13) declare(f,real);
(%o13) done
(%i14) rectform(f(x));
(%o14) f(x)

A function which is declared to be integer-valued will simplify too:

(%i15) declare(n,integer);
(%o15) done
(%i16) rectform(n(x));
(%o16) n(x)

All this complex-, real-, integer-valued stuff and properties can be made much
more consistent and complete. Further work is needed.

Dieter Kaiser

-----Ursprüngliche Nachricht-----
Von: Barton Willis [mailto:willisb at unk.edu] 
Gesendet: Samstag, 9. Mai 2009 02:10
An: Dieter Kaiser
Betreff: Re: [Maxima] Declare signum(x) to be real-valued

Thanks for checking on this.


-----maxima-bounces at math.utexas.edu wrote: -----

>Because of the last commit to rpart.lisp which changes the standard
>behavior of rectform, the signum function no longer simplifies as
>expected. Therefore we get failures for the tests in
>rtest_abs_integrate.mac. I have overlooked this fact.
>Tomorrow, I will commit a correction to declare signum(x) a real-valued
>function, which will simplify as expected when rectform is applied.
>Dieter Kaiser
>Maxima mailing list
>Maxima at math.utexas.edu

More information about the Maxima mailing list