Classificazione cancelli reversibili


22

Il reticolo di Post , descritto da Emil Post nel 1941, è fondamentalmente un diagramma di inclusione completo di insiemi di funzioni booleane che sono chiuse sotto composizione: ad esempio, le funzioni monotone, le funzioni lineari su GF (2) e tutte le funzioni. (Post non pensava che le costanti 0 e 1 fossero disponibili gratuitamente, il che rendeva il suo reticolo molto più complicato di quanto sarebbe altrimenti.)

La mia domanda è se qualcosa di analogo sia mai stato pubblicato per cancelli classici reversibili , come i cancelli Toffoli e Fredkin. Cioè, quali classi di trasformazioni reversibili su {0,1} n possono essere generate da alcune raccolte di cancelli reversibili? Ecco le regole: ti è permesso un numero illimitato di bit ancilla, alcuni preimpostati su 0 e altri preimpostati su 1, purché tutti i bit ancilla siano riportati alle impostazioni iniziali una volta che la trasformazione di {0,1} n è finito. Inoltre, uno SWAP di 2 bit (ovvero una rietichettatura dei loro indici) è sempre disponibile gratuitamente. In base a queste regole, il mio studente Luke Schaeffer e io siamo stati in grado di identificare i seguenti dieci set di trasformazioni:

  1. Il set vuoto
  2. L'insieme generato dal NOT gate
  3. L'insieme generato da NOTNOT (ovvero, porte NOT applicate a qualsiasi 2 dei bit)
  4. Il set generato da CNOT (ovvero, il gate Controlled-NOT)
  5. Il set generato da CNOTNOT (ovvero, capovolgere il 2o e 3o bit se il 1o bit è 1)
  6. Il set generato da CNOTNOT e NOT
  7. Il set generato dal gate di Fredkin (ovvero Controlled-SWAP)
  8. Il set generato da Fredkin e CNOTNOT
  9. Il set generato da Fredkin, CNOTNOT e NOT
  10. L'insieme di tutte le trasformazioni

Vorremmo identificare eventuali famiglie rimaste, e quindi dimostrare che la classificazione è completa --- ma prima di dedicare molto tempo ad essa, vorremmo sapere se qualcuno l'ha già fatto prima.


Ti manca NOTCSWAP e (CSWAP, NOTCSWAP) dove NOTCSWAP è come uno scambio controllato ma scambia i suoi argomenti x, y quando il suo argomento c è 0 (invece di scambiare quando c è 1 come in un CSWAP)? Sono necessari entrambi per ottenere tutte le permutazioni di conservazione del peso di Hamming: CSWAP consente solo vettori di peso di Hamming ≥2 mentre NOTCSWAP consente solo vettori di peso di Hamming ≤n-2.
David Eppstein,

Inoltre (esaurito lo spazio nel commento precedente) richiedendo un numero maggiore di bit di controllo pari a zero o diverso da zero, è possibile ottenere sottoinsiemi ancora più limitati delle permutazioni di conservazione del peso di Hamming, permettendo solo vettori con peso di Hamming almeno o al massimo un arbitrario limite. Quindi questo dà numerosamente molte classi di trasformazioni.
David Eppstein,

Grazie, David - ma supponevo che 0 e 1 ancillas fossero disponibili gratuitamente, proprio per escludere tali "perversità". Non lo fa?
Scott Aaronson,

1
Sia la classe di tutte le permutazioni che preservano il peso di Hamming modulo n . Quindi C n soddisfa i tuoi requisiti e C nC m iff m | n : le non inclusioni di C n altrove sono testimoniate dalla funzione n -ary f n st f n ( 0 n ) = 1 n , f n ( 1 n ) = 0 n , eCnnCnCnCmm|nCnnfnfn(0n)=1nfn(1n)=0n per x 0 n , 1 n . In particolare, tutte queste classi infinitamente diverse sono distinte. f(x)=xx0n,1n
Emil Jeřábek sostiene Monica il

