User Activity

  • Modified ticket #4926 on Maxima -- GPL CAS based on DOE-MACSYMA

    asksign uses facts even after they've been deleted

  • Created ticket #4926 on Maxima -- GPL CAS based on DOE-MACSYMA

    asksign uses facts even after they've been deleted

  • Created ticket #4925 on Maxima -- GPL CAS based on DOE-MACSYMA

    asksign(asin(x)) documentation

  • Created ticket #4924 on Maxima -- GPL CAS based on DOE-MACSYMA

    is({}<{}) should return unknown

  • Posted a comment on ticket #4923 on Maxima -- GPL CAS based on DOE-MACSYMA

    Re "So why not give sign the missing answers instead: let it return imaginary or complex (as csign already does) when the declarations leave no better option. Then sign(z) => complex, sign(j) => imaginary, sign(j^2) => nz, and is maps imaginary to false and complex to unknown. asksign would still reject anything not known to be real." The raison d'être of csign is precisely that the return values of sign are a closed set. We can't "hope" that our users' code doesn't depend on this.

  • Posted a comment on ticket #4923 on Maxima -- GPL CAS based on DOE-MACSYMA

    Re is(%i>0) is not false, but meaningless since %$i is not part of the ordered field R. It should return unknown, just as other meaningless statements do, e.g. is([1]>0) and is({}<[]) return unknown.

  • Posted a comment on ticket #4923 on Maxima -- GPL CAS based on DOE-MACSYMA

    Yes, z might be real, but I disagree that sign should assume that it is real and thus return pnz. The root problem is that sign has no way to return unknown other than signaling an error. If is depends on the current behavior, that is a bug in is. cf. my comments in #4922.

  • Posted a comment on ticket #4922 on Maxima -- GPL CAS based on DOE-MACSYMA

    Since sign is clearly documented as assuming that its argument is a real-valued expression, I would argue that as soon as it sees anything explicitly complex, it should raise an error, even if the overall value of the expression is real. That is, all the following cases should raise an error: sign(%i) << already gives error sign(z) sign(z^2) sign(j^2) sign(abs(x+%i)) sign((x+%i)*(x-%i)) => pos (because it expands) The error should be something like :The sign function is only defined for expressions...

View All

Personal Data

Username:
macrakis
Joined:
2002-08-02 05:48:19

Projects

This is a list of open source software projects that Stavros Macrakis is associated with:

Personal Tools