Pular para o conteúdo principal
Este projeto está em fase beta. Encontrou um bug? Abra uma issue no GitHub. Tem uma pergunta ou ideia? Pergunte no Discussions — adoraríamos receber seu feedback!
Como está a qualidade da tradução nesta página?

Qiskit Bosons

qiskit-bosons estende o SDK do Qiskit com ferramentas para trabalhar com sistemas bosônicos. Dentro de seu escopo, ele oferece o seguinte:

  • Uma estrutura de dados eficiente para a representação e a manipulação de operadores bosônicos

  • Um framework para implementar codificações bóson-para-qubit, construído em torno de codificações de nível compartilhadas (unária com ou sem projetores, binária padrão, Gray), e uma biblioteca de mapeadores comuns

  • Um framework e uma biblioteca de portas para expressar circuitos bosônicos

  • Um pipeline de transpilação integrado ao processo de transpilação do Qiskit para sintetizar circuitos bosônicos em circuitos baseados em qubits

Primeiros passos​

Este pacote cobre todo o caminho de um operador bosônico até um circuito de qubits. Você pode trabalhar no regime bosônico tanto com a representação de operador quanto com a de circuito, antes de escolher um truncamento e uma codificação bóson-para-qubit que se encaixam no pipeline de transpilação multirrepresentação do Qiskit.

Todos esses recursos são explicados em vários guias para ajudar você a começar. Para uma visão geral de ponta a ponta, comece com o guia Bose-Hubbard.

Discussão técnica​

Intenções de design​

Este pacote foi deliberadamente projetado para se alinhar ao Qiskit: ele se baseia em um núcleo implementado em Rust e oferece bindings de linguagem oficiais para Python. Sua API procura traçar paralelos com o Qiskit para se integrar de forma transparente aos fluxos de trabalho de usuários com experiência em programar com o Qiskit. Embora não exista uma API em C no momento, a arquitetura está preparada para oferecer uma caso a necessidade surja no futuro. A arquitetura deste pacote também é deliberadamente análoga à do qiskit-fermions.

Um princípio central do design do qiskit-bosons foi o desacoplamento entre sua representação de circuito bosônico e sua forma em qubits. Para ser mais preciso: os circuitos bosônicos fazem sentido por si mesmos e não exigem um mapeamento para o espaço de qubits para serem interpretáveis. Além disso, a representação de circuito bosônico não pode fazer nenhuma suposição sobre o truncamento e a codificação bóson-para-qubit aplicados depois. Ambos entram apenas no momento da transpilação.

Política de descontinuação​

Seguimos o versionamento semântico e nos guiamos pelos princípios da política de descontinuação do Qiskit. Ocasionalmente podemos fazer mudanças incompatíveis para melhorar a experiência do usuário. Quando possível, manteremos as interfaces antigas e as marcaremos como descontinuadas, enquanto puderem coexistir com as novas. Cada melhoria substancial, mudança incompatível ou descontinuação será documentada nas notas de versão.

Contribuindo​

O código-fonte está disponível no GitHub.

O guia do desenvolvedor está em CONTRIBUTING.md, na raiz do repositório deste projeto. Ao participar, espera-se que você respeite o código de conduta do Qiskit.

Usamos as issues do GitHub para acompanhar solicitações e bugs.

Citando este pacote​

Se você usar este pacote em sua pesquisa, use o arquivo CITATION.bib no repositório deste projeto para citar a(s) referência(s) apropriada(s).

Licença​

Apache License 2.0