Automa a stati finiti quantistico

studio e tecnica pertinente l'informatica teorica e quantistica

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

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

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

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

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

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

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

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
 
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

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.

  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

Voci correlate

modifica
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