Re: atan2_sharp() -- a Motion?
Earlier I wrote:
>> On whether atan2_sharp() can be programmed using case() and the two
>> or three shifted-range atan2x() functions: I suppose I should try,
>> and identify the sticking point.
Here is the sticking point: If case() is used to select from two
branches of atan2(), the fuzzy case (where the discriminator contains
both positive and negative values) returns the convex hull of the two
branches. But since the two branches return values separated by 2pi,
the convex hull will be pessimally unsharp (at least 2pi wide, which
for atan2() is effectively Entire).
John Pryce pointed out that this does not necessarily doom the FTIA,
but a separate proof would be required.
He also wrote:
> Also, what about the possibility of XX contained in YY, and the algorithm
> choosing a branch for case YY that's incompatible with that for case XX?
I'm afraid that will indeed be the case. A box that crosses the Y axis
contains subboxes that sit entirely to one side or the other, and those
two are likely to pick different branches -- so least one of them will
differ from whatever is chosen for the containing box.
Now -- is the monotonicity that is violated here critical?
Michel.
---Sent: 2014-02-20 22:15:57 UTC