Safe Haskell | None |
---|---|

Language | Haskell98 |

This module provides an implementation of the addition circuit found in Thomas G. Draper's paper "Addition on a Quantum Computer".

# Documentation

qft_add_in_place :: QDInt -> QDInt -> Circ (QDInt, QDInt) Source #

Add one `QDInt`

onto a second, in place; i.e. (*x*,*y*) ↦ (*x*,*x*+*y*).
Arguments are assumed to be of equal size.
This implementation follows the implementation in Thomas G. Draper's
paper "Addition on a Quantum Computer" which doesn't require the use of any
ancilla qubits through a clever use of the Quantum Fourier Transform.