Current state
GroverAlgorithm.jl provides the basic circuit components for Grover's algorithm via ITensors/ITensorMPS. The Toffoli gate is implemented in example/toffoli.jl.
Missing functionality
-
General oracle: the current implementation likely hard-codes a specific target state. A general oracle should accept any boolean predicate or a list of target bitstrings.
-
Multi-target search: Grover's works for k targets with O(sqrt(N/k)) oracle calls — not currently tested.
-
MPS simulation scaling: no benchmark comparing exact statevector vs MPS with varying chi to identify where entanglement buildup degrades accuracy.
-
Quantum circuit diagram output: the QuantikzIO module generates LaTeX diagrams but there is no automated test that it produces valid Quantikz output.
Proposed tasks
Current state
GroverAlgorithm.jlprovides the basic circuit components for Grover's algorithm via ITensors/ITensorMPS. The Toffoli gate is implemented inexample/toffoli.jl.Missing functionality
General oracle: the current implementation likely hard-codes a specific target state. A general oracle should accept any boolean predicate or a list of target bitstrings.
Multi-target search: Grover's works for k targets with O(sqrt(N/k)) oracle calls — not currently tested.
MPS simulation scaling: no benchmark comparing exact statevector vs MPS with varying chi to identify where entanglement buildup degrades accuracy.
Quantum circuit diagram output: the
QuantikzIOmodule generates LaTeX diagrams but there is no automated test that it produces valid Quantikz output.Proposed tasks
target_states::Vector{String}(bitstring list)test/core/test_oracle.jlwith at least 2 oracle variants