Kombinatorika

Catalan
Catalan (n)

Získat n-té Catalanovo číslo.

Více informací najdete v encyklopediích Planetmath (text je v angličtině) a Wikipedia.

Combinations
Combinations (k,n)

Získat jako vektor vektorů všechny kombinace k-té třídy z prvků 1 až n. (Viz také NextCombination)

Více informací najdete v encyklopedii Wikipedia.

DoubleFactorial
DoubleFactorial (n)

Dvojitý faktoriál: n(n-2)(n-4)…

Více informací najdete v encyklopedii Planetmath (text je v angličtině).

Factorial
Factorial (n)

Faktoriál: n(n-1)(n-2)…

Více informací najdete v encyklopediích Planetmath (text je v angličtině) a Wikipedia.

FallingFactorial
FallingFactorial (n,k)

Klesající faktoriál: (n)_k = n(n-1)…(n-(k-1))

Více informací najdete v encyklopedii Planetmath (text je v angličtině).

Fibonacci
Fibonacci (x)

Alternativní názvy: fib

Vypočítat n-té Fibonacciho číslo. Tj. číslo definované rekurzivně jako Fibonacci(n) = Fibonacci(n-1) + Fibonacci(n-2) a Fibonacci(1) = Fibonacci(2) = 1.

Více informací najdete v encyklopediích Planetmath (text je v angličtině), Mathworld (text je v angličtině) a Wikipedia.

FrobeniusNumber
FrobeniusNumber (v,arg...)

Spočítat Frobeniusovo číslo. Tzn. spočítat největší číslo, které nemůže být dáno jako lineární kombinace celých nezáporných čísel zadaných jako vektor nezáporných celých čísel. Vektor může být zadán jako samostatná čísla nebo jeden vektor. Všechna zadaná čísla by měla mít největšího společného dělitele 1.

Více informací najdete v encyklopediích Wikipedia (text je v angličtině) a Mathworld (text je v angličtině).

GaloisMatrix
GaloisMatrix (kombinacni_pravidlo)

Galoisova matice daná lineárním kombinačním pravidlem (a_1*x_1+…+a_n*x_n=x_(n+1)).

GreedyAlgorithm
GreedyAlgorithm (n,v)

Najít takový vektor c nezáporných celých čísel, že skalární součin s v je roven n. Když to není možné, vrátí null. Vektor v by měl být předán seřazený ve vzestupném pořadí a měl by se skládat z nezáporných celých čísel.

Více informací najdete v encyklopediích Mathworld (text je v angličtině) a Wikipedia.

HarmonicNumber
HarmonicNumber (n,r)

Alternativní názvy: HarmonicH

Harmonické číslo, n-té harmonické číslo řádu r. Jedná se o součet 1/k^r pro k od 1 do n. Je to to stejné jako sum k = 1 to n do 1/k^r.

Více informací najdete v encyklopedii Wikipedia (text je v angličtině).

Hofstadter
Hofstadter (n)

Hofstadterova funkce q(n) definovaná jako q(1)=1, q(2)=1, q(n)=q(n-q(n-1))+q(n-q(n-2))

Více informací najdete v encyklopedii Wikipedia (text je v angličtině). Posloupnost je A005185 podle encyklopedie OEIS.

LinearRecursiveSequence
LinearRecursiveSequence (pocatecni_hodnoty,kombinacni_pravidlo,n)

Spočítat lineární rekurzivní posloupnost pomocí Galoisova krokování.

Multinomial
Multinomial (v,arg...)

Spočítat multinomické koeficienty. Přebírá vektor k nezáporných celých čísel a spočítá multinomický koeficient. To odpovídá koeficientu v homogenním polynomu v k proměnných s odpovídajícími mocninami.

Vzorec pro Multinomial(a,b,c) se dá napsat jako:

(a+b+c)! / (a!b!c!)

Jinými slovy, pokud máme jen dva prvky, pak Multinomial(a,b) je to stejné, jako Binomial(a+b,a) nebo Binomial(a+b,b).

Více informací najdete v encyklopediích Planetmath (text je v angličtině), Mathworld (text je v angličtině) a Wikipedia.

NextCombination
NextCombination (v,n)

Získat kombinaci, která by následovala po kombinaci v v pořadí kombinací, první kombinací by měla být [1:k]. To je užitečné, pokud máte hodně kombinací, které chcete projít a nechcete plýtvat pamětí na uložení všech.

S funkcí Combinations byste normálně napsali smyčku jako:

for n in Combinations (4,6) do (
  NejakaFunkce (n)
);

Ale s funkcí NextCombination byste napsali něco takového:

n:=[1:4];
do (
  NejakaFunkce (n)
) while not IsNull(n:=NextCombination(n,6));

Viz Combinations.

Více informací najdete v encyklopedii Wikipedia.

Pascal
Pascal (i)

Získat Pascalův trojúhelník v podobě matice. Vrátí dolní trojúhelníkovou matici i+1 krát i+1, která je Pascalovým trojúhelníkem po i iteracích.

Více informací najdete v encyklopediích Planetmath (text je v angličtině) a Wikipedia.

Permutations
Permutations (k,n)

Získat jako vektor vektorů všechny variace k-té třídy z prvků 1 až n prvků, případně permutace pro k=n.

Více informací najdete v encyklopediích Mathworld (text je v angličtině) nebo Wikipedia (permutace) a Wikipedia (variace).

RisingFactorial
RisingFactorial (n,k)

Alternativní názvy: Pochhammer

(Pochhammerův) stoupacící faktoriál: (n)_k = n(n+1)…(n+(k-1))

Více informací najdete v encyklopedii Planetmath (text je v angličtině).

StirlingNumberFirst
StirlingNumberFirst (n,m)

Alternativní názvy: StirlingS1

Stirlingovo číslo prvního druhu.

Více informací najdete v encyklopediích Planetmath (text je v angličtině) nebo Mathworld (text je v angličtině).

StirlingNumberSecond
StirlingNumberSecond (n,m)

Alternativní názvy: StirlingS2

Stirlingovo číslo druhého druhu.

Více informací najdete v encyklopediích Planetmath (text je v angličtině) nebo Mathworld (text je v angličtině).

Subfactorial
Subfactorial (n)

Subfaktoriál: n! krát suma_{k=0}^n (-1)^k/k!

Triangular
Triangular (n)

Spočítat n-té trojúhelníkové číslo.

Více informací najdete v encyklopediích Planetmath (text je v angličtině) a Wikipedia.

nCr
nCr (n,r)

Alternativní názvy: Binomial

Spočítat kombinace, tj. kombinační číslo. n může být libovolné reálné číslo.

Více informací najdete v encyklopediích Planetmath (text je v angličtině) a Wikipedia.

nPr
nPr (n,k)

Spočítat počet variací k-té třídy z prvků 1 až n, respektive počet permutací při k rovno n.

Více informací najdete v encyklopediích Mathworld (text je v angličtině) nebo Wikipedia (permutace) a Wikipedia (variace).