Signum: Difference between revisions
mNo edit summary |
|||
Line 28: | Line 28: | ||
== Zero divided by zero == | == Zero divided by zero == | ||
The identity <source lang=apl inline>×z</source> {{←→}} <source lang=apl inline>z÷|z</source> holds only when <source lang=apl inline>z</source> is not zero in most APLs. In "Zero Divided by Zero"<ref>[[Eugene McDonnell|McDonnell, Eugene]]. [https://www.jsoftware.com/papers/eem/0div0.htm "Zero Divided by Zero"]. [[APL76]].</ref>, [[Eugene McDonnell]] gave this identity as a reason to define <source lang=apl inline>0÷0</source> to be equal to <source lang=apl inline>0</source>. In [[J]], which took McDonnell's suggestion, the identity always holds. | The identity <source lang=apl inline>×z</source> {{←→}} <source lang=apl inline>z÷|z</source> holds only when <source lang=apl inline>z</source> is not zero in most APLs. In "Zero Divided by Zero"<ref>[[Eugene McDonnell|McDonnell, Eugene]]. [https://www.jsoftware.com/papers/eem/0div0.htm "Zero Divided by Zero"]. [[APL76]].</ref>, [[Eugene McDonnell]] gave this identity as a reason to define <source lang=apl inline>0÷0</source> to be equal to <source lang=apl inline>0</source>. In [[J]], which took McDonnell's suggestion, the identity always holds. [[Dyalog APL]] and [[NARS2000]] allow the choosing [[division method]] though the default remains 1. | ||
== External links == | == External links == |
Revision as of 15:13, 27 March 2020
×
|
Signum (×
), Sign, Sign of, or Direction is a monadic primitive function which returns the sign of a real or complex number. That is, it returns 0 when given an argument of 0, and otherwise returns a number with magnitude 1 given by dividing the argument by its own magnitude.
Examples
The three possible results of Signum on a real argument are 0
, 1
, and ¯1
.
× ¯3 0 5 ¯1 0 1
In dialects with complex numbers, Signum is a somewhat more complicated function, and may return any unit complex number.
× 3j4 0.6J0.8
The result is still equal to the original number divided by its magnitude:
| 3j4 5 3j4 ÷ | 3j4 0.6J0.8
The magnitude of the result for a non-zero argument is always 1.
| × 3j4 ¯2j1 6j¯7 1 1 1
Zero divided by zero
The identity ×z
z÷|z
holds only when z
is not zero in most APLs. In "Zero Divided by Zero"[1], Eugene McDonnell gave this identity as a reason to define 0÷0
to be equal to 0
. In J, which took McDonnell's suggestion, the identity always holds. Dyalog APL and NARS2000 allow the choosing division method though the default remains 1.