HiddenLinearFunction
class qiskit.circuit.library.HiddenLinearFunction(adjacency_matrix)
Bases: QuantumCircuit
Circuito para resolver o problema da função linear oculta.
O problema da função linear oculta 2D é determinado por uma matriz de adjacência 2D A, em que somente os elementos que são vizinhos mais próximos em uma grade têm entradas diferentes de zero. Cada linha/coluna corresponde a uma variável binária .
O problema da função linear oculta é o seguinte:
Considere a forma quadrática
e restringir ao espaço nulo de A. Isso resulta em uma função linear.
e o objetivo é recuperar essa função linear (ou seja, um vetor ). Pode haver várias soluções.
Em [1], é mostrado que o circuito atual resolve esse problema em um computador quântico com profundidade constante, enquanto qualquer solução correspondente em um computador clássico exigiria circuitos que crescem logaritmicamente com . Portanto, esse circuito é um exemplo de vantagem quântica com circuitos rasos.
Circuito de referência:

Referências
[1] S. Bravyi, D. Gosset, R. Koenig, Quantum Advantage with Shallow Circuits, 2017. arXiv:1704.00690
Criar um novo circuito HLF.
A classe qiskit.circuit.library.hidden_linear_function.HiddenLinearFunction está obsoleta desde o Qiskit 2.1. Ele será removido no Qiskit 3.0. Em vez disso, use qiskit.circuit.library.hidden_linear_function.
Parâmetros
adjacency_matrix (list | np.ndarray) – uma lista simétrica n por n de listas 0-1. n será o número de qubits.
Aumentos
CircuitError - Se A não for simétrico.
Atributos
name
Tipo: str
Um nome legível por humanos para o circuito.
Exemplo
from qiskit import QuantumCircuit
qc = QuantumCircuit(2, 2, name="my_circuit")
print(qc.name)my_circuit