Sitemap

Designing Quantum Computing Systems and Setting Up the Qiskit Simulation Environment — Part 1

8 min readMay 15, 2025
Image Source: IBM

Recently, the quantum race among tech giants has become increasingly competitive, with Microsoft’s Majorana 1 and Google’s Willow quantum chips making headlines. According to reports published this week, Amazon is also rumored to join the race, signaling the start of a fascinating new era in quantum development.

Over the past six months, I’ve developed a strong interest in Quantum Computing and Quantum System Design. I completed the Quantum Computer Systems Design Professional Certificate program offered by the University of Chicago, which features outstanding content and challenging exercises. I’ve learned a wealth of valuable insights that I’m excited to share through this article series.

As you might already know, quantum computing is a computing paradigm with the potential to solve complex problems that are either extremely difficult or practically impossible for classical computers to handle. Unlike classical bits, quantum computers use quantum bits — or qubits — which leverage fundamental principles of quantum mechanics such as superposition and entanglement. This allows them to simulate many possible states simultaneously. Thanks to this unique capability, quantum computers are expected to revolutionize fields like drug discovery, material science, financial modeling, and complex optimization problems that are nearly infeasible for classical systems.

Source: https://www.researchgate.net/figure/Classical-bit-vs-qubit_fig2_366232947

In its simplest form, classical computing processes information using bits that represent either 0 or 1. Quantum computing, on the other hand, uses qubits, which can exist in a superposition — being both 0 and 1 at the same time. Through this phenomenon, qubits can also become entangled with each other, forming strong correlations that are fundamental to quantum computation. This key difference enables quantum computers to solve certain classes of problems exponentially faster than classical computers.

Now, turning our attention to Qiskit (Quantum Information Science Kit): Qiskit is an open-source quantum computing software development kit (SDK) developed by IBM. It allows quantum developers and researchers to design quantum circuits, run them on simulators (which we will set up shortly), or execute them on real quantum hardware. IBM Quantum provides both simulated and real quantum processing environments, with access to real quantum devices available at a rate of approximately $90 per minute.

Qiskit provides comprehensive support for developing, testing, and deploying quantum algorithms. In the following sections, we will explore the foundational concepts of quantum computing and Qiskit from a technical perspective, followed by practical implementations. But first, let’s focus on the fundamental principles of quantum mechanics.

Superposition

Source: https://physics.stackexchange.com/questions/582737/has-it-been-practically-proven-that-quantum-superposition-exists-if-yes-how-do

A quantum bit (qubit) can exist in both the 0 and 1 states simultaneously — a phenomenon known as superposition. Mathematically, the state of a qubit can be represented as a linear combination of the basis states |0⟩ and |1⟩:
|ψ⟩ = α|0⟩ + β|1⟩. Here, α and β are complex numbers that satisfy the normalization condition |α|² + |β|² = 1. The values |α|² and |β|² represent the probabilities of measuring the qubit in the states |0⟩ and |1⟩, respectively. This property enables quantum systems to explore multiple possibilities simultaneously, offering the foundation for parallel computation.

Quantum Entanglement

Entanglement is a quantum phenomenon in which two or more qubits become correlated in such a way that the state of one qubit is directly dependent on the state of another, regardless of the physical distance between them. Once entangled, the measurement of one qubit’s state immediately determines the state of the other.

To clarify this seemingly counterintuitive concept, consider a system of two entangled qubits: if one qubit is measured and found to be in the |0⟩ state, the other will instantly be found in the |1⟩ state (depending on the type of entanglement). This powerful form of correlation is one of the key resources that give quantum computers their advantage in specific tasks. Entanglement is also the foundational principle behind advanced quantum protocols such as quantum teleportation and quantum cryptography.

Source: Entanglement in a 20-Qubit Superconducting Quantum Computer, https://www.nature.com/articles/s41598-019-49805-7

Quantum Measurement

When a qubit is measured, its superposition collapses, and the qubit transitions into a definite classical state — either 0 or 1. The outcome of this measurement depends on the probability amplitudes defined in the superposition state. For instance, if a qubit is in the state
|ψ⟩ = α|0⟩ + β|1⟩,
then upon measurement, the result will be |0⟩ with probability |α|² and |1⟩ with probability |β|².

…I know this can feel abstract, so let’s try to explain it more intuitively;

When we measure a qubit, its mixed (superposed) state vanishes — it collapses — and the qubit takes on a definite value: either 0 or 1. The coefficients α (alpha) and β (beta) represent how “close” the qubit is to being in either of those states. The squares of the magnitudes, |α|² and |β|², give us the probabilities of observing each respective state when a measurement is made.

For example:
If |α|² = 0.8 and |β|² = 0.2, then measuring the qubit will yield the value 0 with an 80% probability, and 1 with a 20% probability.

Measurement is an irreversible operation that fundamentally alters the quantum state of a qubit. This irreversible collapse is an inherent characteristic of quantum information processing. Therefore, when designing quantum algorithms, the timing and strategy of measurement must be planned carefully.

The Concept of a Qubit and Its Mathematical Representation

The state of a qubit is often visualized using a geometric model called the Bloch Sphere. In this representation, the |0⟩ state corresponds to the north pole, and the |1⟩ state corresponds to the south pole. Any superposition of a single qubit can be visualized as a point on the surface of this sphere.