2
Vedi l'articolo eccc.hpi-web.de/report/2015/066 in cui queste idee sono state perfezionate e che fa riferimento anche alla risposta di Emil di seguito.
András Salamon,

Risposte:


13

Questa è una presentazione di metà di una dualità per trasformazioni reversibili, analogo alla dualità clone-coclone standard (come qui ). Non risponde alla domanda, ma mostra che tutte le classi chiuse di tali funzioni sono determinate dalla conservazione delle proprietà di una forma particolare.

Contrariamente al caso standard, la principale complicazione è che le permutazioni possono contare (preservano la cardinalità), quindi i loro invarianti devono coinvolgere un po 'di aritmetica per giustificare questo.

Vorrei iniziare con una terminologia provvisoria. Fissare un insieme finito di base . (Nel caso classico di cui Scott chiede: . Parti della discussione funzionano anche per infinita , ma non per la caratterizzazione principale.)A = { 0 , 1 } AAA={0,1}A

Un insieme di permutazioni (o: trasformazioni reversibili) è un sottoinsieme , dove indica il gruppo di permutazioni di . Un clone di permutazione è un insieme di permutazioni tale cheSym ( X ) X CCP:=nNSym(An)Sym(X)XC

  1. Ogni è chiuso sotto composizione.CSym(An)

  2. Per ogni , la permutazione definita da è in .˜ πSym ( A n ) ˜ π ( x 1 , , x n ) = ( x π ( 1 ) , , x π ( n ) ) CπSym({1,,n})π~Sym(An)π~(x1,,xn)=(xπ(1),,xπ(n))C

  3. Se e , la permutazione definita da è in .g CSym ( A m ) f × g Sym ( A n + m ) ( f × g ) ( x , y ) = ( f ( x ) , g ( y ) ) CfCSym(An)gCSym(Am)f×gSym(An+m)(f×g)(x,y)=(f(x),g(y))C

Poiché è finito, 1 significa che è un sottogruppo di . L'OP richiede solo 2 per trasposizioni , ma la versione qui è chiaramente equivalente. La condizione 3 è equivalente a quella che ho chiamato introduzione delle variabili fittizie nei commenti sopra.CSym ( A n ) Sym ( A n ) πACSym(An)Sym(An)π

Un clone principale è un clone di permutazione con indennità di ancillas:

  1. Sia , e siano tali che per tutti . Quindi implica .g Sym ( A n ) a A m f ( x , a ) = ( g ( x ) , a ) x A n f C g CfSym(An+m)gSym(An)aAmf(x,a)=(g(x),a)xAnfCgC

