Automa a stati finiti quantistico
Un automa a stati finiti quantistico (QFA) è, in informatica quantistica e in informatica teorica, una generalizzazione degli automi a stati finiti che accettano una parola in base al risultato di una misura.
Gli automi a stati finiti quantistici sono simili agli automi probabilistici, ma la classe dei linguaggi riconosciuta dagli automi quantistici è strettamente contenuta nella classe dei linguaggi riconosciuti dagli automi probabilistici. Gli automi a stati finiti quantistici possono anche essere visti come una versione quantistica di subshift di tipo finito o come una variante quantistica delle catene di Markov. Gli automi quantistici finiti sono, a loro volta, dei casi particolari dei cosiddetti automi finiti geometrici o degli automi finiti topologici.
Un automa quantistico finito opera su parole finite , le cui lettere appartengono a un dato alfabeto . A ogni parola viene assegnata una probabilità; a seconda di questa probabilità, la parola viene accettata o rifiutata dall'automa. I linguaggi accettati dagli automi quantistici finiti non coincidono con i linguaggi regolari accettati dagli automi finiti, né con i linguaggi stocastici accettati dagli automi a stati finiti probabilistici.
Lo studio degli automi finiti quantistici si divide in due aree principali che dipendono dalle transizioni autorizzate alla macchina di Turing corrispondente: gli one-way quantum finite automata (1QFA)[1] per i quali ad ogni passo la testina di lettura si muove di una casella a destra e i two-way quantum finite automata (2QFA)[2], per i quale la testina si può muovere sia a destra che a sinistra o rimanere ferma.
Esistono diversi tipi di automi a stati finiti quantistici; il più restrittivo è quello detto measure-once e definito da Moore e Crutchfield nel 2000[3]; un altro è quello degli automi measure-many, definiti da Kondacs e Watrous nel 1997[2]. Nei measure-once, viene effettuata un'unica misura per ogni stringa d'ingresso dopo aver letto l'ultimo simbolo della parola, mentre per il measure-many, la misura viene effettuata dopo la lettura di ogni simbolo che compone l'input. Il measure-once è considerato il più vicino (anche per costruzione) alla teoria classica degli automi finiti. Altre definizioni più generali sono state proposte[4]. Uno degli obiettivi dello studio degli automi a stati finiti quantistici è lo studio dei linguaggi formali che accettano; un altro è quello di studiare i problemi di decidibilità per queste classi di automi e linguaggi.
Automa a stati finiti quantistico Measure-Once
[modifica | modifica wikitesto]Delle due definizioni più comuni di automa quantistico finito, quella di automi measure once (o MO-1QFA) data da Moore e Crutchfield è la più semplice e la più vicina agli automi probabilistici.
Definizione
[modifica | modifica wikitesto]Sia un numero intero positivo. Un automa quantistico nel senso di Moore e Crutchfield, chiamato in inglese measure once one-way quantum finite automata (MO-1QFA), su un alfabeto è definito[3] da:
- un insieme finito di stati . Ad ogni stato è associato un elemento di uno spazio di Hilbert di dimensione , generalmente , affinché formi una base ortonormale di . Si presume generalmente che è il -esimo vettore unitario,
- una matrice unitaria di ordine per ogni lettera di . Questa matrice è la rappresentazione di un operatore unitario nella base scelta.
- un vettore di ordine con norma è lo stato quantistico iniziale.
- una matrice di proiezione ortogonale di ordine , corrispondente ad un proiettore ortogonale. Questa può essere talvolta sostituita da un insieme finito di stati terminali e la proiezione opera su di essi.
Le matrici e i vettori hanno coefficienti complessi.
Uno stato (quantistico) è un vettore che si decompone sulla base ed è scritto, nella notazione bra-ket o nella abituale notazione di Dirac in meccanica quantistica, come una combinazione lineare con coefficienti complessi:
- ,
con la condizione aggiuntiva:
- .
Questa notazione indica che è la sovrapposizione degli stati , il numero è l'ampiezza dello stato . Ogni stato quantistico definisce quindi una "nube" di stati di : si trova simultaneamente in ciascuno degli stati, con l'ampiezza corrispondente. In particolare, lo stato quantistico iniziale è anche una combinazione lineare di stati di norma 1.
Per una parola , il vettore
è lo stato quantistico raggiunto dopo aver letto la parola ; poiché è rappresentato come un vettore colonna, le matrici si applicano nella direzione opposta. In studi più vicini alla teoria degli automi, si incontra la notazione duale, nella quale i vettori di stato sono vettori riga e la scrittura del prodotto delle matrici corrisponde quindi alla sequenza delle lettere lette.
La probabilità di osservare uno stato è il numero , dove è la matrice di proiezione data nella definizione precedente. Una variante della definizione consiste nel dare un insieme di stati terminali. La probabilità di osservazione di diventa .
Se si scrive , si vede che è una proiezione sugli stati terminali[5], per cui
Ne viene che la probabilità di osservazione si scrive
La probabilità di accettazione di una parola è per definizione il numero .
La probabilità di accettazione è quindi la probabilità di osservazione dello stato quantistico ottenuto dopo aver letto la parola . L'operazione che consiste nella valutazione di questo numero è una misura.
Il linguaggio accettato o riconosciuto con la probabilità è l'insieme delle parole tali che oppure (a seconda di quanto rigida si richiede che sia la soglia di accettazione).
Notazione alternativa
[modifica | modifica wikitesto]Al posto della notazione matriciale, si incontrano anche funzioni di transizione che suonano più familiari nella teoria degli automi. Una matrice è considerata come un'applicazione dell'insieme degli stati verso sé stesso, con e i coefficienti del vettore definiti come:
- .
Infine, si possono usare numeri reali piuttosto che numeri complessi. Le matrici unitarie sono allora delle matrici ortogonali.
Funzione calcolata da un automa quantistico
[modifica | modifica wikitesto]Sia un automa quantistico , si indica con la funzione definita da .
Questa funzione associa a ogni parola, la sua probabilità di accettazione. Moore e Crutchfield dimostrano una serie di proprietà di queste funzioni[6]. Innanzitutto, la serie formale in variabili non commutative è una serie formale razionale:
Le seguenti proprietà di chiusura sussistono: siano e funzioni calcolate da automi a stati finiti quantistici.
- (convessità): è calcolabile da un automa a stati finiti quantistico se .
- (intersezione): è calcolata da un automa a stati finiti quantistico.
- (complemento): è calcolata da un automa a stati finiti quantistico.
- (morfismo inverso): Se è un morfismo, allora è calcolabile da un automa a stati finiti quantistico.
Pumping Lemma
[modifica | modifica wikitesto]Esiste anche una sorta di pumping lemma per queste funzioni[7]; per ogni e ogni , esiste un tale che per ogni e , abbiamo .
Problemi di decidibilità
[modifica | modifica wikitesto]Numerosi risultati riguardano la decidibilità per un automa a stati finiti quantistico , con la notazione e per un valore di soglia dato. I seguenti problemi sono indecidibili:
- Esiste una parola tale che
- Esiste una parola tale che
- Esiste una parola tale che
Sono invece risolvibili i seguenti problemi:
- Esiste una parola tale che ,
- Esiste una parola tale che .
D'altra parte, tutti questi problemi sono indecidibili per gli automi probabilistici.
Linguaggi cut point
[modifica | modifica wikitesto]Il linguaggio riconosciuto da un automa quantistico con "soglia" è dato da uno degli insiemi seguenti (a seconda se si include il valore della soglia o meno):
- ,
dove è la probabilità di accettazione di con l'automa . Il numero è chiamato "cut-point".
I problemi di decidere se i linguaggi e sono vuoti, sono entrambi indecidibili per gli automi probabilistici[8]. D'altra parte, per gli automi quantistici nella definizione di Moore e Crutchfield, il primo problema è indecidibile mentre il secondo è decidibile.
Un cut-point si dice "isolato" se esiste un numero ε tale che
per ogni parola ; equivale a dire che esiste un intervallo non vuoto intorno a che non contiene la probabilità di accettare alcuna parola. Se un cut-point è isolato, i linguaggi e sono regolari: sono linguaggi a gruppo, ossia dei linguaggi regolari i cui monoidi sintattici sono gruppi finiti[9].
Esempio
[modifica | modifica wikitesto]1 | 0 | |
S 1 | S 1 | S 2 |
S 2 | S 2 | S 1 |
Consideriamo l'automa finito deterministico a due stati in figura. Uno stato quantistico è un vettore scritto in notazione bra-ket:
dove i numeri complessi sono normalizzati in modo che . Le matrici di transizione unitarie possono essere semplicemente scritte nel seguente modo:
- e .
Se scegliamo come stato finale, come mostrato nel diagramma, la matrice di proiezione è:
Se lo stato iniziale è oppure , il comportamento dell'automa è esattamente quello della macchina a stati abituale. In particolare, le parole che vengono accettate lo sono con probabilità uno e il linguaggio accettato è dato dall'espressione regolare per e dall'espressione per . Se d'altra parte e sono entrambi diversi da zero, il comportamento è più complicato, e se le matrici e non sono scritte in modo così semplice, i risultati possono ancora essere diversi.
Automa a stati finiti quantistico measure-many
[modifica | modifica wikitesto]Il modello di un automa quantistico nel senso di Kondacs e Watrous, chiamato automa measure-many o MM, differisce dal modello precedente MO nel senso in cui la misura viene eseguita in ogni fase del calcolo piuttosto che unicamente alla fine della computazione[2]. Secondo la meccanica quantistica, una misura è distruttiva nel senso in cui influenza il valore dell'osservabile misurato; questo principio trova la sua espressione nel formalismo proposto.
Vengono considerati tre tipi di stati che formano una partizione dell'insieme degli stati:
- gli stati di accettazione
- gli stati di rifiuto,
- gli stati di continuazione, , detti anche stati "neutrali".
Lo spazio di Hilbert è scomposto in tre sottospazi ortogonali[10] che corrispondono ai tre tipi di stati :
Per ciascuno dei tre insiemi di stati distinti, esiste una matrice di proiezione associata, indicata con e che proietta sul corrispondente sottospazio. Essa è definita da
e in modo simile per gli altri due insiemi.
Dopo ogni lettura di una lettera della parola in ingresso, l'automa:
- misura l'ampiezza sugli stati di accettazione,
- misura l'ampiezza sugli stati di rifiuto,
- prosegue mantenendo solo le ampiezze degli stati di continuazione.
La misura consiste nel verificare se la proiezione è in un sottospazio appropriato. Dopo la lettura della parola, vi è una probabilità di accettazione e una probabilità di rifiuto[11].
Più precisamente, sia lo stato attuale dell'automa. Dopo la lettura di una lettera , lo stato dell'automa è
Utilizzando gli operatori di proiezione, che indicano in quale dei tre sottospazi , o è l'immagine del vettore. La probabilità per lo spazio degli stati accettanti (e analogamente per gli altri) è data da
Per una parola , l'automa agisce come segue: partendo dal vettore iniziale , i vettori , sono misurati fintanto che il risultato rimane nello spazio di continuazione. Se è nello spazio dell'accettazione, il computo si ferma e la parola è accettata. Se è nello spazio del rifiuto, la parola è respinta. Si presume che la parola sia delimitata da un identificatore di fine stringa, il che implica che l'automa non può rimanere in uno stato neutrale e deve terminare accettando o rifiutando la parola. L'automa può accettare o rifiutare una parola anche senza averla letta nella sua interezza.
Formalmente, l'automa definisce una funzione sulle parole in input che è la probabilità di accettazione di queste ultime:
Gli stessi problemi posti per il modello MO sono tutti indecidibili per il modello MM.
I linguaggi riconosciuti dagli automi MM con un cut-point isolato sono regolari, ma questi automi non sono abbastanza potenti da riconoscere tutti i linguaggi regolari. Ad esempio, il linguaggio non può essere riconosciuto da un automa MM con cut-point isolato.
I linguaggi riconosciuti dagli automi MM non sono chiusi per unione, intersezione o altre normali operazioni booleane.
Note
[modifica | modifica wikitesto]- ^ Kondacs e Watrous, pp. 72-73.
- ^ a b c Kondacs e Watrous, pp. 67-69.
- ^ a b Moore e Crutchfield, pp. 281-282.
- ^ (EN) A. Yakaryilmaz e A.C.C. Say, Unbounded-error quantum computation with small space bounds, in Information and Computation, vol. 209, n. 6, 2011, pp. 873-892.
- ^ Kondacs e Watrous, p. 67.
- ^ Moore e Crutchfield, pp. 282-284.
- ^ Moore e Crutchfield, pp. 284-286.
- ^ (EN) Michael O. Rabin, Probabilistic Automata, in Information and Control, vol. 6, settembre 1963, pp. 230-245.
- ^ (EN) Alex Brodsky e Nicholas Pippenger, Characterizations of 1-Way Quantum Finite Automata, in SIAM Journal on Computing, vol. 31, n. 5, 2002-01, pp. 1456–1478, DOI:10.1137/S0097539799353443, arXiv:http://xxx.lanl.gov/abs/quant-ph/9903014. URL consultato il 3 settembre 2021.
- ^ Kondacs e Watrous, p. 68.
- ^ Kondacs e Watrous, pp. 67-68.
Bibliografia
[modifica | modifica wikitesto]- (EN) Vincent D. Blondel, Emmanuel Jeandel e Pascal Koiran, Decidable and Undecidable Problems about Quantum Automata, in SIAM Journal on Computing, vol. 34, n. 6, gennaio 2005, pp. 1464–1473, DOI:10.1137/S0097539703425861. URL consultato il 3 settembre 2021.
- (EN) Harm Derksen, Emmanuel Jeandel e Pascal Koiran, Quantum automata and algebraic groups, in Journal of Symbolic Computation, vol. 39, n. 3-4, marzo 2005, pp. 357–371, DOI:10.1016/j.jsc.2004.11.008. URL consultato il 3 settembre 2021.
- (EN) Alberto Bertoni, Christian Choffrut e Flavio D’Alessandro, On the decidability of the intersection problem for quantum automata and context-free languages, in International Journal of Foundations of Computer Science, vol. 25, n. 08, dicembre 2014, pp. 1065–1081, DOI:10.1142/S0129054114400243, arXiv:https://arxiv.org/pdf/1303.2967v1.pdf. URL consultato il 3 settembre 2021.
- (EN) Cristopher Moore e James P. Crutchfield, Quantum automata and quantum grammars, in Theoretical Computer Science, vol. 237, 2000, pp. 275-306.
- (EN) Attila Kondacs e John Watrous, On the power of quantum finite state automata (PDF), in FOCS’97: Proceedings of the 38th Annual Symposium on Foundations of Computer Science, 1997, pp. 66-75. URL consultato il 3 settembre 2021.
- (EN) Andris Ambainis, Abuzer Yakaryilmaz, Automata and Quantum Computing (PDF), su arxiv.org, giugno 2015.
- (EN) Mika Hirvensalo, Quantum Computing – A Review, in Werner Kuich e George Rahonis (a cura di), Algebraic Foundations in Computer Science : Bozapalidis Festschrift, collana Lecture Notes in Computer Science, vol. 7020, Berlino-Heidelberg, Springer-Verlag, 2011, pp. 146–167, DOI:10.1007/978-3-642-24897-9, ISBN 978-3-642-24896-2.
- (EN) Luigi Accardi, Quantum stochastic processes, in Michiel Hazewinkel (a cura di), Encyclopædia of Mathematics: an updated and annotated translation of the Soviet "Mathematical encyclopaedia", Reidel, 1988-1994, ISBN 1-55608-010-7, OCLC 16755499. URL consultato il 3 settembre 2021.