Overview
TheQuantumComputer class is the main entry point for running quantum circuits on the collapse-free simulator. It manages the joint Hilbert space of n qubits (dimension 2^n) and provides multiple physics backends for amplitude evolution.
Key Features:
- Non-destructive Born-rule measurements (state never collapses)
- True entanglement support via joint amplitude representation
- Multiple neural physics backends (Hamiltonian, Schrödinger, Dirac)
- Built-in quantum algorithms (Bell, GHZ, Grover, QFT, etc.)
quantum_computer.py:1331-1582
Constructor
Configuration object specifying grid size, neural network architecture, checkpoint paths, and hardware settings. If
None, uses default configuration with:grid_size=16hidden_dim=32expansion_dim=64num_spectral_layers=2device="cuda"if available, else"cpu"random_seed=42- Default checkpoint paths in
weights/directory
Example
Methods
run
The quantum circuit to execute
Physics backend name. Options:
"hamiltonian": Hamiltonian neural network (first-order Schrödinger evolution)"schrodinger": Schrödinger spectral network (learned evolution)"dirac": Dirac relativistic spinor network (4-component spinors)
Optional dictionary mapping qubit indices to initial states
"0" or "1". If not provided, all qubits initialize to |0⟩. Example: {0: "1", 2: "1"} initializes qubits 0 and 2 to |1⟩.Non-destructive measurement result containing:
full_distribution: Dict[str, float] of probabilities for all 2^n basis statesmarginal_p1: Dict[int, float] of P(|1⟩) for each qubitbloch_vectors: Dict[int, Tuple[float, float, float]] for each qubit- Methods:
most_probable_bitstring(),expectation_z(qubit),entropy()
Example
run_with_state_snapshots
The quantum circuit to execute
Physics backend name
List of instruction indices after which to capture probability distributions. If
None, captures after every instruction.Tuple of:
- Final
MeasurementResult - List of probability distributions (one per snapshot), each as Dict[str, float] mapping bitstrings to probabilities
Example
bell_state
Physics backend name
Measurement result with P(|00⟩)≈0.5, P(|11⟩)≈0.5, entropy≈1 bit
ghz_state
Number of qubits
Physics backend name
Measurement result with P(|00…0⟩)≈0.5, P(|11…1⟩)≈0.5
quantum_fourier_transform
Number of qubits
Physics backend name
Measurement result. For QFT on |0⟩^n, all 2^n basis states have equal probability 1/2^n, entropy = n bits.
grover_oracle_search
Number of qubits
Binary string of length n_qubits to search for (e.g.,
"101")Physics backend name
Number of Grover iterations. If
None, uses optimal value: max(1, round(π/4 * √(2^n)))Measurement result. The target bitstring should have highest probability (~94% for optimal iterations).
Example
variational_ansatz
Number of qubits
Number of layers
Rotation parameters. Must have length
n_qubits * n_layers.Physics backend name
Measurement result for the parameterized circuit
teleportation
Physics backend name
Measurement result. Qubit 2 should match qubit 0’s initial state after corrections.
deutsch_jozsa
Number of input qubits (total qubits = n_input_qubits + 1)
If
True, implements constant function (all inputs measure |0⟩). If False, implements balanced function (at least one input measures |1⟩).Physics backend name
Measurement result. For constant function, input qubits measure |0⟩^n. For balanced, at least one input qubit measures |1⟩.
Configuration
SimulatorConfig
Dataclass for global simulator configuration.grid_size, hidden_dim, expansion_dim, and num_spectral_layers must match the values used during checkpoint training.
Complete Example
See Also
- QuantumCircuit - Build quantum circuits
- JointHilbertState - Access state amplitudes directly