-
Notifications
You must be signed in to change notification settings - Fork 11
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Arithmetic circuit library #12
Comments
@mantcep @ManjulaGandhi Can you comment on this issue so that I can assign you? Please also work with your mentor to refine the project, define scope and deliverables and update the project description in this issue. |
We synced on the project plan and I updated the description accordingly. |
Thanks a lot for selecting! Would be very glad to contribute and be part of the team. |
Really glad to be working on this project! Thanks @Cryoris for updating the description! |
Hey, excited to see these implemented in Qiskit! Was just wondering if this project is similar to this? https://github.com/hkhetawat/QArithmetic |
Some of the operations are the same yeah, though this projects implements them as library circuits with rigorous tests rather than as functions (also we might include some more variants) see e.g. the first part on the adders: Qiskit/qiskit#6164. |
Description
Imagine your given the task to write a numerical program on your computer, maybe a simple one like summing certain numbers or a bit more difficult to integrate a function. Now you know an algorithm and you'll start implementing it. Are you writing bit-operations?
No, most certainly not! You'll use fundamental arithmetic operations like
* + - / ^
or even an existing library.But in Quantum computing frameworks we're often restricted to really using low-level qubit operations, like the Pauli gates or the Hadamard gate. This makes writing elaborate algorithms very strenuous and you might find yourself re-implementing the same bits of code again and again.
To allow writing algorithms more quickly and to enable re-use of modular code blocks, we've started a library of useful circuits: Qiskit's circuit library. In this project, you'll add important circuits for basic arithmetic operations like addition or multiplication, including some tests to validate them.
Examples:
Mentor/s
Julien Gacon (@Cryoris), Pre-Doc researcher at IBM Research Zurich, Qiskit Terra and Aqua core developer
Type of participant
You just need basic knowledge of Python and Qiskit circuits 🙂 Ideally you're familiar with some arithmetic circuits, such as the adder circuits.
Number of participants
2
Deliverable
Depending on how fast we move along there are different levels we can reach:
Level 1:
Basic arithmetic circuits (and tests) added to the circuit library:
Level 2:
Level 3:
Progress is tracked here: https://github.com/Cryoris/qiskit-terra/projects/2
The text was updated successfully, but these errors were encountered: