Combinatorics Functions (20)

Number theory, combinatorial functions, prime numbers, sequences

bellNumbers
The Bell Numbers count the number of partitions of a set. A partition is a pairwise disjoint subset of S whose union is S. `bellNumbers` only takes integer arguments. The following condition must be enforced: n >= 0.
Syntax
bellNumbers(n)
Type Signatures
number | BigNumber
Parameters
NameTypeDescription
nNumber | BigNumberTotal number of objects in the set
Returns
Number | BigNumber — B(n)
Examples
bellNumbers(3)
bellNumbers(8)
See Also
stirlingS2
carmichaelLambda
Syntax
carmichaelLambda(n)
Parameters
NameTypeDescription
nnumberPositive integer
Returns
number — lambda(n)
Examples
carmichaelLambda(1)
carmichaelLambda(8)
carmichaelLambda(12)
carmichaelLambda(15)
catalan
The Catalan Numbers enumerate combinatorial structures of many different types. catalan only takes integer arguments. The following condition must be enforced: n >= 0.
Syntax
catalan(n)
Type Signatures
number | BigNumber
Parameters
NameTypeDescription
nNumber | BigNumbernth Catalan number
Returns
Number | BigNumber — Cn(n)
Examples
catalan(3)
catalan(8)
See Also
bellNumbers
chineseRemainder
Solve a system of congruences using the Chinese Remainder Theorem.
Syntax
chineseRemainder(remainders | moduli)
Type Signatures
Array, Array
Parameters
NameTypeDescription
remaindersnumber[]Array of remainders [r0, r1, ..., rk]
modulinumber[]Array of pairwise coprime moduli [m0, m1, ..., mk]
Returns
number — Unique solution x in [0, M)
Examples
chineseRemainder([2
3
2
See Also
gcd lcm mod
composition
The composition counts of n into k parts. composition only takes integer arguments. The following condition must be enforced: k <= n.
Syntax
composition(n | k)
Type Signatures
number | BigNumber, number | BigNumber
Parameters
NameTypeDescription
nNumber | BigNumberTotal number of objects in the set
kNumber | BigNumberNumber of objects in the subset
Returns
Number | BigNumber — Returns the composition counts of n into k parts.
Examples
composition(5
3)
See Also
combinations
divisorSigma
Compute the divisor function sigma_k(n): the sum of the k-th powers of all positive divisors of n. k=0 gives the number of divisors; k=1 gives the sum of divisors.
Syntax
divisorSigma(k | n)
Type Signatures
number, number
Parameters
NameTypeDescription
knumberNon-negative integer exponent
nnumberPositive integer
Returns
number — sigma_k(n)
Examples
divisorSigma(0
12)
divisorSigma(1
12)
divisorSigma(1
divisors
Return a sorted array of all positive divisors of a positive integer n.
Syntax
divisors(n)
Parameters
NameTypeDescription
nnumberPositive integer
Returns
number[] — Sorted array of all positive divisors of n
Examples
divisors(1)
divisors(12)
divisors(28)
See Also
gcd lcm primeFactors
eulerPhi
Syntax
eulerPhi(n)
Parameters
NameTypeDescription
nnumberPositive integer
Returns
number — phi(n)
Examples
eulerPhi(1)
eulerPhi(6)
eulerPhi(12)
eulerPhi(7)
See Also
gcd primeFactors
fibonacci
Compute the nth Fibonacci number using the fast doubling algorithm. F(0)=0, F(1)=1, F(n)=F(n-1)+F(n-2). For n > 70 use BigInt input to avoid overflow.
Syntax
fibonacci(n)
Parameters
NameTypeDescription
nnumber | bigintNon-negative integer index
Returns
number | bigint — The nth Fibonacci number F(n)
Examples
fibonacci(0)
fibonacci(1)
fibonacci(10)
fibonacci(20)
harmonicNumber
Compute the n-th harmonic number H_n = 1 + 1/2 + 1/3 + ... + 1/n. Uses direct summation for small n and asymptotic expansion for large n. n must be a positive integer.
Syntax
harmonicNumber(n)
Parameters
NameTypeDescription
nnumberA positive integer
Returns
number — The n-th harmonic number H_n
Examples
harmonicNumber(1)
harmonicNumber(5)
harmonicNumber(10)
harmonicNumber(100)
integerDigits
Return the digits of a non-negative integer in a given base (default 10), most significant digit first.
Syntax
integerDigits(n) | integerDigits(n | base)
Type Signatures
number, number
Parameters
NameTypeDescription
nnumberNon-negative integer
basenumberBase for the digit representation (default: 10)
Returns
number[] — Array of digits, most significant first
Examples
integerDigits(123)
integerDigits(255
16)
integerDigits(10
2)
jacobiSymbol
Compute the Jacobi symbol (a/n), a generalization of the Legendre symbol. Returns 0, 1, or -1. n must be an odd positive integer.
Syntax
jacobiSymbol(a | n)
Type Signatures
number, number
Parameters
NameTypeDescription
anumberInteger
nnumberOdd positive integer >= 1
Returns
number — Jacobi symbol (a/n): 0, 1, or -1
Examples
jacobiSymbol(1
1)
jacobiSymbol(2
7)
jacobiSymbol(3
lucasL
Compute the nth Lucas number.
Syntax
lucasL(n)
Parameters
NameTypeDescription
nnumberNon-negative integer index
Returns
number — The nth Lucas number L(n)
Examples
lucasL(0)
lucasL(1)
lucasL(5)
lucasL(10)
moebiusMu
Compute the Mobius function mu(n).
Syntax
moebiusMu(n)
Parameters
NameTypeDescription
nnumberPositive integer >= 1
Returns
number — mu(n): 0, 1, or -1
Examples
moebiusMu(1)
moebiusMu(2)
moebiusMu(6)
moebiusMu(4)
moebiusMu(30)
nextPrime
Return the smallest prime number strictly greater than n.
Syntax
nextPrime(n)
Parameters
NameTypeDescription
nnumberNon-negative number
Returns
number — Smallest prime p such that p > n
Examples
nextPrime(1)
nextPrime(10)
nextPrime(100)
nextPrime(1000)
See Also
primeFactors gcd
partitions
Count the number of integer partitions of n (P(n)).
Syntax
partitions(n)
Parameters
NameTypeDescription
nnumberNon-negative integer
Returns
number — Number of integer partitions P(n)
Examples
partitions(0)
partitions(1)
partitions(4)
partitions(10)
prime
Return the nth prime number (1-indexed). prime(1) = 2, prime(2) = 3, prime(3) = 5, etc.
Syntax
prime(n)
Parameters
NameTypeDescription
nnumberPositive integer (1-indexed)
Returns
number — The nth prime number
Examples
prime(1)
prime(5)
prime(25)
prime(100)
primeFactors
Compute the prime factorization of a positive integer n, returning an array of prime factors in ascending order with multiplicity.
Syntax
primeFactors(n)
Parameters
NameTypeDescription
nnumberPositive integer >= 1
Returns
number[] — Array of prime factors with multiplicity, sorted ascending
Examples
primeFactors(1)
primeFactors(12)
primeFactors(100)
primeFactors(997)
See Also
gcd lcm eulerPhi
primePi
Compute the prime counting function pi(n): the number of primes less than or equal to n.
Syntax
primePi(n)
Parameters
NameTypeDescription
nnumberNon-negative integer
Returns
number — Number of primes <= n
Examples
primePi(10)
primePi(100)
primePi(1000)
stirlingS2
The Stirling numbers of the second kind, counts the number of ways to partition a set of n labelled objects into k nonempty unlabelled subsets. `stirlingS2` only takes integer arguments. The following condition must be enforced: k <= n. If n = k or k = 1, then s(n,k) = 1.
Syntax
stirlingS2(n | k)
Type Signatures
number | BigNumber, number | BigNumber
Parameters
NameTypeDescription
nNumber | BigNumberTotal number of objects in the set
kNumber | BigNumberNumber of objects in the subset
Returns
Number | BigNumber — S(n,k)
Examples
stirlingS2(5
3)