Challenges
Datasets
Workspaces
Papers
Discussions
Leaderboard
Log inSign up
Challenges
Datasets
Workspaces
Papers
Discussions
Leaderboard
Blog
Job Board
Q3AS

© 2026 Aqora Quantum S.A.S.

TermsPrivacyLegal Notice

Journal of Computer Science Research

Quick Quantum Circuit Simulation

Daniel Evans

Published Sep 23, 2021• 1 citation
Publisher

Abstract

Quick Quantum Circuit Simulation (QQCS) is a software system for computing the result of a quantum circuit using a notation that derives directly from the circuit, expressed in a single input line. Quantum circuits begin with an initial quantum state of one or more qubits, which are the quantum analog to classical bits. The initial state is modified by a sequence of quantum gates, quantum machine language instructions, to get the final state. Measurements are made of the final state and displayed as a classical binary result. Measurements are postponed to the end of the circuit because a quantum state collapses when measured and produces probabilistic results, a consequence of quantum uncertainty. A circuit may be run many times on a quantum computer to refine the probabilistic result. Mathematically, quantum states are 2n -dimensional vectors over the complex number field, where n is the number of qubits. A gate is a 2n ×2n unitary matrix of complex values. Matrix multiplication models the application of a gate to a quantum state. QQCS is a mathematical rendering of each step of a quantum algorithm represented as a circuit, and as such, can present a trace of the quantum state of the circuit after each gate, compute gate equivalents for each circuit step, and perform measurements at any point in the circuit without state collapse. Output displays are in vector coefficients or Dirac bra-ket notation. It is an easy-to-use educational tool for students new to quantum computing.

DOI
10.30564/jcsr.v3i4.3567

Related papers

Quantum computer simulator based on the circuit model of quantum computation

Ioannis G. Karafyllidis

A quantum computer simulator is presented. This simulator is an engineering work and no deep understanding of quantum mechanics is required from the user. The simulator is based on the circuit model of quantum computation in which quantum gates act on quantum registers which comprise a number of quantum bits (qubits). The inputs to the simulator are the initial states of the qubits that form a quantum register and the quantum gates applied at each computation step. The inputs are entered through a graphical user interface. The outputs of the simulator are the matrices that represent the quantum register state at each quantum computation step and graphical outputs that show the probability of measuring each one of the possible quantum register base states and the phase of each state at each computation step. The well-known Deutsch's algorithm and the quantum Fourier transform, which is the base of many quantum algorithms, are presented using this simulator. Furthermore, the generation and variation of entanglement during quantum computations can be calculated using this simulator. The quantum computer simulator is a useful tool for the study of quantum computer circuits, quantum computing, and the development of new quantum algorithms.

IEEE Transactions on Circuits and Systems I Fundamental Theory and Applications•Aug 1, 2005•54 citations

Quantum Computing

Michael F. Insana

Quantum computing (QC) is an exciting new technology that completes the text with an application that relies heavily on the mathematics of linear algebra. There is more to explain than the conversion of common matrix notation into Dirac bra-ket notation. There is also the bizarre world of quantum physics that is inspiring a range of quantum information technologies. Qubits and their entangled superposition states are introduced to show that the “quantum advantage” stems from qubits storing exponentially more information that can be processed at exponentially faster rates. The process of preparing, modifying, and measuring qubit states is explained. Linear algebra skills are exercised by representing QC coding through the application of unitary operators to qubit states. QC algorithms are designed by diagramming quantum circuits, casting those circuits into sequences of operators applied to qubit states, and converting the operators into matrix forms. These are the tools of QC. Several algorithms that demonstrate a range of computational tasks from simple arithmetic through quantum Fourier analysis complete the chapter.

Chapman & Hall/CRC eBooks•Sep 11, 2026•0 citations

Efficient quantum circuit simulation.

John P. Hayes, Igor L. Markov, George F. Viamontes

