The Quantum Exact Simulation Toolkit v4.2.0
Loading...
Searching...
No Matches

Functions for pre- or post-multiplying a tensor product of Pauli operators (as a PauliStr) upon density matrices. More...

Functions

void leftapplyPauliStr (Qureg qureg, PauliStr str)
 
void rightapplyPauliStr (Qureg qureg, PauliStr str)
 

Detailed Description

Functions for pre- or post-multiplying a tensor product of Pauli operators (as a PauliStr) upon density matrices.

Function Documentation

◆ leftapplyPauliStr()

void leftapplyPauliStr ( Qureg qureg,
PauliStr str )
Note
Documentation for this function or struct is under construction!
See also

Definition at line 441 of file multiplication.cpp.

441 {
442 validate_quregFields(qureg, __func__);
443 validate_pauliStrTargets(qureg, str, __func__);
444
445 localiser_statevec_anyCtrlPauliTensor(qureg, {}, {}, str);
446}

Referenced by leftapplyMultiQubitNot().

◆ rightapplyPauliStr()

void rightapplyPauliStr ( Qureg qureg,
PauliStr str )
Note
Documentation for this function or struct is under construction!
See also

Definition at line 448 of file multiplication.cpp.

448 {
449 validate_quregFields(qureg, __func__);
450 validate_quregIsDensityMatrix(qureg, __func__);
451 validate_pauliStrTargets(qureg, str, __func__);
452
453 qcomp factor = paulis_getSignOfPauliStrConj(str); // undo transpose
454 str = paulis_getShiftedPauliStr(str, qureg.numQubits);
455 localiser_statevec_anyCtrlPauliTensor(qureg, {}, {}, str, factor);
456}

Referenced by rightapplyMultiQubitNot().