Skip to main content
IBM Quantum Platform

QkBitTerm

enum QkBitTerm

Uma enumeração que representa cada um dos termos do alfabeto de um único qubit enumerados abaixo.


Valores

  • QkBitTerm_X

    O operador Pauli XX.

    Valor: 2 (0b0010)

  • QkBitTerm_Y

    O operador Pauli YY.

    Valor: 3 (0b0011)

  • QkBitTerm_Z

    O operador Pauli ZZ.

    Valor: 1 (0b0001)

  • QkBitTerm_Plus

    O projetor ++\lvert +\rangle\langle +\rvert para o estado próprio XX positivo.

    Valor: 10 (0b1010)

  • QkBitTerm_Minus

    O projetor \lvert -\rangle\langle -\rvert para o estado XX negativo.

    Valor: 6 (0b0110)

  • QkBitTerm_Right

    O projetor rr\lvert r\rangle\langle r\rvert para o estado próprio YY positivo.

    Valor: 11 (0b1011)

  • QkBitTerm_Left

    O projetor ll\lvert l\rangle\langle l\rvert para o estado YY negativo.

    Valor: 7 (0b0111)

  • QkBitTerm_Zero

    O projetor 00\lvert 0\rangle\langle 0\rvert para o estado próprio ZZ positivo.

    Valor: 9 (0b1001)

  • QkBitTerm_One

    O projetor 11\lvert 1\rangle\langle 1\rvert para o estado ZZ negativo.

    Valor: 5 (0b0101)


Representação

O enum é armazenado como byte único e seus elementos são representados como um número inteiro de 8 bits sem sinal.

typedef uint8_t QkBitTerm
Aviso

Nem todos os valores de uint8_t são termos de bits válidos. Passar valores inválidos é um comportamento indefinido.

A estrutura numérica deles é que todos são valores de quatro bits, dos quais os dois bits inferiores são a representação simpática (sem fase) do operador de Pauli relacionado ao objeto, em que o bit inferior denota uma contribuição de ZZ e o segundo inferior uma contribuição de XX, enquanto os dois bits superiores são 00 para um operador de Pauli, 01 para o projetor de estado próprio negativo e 10 para o projetor de estado próprio positivo.


Funções

qk_bitterm_label

uint8_t qk_bitterm_label(QkBitTerm bit_term)

Obtenha o rótulo por um período curto.

Exemplo

QkBitTerm bit_term = QkBitTerm_Y;
// cast the uint8_t to char
char label = qk_bitterm_label(bit_term);

Segurança

O comportamento é indefinido se bit_term não for um valor uint8_t válido de um QkBitTerm.

Parâmetros

  • bit_term - O termo de bit.

Retorna

O rótulo como uint8_t, que pode ser convertido em char para obter o caractere.

Esta página foi útil?
Relate um bug, erro de digitação ou solicite conteúdo no GitHub.