QkBitTerm
enum QkBitTermUne énumération qui représente chacun des termes de l'alphabet à qubit unique énumérés ci-dessous.
Valeurs
-
QkBitTerm_XL'opérateur Pauli .
Valeur : 2 (
0b0010) -
QkBitTerm_YL'opérateur Pauli .
Valeur : 3 (
0b0011) -
QkBitTerm_ZL'opérateur Pauli .
Valeur : 1 (
0b0001) -
QkBitTerm_PlusLe projecteur à l'état propre positif .
Valeur : 10 (
0b1010) -
QkBitTerm_MinusLe projecteur à l'état propre négatif .
Valeur : 6 (
0b0110) -
QkBitTerm_RightLe projecteur à l'état propre positif .
Valeur : 11 (
0b1011) -
QkBitTerm_LeftLe projecteur à l'état propre négatif .
Valeur : 7 (
0b0111) -
QkBitTerm_ZeroLe projecteur à l'état propre positif .
Valeur : 9 (
0b1001) -
QkBitTerm_OneLe projecteur à l'état propre négatif .
Valeur : 5 (
0b0101)
Représentation
L'énumération est stockée sur un seul octet et ses éléments sont représentés par des entiers non signés de 8 bits.
typedef uint8_t QkBitTermToutes les valeurs de uint8_t ne sont pas des termes binaires valables. Le passage de valeurs non valides est un comportement non défini.
La structure numérique de ces valeurs est la suivante : il s'agit de valeurs sur quatre bits dont les deux bits inférieurs sont la représentation symplectique (sans phase) de l'opérateur de Pauli lié à l'objet, où le bit inférieur indique une contribution de et le deuxième bit inférieur une contribution de , tandis que les deux bits supérieurs sont 00 pour un opérateur de Pauli, 01 pour le projecteur d'état propre négatif et 10 pour le projecteur d'état propre positif.
Fonctions
qk_bitterm_label
uint8_t qk_bitterm_label(QkBitTerm bit_term)
Obtenir l'étiquette pour une durée limitée.
Exemple
QkBitTerm bit_term = QkBitTerm_Y;
// cast the uint8_t to char
char label = qk_bitterm_label(bit_term);Sécurité
Le comportement est indéfini si bit_term n'est pas une valeur valide uint8_t d'un QkBitTerm.
Paramètres
- bit_term - Le terme bit.
Retours
L'étiquette est uint8_t, qui peut être transformée en char pour obtenir le caractère.