Un computer quantistico può facilmente determinare il tempo di miscelazione del gruppo cubo di Rubik?


13

I funzionari nei tornei cubo di Rubik hanno usato due modi diversi di mescolare un cubo. Attualmente, si rompono un cubo a parte e rimontare i cubetti in un ordine casuale del gruppo cubo di Rubik . In precedenza, avrebbero applicato una sequenza casuale di mosse Singmaster .G g U , D , F , B , L , R πGGgU,D,F,B,L,R

Tuttavia, la lunghezza della parola - il numero di mosse casuali necessarie per mescolare completamente il cubo in modo tale che ognuna delle permutazioni abbia approssimativamente la stessa probabilità di verificarsi - è attualmente sconosciuta, ma deve essere almeno 20 . Questa lunghezza t può essere chiamata il tempo di miscelazione di una camminata casuale sul grafico di Cayley del gruppo cubo di Rubik generato dalle mosse Singmaster \ langle U, D, F, B, L, R \ rangle .g G = 43 , 252 , 003 , 274 , 489 , 856 , 000tgG=43,252,003,274,489,856,000 t20tU,D,F,B,L,R

Un computer quantistico avrebbe dei vantaggi nel determinare il tempo di miscelazione t del gruppo cubo di Rubik?

Penso che possiamo avere una sequenza intelligente di mosse Hadamard per creare un registro |A come sovrapposizione uniforme su tutte queste configurazioni G ; quindi l'applicazione di qualsiasi sequenza di mosse Singmaster a |A non cambia |A .

Se abbiamo una supposizione su ciò che il tempo di miscelazione è, possiamo anche creare un altro registro come sovrapposizione uniforme di tutte le parole di Singmaster di lunghezza , e applicare condizionatamente ogni tale parola a uno stato risolto , si spera di ottenere uno stato tale che, se misuriamo , è probabile che sia misurata ciascuna delle configurazioni . Se , allora avremo non abbiamo camminato lungo il grafico Cayley di abbastanza a lungo, e se dovessimo misurare t | B t ' | A | B | A | Un G t ' < t G | A | B | A tt|Bt|A|B|A|AGt<tG|A, le configurazioni "più vicine" allo stato risolto sarebbero più probabili. Qualche intelligente trasformazione di tipo Fourier su potrebbe essere in grado di misurare la distribuzione uniforme di .|B|A

Per me questo sembra qualcosa in cui un computer quantistico può essere bravo. Ad esempio, se non è stato mescolato in modo uniforme da tutte le parole in , allora alcune configurazioni sono più probabili di altre, ad esempio è più "costante"; mentre se è stato completamente miscelato da tutte le passeggiate, allora è più "bilanciato". Ma la mia intuizione su entrambi gli algoritmi quantistici e le catene di Markov non è abbastanza forte per andare molto lontano.| B | A | A | A |A|B|A|A |A


MODIFICARE

Contrastare questa domanda con il problema di verifica del nodo quantico.

Nella verifica del nodo quantico, a un commerciante viene data una moneta quantistica come uno stato di tutti i nodi che hanno un particolare invariante. Per verificare la moneta quantistica, applica una catena Markov alla transizione su se stessa (se è una moneta valida.) Deve applicare questa catena Markov e misurare il risultato almeno volte, ma per il resto ha non c'è modo di costruire da sola (per non poter forgiare la moneta). Quindi, se le viene data una moneta valida, le viene dato uno stato che non può produrre da sola , insieme a una catena di Markov come matrice , e presumibilmente conosce il tempo di miscelazioneM | K t | K M t | K |KM|Kt|KMt; è tenuta a verificare che sia valido.|K

Nella presente domanda, è probabilmente abbastanza facile generare di tutte le permutazioni del cubo di Rubik. Anche il circuito quantico corrispondente alla catena di Markov, chiamato , delle mosse Singmaster, è probabilmente abbastanza facile da costruire. Tuttavia, il tempo di miscelazione è sconosciuto ed è l'unica cosa da determinare.S t|RCSt

Risposte:


6

È una domanda interessante che è migliore della maggior parte "esiste un algoritmo quantistico per x?" domande. Non conosco un algoritmo quantistico esistente. Permettetemi di descrivere quello che penso sarebbe un tipico primo tentativo, e perché ciò fallisce. Alla fine descriverò un paio di cose che potrebbero portare ad alcuni miglioramenti.

Primo tentativo in un algoritmo

Diciamo che voglio testare un particolare tempo di miscelazione . Ho intenzione di creare un registro, contiene spazio di lavoro sufficiente per contenere una delle possibili configurazioni del cubo di Rubik. Lo stato iniziale di questo è uno stato del prodotto che corrisponde allo stato iniziale del cubo.R CtRC

