Z2Symmetries

class Z2Symmetries(symmetries, sq_paulis, sq_list, tapering_values=None)[source]

Z2 Symmetries

Parameters
  • symmetries (list[Pauli]) – the list of Pauli objects representing the Z_2 symmetries

  • sq_paulis (list[Pauli]) – the list of single - qubit Pauli objects to construct the Clifford operators

  • sq_list (list[int]) – the list of support of the single-qubit Pauli objects used to build the Clifford operators

  • tapering_values (list[int], optional) – values determines the sector.

Raises

AquaError – Invalid paulis

Attributes

Z2Symmetries.cliffords

Get clifford operators, build based on symmetries and single-qubit X.

Z2Symmetries.sq_list

returns sq list

Z2Symmetries.sq_paulis

returns sq paulis

Z2Symmetries.symmetries

return symmetries

Z2Symmetries.tapering_values

returns tapering values

Methods

Z2Symmetries.consistent_tapering(operator)

Tapering the operator with the same manner of how this tapered operator is created.

Z2Symmetries.copy()

Get a copy of self.

Z2Symmetries.find_Z2_symmetries(operator)

Finds Z2 Pauli-type symmetries of an Operator.

Z2Symmetries.is_empty()

Check the z2_symmetries is empty or not.

Z2Symmetries.taper(operator[, tapering_values])

Taper an operator based on the z2_symmetries info and sector defined by tapering_values.

Z2Symmetries.two_qubit_reduction(operator, …)

Eliminates the central and last qubit in a list of Pauli that has diagonal operators (Z,I) at those positions