Skip to content
This repository has been archived by the owner on Jan 12, 2024. It is now read-only.

Quantum addition using ApplyAnd #335

Open
1 of 3 tasks
msoeken opened this issue Sep 30, 2020 · 2 comments
Open
1 of 3 tasks

Quantum addition using ApplyAnd #335

msoeken opened this issue Sep 30, 2020 · 2 comments
Assignees
Labels
good first issue Good for newcomers Kind-Enhancement New feature or request

Comments

@msoeken
Copy link
Member

msoeken commented Sep 30, 2020

Describe the solution you'd like
A ripple-carry adder using the ApplyAnd or ApplyLowDepthAnd operations as described in Fig. 1 in Halving the cost of quantum addition.

Describe alternatives you've considered
Updating RippleCarryAdderD to use ApplyAnd.

Implementation plan

Development in branch feature/adder

@msoeken msoeken added the good first issue Good for newcomers label Sep 30, 2020
@cgranade cgranade added the Kind-Enhancement New feature or request label Oct 2, 2020
@TviNet
Copy link

TviNet commented Oct 23, 2020

Hey, is this issue about replacing the CCNOT gates with ApplyAnd in RippleCarryAdderD or implementing the circuit given in Fig. 1 which does not compute the Carry out bit?

@msoeken
Copy link
Member Author

msoeken commented Oct 24, 2020

I suppose that RippleCarryAdderD could be updated. However, it's not just replacing existing CCNOT since the current implementation used two CCNOT for each Carry, where only one is necessary. It also should support a Carry bit, unlike the figure in the paper.

Also one can make use of newer Q# features such as within / apply.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
good first issue Good for newcomers Kind-Enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants