Funkce fusc je celočíselná funkce na množině přirozených čísel, kterou definoval E. Dijkstra takto [1] :
Sekvence generovaná touto funkcí je
1, 1, 2, 1, 3, 2, 3, 1, 4, 3, 5, 2, 5, 3, 4, …Toto je Sternova sekvence rozsivek (sekvence A002487 v OEIS ). Funkce fusc souvisí s Culkin-Wilfovou sekvencí , jmenovitě, tý člen Culkin-Wilfovy sekvence je , a korespondence
je korespondence jedna ku jedné mezi množinou přirozených čísel a množinou kladných racionálních čísel.
Nechat a , pak [1] :
Hodnota funkce se nezmění, pokud jsou všechny vnitřní číslice [2] v binární reprezentaci argumentu invertovány . Například proto, že 19 10 = 10011 2 a 29 10 = 11101 2 .
Hodnota funkce se také nezmění, pokud jsou všechny číslice zapsány v binární reprezentaci argumentu v opačném pořadí [2] . Například proto, že 19 10 = 10011 2 a 25 10 = 11001 2 .
Hodnota je sudá právě tehdy, když je dělitelná 3 [2] .
Funkce má vlastnosti
Hodnota je rovna počtu všech lichých Stirlingových čísel druhého druhu formuláře , a je rovna počtu všech lichých binomických koeficientů formuláře , kde [3] .
Kromě rekurzivního vyhodnocení funkce fusc podle definice existuje jednoduchý iterační algoritmus [1] :
fusc(N): n, a, b = N, 1,0 zatímco n ≠ 0: pokud n je sudé: a, n = a + b, n/2 pokud je n liché: b, n = a + b, (n - 1) / 2 fusc(N) = b