-
-
Notifications
You must be signed in to change notification settings - Fork 48
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
84 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,84 @@ | ||
# Quantum Circuits | ||
|
||
This directory contains implementations of various quantum circuits using Qiskit. The circuits cover a range of topics, including basic quantum gates, error correction, fault tolerance, and optimization techniques. | ||
|
||
## Table of Contents | ||
|
||
- [Overview](#overview) | ||
- [Circuits](#circuits) | ||
- [Basic Circuits](#basic-circuits) | ||
- [Quantum Teleportation Circuit](#quantum-teleportation-circuit) | ||
- [Grover's Algorithm Circuit](#grovers-algorithm-circuit) | ||
- [Variational Circuit](#variational-circuit) | ||
- [Quantum Error Correction Circuit](#quantum-error-correction-circuit) | ||
- [Fault-Tolerant Circuit](#fault-tolerant-circuit) | ||
- [Quantum Circuit Optimizer](#quantum-circuit-optimizer) | ||
- [Requirements](#requirements) | ||
- [Installation](#installation) | ||
- [Usage](#usage) | ||
- [Contributing](#contributing) | ||
- [License](#license) | ||
|
||
## Overview | ||
|
||
This project aims to explore various quantum circuits and their applications using Qiskit. Each circuit is designed to demonstrate key concepts in quantum computing and provide insights into the behavior of quantum systems. | ||
|
||
## Circuits | ||
|
||
### Basic Circuits | ||
- **File**: `basic_circuits.py` | ||
- **Description**: Implements basic quantum circuits, including Hadamard and CNOT gates, and visualizes the results. | ||
|
||
### Quantum Teleportation Circuit | ||
- **File**: `quantum_teleportation_circuit.py` | ||
- **Description**: Simulates the quantum teleportation process, allowing the transfer of a quantum state from one qubit to another. | ||
|
||
### Grover's Algorithm Circuit | ||
- **File**: `grover_circuit.py` | ||
- **Description**: Implements Grover's search algorithm, demonstrating how to search for a marked element in an unsorted database. | ||
|
||
### Variational Circuit | ||
- **File**: `variational_circuit.py` | ||
- **Description**: Constructs a parameterized variational circuit for use with variational algorithms like VQE. | ||
|
||
### Quantum Error Correction Circuit | ||
- **File**: `error_correction_circuit.py` | ||
- **Description**: Implements a simple quantum error correction code (3-qubit bit-flip code) to demonstrate error detection and correction. | ||
|
||
### Fault-Tolerant Circuit | ||
- **File**: `fault_tolerant_circuit.py` | ||
- **Description**: Implements the Steane code (7-qubit code) for fault-tolerant quantum computing, demonstrating error detection and correction. | ||
|
||
### Quantum Circuit Optimizer | ||
- **File**: `quantum_circuit_optimizer.py` | ||
- **Description**: Provides tools for optimizing quantum circuits, including circuit simplification and gate fusion. | ||
|
||
## Requirements | ||
|
||
- Python 3.6 or higher | ||
- Qiskit | ||
- NumPy | ||
- Matplotlib | ||
|
||
## Installation | ||
|
||
To install the required packages, you can use pip: | ||
|
||
```bash | ||
pip install qiskit numpy matplotlib | ||
``` | ||
|
||
## Usage | ||
To run any of the circuits, navigate to the corresponding Python file and execute it. For example, to run the quantum teleportation circuit: | ||
|
||
```bash | ||
1 python quantum_teleportation_circuit.py | ||
``` | ||
|
||
Make sure to adjust the parameters as needed for each circuit. | ||
|
||
## Contributing | ||
Contributions are welcome! If you have suggestions for improvements or new circuits to implement, please open an issue or submit a pull request. | ||
|
||
## License | ||
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details. |