IcebergTypesExtension

class guppyft.extensions.iceberg.IcebergTypesExtension[source]

Extension providing the Iceberg logical types.

__call__() → Extension[source]

Returns the Iceberg types extension.

iceberg_block(k: int) → ExtType[source]

An Iceberg code block.

Parameters:

k – The number of logical qubits encoded in the block.

property iceberg_block_def: TypeDef

An Iceberg code block.

This is the generic type definition. For the instantiated type, see iceberg_block.

iceberg_borrowed_block(k: int) → ExtType[source]

A borrowed Iceberg code block.

Parameters:

k – The number of logical qubits encoded in the original block.

property iceberg_borrowed_block_def: TypeDef

A borrowed Iceberg code block.

This is the generic type definition. For the instantiated type, see iceberg_borrowed_block.

iceberg_pre_block(k: int) → ExtType[source]

An Iceberg code pre-block.

Parameters:

k – The number of logical qubits encoded in the block.

property iceberg_pre_block_def: TypeDef

An Iceberg code pre-block.

This is the generic type definition. For the instantiated type, see iceberg_pre_block.

iceberg_qubit() → ExtType[source]

A “dynamic” logical qubit belonging to an unspecified block.

property iceberg_qubit_def: TypeDef

A “dynamic” logical qubit belonging to an unspecified block.

This is the generic type definition. For the instantiated type, see iceberg_qubit.