Um oráculo era uma operação que implementava uma função f. Na forma reversível, Uf|x,y⟩=|x,y⊕f(x)⟩. O nome não significava banco de dados gratuito e mágico; era uma abstração para contar quantas vezes o algoritmo usa a parte específica do problema.
Lia preparou o alvo em |−⟩. Como X|−⟩=−|−⟩, somar f(x) ao alvo devolvia um fator (−1)^{f(x)} ao componente |x⟩, enquanto o alvo se separava. A resposta virava fase: Uf|x⟩|−⟩=(−1)^{f(x)}|x⟩|−⟩.
Essa técnica era phase kickback. O oráculo não imprimiu todos os valores de f; marcou componentes com sinais. Portas posteriores fariam sinais interferirem para extrair uma propriedade escolhida da função.
Tomás enfatizou o custo escondido. Se f é uma rotina clássica, ela precisa ser compilada reversivelmente, com registradores auxiliares e descomputação de lixo. Se é memória, carregar N dados arbitrários pode consumir O(N) recursos. O modelo de consulta isola uma questão e não elimina implementação.
Lia mediu logo após o oráculo e obteve uma entrada aleatória, desperdiçando a estrutura de fase. O estado intermediário continha informação distribuída, mas apenas uma transformação global adequada poderia trazê-la a poucas probabilidades úteis.
A analogia de carimbar cartões ajudava, mas terminava porque um carimbo físico torna cada marca legível. O oráculo de fase preserva coerência e a marca só aparece relativamente a outros componentes durante interferência.
O oráculo escrevera sem responder diretamente. Essa separação entre consultar e extrair seria a engrenagem dos três algoritmos: sinais codificariam função, difusão ou periodicidade antes da medição final.