Quantum-mechanical phenomena are playing an increasing role in information processing as transistor sizes approach the nanometer level, while the securest forms of communication rely on quantum data encoding. When they involve a finite number of basis states, these phenomena can be modeled as quantum circuits, the quantum analogue of conventional or classical logic circuits. Simulation of quantum circuits can therefore be used as a tool to evaluate issues in the design of quantum information processors. Unfortunately, simulating such phenomena efficiently is exceedingly difficult. The matrices representing quantum operators (gates) and vectors modeling quantum states grow exponentially with the number of quantum bits. The information represented by quantum states and operators often exhibits structure that can be exploited when simulating certain classes of quantum circuits. We study the development of simulation methods that run on classical computers and take advantage of such repetitions and redundancies. In particular, we define a new data structure for simulating quantum circuits called the quantum information decision diagram (QuIDD). A QuIDD is a compressed graph representation of a vector or matrix and permits computations to be performed directly on the compressed data. We develop a comprehensive set of algorithms for operating on QuIDDs in both the state-vector and density-matrix formats, and evaluate their complexity. These algorithms have been implemented in a general-purpose simulator program for quantum-mechanical applications called QuIDDPro. Through extensive experiments conducted on representative quantum simulation applications, including Grover's search algorithm, error characterization, and reversible circuits, we demonstrate that QuIDDPro is faster than other existing quantum-mechanical simulators such as the National Institute of Standards and Technology's QCSim program, and is far more memory-efficient. Using QuIDDPro, we explore the advantages of quantum computation over classical computation, simulate quantum errors and error correction, and study the impact of numerical precision on the fidelity of simulations. We also develop several novel algorithms for testing quantum circuit equivalence and compare them empirically. The QuIDDPro software is equipped with a user-friendly interface and is distributed with numerous example scripts. It has been used as a laboratory supplement for quantum computing courses at several universities.

•Jan 1, 2007•15 citations

Quantum Circuits – An Application in Qiskit-Python

Paras Nath Singh, S Aarthi

For many practical applications, Quantum computers offer major speed-ups over traditional machines. The production of quantum chips has recently made tremendous strides, with the quantity of Qubits increasing and fidelity increasing. The smallest unit of information is the binary digit i.e. bit in general computing. In Quantum Computing the term Qubit (Quantum Bit) is used for the same purpose. In order to differentiate between a classical bit and a Qubit, Bra-Ket or Dirac notation is used. So, the Qubits are represented as |0〉 and |1〉 and are often read as Ket 0 for zero state and Ket 1 for one state. In this paper mainly programming and application sides of Quantum Computing are focused. For that, Qiskit module and its tools are used in Python programming language. General circuit optimization scheme is given. The Quantum circuits with the concept of Quantum Gates implemented are stronger compared to the optimizing algorithm and with faster execution time. In addition, for prime factorization, access to IBM's Quantum computer is carried out successfully.

International Conference on Intelligent Communication Technologies and Virtual Mobile Networks (ICICV)•Feb 4, 2021•24 citations

Q-Gen: A Parameterized Quantum Circuit Generator

Yikai Mao, Shaswot Shresthamali, Masaaki Kondo

Unlike most classical algorithms that take an input and give the solution directly as an output, quantum algorithms produce a quantum circuit that works as an indirect solution to computationally hard problems. In the full quantum computing workflow, most data processing remains in the classical domain except for running the quantum circuit in the quantum processor. This leaves massive opportunities for classical automation and optimization toward future utilization of quantum computing. We kickstart the first step in this direction by introducing Q-gen, a high-level, parameterized quantum circuit generator incorporating 15 realistic quantum algorithms. Each customized generation function comes with algorithmspecific parameters beyond the number of qubits, providing a large generation volume with high circuit variability. To demonstrate the functionality of Q-gen, we organize the algorithms into 5 hierarchical systems and generate a quantum circuit dataset accompanied by their measurement histograms and state vectors. This dataset enables researchers to statistically analyze the structure, complexity, and performance of large-scale quantum circuits, or quickly train novel machine learning models without worrying about the exponentially growing simulation time. Q-gen is an open-source and multipurpose project that serves as the entrance for users with a classical computer science background to dive into the world of quantum computing.

arXiv:2407.18697•IEEE Transactions on Quantum Engineering•Jan 1, 2025•2 citations

A Quantum Model of Computation

Phillip Kaye, Raymond Laflamme, Michele Mosca

In Section 1.3, we introduced the circuit model of (classical) computation. We restricted attention to reversible circuits since they can simulate any non-reversible circuit with modest overhead. This model can be generalized to a model of quantum circuits. In the quantum circuit model, we have logical qubits carried along ‘wires’, and quantum gates that act on the qubits. A quantum gate acting on n qubits has the input qubits carried to it by n wires, and n other wires carry the output qubits away from the gate. A quantum circuit is often illustrated schematically by a circuit diagram as shown in Figure 4.1. The wires are shown as horizontal lines, and we imagine the qubits propagating along the wires from left to right in time. The gates are shown as rectangular blocks. For convenience, we will restrict attention to unitary quantum gates (which are also reversible). Recall from Section 3.5.3 that non-unitary (non-reversible) quantum operations can be simulated by unitary (reversible) quantum gates if we allow the possibility of adding an ancilla and of discarding some output qubits. A circuit diagram describing a superoperator being implemented using a unitary operator is illustrated in Figure 4.2. In the example of Figure 4.1, the 4-qubit state |ψi⟩= |0⟩⊗ |0⟩⊗ |0⟩⊗ |0⟩ enters the circuit at the left (recall we often write this state as |ψi⟩ = |0⟩|0⟩|0⟩|0⟩ or |ψi⟩ = |0000⟩.) These qubits are processed by the gates U1, U2, U3, and U4. At the output of the circuit we have the collective (possibly entangled) 4-qubit state |ψf⟩. A measurement is then made of the resulting state. The measurement will often be a simple qubit-by-qubit measurement in the computational basis, but in some cases may be a more general measurement of the joint state. A measurement of a single qubit in the computational basis is denoted on a circuit diagram by a small triangle, as shown in Figure 4.1 (there are other symbols used in the literature, but we adopt this one). The triangle symbol will be modified for cases in which there is a need to indicate different types of measurements.R50

