- From: Andreas Strotmann <strotman@cs.fsu.edu>
- Date: Thu, 21 Jun 2001 09:59:44 -0400 (EDT)
- To: William Arthur Naylor <bill@scl.csd.uwo.ca>
- cc: Robert Miner <RobertM@dessci.com>, <dreamthnk@hotmail.com>, <www-math@w3.org>

Personally, I think this is an excellent question that covers a wide range of problems, e.g. the multiple values of a "root" or those of asin ... Just like "root" and "asin", "plus/minus" deserves its own OpenMath Content Dictionary entry, making it available to MathML via the csymbol construct. In OpenMath, it could be defined using a construct that I believe I proposed some years ago for this general purpose, namely, the "one_of" operator, which takes a set or list as an argument, and produces an arbitrary element of the set or list. Using this, the semantics of +/- can be expressed as for all x, +/-( x ) := one_of ({+x, -x}) . The "one_of" operator would replace the "or" in a previous post, and is arguably better suited for this purpose. Note that you have to be very careful with such constructs, as we pointed out in the OpenMath Objectives paper years ago. There, we give an example of the formula for the roots of a univariate complex polynomial of degree three in terms of such a "+/-" expression, where *all* such "one_of" choices have to make the same decision for the formula to be correct; thus, one_of expressions (including plus/minus ones) would need to be lambda-bound if they appear more than once to preserve semantic correctness. The "one_of" construct fits nicely into the basic set of set-theoretic operators, as it closely corresponds to the use of the axiom of choice. Note that this solution side-steps several problems. On the one hand, it produces the single-valued function that is required to make it work with any other arithmetic operations; on the other hand, CA systems tend to understand how to lift or lower the "one_of" expressions along embeddings of expressions -- the indeterminacy is also maintained. Robert Miner's second reading would alternatively use an "all_of" construct. This would take an indeterminate single-valued function, and return a set or sequence of all possible values of the function. -- Andreas ____________________________________________________________ "The act of defending any of the cardinal virtues has today all the exhilaration of a vice." - G.K.Chesterton: A Defense of Humilities, The Defendant, 1901 www.chesterton.org/acs/quotes.htm

Received on Thursday, 21 June 2001 09:59:53 UTC