Este repositório contém uma implementação do algoritmo HHL para uma matriz específica de 4 x 4:
A = 1 / 4 * numpy . array ([[ 15 , 9 , 5 , - 3 ],
[ 9 , 15 , 3 , - 5 ],
[ 5 , 3 , 15 , - 9 ],
[ - 3 , - 5 , - 9 , 15 ]])
A implementação é inspirada no projeto de circuito quântico de papel para resolver sistemas lineares de equações, escritos por Yudong Cao, Anmer Daskin, Steven Frankel e Saber Kais.
O procedimento de instalação é composto por várias etapas, algumas delas opcionais:
python3 -m venv hhl_venv
source hhl_venv/bin/activate
git clone https://github.com/nelimee/quantum-hhl-4x4.git
cd quantum-hhl-4x4
pip install -r requirements.txt
python3 setup.py install
O diretório principal contém:
LICENSE
explicando sob a qual esse código é distribuído. Para mais informações, leia as notas sobre a seção de licença.requirements.txt
que pode ser usado para instalar todas as dependências do software.setup.py
usado para instalar o código.hhl4x4
, que contém todo o código Python.hhl4x4
A pasta hhl4x4
contém todo o código Python usado para implementar o algoritmo HHL para a matriz a . Está organizado em 2 pastas e 3 arquivos python:
custom_gates
contém a implementação de portões quânticos definidos pelo usuário, como o portão Z
duplamente controlado (um portão Z
controlado por 2 qubits) ou o portão RZZ controlado (uma mudança de fase global controlada). O algoritmo HHL é implementado um portão quântico definido pelo usuário no arquivo hhl4x4.py
.utils
contém 2 arquivos python: endianness.py
usado para cuidar dos registros endianness e registers.py
que implementa o wrapper em torno das classes de registro base usadas pelo Qiskit.4x4.py
: a implementação completa do algoritmo HHL. Depois que o software for instalado (após uma python setup.py install
), você pode executar esse arquivo digitando o comando HHL4x4
no seu terminal.optimise_parameters.py
: o script usado para encontrar os melhores parâmetros para a parte da simulação hamiltoniana. Depois que o software estiver instalado (após uma python setup.py install
), você pode executar esse arquivo digitando o comando HHL4x4_optimise_parameters
no seu terminal. Você pode ver as opções disponíveis com HHL4x4_optimise_parameters --help
. Nota: O comando HHL4x4
ou o script 4x4.py gerará o arquivo 4x4.qasm
contendo o código OpenQasm do algoritmo HHL implementado no diretório atual. Uma visualização do histograma do estado quântico final também será exibido no final do programa.
Este software está licenciado sob a licença Cecill-B. A licença Cecill-B aplica a obrigação para quem quiser usar este software (de qualquer forma) para citar os autores e a fonte originais.
Se você quiser usar este software, cite:
Se você tiver alguma dúvida, leia a licença. Se você ainda tiver dúvidas ou perguntas, envie -me um e -mail em [email protected].