Poi ho intenzione di fare registri Ancilla, a . Ognuno di questi ha le stesse dimensioni del numero di mosse Singmaster possibili ed è preparato come una sovrapposizione uniforme su tutti i possibili elementi base. Quindi per ogni , applichiamo un unitario controllato da a dove il registro specifica quale mossa Singmaster viene applicata su .A 1 A t i = 1 , t A i R C A i R CtA1Ati=1,tAiRCAiRC

Dopo tutto questo, se guardiamo solo a , dovrebbe essere nello stato di massima miscelazione se la miscelazione è avvenuta come desiderato. Il problema è come verificare se questo output è lo stato massimo misto. Esistono tecniche utili come questa , ma quale precisione è necessaria (cioè quante ripetizioni?). Avremo bisogno di per essere sicuri, credo.| A | tRC|A|t

In effetti, questo modo di fare le cose è tanto brutto quanto farlo in modo classico: potresti sostituire lo stato iniziale di ogni con e non cambierebbe il risultato . Ma questo è proprio come fare una scelta casuale ogni volta e correre più volte, verificando la corretta distribuzione dell'output.I / 2 | A i |AiI/2|Ai|

Possibili miglioramenti

  • Esecuzione come ho descritto, la densità di uscita matrice (su ) deve essere diagonale. Ciò significa che la sovrapposizione uniforme su tutti gli stati di base è un'autentica se e solo se il sistema è miscelato al massimo. Vorrei se si potesse combinare questa osservazione con una sorta di amplificazione dell'ampiezza per ottenere una leggera accelerazione. Nota che crea una differenza molto rapidamente da se lo stato non è un autovettore.R C | u P k | u | u ρRC|uρk|u|u

  • A parte questo, probabilmente dovrai fare qualcosa di più intelligente con i registri ancilla. C'è qualche speranza che ciò sia possibile perché c'è abbastanza struttura di gruppo integrata nel cubo di Rubik. Una cosa che potresti provare è vedere se puoi sostituire tutti registri ancilla con un singolo registro, applicare le porte Hadmard su ogni qubit del registro tra ogni round di unità controllate. Potrebbe essere che tutto ciò ti dia un risparmio in termini di efficienza in termini di numero di qubit rispetto al mio suggerimento originale. Potrebbe anche non farlo.t

Se uno di questi lavori direttamente, non lo so. Tuttavia, penso che i principi chiave siano trovare una struttura di gruppo utile e trovare un modo per applicare l'amplificazione dell'ampiezza.

Potresti trovare utile leggere i disegni unitari . Questo è certamente un problema distinto da quello di cui stiamo parlando qui, ma alcuni degli strumenti tecnici potrebbero essere utili. In parole povere, l'idea è che un insieme di unitari sia un design se un'applicazione casuale di questi unitari consente di simulare un unitario veramente casuale (tratto dalla misura di Haar) sulle funzioni di output che, se espanso usando una serie di Taylor, sono precisi fino al grado . La connessione approssimativa qui è che se prendi gli unitari che rappresentano una sequenza di mosse Singmaster come , sarebbe sufficiente che questo set fosse un 2-design (se ottienit f t t { U } Tr ( ρ 2 ){U}tftt{U}Tr(ρ2) corretto, il gioco è fatto).


Ma devi sempre provare se è misto? Ciò potrebbe essere utile una volta per assicurarsi che il processo funzioni, ma non è necessario ogni volta, giusto?
Steven Sagona,

2
Ma questo è il punto centrale dell'algoritmo! Volete determinare se, per la scelta , il sistema è miscelato al massimo. Se sì, quella è un limite superiore del tempo di miscelazione. ttt
DaftWullie,

1
Scusa se ho letto male la domanda; Ho pensato che fosse vedere se ottieni accelerazione in tempo di confusione.
Steven Sagona,

1
Penso che tu abbia ragione nel dire che "i principi chiave sono trovare una struttura di gruppo utile e trovare un modo per applicare l'amplificazione dell'ampiezza". Il gruppo cubo di Rubik è notoriamente nonabeliano (altrimenti non sarebbe così difficile da enigma), quindi probabilmente nessun aiuto con nessuna delle pubblicazioni dell'HSP; tuttavia, il gruppo è stato studiato a fondo .
Segna il

4

