QuISP
Loading...
Searching...
No Matches
quisp::rules Namespace Reference

Namespaces

namespace  rs_converter
 

Classes

class  Action
 
class  Clause
 
class  Condition
 
class  EnoughResourceConditionClause
 
class  EntanglementSwapping
 
class  FidelityConditionClause
 
class  MeasureCountConditionClause
 
class  Purification
 
class  PurificationCorrelation
 
class  PurificationCorrelationClause
 
struct  QnicInterface
 
class  Rule
 
class  RuleSet
 RuleSet class which includes a set of Rule Information. More...
 
class  SwappingCorrection
 
class  SwappingCorrectionClause
 
class  Tomography
 

Enumerations

enum  PurType : int {
  INVALID , SINGLE_SELECTION_X_PURIFICATION , SINGLE_SELECTION_Z_PURIFICATION , SINGLE_SELECTION_Y_PURIFICATION ,
  SINGLE_SELECTION_XZ_PURIFICATION , SINGLE_SELECTION_ZX_PURIFICATION , DOUBLE_SELECTION_X_PURIFICATION , DOUBLE_SELECTION_Z_PURIFICATION ,
  DOUBLE_SELECTION_XZ_PURIFICATION , DOUBLE_SELECTION_ZX_PURIFICATION , DOUBLE_SELECTION_X_PURIFICATION_SINGLE_SELECTION_Z_PURIFICATION , DOUBLE_SELECTION_Z_PURIFICATION_SINGLE_SELECTION_X_PURIFICATION
}
 

Functions

 NLOHMANN_JSON_SERIALIZE_ENUM (PurType, { {INVALID, "INVALID"}, {SINGLE_SELECTION_X_PURIFICATION, "SINGLE_SELECTION_X_PURIFICATION"}, {SINGLE_SELECTION_Z_PURIFICATION, "SINGLE_SELECTION_Z_PURIFICATION"}, {SINGLE_SELECTION_Y_PURIFICATION, "SINGLE_SELECTION_Y_PURIFICATION"}, {SINGLE_SELECTION_XZ_PURIFICATION, "SINGLE_SELECTION_XZ_PURIFICATION"}, {SINGLE_SELECTION_ZX_PURIFICATION, "SINGLE_SELECTION_ZX_PURIFICATION"}, {DOUBLE_SELECTION_X_PURIFICATION, "DOUBLE_SELECTION_X_PURIFICATION"}, {DOUBLE_SELECTION_Z_PURIFICATION, "DOUBLE_SELECTION_Z_PURIFICATION"}, {DOUBLE_SELECTION_XZ_PURIFICATION, "DOUBLE_SELECTION_XZ_PURIFICATION"}, {DOUBLE_SELECTION_ZX_PURIFICATION, "DOUBLE_SELECTION_ZX_PURIFICATION"}, {DOUBLE_SELECTION_X_PURIFICATION_SINGLE_SELECTION_Z_PURIFICATION, "DOUBLE_SELECTION_X_PURIFICATION_SINGLE_SELECTION_Z_PURIFICATION"}, {DOUBLE_SELECTION_Z_PURIFICATION_SINGLE_SELECTION_X_PURIFICATION, "DOUBLE_SELECTION_Z_PURIFICATION_SINGLE_SELECTION_X_PURIFICATION"}, }) inline void to_json(json &j
 
void from_json (const json &j, QnicInterface &qi)
 

Variables

const QnicInterfaceqi { j = json{{"partner_address", qi.partner_addr}}
 

Enumeration Type Documentation

◆ PurType

Enumerator
INVALID 

Invalid purification type.

SINGLE_SELECTION_X_PURIFICATION 

Single purification for X error.

SINGLE_SELECTION_Z_PURIFICATION 

Single purification for Z error.

SINGLE_SELECTION_Y_PURIFICATION 
SINGLE_SELECTION_XZ_PURIFICATION 

Double purification both for X and Z errors.

SINGLE_SELECTION_ZX_PURIFICATION 

Double inverse purification both for X and Z errors.

DOUBLE_SELECTION_X_PURIFICATION 

Double selection XZ and single action (DoubleSelectionAction) for X error.

DOUBLE_SELECTION_Z_PURIFICATION 

Inverse Double selection XZ and single action(DoubleSelectionAction) for X error.

DOUBLE_SELECTION_XZ_PURIFICATION 

Double Selection and Dual Action for both X and Z errors.

DOUBLE_SELECTION_ZX_PURIFICATION 

Inverse Double Selection and Dual Action for both X and Z errors.

DOUBLE_SELECTION_X_PURIFICATION_SINGLE_SELECTION_Z_PURIFICATION 

Different type of Double Selection and Dual Action for both X and Z errors.

DOUBLE_SELECTION_Z_PURIFICATION_SINGLE_SELECTION_X_PURIFICATION 

Different type of Inverse Double Selection and Dual Action for both X and Z errors.

Function Documentation

◆ from_json()

void quisp::rules::from_json ( const json & j,
QnicInterface & qi )
inline

◆ NLOHMANN_JSON_SERIALIZE_ENUM()

quisp::rules::NLOHMANN_JSON_SERIALIZE_ENUM ( PurType ,
{ {INVALID, "INVALID"}, {SINGLE_SELECTION_X_PURIFICATION, "SINGLE_SELECTION_X_PURIFICATION"}, {SINGLE_SELECTION_Z_PURIFICATION, "SINGLE_SELECTION_Z_PURIFICATION"}, {SINGLE_SELECTION_Y_PURIFICATION, "SINGLE_SELECTION_Y_PURIFICATION"}, {SINGLE_SELECTION_XZ_PURIFICATION, "SINGLE_SELECTION_XZ_PURIFICATION"}, {SINGLE_SELECTION_ZX_PURIFICATION, "SINGLE_SELECTION_ZX_PURIFICATION"}, {DOUBLE_SELECTION_X_PURIFICATION, "DOUBLE_SELECTION_X_PURIFICATION"}, {DOUBLE_SELECTION_Z_PURIFICATION, "DOUBLE_SELECTION_Z_PURIFICATION"}, {DOUBLE_SELECTION_XZ_PURIFICATION, "DOUBLE_SELECTION_XZ_PURIFICATION"}, {DOUBLE_SELECTION_ZX_PURIFICATION, "DOUBLE_SELECTION_ZX_PURIFICATION"}, {DOUBLE_SELECTION_X_PURIFICATION_SINGLE_SELECTION_Z_PURIFICATION, "DOUBLE_SELECTION_X_PURIFICATION_SINGLE_SELECTION_Z_PURIFICATION"}, {DOUBLE_SELECTION_Z_PURIFICATION_SINGLE_SELECTION_X_PURIFICATION, "DOUBLE_SELECTION_Z_PURIFICATION_SINGLE_SELECTION_X_PURIFICATION"}, }  ) &

Variable Documentation

◆ qi

const QnicInterface& quisp::rules::qi { j = json{{"partner_address", qi.partner_addr}}