Non sono esattamente sicuro di quale sia la domanda, ma posso provare a dire un po 'per ripulire eventuali equivoci.
Prima di tutto, se stiamo parlando della complessità di una mappa , non ha senso chiedere "Qual è una buona rappresentazione per √f: R → R ? "Invece, devi chiedere" Qual è una buona rappresentazione pertutti gliinput dif? ". Confronta la situazione con una più semplice in matematica discreta: quando discuti di un algoritmo che prende un grafico come input, non lo fai chiedi "Dovremmo rappresentare il grafico di Petersen come un elenco di adiacenza o come una matrice binaria?" ma invece pensi automaticamente a unarappresentazioneuniformeche funzionerà per tutti i grafici.2-√f
Un'altra parola di avvertimento. Modificando la rappresentazione dei dati di input possiamo sempre rendere qualsiasi problema (incluso uno non calcolabile) banalmente calcolabile: per rendere calcolabile, rappresentano gli elementi di A come coppie ( a , f ( a ) ) . Quindi è possibile "calcolare" f con la seconda proiezione. Ciò dimostra che abbiamo bisogno di criteri chiari su cosa significhi rappresentare i dati.f: A → BUN( a , f( a ) )f
Ho scritto in diverse occasioni su ciò che serve per rappresentare gli elementi di . La risposta dipende dalla struttura di R che si sta tentando di acquisire. Se stai cercando di catturare nessuna struttura, puoi rappresentare tutti i reali con l'elenco vuoto, ad esempio. Un ragionevole elenco di condizioni per una rappresentazione di R è che deve essere tale che:RRR
- Le operazioni aritmetiche , × , - , / sono calcolabili, così come il valore assoluto | - | .+×-/| - |
- C'è un programma che prende (la rappresentazione di) un vero e k ∈ N e uscite interi p , q tali che | x - p / q | ≤ 2 - k , cioè è possibile calcolare approssimazioni razionali arbitrariamente buone.Xk ∈ Np , q| x- p / q|≤ 2- k
- Esiste un programma che accetta (rappresentazioni di) real e y e termina se, e solo se, x < y , ovvero l'ordine rigoroso è semidecidibile.Xyx < y
- Data una sequenza (di rappresentazioni di) tale che | x n + 1 - x n | ≤ 2 - n una rappresentazione per il limite lim n x n può essere calcolato.( xn)n|Xn + 1- xn| ≤2- nlimnXn
Esistono vecchi teoremi (vedi introduzione a questo documento per i riferimenti) che spiegano perché queste condizioni sono corrette. Questi teoremi mostrano anche che due qualsiasi di tali rappresentazioni di reali sono calcolabili isomorfi, cioè possiamo tradurre tra loro con programmi. Questo stabilisce alcuni criteri per la correttezza che gettano idee difettose.
Ad esempio, sento persone dire cose come "i numeri razionali possono essere rappresentati da informazioni finite, quindi usiamoli per i numeri razionali, e i numeri irrazionali dovranno essere rappresentati da informazioni infinite". Questo genere di cose non funziona perché rompe la quarta condizione di cui sopra (si consideri un limite di numeri irrazionali - come dirai che sta convergendo in un razionale?).
Un altro esempio che elimina le condizioni di cui sopra è il modello Blum-Shub-Smale perché in esso non è possibile calcolare i limiti delle sequenze. È meglio dire che il modello BSS funziona su un sottocampo ordinato reale di reali (generato da qualunque parametro sia presente), non sui reali stessi.
Tra le rappresentazioni corrette dei reali alcuni sono più efficienti di altri, sebbene questo sia un argomento un po 'difficile da discutere perché i numeri reali sono oggetti infiniti. Matthias Schröder ha sottolineato che per una ragionevole teoria della complessità bisogna prestare attenzione alle proprietà topologiche della rappresentazione.
Infine, come dovremmo misurare la complessità di una mappa , supponendo che abbiamo una buona rappresentazione di R ? Poiché x ∈ R è rappresentato da una funzione, o da un flusso infinito di informazioni, o da alcuni di questi, dovremmo usare una delle nozioni di complessità di tipo superiore . Quale probabilmente dipende dalla rappresentazione che stai usando.f: R → RRx ∈ R
Il modello BSS è anche un ragionevole modello di complessità del circuito in cui contiamo le operazioni aritmetiche. È bene ricordare che questo modello non riguarda numeri reali, ma qualcos'altro.