Is there an accepted definition of what it means to select the maximum of two
complex numbers? I've never heard of such a thing. There's no general way to
impose a strict ordering on a vector value, and such a lack typically means the
operation is considered undefined.
Magnitude? max(<-3,0>,<2,0>) = <-3,0> Say what, -3 > 2?
Piecewise? max (<2,0>, <0,3>) = <2,3> A completely new
value?
Real dominates? max(<1,0>,<0,9999>) = <1,0> But why?
I was taught that you *never* want to overload operators or reference
mathematical functions if there's any ambiguity in meaning in the applied
context, there's just too much chance for misinterpretation.
IIRC that's even why C doesn't have an exponentiation operator, there was a
fairly even split on whether it should associate left-to-right or right-to-left,
with the result that 2**3**4 could reasonably be expected to be interpreted as
either (2**3)**4 or 2**(3**4), so they decided it was better to eliminate untold
mysterious bugs by leaving it out entirely in favor of the pow() function which
would specify association explicitly[ Reply to This | Parent | # ]
|