Associates a QInterface object with a set of bits.
More...
#include <qengineshard.hpp>
|
| QEngineShard () |
|
| QEngineShard (const bool &set, const complex &rand_phase=ONE_CMPLX) |
|
| QEngineShard (QInterfacePtr u, const bitLenInt &mapping) |
|
void | MakeDirty () |
|
bool | ClampAmps () |
|
void | DumpMultiBit () |
|
void | RemoveControl (QEngineShardPtr p) |
|
void | RemoveTarget (QEngineShardPtr p) |
|
void | RemoveAntiControl (QEngineShardPtr p) |
|
void | RemoveAntiTarget (QEngineShardPtr p) |
|
void | DumpControlOf () |
|
void | DumpAntiControlOf () |
|
void | DumpSamePhaseControlOf () |
|
void | DumpSamePhaseAntiControlOf () |
|
void | MakePhaseControlledBy (QEngineShardPtr p) |
|
void | MakePhaseControlOf (QEngineShardPtr p) |
|
void | MakePhaseAntiControlledBy (QEngineShardPtr p) |
|
void | MakePhaseAntiControlOf (QEngineShardPtr p) |
|
void | AddPhaseAngles (QEngineShardPtr control, const complex &topLeft, const complex &bottomRight) |
|
void | AddAntiPhaseAngles (QEngineShardPtr control, const complex &bottomRight, const complex &topLeft) |
|
void | AddInversionAngles (QEngineShardPtr control, const complex &topRight, const complex &bottomLeft) |
|
void | AddAntiInversionAngles (QEngineShardPtr control, const complex &bottomLeft, const complex &topRight) |
|
void | OptimizeControls () |
|
void | OptimizeTargets () |
|
void | OptimizeAntiControls () |
|
void | OptimizeAntiTargets () |
|
void | OptimizeBothTargets () |
|
void | CombineGates () |
| If this bit is both control and target of another bit, try to combine the operations into one gate. More...
|
|
void | SwapTargetAnti (QEngineShardPtr control) |
|
void | FlipPhaseAnti () |
|
void | CommutePhase (const complex &topLeft, const complex &bottomRight) |
|
void | CommuteH () |
|
void | DumpPhaseBuffers () |
|
bool | IsInvertControl () |
|
bool | IsInvertTarget () |
|
void | ClearInvertPhase () |
|
bitLenInt | GetQubitCount () |
|
real1_f | Prob () |
|
bool | isClifford () |
|
|
ShardToPhaseMap & | GetControlsShards () |
|
ShardToPhaseMap & | GetAntiControlsShards () |
|
ShardToPhaseMap & | GetTargetOfShards () |
|
ShardToPhaseMap & | GetAntiTargetOfShards () |
|
void | RemoveBuffer (QEngineShardPtr p, ShardToPhaseMap &localMap, GetBufferFn remoteMapGet) |
|
void | DumpBuffer (OptimizeFn optimizeFn, ShardToPhaseMap &localMap, AddRemoveFn remoteFn) |
|
void | DumpSamePhaseBuffer (OptimizeFn optimizeFn, ShardToPhaseMap &localMap, AddRemoveFn remoteFn) |
|
void | AddBuffer (QEngineShardPtr p, ShardToPhaseMap &localMap, GetBufferFn remoteFn) |
|
void | AddAngles (QEngineShardPtr control, const complex &cmplxDiff, const complex &cmplxSame, AddRemoveFn localFn, ShardToPhaseMap &localMap, AddRemoveFn remoteFn) |
|
void | OptimizeBuffer (ShardToPhaseMap &localMap, GetBufferFn remoteMapGet, AddAnglesFn phaseFn, bool makeThisControl) |
|
void | CombineBuffers (GetBufferFn targetMapGet, GetBufferFn controlMapGet, AddAnglesFn angleFn) |
|
void | RemoveIdentityBuffers (ShardToPhaseMap &localMap, GetBufferFn remoteMapGet) |
|
void | RemovePhaseBuffers (ShardToPhaseMap &localMap, GetBufferFn remoteMapGet) |
|
void | ClearMapInvertPhase (ShardToPhaseMap &shards) |
|
Associates a QInterface object with a set of bits.
◆ AddAnglesFn
◆ AddRemoveFn
typedef void(QEngineShard::* Qrack::QEngineShard::AddRemoveFn) (QEngineShardPtr) |
|
protected |
◆ GetBufferFn
typedef ShardToPhaseMap&(QEngineShard::* Qrack::QEngineShard::GetBufferFn) () |
|
protected |
◆ OptimizeFn
typedef void(QEngineShard::* Qrack::QEngineShard::OptimizeFn) () |
|
protected |
◆ QEngineShard() [1/3]
Qrack::QEngineShard::QEngineShard |
( |
| ) |
|
|
inline |
◆ QEngineShard() [2/3]
Qrack::QEngineShard::QEngineShard |
( |
const bool & |
set, |
|
|
const complex & |
rand_phase = ONE_CMPLX |
|
) |
| |
|
inline |
◆ QEngineShard() [3/3]
◆ AddAngles()
◆ AddAntiInversionAngles()
◆ AddAntiPhaseAngles()
◆ AddBuffer()
◆ AddInversionAngles()
◆ AddPhaseAngles()
◆ ClampAmps()
bool Qrack::QEngineShard::ClampAmps |
( |
| ) |
|
◆ ClearInvertPhase()
void Qrack::QEngineShard::ClearInvertPhase |
( |
| ) |
|
|
inline |
◆ ClearMapInvertPhase()
◆ CombineBuffers()
◆ CombineGates()
void Qrack::QEngineShard::CombineGates |
( |
| ) |
|
|
inline |
If this bit is both control and target of another bit, try to combine the operations into one gate.
◆ CommuteH()
void Qrack::QEngineShard::CommuteH |
( |
| ) |
|
◆ CommutePhase()
void Qrack::QEngineShard::CommutePhase |
( |
const complex & |
topLeft, |
|
|
const complex & |
bottomRight |
|
) |
| |
◆ DumpAntiControlOf()
void Qrack::QEngineShard::DumpAntiControlOf |
( |
| ) |
|
|
inline |
◆ DumpBuffer()
◆ DumpControlOf()
void Qrack::QEngineShard::DumpControlOf |
( |
| ) |
|
|
inline |
◆ DumpMultiBit()
void Qrack::QEngineShard::DumpMultiBit |
( |
| ) |
|
◆ DumpPhaseBuffers()
void Qrack::QEngineShard::DumpPhaseBuffers |
( |
| ) |
|
|
inline |
◆ DumpSamePhaseAntiControlOf()
void Qrack::QEngineShard::DumpSamePhaseAntiControlOf |
( |
| ) |
|
|
inline |
◆ DumpSamePhaseBuffer()
◆ DumpSamePhaseControlOf()
void Qrack::QEngineShard::DumpSamePhaseControlOf |
( |
| ) |
|
|
inline |
◆ FlipPhaseAnti()
void Qrack::QEngineShard::FlipPhaseAnti |
( |
| ) |
|
◆ GetAntiControlsShards()
◆ GetAntiTargetOfShards()
◆ GetControlsShards()
◆ GetQubitCount()
bitLenInt Qrack::QEngineShard::GetQubitCount |
( |
| ) |
|
|
inline |
◆ GetTargetOfShards()
◆ isClifford()
bool Qrack::QEngineShard::isClifford |
( |
| ) |
|
|
inline |
◆ IsInvertControl()
bool Qrack::QEngineShard::IsInvertControl |
( |
| ) |
|
◆ IsInvertTarget()
bool Qrack::QEngineShard::IsInvertTarget |
( |
| ) |
|
◆ MakeDirty()
void Qrack::QEngineShard::MakeDirty |
( |
| ) |
|
|
inline |
◆ MakePhaseAntiControlledBy()
◆ MakePhaseAntiControlOf()
◆ MakePhaseControlledBy()
◆ MakePhaseControlOf()
◆ OptimizeAntiControls()
void Qrack::QEngineShard::OptimizeAntiControls |
( |
| ) |
|
|
inline |
◆ OptimizeAntiTargets()
void Qrack::QEngineShard::OptimizeAntiTargets |
( |
| ) |
|
|
inline |
◆ OptimizeBothTargets()
void Qrack::QEngineShard::OptimizeBothTargets |
( |
| ) |
|
◆ OptimizeBuffer()
◆ OptimizeControls()
void Qrack::QEngineShard::OptimizeControls |
( |
| ) |
|
|
inline |
◆ OptimizeTargets()
void Qrack::QEngineShard::OptimizeTargets |
( |
| ) |
|
|
inline |
◆ Prob()
real1_f Qrack::QEngineShard::Prob |
( |
| ) |
|
|
inline |
◆ RemoveAntiControl()
◆ RemoveAntiTarget()
◆ RemoveBuffer()
◆ RemoveControl()
◆ RemoveIdentityBuffers()
◆ RemovePhaseBuffers()
◆ RemoveTarget()
◆ SwapTargetAnti()
◆ amp0
◆ amp1
◆ antiControlsShards
◆ antiTargetOfShards
◆ controlsShards
◆ found
bool Qrack::QEngineShard::found |
◆ isPhaseDirty
bool Qrack::QEngineShard::isPhaseDirty |
◆ isProbDirty
bool Qrack::QEngineShard::isProbDirty |
◆ mapped
◆ pauliBasis
Pauli Qrack::QEngineShard::pauliBasis |
◆ targetOfShards
◆ unit
The documentation for this class was generated from the following files: