Tradycyjny hamiltonian to pustelnik. Stąd, jeśli zawiera termin niehermański, musi albo zawierać swój koniugat hermitowski jako inny termin, albo mieć wagę 0. W tym konkretnym przypadku, ponieważ jest samym hermitianem, współczynnik musiałby wynosić 0. Więc jeśli mówisz o konwencjonalnych hamiltonianach, prawdopodobnie popełniłeś błąd w swoich obliczeniach. Zauważ, że jeśli koniugat hermitowski tego terminu nie jest obecny, nie możesz po prostu naprawić rzeczy, dodając go; da ci zupełnie inny wynik.Z⊗ X⊗ Y
Z drugiej strony możesz chcieć wdrożyć niehermiański hamiltonian. Te rzeczy istnieją, często dla opisu procesów hałasu, ale nie są tak rozpowszechnione. Musisz wyraźnie dołączyć terminologię „niehermańską”, w przeciwnym razie wszyscy będą myśleć, że to, co robisz, jest złe, ponieważ to nie jest pustelnik, a Hamiltonian powinien być pustelnikiem. Nie jestem zbytnio zaznajomiony z możliwościami, jakie zapewniają różne symulatory, ale byłbym zaskoczony, gdyby miały wbudowane funkcje niehermityczne.
Można to jednak zasymulować kosztem niedeterministycznej implementacji. Będą bardziej wyrafinowane metody niż to (patrz linki w tej odpowiedzi ), ale pozwólcie, że opiszę szczególnie prosty: założę, że jest tylko jeden niehermański komponent, którym jest (iloczyn tensorowy Paul jest). Zadzwonię ten produkt tensor Paulis . Reszta jest Hamiltona . Chcesz stworzyć ewolucję
Zaczynamy od Trotterising ewolucji,
gdzie . Teraz pracujemy nad symulacją pojedynczego terminuK H e - i H t + K t e - i H t + K t = N ∏ i = 1 e - i H δ t + K δ t N δ t = t e - i H δ t + K δ t ≈ e - i H δ t e K δi ×K.H.
mi- i H.t + Kt
mi- i H.t + Kt= ∏i = 1N.mi- i H.δt + Kδt
N.δt = t N e K hemibursztynianu t =cosh(δt) I +sinh(δt),K.mi- i H.δt + Kδt≈ e- i H.δtmiK.δt (co staje się dokładniejsze przy dużym ). Wiesz już, jak radzić sobie z częścią hermitowską, więc skup się na
N.miK.δt= cosh( δt ) I + sinh( δt ) K.
Wprowadzamy kubit ancilla w stanie i używamy go jako kubitu kontrolnego w bramce kontrolowanejNastępnie mierzymy ancilla w podstawie (gdzie ). Jeśli wynikiem jest , to w kubitach docelowych zaimplementowaliśmy operację , aż do normalizacji. Jeśli więc naprawisz , doskonale tę operację. Jeśli pomiar się nie powiedzie, od Ciebie zależy, czy chcesz spróbować odzyskać (może to nie być możliwe), czy zacząć od nowa.K { | * F ⟩ , | * F ⊥ ⟩ } ⟨ * F | * F ⊥ ⟩ = 0 | * F ⟩ | α | 2 I + | β | 2 K ( 1 - | α | 2 ) / | α | 2 = tanh| * F⟩=a- | 0⟩+β| 1⟩K.{ | * F ⟩ , | ψ⊥⟩ }⟨ * F | ψ⊥⟩ = 0| * F⟩|α|2I+|β|2K(1−|α|2)/|α|2=tanh(δt)