Optimizer

class guppylang.optimizer.OptimizationLevel(*values)[source]

Optimization level used when compiling a Guppy program.

Classical = 'classical'

Only apply classical optimizations.

Some gate rebasing/dead quantum code elimination may be applied as needed.

Default = 'default'

Optimization set used by default for all Guppy program compilations.

Minimal = 'minimal'

Only apply structural rewrites required for execution.

passes() list[ComposablePass][source]

Return the HUGR passes that implement this optimization level.

class guppylang.optimizer.OptimizerInstance(definition: GuppyFunctionDefinition[P, Out], passes: list[ComposablePass] = <factory>)[source]

Builder used to configure optimizations for compiling a Guppy program.

with_optimization(optimization: ComposablePass) OptimizerInstance[P, Out][source]

Add an additional optimization pass to run while compiling the program.

emulator(n_qubits: int | None = None, builder: EmulatorBuilder | None = None, libs: list[Package] | None = None, platform: Platform = 'helios') EmulatorInstance[source]

Compile this function for emulation with the configured optimizations.

compile() Package[source]

Compile an execution entrypoint with the configured optimizations.

Alias for compile_entrypoint().

compile_entrypoint() Package[source]

Compile an entrypoint with the configured optimizations.

compile_function() Package[source]

Compile a function with the configured optimizations.