Korean
언어
English
Bengali
French
German
Japanese
Korean
Portuguese
Spanish
Tamil

WhileLoopOp

class WhileLoopOp(condition, body, label=None)[소스]

기반 클래스: ControlFlowOp

A circuit operation which repeatedly executes a subcircuit (body) until a condition (condition) evaluates as False.

매개변수
  • condition (Union[Tuple[ClassicalRegister, int], Tuple[Clbit, int], Tuple[Clbit, bool]]) – A condition to be checked prior to executing body. Can be specified as either a tuple of a ClassicalRegister to be tested for equality with a given int, or as a tuple of a Clbit to be compared to either a bool or an int.

  • body (QuantumCircuit) – The loop body to be repeatedly executed.

  • label (Optional[str]) – An optional label for identifying the instruction.

The classical bits used in condition must be a subset of those attached to body.

Circuit symbol:

     ┌─────────────┐
q_0: ┤0            ├
     │             │
q_1: ┤1            ├
     │  while_loop │
q_2: ┤2            ├
     │             │
c_0: ╡0            ╞
     └─────────────┘

Create a new instruction.

매개변수
  • name (str) – instruction name

  • num_qubits (int) – instruction’s qubit width

  • num_clbits (int) – instruction’s clbit width

  • params (list[int|float|complex|str|ndarray|list|ParameterExpression]) – list of parameters

  • duration (int or float) – instruction’s duration. it must be integer if unit is 〈dt〉

  • unit (str) – time unit of duration

  • label (str or None) – An optional label for identifying the instruction.

예외 발생
  • CircuitError – when the register is not in the correct format.

  • TypeError – when the optional label is provided, but it is not a string.

Methods

add_decomposition

Add a decomposition of the instruction to the SessionEquivalenceLibrary.

assemble

Assemble a QasmQobjInstruction

broadcast_arguments

Validation of the arguments.

c_if

Set a classical equality condition on this instruction between the register or cbit classical and value val.

copy

Copy of the instruction.

inverse

Invert this instruction.

is_parameterized

Return True .IFF.

qasm

Return a default OpenQASM string for the instruction.

repeat

Creates an instruction with gate repeated n amount of times.

replace_blocks

Replace blocks and return new instruction.

reverse_ops

For a composite instruction, reverse the order of sub-instructions.

soft_compare

Soft comparison between gates.

validate_parameter

Instruction parameters has no validation or normalization.

Attributes

blocks
condition_bits

Get Clbits in condition.

decompositions

Get the decompositions of the instruction from the SessionEquivalenceLibrary.

definition

Return definition in terms of other basic gates.

duration

Get the duration.

label

Return instruction label

name

Return the name.

num_clbits

Return the number of clbits.

num_qubits

Return the number of qubits.

params
unit

Get the time unit of duration.