In matematica, la funzione di Ackermann è una funzione che ha come dominio l'insieme delle terne di numeri naturali e come codominio i numeri naturali. Essa è definita per ricorrenza nel seguente modo:
Un caso particolare è la funzione di Ackermann a due argomenti , così definita:
La funzione di Ackermann è definita per ogni coppia di numeri naturali ed è sempre computabile.[1]
Il valore cresce molto rapidamente anche per valori molto piccoli di e . Per esempio, è un numero intero di 19 729 cifre.[2] Per confronto, la costante di Avogadro ha solo 24 cifre.
Il meccanismo di calcolo della funzione è estremamente semplice, quanto pesante dal punto di vista computazionale. La definizione data può essere vista come quella di una famiglia di funzioni al variare di un parametro individuato dalla prima variabile. Per ogni valore del parametro si ha una funzione che è ottenuta iterando la funzione precedente per un numero di volte individuato dalla seconda variabile. In quest'ottica le prime funzioni della famiglia sono funzioni familiari come l'addizione, la moltiplicazione e la potenza, seguite dalla tetrazione, e successivamente si hanno funzioni sempre più complesse:
- (mediante iterazione di per volte)
- (mediante iterazione di per volte)
- ( volte)(mediante iterazione di per volte e quindi mediante iterazione di e quindi mediante iterazione di )
Risulta quindi una funzione con una complessità estremamente elevata anche per valori di input semplici.
L'inversa della funzione di Ackermann, indicata con , compare in alcune dimostrazioni di scienze informatiche, come nell'algoritmo union-find.
Proprietà
modificaLa funzione di Ackermann è un classico esempio di funzione ricorsiva non ricorsiva primitiva. Questo risultato è un corollario diretto del seguente lemma di maggiorazione:
- Per ogni funzione ricorsiva primitiva esiste tale che per ogni si ha .
Infatti, se fosse ricorsiva primitiva, allora la funzione diagonale sarebbe ricorsiva primitiva. Per il lemma di maggiorazione, esisterebbe tale che per ogni naturale. Ma allora , che è in contraddizione con la definizione di .[1]
Note
modifica- ^ a b University of Colorado Boulder, Computability Theory, 2021, https://math.colorado.edu/~mayr/teaching/math6010spring21/class13.pdf
- ^ Decimal expansion of A(4,2) (archiviato dall'url originale il 17 marzo 2008).
Voci correlate
modificaCollegamenti esterni
modifica- Ackermann, funzione di, in Enciclopedia della Matematica, Istituto dell'Enciclopedia Italiana, 2013.
- (EN) Eric W. Weisstein, Ackermann Function, su MathWorld, Wolfram Research.
- (EN) Ackermann function, su Encyclopaedia of Mathematics, Springer e European Mathematical Society.