(CW per evitare ripetizioni dall'auto-risposta)

Ci potrebbe essere un modo interattivo per due parti di stretta sul valore di , seguito su @ risposta di DaftWullie e commenti di @Steven Sagona. Il mio formalismo è scarso, ma spero che l'idea abbia successo ...t

Ad esempio, chiamare le due parti Alice e Bob. Le parti devono cooperare e comportarsi onestamente secondo il protocollo.

Alice sa come preparare due stati, e . Qui, è la sovrapposizione uniforme su tutte le combinazioni di cubi di Rubik e è un altro stato di scimmia con lo stesso numero di qubit (come lo stato corrispondente a un cubo di Rubik risolto o una sovrapposizione uniforme su alcuni grandi sottogruppi di ). Bob sa come applicare una matrice a uno stato quantico, dove corrisponde al singolo passo di tutte le mosse di Singmaster (con ancillas ove appropriato).| A 1| Un 0| A 1G M M|A0|A1|A0|A1GMM

Alice e Bob vogliono dimostrare che il tempo di miscelazione del gruppo cubo di Rubik sotto le mosse di Singmaster è al massimo . Alice e Bob ripetere la seguente volte.r strs

  1. Alice lancia una moneta e fornisce a Bob| AIi{0,1}|Ai
  2. Bob ripete volte per applicare a e misura ogni volta il proiettore.M | AIrM|Ai
  3. Se il proiettore è per ciascuno dei iterazioni, poi Bob dice che . Se il proiettore non è per almeno uno dei iterazioni, poi Bob dice che Alice è .r i = 0 1 r i = 11ri=01ri=1

Se , poi ognuno di Bob iterazioni al punto 2 non cambia - perché, per definizione, è un autostato della matrice di Bob, e la matrice di Bob appena permuta stati tra di loro. Se , allora lo stato scimmia non è un'autostrada del proiettore di Bob e la probabilità che un non venga misurato aumenta rapidamente con . r | Un 0| Un 0i = 1 | A 11 ri=0r|A0|A0i=1|A11r

Così, se Bob ha previsto con precisione per iterazioni, la probabilità di successo cresce esponenzialmente con , e di Bob è grande abbastanza per distinguere lo stato del cubo di Rubik una valida da uno stato scimmia.s s rissr

Non so quanto deve essere distante da . Inoltre non so se l'interazione può essere rimossa.| A 0|A1|A0


2

Inizialmente consideriamo alcuni registri e operatori.

  1. Il registro , che codifica per sovrapposizioni di stati del cubo (ad es. Una permutazione del cubo );|AG
  2. L'operatore , che agisce su per mappare il ket tutto-0 alla sovrapposizione uniforme su tutti gli stati ;U|A|000G
  3. Il registro , che codifica le sovrapposizioni di una serie di mosse Singmaster da applicare a una determinata posizione (ad es. Sovrapposizioni di parole di Singmaster mosse di lunghezza );|B=|b1|b2|bkk
  4. Gli operatori e , che agiscono su per mappare il ket di tutti-0 alla sovrapposizione uniforme di tutte le parole di mosse Singmaster di lunghezza (e viceversa); eVV1|B|00018kk
  5. L'operatore (controllato) , che applica la mossa Singmaster a una data posizione del cubo.Wb

Se trova nella sovrapposizione uniforme su tutti gli elementi di , allora trova in un'autorizzazione di e le ripetute applicazioni di non verranno respinte per influenzare .|AG|AWW|B

Circuito che non cambia lo stato

Cioè, dovrebbe restituire nel circuito sopra al ket tutti gli zero .V1|B|000

Tuttavia , come notato da @DaftWullie, se non si trova in un autostrada, allora una differenza tra e si accumula molto rapidamente - credo che una velocità alla quale questa differenza accumulata dipende precisamente dalle proprietà di miscelazione dell'operatore di interesse.|u|uρk|u

Pertanto, se siamo in grado di preparare uno stato che è perturbato dalla distribuzione uniforme, in modo tale che non sia un eigenstate, allora le ripetute applicazioni di creeranno rapidamente una differenza, e potrebbe non essere il ket all-zero.|A|AW V1|B

Circuito rivisto che mostra un approccio migliore

Se avessimo una funzione agisce su e una risposta qubit che determina, diciamo, se alcuni hash della posizione del cubo di Rubik è inferiore a qualche soglia , e usiamo questa per controllare una rotazione di , quindi credo che nel il circuito sopra non leggerà il ket di tutti zeri, e invece probabilmente si discosterà dal ket di tutti gli zero in un modo che dipende solo da e dal tempo di miscelazione del gruppo cubo di Rubik con il gruppo elettrogeno Singmaster.F|A|C{0,1}log2G(0,1)δF|AV - 1 | B deltaV1|Bδ

Cioè, mi aspetto che la misurazione di nel circuito di cui sopra legga o qualcosa di simile, in cui l'indice del primo dipende esclusivamente dal tempo di miscelazione e dalla soglia .|B|000000001011011 δ1δ

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.