# IBM Quantum Platform

Get access to the world’s largest and most performant fleet of quantum computers via the Qiskit Runtime service.

## Documentation

The documentation for Qiskit, its related packages, and IBM Quantum® Platform. This documentation includes how-to guides to get you started on our tools, specific use-case tutorials that include end-to-end examples, and a collection of API references.

Qiskit provides a modular and extensible framework for quantum research and development across algorithms, high-performance computing, and quantum information science. With it, researchers can build, optimize, and execute quantum workflows with specialized addons, software tools, and extensive resources. Through IBM Quantum Platform, users can access quantum compute services, such as Qiskit Runtime and the Qiskit Functions Catalog, to run workloads efficiently on the IBM® fleet of quantum computers.

### API References

- [Qiskit SDK](/docs/en/api/qiskit.md)
- [Qiskit SDK C API](/docs/en/api/qiskit-c.md)
- [Qiskit Runtime client](/docs/en/api/qiskit-ibm-runtime.md)
- [Qiskit Functions](/docs/en/api/functions.md)
- [Qiskit Runtime REST API](/docs/api/qiskit-runtime-rest.md)
- [IBM Quantum System REST API](/docs/api/quantum-system-rest.md)
- [Approximate quantum compilation (AQC-Tensor)](/docs/en/api/qiskit-addon-aqc-tensor.md)
- [Circuit cutting](/docs/en/api/qiskit-addon-cutting.md)
- [Multi-product formulas (MPF)](/docs/en/api/qiskit-addon-mpf.md)
- [Operator backpropagation (OBP)](/docs/en/api/qiskit-addon-obp.md)
- [Qiskit Paulice](/docs/en/api/qiskit-addon-paulice.md)
- [Qiskit propagated noise absorption](/docs/en/api/qiskit-addon-pna.md)
- [Sample-based quantum diagonalization (SQD)](/docs/en/api/qiskit-addon-sqd.md)
- [Qiskit addon utilities](/docs/en/api/qiskit-addon-utils.md)
- [Qiskit Transpiler Service](/docs/en/api/qiskit-ibm-transpiler.md)
- [Error code registry](/docs/api/errors.md)


### Documentation

- Get started
  - [Introduction](/docs/guides.md)
  - [Quickstart](/docs/guides/quick-start.md)
  - [IBM Quantum Composer](/docs/guides/composer.md)
  - [Changelog](/docs/guides/latest-updates.md)
