Automa a stati finiti quantistico

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca

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]

Automa a due stati.
Tabella di transizione
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]

  1. ^ Kondacs e Watrous, pp. 72-73.
  2. ^ a b c Kondacs e Watrous, pp. 67-69.
  3. ^ a b Moore e Crutchfield, pp. 281-282.
  4. ^ (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.
  5. ^ Kondacs e Watrous, p. 67.
  6. ^ Moore e Crutchfield, pp. 282-284.
  7. ^ Moore e Crutchfield, pp. 284-286.
  8. ^ (EN) Michael O. Rabin, Probabilistic Automata, in Information and Control, vol. 6, settembre 1963, pp. 230-245.
  9. ^ (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.
  10. ^ Kondacs e Watrous, p. 68.
  11. ^ Kondacs e Watrous, pp. 67-68.

Bibliografia[modifica | modifica wikitesto]

Voci correlate[modifica | modifica wikitesto]

Teoria degli automi: linguaggi formali e grammatiche formali
Gerarchia di Chomsky Grammatica formale Linguaggio Automa minimo
Tipo-0 (illimitato) Ricorsivamente enumerabile Macchina di Turing
(illimitato) Ricorsivo Decider
Tipo-1 Dipendente dal contesto Dipendente dal contesto Automa lineare
Tipo-2 Libera dal contesto Libero dal contesto Automa a pila ND
Tipo-3 Regolare Regolare A stati finiti
Ciascuna categoria di linguaggio o grammatica è un sottoinsieme proprio della categoria immediatamente sovrastante.
  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica