Algorithms

Divi provides implementations of popular quantum algorithms with a focus on scalability and ease of use. VQE targets ground-state energy estimation; QAOA and PCE target combinatorial optimization; TimeEvolution simulates Hamiltonian dynamics; CustomVQA lets you wrap an arbitrary parameterized circuit as a variational program.

divi.qprog.algorithms Package

Classes

AngleEmbedding([rotation])

Encode features as single-qubit rotation angles.

Ansatz()

Abstract base class for all VQE ansätze.

CustomPerQubitState(state_string)

Per-qubit state from a string of '0', '1', '+', '-'.

CustomVQA(qscript, *[, param_shape, ...])

Custom variational algorithm for a parameterized circuit.

DataBindingMixin()

Shared data-axis behavior for VQA subclasses that fan a feature batch out.

FeatureMap()

Abstract base class for QNN feature maps (classical → quantum encoders).

GenericLayerAnsatz(gate_sequence[, ...])

A flexible ansatz alternating single-qubit gates with optional entanglers.

HartreeFockAnsatz()

Hartree-Fock-based ansatz for quantum chemistry.

InitialState()

Abstract base class for initial quantum state preparation.

InterpolationStrategy()

Strategy for interpolating QAOA parameters from depth p to p+1.

IterativeQAOA(problem, *[, max_depth, ...])

Iterative QAOA with parameter interpolation across increasing depths.

OnesState()

All-ones state |11…1⟩ via PauliX on every qubit.

PCE(problem[, n_qubits, alpha, ...])

Generalized Pauli Correlation Encoding (PCE) VQE.

QAOA(problem, *[, initial_state, ...])

Quantum Approximate Optimization Algorithm (QAOA) implementation.

QAOAAnsatz([local_field])

QAOA-style ansatz inspired by Killoran et al. (2020).

QCCAnsatz()

Qubit Coupled Cluster ansatz.

QNN(n_qubits, feature_map, ansatz, ...[, ...])

Quantum Neural Network trained on a classical feature batch.

SuperpositionState()

Equal superposition via Hadamard on every qubit.

TimeEvolution(hamiltonian[, ...])

Quantum program for Hamiltonian time evolution.

UCCSDAnsatz()

Unitary Coupled Cluster Singles and Doubles (UCCSD) ansatz.

VQE([hamiltonian, molecule, n_electrons, ...])

Variational Quantum Eigensolver (VQE) implementation.

WState(block_size, n_blocks)

Product of W-states on contiguous qubit blocks.

ZerosState()

Computational basis state |00…0⟩ (no gates needed).

ZZFeatureMap([entangling_layout])

ZZ entangling encoding (Havlíček et al., 2019).

Trotterization Strategies

QAOA uses a trotterization strategy to evolve the cost Hamiltonian. The default is ExactTrotterization; QDrift provides randomized sampling for shallower circuits at the cost of more circuits per iteration. See the Hamiltonians reference page for full documentation.

divi.hamiltonians.TrotterizationStrategy

Trotterization strategy protocol.

divi.hamiltonians.ExactTrotterization

Exact Trotterization strategy.

divi.hamiltonians.QDrift

QDrift Trotterization strategy.