O Qinterpreter é uma ferramenta de código aberto projetada para integrar cinco das bibliotecas quânticas baseadas em Python mais populares: Qiskit, Pyquil, Pennylane, Amazon Braket e Cirq. Desenvolvidas por líderes da indústria como IBM, Amazon, Google, Rigetti Computing e Xanadu, essas bibliotecas são unificadas em um único framework pelo Qinterpreter.
Essa integração permite que os usuários interajam com todas as cinco plataformas e executem códigos de forma integrada. Essencialmente, o Qinterpreter atua como um simulador que traduz algoritmos entre essas bibliotecas, estando disponível gratuitamente online. Isso é especialmente útil para pesquisadores e iniciantes que não têm acesso a computadores quânticos físicos.
Para mais informações, consulte o seguinte artigo:
Unleashing quantum algorithms with Qinterpreter: bridging the gap between theory and practice across leading quantum computing platformsO Qinterpreter serve como uma ferramenta educacional e de treinamento, proporcionando uma entrada acessível e amigável para aqueles que estão começando a explorar a computação quântica. Ele permite aos usuários desenvolver e executar circuitos quânticos em múltiplas plataformas de forma simplificada.
Além disso, o desenvolvimento e a implementação do Qinterpreter funcionam como um teste piloto para a plataforma Quantum Science Gateway, representando o primeiro passo na criação de um espaço colaborativo e inclusivo que promove a inovação e a educação em ciência quântica.
O Qinterpreter opera em três etapas sequenciais. A primeira etapa envolve a criação de uma linguagem comum chamada Qinterpreter. A segunda etapa é a tradução dessa linguagem para as cinco estruturas distintas: Qiskit, Cirq, PennyLane, PyQuil e Amazon Braket. A etapa final envolve o gerenciamento do processo de simulação. Seguindo essa abordagem, o Qinterpreter oferece um ambiente no qual os usuários podem interagir com esses cinco backends quânticos. Esses backends servem como interfaces para simuladores quânticos, permitindo que os usuários realizem simulações ou executem código sem precisar entender os detalhes técnicos subjacentes.
O processo depende de regras predefinidas centradas nos portões básicos usados na computação quântica. Como a maioria das bibliotecas segue um conjunto padrão de portões básicos, o Qinterpreter adapta esses portões simples para cada biblioteca específica. O núcleo do processo de tradução é o mapeamento dos portões do modelo agnóstico de framework para os portões correspondentes na estrutura de destino, garantindo compatibilidade e execução bem-sucedida no backend escolhido. Cada tradutor usa o backend da respectiva biblioteca para tradução e simulação de circuitos. Por exemplo, o Qiskit usa o backend Aer para simulação de vetor de estado, enquanto o PennyLane usa seu dispositivo padrão de qubits. Antes de prosseguirmos com um exemplo, vamos revisar o processo de instalação.
Para garantir que o Qinterpreter funcione corretamente, instale as versões de biblioteca necessárias executando os seguintes comandos no seu console Python:
Se você estiver trabalhando no Jupyter Notebook ou JupyterLab, basta adicionar ! no início de cada comando para instalar as versões específicas das bibliotecas.
Em seguida, instale o Qinterpreter executando:
After completing the installation, import the necessary quantum libraries with the following code:
Os usuários devem se familiarizar com as regras e instruções do Qinterpreter. Como exemplo, vamos simular um circuito quântico básico que cria o estado de Bell:
|Ψ+⟩ = (1/√2)(|00⟩ + |11⟩)
Este é um estado emaranhado entre dois qubits.
A função QuantumCircuit(), no Qinterpreter, é responsável por criar um circuito baseado no número especificado de qubits e registradores clássicos. Para o exemplo do estado de Bell, precisamos de dois registradores quânticos e dois registradores clássicos:
Posteriormente, adicionamos as portas quânticas necessárias para simular nosso estado de sino
onde a porta de Hadamard (h) cria uma superposição, resultando no estado (|00⟩ + |01⟩) / √2, enquanto a porta cnot entrelaça os qubits para formar o estado de Bell (|00⟩ + |11⟩) / √2.
Para realizar a simulação do nosso circuito, implementamos a operação de medição da seguinte maneira:
Selecione o framework para exibir a simulação (Qiskit, Pyquil, Pennylane, Amazon Braket ou Cirq) e use o seguinte comando:
Imprimir o circuito em qualquer biblioteca de computação quântica permite que os usuários visualizem e depurem seus circuitos quânticos criados. Neste caso, para visualizar o circuito e garantir que ele funcione corretamente, aplica-se a seguinte regra:
Para a simulação de circuitos, utilizamos os simuladores adequados fornecidos por cada biblioteca. No caso do Qiskit, utiliza-se o simulador QASM. No entanto, para o framework específico pyQuil, o usuário deve instalar os requisitos de software descritos na documentação fornecida pela Rigetti (Installation and Getting Started — pyQuil 3.5.4 documentation (rigetti.com)). O comando para executar e imprimir as simulações é o seguinte:
Qubithub.org é uma iniciativa latino-americana com parceiros nos Estados Unidos, focada no avanço da computação quântica e seus campos interdisciplinares relacionados, como óptica quântica, informação quântica, fotônica, inteligência artificial, nanociências e robótica.