Logarithm

From APL Wiki
Jump to navigation Jump to search
This page describes the dyadic arithmetic function. For the monadic natural logarithm function, see Natural Logarithm.

Logarithm (), or Log, is a dyadic scalar function which computes the logarithm of the two arguments. More precisely, XY computes how much power of X equals Y, i.e. the value of R that satisfies Y=X*R. Logarithm shares the glyph with the monadic arithmetic function Natural Logarithm. The glyph, a composition of the glyphs for Circular () and Power (*) to indicate its close mathematical ties with these two functions, is a stylised tree log.

Examples

      20.5 1 2 32 1024
¯1 0 1 5 10

Logarithm can be used to determine how many digits are needed to write a positive integer Y in base X:

      Digits{1+⌊}
      ToBase¯1
      (2 Digits 100) (2 ToBase 100)
┌─┬─────────────┐
71 1 0 0 1 0 0
└─┴─────────────┘
      (10 Digits 100) (10 ToBase 100)
┌─┬─────┐
31 0 0
└─┴─────┘
Works in: Dyalog APL

Properties

By definition, logarithm is the inverse of the power with the same base (left argument).

      2*1 2 3 4 5
2 4 8 16 32
      22 4 8 16 32
1 2 3 4 5
      2 (*¯1  ) 10
1
Works in: Dyalog APL

Reciprocal on the left or right argument gives the negated result.

      2⍟÷2 4 8 16 32
¯1 ¯2 ¯3 ¯4 ¯5
      (÷2)2 4 8 16 32
¯1 ¯2 ¯3 ¯4 ¯5

See also

External links

Documentation

APL built-ins [edit]
Primitive functions
Scalar
Monadic ConjugateNegateSignumReciprocalMagnitudeExponentialNatural LogarithmFloorCeilingFactorialNotPi TimesRollTypeImaginarySquare Root
Dyadic AddSubtractTimesDivideResiduePowerLogarithmMinimumMaximumBinomialComparison functionsBoolean functions (And, Or, Nand, Nor) ∙ GCDLCMCircularComplexRoot
Non-Scalar
Structural ShapeReshapeTallyDepthRavelEnlistTableCatenateReverseRotateTransposeRazeMixSplitEncloseNestCut (K)PairLinkPartitioned EnclosePartition
Selection FirstPickTakeDropUniqueIdentitySelectReplicateExpandSet functions (IntersectionUnionWithout) ∙ Bracket indexingIndex
Selector Index generatorGradeIndex OfInterval IndexIndicesDeal
Computational MatchNot MatchMembershipFindNub SieveEncodeDecodeMatrix InverseMatrix DivideFormatExecuteMaterialiseRange
Primitive operators Monadic EachCommuteConstantReplicateExpandReduceWindowed ReduceScanOuter ProductKeyI-beamSpawnFunction axis
Dyadic BindCompositions (Compose, Reverse Compose, Beside, Atop, Over) ∙ Inner ProductPowerAtUnderRankDepthVariantStencilCut (J)
Quad names
Arrays Index originMigration levelAtomic vector
Functions Case convertUnicode convert
Operators SearchReplace