atlas_q.quantum_hybrid_system.MatrixProductState#
- class atlas_q.quantum_hybrid_system.MatrixProductState(num_qubits, bond_dim=8)[source]#
Bases:
CompressedQuantumStateTensor network representation for moderate entanglement Memory: O(n × χ²) where χ is bond dimension
Can simulate 50-100 qubits with controlled entanglement!
NEW: MPS canonicalization and sweep sampling for accurate measurements
Methods
Bring MPS into left-canonical form using QR decomposition
Bring MPS into right-canonical form using QR decomposition
get_amplitude(basis_state)Contract MPS to get amplitude - O(n × χ²)
get_probability(basis_state)Get measurement probability for a basis state
measure([num_shots])Simulate measurement with accurate MPS sampling
Memory usage in bytes
sweep_sample([num_shots])Accurate MPS sampling using conditional probabilities sweep
Methods
__init__(num_qubits[, bond_dim])Bring MPS into left-canonical form using QR decomposition
Bring MPS into right-canonical form using QR decomposition
get_amplitude(basis_state)Contract MPS to get amplitude - O(n × χ²)
get_probability(basis_state)Get measurement probability for a basis state
measure([num_shots])Simulate measurement with accurate MPS sampling
Memory usage in bytes
sweep_sample([num_shots])Accurate MPS sampling using conditional probabilities sweep
- canonicalize_left_to_right()[source]#
Bring MPS into left-canonical form using QR decomposition
Each tensor satisfies: Σₛ Aˢ†Aˢ = I (left-orthogonal) This enables efficient sampling and norm computation!
- canonicalize_right_to_left()[source]#
Bring MPS into right-canonical form using QR decomposition
Each tensor satisfies: Σₛ AˢAˢ† = I (right-orthogonal)
- sweep_sample(num_shots=1)[source]#
Accurate MPS sampling using conditional probabilities sweep
This is the CORRECT way to sample from MPS! Complexity: O(num_shots × n × χ²)