OpInterface definitions

QECOpInterface (QECOpInterface)

This interface provides a generic way to interact with instructions that are considered QEC Operations. These are characterized by operating on zero or more qubit values, and returning the same amount of qubit values.

Methods:

getInQubits

mlir::Operation::operand_range getInQubits();

Get the input qubits for this operation.

NOTE: This method must be implemented by the user.

getOutQubits

mlir::Operation::result_range getOutQubits();

Get the output qubits for this operation.

NOTE: This method must be implemented by the user.

getPauliProduct

::mlir::ArrayAttr getPauliProduct();

Get the Pauli product for this operation.

NOTE: This method must be implemented by the user.

getPauliProductAttr

::mlir::ArrayAttr getPauliProductAttr();

Get the Pauli product for this operation.

NOTE: This method must be implemented by the user.

getRotationKind

uint16_t getRotationKind();

Get the rotation kind for this operation.

NOTE: This method must be implemented by the user.

setPauliProductAttr

void setPauliProductAttr(::mlir::ArrayAttr attr);

Set the Pauli product for this operation.

NOTE: This method must be implemented by the user.

setRotationKind

void setRotationKind(uint16_t attrValue);

Set the rotation kind for this operation.

NOTE: This method must be implemented by the user.