Bagikan melalui


Operasi IncByLEUsingAddLE

Nama yang sepenuhnya memenuhi syarat: Std.Arithmetic.IncByLEUsingAddLE

operation IncByLEUsingAddLE(forwardAdder : ((Qubit[], Qubit[], Qubit[]) => Unit is Adj), backwardAdder : ((Qubit[], Qubit[], Qubit[]) => Unit is Adj), xs : Qubit[], ys : Qubit[]) : Unit is Adj + Ctl

Ringkasan

Operasi generik untuk mengubah dua adder di luar tempat menjadi satu adder di tempat

Deskripsi

Implementasi ini memungkinkan untuk menentukan dua adder yang berbeda untuk arah maju dan mundur. Adder forward selalu diterapkan dalam varian isinya, sedangkan adder mundur selalu diterapkan dalam varian adjoint-nya. Oleh karena itu, dimungkinkan untuk, misalnya, menggunakan adder riak-carry out-of-place ke arah mundur untuk tidak memerlukan gerbang T.

Varian terkontrol juga dioptimalkan dengan cara yang semuanya tetapi adder dikontrol,

Referensi

  • arXiv:2012.01624 "Penambah pandang blok kuantum dan menunggu keadaan ajaib", Craig Gidney.