Reciprocal

From APL Wiki
Jump to navigation Jump to search
÷

Reciprocal (÷) is a monadic scalar function which gives the multiplicative inverse of a real or complex number. Reciprocal shares the glyph ÷ with the dyadic arithmetic function Divide.

Examples

      ÷1 2 3 4 5
1 0.5 0.3333333333 0.25 0.2
 
      ÷¯2 0.5 1J2
¯0.5 2 0.2J¯0.4

      ÷0
DOMAIN ERROR: Divide by zero
 ÷0                         
 ∧
 
      ⎕DIV←1  ⍝ this sets division by 0 to always return 0
      ÷0
0

Properties

The reciprocal of any real or complex number is equal to 1 divided by that number. Therefore the monadic ÷ can be seen as dyadic ÷ with default left argument of 1. This applies even to the reciprocal of 0; ÷0 and 1÷0 show identical behavior for both ⎕DIV←0 (raising DOMAIN ERROR) and ⎕DIV←1 (returning 0).

      ÷1 2 3 4 5
1 0.5 0.3333333333 0.25 0.2

      1÷1 2 3 4 5
1 0.5 0.3333333333 0.25 0.2

For any non-zero real or complex numbers, the signum of reciprocal is equal to the conjugate of signum, and the magnitude of reciprocal is equal to the reciprocal of magnitude.

      (×∘÷ ≡ +∘×)1 2 3 ¯2 0.5 1J2
1

      (|∘÷ ≡ ÷∘|)1 2 3 ¯2 0.5 1J2
1
Works in: Dyalog APL

See also

External links

Documentation

APL built-ins [edit]
Primitives (Timeline) Functions
Scalar
Monadic ConjugateNegateSignumReciprocalMagnitudeExponentialNatural LogarithmFloorCeilingFactorialNotPi TimesRollTypeImaginarySquare Root
Dyadic AddSubtractTimesDivideResiduePowerLogarithmMinimumMaximumBinomialComparison functionsBoolean functions (And, Or, Nand, Nor) ∙ GCDLCMCircularComplexRoot
Non-Scalar
Structural ShapeReshapeTallyDepthRavelEnlistTableCatenateReverseRotateTransposeRazeMixSplitEncloseNestCut (K)PairLinkPartitioned EnclosePartition
Selection FirstPickTakeDropUniqueIdentityStopSelectReplicateExpandSet functions (IntersectionUnionWithout) ∙ Bracket indexingIndexCartesian ProductSort
Selector Index generatorGradeIndex OfInterval IndexIndicesDealPrefix and suffix vectors
Computational MatchNot MatchMembershipFindNub SieveEncodeDecodeMatrix InverseMatrix DivideFormatExecuteMaterialiseRange
Operators Monadic EachCommuteConstantReplicateExpandReduceWindowed ReduceScanOuter ProductKeyI-BeamSpawnFunction axis
Dyadic BindCompositions (Compose, Reverse Compose, Beside, Withe, Atop, Over) ∙ Inner ProductDeterminantPowerAtUnderRankDepthVariantStencilCutDirect definition (operator)
Quad names Index originComparison toleranceMigration levelAtomic vector