Re: Decorations and Motion 22
Arnold, Nate
I have now been working for this past week on rewriting the standard text on exception handling. Another query. I'm using the 20 Oct Neumaier "pentit" for the decoration.
What is the result of (bare decoration) op (bare interval)? E.g.
ok + [1,2]
or
[1,2] / ok
Following Motion 8 §2.3, does [1,2] get promoted to
([1,2],"possibly everywhere defined") = ([1,2],2)
or to
([1,2],ok) = ([1,2],0) ?
The former seems in accord with other parts of the design, so I assume it. Then I suppose "ok" promotes to "an arbitrary ok decorated interval" (xx,ok). Whence
ok + [1,2] = "possibly everywhere defined"
because that's the worst that can happen with (xx,ok) + ([1,2],2); and
[1,2] / ok = "nowhere defined"
because xx might be [0,0].
Aargh... No, that's not the worst case, because, in my view of things, "ok" can promote to an "ok" empty interval. Or is that forbidden? If allowed, it would give "illFormed"=4 as the result of *every* operation on bare intervals.
If it *is* forbidden, what is the result of the decorated interval constructor call
XX = decoratedInterval(xx, dec)
when given interval xx = Empty and decoration dec = ok ?
John Pryce