Difference between revisions of "Binomial"

From APL Wiki
Jump to navigation Jump to search
m (Text replacement - "http://help.dyalog.com" to "https://help.dyalog.com")
 
Line 45: Line 45:
 
=== Documentation ===
 
=== Documentation ===
  
* [http://help.dyalog.com/latest/#Language/Primitive%20Functions/Binomial.htm Dyalog]
+
* [https://help.dyalog.com/latest/#Language/Primitive%20Functions/Binomial.htm Dyalog]
 
* [http://microapl.com/apl_help/ch_020_020_260.htm APLX]
 
* [http://microapl.com/apl_help/ch_020_020_260.htm APLX]
 
* [https://www.jsoftware.com/help/dictionary/d410.htm J Dictionary], [https://code.jsoftware.com/wiki/Vocabulary/bang#dyadic NuVoc]
 
* [https://www.jsoftware.com/help/dictionary/d410.htm J Dictionary], [https://code.jsoftware.com/wiki/Vocabulary/bang#dyadic NuVoc]
 
{{APL built-ins}}[[Category:Primitive functions]][[Category:Scalar dyadic functions]]
 
{{APL built-ins}}[[Category:Primitive functions]][[Category:Scalar dyadic functions]]

Latest revision as of 14:42, 14 July 2020

!

Binomial (!) is a dyadic scalar function which gives the binomial coefficient between the two arguments. The argument order k!n is reversed compared to most of traditional mathematical notation's alternative notations, for example and , but not others, like . Binomial shares the glyph ! with the monadic arithmetic function Factorial.

Examples

For non-negative integer arguments, the binomial coefficient k!n is equal to the number of ways to choose k items out of n distinct items. For example, 3!5 is 10 because there are 10 ways to pick 3 items out of 5: 123, 124, 125, 134, 135, 145, 234, 235, 245, 345.

      0 1 2 3 4 5!5
1 5 10 10 5 1

k!n also corresponds to the k-th value (zero-indexed) on the n-th row (also zero-indexed) of Pascal's triangle.

      ∘.! 0,⍳5
1 0  0  0 0 0
1 1  0  0 0 0
1 2  1  0 0 0
1 3  3  1 0 0
1 4  6  4 1 0
1 5 10 10 5 1
Works in: Dyalog APL

Properties

The value of X!Y equals (!Y)÷(!X)×!Y-X.

      Alt{(!)÷(!)×!-}
      0 1 2 3 4 5 Alt 5
1 5 10 10 5 1

In multiple implementations where Factorial is extended to use the Gamma function , Binomial is defined to use the above equality for non-integers. In that case, the Beta function becomes closely related to the Binomial, giving the identity ÷Y×(X-1)!X+Y-1.

      1 1.2 1.4 1.6 1.8 2!5
5 6.105689248 7.219424686 8.281104786 9.227916704 10
      2!3j2
1J5
Works in: Dyalog APL

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