QuantumError.compose(other, qargs=None, front=False)[source]

Return the operator composition with another CLASS.

  • other (CLASS) – a CLASS object.

  • qargs (list or None) – Optional, a list of subsystem positions to apply other on. If None apply on all subsystems (default: None).

  • front (bool) – If True compose using right operator multiplication, instead of left multiplication [default: False].


The composed CLASS.

Return type:



QiskitError – if other cannot be converted to an operator, or has incompatible dimensions for specified subsystems.


Composition (&) by default is defined as left matrix multiplication for matrix operators, while @ (equivalent to dot()) is defined as right matrix multiplication. That is that A & B == A.compose(B) is equivalent to B @ A == B.dot(A) when A and B are of the same type.

Setting the front=True kwarg changes this to right matrix multiplication and is equivalent to the dot() method A.dot(B) == A.compose(B, front=True).