Miriamo a caratterizzare i cloni di permutazione e i cloni principali di alcuni invarianti. Vorrei prima motivare quest'ultimo con alcuni esempi su :A={0,1}

  • Il clone principale delle permutazioni che preservano il peso di Hamming (generato dal cancello di Fredkin). Se indica l'inclusione di in , queste permutazioni sono caratterizzate dalla proprietà dove , e scrivo .{ 0 , 1 } N y = f ( x )w{0,1}NfSym(An)x=(x1,,xn)

    y=f(x)i=1nw(xi)=i=1nw(yi),
    fSym(An)x=(x1,,xn)
  • Il clone principale di permutazioni che preservano il peso di Hamming modulo fisso , menzionato nei commenti. Questo è caratterizzato dalla stessa formula di cui sopra, se interpretiamo come una funzione da al gruppo ciclico , e calcoliamo la somma lì.w { 0 , 1 } C ( m )mw{0,1}C(m)

  • Il clone principale delle permutazioni affine , , (generato da CNOT). Si verifica facilmente (o si sa dal caso Post) che una funzione a uscita singola è affine se mantiene la relazione . Pertanto, se definiamo per un è nel clone iff quindi abbiamo a che fare con somme nel monoideM G L ( n , F 2 ) b F n 2 F n 2F 2 x 1x 2x 3x 4 = 0 w : { 0 , 1 } { 0 , 1 } w ( x 1 ,f(x)=MxbMGL(n,F2)bF2nF2nF2x1x2x3x4=0w:{0,1}{0,1}

    w(x1,x2,x3,x4)=x1x2x3x4,
    fSym(An)
    y1=f(x1)y4=f(x4)maxi=1nw(xi1,,xi4)=maxi=1nw(yi1,,yi4),
    ({0,1},0,max) .

In generale, una funzione di peso è una mappatura , dove e è un monoide commutativo. Una funzione peso maestro è uno che mappa tutti diagonale -tuples , , ad elementi invertibili di . Indichiamo la classe di tutte le funzioni di peso e le funzioni di peso principale.w:AkMkNMk(a,,a)aAMWMW

Se , e è una funzione di peso, diciamo che è un invariante di , o (prendendo a prestito la terminologia senza pensare) che è un polimorfismo di , e scrivi , se la seguente condizione vale per tutti :fSym(An)w:AkMwffwfw(xij)i=1..nj=1..k,(yij)i=1..nj=1..kAn×k

Se , quindi y1=f(x1),,yk=f(xk)

i=1nw(xi)=i=1nw(yi).

Qui, , e similmente per . In altre parole, se (o piuttosto la sua estensione parallela a ) conserva la somma dei pesi dei suoi argomenti.xj=(x1j,,xnj)xi=(xi1,,xik)yfwf(Ak)nw

La relazione tra e (o ) induce una connessione Galois tra insiemi di permutazioni e classi di funzioni di peso , nel solito modo: e quindi un doppio isomorfismo tra i reticoli completi degli insiemi chiusi di permutazioni e le classi chiuse delle funzioni di peso (master), rispettivamente. Per vedere che siamo sulla buona strada, osserviamo che insiemi chiusi di permutazioni sono davvero cloni:PWMWCPDW

Pol(D)={fP:wD(fw)},Inv(C)={wW:fC(fw)},MInv(C)=MWInv(C),

Lemma: Se , allora è un clone di permutazione. Se , allora è un clone principale.DWPol(D)DMWPol(D)

Prova: la prima affermazione è più o meno ovvia. Per il secondo, lascia , be come nella condizione 4 in modo che , e let sia come nella definizione di . Inserisci , e . Quindi implica Tuttavia, è invertibile in poiché è una funzione di peso principale, quindi wDf,g,afw(xij),(yij)gwx¯j=(xj,a)y¯j=(yj,a)=f(x¯j)ui=w(ai,,ai)fw

i=1nw(xi)+i=1mui=i=1n+mw(x¯i)=i=1n+mw(y¯i)=i=1nw(yi)+i=1mui.
uiMw
QEDi=1nw(xi)=i=1nw(yi).

Prima di procedere oltre, dobbiamo risolvere un problema: i monoidi possono essere enormi , quindi gli invarianti di questa forma possono essere giustamente sospettati di essere inutili assurdità astratte.

Innanzitutto, data una funzione di peso , possiamo supporre che sia generato da (e da inverse additive di immagini di elementi diagonali nel caso principale), come altri elementi di non inserire l'immagine. In particolare, è finemente generato . In secondo luogo, i risultati generali di algebra universale, possiamo scrivere come prodotto subdirect dove ogni è subdirectly irriducibile, e è un quoziente di via esima proiezione del prodottow:AkMMw(Ak)MMM

MiIMi,
MiMiMiπi; in particolare, è ancora un monoide commutativo finemente generato. A causa di Mal'cev, i monoidi commutativi (o semigruppi) sottodirettamente irriducibili sono in effetti finiti . La mappatura di è di nuovo una funzione di peso, master se era, ed è facile vedere che Pertanto, possiamo senza perdita di generalità limitare l'attenzione alle funzioni di peso che , dove è finito e irriducibilmente sottodiretto. Lascia che sia la classe di tali funzioni di peso e metti wi=πiw:AkMiw
Pol(w)=iIPol(wi).
w:AkMMFW
Inv(C)=FWInv(C),MInv(C)=FWMInv(C).
Esempi di monoidi commutativi sottodirettamente irriducibili finiti sono i gruppi ciclici e i monoidi di addizione troncati . Il caso generale è più complicato, tuttavia si può dire molto sulla loro struttura: si può scrivere ciascuno in un certo modo come un'unione disgiunta di una e un gruppo nils finito con alcune proprietà. Vedi Grillet per i dettagli.C(pd)({0,,d},0,min{d,x+y})C(pd)

Ora siamo pronti per il punto principale di questo post:

Teorema: gli insiemi chiusi di permutazioni nella connessione di Galois a funzioni di peso (master) sottodirettibili finite sono esattamente i cloni di permutazione (cloni master, resp.).

Cioè, se , il clone di permutazione generato da è e il clone principale generato da è .CPCPol(Inv(C))CPol(MInv(C))

Prova: alla luce della discussione precedente, è sufficiente mostrare che se è un clone di permutazione e , esiste un invariante di tale che , e si può prendere per essere una funzione di peso principale se è un clone principale.CfSym(An)Cw:AkMCfwwC

Inserisci e lascia che sia il monoide libero generato da (ovvero, parole finite sull'alfabeto ). Definiamo una relazione su per (Le parole di lunghezza diversa non sono mai correlate da .) Dal momento che ciascuna è un gruppo, è una relazione di equivalenza (in effetti, la sua limitazione alle parole di lunghezza è solo la relazione di equivalenza orbita della recitazione di nel modo più ovviok=|A|nFAkAkF

x1xmy1ymgCSym(Am)j=1,,kg(x1j,,xmj)=(y1j,,ymj).
CSym(Am)mCSym(Am)Amk ). Inoltre, è una congruenza monoid: se e testimoniano che e , rispettivamente, quindi testimoni .gCSym(Am)gSym(Am)x1xmy1ymx1xmy1ymg×gCSym(Am+m)x1xmx1xmy1ymy1ym

Pertanto, possiamo formare il quoziente monoid . La permutazione di swap testimonia che per ogni ; cioè, i generatori di commutano, quindi è commutativo. Definire una funzione di peso da come inclusione naturale di in composta con la mappa del quoziente.M=F/xyyxx,yAkMMw:AkMAkF

È facile vedere che : in effetti, se , e , quindi dalla definizione di (usando la notazione come nella definizione di ). D'altra parte, supponiamo . Sia un'enumerazione di , e si per essere di nuovo come nella definizione di . Poi CPol(w)gCSym(Am)y1=f(x1),,yk=f(xk)

i=1mw(xi)=x1xm/=y1ym/=i=1mw(yi)
fw{aj:j=1,,k}Anbj=f(aj)ai,biAki=1,,n
a1an/=i=1nw(ai)=i=1nw(bi)=b1bn/,
quindi dalla definizione di , esiste tale che per ogni . Tuttavia, poiché lo scarico , ciò significa , cioè , una contraddizione. Questo completa la prova per i cloni di permutazione.gCSym(An)g(aj)=bj=f(aj)jajAng=ffC

Anche se è un clone maestro, necessità di non essere una funzione peso maestro, infatti, gli elementi diagonali non sono nemmeno necessariamente cancellative in , quindi abbiamo bisogno di risolvere il problema. Per ogni , lascia che e definisca una nuova relazione di equivalenza su per Usando il fatto che gli elementi di commutano modulo , è facile mostrare che è di nuovo una congruenza, quindi possiamo formare il monoideCwMcAc=(c,,c)AkF

x1xmy1ymc1,,crAx1xmc1cry1ymc1cr.
AkM=F/ e una funzione di peso . Poiché estende , è commutativo e un quoziente di ; in particolare, . D'altra parte, se , lo stesso argomento di cui sopra insieme alla definizione di darebbe un e tale che per tutti , quindi come è un clone principale, una contraddizione.w:AkMMMCPol(w)fwgCSym(An+r)c1,,crA
g(x,c1,,cr)=(f(x),c1,,cr)
xAnfCC

La definizione di assicura che per tutti , e . Ne consegue che gli elementi sono cancellativi in . È un fatto ben noto che qualsiasi monoide commutativo può essere incorporato in un altro in cui tutti gli elementi cancellativi diventano invertibili. La composizione di tale incorporamento con è quindi una funzione di peso principale , e , quindi . QED

xcycxy
x,yFcAc/=w(c)MwwPol(w)=Pol(w)wMInv(C)MInv(f)

EDIT: una generalizzazione della dualità clone-coclone sopra è ora scritta in

[1] E. Jeřábek, connessione Galois per operazioni a più uscite , prestampa, 2016, arXiv: 1612.04353 [math.LO] .


Grazie mille per lo sforzo necessario per scriverlo! Mi ci vorrà del tempo per digerirlo, dato che il linguaggio dei cloni e dell'algebra universale è abbastanza astratto per me (in effetti, è stato un ostacolo quando ho provato a leggere questa letteratura in passato). Ma mentre elaboriamo concretamente i cloni, è utile sapere che saranno tutti caratterizzati da invarianti, come in effetti tutti gli esempi che conoscevamo lo sono. (Per inciso, per vedere, diciamo, Fredkin + NON caratterizzato da un invariante, immagino che guardiamo le coppie di input e diciamo che ogni trasformazione preserva la somma delle loro parità?)
Scott Aaronson,

Nel frattempo, ho progressi per riferire sulla questione concreta. Sono stato in grado di classificare tutti i punti del reticolo sopra la porta di Fredkin: le uniche possibilità sono le trasformazioni che preservano il peso di Hamming mod k per qualsiasi k, le trasformazioni che preservano o capovolgono il peso di Hamming mod 2 (generato da Fredkin + NOT) e tutte le trasformazioni. Posso anche caratterizzare tutti i punti nel reticolo sopra CNOTNOT: sono solo quelli che ho elencato nell'OP (CNOTNOT + NOT, CNOT, Fredkin + NOTNOT, Fredkin + NOT, tutto).
Scott Aaronson,

Sì, per Fredkin + NOT, possiamo prendere , . Grazie per l'aggiornamento, suona molto bene. M=C(2)w(x,y)=xy
Emil Jeřábek sostiene Monica il

1
La speranza è ovviamente che gli invarianti siano in pratica molto più piccoli di ciò che cade dalla prova. (Nel caso Post, credo che il peggio che possa accadere sia ) La connessione Galois non aiuta direttamente con la classificazione concreta, è più uno strumento metodologico. Innanzitutto, potrebbe essere più facile trovare classi precedentemente non identificate se si conosce il tipo di proprietà da cercare. In secondo luogo, un tipico passo nella dimostrazione della classificazione di Post è il seguente. Siamo arrivati ​​a una classe da qualche parte nel mezzo del reticolo e vogliamo descrivere le classi sopra di esso. ...kn+1C
Emil Jeřábek sostiene Monica il

1
... è determinato dalle sue relazioni invarianti . Quindi qualsiasi estensione corretta di deve contenere una che non conserva alcuni , e di solito si può quindi manipolare per composizione ecc. In una particolare funzione in un piccolo numero di variabili. In questo modo, si ottiene un elenco tale che ogni classe rigorosamente sopra contiene la classe generata da per alcuni , e si può procedere alla parte del reticolo sopra quella . Questo non ha bisogno della corrispondenza generale, ma conoscendo gli invarianti delle classi particolari che si incontrano.CR1,,RkCfRiff1,,fcCC{fi}i
Emil Jeřábek sostiene Monica il
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.