See the following commands:
(%i1) load(fourier_elim); (%i2) fourier_elim((x-1)/(x-5) <= 1/3,[x]); (%o2) [x=-1] or [-1<x,x<5] (%i3) domain : complex; (%i4) fourier_elim((x-1)/(x-5) <= 1/3,[x]); (%o4) [x=-1,-6#0] or [-1<x,x<5]
In the complex case, should fourier_elim compute this interval solution or should it give some kind of error when dealing with inequalities?
Also, the inequality "-6#0" is redundant and should not be generated.
(Context: https://groups.google.com/forum/#!topic/sage-devel/QLEFLgkuXRg)
Rupert Swarbrick
2014-07-28
My thoughts:
Setting domain to complex doesn't affect all the calculations that Maxima does (that's an empirical fact, not something about which I have strong opinions either way).
Fourier elimination doesn't really make sense with complex numbers. Indeed, you write (x-1)/(x-5) <= 1/3. What does that mean if x is not real?
There aren't any functions (I don't think) that call fourier_elim "behind the scenes". So I don't think the user should be surprised if, after he or she types "fourier_elim" and some inequalities, Maxima does Fourier elimination based on those inequalities.