Nate & P1788
On 23 Apr 2010, at 21:59, Nate Hayes wrote:
...
But how is a user supposed to know just by looking at the bits
(T,F,T) if somewhere in the history of computation an operand was
evaluated entirely vs. partially outside its natural domain?
The proposed mapping appears to be counting on the fact that any
function evaluated entirely outside its natrual domain will produce
{empty}, and that this is good enough to start a chain-reaction of
(F,F,T) tetrits propagating through the result all the way to the
end.
However, {empty} can be absorbed by a union operation, in which case
the tetrit can change back to (T,F,T) state. In this case, the fact
that a serious domain violation ocurred is lost. With priority
mapping the decoration (F,F) would propagate all the way to the end.
The context in which I have been thinking of the "domain" (also
"continuous") property being used is - f is a point function defined
by an expression F using elementary functions e_i.
- ff is an interval version of f defined by the
same expression F but using the corresponding
interval versions ee_i of the e_i.
Then, union cannot occur since it is not an allowed elementary
function for use within a point function.
Nate, you are interested in branch & bound calculations rather than
the Brouwer fixed point ones that I know more about; but wouldn't
union() be forbidden in your app, for the same reason?
Not that it is forbidden entirely, but may only be used outside the
scope of a ff() calculation that sets "domain" or "continuous"
trits/tetrits.
Does this avoid the difficulty?