Mathematically, a qubit’s state is represented as a vector in a two-dimensional complex vector space. For instance:

  • The state |0⟩ is represented as the vector (1, 0)
  • The state |1⟩ is represented as the vector (0, 1)

This abstract yet powerful model helps us visualize and manipulate qubit states as we design and simulate quantum circuits.

Source: https://stem.mitre.org/quantum/quantum-concepts/bloch-sphere.html

For a more in-depth exploration, I highly recommend this comprehensive article by MITRE.

Quantum Gates and Circuits

Just like logic gates in classical computers, quantum computers use quantum gates to manipulate the states of qubits. Quantum gates perform unitary transformations on qubits, which means that every operation is reversible by nature.

Some of the fundamental single-qubit gates include:

  • Hadamard (H) gate
  • Pauli-X (NOT) gate
  • Pauli-Y gate
  • Pauli-Z gate
Source: https://hgmin1159.github.io/quantum/quantum2_eng/

The Hadamard gate transforms a qubit from a basis state (|0⟩ or |1⟩) into an equal superposition state, such as (|0⟩ + |1⟩)/√2 or (|0⟩ − |1⟩)/√2. Among two-qubit gates, one of the most important is the Controlled-NOT (CNOT) gate. The CNOT gate changes the state of a target qubit depending on the state of a control qubit.

By applying these quantum gates to qubits in a specific sequence, quantum circuits are formed. These circuits are designed to implement specific quantum algorithms.

The Architecture and Components of the Qiskit Ecosystem

Source: IBM

Qiskit (Quantum Information Science Kit) was first released by IBM in March 2017 as an open-source project. Its primary goal was to democratize access to quantum computers and simplify the development of quantum algorithms. Since its launch, Qiskit has rapidly grown in popularity, supported by a thriving community, and the software has continuously evolved with new features and improvements. It serves as a versatile platform for both beginners and experienced researchers, and is widely used in academic research, education, and industrial applications.

Qiskit is designed with a modular architecture, comprising several core components that are specialized for different tasks. These components provide users with the tools they need at various stages of the quantum programming workflow.

Qiskit Terra: Core Quantum Programming Infrastructure

Qiskit Terra forms the foundation of the Qiskit ecosystem. It provides the essential data structures and functions needed to create, manipulate, and optimize quantum circuits. Terra handles tasks such as defining quantum gates, managing qubits, and compiling quantum circuits to different hardware backends through a process known as transpilation.

Source: https://quantumcomputing.stackexchange.com/questions/22047/what-is-the-difference-between-qiskit-terra-aer-ignis-and-aqua

It also provides an interface for running quantum programs on both simulators and real quantum processors. Terra’s flexibility allows users to easily design their own quantum algorithms and experiments.

Qiskit Aer: Simulation Tools

Qiskit Aer provides high-performance simulators for emulating quantum circuits on classical computers. These simulators are essential for users who do not have access to real quantum hardware or who wish to test and debug their circuits before running them on actual devices. Aer supports several types of simulation backends:

  • Statevector Simulator: Computes the full state vector of a quantum circuit. It is ideal for small systems and allows for detailed analysis of the entire quantum state.
  • QASM Simulator (Quantum Assembly Language Simulator): Emulates the behavior of a quantum circuit as if it were executed on a real quantum computer, generating probabilistic measurement outcomes. It is more efficient for larger circuits and can incorporate realistic noise models.
  • Unitary Simulator: Calculates the unitary transformation matrix that a given circuit applies.
  • Pulse Simulator: Enables low-level simulations closer to the physical hardware by modeling the actual control pulses applied to qubits, yielding more realistic results.

Qiskit Aer allows users to study the behavior of quantum circuits under both ideal conditions and noisy environments, providing a critical toolset for algorithm development and verification.

Qiskit Runtime: Executing on Quantum Processors

Qiskit Runtime is designed to execute quantum programs on IBM Quantum processors with improved performance and efficiency. By more tightly integrating classical and quantum computations, it minimizes latency and enables more complex workflows. Qiskit Runtime allows users to submit precompiled and optimized quantum programs directly to IBM’s quantum systems.

It also facilitates the application of advanced techniques such as error mitigation, improving the accuracy of results from quantum experiments. This is especially beneficial for hybrid quantum-classical algorithms, such as variational quantum algorithms (VQAs), where iterative optimization between classical and quantum components is essential.

I hope this explanation has been informative and helpful. In the next part of this article series, we’ll explore:

  • Setting up the Qiskit environment
  • Designing and simulating quantum circuits
  • Implementing quantum algorithms
  • Performing quantum computations in practice

See you soon, friends!

Source: https://giphy.com/gifs/orbit-atom-artificial-UtVjgQuWRwyIUuZA2Y

--

--

Alican Kiraz
Alican Kiraz

Written by Alican Kiraz

Head of Cyber Defense Center @Trendyol | CSIE | CSAE | CCISO | CASP+ | OSCP | eCIR | CPENT | eWPTXv2 | eCDFP | eCTHPv2 | OSWP | CEH Master | Pentest+ | CySA+

No responses yet