Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
e1142dd
Criando circuito do Deutsch-Jozsa
Tiagoblima Jul 18, 2019
e992fa3
finishing deutsch-jozsa
Tiagoblima Aug 1, 2019
4d4990b
atualizando deutsch-jozsa
Tiagoblima Aug 1, 2019
60ca596
Removing unecessary folders
Tiagoblima Aug 1, 2019
a24f070
Checkpoints in the .ipynb_checkpoints folder
IsmaelCesar Aug 1, 2019
75e6337
updating all
Tiagoblima Aug 3, 2019
c9301fa
Inicio da implementação do algoritmo de Grover
Tiagoblima Aug 3, 2019
fe28643
updating grover
Tiagoblima Aug 3, 2019
bf2dbc9
Continuação do algoritmo de grover
Tiagoblima Aug 5, 2019
ded1210
O algoritmo está implementado porém há algo errado
Tiagoblima Aug 5, 2019
7f2b80e
Introdução e construção do sistema
IsmaelCesar Aug 6, 2019
547f611
Inversão sobre a média
IsmaelCesar Aug 7, 2019
0c52aec
Exemplo algoritmo de Grover
IsmaelCesar Aug 7, 2019
023020d
Grover atualizado
IsmaelCesar Aug 11, 2019
39cd588
Atualizando Deutsch -Jozsa
Tiagoblima Aug 12, 2019
e45b759
update
Tiagoblima Aug 12, 2019
862f0bb
Algoritmo de Grover concertado
IsmaelCesar Aug 13, 2019
06eaba6
alterações
Tiagoblima Aug 13, 2019
e7be4be
alteração
Tiagoblima Aug 13, 2019
639a523
-Errado -> Explicar a quantidade de interações
Tiagoblima Aug 13, 2019
fa74574
Explicar a quantidade de iterações (estava errada não é \sqrt(N)
Tiagoblima Aug 13, 2019
3a0ec11
update
Tiagoblima Aug 13, 2019
a9a145a
Atualizações do grover
Tiagoblima Aug 13, 2019
862136b
update chekpoint
Tiagoblima Aug 14, 2019
6ef0e38
update
Tiagoblima Aug 14, 2019
4e94d7e
Úlitmos ajustes
Tiagoblima Aug 15, 2019
4876a2d
últimas alterações
Tiagoblima Aug 15, 2019
30aafbd
ajustes
Tiagoblima Aug 15, 2019
1940065
Merge branch 'master' of https://github.com/Tiagoblima/cqtutorial
Tiagoblima Aug 15, 2019
9029e6b
deutsch jozsa
Tiagoblima Aug 15, 2019
a737e76
grover
Tiagoblima Aug 15, 2019
a8ba3a7
deletando os arquivos
Tiagoblima Aug 15, 2019
16f1ba3
Revisão e correção ortográfica
Tiagoblima Aug 16, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
408 changes: 408 additions & 0 deletions .ipynb_checkpoints/deutsch_jozsa-checkpoint.ipynb

Large diffs are not rendered by default.

749 changes: 749 additions & 0 deletions .ipynb_checkpoints/grover-checkpoint.ipynb

Large diffs are not rendered by default.

24 changes: 11 additions & 13 deletions deutsch_jozsa.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
"metadata": {},
"source": [
"\n",
"# Problema de Deutch e Deutch-Jozsa\n",
"# Problema de Deutsch e Deutsch-Jozsa\n",
"\n",
"## Observação dos autores\n",
"\n",
Expand All @@ -14,9 +14,9 @@
"### Cronograma\n",
"- Antes de comecarmos\n",
"- Paralelismo Quântico\n",
"- Problema de Deutch\n",
"- Problema de Deutsch\n",
"- Porta Hadamard para N qubits\n",
"- Problema de Deutch-Jozsa\n"
"- Problema de Deutsch-Jozsa\n"
]
},
{
Expand All @@ -27,8 +27,6 @@
"\n",
" Uma das principais vantagens de se utilizar um computador quântico é a possibilidade de utilizarmos *paralelismo quântico* para computarmos diferentes entradas simultaneamente.\n",
"\n",
"Porém você deve estar se perguntando **\"Paralelismo quântico?\" \"O que é isso?\"**\n",
"\n",
"Para entendermos esse conceito precisamos ter em mente as seguintes definições:\n",
"\n",
" - O que é um bit quântico ou qubit e como ele pode assumir dois estados ao mesmo tempo, o que é chamado de superposição. \n",
Expand Down Expand Up @@ -62,7 +60,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"# Problema de Deutch\n",
"# Problema de Deutsch\n",
"\n",
"Agora que temos um noção do comportamento de $U_f$ e como podemos obtê-lo podemos falar do problema de Deutsch.\n",
"\n",
Expand Down Expand Up @@ -220,9 +218,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"## Problema de Deutch Jozsa\n",
"## Problema de Deutsch Jozsa\n",
"\n",
"O algoritmo de Deutch-Jozsa é uma extensão do algoritmo que apresentado por Deutch, porém considerando entradas de múltiplos qubits. Seja uma função tal que $f : \\{0,1\\}^N \\mapsto \\{0,1\\}$. A função $f$ é considerada constante se para toda entrada $x$ a mesma para um único valor do contra domínio. Em contrapartida, a mesma é considerada balanceada se para exatamente metade dos valores $x$ , $f$ mapeia para $0$ enquanto que a outra metade é mapeada para $1$. Num computador clássico, para verificar se $f$ é constante ou balanceada, seria necessário avaliar $f$ para no mínimo $\\frac{2^{N}}{2} + 1 = 2^{N-1}+1$ valores. Para o algoritmo de Deutch-Jozsa, é possível fazer esta verificação avaliando $f$ apenas uma vez. Fazendo uso de paralelismo quântico e interferência quântica.\n",
"O algoritmo de Deutsch-Jozsa é uma extensão do algoritmo que apresentado por Deutch, porém considerando entradas de múltiplos qubits. Seja uma função tal que $f : \\{0,1\\}^N \\mapsto \\{0,1\\}$. A função $f$ é considerada constante se para toda entrada $x$ a mesma para um único valor do contra domínio. Em contrapartida, a mesma é considerada balanceada se para exatamente metade dos valores $x$ , $f$ mapeia para $0$ enquanto que a outra metade é mapeada para $1$. Num computador clássico, para verificar se $f$ é constante ou balanceada, seria necessário avaliar $f$ para no mínimo $\\frac{2^{N}}{2} + 1 = 2^{N-1}+1$ valores. Para o algoritmo de Deutch-Jozsa, é possível fazer esta verificação avaliando $f$ apenas uma vez. Fazendo uso de paralelismo quântico e interferência quântica.\n",
"\n",
"\n",
"Porém, antes de seguirmos com a explanação do algoritmo vale a pena verificar o que a contece caso apliquemos o operador $U_f$ para uma entrada $x$ com $N$ qubits. Sejam os registradores de entrada e a ancilla nos estados $|x\\rangle$ e $\\frac{|0\\rangle + |1\\rangle}{\\sqrt{2}}$ respectivamente. Sendo assim, a evolução do sistema ficaria da seguinte forma:\n",
Expand Down Expand Up @@ -527,21 +525,21 @@
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"display_name": "Python 2",
"language": "python",
"name": "python3"
"name": "python2"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
"version": 2
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.7.3"
"pygments_lexer": "ipython2",
"version": "2.7.14"
}
},
"nbformat": 4,
Expand Down
749 changes: 749 additions & 0 deletions grover.ipynb

Large diffs are not rendered by default.

Empty file removed simon.ipynb
Empty file.
333 changes: 0 additions & 333 deletions superdense.ipynb

This file was deleted.

528 changes: 0 additions & 528 deletions teletransporte.ipynb

This file was deleted.