Quantum.SIG examples

Grover's Search Algorithm

Search unstructured databases quadratically faster than classical algorithms using quantum amplitude amplification.

🔍 Run Search Demo

How It Works

Grover's algorithm uses quantum superposition and interference to amplify the amplitude of the desired search target state.

import { QuantumCircuit, GroverSearch } from '@quantum-sig/core';

// Search for element #23 in a database of 32 items
async function runGroverSearch() {
  const circuit = QuantumCircuit.builder()
    .addQubits(5) // 5 qubits for 32 possible states
    .applyHadamardToAll(); // Create uniform superposition

  const database = new Array(32).fill(0);
  database[23] = 1; // Mark position #23 as the target

  const searcher = new GroverSearch(database);
  await searcher.search(circuit);

  const result = circuit.measureAll();
  document.getElementById('search-result').innerText = 
    `Found element at position ${result.bitString} (marked item ${database[result.bitString] ? '✓' : '✗'})`;
  updateBars(result.probabilities);
}

runGroverSearch();

This demonstration shows the quadratic speedup for searching an unstructured database.

Search Results

Waiting for search to complete...

Probability Distribution

Quantum Search Circuit

Oracle Diffuser Measurement

Interactive visualization of the amplitude amplification process in Grover's search