What is Qiskit?

Qiskit (Quantum Information Software Kit) is an open-source SDK developed by IBM for working with quantum computers at all levels — from circuit design and simulation to execution on real IBM Quantum hardware.

With Qiskit, you can:

  • Build quantum circuits programmatically in Python.
  • Simulate circuits locally with noise models or on high-performance clusters.
  • Run circuits on real quantum processors via the cloud.
  • Leverage pre-built libraries for optimization, ML, chemistry, and finance.
q0 q1

Fig. 1 – Example of a quantum circuit in Qiskit

1. History & Evolution

Launched in 2017, Qiskit was one of the first widely adopted quantum SDKs. Originally it was structured into four main packages:

  • Terra – Core framework for circuits & transpilation.
  • Aer – High-performance simulator.
  • Ignis – Error correction & mitigation (now replaced by Experiments).
  • Aqua – Algorithms for chemistry, ML, finance (now split into specialized modules).

Over time, IBM and the community streamlined Qiskit into modular application packages and emphasized cloud-based runtime services.

2. Core Architecture

At its core, Qiskit revolves around the QuantumCircuit class:

  • Define qubits, classical bits, and registers.
  • Add gates (Hadamard, CNOT, RX, etc.).
  • Simulate or execute on hardware.
  • Analyze results with visualization tools.
from qiskit import QuantumCircuit
qc = QuantumCircuit(2, 2)
qc.h(0)
qc.cx(0,1)
qc.measure([0,1],[0,1])
qc.draw('mpl')
                    

3. Typical Workflow

edit

Design

Build quantum circuits using Python APIs.

build

Transpile

Optimize circuits for target backend.

rocket

Execute

Run on simulators or real quantum hardware.

4. Application Modules

  • Qiskit Nature – Molecular simulation & quantum chemistry.
  • Qiskit Finance – Portfolio optimization, risk modeling.
  • Qiskit Optimization – Combinatorial optimization problems.
  • Qiskit Machine Learning – Quantum neural networks, kernels.

5. Qiskit Runtime

Qiskit Runtime is IBM’s cloud-based execution engine, enabling near-real-time quantum-classical hybrid workflows. It reduces overhead by executing multiple circuits in one session.

Qiskit Client IBM Quantum Backend

Fig. 2 – Qiskit Runtime execution flow

6. Ecosystem & Add-ons

Beyond IBM’s official modules, Qiskit has a thriving ecosystem:

  • mthree – Measurement error mitigation.
  • Qiskit Metal – Quantum device design & layout.
  • Qiskit Experiments – Calibration & error mitigation workflows.

7. Example: Bell State

from qiskit import QuantumCircuit, Aer, transpile, assemble, execute

qc = QuantumCircuit(2, 2)
qc.h(0)
qc.cx(0,1)
qc.measure([0,1],[0,1])

sim = Aer.get_backend('qasm_simulator')
compiled = transpile(qc, sim)
qobj = assemble(compiled)
result = execute(qc, sim, shots=1024).result()
print(result.get_counts())
            

This code creates a maximally entangled Bell state and simulates it.

8. FAQ

Is Qiskit free to use?

Yes, it is open-source and free. Cloud access to real devices has a free tier and premium plans.

Do I need a quantum computer?

No, Qiskit includes simulators. But you can also access IBM Quantum real devices via the cloud.

9. Further Resources