iqm.cpc.compiler.compiler

iqm.cpc.compiler.compiler#

Convert quantum circuits into instruction schedules.

This is the core module of CPC. It contains the functionality to define a compiler, whose job is to convert quantum circuits and calibration data into configuration settings and instruction schedules that can be executed by the IQM server on quantum hardware.

Module Attributes

PassFunction

A function that takes the data and context as arguments and returns the modified data and context.

Functions

compiler_pass(function)

Convenience wrapper to create a valid compiler pass.

pass_function_idempotent(function)

Wrap a pass function to make it idempotent.

Classes

CompilationStage(name)

Sequence of compiler passes that are applied to the data.

Compiler(*, calibration_set, chip_topology, ...)

Stateful object that contains a calibration set, a schedule builder, and a set of compilation stages.

Inheritance

digraph inheritanceff284ff8b2 { bgcolor=transparent; rankdir=LR; size="8.0, 12.0"; "CompilationStage" [URL="iqm.cpc.compiler.compiler.CompilationStage.html#iqm.cpc.compiler.compiler.CompilationStage",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Sequence of compiler passes that are applied to the data."]; "Compiler" [URL="iqm.cpc.compiler.compiler.Compiler.html#iqm.cpc.compiler.compiler.Compiler",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Stateful object that contains a calibration set, a schedule builder, and a set"]; }