Thread Links Date Links
Thread Prev Thread Next Thread Index Date Prev Date Next Date Index

Re: Motion P1788/M00018.01:TritsToTetrits



On 2010-07-08 14:29:21 -0400, Michel Hack wrote:
> Consider the function  min(x, 1/x**2)  evaluated over  [-2,+2].
> 
> The undefinedness of 1/x**2 at zero is covered up by the min()
> operation, so that it does not matter.

This is not clear. How would you define the min operation? From
a mathematical point of view, I would say that it is undefined
at x = 0 (similarly, if g(x) is undefined for x = x0, then
f(g(x0)) is also undefined, even if f is a constant function).
Otherwise you cannot see min as a composition of functions. So,
I see no problems with Motion 18 on this point.

> A similar situation arises in case-based programming, where the
> computation is deliberately arranged to avoid domain errors in
> certain cases.  Optimistic out-of-order execution may in fact
> trigger exceptions on mispredicted paths, but the system is
> supposed to defer exception reporting until paths are confirmed,
> and have the capability of squashing mispredicted exceptions.
> 
> What I am missing in the Trits-to-Tetrits paper is a statement that
> covers such situations, and that permits a case-based implementation
> of functions such as min(x,1/x**2) that avoids reporting a domain
> error.

I think domain errors should be explicitly cancelled by the user.
Or the user could use if ... then ... else ...

-- 
Vincent Lefèvre <vincent@xxxxxxxxxx> - Web: <http://www.vinc17.net/>
100% accessible validated (X)HTML - Blog: <http://www.vinc17.net/blog/>
Work: CR INRIA - computer arithmetic / Arénaire project (LIP, ENS-Lyon)