Oxford University Press eBooks•Nov 16, 2006•0 citations
Quick Quantum Circuit Simulation (QQCS) is a software system for computing the result of a quantum circuit using a notation that derives directly from the circuit, expressed in a single input line. Quantum circuits begin with an initial quantum state of one or more qubits, which are the quantum analog to classical bits. The initial state is modified by a sequence of quantum gates, quantum machine language instructions, to get the final state. Measurements are made of the final state and displayed as a classical binary result. Measurements are postponed to the end of the circuit because a quantum state collapses when measured and produces probabilistic results, a consequence of quantum uncertainty. A circuit may be run many times on a quantum computer to refine the probabilistic result. Mathematically, quantum states are 2n -dimensional vectors over the complex number field, where n is the number of qubits. A gate is a 2n ×2n unitary matrix of complex values. Matrix multiplication models the application of a gate to a quantum state. QQCS is a mathematical rendering of each step of a quantum algorithm represented as a circuit, and as such, can present a trace of the quantum state of the circuit after each gate, compute gate equivalents for each circuit step, and perform measurements at any point in the circuit without state collapse. Output displays are in vector coefficients or Dirac bra-ket notation. It is an easy-to-use educational tool for students new to quantum computing.
A quantum computer simulator is presented. This simulator is an engineering work and no deep understanding of quantum mechanics is required from the user. The simulator is based on the circuit model of quantum computation in which quantum gates act on quantum registers which comprise a number of quantum bits (qubits). The inputs to the simulator are the initial states of the qubits that form a quantum register and the quantum gates applied at each computation step. The inputs are entered through a graphical user interface. The outputs of the simulator are the matrices that represent the quantum register state at each quantum computation step and graphical outputs that show the probability of measuring each one of the possible quantum register base states and the phase of each state at each computation step. The well-known Deutsch's algorithm and the quantum Fourier transform, which is the base of many quantum algorithms, are presented using this simulator. Furthermore, the generation and variation of entanglement during quantum computations can be calculated using this simulator. The quantum computer simulator is a useful tool for the study of quantum computer circuits, quantum computing, and the development of new quantum algorithms.
Quantum computing (QC) is an exciting new technology that completes the text with an application that relies heavily on the mathematics of linear algebra. There is more to explain than the conversion of common matrix notation into Dirac bra-ket notation. There is also the bizarre world of quantum physics that is inspiring a range of quantum information technologies. Qubits and their entangled superposition states are introduced to show that the “quantum advantage” stems from qubits storing exponentially more information that can be processed at exponentially faster rates. The process of preparing, modifying, and measuring qubit states is explained. Linear algebra skills are exercised by representing QC coding through the application of unitary operators to qubit states. QC algorithms are designed by diagramming quantum circuits, casting those circuits into sequences of operators applied to qubit states, and converting the operators into matrix forms. These are the tools of QC. Several algorithms that demonstrate a range of computational tasks from simple arithmetic through quantum Fourier analysis complete the chapter.
Quantum-mechanical phenomena are playing an increasing role in information processing as transistor sizes approach the nanometer level, while the securest forms of communication rely on quantum data encoding. When they involve a finite number of basis states, these phenomena can be modeled as quantum circuits, the quantum analogue of conventional or classical logic circuits. Simulation of quantum circuits can therefore be used as a tool to evaluate issues in the design of quantum information processors. Unfortunately, simulating such phenomena efficiently is exceedingly difficult. The matrices representing quantum operators (gates) and vectors modeling quantum states grow exponentially with the number of quantum bits. The information represented by quantum states and operators often exhibits structure that can be exploited when simulating certain classes of quantum circuits. We study the development of simulation methods that run on classical computers and take advantage of such repetitions and redundancies. In particular, we define a new data structure for simulating quantum circuits called the quantum information decision diagram (QuIDD). A QuIDD is a compressed graph representation of a vector or matrix and permits computations to be performed directly on the compressed data. We develop a comprehensive set of algorithms for operating on QuIDDs in both the state-vector and density-matrix formats, and evaluate their complexity. These algorithms have been implemented in a general-purpose simulator program for quantum-mechanical applications called QuIDDPro. Through extensive experiments conducted on representative quantum simulation applications, including Grover's search algorithm, error characterization, and reversible circuits, we demonstrate that QuIDDPro is faster than other existing quantum-mechanical simulators such as the National Institute of Standards and Technology's QCSim program, and is far more memory-efficient. Using QuIDDPro, we explore the advantages of quantum computation over classical computation, simulate quantum errors and error correction, and study the impact of numerical precision on the fidelity of simulations. We also develop several novel algorithms for testing quantum circuit equivalence and compare them empirically. The QuIDDPro software is equipped with a user-friendly interface and is distributed with numerous example scripts. It has been used as a laboratory supplement for quantum computing courses at several universities.
For many practical applications, Quantum computers offer major speed-ups over traditional machines. The production of quantum chips has recently made tremendous strides, with the quantity of Qubits increasing and fidelity increasing. The smallest unit of information is the binary digit i.e. bit in general computing. In Quantum Computing the term Qubit (Quantum Bit) is used for the same purpose. In order to differentiate between a classical bit and a Qubit, Bra-Ket or Dirac notation is used. So, the Qubits are represented as |0〉 and |1〉 and are often read as Ket 0 for zero state and Ket 1 for one state. In this paper mainly programming and application sides of Quantum Computing are focused. For that, Qiskit module and its tools are used in Python programming language. General circuit optimization scheme is given. The Quantum circuits with the concept of Quantum Gates implemented are stronger compared to the optimizing algorithm and with faster execution time. In addition, for prime factorization, access to IBM's Quantum computer is carried out successfully.
Unlike most classical algorithms that take an input and give the solution directly as an output, quantum algorithms produce a quantum circuit that works as an indirect solution to computationally hard problems. In the full quantum computing workflow, most data processing remains in the classical domain except for running the quantum circuit in the quantum processor. This leaves massive opportunities for classical automation and optimization toward future utilization of quantum computing. We kickstart the first step in this direction by introducing Q-gen, a high-level, parameterized quantum circuit generator incorporating 15 realistic quantum algorithms. Each customized generation function comes with algorithmspecific parameters beyond the number of qubits, providing a large generation volume with high circuit variability. To demonstrate the functionality of Q-gen, we organize the algorithms into 5 hierarchical systems and generate a quantum circuit dataset accompanied by their measurement histograms and state vectors. This dataset enables researchers to statistically analyze the structure, complexity, and performance of large-scale quantum circuits, or quickly train novel machine learning models without worrying about the exponentially growing simulation time. Q-gen is an open-source and multipurpose project that serves as the entrance for users with a classical computer science background to dive into the world of quantum computing.
In Section 1.3, we introduced the circuit model of (classical) computation. We restricted attention to reversible circuits since they can simulate any non-reversible circuit with modest overhead. This model can be generalized to a model of quantum circuits. In the quantum circuit model, we have logical qubits carried along ‘wires’, and quantum gates that act on the qubits. A quantum gate acting on n qubits has the input qubits carried to it by n wires, and n other wires carry the output qubits away from the gate. A quantum circuit is often illustrated schematically by a circuit diagram as shown in Figure 4.1. The wires are shown as horizontal lines, and we imagine the qubits propagating along the wires from left to right in time. The gates are shown as rectangular blocks. For convenience, we will restrict attention to unitary quantum gates (which are also reversible). Recall from Section 3.5.3 that non-unitary (non-reversible) quantum operations can be simulated by unitary (reversible) quantum gates if we allow the possibility of adding an ancilla and of discarding some output qubits. A circuit diagram describing a superoperator being implemented using a unitary operator is illustrated in Figure 4.2. In the example of Figure 4.1, the 4-qubit state |ψi⟩= |0⟩⊗ |0⟩⊗ |0⟩⊗ |0⟩ enters the circuit at the left (recall we often write this state as |ψi⟩ = |0⟩|0⟩|0⟩|0⟩ or |ψi⟩ = |0000⟩.) These qubits are processed by the gates U1, U2, U3, and U4. At the output of the circuit we have the collective (possibly entangled) 4-qubit state |ψf⟩. A measurement is then made of the resulting state. The measurement will often be a simple qubit-by-qubit measurement in the computational basis, but in some cases may be a more general measurement of the joint state. A measurement of a single qubit in the computational basis is denoted on a circuit diagram by a small triangle, as shown in Figure 4.1 (there are other symbols used in the literature, but we adopt this one). The triangle symbol will be modified for cases in which there is a need to indicate different types of measurements.R50