Užívateľ:Viliam
https://arxiv.org/pdf/1803.05316.pdf
Terry Rudolph http://www.qisforquantum.org/
Populárne vysvetlenia modernej fyziky majú málo podrobností, veľa žargónu, pochybné analógie, a tajomné komentáre o podstate fyzikálnej reality. Plus historické anekdoty, ako všetky tieto objavy zmiatli známych fyzikov.
NOT: 0 - 1, 1 - 0.
CNOT: 00 - 00, 01 - 01, 10 - 11, 11 - 10. Prvý bit je "control", druhý "target".
CCNOT: 00x - 00x, 01x - 01x, 10x - 10x, 110 - 111, 111 - 110.
SWAP: 00 - 00, 01 - 10, 10 - 01, 11 - 11.
CSWAP: 0xy - 0xy, 1xy - 1yx.
CNOT(#3: #2) CSWAP (#1: #2 #3) CNOT (#3: #2) = CCNOT(#1 #2: #3) 0x0 - 0x0 - 0x0 - 0x0 0x1 - 0X1 - 0X1 - 0x1 100 - 100 - 100 - 100 101 - 111 - 111 - 101 110 - 110 - 101 - 111 111 - 101 - 110 - 110
P
0 - 0 | 1
1 - 0 | 1
P P = I 0 - ? - 0 1 - ? - 1
P: 0 - { 1: 0, 1: 1 }, 1 { 1: 0, -1: 1 }
P P: 0 - { 1: 0, 1: 1 } - { 1: 0, 1: 1, 1: 0, -1: 1 = 2: 0 } = 0 1 - { 1: 0, -1: 1 } - { 1: 0, 1: 1, -1: 0, 1: 1 = 2: 1 } = 1
Mame 8 predmetov, ocislovanych binarne 000 az 111, bud su 4 z nich dobre alebo ziaden.
Mame suciastku, ktora ako prve 3 inputy dostane kod predmetu, stvrty je jednotka, prve tri vrati nezmenene, stvrty vrati ci dany predmet je dobry.
Tuto suciastku mozeme pouzit iba raz.
0001 P(#1) P(#2) P(#3) P(#4) Test(#1 #2 #3: #4) P(#1) P(#2) P(#3)
ak su vsetky predmety zle { 000 001 010 011 100 101 110 111 } { 000 100 001 101 010 110 011 111 000 -100 001 -101 010 -110 011 -111 } = { 000 001 010 011 } { 000 010 001 011 000 -010 001 -011 } = { 000 001 } { 000 001 000 -001 } = 000 { 0000 -0001 } = 000?
ak su dobre napriklad 001, 010, 101, 111 { 0000 0010 0100 0110 1000 1010 1100 1110 -0001 -0011 -0101 -0111 -1001 -1011 -1101 -1111 } { 0000 0011 0101 0110 1000 1011 1100 1111 -0001 -0010 -0100 -0111 -1001 -1010 -1101 -1110 } P(#1) { 0000 1000 0011 1011 0101 1101 0110 1110 0000 -1000 0011 -1011 0100 -1100 0111 -1111 -0001 -1001 -0010 -1010 -0100 -1100 -0111 -1111 -0001 1001 -0010 1010 -0101 1101 -0110 1110 } = { 0000 -0001 -0010 0011 -1100 1101 1110 -1111 } P(#2) { 0000 0100 -0001 -0101 -0010 -0110 0011 0111 -1000 1100 1001 -1101 1010 -1110 -1011 1111 } P(#3) { 0000 0010 0100 0110 -0001 -0011 -0101 -0111 -0000 0010 -0100 0110 0001 -0011 0101 -0111 -1000 -1010 1100 1110 1001 1011 -1101 -1111 1000 -1010 -1100 1110 -1001 1011 1101 -1111 } = { 0010 -0011 0110 -0111 -1010 1011 1110 -1111 } = ??1?
dá sa zovšeobecniť na 2^N predmetov, z ktorých je buď polovica dobrá alebo sú všetky zlé
asi 20% problémov, ktoré dnes riešia superpočítače, by boli rýchlejšie kvantové (chemické reakcie, dizajn nových molekúl, machine learning) plus problémy, ktoré sa dnes ani nepokúšame riešiť, lebo by to klasické počítače nezvládali
verzia pre 2 predmety: 01 P(#1) P(#2) Test(#1: #2) P(#1)
{ 01 11 }
{ 00 -01 10 -11 }
ak oba zlé
{ 00 -01 10 -11 }
{ 00 10 -01 -11 00 -10 -01 11 } = { 00 -01 } = 0?
ak 0 dobrý
{ 01 -00 10 -11 }
{ 01 11 -00 -10 00 -10 -01 11 } = { -10 11 } = 1?
ak 1 dobrý
{ 00 -01 11 -10 }
{ 00 10 -01 -11 01 -11 -00 10 } = { 10 -11 } = 1?
verzia pre 4 predmety: 001 P(#1) P(#2) P(#3) Test(#1 #2: #3) P(#1) P(#2) { 001 011 101 111 } = P(#1) P(#2) { 000 -001 010 -011 100 -101 110 -111 } = P(#1) P(#2) P(#3) ak všetky štyri zlé { 000 100 -001 -101 010 110 -011 -111 000 -100 -001 101 010 -110 -011 111 } = { 000 -001 010 -011 } = T P(#1) { 000 010 -001 -011 000 -010 -001 011 } = { 000 -001 } = 00? = T P(#1) P(#2) ak 00 a 01 dobré { 001 -000 011 -010 100 -101 110 -111 } = T { 001 101 -000 -100 011 111 -010 -110 000 -100 -001 101 010 -110 -011 111 } = { -100 101 -110 111 } = T P(#1) { -100 -110 101 111 -100 110 101 -111 } = { -100 101 } = 10? = T P(#1) P(#2) ak 00 a 10 dobré { 001 -000 010 -011 101 -100 110 -111 } = T { 001 101 -000 -100 010 110 -011 -111 001 -101 -000 100 010 -110 -011 111 } = { -000 001 010 -011 } = T P(#1) { -000 -010 001 011 000 -010 -001 011 } = { -010 011 } = 01? = T P(#1) P(#2) ak 00 a 11 dobré { 001 -000 010 -011 100 -101 111 -110 } = T { 001 101 -000 -100 010 110 -011 -111 000 -100 -001 101 011 -111 -010 110 } = { -100 101 110 -111 } = T P(#1) { -100 -110 101 111 100 -110 -101 111 } = { -110 111 } = 11? = T P(#1) P(#2) ak 01 a 10 dobré { 000 -001 011 -010 101 -100 110 -111 } = T { 000 100 -001 -101 011 111 -010 -110 001 -101 -000 100 010 -110 -011 111 } = { 100 -101 -110 111 } = T P(#1) { 100 110 -101 -111 -100 110 101 -111 } = { 110 -111 } = 11? = T P(#1) P(#2)
hra na telepatiu:
hrá sa 4000 kôl, vždy sa hodia 2 mince, každý hráč vidí jednu, nemôžu komunikovať
ak padne TT a hráči povedia YY, vyhrávajú $1000; keďže sa to stane cca v každom štvrtom kole, teoreticky môžu dokopy vyhrať milión; za úspech považujeme aspoň 20 000
ak padne HH a hráči povedia YY, prehrávajú všetko
ak padne TH a hráči povedia YN (TY+HN), prehrávajú všetko
deterministické stratégie nefungujú: ak na T povedia N, nikdy nevyhrajú ak na T povedia Y, potom ak na H povedia Y, riskujú prehru "HY+HY", ak na H povedia N, riskujú prehru "TY+HN" náhodné stratégie sú len lineárna kombinácia horeuvedených; zníženie obrovského rizika prehry primerane zníži riziko výhry
riešenie: hráči prinesú 4000 párov previazaných častíc v stave { 00 01 10 } ak padne H, hráč odmeria časticu a povie 1:Y, 0:N ak padne T, hráč najprv urobí P, potom odmeria časticu a povie 1:Y, 0:N
ak padlo HH, hráči povedia 1/3 NN, 1/3 NY, 1/3 YN ak padlo TH, { 00 01 10 } P(#1) { 00 10 01 11 00 -10 } = { 00 00 01 11 } = 2/3 NN, 1/3 NY, 1/3 YY ak padlo TT, { 00 01 10 } P(#1) { 00 10 01 11 00 -10 } = { 00 00 01 11 } P(#2) { 00 01 00 01 00 -01 10 -11 } = { 00 00 00 01 10 -11 } = 3/4 NN, 1/12 NY, 1/12 YN, 1/12 YY čiže nikdy neprehrajú, a vyhrajú cca 1000/12 = 83 kôl, zarobia 83 333
čiastočné pozorovanie: majme P(#1) P(#2) CCNOT(#1 #2: #3) = { 000, 010, 100, 111 }
ak pozrieme prvú guľu, je to { 000, 001 } + { 100, 111 }, teda 1/2: 0 { 00, 10 } = 0 { 0, 1 } 0; 1/2: 1 { 00, 11 }
ak pozrieme tretiu guľu, je to { 000, 010, 100 } + { 111 }, teda 3/4: { 00, 01, 10 } 0; 1/4: 11 1
rôzne kolapsy:
začíname so stavom { 00, 01, 10 }
Alica sa rozhodne, či odmeria prvý bit, alebo urobí P(#1) a potom ho odmeria
ak odmeria, 2/3: 0 { 0, 1 }; 1/3: 1 0
ak P(#1), { 00, 10, 01, 11, 00 -10 } = { 00, 00, 01, 11 }
ak odmeria, 5/6: 0 { 0, 0, 1 }; 1/6: 1 1
prvý bit 0 alebo { 0, 1 }, druhý je 0 alebo { 0, 1 }, vieme rozoznať, ktorý je to prípad? aspoň ktorý to určite nebol
aplikujeme CNOT(#1: #2) P(#1) CNOT(#1: #2)
0 0 = 00 -- 00 -- { 00, 10 } -- { 00, 11 }
0 { 0, 1 } = { 00, 01 } -- { 00, 01 } -- { 00, 10, 01, 11 } -- { 00, 11, 01, 10 }
{ 0, 1 } 0 = { 00, 10 } -- { 00, 11 } -- { 00, 10, 01, -11 } -- { 00, 11, 01, -10 }
{ 0, 1 } { 0, 1 } = { 00, 01, 10, 11 } -- { 00, 01, 11, 10 } -- { 00, 10, 01, 11, 01, -11, 00, -10 } = { 00, 01 } -- { 00, 01 }
pozrieme druhý bit, ak je 0 aplikujeme P(#1), pozrieme prvý bit
{ 00, 11 } -- 11 | 00, 10
{ 00, 11, 01, 10 } -- 01, 11 | 00
{ 00, 11, 01, -10 } -- 01, 11 | 10
{ 00, 01 } -- 01 | 00, 10
00 = nebolo to { 0, 1 } 0
01 = nebolo to 0 0
10 = nebolo to 0 { 0, 1 }
11 = nebolo to { 0, 1 } { 0, 1 }