This device is not compatible.


How to Create a Quantum Binary Adder

In this project, we'll create a quantum circuit to perform the addition of qubits. This circuit will not only implement the quantum counterpart of a classical binary adder but will also allow the leveraging of quantum phenomena like quantum superposition for arithmetic operations.

How to Create a Quantum Binary Adder

You will learn to:

Create and simulate a quantum circuit using Qiskit

Understand the concept of quantum parallelism

Perform arithmetic operations on qubits

Visualize the results of quantum simulation using dedicated packages


Quantum Computing

Data Visualisation

Digital Logic Design


Basic understanding of Python language

Basic knowledge of the linear algebra concepts

Basic understanding of quantum computing

Basic understanding of digital logic design





Project Description

Quantum computing is a new technological field that involves the use of quantum phenomena to perform computations. This non-conventional approach to computation has its advantages over classical technology–a phenomenon known as quantum supremacy. While efforts are underway to create a general-purpose quantum computer, current quantum technologies are already finding applications in cybersecurity, finance, and communication.

In this project, we’ll be implementing a quantum binary full adder. As the technology for implementing classical and quantum logical circuits is different, the design for a quantum binary adder will have marked differences from its classical counterpart. Therefore, instead of going for the usual sum-of-product approach to implement the binary logic, we’ll adopt a heuristic approach for finding the gate combination.

Block diagram of a full adder

Project Tasks


Getting Started

Task 1: Import Libraries

Task 2: Create a Quantum Circuit

Task 3: Apply a Hadamard Gate

Task 4: Apply Measurement Gate

Task 5: Simulate the Quantum Circuit

Task 6: Apply a CNOT Gate

Task 7: Apply a CCNOT Gate

Task 8: Append Quantum Circuits


Create a Full Adder

Task 9: Create the Data Registers

Task 10: Create the Quantum Circuit

Task 11: Create the Sum Block

Task 12: Create the Carry-Out Block

Task 13: Create the full_adder() Function

Task 14: Simulate the Full Adder

Task 15: Analyze the Results