Quantum ansatz (parameterized circuit) construction for variational algorithms.
This namespace provides various ansatz types used in VQE and other variational quantum algorithms. Each ansatz is designed for specific problem types and hardware constraints.
Key Responsibilities:
Design Principles:
Quantum ansatz (parameterized circuit) construction for variational algorithms. This namespace provides various ansatz types used in VQE and other variational quantum algorithms. Each ansatz is designed for specific problem types and hardware constraints. Key Responsibilities: - Hardware-efficient ansatz for NISQ devices - Chemistry-inspired ansatz for molecular systems - UCCSD-inspired ansatz for quantum chemistry - Symmetry-preserving ansatz for fermionic systems - Parameter initialization strategies Design Principles: - Pure functions returning circuit constructors - Configurable parameters for flexibility - Hardware-aware circuit structures - Reusable across different algorithms
(chemistry-inspired-ansatz num-qubits)
(chemistry-inspired-ansatz num-qubits num-excitation-layers)
Create a chemistry-inspired ansatz circuit optimized for molecular problems.
This ansatz is specifically designed for quantum chemistry problems like H2. It creates proper electron correlation patterns and can represent states like c₁|1100⟩ + c₂|0011⟩ which are typical in molecular ground states.
The ansatz structure:
Parameters:
Returns: Function that takes parameters and returns a quantum circuit
Create a chemistry-inspired ansatz circuit optimized for molecular problems. This ansatz is specifically designed for quantum chemistry problems like H2. It creates proper electron correlation patterns and can represent states like c₁|1100⟩ + c₂|0011⟩ which are typical in molecular ground states. The ansatz structure: 1. Prepare approximate Hartree-Fock reference state 2. Add single excitations within electron pairs 3. Add double excitations between electron pairs Parameters: - num-qubits: Number of qubits (should be even for electron pairs) - num-excitation-layers: Number of excitation layers (default: 1) Returns: Function that takes parameters and returns a quantum circuit
(hardware-efficient-ansatz num-qubits)
(hardware-efficient-ansatz num-qubits num-layers)
(hardware-efficient-ansatz num-qubits num-layers entangling-gate)
Create a hardware-efficient ansatz circuit.
This ansatz consists of layers of single-qubit rotations followed by entangling gates, designed to be implementable on near-term quantum devices.
Parameters:
Returns: Function that takes parameters and returns a quantum circuit
Create a hardware-efficient ansatz circuit. This ansatz consists of layers of single-qubit rotations followed by entangling gates, designed to be implementable on near-term quantum devices. Parameters: - num-qubits: Number of qubits - num-layers: Number of ansatz layers (default: 1) - entangling-gate: Type of entangling gate (:cnot, :cz, :crz) (default: :cnot) Returns: Function that takes parameters and returns a quantum circuit
(hartree-fock-initialization ansatz-type
num-qubits
num-electrons
&
{:as additional-options})
Generate Hartree-Fock initialization parameters for a given ansatz.
For molecular systems, this provides a good starting point by initializing parameters to create a state close to the Hartree-Fock reference state.
Parameters:
Returns: Vector of initialization parameters
Generate Hartree-Fock initialization parameters for a given ansatz. For molecular systems, this provides a good starting point by initializing parameters to create a state close to the Hartree-Fock reference state. Parameters: - ansatz-type: Type of ansatz (:hardware-efficient, :chemistry-inspired, etc.) - num-qubits: Number of qubits - num-electrons: Number of electrons (particles) in the system - additional-options: Additional options specific to ansatz type Returns: Vector of initialization parameters
(symmetry-preserving-ansatz num-qubits num-particles)
(symmetry-preserving-ansatz num-qubits num-particles num-layers)
Create a symmetry-preserving ansatz circuit.
This ansatz preserves certain symmetries like particle number conservation, important for quantum chemistry and condensed matter applications.
Parameters:
Returns: Function that takes parameters and returns a quantum circuit
Create a symmetry-preserving ansatz circuit. This ansatz preserves certain symmetries like particle number conservation, important for quantum chemistry and condensed matter applications. Parameters: - num-qubits: Number of qubits - num-particles: Number of particles to conserve - num-layers: Number of ansatz layers Returns: Function that takes parameters and returns a quantum circuit
(uccsd-inspired-ansatz num-qubits)
(uccsd-inspired-ansatz num-qubits num-excitations)
Create a UCCSD-inspired ansatz circuit.
Unitary Coupled Cluster with Singles and Doubles (UCCSD) is a quantum chemistry ansatz that captures important electronic correlations. This is a simplified version suitable for VQE implementations.
Parameters:
Returns: Function that takes parameters and returns a quantum circuit
Create a UCCSD-inspired ansatz circuit. Unitary Coupled Cluster with Singles and Doubles (UCCSD) is a quantum chemistry ansatz that captures important electronic correlations. This is a simplified version suitable for VQE implementations. Parameters: - num-qubits: Number of qubits (must be even for electron pairs) - num-excitations: Number of excitation operators to include Returns: Function that takes parameters and returns a quantum circuit
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close