RE: Evaluated and unevaluated conditions



I wrote:

> > (1) "NOT x # y" yields FALSE for undefined x and y
> > (whether PREDERROR is TRUE or FALSE). This seems like a bug
> >  -- do you agree?
 
--- Stavros Macrakis <stavros.macrakis@verizon.net> wrote:
> No.  "=" and "#" are *syntactic* comparison.  Other relations 
> (<, <=, > etc.) are *semantic* comparison.  So Not(x#y) should
> be False for undefined x and y.

OK, I guess that's consistent with "=": "IS(x=y)" also yields
false for undefined x and y, and NOT, as we've discussed, 
implicitly applies IS.

> I know this is confusing.  One quick "solution" would be to
> define infix semantic comparison operators, e.g. "==" and 
> "<>" or something.

Well, "==" would be equivalent to EQUAL, right? So it's
not strictly necessary. However, there seems no way to
get the negation of EQUAL at present -- it's not NOT EQUAL.
We could create a NOT_EQUAL function, but I would suggest
instead that we remove the implicit "IS" from "NOT".

> > (2) Some of the rules concerning conditions are there to
> > avoid having to simplify or evaluate 1/0 or other 
> > expressions. What happens if Maxima has a policy that
> > "There are no bad expressions, every expression evaluates
> > to something" ?
> 
> Yes, making 1/0 => infinity (unsigned infinity) or und or 1/0 are
> certainly possibilities that have been discussed over the years. 
> To make them work properly, though, *all* of Maxima would have to
> be reviewed. [...]

> It may be worth making this effort, but only as part of a 
> larger project to clean up and abstract other object types. 
> It really does mean reviewing almost every function in the
> system, [...]

Well, I think that we should at least discuss the possibility
of large scale projects. As others have noted in the past,
we might keep a "wish list" or "design notebook".

I see from the mailing list archive that there was some
discussion about setting up a Wiki to write a FAQ. That 
doesn't appear to have materialized -- finding a server
is probably a stumbling block. I just looked at the Source
Forge services list -- I don't see a way to put up a Wiki.

Surfing the web in search of wiki hosting, I found
feedle.net -- I'll get in touch with them, maybe they
can help.

> > It seems that if we implemented this more relaxed policy,
> > then unevaluated boolean expressions with AND, OR, and NOT 
> > become possible. What do you think?
> 
> Yes, this would probably work.

Well, on the face of it, that seems desirable.
Doubtless I've overlooked something.

Robert Dodier


__________________________________
Do you Yahoo!?
New Yahoo! Photos - easier uploading and sharing.
http://photos.yahoo.com/