Power (function): Difference between revisions

From APL Wiki
Jump to navigation Jump to search
(General editing)
Line 1: Line 1:
:''This page describes the dyadic arithmetic function. For the monadic natural exponential function (power of e), see [[Exponential]]. For the operator that iterates the function operand, see [[Power (operator)]].''
:''This page describes the dyadic function. For the monadic function that uses <math>e</math> as a base, see [[Exponential]]. For the iteration operator, see [[Power (operator)]].''


{{Built-in|Power|*}} is a [[dyadic]] [[scalar function]] which computes the [[wikipedia:exponentiation|exponentiation]] function of the two [[argument|arguments]]. More precisely, <source lang=apl inline>X*Y</source> computes X raised to the power of Y. Power shares the [[glyph]] <source lang=apl inline>*</source> with the monadic arithmetic function [[Exponential]].
{{Built-in|Power|*}} is a [[dyadic]] [[scalar function]] that computes the [[wikipedia:exponentiation|exponentiation]] function of the two [[argument|arguments]], so that <source lang=apl inline>X*Y</source> is <source lang=apl inline>X</source> raised to the power <source lang=apl inline>Y</source>. Power shares the [[glyph]] <source lang=apl inline>*</source> with the monadic arithmetic function [[Exponential]].


== Examples ==
== Examples ==
Line 8: Line 8:
0.5 1 2 4 8 16 32
0.5 1 2 4 8 16 32
</source>
</source>
A common technique is to choose [[sign]] based on [[Boolean]]s:
A common technique is to choose [[sign]] based on a [[Boolean]] array:
<source lang=apl>
<source lang=apl>
       ¯1*1 0 0 1 0
       ¯1*1 0 0 1 0
Line 16: Line 16:
== Properties ==
== Properties ==


For positive integer Y, <source lang=apl inline>X*Y</source> equals the [[times|product]] of Y copies of X. When Y is 0, <source lang=apl inline>X*Y</source> equals 1, possibly except when X is also 0 (since [[wikipedia:zero to the power of zero|zero to the power of zero]] is undefined in mathematics).
For positive integer <source lang=apl inline>Y</source>, <source lang=apl inline>X*Y</source> equals the [[times|product]] of <source lang=apl inline>Y</source> copies of <source lang=apl inline>X</source>. When <source lang=apl inline>Y</source> is 0, <source lang=apl inline>X*Y</source> equals 1, possibly except when <source lang=apl inline>X</source> is also 0 (since [[wikipedia:zero to the power of zero|zero to the power of zero]] is undefined in mathematics).


<source lang=apl>
<source lang=apl>
Line 27: Line 27:
</source>
</source>


[[negate|Negation]] on the power results in the [[reciprocal]] on the return value.
[[negate|Negating]] the exponent (right argument) gives the [[reciprocal]] of the return value.


<source lang=apl>
<source lang=apl>
Line 34: Line 34:
</source>
</source>


[[Reciprocal]] on the power results in the n-th root on the return value. This can be used to calculate the square root.
If the exponent is the [[reciprocal]] of some number n, the result is the n-th [[root]] of the base. For example, a right argument of <source lang=apl inline>÷2</source> gives the [[square root]].


<source lang=apl>
<source lang=apl>

Revision as of 13:19, 2 June 2020

This page describes the dyadic function. For the monadic function that uses as a base, see Exponential. For the iteration operator, see Power (operator).
*

Power (*) is a dyadic scalar function that computes the exponentiation function of the two arguments, so that X*Y is X raised to the power Y. Power shares the glyph * with the monadic arithmetic function Exponential.

Examples

      2*¯1 0 1 2 3 4 5
0.5 1 2 4 8 16 32

A common technique is to choose sign based on a Boolean array:

      ¯1*1 0 0 1 0
¯1 1 1 ¯1 1

Properties

For positive integer Y, X*Y equals the product of Y copies of X. When Y is 0, X*Y equals 1, possibly except when X is also 0 (since zero to the power of zero is undefined in mathematics).

      3*5
243 
      ×/5⍴3
243
      1 2 3*0
1 1 1

Negating the exponent (right argument) gives the reciprocal of the return value.

      (2*¯4)=÷2*4
1

If the exponent is the reciprocal of some number n, the result is the n-th root of the base. For example, a right argument of ÷2 gives the square root.

      3*2
9
      9*÷2
3

External links

Documentation

APL built-ins [edit]
Primitives (Timeline) Functions
Scalar
Monadic ConjugateNegateSignumReciprocalMagnitudeExponentialNatural LogarithmFloorCeilingFactorialNotPi TimesRollTypeImaginarySquare RootRound
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 axisIdentity (Null, Ident)
Dyadic BindCompositions (Compose, Reverse Compose, Beside, Withe, Atop, Over) ∙ Inner ProductDeterminantPowerAtUnderRankDepthVariantStencilCutDirect definition (operator)Identity (Lev, Dex)
Quad names Index originComparison toleranceMigration levelAtomic vector