Computação Quântica para Engenheiros: Portas X, H, T e CNOT com exemplos e cálculo passo-a-passo
Introdução
A computação clássica e a computação quântica representam duas maneiras fundamentais e distintas de manipular informação. Enquanto a computação clássica usa bits (0 ou 1) e operações lógicas implementadas por circuitos digitais integrados, a computação quântica usa qubits, que exploram superposição e emaranhamento. Neste post vamos comparar operações nas duas abordagens, apresentar matrizes de portas quânticas básicas (X, H, T e CNOT) e aplicar essas portas em estados quânticos exemplarmente escolhidos. Também revisaremos o produto tensorial entre qubits para mostrar a construção dos estados de múltiplos qubits.
1 — Diferença entre operações na computação tradicional e na computação quântica
Na computação tradicional (clássica) as operações de processamento são realizadas por circuitos digitais integrados construídos a partir de portas lógicas básicas: OU (OR), NÃO (NOT), E (AND), OU exclusivo (XOR) e COINCIDÊNCIA (AND também pode ser chamada de coincidência em certos contextos). Essas portas operam sobre bits discretos 0/1. Um circuito lógico combina portas para executar funções booleanas; a representação matemática comum é através de tabelas verdade e álgebra booleana.
Na computação quântica, as operações são unitárias e representam transformações lineares sobre vetores em um espaço de Hilbert complexo. Em vez de tabelas booleanas, usamos matrizes unitárias (complexas) que atuam sobre vetores de amplitudes complexas. As portas quânticas preservam norma e podem criar superposição e fases relativas, recursos que não têm análogo direto em lógica clássica.
2 — Portas quânticas: matrizes e aplicação em estados
Matrizes das portas
Porta NOT (X) — 2×2
![]()
Hadamard (H) — 2×2
![]()
T (fase π/4) — 2×2
![]()
CNOT — 4×4 (controle = primeiro qubit, alvo = segundo qubit, base:
)
![Rendered by QuickLaTeX.com \[\mathrm{CNOT}=\begin{pmatrix}1&0&0&0\\0&1&0&0\\0&0&0&1\\0&0&1&0\end{pmatrix}\]](https://digitalinformacao.com/wp-content/ql-cache/quicklatex.com-8bb3a85ef337f87c8570478815091187_l3.png)
Aplicação 1: CNOT em 
Estado na ordem
:
![Rendered by QuickLaTeX.com \[|\psi\rangle = \frac{1}{\sqrt{2}}\begin{pmatrix}0\\1\\1\\0\end{pmatrix}\]](https://digitalinformacao.com/wp-content/ql-cache/quicklatex.com-a5d6c707d7ff5acf4a428dbe5c3a2301_l3.png)
Aplicando CNOT:
![Rendered by QuickLaTeX.com \[\mathrm{CNOT}|\psi\rangle= \frac{1}{\sqrt{2}}\begin{pmatrix}0\\1\\0\\1\end{pmatrix}= \frac{1}{\sqrt{2}}\bigl(|01\rangle + |11\rangle\bigr)\]](https://digitalinformacao.com/wp-content/ql-cache/quicklatex.com-2486628d0187037f28112e11fdaaf827_l3.png)
Aplicações 2: X, H, T em 
Vetor coluna:
![]()
a) Porta NOT (X):
![]()
b) Hadamard (H):
![]()
![]()
c) Porta T:
![]()
![]()
![]()
3 — Produto tensorial
O produto tensorial é uma operação matemática que combina dois vetores (ou estados quânticos) para formar um vetor de dimensão maior, representando o estado conjunto de dois sistemas. Se
é um vetor de dimensão
e
é um vetor de dimensão
, então o produto tensorial
é um vetor de dimensão
, construído multiplicando cada componente de
por todo o vetor
.
Formalmente, se
![Rendered by QuickLaTeX.com \[ u = \begin{pmatrix}u_1\\ u_2\\ \vdots\\ u_m\end{pmatrix} \quad\text{e}\quad v = \begin{pmatrix}v_1\\ v_2\\ \vdots\\ v_n\end{pmatrix}, \]](https://digitalinformacao.com/wp-content/ql-cache/quicklatex.com-45f8c0c037e9e4e2dca3f7263029b938_l3.png)
![Rendered by QuickLaTeX.com \[ u \otimes v = \begin{pmatrix} u_1 v_1\\ u_1 v_2\\ \vdots\\ u_1 v_n\\ u_2 v_1\\ \vdots\\ u_m v_n \end{pmatrix}. \]](https://digitalinformacao.com/wp-content/ql-cache/quicklatex.com-0a8086d879a1c03e8bedc14472826d5a_l3.png)
No caso de qubits, os estados básicos são:
![]()
Aplicando o produto tensorial, temos:
![Rendered by QuickLaTeX.com \[|0\rangle\otimes|0\rangle = \begin{pmatrix}1\\0\end{pmatrix} \otimes \begin{pmatrix}1\\0\end{pmatrix} = \begin{pmatrix}1\\0\\0\\0\end{pmatrix} = |00\rangle\]](https://digitalinformacao.com/wp-content/ql-cache/quicklatex.com-2f55948c522f7adc26151658eeb8995d_l3.png)
![Rendered by QuickLaTeX.com \[|0\rangle\otimes|1\rangle = \begin{pmatrix}1\\0\end{pmatrix} \otimes \begin{pmatrix}0\\1\end{pmatrix} = \begin{pmatrix}0\\1\\0\\0\end{pmatrix} = |01\rangle\]](https://digitalinformacao.com/wp-content/ql-cache/quicklatex.com-b88e7d514e53abb90455a23cef20804b_l3.png)
![Rendered by QuickLaTeX.com \[|1\rangle\otimes|0\rangle = \begin{pmatrix}0\\1\end{pmatrix} \otimes \begin{pmatrix}1\\0\end{pmatrix} = \begin{pmatrix}0\\0\\1\\0\end{pmatrix} = |10\rangle\]](https://digitalinformacao.com/wp-content/ql-cache/quicklatex.com-0dc7e06773753654713ae49c2e7863ed_l3.png)
![Rendered by QuickLaTeX.com \[|1\rangle\otimes|1\rangle = \begin{pmatrix}0\\1\end{pmatrix} \otimes \begin{pmatrix}0\\1\end{pmatrix} = \begin{pmatrix}0\\0\\0\\1\end{pmatrix} = |11\rangle\]](https://digitalinformacao.com/wp-content/ql-cache/quicklatex.com-f7aafb1d66a72f5216d3f6783d60853a_l3.png)
Esse processo permite representar estados compostos e é a base para o conceito de emaranhamento quântico.
Conclusão
A diferença essencial entre computação clássica e quântica reside na natureza das operações: funções booleanas em hardware digital versus matrizes unitárias que transformam amplitudes complexas. Portas quânticas como
têm matrizes explícitas que permitem criar superposição, fases e emaranhamento. A aplicação prática dessas portas a vetores de amplitudes pode ser executada de modo exato e aproximado, como exemplificamos. Entender o produto tensorial é crucial para construir e interpretar estados multi-qubit.
