Możesz uprościć problemy dotyczące „tworzenia stanu”, dzieląc je na trzy części:
- Przygotuj zbiór wielkości, których potrzebujesz, nie martwiąc się fazą ani o tym, który stan ma wielkość.
- Napraw fazy.
- Napraw zamówienie.
Teraz rozważ stan Hardy. Jakich wielkości musimy dokonać? Potrzebujemy jednego wystąpienia3/12−−√ i trzy przypadki wystąpienia 1/12−−√. Możemy je wytwarzać pojedynczo, mając stan „pozostałej amplitudy”, z którego się dzielimy.
Zaczynamy od całej amplitudy w jednym stanie z wzbudzeniem po lewej stronie, ℓ0|1000...00⟩ gdzie ℓ0=1. To, co chcemy zrobić, to przesunąć wzbudzenie w prawo, pozostawiając po sobie pożądane wielkości. Na początek chcemy zostawić za sobą wielkość3/12−−√. Możemy to zrobić w kontrolowany sposóbRy(θ0)operacja, w której kontrola jest kubitem znajdującym się najbardziej na lewo, a celem jest kubit po prawej stronie. Wybierając odpowiednią wartość dlaθ, spowoduje to stan 3/12−−√|1000...00⟩+ℓ1|1100...00⟩. Następnie CNOT drugi kubit wraca na pierwszy kubit, aby się do niego dostaćℓ1|1000...00⟩+3/12−−√|0100...00⟩. Następnie chcemy odjechać1/12−−√. Wykonujemy innyRykontrolowany przez kubit znajdujący się najbardziej na lewo, a następnie przez CNOT do tyłu, ale tym razem z celem jest kubit trzeci od lewej. Wybierając idealneθ1 wyprodukujemy państwo ℓ2|1000...00⟩+3/12−−√|0100...00⟩+1/12−−√ℓ2|0010...00⟩. I po prostu to robisz, dopóki nie uzyskasz wszystkich potrzebnych amplitud, wygodnie rozwiązywanych przez ekscytujące poszczególne kubity.
Teraz chcesz naprawić wszelkie nieprawidłowe fazy powstałe w wyniku obrotu Y. Dla stanu Hardy jest to łatwe, ponieważ wszystkie fazy są dodatnie. Zasadniczo celujesz w każdą pozycję kubitowąk z Rz(ϕk) operacja z odpowiednio wybranym ϕk wartości, a to poprawi fazy.
Teraz chcemy, aby porządek był prawidłowy. Najłatwiejszym sposobem na to jest posiadanie dodatkowych kubitów, które są twoimi kubitami wyjściowymi, a dla każdego kubitów, które do tej pory przygotowaliśmy i każdego kubitów wyjściowych, dodaj CNOT między nimi lub nie. Na przykład, jeśli stan z amplitudą3/12−−√ ma być |11⟩, następnie musimy CNOT z naszego najbardziej lewostronnego kubita na oba kubity wyjściowe. Następnie musimy obliczyć lewostronny kubit za pomocą wielokrotnie kontrolowanej operacji NOT. Powinna istnieć jedna kontrolka na każdy kubit wyjściowy, a typ kontrolki (qubit-must-be-on vs qubit-must-be-off) zależy od tego, czy przełączyłeś kubit.
Zastosowanie tych kroków powoduje nieefektywny, ale poprawny obwód do tworzenia stanu Hardy. Możesz otworzyć obwód w Quirku :
Jeśli chcesz utworzyć stan bez zajmowania tak dużej przestrzeni roboczej, zadanie staje się trudniejsze. Ale nadal możesz śledzić wielkości, następnie fazy, a następnie porządek. Są też sprytniejsze sposoby przygotowania zestawów wielkości, które mają ładne wzory. Na przykład, gdy tylko jedna amplituda różni się od pozostałych, jedna runda częściowego wzmocnienia amplitudy może wystarczyć do przygotowania stanu.