PySparQ.pysparq.algorithms.cks_solver¶
CKS (Childs-Kothari-Somma) Linear System Solver Implementation
Classes¶
Computes Chebyshev polynomial coefficients for quantum walk. |
|
Conditional rotation for quantum walk. |
|
LCU (Linear Combination of Unitaries) container for CKS. |
|
Quantum binary search for sparse matrix access. |
|
Quantum walk operator for CKS algorithm. |
|
Multiple quantum walk steps for CKS algorithm. |
|
Sparse matrix representation for CKS algorithm. |
|
Sparse matrix data for quantum simulation. |
|
T operator for CKS algorithm. |
Functions¶
|
Solve Ax = b using CKS quantum linear solver. |
|
Generate a demo script for CKS solver. |
|
Get rotation matrix coefficients for general (signed) matrix elements. |
|
Get rotation matrix coefficients for positive-only matrix elements. |
|
Create walk angle function for a matrix. |
Module Contents¶
- class PySparQ.pysparq.algorithms.cks_solver.ChebyshevPolynomialCoefficient(b: int)[源代码]¶
Computes Chebyshev polynomial coefficients for quantum walk.
- class PySparQ.pysparq.algorithms.cks_solver.CondRotQW(j_reg: str, k_reg: str, data_reg: str, output_reg: str, mat: SparseMatrix)[源代码]¶
Conditional rotation for quantum walk.
- mat: SparseMatrix[源代码]¶
- class PySparQ.pysparq.algorithms.cks_solver.LCUContainer(mat: SparseMatrix, kappa: float, eps: float, qram: pysparq.QRAMCircuit_qutrit | None = ...)[源代码]¶
LCU (Linear Combination of Unitaries) container for CKS.
- chebyshev: ChebyshevPolynomialCoefficient[源代码]¶
- walk: QuantumWalkNSteps[源代码]¶
- class PySparQ.pysparq.algorithms.cks_solver.QuantumBinarySearch(qram: pysparq.QRAMCircuit_qutrit, address_offset_reg: str, total_length: int, target_reg: str, result_reg: str)[源代码]¶
Quantum binary search for sparse matrix access.
- class PySparQ.pysparq.algorithms.cks_solver.QuantumWalk(qram: pysparq.QRAMCircuit_qutrit, j_reg: str, b1_reg: str, k_reg: str, b2_reg: str, j_comp_reg: str, k_comp_reg: str, data_offset_reg: str, sparse_offset_reg: str, mat: SparseMatrix)[源代码]¶
Quantum walk operator for CKS algorithm.
- mat: SparseMatrix[源代码]¶
- class PySparQ.pysparq.algorithms.cks_solver.QuantumWalkNSteps(mat: SparseMatrix, qram: pysparq.QRAMCircuit_qutrit | None = ...)[源代码]¶
Multiple quantum walk steps for CKS algorithm.
- mat: SparseMatrix[源代码]¶
- class PySparQ.pysparq.algorithms.cks_solver.SparseMatrix(n_row: int, nnz_col: int, data: list[int], data_size: int, positive_only: bool = ...)[源代码]¶
Sparse matrix representation for CKS algorithm.
- classmethod from_dense(matrix: numpy.ndarray, data_size: int = ..., positive_only: bool | None = ...) SparseMatrix[源代码]¶
- class PySparQ.pysparq.algorithms.cks_solver.SparseMatrixData(n_row: int, nnz_col: int, data: list[int], data_size: int, positive_only: bool = ..., sparsity_offset: int = ...)[源代码]¶
Sparse matrix data for quantum simulation.
- class PySparQ.pysparq.algorithms.cks_solver.TOperator(qram: pysparq.QRAMCircuit_qutrit, data_offset_reg: str, sparse_offset_reg: str, j_reg: str, b1_reg: str, k_reg: str, b2_reg: str, search_result_reg: str, nnz_col: int, data_size: int, mat: SparseMatrix)[源代码]¶
T operator for CKS algorithm.
- mat: SparseMatrix[源代码]¶
- PySparQ.pysparq.algorithms.cks_solver.cks_solve(A: numpy.ndarray, b: numpy.ndarray, kappa: float | None = ..., eps: float = ..., data_size: int = ...) numpy.ndarray[源代码]¶
Solve Ax = b using CKS quantum linear solver.
- PySparQ.pysparq.algorithms.cks_solver.create_cks_demo() str[源代码]¶
Generate a demo script for CKS solver.
- PySparQ.pysparq.algorithms.cks_solver.get_coef_common(mat_data_size: int, v: int, row: int, col: int) list[complex][源代码]¶
Get rotation matrix coefficients for general (signed) matrix elements.