liveBook · Manning

Quantum programming

As explained in Quantum Programming in Depth

Quantum programming is the development of programs that specify or control computations on quantum systems.

Quantum programming develops programs that specify or control quantum computations. Practical applications commonly combine quantum subroutines with classical code, so development involves tightly coupled quantum and classical components. section 1.3.4

A quantum programming workflow typically includes:

  • Designing and implementing an algorithm, including both quantum and classical portions when appropriate. section 1.3.4
  • Validating correctness with unit tests and quantum simulators, which expose internal states on small problem instances. section 1.3.4 section 1.5
  • Estimating qubit, gate, and noise requirements before running a program on limited quantum hardware. section 1.3.4
Figure 1.4 Quantum application software development workflow. From the developer perspective, it is similar to the classical software development workflow, with some differences to account for the nature of quantum computing. For example, using quantum simulators instead of the hardware makes testing quantum code on small problems faster and easier because it eliminates the need to account for noise.
figure

The workflow diagram maps quantum application development from algorithm implementation through testing, resource evaluation, and execution, highlighting simulator-assisted validation. section 1.3.4

Hands-on quantum projects

Projects can implement quantum-library routines such as state preparation and unitary transformations, or apply algorithms such as eigenvalue estimation and Grover search to simple puzzles. Mathematical reasoning leads to tested implementations in Qiskit and Q#. section 1.5

How Quantum Programming in Depth covers it

How deep it goes
Covers algorithm design, implementation, testing, simulation, and resource estimation, while stopping short of exhaustive foundational instruction.
Examples
Uses state preparation, unitary transformation, eigenvalue estimation, and Grover search as implementation projects.
What it assumes
Assumes enough mathematics to reason about quantum solutions, while teaching quantum computing through concrete problems rather than extensive physics instruction.
What you can do after
Builds and tests introductory quantum algorithms in Qiskit and Q#, then evaluates their resource demands.
How it connects
Connects quantum programming with hybrid algorithms, quantum simulators, unit testing, resource estimation, and quantum algorithm design.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Quantum Programming in Depth. The section links point to the parts of the book it draws on.