- Qiskit
  - [Introduction to Qiskit](/docs/guides/tools-intro.md)
  - Install
    - [Install Qiskit](/docs/guides/install-qiskit.md)
    - [Install the Qiskit SDK from source](/docs/guides/install-qiskit-source.md)
    - [Configure the Qiskit SDK locally](/docs/guides/configure-qiskit-local.md)
    - [Install the Qiskit C API](/docs/guides/install-c-api.md)
    - [Extend Qiskit in Python with C](/docs/guides/c-extension-for-python.md)
    - [Online lab environments](/docs/guides/online-lab-environments.md)
  - Circuits and operators
    - [Overview](/docs/guides/construct-circuits.md)
    - [Circuit library](/docs/guides/circuit-library.md)
    - [Save circuits to disk](/docs/guides/save-circuits.md)
    - [Measure qubits](/docs/guides/measure-qubits.md)
    - Operators module
      - [Overview of operator classes](/docs/guides/operators-overview.md)
      - [The Operator class](/docs/guides/operator-class.md)
      - [Synthesize unitary operators](/docs/guides/synthesize-unitary-operators.md)
      - [Specify observables in the Pauli basis](/docs/guides/specify-observables-pauli.md)
    - Advanced circuit building
      - [Deferred timing resolution using stretch](/docs/guides/stretch.md)
      - [Classical feedforward and control flow](/docs/guides/classical-feedforward-and-control-flow.md)
      - [Bit-ordering in the Qiskit SDK](/docs/guides/bit-ordering.md)
    - OpenQASM
      - [Intro to OpenQASM](/docs/guides/introduction-to-qasm.md)
      - [OpenQASM 2 and the Qiskit SDK](/docs/guides/interoperate-qiskit-qasm2.md)
      - [OpenQASM 3 and the Qiskit SDK](/docs/guides/interoperate-qiskit-qasm3.md)
      - [OpenQASM 3 feature table](/docs/guides/qasm-feature-table.md)
      - [OpenQASM 3.x live specification](https://openqasm.com/)
  - Transpilation
    - [Introduction to transpilation](/docs/guides/transpile.md)
    - [Transpiler stages](/docs/guides/transpiler-stages.md)
    - [Transpile with pass managers](/docs/guides/transpile-with-pass-managers.md)
    - [Create a pass manager for dynamical decoupling](/docs/guides/dynamical-decoupling-pass-manager.md)
    - Configure preset pass managers
      - [Default settings and configuration options](/docs/guides/defaults-and-configuration-options.md)
      - [Set optimization level](/docs/guides/set-optimization.md)
      - [Commonly used parameters for transpilation](/docs/guides/common-parameters.md)
      - [Represent quantum computers for the transpiler](/docs/guides/represent-quantum-computers.md)
    - [Compare transpiler settings](/docs/guides/circuit-transpilation-settings.md)
    - Advanced transpilation resources
      - [Write a custom transpiler pass](/docs/guides/custom-transpiler-pass.md)
      - [Create and transpile against custom backends](/docs/guides/custom-backend.md)
      - [Install and use transpiler plugins](/docs/guides/transpiler-plugins.md)
      - [Create a transpiler plugin](/docs/guides/create-transpiler-plugin.md)
      - [Work with DAGs in transpiler passes](/docs/guides/DAG-representation.md)
      - [AI-powered transpiler passes](/docs/guides/ai-transpiler-passes.md)
  - Primitives
    - [Introduction to primitives](/docs/guides/primitives.md)
    - [Primitive inputs and outputs](/docs/guides/primitive-input-output.md)
    - [Get started with the backend primitives](/docs/guides/get-started-with-backend-primitives.md)
    - [Exact simulation with Qiskit SDK primitives](/docs/guides/simulate-with-qiskit-sdk-primitives.md)
  - Debugging
    - Simulate circuits with noise
      - [Introduction](/docs/guides/debugging-tools.md)
      - [Exact and noisy simulation with Qiskit Aer primitives](/docs/guides/simulate-with-qiskit-aer.md)
      - [Exact simulation with Qiskit SDK primitives](/docs/guides/simulate-with-qiskit-sdk-primitives.md)
      - [Build noise models](/docs/guides/build-noise-models.md)
      - [Efficient simulation of stabilizer circuits with Qiskit Aer primitives](/docs/guides/simulate-stabilizer-circuits.md)
    - Visualization
      - [Visualize circuits](/docs/guides/visualize-circuits.md)
      - [Visualize circuit timing](/docs/guides/visualize-circuit-timing.md)
      - [Plot quantum states](/docs/guides/plot-quantum-states.md)
      - [Visualize results](/docs/guides/visualize-results.md)
  - [Advanced techniques - Qiskit addons](/docs/guides/addons.md)
  - [Integrate external quantum resources with Qiskit](/docs/guides/create-a-provider.md)
  - Integrations
    - [Quantum resource management interface (QRMI)](/docs/guides/qrmi.md)
    - [SPANK plugin for QRMI](/docs/guides/slurm-plugin.md)
    - [SPANK plugin user guide](/docs/guides/slurm-hpc-ux.md)
    - [Qiskit MCP servers](/docs/guides/qiskit-mcp-servers.md)
  - [Qiskit Code Assistant](/docs/guides/qiskit-code-assistant.md)
- IBM Quantum Compute
  - [Introduction to IBM Quantum services](/docs/guides/compute-services.md)
  - Install
    - [Install the Qiskit Runtime client](/docs/guides/install-qiskit-runtime.md)
    - [Install the Qiskit Runtime client from source](/docs/guides/install-qiskit-runtime-source.md)
  - [Run your first circuit on hardware](/docs/guides/hello-world.md)
  - IBM Quantum Platform
    - Set up IBM Quantum Platform
      - [Set up your IBM Cloud account](/docs/guides/cloud-setup.md)
      - [Set up your IBM Cloud account - invited users](/docs/guides/cloud-setup-invited.md)
      - [Set up your IBM Cloud account in an untrusted environment](/docs/guides/cloud-setup-untrusted.md)
      - [Set up to use IBM Quantum Platform with REST API](/docs/guides/cloud-setup-rest-api.md)
      - [Save your login credentials](/docs/guides/save-credentials.md)
      - [Initialize your Qiskit Runtime service account](/docs/guides/initialize-account.md)
      - [Create a Classroom Account](/docs/guides/classroom-accounts.md)
      - Set up for an organization
        - [Setup considerations](/docs/guides/considerations-set-up-runtime.md)
        - [Configure IBM Quantum Platform](/docs/guides/quickstart-steps-org.md)
    - IBM Quantum plans
      - [Plans overview](/docs/guides/plans-overview.md)
      - [Upgrade from the Open Plan](/docs/guides/upgrade-from-open.md)
      - [Manage cost on the Pay-As-You-Go Plan](/docs/guides/manage-cost.md)
    - Work with instances
      - [Create and manage instances](/docs/guides/instances.md)
      - [Set allocation limits](/docs/guides/allocation-limits.md)
      - [Use IBM Cloud Resource Controller API to manage instances](/docs/guides/access-instances-platform-apis.md)
    - Accounts, access groups, and policies
      - [Cloud account structure](/docs/guides/cloud-account-structure.md)
      - [Create access groups and policies](/docs/guides/access-groups.md)
      - [Set up custom roles](/docs/guides/custom-roles.md)
    - Manage users
      - [Invite users and manage access](/docs/guides/invite-and-manage-users.md)
      - [Manage ID provider users](/docs/guides/manage-appid.md)
      - [Manage IBM Cloud users](/docs/guides/manage-cloud-users.md)
    - [Logging](/docs/guides/logging.md)
  - Execute with primitives
    - [Introduction to primitives](/docs/guides/qiskit-runtime-primitives.md)
    - [Directed execution model (beta)](/docs/guides/directed-execution-model.md)
    - [Introduction to options](/docs/guides/runtime-options-overview.md)
    - Estimator
      - [Get started](/docs/guides/get-started-with-estimator.md)
      - [Inputs and outputs](/docs/guides/estimator-input-output.md)
      - [Options](/docs/guides/estimator-options.md)
      - [Configure noise management](/docs/guides/estimator-noise-management.md)
      - [Examples](/docs/guides/estimator-examples.md)
      - [REST API](/docs/guides/estimator-rest-api.md)
    - Sampler
      - [Get started](/docs/guides/get-started-with-sampler.md)
      - [Inputs and outputs](/docs/guides/sampler-input-output.md)
      - [Options](/docs/guides/sampler-options.md)
      - [Configure noise management](/docs/guides/sampler-noise-management.md)
      - [Examples](/docs/guides/sampler-examples.md)
      - [REST API](/docs/guides/sampler-rest-api.md)
    - Executor
      - [Get started](/docs/guides/get-started-with-executor.md)
      - [Inputs and outputs](/docs/guides/executor-input-output.md)
      - [Broadcasting](/docs/guides/executor-broadcasting.md)
      - [Options](/docs/guides/executor-options.md)
      - [Examples](/docs/guides/executor-examples.md)
    - Manage noise
      - [Overview of noise management techniques](/docs/guides/error-mitigation-overview.md)
      - [Error mitigation and suppression](/docs/guides/error-mitigation-and-suppression-techniques.md)
      - [Noise learning](/docs/guides/noise-learning.md)
      - [Use postselection in workloads](/docs/guides/post-selection.md)
    - [Debug Qiskit Runtime jobs](/docs/guides/debug-qiskit-runtime-jobs.md)
    - [Qiskit Runtime local testing mode](/docs/guides/local-testing-mode.md)
  - Advanced execution features
    - [Fractional gates](/docs/guides/fractional-gates.md)
    - [Execute dynamic circuits](/docs/guides/execute-dynamic-circuits.md)
    - [Visualize circuit timing](/docs/guides/qiskit-runtime-circuit-timing.md)
  - IBM quantum computers
    - [Processor types](/docs/guides/processor-types.md)
    - [View backend details](/docs/guides/qpu-information.md)
    - [Monitoring, calibrations, and benchmarking](/docs/guides/calibration-jobs.md)
    - [Qubit initialization](/docs/guides/repetition-rate-execution.md)
    - [Retired cloud QPUs](/docs/guides/retired-qpus.md)
    - [Fair-share scheduler](/docs/guides/fair-share-scheduler.md)
    - [View cost](/docs/guides/view-cost.md)
  - Manage workload execution
    - [Monitor or cancel a job](/docs/guides/monitor-job.md)
    - [Workload usage](/docs/guides/estimate-job-run-time.md)
    - [Minimize job run time](/docs/guides/minimize-time.md)
    - [Maximum execution time](/docs/guides/max-execution-time.md)
    - [Job limits](/docs/guides/job-limits.md)
    - [Organize and search by job tags](/docs/guides/add-job-tags.md)
    - [Retrieve and save job results](/docs/guides/save-jobs.md)
  - Execution modes
    - [Introduction to execution modes](/docs/guides/execution-modes.md)
    - [Choose the right execution mode](/docs/guides/choose-execution-mode.md)
    - [Run jobs in a batch](/docs/guides/run-jobs-batch.md)
    - [Run jobs in a session](/docs/guides/run-jobs-session.md)
    - [Execution modes using REST API](/docs/guides/execution-modes-rest-api.md)
    - [Execution modes FAQ](/docs/guides/execution-modes-faq.md)
  - Qiskit Serverless
    - [Introduction to Qiskit Serverless](/docs/guides/serverless.md)
    - [Write your first Qiskit Serverless program](/docs/guides/serverless-first-program.md)
    - [Run your first Qiskit Serverless workload remotely](/docs/guides/serverless-run-first-workload.md)
    - [Manage Qiskit Serverless compute and data resources](/docs/guides/serverless-manage-resources.md)
    - [Port code to Qiskit Serverless](/docs/guides/serverless-port-code.md)
- Applications research tools
  - [Introduction to Qiskit Functions](/docs/guides/functions.md)
  - [Get started with Qiskit Functions](/docs/guides/functions-get-started.md)
  - Circuit functions
    - [Algorithmiq Tensor-network error mitigation](/docs/guides/algorithmiq-tem.md)
    - [Q-CTRL Performance Management](/docs/guides/q-ctrl-performance-management.md)
    - [Qedma QESEM](/docs/guides/qedma-qesem.md)
  - Application functions
    - [Kipu Quantum Iskay Quantum Optimizer](/docs/guides/kipu-optimization.md)
    - [Multiverse Computing Singularity](/docs/guides/multiverse-computing-singularity.md)
    - [Q-CTRL Optimization Solver](/docs/guides/q-ctrl-optimization-solver.md)
    - [Quantum Portfolio Optimizer: A Qiskit Function by Global Data Quantum](/docs/guides/global-data-quantum-optimizer.md)
    - [QUICK-PDE: A Qiskit Function by ColibriTD](/docs/guides/colibritd-pde.md)
    - [Qunova Computing HI-VQE Chemistry](/docs/guides/qunova-chemistry.md)
  - Qiskit Function templates
    - [Introduction to Qiskit Function templates](/docs/guides/qiskit-function-templates.md)
    - [Template for chemistry simulation](/docs/guides/function-template-chemistry-workflow.md)
    - [Template for Hamiltonian simulation](/docs/guides/function-template-hamiltonian-simulation.md)
  - [Sample-based quantum diagonalization (SQD)](/docs/addons/qiskit-addon-sqd.md)
- Additional resources
  - Support and FAQ
    - [Support](/docs/guides/support.md)
    - [Frequently-asked questions](/docs/guides/faq.md)
  - [Development workflow](/docs/guides/intro-to-patterns.md)
  - Migration guides
    - Migrate to Qiskit 2.0
      - [Qiskit v2.0 migration guide](/docs/guides/qiskit-2.0.md)
      - [Migrate from BackendV1 to BackendV2](/docs/guides/qiskit-backendv1-to-v2.md)
    - Migrate to Qiskit 1.0
      - [Introduction](/docs/guides/qiskit-1.0.md)
      - [Understand the breaking package changes](/docs/guides/metapackage-migration.md)
      - [Install the new Qiskit v1.0 package](/docs/guides/qiskit-1.0-installation.md)
      - [Qiskit v1.0 feature changes](/docs/guides/qiskit-1.0-features.md)
    - [Migrate from Qiskit Pulse to fractional gates](/docs/guides/pulse-migration.md)
    - [Migrate to the Qiskit Runtime V2 primitives](/docs/guides/v2-primitives.md)
    - [Migrate to local simulators](/docs/guides/local-simulators.md)
  - Open-source resources
    - [Introduction](/docs/guides/open-source.md)
    - [Code of conduct](/docs/guides/code-of-conduct.md)
    - Contributor license agreements
      - [Individual contributor](/docs/open-source/qiskit-cla.pdf.md)
      - [Corporate contributor](/docs/open-source/qiskit-corporate-cla.pdf.md)
    - Qiskit SDK
      - [Version strategy](/docs/guides/qiskit-sdk-version-strategy.md)
      - [Contributor guide](https://github.com/Qiskit/qiskit/blob/main/CONTRIBUTING.md)
      - [Maintainer guide](https://github.com/Qiskit/qiskit/blob/main/MAINTAINING.md)
    - [Qiskit ecosystem](https://www.ibm.com/quantum/ecosystem)
  - Security and compliance
    - [Securing your data](/docs/guides/secure-data.md)
    - [Understanding your responsibilities when using Qiskit Runtime](/docs/guides/responsibilities.md)
    - [Use virtual private endpoints for VPC](/docs/guides/virtual-private-endpoints.md)
    - [High availability and disaster recovery](/docs/guides/ha-dr.md)
    - [Activity tracking events for Qiskit Runtime](/docs/guides/observability-runtime-rest.md)
    - [Activity tracking events for the IBM Quantum System service](/docs/guides/observability-quantum-system.md)
    - [Repository security policies](/docs/guides/security-policies.md)
    - [Protecting Qiskit Runtime Service resources with context-based restrictions](/docs/guides/context-based-restrictions.md)


### Tutorials

- Get started
  - [Overview](/docs/tutorials.md)
  - [CHSH inequality](/docs/tutorials/chsh-inequality.md)
- Explore workflows toward advantage
  - Verifiable sampling algorithms
    - [Sample-based quantum diagonalization of a chemistry Hamiltonian](/docs/tutorials/sample-based-quantum-diagonalization.md)
    - [Sample-based Krylov quantum diagonalization of a fermionic lattice model](/docs/tutorials/sample-based-krylov-quantum-diagonalization.md)
    - [Quantum approximate optimization algorithm](/docs/tutorials/quantum-approximate-optimization-algorithm.md)
    - [Advanced techniques for QAOA](/docs/tutorials/advanced-techniques-for-qaoa.md)
    - [Warm-start QAOA with the Optimization Mapper Qiskit addon](/docs/tutorials/warm-start-qaoa.md)
    - [Pauli correlation encoding to reduce Max-Cut requirements](/docs/tutorials/pauli-correlation-encoding-for-qaoa.md)
    - [Implicit solvent calculations using Qiskit Serverless](/docs/tutorials/implicit-solvent-calculations.md)
  - Observable estimation
    - [Simulate neutron scattering in quantum materials with quantum circuits](/docs/tutorials/simulate-neutron-scattering.md)
    - [Krylov quantum diagonalization of lattice Hamiltonians](/docs/tutorials/krylov-quantum-diagonalization.md)
    - [Nishimori phase transition](/docs/tutorials/nishimori-phase-transition.md)
    - [Ground-state energy estimation of the Heisenberg chain with VQE](/docs/tutorials/spin-chain-vqe.md)
    - [Quantum kernel training](/docs/tutorials/quantum-kernel-training.md)
    - [Enhance feature classification using projected quantum kernels](/docs/tutorials/projected-quantum-kernels.md)
    - [Observation of robust and coherent non-Abelian hadron dynamics on noisy quantum processors](/docs/tutorials/loop-string-hadron-dynamics.md)
  - Fault-tolerant algorithms
    - [Shor's algorithm](/docs/tutorials/shors-algorithm.md)
    - [Grover's algorithm](/docs/tutorials/grovers-algorithm.md)
- Leverage Qiskit capabilities
  - Workload optimization
    - [Benchmark dynamic circuits with cut Bell pairs](/docs/tutorials/edc-cut-bell-pair-benchmarking.md)
    - [Quantum kernels with fractional gates](/docs/tutorials/fractional-gates.md)
    - [Qiskit AI-powered transpiler introduction](/docs/tutorials/ai-transpiler-introduction.md)
    - [Transpilation optimization with SABRE](/docs/tutorials/transpilation-optimizations-with-sabre.md)
    - [Long-range entanglement with dynamic circuits](/docs/tutorials/long-range-entanglement.md)
    - [Compilation methods for Hamiltonian simulation circuits](/docs/tutorials/compilation-methods-for-hamiltonian-simulation-circuits.md)
    - [Simulation of kicked Ising Hamiltonian with dynamic circuits](/docs/tutorials/dc-hex-ising.md)
  - Qiskit Functions
    - [Dynamic portfolio optimization with Global Data Quantum's Portfolio Optimizer](/docs/tutorials/global-data-quantum-optimizer.md)
    - [Higher-order binary optimization with Q-CTRL's Optimization Solver](/docs/tutorials/solve-higher-order-binary-optimization-problems-with-q-ctrls-optimization-solver.md)
    - [Model a flowing non-viscous fluid using QUICK-PDE](/docs/tutorials/colibritd-pde.md)
    - [Dissociation PES curves with Qunova HiVQE](/docs/tutorials/qunova-hivqe.md)
    - [Transverse-Field Ising Model with Q-CTRL's Performance Management](/docs/tutorials/transverse-field-ising-model.md)
    - [Quantum Phase Estimation with Q-CTRL's Qiskit Functions](/docs/tutorials/quantum-phase-estimation-qctrl.md)
    - [Solve the Market Split problem with Kipu Quantum's Iskay Quantum Optimizer](/docs/tutorials/solve-market-split-problem-with-iskay-quantum-optimizer.md)
    - [Hybrid quantum-enhanced ensemble classification (grid stability workflow)](/docs/tutorials/sml-classification.md)
    - [Simulate 2D tilted-field Ising with the QESEM function](/docs/tutorials/qedma-2d-ising-with-qesem.md)
    - [Simulate a kicked Ising model with the TEM function](/docs/tutorials/simulate-kicked-ising-tem.md)
  - Qiskit addons
    - [Multi-product formulas to reduce Trotter error](/docs/tutorials/multi-product-formula.md)
    - [Approximate quantum compilation for time evolution circuits](/docs/tutorials/approximate-quantum-compilation-for-time-evolution.md)
    - [Operator backpropagation (OBP) for estimation of expectation values](/docs/tutorials/operator-back-propagation.md)
    - [Wire cutting for expectation values estimation](/docs/tutorials/wire-cutting.md)
    - [Circuit cutting for periodic boundary conditions](/docs/tutorials/periodic-boundary-conditions-with-circuit-cutting.md)
    - [Circuit cutting for depth reduction](/docs/tutorials/depth-reduction-with-circuit-cutting.md)
    - [Readout error mitigation for the Sampler primitive using M3](/docs/tutorials/readout-error-mitigation-sampler.md)
  - Error mitigation
    - [Utility-scale error mitigation with probabilistic error amplification](/docs/tutorials/probabilistic-error-amplification.md)
    - [Combine error mitigation options with the Estimator primitive](/docs/tutorials/combine-error-mitigation-techniques.md)
    - [Probabilistic error cancellation with shaded lightcones](/docs/tutorials/pec-with-shaded-lightcones.md)
    - [Improve expectation values with propagated noise absorption (PNA)](/docs/tutorials/propagated-noise-absorption.md)
    - [Real-time benchmarking for qubit selection](/docs/tutorials/real-time-benchmarking-for-qubit-selection.md)
  - Error detection
    - [Repetition codes](/docs/tutorials/repetition-codes.md)
    - [Low-overhead error detection with spacetime codes](/docs/tutorials/ghz-spacetime-codes.md)


## Learning

### Modules

Explore a suite of instructional modules designed to help incorporate quantum computing into traditional STEM courses.

#### Qiskit in the classroom - computer science

- [Overview](/learning/modules/computer-science.md)
- Modules
  - [The Deutsch-Jozsa algorithm](/learning/modules/computer-science/deutsch-jozsa.md)
  - [Grover's algorithm](/learning/modules/computer-science/grovers.md)
  - [Quantum teleportation](/learning/modules/computer-science/quantum-teleportation.md)
  - [Quantum key distribution](/learning/modules/computer-science/quantum-key-distribution.md)
  - [Shor's algorithm](/learning/modules/computer-science/shors-algorithm.md)
  - [Quantum Fourier transform](/learning/modules/computer-science/qft.md)
  - [Variational quantum eigensolver](/learning/modules/computer-science/vqe.md)


#### Qiskit in the classroom - quantum mechanics

- [Overview](/learning/modules/quantum-mechanics.md)
- Modules
  - [Get started with Qiskit in the classroom](/learning/modules/quantum-mechanics/get-started-with-qiskit.md)
  - [Superposition with Qiskit](/learning/modules/quantum-mechanics/superposition-with-qiskit.md)
  - [Stern-Gerlach measurements with Qiskit](/learning/modules/quantum-mechanics/stern-gerlach-measurements-with-qiskit.md)
  - [Exploring uncertainty with Qiskit](/learning/modules/quantum-mechanics/exploring-uncertainty-with-qiskit.md)
  - [Bell's inequality with Qiskit](/learning/modules/quantum-mechanics/bells-inequality-with-qiskit.md)


### Courses

Start learning and applying quantum computing with Qiskit through our library of courses from leading experts.

#### Basics of quantum information

- [Overview](/learning/courses/basics-of-quantum-information.md)
- Lessons
  - Single systems
    - [Introduction](/learning/courses/basics-of-quantum-information/single-systems/introduction.md)
    - [Classical information](/learning/courses/basics-of-quantum-information/single-systems/classical-information.md)
    - [Quantum information](/learning/courses/basics-of-quantum-information/single-systems/quantum-information.md)
    - [Qiskit implementation](/learning/courses/basics-of-quantum-information/single-systems/qiskit-implementation.md)
  - Multiple systems
    - [Introduction](/learning/courses/basics-of-quantum-information/multiple-systems/introduction.md)
    - [Classical information](/learning/courses/basics-of-quantum-information/multiple-systems/classical-information.md)
    - [Quantum information](/learning/courses/basics-of-quantum-information/multiple-systems/quantum-information.md)
    - [Qiskit implementation](/learning/courses/basics-of-quantum-information/multiple-systems/qiskit-implementation.md)
  - Quantum circuits
    - [Introduction](/learning/courses/basics-of-quantum-information/quantum-circuits/introduction.md)
    - [Circuits](/learning/courses/basics-of-quantum-information/quantum-circuits/circuits.md)
    - [Inner products and projections](/learning/courses/basics-of-quantum-information/quantum-circuits/inner-products-and-projections.md)
    - [Limitations on quantum information](/learning/courses/basics-of-quantum-information/quantum-circuits/limitations-on-quantum-information.md)
  - Entanglement in action
    - [Introduction](/learning/courses/basics-of-quantum-information/entanglement-in-action/introduction.md)
    - [Quantum teleportation](/learning/courses/basics-of-quantum-information/entanglement-in-action/quantum-teleportation.md)
    - [Superdense coding](/learning/courses/basics-of-quantum-information/entanglement-in-action/superdense-coding.md)
    - [CHSH game](/learning/courses/basics-of-quantum-information/entanglement-in-action/chsh-game.md)
    - [Qiskit implementation](/learning/courses/basics-of-quantum-information/entanglement-in-action/qiskit-implementation.md)
  - [Exam](/learning/courses/basics-of-quantum-information/exam.md)


#### Designing and leading quantum projects

- [Overview](/learning/courses/designing-and-leading-quantum-projects.md)
- Lessons
  - [Introduction](/learning/courses/designing-and-leading-quantum-projects/introduction.md)
  - [Early stages](/learning/courses/designing-and-leading-quantum-projects/early-stages.md)
  - [Assemble your team](/learning/courses/designing-and-leading-quantum-projects/standing-up-team.md)
  - [Grant writing](/learning/courses/designing-and-leading-quantum-projects/grant-writing.md)


#### Foundations of quantum error correction

- [Overview](/learning/courses/foundations-of-quantum-error-correction.md)
- Lessons
  - Correcting quantum errors
    - [Introduction](/learning/courses/foundations-of-quantum-error-correction/correcting-quantum-errors/introduction.md)
    - [Repetition codes](/learning/courses/foundations-of-quantum-error-correction/correcting-quantum-errors/repetition-codes.md)
    - [The 9-qubit Shor code](/learning/courses/foundations-of-quantum-error-correction/correcting-quantum-errors/shor-code.md)
    - [Discretization of errors](/learning/courses/foundations-of-quantum-error-correction/correcting-quantum-errors/discretization-of-errors.md)
  - The stabilizer formalism
    - [Introduction](/learning/courses/foundations-of-quantum-error-correction/stabilizer-formalism/introduction.md)
    - [Pauli operations and observables](/learning/courses/foundations-of-quantum-error-correction/stabilizer-formalism/pauli-operations-and-observables.md)
    - [Repetition code revisited](/learning/courses/foundations-of-quantum-error-correction/stabilizer-formalism/repetition-code-revisited.md)
    - [Stabilizer codes](/learning/courses/foundations-of-quantum-error-correction/stabilizer-formalism/stabilizer-codes.md)
  - Quantum code constructions
    - [Introduction](/learning/courses/foundations-of-quantum-error-correction/quantum-code-constructions/introduction.md)
    - [CSS codes](/learning/courses/foundations-of-quantum-error-correction/quantum-code-constructions/css-codes.md)
    - [Toric code](/learning/courses/foundations-of-quantum-error-correction/quantum-code-constructions/toric-code.md)
    - [Other code families](/learning/courses/foundations-of-quantum-error-correction/quantum-code-constructions/other-code-families.md)
  - Fault-tolerant quantum computing
    - [Introduction](/learning/courses/foundations-of-quantum-error-correction/fault-tolerant-quantum-computing/introduction.md)
    - [Approach to fault tolerance](/learning/courses/foundations-of-quantum-error-correction/fault-tolerant-quantum-computing/approach-to-fault-tolerance.md)
    - [Controlling error propagation](/learning/courses/foundations-of-quantum-error-correction/fault-tolerant-quantum-computing/controlling-error-propagation.md)
    - [The threshold theorem](/learning/courses/foundations-of-quantum-error-correction/fault-tolerant-quantum-computing/threshold-theorem.md)
  - [Exam](/learning/courses/foundations-of-quantum-error-correction/exam.md)


#### Fundamentals of quantum algorithms

- [Overview](/learning/courses/fundamentals-of-quantum-algorithms.md)
- Lessons
  - Quantum query algorithms
    - [Introduction](/learning/courses/fundamentals-of-quantum-algorithms/quantum-query-algorithms/introduction.md)
    - [The query model of computation](/learning/courses/fundamentals-of-quantum-algorithms/quantum-query-algorithms/query-model-of-computation.md)
    - [Deutsch's algorithm](/learning/courses/fundamentals-of-quantum-algorithms/quantum-query-algorithms/deutsch-algorithm.md)
    - [The Deutsch–Jozsa algorithm](/learning/courses/fundamentals-of-quantum-algorithms/quantum-query-algorithms/deutsch-jozsa-algorithm.md)
    - [Simon's algorithm](/learning/courses/fundamentals-of-quantum-algorithms/quantum-query-algorithms/simon-algorithm.md)
  - Quantum algorithmic foundations
    - [Introduction](/learning/courses/fundamentals-of-quantum-algorithms/quantum-algorithmic-foundations/introduction.md)
    - [Factoring and computing GCDs](/learning/courses/fundamentals-of-quantum-algorithms/quantum-algorithmic-foundations/factoring-and-gcd.md)
    - [Measuring computational cost](/learning/courses/fundamentals-of-quantum-algorithms/quantum-algorithmic-foundations/measuring-computational-cost.md)
    - [Classical computations on quantum computers](/learning/courses/fundamentals-of-quantum-algorithms/quantum-algorithmic-foundations/simulating-classical-computations.md)
  - Phase estimation and factoring
    - [Introduction](/learning/courses/fundamentals-of-quantum-algorithms/phase-estimation-and-factoring/introduction.md)
    - [Phase estimation problem](/learning/courses/fundamentals-of-quantum-algorithms/phase-estimation-and-factoring/phase-estimation-problem.md)
    - [Phase estimation procedure](/learning/courses/fundamentals-of-quantum-algorithms/phase-estimation-and-factoring/phase-estimation-procedure.md)
    - [Shor's algorithm](/learning/courses/fundamentals-of-quantum-algorithms/phase-estimation-and-factoring/shor-algorithm.md)
  - Grover's algorithm
    - [Introduction](/learning/courses/fundamentals-of-quantum-algorithms/grover-algorithm/introduction.md)
    - [Unstructured search](/learning/courses/fundamentals-of-quantum-algorithms/grover-algorithm/unstructured-search.md)
    - [Description of Grover's algorithm](/learning/courses/fundamentals-of-quantum-algorithms/grover-algorithm/grover-algorithm-description.md)
    - [Analysis](/learning/courses/fundamentals-of-quantum-algorithms/grover-algorithm/analysis.md)
    - [Choosing the number of iterations](/learning/courses/fundamentals-of-quantum-algorithms/grover-algorithm/number-of-iterations.md)
    - [Concluding remarks](/learning/courses/fundamentals-of-quantum-algorithms/grover-algorithm/concluding-remarks.md)
  - [Exam](/learning/courses/fundamentals-of-quantum-algorithms/exam.md)


#### General formulation of quantum information

- [Overview](/learning/courses/general-formulation-of-quantum-information.md)
- Lessons
  - Density matrices
    - [Introduction](/learning/courses/general-formulation-of-quantum-information/density-matrices/introduction.md)
    - [Density matrix basics](/learning/courses/general-formulation-of-quantum-information/density-matrices/density-matrix-basics.md)
    - [Convex combinations of density matrices](/learning/courses/general-formulation-of-quantum-information/density-matrices/convex-combinations.md)
    - [Bloch sphere](/learning/courses/general-formulation-of-quantum-information/density-matrices/bloch-sphere.md)
    - [Multiple systems and reduced states](/learning/courses/general-formulation-of-quantum-information/density-matrices/multiple-systems.md)
  - Quantum channels
    - [Introduction](/learning/courses/general-formulation-of-quantum-information/quantum-channels/introduction.md)
    - [Quantum channel basics](/learning/courses/general-formulation-of-quantum-information/quantum-channels/quantum-channel-basics.md)
    - [Channel representations](/learning/courses/general-formulation-of-quantum-information/quantum-channels/representations-of-channels.md)
    - [Equivalence of the representations](/learning/courses/general-formulation-of-quantum-information/quantum-channels/representation-equivalence.md)
  - General measurements
    - [Introduction](/learning/courses/general-formulation-of-quantum-information/general-measurements/introduction.md)
    - [Mathematical formulations of measurements](/learning/courses/general-formulation-of-quantum-information/general-measurements/formulations-of-measurements.md)
    - [Naimark's theorem](/learning/courses/general-formulation-of-quantum-information/general-measurements/naimark-theorem.md)
    - [Quantum state discrimination and tomography](/learning/courses/general-formulation-of-quantum-information/general-measurements/discrimination-and-tomography.md)
  - Purifications and fidelity
    - [Introduction](/learning/courses/general-formulation-of-quantum-information/purifications-and-fidelity/introduction.md)
    - [Purifications](/learning/courses/general-formulation-of-quantum-information/purifications-and-fidelity/purifications.md)
    - [Fidelity](/learning/courses/general-formulation-of-quantum-information/purifications-and-fidelity/fidelity.md)
  - [Exam](/learning/courses/general-formulation-of-quantum-information/exam.md)


#### Integrating quantum and high-performance computing

- [Overview](/learning/courses/integrating-quantum-and-high-performance-computing.md)
- Lessons
  - [Introduction](/learning/courses/integrating-quantum-and-high-performance-computing/introduction.md)
  - [Computing resources and their management](/learning/courses/integrating-quantum-and-high-performance-computing/compute-resources.md)
  - [Programming models](/learning/courses/integrating-quantum-and-high-performance-computing/programming-models.md)
  - [SQD and SKQD](/learning/courses/integrating-quantum-and-high-performance-computing/sqd-skqd.md)
  - [Next steps](/learning/courses/integrating-quantum-and-high-performance-computing/next-steps.md)
  - [Exam](/learning/courses/integrating-quantum-and-high-performance-computing/exam.md)


#### Quantum business foundations

- [Overview](/learning/courses/quantum-business-foundations.md)
- Lessons
  - [Start your quantum journey](/learning/courses/quantum-business-foundations/start-your-quantum-journey.md)
  - [Introduction to quantum computing](/learning/courses/quantum-business-foundations/introduction-to-quantum-computing.md)
  - [Quantum computing fundamentals](/learning/courses/quantum-business-foundations/quantum-computing-fundamentals.md)
  - [Quantum technology](/learning/courses/quantum-business-foundations/quantum-technology.md)
  - [Business impacts](/learning/courses/quantum-business-foundations/business-impacts.md)
  - [How to become quantum ready](/learning/courses/quantum-business-foundations/how-to-become-quantum-ready.md)
  - [Exam](/learning/courses/quantum-business-foundations/exam.md)


#### Quantum chemistry with VQE

- [Overview](/learning/courses/quantum-chem-with-vqe.md)
- Lessons
  - [Introduction](/learning/courses/quantum-chem-with-vqe/introduction.md)
  - [Building a chemical Hamiltonian](/learning/courses/quantum-chem-with-vqe/hamiltonian-construction.md)
  - [Ansatz](/learning/courses/quantum-chem-with-vqe/ansatz.md)
  - [Classical optimizers](/learning/courses/quantum-chem-with-vqe/classical-optimizers.md)
  - [Ground state energies](/learning/courses/quantum-chem-with-vqe/ground-state.md)
  - [Molecular geometry](/learning/courses/quantum-chem-with-vqe/geometry.md)
  - [Exam](/learning/courses/quantum-chem-with-vqe/exam.md)


#### Quantum computing in practice

- [Overview](/learning/courses/quantum-computing-in-practice.md)
- Lessons
  - [Course introduction](/learning/courses/quantum-computing-in-practice/introduction.md)
  - [Running quantum circuits](/learning/courses/quantum-computing-in-practice/running-quantum-circuits.md)
  - [Utility-scale QAOA](/learning/courses/quantum-computing-in-practice/utility-scale-qaoa.md)
  - [Which problems are quantum computers good for?](/learning/courses/quantum-computing-in-practice/applications-of-qc.md)
  - [Mapping](/learning/courses/quantum-computing-in-practice/mapping.md)
  - [Simulating nature](/learning/courses/quantum-computing-in-practice/simulating-nature.md)


#### Quantum diagonalization algorithms

- [Overview](/learning/courses/quantum-diagonalization-algorithms.md)
- Lessons
  - [Introduction](/learning/courses/quantum-diagonalization-algorithms/introduction.md)
  - [Variational quantum eigensolver](/learning/courses/quantum-diagonalization-algorithms/vqe.md)
  - [Quantum Krylov methods](/learning/courses/quantum-diagonalization-algorithms/krylov.md)
  - [Sample-based quantum diagonalization](/learning/courses/quantum-diagonalization-algorithms/sqd-overview.md)
  - [Implementing SQD](/learning/courses/quantum-diagonalization-algorithms/sqd-implementation.md)
  - [Sample-based Krylov quantum diagonalization](/learning/courses/quantum-diagonalization-algorithms/skqd.md)
  - [Exam](/learning/courses/quantum-diagonalization-algorithms/exam.md)


#### Quantum machine learning

- [Overview](/learning/courses/quantum-machine-learning.md)
- Lessons
  - [Introduction](/learning/courses/quantum-machine-learning/introduction.md)
  - [Classical machine learning review](/learning/courses/quantum-machine-learning/classical-ml-review.md)
  - [Data encoding](/learning/courses/quantum-machine-learning/data-encoding.md)
  - [Quantum kernels](/learning/courses/quantum-machine-learning/quantum-kernel-methods.md)
  - [QVCs and QNNs](/learning/courses/quantum-machine-learning/qvc-qnn.md)
  - [Exam](/learning/courses/quantum-machine-learning/exam.md)


#### A practical introduction to quantum-safe cryptography

- [Overview](/learning/courses/quantum-safe-cryptography.md)
- Lessons
  - [Course introduction](/learning/courses/quantum-safe-cryptography/introduction-to-this-course.md)
  - [Cryptographic hash functions](/learning/courses/quantum-safe-cryptography/cryptographic-hash-functions.md)
  - [Symmetric key cryptography](/learning/courses/quantum-safe-cryptography/symmetric-key-cryptography.md)
  - [Asymmetric key cryptography](/learning/courses/quantum-safe-cryptography/asymmetric-key-cryptography.md)
  - [Quantum-safe cryptography](/learning/courses/quantum-safe-cryptography/quantum-safe-cryptography.md)
  - [What's next?](/learning/courses/quantum-safe-cryptography/whats-next.md)
  - [Works cited](/learning/courses/quantum-safe-cryptography/works-cited.md)
  - [Exam](/learning/courses/quantum-safe-cryptography/exam.md)


#### Use a quantum computer today

- [Overview](/learning/courses/use-a-qc-today.md)
- Lessons
  - [Build and run your first quantum program](/learning/courses/use-a-qc-today/build-and-run-your-first-quantum-program.md)
  - [Quantum mechanics basics](/learning/courses/use-a-qc-today/quantum-mechanics-basics.md)
  - [Your first quantum experiment](/learning/courses/use-a-qc-today/your-first-quantum-experiment.md)
  - [Quantum computing context](/learning/courses/use-a-qc-today/quantum-computing-context.md)
  - [Continue your learning journey](/learning/courses/use-a-qc-today/continue-your-learning-journey.md)


#### Utility-scale quantum computing

- [Overview](/learning/courses/utility-scale-quantum-computing.md)
- Lessons
  - [Introduction](/learning/courses/utility-scale-quantum-computing/introduction.md)
  - [Bits, gates, and circuits](/learning/courses/utility-scale-quantum-computing/bits-gates-and-circuits.md)
  - [Teleportation](/learning/courses/utility-scale-quantum-computing/teleportation.md)
  - [Grover's algorithm](/learning/courses/utility-scale-quantum-computing/grovers-algorithm.md)
  - [Quantum phase estimation](/learning/courses/utility-scale-quantum-computing/quantum-phase-estimation.md)
  - [Variational quantum algorithms](/learning/courses/utility-scale-quantum-computing/variational-quantum-algorithms.md)
  - [Quantum simulation](/learning/courses/utility-scale-quantum-computing/quantum-simulation.md)
  - [Classical simulation](/learning/courses/utility-scale-quantum-computing/classical-simulation.md)
  - [Hardware](/learning/courses/utility-scale-quantum-computing/hardware.md)
  - [Quantum circuit optimization](/learning/courses/utility-scale-quantum-computing/quantum-circuit-optimization.md)
  - [Error mitigation](/learning/courses/utility-scale-quantum-computing/error-mitigation.md)
  - [Utility I](/learning/courses/utility-scale-quantum-computing/utility-i.md)
  - [Utility II](/learning/courses/utility-scale-quantum-computing/utility-ii.md)
  - [Utility III](/learning/courses/utility-scale-quantum-computing/utility-iii.md)


#### Variational algorithm design

- [Overview](/learning/courses/variational-algorithm-design.md)
- Lessons
  - [Variational algorithms](/learning/courses/variational-algorithm-design/variational-algorithms.md)
  - [Reference states](/learning/courses/variational-algorithm-design/reference-states.md)
  - [Ansaetze and variational forms](/learning/courses/variational-algorithm-design/ansaetze-and-variational-forms.md)
  - [Cost functions](/learning/courses/variational-algorithm-design/cost-functions.md)
  - [Optimization loops](/learning/courses/variational-algorithm-design/optimization-loops.md)
  - [Instances and extensions](/learning/courses/variational-algorithm-design/instances-and-extensions.md)
  - [Examples and applications](/learning/courses/variational-algorithm-design/examples-and-applications.md)
  - [Exam](/learning/courses/variational-algorithm-design/exam.md)



  