Skip to main contentIBM Quantum Documentation
This page is from an old version of Qiskit SDK and does not exist in the latest version. We recommend you migrate to the latest version. See the release notes for more information.

Register

class Register(size=None, name=None, bits=None)

GitHub

Bases: object

Implement a generic register.

Note

This class should not be instantiated directly. This is just a superclass for ClassicalRegister and QuantumRegister.

Create a new generic register.

Either the size or the bits argument must be provided. If size is not None, the register will be pre-populated with bits of the correct type.

Parameters

  • size (int) – Optional. The number of bits to include in the register.
  • name (str) – Optional. The name of the register. If not provided, a unique name will be auto-generated from the register type.
  • bits (list[Bit]) – Optional. A list of Bit() instances to be used to populate the register.

Raises

  • CircuitError – if both the size and bits arguments are provided, or if neither are.
  • CircuitError – if size is not valid.
  • CircuitError – if name is not a valid name according to the OpenQASM spec.
  • CircuitError – if bits contained duplicated bits.
  • CircuitError – if bits contained bits of an incorrect type.

Methods

index

Register.index(bit)

Find the index of the provided bit within this register.


Attributes

bit_type

Default value: None

instances_counter

Default value: count(0)

name

Get the register name.

name_format

Default value: re.compile('[a-z][a-zA-Z0-9_]*')

prefix

Default value: 'reg'

size

Get the register size.

Was this page helpful?
Report a bug or request content on GitHub.