|
![](/i/fill.gif) |
"Warp" <war### [at] tag povray org> wrote in message
news:3d0b6c80@news.povray.org...
> Karl J. Anders <kar### [at] web de> wrote:
> > - the often discussed problem about vnormalize( <0,0,0> ) = 0
>[...]
> 1/0 is undefined. It has no value in the set of real numbers (or even
the
> set if imaginary numbers for that matter). Everyone accepts that.
> vnormalize(<0,0,0>) is undefined in the exact same way. There's no
> unit-sized vector which would have the same direction as <0,0,0>, because
> <0,0,0> has no direction nor length.
I would like to point out something not usually thought of: What is 1/0? I
notice that as the denominator approaches zero, the result approaches
infinity. 1 dividen into millionths results in a million pieces. 1 divided
into bajillionths results in a bajillion pieces.
Just because our digital mathematics aren't up to the task doesn't mean the
result doesn't exist. The result of dividing 1 by 0 should be infinity.
So it is an implementation problem that steps a little outside the
"standard" programmer's box. To solve this, you would have to create a
symbol to represent infinity, perhaps a keyword. Then you would have to
create a set of mathematical rules for the use of infinity:
x + infinity = infinity
x * infinity = infinity
infinity * infinity = infinity2 (there are many densities of infinity)
As you can see, my humble naming convention fails the task already. Any
better ideas?
Post a reply to this message
|
![](/i/fill.gif) |