2,954
edits
(History) |
|||
Line 44: | Line 44: | ||
Like [[Negate]], Conjugate almost never suffers issues with numerical precision. This is because negating a component of a complex number is exact in all common number systems. | Like [[Negate]], Conjugate almost never suffers issues with numerical precision. This is because negating a component of a complex number is exact in all common number systems. | ||
== History == | |||
In early APLs, which did not support complex numbers, monadic <syntaxhighlight lang=apl inline>+</syntaxhighlight> returned its argument unchanged; however, this was not initially considered as a restriction of the complex conjugate to real numbers. In fact, [[Phil Abrams]]' report on [[IVSYS/7090]] defined <syntaxhighlight lang=apl inline>+A</syntaxhighlight> to be <syntaxhighlight lang=apl inline>0+A</syntaxhighlight>, implying that the function should extend to the identity on complex numbers as well. The extension to complex conjugate was included in a 1977 proposal by Paul Penfield,<ref>Paul Penfield. [https://dl.acm.org/doi/full/10.1145/586003.586007 Notation for complex "part" functions]. [[APL Quote Quad]] Volume 8, Issue 1. 1977-09.</ref> who noted that it had already appeared in a 1975 IBM publication documenting APL.<ref>[[IBM]]. [https://archive.org/details/bitsavers_ibmaplGC2675_6717824/mode/2up APL Language]. GC26-3847-0. 1975-03.</ref> Penfield's work became the basis for the first APL [[complex number]] implementation, in [[SHARP APL]].<ref>[[Eugene McDonnell]]. SATN-40: [https://www.jsoftware.com/papers/satn40.htm Complex Numbers]. 1981-06-20.</ref> Conjugate was supported in SHARP and all later APLs to implement complex numbers. | |||
== See also == | == See also == | ||
Line 66: | Line 70: | ||
* [https://mlochbaum.github.io/BQN/doc/arithmetic.html#basic-arithmetic BQN] | * [https://mlochbaum.github.io/BQN/doc/arithmetic.html#basic-arithmetic BQN] | ||
== References == | |||
<references/> | |||
{{APL built-ins}}[[Category:Primitive functions]][[Category:Scalar monadic functions]] | {{APL built-ins}}[[Category:Primitive functions]][[Category:Scalar monadic functions]] |