openqarp 0.1.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- openqarp-0.1.0/.claude/skills/plan/SKILL.md +49 -0
- openqarp-0.1.0/.claude/skills/plan-review/SKILL.md +61 -0
- openqarp-0.1.0/.gitattributes +3 -0
- openqarp-0.1.0/.github/ISSUE_TEMPLATE/bug.md +23 -0
- openqarp-0.1.0/.github/ISSUE_TEMPLATE/feature.md +21 -0
- openqarp-0.1.0/.github/PULL_REQUEST_TEMPLATE.md +59 -0
- openqarp-0.1.0/.github/actions/build-wheel/action.yml +35 -0
- openqarp-0.1.0/.github/workflows/ci.yml +294 -0
- openqarp-0.1.0/.github/workflows/nightly.yml +123 -0
- openqarp-0.1.0/.github/workflows/wheels.yml +96 -0
- openqarp-0.1.0/.gitignore +68 -0
- openqarp-0.1.0/.pre-commit-config.yaml +56 -0
- openqarp-0.1.0/AGENTS.md +141 -0
- openqarp-0.1.0/CHANGELOG.md +16 -0
- openqarp-0.1.0/CITATION.cff +46 -0
- openqarp-0.1.0/CLAUDE.md +141 -0
- openqarp-0.1.0/CODEOWNERS +133 -0
- openqarp-0.1.0/CODE_OF_CONDUCT.md +84 -0
- openqarp-0.1.0/CONTRIBUTING.md +111 -0
- openqarp-0.1.0/LICENSE +202 -0
- openqarp-0.1.0/LICENSES_bundled.txt +1659 -0
- openqarp-0.1.0/NOTICE +30 -0
- openqarp-0.1.0/PKG-INFO +358 -0
- openqarp-0.1.0/README.rst +241 -0
- openqarp-0.1.0/SECURITY.md +19 -0
- openqarp-0.1.0/benchmarks/README.md +125 -0
- openqarp-0.1.0/benchmarks/__init__.py +7 -0
- openqarp-0.1.0/benchmarks/_child.py +91 -0
- openqarp-0.1.0/benchmarks/algorithms/__init__.py +1 -0
- openqarp-0.1.0/benchmarks/algorithms/_aer.py +59 -0
- openqarp-0.1.0/benchmarks/algorithms/_exact.py +26 -0
- openqarp-0.1.0/benchmarks/algorithms/_families.py +66 -0
- openqarp-0.1.0/benchmarks/algorithms/_ffsim.py +70 -0
- openqarp-0.1.0/benchmarks/algorithms/_lightning.py +44 -0
- openqarp-0.1.0/benchmarks/algorithms/_qsim.py +55 -0
- openqarp-0.1.0/benchmarks/algorithms/_qulacs.py +59 -0
- openqarp-0.1.0/benchmarks/algorithms/_qx.py +61 -0
- openqarp-0.1.0/benchmarks/algorithms/_shell.py +25 -0
- openqarp-0.1.0/benchmarks/algorithms/checks.py +42 -0
- openqarp-0.1.0/benchmarks/algorithms/inputs.py +152 -0
- openqarp-0.1.0/benchmarks/algorithms/spec.py +59 -0
- openqarp-0.1.0/benchmarks/algorithms/verify.py +79 -0
- openqarp-0.1.0/benchmarks/algorithms/workloads/__init__.py +5 -0
- openqarp-0.1.0/benchmarks/algorithms/workloads/qaoa_aer.py +3 -0
- openqarp-0.1.0/benchmarks/algorithms/workloads/qaoa_exact.py +3 -0
- openqarp-0.1.0/benchmarks/algorithms/workloads/qaoa_lightning.py +3 -0
- openqarp-0.1.0/benchmarks/algorithms/workloads/qaoa_qarpx.py +3 -0
- openqarp-0.1.0/benchmarks/algorithms/workloads/qaoa_qsim.py +3 -0
- openqarp-0.1.0/benchmarks/algorithms/workloads/qaoa_qulacs.py +3 -0
- openqarp-0.1.0/benchmarks/algorithms/workloads/vqe_aer.py +3 -0
- openqarp-0.1.0/benchmarks/algorithms/workloads/vqe_exact.py +3 -0
- openqarp-0.1.0/benchmarks/algorithms/workloads/vqe_ffsim.py +3 -0
- openqarp-0.1.0/benchmarks/algorithms/workloads/vqe_lightning.py +3 -0
- openqarp-0.1.0/benchmarks/algorithms/workloads/vqe_qarpx.py +3 -0
- openqarp-0.1.0/benchmarks/algorithms/workloads/vqe_qsim.py +3 -0
- openqarp-0.1.0/benchmarks/algorithms/workloads/vqe_qulacs.py +3 -0
- openqarp-0.1.0/benchmarks/code_volume/README.md +362 -0
- openqarp-0.1.0/benchmarks/code_volume/capabilities.py +247 -0
- openqarp-0.1.0/benchmarks/code_volume/compare.ipynb +353 -0
- openqarp-0.1.0/benchmarks/code_volume/count_loc.py +77 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/cirq/adapt_vqe.py +72 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/cirq/common.py +170 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/cirq/qaoa.py +36 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/cirq/qpe.py +42 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/cirq/ssvqe.py +43 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/cirq/vqe.py +30 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/cirq/vqe_shots.py +45 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/pennylane/adapt_vqe.py +42 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/pennylane/qaoa.py +32 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/pennylane/qpe.py +33 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/pennylane/ssvqe.py +41 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/pennylane/vqe.py +42 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/pennylane/vqe_shots.py +39 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/qarp/adapt_vqe.py +44 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/qarp/qaoa.py +34 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/qarp/qpe.py +39 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/qarp/ssvqe.py +41 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/qarp/vqe.py +39 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/qarp/vqe_shots.py +39 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/qiskit_nature/adapt_vqe.py +39 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/qiskit_nature/qaoa.py +32 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/qiskit_nature/qpe.py +29 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/qiskit_nature/ssvqe.py +62 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/qiskit_nature/vqe.py +42 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/qiskit_nature/vqe_shots.py +41 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/qiskit_raw/adapt_vqe.py +62 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/qiskit_raw/common.py +156 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/qiskit_raw/qaoa.py +35 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/qiskit_raw/qpe.py +35 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/qiskit_raw/ssvqe.py +41 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/qiskit_raw/vqe.py +28 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/qiskit_raw/vqe_shots.py +43 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/qulacs/adapt_vqe.py +62 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/qulacs/common.py +197 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/qulacs/qaoa.py +41 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/qulacs/qpe.py +44 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/qulacs/ssvqe.py +39 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/qulacs/vqe.py +28 -0
- openqarp-0.1.0/benchmarks/code_volume/impl/qulacs/vqe_shots.py +43 -0
- openqarp-0.1.0/benchmarks/code_volume/run.py +317 -0
- openqarp-0.1.0/benchmarks/code_volume/run_2026-09-14.md +119 -0
- openqarp-0.1.0/benchmarks/common/__init__.py +119 -0
- openqarp-0.1.0/benchmarks/compilation/__init__.py +1 -0
- openqarp-0.1.0/benchmarks/compilation/_families.py +55 -0
- openqarp-0.1.0/benchmarks/compilation/_qk.py +59 -0
- openqarp-0.1.0/benchmarks/compilation/_qk1.py +16 -0
- openqarp-0.1.0/benchmarks/compilation/_qk2.py +16 -0
- openqarp-0.1.0/benchmarks/compilation/_qk3.py +16 -0
- openqarp-0.1.0/benchmarks/compilation/_qx.py +77 -0
- openqarp-0.1.0/benchmarks/compilation/_ref.py +28 -0
- openqarp-0.1.0/benchmarks/compilation/_tket.py +100 -0
- openqarp-0.1.0/benchmarks/compilation/architectures.py +62 -0
- openqarp-0.1.0/benchmarks/compilation/checks.py +85 -0
- openqarp-0.1.0/benchmarks/compilation/inputs.py +147 -0
- openqarp-0.1.0/benchmarks/compilation/spec.py +38 -0
- openqarp-0.1.0/benchmarks/compilation/verify.py +670 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/__init__.py +5 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/hea_grid_qarpx.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/hea_grid_qiskit1.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/hea_grid_qiskit2.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/hea_grid_qiskit3.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/hea_grid_reference.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/hea_grid_tket.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/hea_line_qarpx.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/hea_line_qiskit1.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/hea_line_qiskit2.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/hea_line_qiskit3.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/hea_line_reference.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/hea_line_tket.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/mqt_grid_qarpx.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/mqt_grid_qiskit1.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/mqt_grid_qiskit2.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/mqt_grid_qiskit3.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/mqt_grid_reference.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/mqt_grid_tket.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/mqt_line_qarpx.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/mqt_line_qiskit1.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/mqt_line_qiskit2.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/mqt_line_qiskit3.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/mqt_line_reference.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/mqt_line_tket.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/qv_grid_qarpx.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/qv_grid_qiskit1.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/qv_grid_qiskit2.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/qv_grid_qiskit3.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/qv_grid_reference.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/qv_grid_tket.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/qv_line_qarpx.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/qv_line_qiskit1.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/qv_line_qiskit2.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/qv_line_qiskit3.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/qv_line_reference.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/qv_line_tket.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/trotter_grid_qarpx.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/trotter_grid_qiskit1.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/trotter_grid_qiskit2.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/trotter_grid_qiskit3.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/trotter_grid_reference.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/trotter_grid_tket.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/trotter_line_qarpx.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/trotter_line_qiskit1.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/trotter_line_qiskit2.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/trotter_line_qiskit3.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/trotter_line_reference.py +3 -0
- openqarp-0.1.0/benchmarks/compilation/workloads/trotter_line_tket.py +3 -0
- openqarp-0.1.0/benchmarks/diagnose.py +97 -0
- openqarp-0.1.0/benchmarks/gen_shims.py +90 -0
- openqarp-0.1.0/benchmarks/make_tables.py +1007 -0
- openqarp-0.1.0/benchmarks/operators/__init__.py +1 -0
- openqarp-0.1.0/benchmarks/operators/_families.py +181 -0
- openqarp-0.1.0/benchmarks/operators/_of.py +110 -0
- openqarp-0.1.0/benchmarks/operators/_pl.py +86 -0
- openqarp-0.1.0/benchmarks/operators/_qk.py +69 -0
- openqarp-0.1.0/benchmarks/operators/_qx.py +88 -0
- openqarp-0.1.0/benchmarks/operators/checks.py +51 -0
- openqarp-0.1.0/benchmarks/operators/inputs.py +95 -0
- openqarp-0.1.0/benchmarks/operators/spec.py +33 -0
- openqarp-0.1.0/benchmarks/operators/workloads/__init__.py +1 -0
- openqarp-0.1.0/benchmarks/operators/workloads/accumulate_openfermion.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/accumulate_pennylane.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/accumulate_qarpx.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/accumulate_qiskit.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/bk_molecular_openfermion.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/bk_molecular_pennylane.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/bk_molecular_qarpx.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/commutator_openfermion.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/commutator_pennylane.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/commutator_qarpx.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/commutator_qiskit.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/construct_string_openfermion.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/construct_string_pennylane.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/construct_string_qarpx.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/construct_string_qiskit.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/hermitian_conjugated_openfermion.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/hermitian_conjugated_pennylane.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/hermitian_conjugated_qarpx.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/hermitian_conjugated_qiskit.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/jw_molecular_openfermion.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/jw_molecular_pennylane.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/jw_molecular_qarpx.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/memory_hold_openfermion.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/memory_hold_pennylane.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/memory_hold_qarpx.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/memory_hold_qiskit.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/op_product_openfermion.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/op_product_pennylane.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/op_product_qarpx.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/op_product_qiskit.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/parity_encode_openfermion.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/parity_encode_pennylane.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/parity_encode_qarpx.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/sparse_construct_openfermion.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/sparse_construct_pennylane.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/sparse_construct_qarpx.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/sparse_construct_qiskit.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/symbolic_algebra_openfermion.py +6 -0
- openqarp-0.1.0/benchmarks/operators/workloads/symbolic_algebra_qarpx.py +6 -0
- openqarp-0.1.0/benchmarks/run.py +214 -0
- openqarp-0.1.0/benchmarks/sampler/__init__.py +1 -0
- openqarp-0.1.0/benchmarks/sampler/_aer.py +28 -0
- openqarp-0.1.0/benchmarks/sampler/_exact.py +39 -0
- openqarp-0.1.0/benchmarks/sampler/_families.py +56 -0
- openqarp-0.1.0/benchmarks/sampler/_lightning.py +33 -0
- openqarp-0.1.0/benchmarks/sampler/_qsim.py +31 -0
- openqarp-0.1.0/benchmarks/sampler/_qulacs.py +29 -0
- openqarp-0.1.0/benchmarks/sampler/_qx.py +37 -0
- openqarp-0.1.0/benchmarks/sampler/checks.py +98 -0
- openqarp-0.1.0/benchmarks/sampler/inputs.py +27 -0
- openqarp-0.1.0/benchmarks/sampler/spec.py +58 -0
- openqarp-0.1.0/benchmarks/sampler/verify.py +93 -0
- openqarp-0.1.0/benchmarks/sampler/workloads/__init__.py +5 -0
- openqarp-0.1.0/benchmarks/sampler/workloads/brickwork_sample_aer.py +3 -0
- openqarp-0.1.0/benchmarks/sampler/workloads/brickwork_sample_exact.py +3 -0
- openqarp-0.1.0/benchmarks/sampler/workloads/brickwork_sample_lightning.py +3 -0
- openqarp-0.1.0/benchmarks/sampler/workloads/brickwork_sample_qarpx.py +3 -0
- openqarp-0.1.0/benchmarks/sampler/workloads/brickwork_sample_qsim.py +3 -0
- openqarp-0.1.0/benchmarks/sampler/workloads/brickwork_sample_qulacs.py +3 -0
- openqarp-0.1.0/benchmarks/sampler/workloads/qpe_sample_aer.py +3 -0
- openqarp-0.1.0/benchmarks/sampler/workloads/qpe_sample_exact.py +3 -0
- openqarp-0.1.0/benchmarks/sampler/workloads/qpe_sample_lightning.py +3 -0
- openqarp-0.1.0/benchmarks/sampler/workloads/qpe_sample_qarpx.py +3 -0
- openqarp-0.1.0/benchmarks/sampler/workloads/qpe_sample_qsim.py +3 -0
- openqarp-0.1.0/benchmarks/sampler/workloads/qpe_sample_qulacs.py +3 -0
- openqarp-0.1.0/benchmarks/sampler/workloads/shots_axis_aer.py +3 -0
- openqarp-0.1.0/benchmarks/sampler/workloads/shots_axis_exact.py +3 -0
- openqarp-0.1.0/benchmarks/sampler/workloads/shots_axis_lightning.py +3 -0
- openqarp-0.1.0/benchmarks/sampler/workloads/shots_axis_qarpx.py +3 -0
- openqarp-0.1.0/benchmarks/sampler/workloads/shots_axis_qsim.py +3 -0
- openqarp-0.1.0/benchmarks/sampler/workloads/shots_axis_qulacs.py +3 -0
- openqarp-0.1.0/benchmarks/sampler/workloads/trotter_sample_aer.py +3 -0
- openqarp-0.1.0/benchmarks/sampler/workloads/trotter_sample_exact.py +3 -0
- openqarp-0.1.0/benchmarks/sampler/workloads/trotter_sample_lightning.py +3 -0
- openqarp-0.1.0/benchmarks/sampler/workloads/trotter_sample_qarpx.py +3 -0
- openqarp-0.1.0/benchmarks/sampler/workloads/trotter_sample_qsim.py +3 -0
- openqarp-0.1.0/benchmarks/sampler/workloads/trotter_sample_qulacs.py +3 -0
- openqarp-0.1.0/benchmarks/smoke.py +98 -0
- openqarp-0.1.0/benchmarks/statevector/__init__.py +1 -0
- openqarp-0.1.0/benchmarks/statevector/_aer.py +96 -0
- openqarp-0.1.0/benchmarks/statevector/_families.py +232 -0
- openqarp-0.1.0/benchmarks/statevector/_lightning.py +106 -0
- openqarp-0.1.0/benchmarks/statevector/_np.py +123 -0
- openqarp-0.1.0/benchmarks/statevector/_qsim.py +93 -0
- openqarp-0.1.0/benchmarks/statevector/_qulacs.py +131 -0
- openqarp-0.1.0/benchmarks/statevector/_qx.py +82 -0
- openqarp-0.1.0/benchmarks/statevector/checks.py +108 -0
- openqarp-0.1.0/benchmarks/statevector/data/__init__.py +0 -0
- openqarp-0.1.0/benchmarks/statevector/data/generate_molecules.py +116 -0
- openqarp-0.1.0/benchmarks/statevector/data/h2.json +1 -0
- openqarp-0.1.0/benchmarks/statevector/data/h2o.json +1 -0
- openqarp-0.1.0/benchmarks/statevector/data/lih.json +1 -0
- openqarp-0.1.0/benchmarks/statevector/inputs.py +267 -0
- openqarp-0.1.0/benchmarks/statevector/spec.py +163 -0
- openqarp-0.1.0/benchmarks/statevector/tune.py +274 -0
- openqarp-0.1.0/benchmarks/statevector/verify.py +234 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/__init__.py +5 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/brickwork_aer.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/brickwork_lightning.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/brickwork_numpy.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/brickwork_qarpx.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/brickwork_qsim.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/brickwork_qulacs.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/brickwork_threads_aer.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/brickwork_threads_lightning.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/brickwork_threads_numpy.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/brickwork_threads_qarpx.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/brickwork_threads_qsim.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/brickwork_threads_qulacs.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/qft_aer.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/qft_lightning.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/qft_numpy.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/qft_qarpx.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/qft_qsim.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/qft_qulacs.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/qpe_phase_aer.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/qpe_phase_lightning.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/qpe_phase_numpy.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/qpe_phase_qarpx.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/qpe_phase_qsim.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/qpe_phase_qulacs.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/trotter_step_aer.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/trotter_step_lightning.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/trotter_step_numpy.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/trotter_step_qarpx.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/trotter_step_qsim.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/trotter_step_qulacs.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/vqe_energy_aer.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/vqe_energy_lightning.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/vqe_energy_numpy.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/vqe_energy_qarpx.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/vqe_energy_qsim.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/vqe_energy_qulacs.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/vqe_molecular_aer.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/vqe_molecular_lightning.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/vqe_molecular_numpy.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/vqe_molecular_qarpx.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/vqe_molecular_qsim.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/vqe_molecular_qulacs.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/vqe_terms_aer.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/vqe_terms_lightning.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/vqe_terms_numpy.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/vqe_terms_qarpx.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/vqe_terms_qsim.py +3 -0
- openqarp-0.1.0/benchmarks/statevector/workloads/vqe_terms_qulacs.py +3 -0
- openqarp-0.1.0/benchmarks/tables/competitor_algorithms.md +65 -0
- openqarp-0.1.0/benchmarks/tables/competitor_compilation.md +182 -0
- openqarp-0.1.0/benchmarks/tables/competitor_operators.md +45 -0
- openqarp-0.1.0/benchmarks/tables/competitor_sampler.md +67 -0
- openqarp-0.1.0/benchmarks/tables/competitor_statevector.md +134 -0
- openqarp-0.1.0/build_docs.sh +21 -0
- openqarp-0.1.0/cpp/libqarpx/CMakeLists.txt +339 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/absorb/absorber.h +21 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/absorb/qasm2_absorber.h +60 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/absorb/qasm3_absorber.h +58 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/block/block.h +303 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/block/composite_block.h +81 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/block/conditional_block.h +66 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/block/controlled_block.h +58 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/block/measure_block.h +27 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/block/reset_block.h +25 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/compilation/compile_for_device.h +68 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/compilation/perfect_layout.h +52 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/compilation/router.h +105 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/compilation/sabre.h +41 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/core/canonical.h +46 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/core/command.h +201 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/core/errors.h +31 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/core/gates.h +257 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/core/param.h +121 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/core/pauli.h +39 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/core/small_vector.h +234 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/dag/circuit_dag.h +179 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/dag/commutation.h +30 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/dag/passes.h +41 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/device/architecture.h +78 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/device/device.h +41 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/device/noise_model.h +142 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/emit/emitter.h +151 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/emit/param_bridge.h +99 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/emit/qasm2_emitter.h +91 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/emit/qasm3_emitter.h +64 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/emit/qir_emitter.h +63 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/engine/engine.h +64 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/engine/primitive_algorithm.h +63 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/engine/qarp_engine.h +67 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/operators/coeff.h +173 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/operators/fermion_key.h +76 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/operators/fermion_operator.h +194 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/operators/packed_pauli.h +140 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/operators/qubit_operator.h +234 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/operators/sparse.h +43 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/operators/term_map.h +237 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/operators/term_operator.h +127 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/operators/transforms.h +219 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/parallel/mpi_utils.h +32 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/parallel/thread_pool.h +86 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/qarpx.h +60 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/simulator/cudaq_simulator.h +131 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/simulator/dense_kernel.h +31 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/simulator/fusion.h +46 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/simulator/pauli_expectation.h +49 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/simulator/qarp_simulator.h +311 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/simulator/sampling_result.h +40 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/synthesis/diagonal.h +30 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/synthesis/pauli_exponential.h +180 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/synthesis/state_preparation.h +29 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/synthesis/uniformly_controlled.h +36 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/synthesis/unitary.h +34 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/transpiler/decompositions.h +141 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/transpiler/fusion.h +46 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/transpiler/gateset.h +105 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/transpiler/identities.h +47 -0
- openqarp-0.1.0/cpp/libqarpx/include/qarpx/transpiler/transpiler.h +149 -0
- openqarp-0.1.0/cpp/libqarpx/python/CMakeLists.txt +50 -0
- openqarp-0.1.0/cpp/libqarpx/python/bindings.cpp +1265 -0
- openqarp-0.1.0/cpp/libqarpx/python/bindings_operators.cpp +660 -0
- openqarp-0.1.0/cpp/libqarpx/src/absorb/pennylane_absorber.cpp +336 -0
- openqarp-0.1.0/cpp/libqarpx/src/absorb/pytket_absorber.cpp +400 -0
- openqarp-0.1.0/cpp/libqarpx/src/absorb/qasm2_absorber.cpp +733 -0
- openqarp-0.1.0/cpp/libqarpx/src/absorb/qasm3_absorber.cpp +778 -0
- openqarp-0.1.0/cpp/libqarpx/src/absorb/qiskit_absorber.cpp +295 -0
- openqarp-0.1.0/cpp/libqarpx/src/absorb/qulacs_absorber.cpp +587 -0
- openqarp-0.1.0/cpp/libqarpx/src/block/block.cpp +673 -0
- openqarp-0.1.0/cpp/libqarpx/src/block/composite_block.cpp +189 -0
- openqarp-0.1.0/cpp/libqarpx/src/block/conditional_block.cpp +171 -0
- openqarp-0.1.0/cpp/libqarpx/src/block/controlled_block.cpp +639 -0
- openqarp-0.1.0/cpp/libqarpx/src/block/measure_block.cpp +25 -0
- openqarp-0.1.0/cpp/libqarpx/src/block/reset_block.cpp +22 -0
- openqarp-0.1.0/cpp/libqarpx/src/compilation/compile_for_device.cpp +144 -0
- openqarp-0.1.0/cpp/libqarpx/src/compilation/perfect_layout.cpp +267 -0
- openqarp-0.1.0/cpp/libqarpx/src/compilation/router.cpp +194 -0
- openqarp-0.1.0/cpp/libqarpx/src/compilation/routing_common.h +132 -0
- openqarp-0.1.0/cpp/libqarpx/src/compilation/sabre.cpp +628 -0
- openqarp-0.1.0/cpp/libqarpx/src/core/canonical.cpp +185 -0
- openqarp-0.1.0/cpp/libqarpx/src/core/command.cpp +297 -0
- openqarp-0.1.0/cpp/libqarpx/src/core/intrusive_counter.cpp +18 -0
- openqarp-0.1.0/cpp/libqarpx/src/core/param.cpp +499 -0
- openqarp-0.1.0/cpp/libqarpx/src/core/pauli.cpp +56 -0
- openqarp-0.1.0/cpp/libqarpx/src/dag/circuit_dag.cpp +409 -0
- openqarp-0.1.0/cpp/libqarpx/src/dag/commutation.cpp +90 -0
- openqarp-0.1.0/cpp/libqarpx/src/dag/passes.cpp +309 -0
- openqarp-0.1.0/cpp/libqarpx/src/device/architecture.cpp +116 -0
- openqarp-0.1.0/cpp/libqarpx/src/device/device.cpp +41 -0
- openqarp-0.1.0/cpp/libqarpx/src/device/noise_model.cpp +299 -0
- openqarp-0.1.0/cpp/libqarpx/src/emit/pennylane_emitter.cpp +489 -0
- openqarp-0.1.0/cpp/libqarpx/src/emit/pytket_emitter.cpp +450 -0
- openqarp-0.1.0/cpp/libqarpx/src/emit/qasm2_emitter.cpp +437 -0
- openqarp-0.1.0/cpp/libqarpx/src/emit/qasm3_emitter.cpp +348 -0
- openqarp-0.1.0/cpp/libqarpx/src/emit/qir_emitter.cpp +293 -0
- openqarp-0.1.0/cpp/libqarpx/src/emit/qiskit_emitter.cpp +682 -0
- openqarp-0.1.0/cpp/libqarpx/src/emit/qulacs_emitter.cpp +554 -0
- openqarp-0.1.0/cpp/libqarpx/src/operators/detail_facade.h +111 -0
- openqarp-0.1.0/cpp/libqarpx/src/operators/detail_parse.h +93 -0
- openqarp-0.1.0/cpp/libqarpx/src/operators/fermion_operator.cpp +303 -0
- openqarp-0.1.0/cpp/libqarpx/src/operators/packed_pauli.cpp +122 -0
- openqarp-0.1.0/cpp/libqarpx/src/operators/qubit_operator.cpp +330 -0
- openqarp-0.1.0/cpp/libqarpx/src/operators/sparse.cpp +121 -0
- openqarp-0.1.0/cpp/libqarpx/src/operators/symbolic.cpp +23 -0
- openqarp-0.1.0/cpp/libqarpx/src/operators/transforms.cpp +65 -0
- openqarp-0.1.0/cpp/libqarpx/src/parallel/mpi_utils.cpp +51 -0
- openqarp-0.1.0/cpp/libqarpx/src/parallel/thread_pool.cpp +101 -0
- openqarp-0.1.0/cpp/libqarpx/src/simulator/cudaq_simulator.cpp +412 -0
- openqarp-0.1.0/cpp/libqarpx/src/simulator/dense_kernel.cpp +123 -0
- openqarp-0.1.0/cpp/libqarpx/src/simulator/fusion.cpp +270 -0
- openqarp-0.1.0/cpp/libqarpx/src/simulator/pauli_expectation.cpp +169 -0
- openqarp-0.1.0/cpp/libqarpx/src/simulator/qarp_simulator.cpp +1719 -0
- openqarp-0.1.0/cpp/libqarpx/src/synthesis/diagonal.cpp +79 -0
- openqarp-0.1.0/cpp/libqarpx/src/synthesis/pauli_exponential.cpp +697 -0
- openqarp-0.1.0/cpp/libqarpx/src/synthesis/state_preparation.cpp +115 -0
- openqarp-0.1.0/cpp/libqarpx/src/synthesis/uniformly_controlled.cpp +89 -0
- openqarp-0.1.0/cpp/libqarpx/src/synthesis/unitary.cpp +605 -0
- openqarp-0.1.0/cpp/libqarpx/src/transpiler/decompositions.cpp +715 -0
- openqarp-0.1.0/cpp/libqarpx/src/transpiler/fusion.cpp +303 -0
- openqarp-0.1.0/cpp/libqarpx/src/transpiler/gateset.cpp +233 -0
- openqarp-0.1.0/cpp/libqarpx/src/transpiler/identities.cpp +120 -0
- openqarp-0.1.0/cpp/libqarpx/src/transpiler/transpiler.cpp +345 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/CMakeLists.txt +57 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/dag_test_helpers.h +364 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/gate_test_helpers.h +181 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/reference_unitary.h +258 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_architecture.cpp +236 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_blocks_mcm.cpp +418 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_canonical.cpp +225 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_cbit_register_width.cpp +96 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_circuit_dag.cpp +453 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_closure_and_native.cpp +294 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_controlled_block_unitaries.cpp +496 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_core.cpp +713 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_dag_commutation.cpp +297 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_dag_passes.cpp +480 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_dagger_round_trip.cpp +200 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_decomposition_table.cpp +433 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_device.cpp +174 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_expectation_kernel.cpp +177 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_functional_mcm.cpp +206 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_fusion_consistency.cpp +196 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_gate_counts.cpp +188 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_gate_unitaries.cpp +373 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_gradient_adjoint.cpp +208 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_identities.cpp +365 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_initial_state.cpp +140 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_noise_model.cpp +133 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_operators_fermion_operator.cpp +171 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_operators_packed_pauli.cpp +226 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_operators_qubit_operator.cpp +323 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_operators_sparse.cpp +242 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_operators_symbolic.cpp +138 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_operators_term_map.cpp +156 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_operators_transforms.cpp +273 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_pass_reference_equivalence.cpp +253 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_pass_relabel_equivariance.cpp +333 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_pauli_encoding.cpp +107 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_qasm2_emitter.cpp +425 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_qasm3_emitter.cpp +445 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_qir_emitter.cpp +139 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_router.cpp +380 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_sabre.cpp +531 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_simulation_fusion.cpp +494 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_synthesis_diagonal.cpp +148 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_synthesis_pauli_exp.cpp +343 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_synthesis_pauli_exp_clifford.cpp +334 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_synthesis_pauli_exp_diagonal_block.cpp +492 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_synthesis_state_preparation.cpp +204 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_synthesis_unitary.cpp +398 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_trajectory.cpp +332 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_transpiler.cpp +251 -0
- openqarp-0.1.0/cpp/libqarpx/tests/cpp/test_transpiler_topology_cache.cpp +292 -0
- openqarp-0.1.0/cpp/libqarpx/tests/python/test_mcm_bindings.py +220 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/CMakeLists.txt +57 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/LICENSE +21 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/MPIutil.cpp +203 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/MPIutil.hpp +79 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/README.md +9 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/constant.cpp +37 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/constant.hpp +64 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/init_ops.hpp +31 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/init_ops_fill.cpp +41 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/init_ops_random.cpp +132 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/memory_ops.cpp +32 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/memory_ops.hpp +26 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/memory_ops_dm.cpp +56 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/memory_ops_dm.hpp +46 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/stat_ops.cpp +158 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/stat_ops.hpp +57 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/stat_ops_dm.cpp +297 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/stat_ops_dm.hpp +32 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/stat_ops_expectation_value.cpp +824 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/stat_ops_probability.cpp +100 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/stat_ops_transition_amplitude.cpp +128 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/type.hpp +54 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops.hpp +1549 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_control_multi_target_multi.cpp +205 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_control_multi_target_single.cpp +351 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_control_single_target_multi.cpp +156 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_control_single_target_single.cpp +479 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_cpp.hpp +63 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_dm.cpp +858 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_dm.hpp +70 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_matrix_dense_double.cpp +1766 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_matrix_dense_double_eigen.cpp +66 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_matrix_dense_multi.cpp +195 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_matrix_dense_multi_eigen.cpp +189 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_matrix_dense_single.cpp +459 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_matrix_diagonal_multi.cpp +112 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_matrix_diagonal_single.cpp +289 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_matrix_phase_single.cpp +118 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_named.cpp +82 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_named_CNOT.cpp +330 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_named_CZ.cpp +197 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_named_FusedSWAP.cpp +333 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_named_H.cpp +262 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_named_SWAP.cpp +304 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_named_X.cpp +156 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_named_Y.cpp +261 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_named_Z.cpp +133 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_named_projection.cpp +116 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_named_state.cpp +98 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_pauli_multi.cpp +822 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_pauli_single.cpp +136 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_qft.cpp +94 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_reflection.cpp +27 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/update_ops_reversible_boolean.cpp +46 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/utility.cpp +147 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/csim/utility.hpp +157 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/COPYING.APACHE +203 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/COPYING.BSD +26 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/COPYING.GPL +674 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/COPYING.LGPL +502 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/COPYING.MINPACK +51 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/COPYING.MPL2 +373 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/COPYING.README +18 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/Cholesky +45 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/CholmodSupport +48 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/Core +384 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/Dense +7 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/Eigen +2 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/Eigenvalues +60 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/Geometry +59 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/Householder +29 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/IterativeLinearSolvers +48 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/Jacobi +32 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/KLUSupport +41 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/LU +47 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/MetisSupport +35 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/OrderingMethods +70 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/PaStiXSupport +49 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/PardisoSupport +35 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/QR +50 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/QtAlignedMalloc +39 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/SPQRSupport +34 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/SVD +50 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/Sparse +34 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/SparseCholesky +37 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/SparseCore +69 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/SparseLU +50 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/SparseQR +36 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/StdDeque +27 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/StdList +26 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/StdVector +27 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/SuperLUSupport +64 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/UmfPackSupport +40 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Cholesky/LDLT.h +688 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Cholesky/LLT.h +558 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Cholesky/LLT_LAPACKE.h +99 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/CholmodSupport/CholmodSupport.h +682 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/ArithmeticSequence.h +413 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/Array.h +417 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/ArrayBase.h +226 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/ArrayWrapper.h +209 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/Assign.h +90 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/AssignEvaluator.h +1010 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/Assign_MKL.h +178 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/BandMatrix.h +353 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/Block.h +448 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/BooleanRedux.h +162 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/CommaInitializer.h +164 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/ConditionEstimator.h +175 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/CoreEvaluators.h +1741 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/CoreIterators.h +132 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/CwiseBinaryOp.h +183 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/CwiseNullaryOp.h +1001 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/CwiseTernaryOp.h +197 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/CwiseUnaryOp.h +103 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/CwiseUnaryView.h +132 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/DenseBase.h +701 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/DenseCoeffsBase.h +685 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/DenseStorage.h +652 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/Diagonal.h +258 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/DiagonalMatrix.h +391 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/DiagonalProduct.h +28 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/Dot.h +318 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/EigenBase.h +160 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/ForceAlignedAccess.h +150 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/Fuzzy.h +155 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/GeneralProduct.h +465 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/GenericPacketMath.h +1040 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/GlobalFunctions.h +194 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/IO.h +258 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/IndexedView.h +237 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/Inverse.h +117 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/Map.h +171 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/MapBase.h +310 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/MathFunctions.h +2057 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/MathFunctionsImpl.h +200 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/Matrix.h +565 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/MatrixBase.h +547 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/NestByValue.h +85 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/NoAlias.h +109 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/NumTraits.h +335 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/PartialReduxEvaluator.h +232 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/PermutationMatrix.h +605 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/PlainObjectBase.h +1128 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/Product.h +191 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/ProductEvaluators.h +1179 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/Random.h +218 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/Redux.h +515 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/Ref.h +381 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/Replicate.h +142 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/Reshaped.h +454 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/ReturnByValue.h +119 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/Reverse.h +217 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/Select.h +164 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/SelfAdjointView.h +365 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/SelfCwiseBinaryOp.h +47 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/Solve.h +188 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/SolveTriangular.h +235 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/SolverBase.h +168 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/StableNorm.h +251 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/StlIterators.h +463 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/Stride.h +116 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/Swap.h +68 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/Transpose.h +464 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/Transpositions.h +386 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/TriangularMatrix.h +1001 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/VectorBlock.h +96 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/VectorwiseOp.h +784 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/Visitor.h +381 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/AVX/Complex.h +372 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/AVX/MathFunctions.h +228 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/AVX/PacketMath.h +1574 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/AVX/TypeCasting.h +115 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/AVX512/Complex.h +422 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/AVX512/MathFunctions.h +362 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/AVX512/PacketMath.h +2303 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/AVX512/TypeCasting.h +89 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/AltiVec/Complex.h +417 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/AltiVec/MathFunctions.h +90 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/AltiVec/MatrixProduct.h +2937 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/AltiVec/MatrixProductCommon.h +221 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/AltiVec/MatrixProductMMA.h +629 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h +2711 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/CUDA/Complex.h +258 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/Default/BFloat16.h +700 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/Default/ConjHelper.h +117 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/Default/GenericPacketMathFunctions.h +1649 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/Default/GenericPacketMathFunctionsFwd.h +110 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/Default/Half.h +942 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/Default/Settings.h +49 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/Default/TypeCasting.h +120 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/GPU/MathFunctions.h +103 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/GPU/PacketMath.h +1685 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/GPU/TypeCasting.h +80 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/HIP/hcc/math_constants.h +23 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/MSA/Complex.h +648 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/MSA/MathFunctions.h +387 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/MSA/PacketMath.h +1233 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/NEON/Complex.h +584 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/NEON/GeneralBlockPanelKernel.h +183 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/NEON/MathFunctions.h +75 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/NEON/PacketMath.h +4587 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/NEON/TypeCasting.h +1419 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/SSE/Complex.h +351 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/SSE/MathFunctions.h +199 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/SSE/PacketMath.h +1505 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/SSE/TypeCasting.h +142 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/SVE/MathFunctions.h +44 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/SVE/PacketMath.h +752 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/SVE/TypeCasting.h +49 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/SYCL/InteropHeaders.h +232 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/SYCL/MathFunctions.h +301 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/SYCL/PacketMath.h +670 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/SYCL/SyclMemoryModel.h +694 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/SYCL/TypeCasting.h +85 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/ZVector/Complex.h +426 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/ZVector/MathFunctions.h +233 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/arch/ZVector/PacketMath.h +1060 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/functors/AssignmentFunctors.h +177 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/functors/BinaryFunctors.h +541 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/functors/NullaryFunctors.h +189 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/functors/StlFunctors.h +166 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/functors/TernaryFunctors.h +25 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/functors/UnaryFunctors.h +1131 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/products/GeneralBlockPanelKernel.h +2645 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/products/GeneralMatrixMatrix.h +517 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/products/GeneralMatrixMatrixTriangular.h +317 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/products/GeneralMatrixMatrixTriangular_BLAS.h +145 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/products/GeneralMatrixMatrix_BLAS.h +124 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/products/GeneralMatrixVector.h +518 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/products/GeneralMatrixVector_BLAS.h +136 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/products/Parallelizer.h +180 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/products/SelfadjointMatrixMatrix.h +544 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/products/SelfadjointMatrixMatrix_BLAS.h +295 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/products/SelfadjointMatrixVector.h +262 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/products/SelfadjointMatrixVector_BLAS.h +118 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/products/SelfadjointProduct.h +133 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/products/SelfadjointRank2Update.h +94 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/products/TriangularMatrixMatrix.h +472 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/products/TriangularMatrixMatrix_BLAS.h +317 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/products/TriangularMatrixVector.h +350 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/products/TriangularMatrixVector_BLAS.h +255 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/products/TriangularSolverMatrix.h +337 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/products/TriangularSolverMatrix_BLAS.h +167 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/products/TriangularSolverVector.h +148 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/util/BlasUtil.h +583 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/util/ConfigureVectorization.h +512 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/util/Constants.h +563 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/util/DisableStupidWarnings.h +106 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/util/ForwardDeclarations.h +322 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/util/IndexedViewHelper.h +186 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/util/IntegralConstant.h +272 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/util/MKL_support.h +137 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/util/Macros.h +1464 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/util/Memory.h +1163 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/util/Meta.h +812 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/util/NonMPL2.h +3 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/util/ReenableStupidWarnings.h +31 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/util/ReshapedHelper.h +51 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/util/StaticAssert.h +221 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/util/SymbolicIndex.h +293 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Core/util/XprHelper.h +856 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Eigenvalues/ComplexEigenSolver.h +346 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Eigenvalues/ComplexSchur.h +462 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Eigenvalues/ComplexSchur_LAPACKE.h +91 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Eigenvalues/EigenSolver.h +622 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Eigenvalues/GeneralizedEigenSolver.h +418 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Eigenvalues/GeneralizedSelfAdjointEigenSolver.h +226 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Eigenvalues/HessenbergDecomposition.h +374 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Eigenvalues/MatrixBaseEigenvalues.h +158 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Eigenvalues/RealQZ.h +657 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Eigenvalues/RealSchur.h +558 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Eigenvalues/RealSchur_LAPACKE.h +77 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h +904 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Eigenvalues/SelfAdjointEigenSolver_LAPACKE.h +87 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Eigenvalues/Tridiagonalization.h +561 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Geometry/AlignedBox.h +486 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Geometry/AngleAxis.h +247 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Geometry/EulerAngles.h +114 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Geometry/Homogeneous.h +501 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Geometry/Hyperplane.h +282 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Geometry/OrthoMethods.h +235 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Geometry/ParametrizedLine.h +232 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Geometry/Quaternion.h +870 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Geometry/Rotation2D.h +199 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Geometry/RotationBase.h +206 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Geometry/Scaling.h +188 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Geometry/Transform.h +1563 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Geometry/Translation.h +202 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Geometry/Umeyama.h +166 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Geometry/arch/Geometry_SIMD.h +168 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Householder/BlockHouseholder.h +110 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Householder/Householder.h +176 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Householder/HouseholderSequence.h +545 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/IterativeLinearSolvers/BasicPreconditioners.h +226 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/IterativeLinearSolvers/BiCGSTAB.h +212 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/IterativeLinearSolvers/ConjugateGradient.h +229 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/IterativeLinearSolvers/IncompleteCholesky.h +394 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/IterativeLinearSolvers/IncompleteLUT.h +453 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/IterativeLinearSolvers/IterativeSolverBase.h +444 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/IterativeLinearSolvers/LeastSquareConjugateGradient.h +198 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/IterativeLinearSolvers/SolveWithGuess.h +117 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/Jacobi/Jacobi.h +483 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/KLUSupport/KLUSupport.h +358 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/LU/Determinant.h +117 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/LU/FullPivLU.h +877 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/LU/InverseImpl.h +432 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/LU/PartialPivLU.h +624 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/LU/PartialPivLU_LAPACKE.h +83 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/LU/arch/InverseSize4.h +351 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/MetisSupport/MetisSupport.h +137 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/OrderingMethods/Amd.h +435 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/OrderingMethods/Eigen_Colamd.h +1863 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/OrderingMethods/Ordering.h +153 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/PaStiXSupport/PaStiXSupport.h +678 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/PardisoSupport/PardisoSupport.h +545 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/QR/ColPivHouseholderQR.h +674 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/QR/ColPivHouseholderQR_LAPACKE.h +97 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/QR/CompleteOrthogonalDecomposition.h +635 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/QR/FullPivHouseholderQR.h +713 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/QR/HouseholderQR.h +434 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/QR/HouseholderQR_LAPACKE.h +68 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SPQRSupport/SuiteSparseQRSupport.h +335 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SVD/BDCSVD.h +1366 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SVD/JacobiSVD.h +812 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SVD/JacobiSVD_LAPACKE.h +91 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SVD/SVDBase.h +376 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SVD/UpperBidiagonalization.h +414 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCholesky/SimplicialCholesky.h +697 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCholesky/SimplicialCholesky_impl.h +174 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCore/AmbiVector.h +378 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCore/CompressedStorage.h +274 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCore/ConservativeSparseSparseProduct.h +352 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCore/MappedSparseMatrix.h +67 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCore/SparseAssign.h +270 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCore/SparseBlock.h +571 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCore/SparseColEtree.h +206 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCore/SparseCompressedBase.h +370 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCore/SparseCwiseBinaryOp.h +722 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCore/SparseCwiseUnaryOp.h +150 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCore/SparseDenseProduct.h +342 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCore/SparseDiagonalProduct.h +138 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCore/SparseDot.h +98 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCore/SparseFuzzy.h +29 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCore/SparseMap.h +305 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCore/SparseMatrix.h +1518 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCore/SparseMatrixBase.h +398 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCore/SparsePermutation.h +178 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCore/SparseProduct.h +181 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCore/SparseRedux.h +49 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCore/SparseRef.h +397 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCore/SparseSelfAdjointView.h +659 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCore/SparseSolverBase.h +124 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCore/SparseSparseProductWithPruning.h +198 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCore/SparseTranspose.h +92 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCore/SparseTriangularView.h +189 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCore/SparseUtil.h +186 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCore/SparseVector.h +478 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCore/SparseView.h +254 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseCore/TriangularSolver.h +315 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseLU/SparseLU.h +923 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseLU/SparseLUImpl.h +66 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseLU/SparseLU_Memory.h +226 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseLU/SparseLU_Structs.h +110 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseLU/SparseLU_SupernodalMatrix.h +375 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseLU/SparseLU_Utils.h +80 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseLU/SparseLU_column_bmod.h +181 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseLU/SparseLU_column_dfs.h +179 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseLU/SparseLU_copy_to_ucol.h +107 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseLU/SparseLU_gemm_kernel.h +280 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseLU/SparseLU_heap_relax_snode.h +126 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseLU/SparseLU_kernel_bmod.h +130 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseLU/SparseLU_panel_bmod.h +223 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseLU/SparseLU_panel_dfs.h +258 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseLU/SparseLU_pivotL.h +137 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseLU/SparseLU_pruneL.h +136 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseLU/SparseLU_relax_snode.h +83 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SparseQR/SparseQR.h +758 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/StlSupport/StdDeque.h +116 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/StlSupport/StdList.h +106 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/StlSupport/StdVector.h +131 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/StlSupport/details.h +84 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/SuperLUSupport/SuperLUSupport.h +1025 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/UmfPackSupport/UmfPackSupport.h +642 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/misc/Image.h +82 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/misc/Kernel.h +79 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/misc/RealSvd2x2.h +55 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/misc/blas.h +440 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/misc/lapack.h +152 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/misc/lapacke.h +16292 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/misc/lapacke_mangling.h +17 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/plugins/ArrayCwiseBinaryOps.h +358 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/plugins/ArrayCwiseUnaryOps.h +696 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/plugins/BlockMethods.h +1442 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/plugins/CommonCwiseBinaryOps.h +115 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/plugins/CommonCwiseUnaryOps.h +177 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/plugins/IndexedViewMethods.h +262 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/plugins/MatrixCwiseBinaryOps.h +152 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/plugins/MatrixCwiseUnaryOps.h +95 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/Eigen/src/plugins/ReshapedMethods.h +149 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/README.md +53 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/unsupported/Eigen/MatrixFunctions +504 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/unsupported/Eigen/src/MatrixFunctions/MatrixExponential.h +441 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/unsupported/Eigen/src/MatrixFunctions/MatrixFunction.h +569 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/unsupported/Eigen/src/MatrixFunctions/MatrixLogarithm.h +373 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/unsupported/Eigen/src/MatrixFunctions/MatrixPower.h +705 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/unsupported/Eigen/src/MatrixFunctions/MatrixSquareRoot.h +368 -0
- openqarp-0.1.0/cpp/libqarpx/third_party/eigen/unsupported/Eigen/src/MatrixFunctions/StemFunction.h +117 -0
- openqarp-0.1.0/docs/Makefile +21 -0
- openqarp-0.1.0/docs/_static/custom.css +482 -0
- openqarp-0.1.0/docs/_static/theme-sync.js +15 -0
- openqarp-0.1.0/docs/_templates/base.html +18 -0
- openqarp-0.1.0/docs/_templates/sidebar/site-links.html +4 -0
- openqarp-0.1.0/docs/api/qarp.absorb.rst +7 -0
- openqarp-0.1.0/docs/api/qarp.algorithms.rst +7 -0
- openqarp-0.1.0/docs/api/qarp.blocks.rst +7 -0
- openqarp-0.1.0/docs/api/qarp.cutting.rst +7 -0
- openqarp-0.1.0/docs/api/qarp.devices.rst +7 -0
- openqarp-0.1.0/docs/api/qarp.emit.rst +7 -0
- openqarp-0.1.0/docs/api/qarp.endianness.rst +7 -0
- openqarp-0.1.0/docs/api/qarp.engines.rst +7 -0
- openqarp-0.1.0/docs/api/qarp.errors.rst +7 -0
- openqarp-0.1.0/docs/api/qarp.factories.rst +7 -0
- openqarp-0.1.0/docs/api/qarp.graphs.rst +7 -0
- openqarp-0.1.0/docs/api/qarp.operators.compat.rst +7 -0
- openqarp-0.1.0/docs/api/qarp.operators.functions.rst +14 -0
- openqarp-0.1.0/docs/api/qarp.operators.integrals.rst +7 -0
- openqarp-0.1.0/docs/api/qarp.operators.models.rst +7 -0
- openqarp-0.1.0/docs/api/qarp.operators.onv.rst +7 -0
- openqarp-0.1.0/docs/api/qarp.operators.pyscf.rst +7 -0
- openqarp-0.1.0/docs/api/qarp.operators.rst +7 -0
- openqarp-0.1.0/docs/api/qarp.operators.ucc.rst +7 -0
- openqarp-0.1.0/docs/api/qarp.optimizers.rst +7 -0
- openqarp-0.1.0/docs/api/qarp.plotting.rst +7 -0
- openqarp-0.1.0/docs/api/qarp.plotting.styles.rst +18 -0
- openqarp-0.1.0/docs/api/qarp.resources.rst +9 -0
- openqarp-0.1.0/docs/api/qarp.rst +11 -0
- openqarp-0.1.0/docs/api/qarp.utils.rst +7 -0
- openqarp-0.1.0/docs/conf.py +110 -0
- openqarp-0.1.0/docs/contracts/qarp_conventions.md +952 -0
- openqarp-0.1.0/docs/contributions/README.md +91 -0
- openqarp-0.1.0/docs/contributions/_template.md +64 -0
- openqarp-0.1.0/docs/contributions/example_plan.md +93 -0
- openqarp-0.1.0/docs/index.rst +52 -0
- openqarp-0.1.0/docs/make.bat +35 -0
- openqarp-0.1.0/docs/source/algorithms.rst +2810 -0
- openqarp-0.1.0/docs/source/api.rst +9 -0
- openqarp-0.1.0/docs/source/blocks.rst +3161 -0
- openqarp-0.1.0/docs/source/configuration.rst +224 -0
- openqarp-0.1.0/docs/source/cutting.rst +229 -0
- openqarp-0.1.0/docs/source/devices.rst +205 -0
- openqarp-0.1.0/docs/source/emit_absorb.rst +302 -0
- openqarp-0.1.0/docs/source/endianness.rst +102 -0
- openqarp-0.1.0/docs/source/engines.rst +210 -0
- openqarp-0.1.0/docs/source/errors.rst +265 -0
- openqarp-0.1.0/docs/source/factories.rst +83 -0
- openqarp-0.1.0/docs/source/getting_started.rst +241 -0
- openqarp-0.1.0/docs/source/gradients.rst +307 -0
- openqarp-0.1.0/docs/source/graphs.rst +255 -0
- openqarp-0.1.0/docs/source/images/.gitkeep +0 -0
- openqarp-0.1.0/docs/source/images/4q_GHZ_circuit.png +0 -0
- openqarp-0.1.0/docs/source/images/5q_nn_device_diagram.svg +3 -0
- openqarp-0.1.0/docs/source/images/a_gate_example.svg +649 -0
- openqarp-0.1.0/docs/source/images/amplitudeamplificationblock.svg +402 -0
- openqarp-0.1.0/docs/source/images/amplitudeestimationblock.svg +665 -0
- openqarp-0.1.0/docs/source/images/block_encoding_example.svg +880 -0
- openqarp-0.1.0/docs/source/images/blocks_givens_gate.svg +759 -0
- openqarp-0.1.0/docs/source/images/blocks_trotter.svg +1268 -0
- openqarp-0.1.0/docs/source/images/blocks_trotter_yoshida.svg +1313 -0
- openqarp-0.1.0/docs/source/images/blocks_ucc.svg +685 -0
- openqarp-0.1.0/docs/source/images/brickwork_entangling_example.svg +543 -0
- openqarp-0.1.0/docs/source/images/brickwork_pce_example.svg +1377 -0
- openqarp-0.1.0/docs/source/images/computational_basis_state_example.svg +401 -0
- openqarp-0.1.0/docs/source/images/cost_operator_example.svg +581 -0
- openqarp-0.1.0/docs/source/images/csf_state_example.svg +1343 -0
- openqarp-0.1.0/docs/source/images/custom_wfn_blocks_ancillas.png +0 -0
- openqarp-0.1.0/docs/source/images/custom_wfn_blocks_no_ancillas.png +0 -0
- openqarp-0.1.0/docs/source/images/cvoqram_example.svg +858 -0
- openqarp-0.1.0/docs/source/images/dicke_4_2.svg +1731 -0
- openqarp-0.1.0/docs/source/images/directed_nn_device_example.svg +3 -0
- openqarp-0.1.0/docs/source/images/dosqpe_distribution.svg +1431 -0
- openqarp-0.1.0/docs/source/images/dosqpe_distribution_vs_spectrum.svg +1661 -0
- openqarp-0.1.0/docs/source/images/dosqpe_example.svg +1927 -0
- openqarp-0.1.0/docs/source/images/dosqpe_optimization.svg +27084 -0
- openqarp-0.1.0/docs/source/images/fig_hist_mc.png +0 -0
- openqarp-0.1.0/docs/source/images/fig_mc_doc.png +0 -0
- openqarp-0.1.0/docs/source/images/ghz_like_state_example.svg +466 -0
- openqarp-0.1.0/docs/source/images/graph_example.svg +287 -0
- openqarp-0.1.0/docs/source/images/grover_block.svg +424 -0
- openqarp-0.1.0/docs/source/images/hadamardtest_block_example.svg +1021 -0
- openqarp-0.1.0/docs/source/images/hea_example.svg +662 -0
- openqarp-0.1.0/docs/source/images/hn_example.svg +423 -0
- openqarp-0.1.0/docs/source/images/ht_ev_pretty_circuit.png +0 -0
- openqarp-0.1.0/docs/source/images/ht_ovlp_pretty_circ_imag.png +0 -0
- openqarp-0.1.0/docs/source/images/ht_ovlp_pretty_circuit_real.png +0 -0
- openqarp-0.1.0/docs/source/images/hypergraph_example.svg +554 -0
- openqarp-0.1.0/docs/source/images/hypergraph_state_example.svg +486 -0
- openqarp-0.1.0/docs/source/images/interferometricmeasurementblock.svg +492 -0
- openqarp-0.1.0/docs/source/images/interferometricstateblock.svg +413 -0
- openqarp-0.1.0/docs/source/images/layer_block_example.svg +568 -0
- openqarp-0.1.0/docs/source/images/layeredheablock_example.svg +802 -0
- openqarp-0.1.0/docs/source/images/layeredspa_example.svg +802 -0
- openqarp-0.1.0/docs/source/images/linear_entangling_example.svg +469 -0
- openqarp-0.1.0/docs/source/images/low_rank_state_example.svg +1243 -0
- openqarp-0.1.0/docs/source/images/mapped_onv_state_example.svg +401 -0
- openqarp-0.1.0/docs/source/images/measurement_device_example_unrouted_ht.png +0 -0
- openqarp-0.1.0/docs/source/images/measurement_structure.png +0 -0
- openqarp-0.1.0/docs/source/images/measurementblock_example.svg +501 -0
- openqarp-0.1.0/docs/source/images/mixed_operator_example.svg +604 -0
- openqarp-0.1.0/docs/source/images/mps_state_example.svg +787 -0
- openqarp-0.1.0/docs/source/images/multi_onv_state_example.svg +913 -0
- openqarp-0.1.0/docs/source/images/orbitalrotationblock.svg +552 -0
- openqarp-0.1.0/docs/source/images/particle_number_projector_block.svg +762 -0
- openqarp-0.1.0/docs/source/images/pauli_block_example2.svg +443 -0
- openqarp-0.1.0/docs/source/images/pauli_block_example3.svg +293 -0
- openqarp-0.1.0/docs/source/images/pauli_block_example4.svg +318 -0
- openqarp-0.1.0/docs/source/images/pauli_example.svg +461 -0
- openqarp-0.1.0/docs/source/images/phase_shift_block.svg +342 -0
- openqarp-0.1.0/docs/source/images/piecewise_linear_example.svg +1499 -0
- openqarp-0.1.0/docs/source/images/plot_color_colorblind.svg +725 -0
- openqarp-0.1.0/docs/source/images/plot_color_custom.svg +725 -0
- openqarp-0.1.0/docs/source/images/plot_color_deuteranopia.svg +725 -0
- openqarp-0.1.0/docs/source/images/plot_color_grayscale.svg +725 -0
- openqarp-0.1.0/docs/source/images/plot_color_high_contrast.svg +725 -0
- openqarp-0.1.0/docs/source/images/plot_color_protanopia.svg +725 -0
- openqarp-0.1.0/docs/source/images/plot_color_tritanopia.svg +725 -0
- openqarp-0.1.0/docs/source/images/plot_decompose_false.svg +914 -0
- openqarp-0.1.0/docs/source/images/plot_decompose_true.svg +565 -0
- openqarp-0.1.0/docs/source/images/plot_default.svg +718 -0
- openqarp-0.1.0/docs/source/images/plot_figsize.svg +718 -0
- openqarp-0.1.0/docs/source/images/plot_flatten_false.svg +718 -0
- openqarp-0.1.0/docs/source/images/plot_invert_true.svg +718 -0
- openqarp-0.1.0/docs/source/images/plot_label_full.svg +787 -0
- openqarp-0.1.0/docs/source/images/plot_label_truncate.svg +660 -0
- openqarp-0.1.0/docs/source/images/plot_latex.svg +665 -0
- openqarp-0.1.0/docs/source/images/plot_spacing_tight.svg +718 -0
- openqarp-0.1.0/docs/source/images/plot_spacing_wide.svg +718 -0
- openqarp-0.1.0/docs/source/images/projectedcontrolphaseblock_example.svg +825 -0
- openqarp-0.1.0/docs/source/images/qaoa_block.svg +1251 -0
- openqarp-0.1.0/docs/source/images/qaoa_histogram.svg +999 -0
- openqarp-0.1.0/docs/source/images/qft_example.svg +872 -0
- openqarp-0.1.0/docs/source/images/qmegs_density.svg +2199 -0
- openqarp-0.1.0/docs/source/images/qpe_distribution.svg +1728 -0
- openqarp-0.1.0/docs/source/images/qpe_example.svg +1202 -0
- openqarp-0.1.0/docs/source/images/qpe_example_blocks.svg +1357 -0
- openqarp-0.1.0/docs/source/images/qrom_example.svg +693 -0
- openqarp-0.1.0/docs/source/images/qsp.svg +574 -0
- openqarp-0.1.0/docs/source/images/qsvtblock.svg +874 -0
- openqarp-0.1.0/docs/source/images/qubitizationblock.svg +304 -0
- openqarp-0.1.0/docs/source/images/reflectionblock.svg +414 -0
- openqarp-0.1.0/docs/source/images/routed_directed_circuit_ht_ev_meas_example.png +0 -0
- openqarp-0.1.0/docs/source/images/routed_undirected_circuit_ht_ev_meas_example.png +0 -0
- openqarp-0.1.0/docs/source/images/rspblock.svg +589 -0
- openqarp-0.1.0/docs/source/images/select_example.svg +481 -0
- openqarp-0.1.0/docs/source/images/simplicial_complex_added.svg +226 -0
- openqarp-0.1.0/docs/source/images/simplicial_complex_initial.svg +209 -0
- openqarp-0.1.0/docs/source/images/simplicial_complex_removed.svg +207 -0
- openqarp-0.1.0/docs/source/images/slater_determinant_example.svg +892 -0
- openqarp-0.1.0/docs/source/images/sparse_state_example.svg +863 -0
- openqarp-0.1.0/docs/source/images/spectrum_estimator.svg +1708 -0
- openqarp-0.1.0/docs/source/images/swap_test_pretty_circuit.png +0 -0
- openqarp-0.1.0/docs/source/images/swaptest_block_example.svg +1102 -0
- openqarp-0.1.0/docs/source/images/synth_time_evolution_example.svg +1173 -0
- openqarp-0.1.0/docs/source/images/synthblock.svg +1175 -0
- openqarp-0.1.0/docs/source/images/synthesized_state_example.svg +638 -0
- openqarp-0.1.0/docs/source/images/trotter_ansatz_example.svg +869 -0
- openqarp-0.1.0/docs/source/images/trotter_error.png +0 -0
- openqarp-0.1.0/docs/source/images/ucc_ansatz.svg +849 -0
- openqarp-0.1.0/docs/source/images/uniform_superposition_example.svg +683 -0
- openqarp-0.1.0/docs/source/images/upccd_block.svg +660 -0
- openqarp-0.1.0/docs/source/images/vumpo_brickwork_example.svg +623 -0
- openqarp-0.1.0/docs/source/images/xn_example.svg +423 -0
- openqarp-0.1.0/docs/source/installation.rst +339 -0
- openqarp-0.1.0/docs/source/operators.rst +731 -0
- openqarp-0.1.0/docs/source/optimizers.rst +655 -0
- openqarp-0.1.0/docs/source/plotting.rst +617 -0
- openqarp-0.1.0/docs/source/postselection.rst +182 -0
- openqarp-0.1.0/docs/source/qarp_philosophy.rst +481 -0
- openqarp-0.1.0/docs/source/resources.rst +285 -0
- openqarp-0.1.0/docs/source/tutorial.rst +764 -0
- openqarp-0.1.0/docs/source/utils.rst +83 -0
- openqarp-0.1.0/examples/algorithms/composite/MWE_amplitude_amplification.ipynb +110 -0
- openqarp-0.1.0/examples/algorithms/composite/MWE_amplitude_estimation.ipynb +102 -0
- openqarp-0.1.0/examples/algorithms/composite/MWE_grover.ipynb +101 -0
- openqarp-0.1.0/examples/algorithms/composite/mwe_adapt_vqe_vqd.ipynb +121 -0
- openqarp-0.1.0/examples/algorithms/composite/mwe_cpce_algo.ipynb +260 -0
- openqarp-0.1.0/examples/algorithms/composite/mwe_dosqpe.ipynb +333 -0
- openqarp-0.1.0/examples/algorithms/composite/mwe_iterative_pce.ipynb +199 -0
- openqarp-0.1.0/examples/algorithms/composite/mwe_mmqcels.ipynb +221 -0
- openqarp-0.1.0/examples/algorithms/composite/mwe_montecarlo.ipynb +1067 -0
- openqarp-0.1.0/examples/algorithms/composite/mwe_montecarlo_vumpo.ipynb +706 -0
- openqarp-0.1.0/examples/algorithms/composite/mwe_pce_algo.ipynb +349 -0
- openqarp-0.1.0/examples/algorithms/composite/mwe_projected_vqe.ipynb +368 -0
- openqarp-0.1.0/examples/algorithms/composite/mwe_qaoa_max_cut.ipynb +361 -0
- openqarp-0.1.0/examples/algorithms/composite/mwe_qite.ipynb +140 -0
- openqarp-0.1.0/examples/algorithms/composite/mwe_qmegs.ipynb +338 -0
- openqarp-0.1.0/examples/algorithms/composite/mwe_qpe.ipynb +215 -0
- openqarp-0.1.0/examples/algorithms/composite/mwe_qse.ipynb +193 -0
- openqarp-0.1.0/examples/algorithms/composite/mwe_qubitization.ipynb +147 -0
- openqarp-0.1.0/examples/algorithms/composite/mwe_shor.ipynb +142 -0
- openqarp-0.1.0/examples/algorithms/composite/mwe_ssvqe.ipynb +142 -0
- openqarp-0.1.0/examples/algorithms/composite/mwe_vff.ipynb +220 -0
- openqarp-0.1.0/examples/algorithms/composite/mwe_vqd.ipynb +69 -0
- openqarp-0.1.0/examples/algorithms/composite/mwe_vqe.ipynb +100 -0
- openqarp-0.1.0/examples/algorithms/primitives/mwe_basis_rotation_averaging.ipynb +327 -0
- openqarp-0.1.0/examples/algorithms/primitives/mwe_circuit_cutting.ipynb +218 -0
- openqarp-0.1.0/examples/algorithms/primitives/mwe_classical_shadows.ipynb +253 -0
- openqarp-0.1.0/examples/algorithms/primitives/mwe_primitive_algorithms.ipynb +466 -0
- openqarp-0.1.0/examples/blocks/mwe_blocks.ipynb +1035 -0
- openqarp-0.1.0/examples/blocks/mwe_projected_symmetry_states.ipynb +231 -0
- openqarp-0.1.0/examples/blocks/mwe_qdrift.ipynb +266 -0
- openqarp-0.1.0/examples/blocks/mwe_qsvt.ipynb +88 -0
- openqarp-0.1.0/examples/blocks/mwe_state_preparation.ipynb +454 -0
- openqarp-0.1.0/examples/blocks/mwe_trotter.ipynb +253 -0
- openqarp-0.1.0/examples/devices/mwe_circuit_compilation.ipynb +375 -0
- openqarp-0.1.0/examples/devices/mwe_devices.ipynb +129 -0
- openqarp-0.1.0/examples/emit_absorb/mwe_emitters_absorbers.ipynb +518 -0
- openqarp-0.1.0/examples/engines/mwe_engines.ipynb +269 -0
- openqarp-0.1.0/examples/engines/mwe_gate_fusion.ipynb +120 -0
- openqarp-0.1.0/examples/engines/mwe_gradients.ipynb +464 -0
- openqarp-0.1.0/examples/engines/mwe_initial_state_injection.ipynb +132 -0
- openqarp-0.1.0/examples/factories/mwe_factories.ipynb +71 -0
- openqarp-0.1.0/examples/graphs/mwe_graphs.ipynb +290 -0
- openqarp-0.1.0/examples/graphs/mwe_simplicial_complex.ipynb +291 -0
- openqarp-0.1.0/examples/operators/mwe_grouping_strategy.ipynb +288 -0
- openqarp-0.1.0/examples/operators/mwe_operators.ipynb +332 -0
- openqarp-0.1.0/examples/operators/mwe_orbital_rotation.ipynb +249 -0
- openqarp-0.1.0/examples/optimizers/mwe_optimizers.ipynb +329 -0
- openqarp-0.1.0/examples/optimizers/mwe_parameter_optimization.ipynb +217 -0
- openqarp-0.1.0/examples/plotting/mwe_plot.ipynb +228 -0
- openqarp-0.1.0/examples/postselection/mwe_postselection.ipynb +213 -0
- openqarp-0.1.0/examples/resources/mwe_counting.ipynb +653 -0
- openqarp-0.1.0/examples/resources/mwe_resource_estimation.ipynb +242 -0
- openqarp-0.1.0/examples/tutorial_00_hello_qarp.ipynb +198 -0
- openqarp-0.1.0/examples/tutorial_01_blocks.ipynb +275 -0
- openqarp-0.1.0/examples/tutorial_02_primitives.ipynb +210 -0
- openqarp-0.1.0/examples/tutorial_03_engines.ipynb +184 -0
- openqarp-0.1.0/examples/tutorial_04_variational_loop.ipynb +243 -0
- openqarp-0.1.0/examples/tutorial_05_algorithm_tour.ipynb +150 -0
- openqarp-0.1.0/examples/use_cases/biology_dna_search.ipynb +428 -0
- openqarp-0.1.0/examples/use_cases/chemistry_ethylene_torsion.ipynb +540 -0
- openqarp-0.1.0/examples/use_cases/finance_portfolio_diversification.ipynb +619 -0
- openqarp-0.1.0/examples/use_cases/vision_image_classification.ipynb +358 -0
- openqarp-0.1.0/mypy.ini +57 -0
- openqarp-0.1.0/pyproject.toml +387 -0
- openqarp-0.1.0/pytest.ini +13 -0
- openqarp-0.1.0/qarp/__init__.py +66 -0
- openqarp-0.1.0/qarp/_abi.py +47 -0
- openqarp-0.1.0/qarp/_config.py +52 -0
- openqarp-0.1.0/qarp/_lazy.py +55 -0
- openqarp-0.1.0/qarp/_mpi_config.py +64 -0
- openqarp-0.1.0/qarp/_postselection.py +242 -0
- openqarp-0.1.0/qarp/_types.py +89 -0
- openqarp-0.1.0/qarp/absorb/__init__.py +86 -0
- openqarp-0.1.0/qarp/absorb/_qasm2_absorber.py +36 -0
- openqarp-0.1.0/qarp/absorb/_qasm3_absorber.py +32 -0
- openqarp-0.1.0/qarp/absorb/_reconstruct.py +28 -0
- openqarp-0.1.0/qarp/algorithms/__init__.py +141 -0
- openqarp-0.1.0/qarp/algorithms/_composite/__init__.py +25 -0
- openqarp-0.1.0/qarp/algorithms/_composite/_params.py +43 -0
- openqarp-0.1.0/qarp/algorithms/_composite/adapt_vqd.py +365 -0
- openqarp-0.1.0/qarp/algorithms/_composite/adapt_vqe.py +289 -0
- openqarp-0.1.0/qarp/algorithms/_composite/amplitude_amplification.py +140 -0
- openqarp-0.1.0/qarp/algorithms/_composite/amplitude_estimation.py +110 -0
- openqarp-0.1.0/qarp/algorithms/_composite/composite_algorithm.py +207 -0
- openqarp-0.1.0/qarp/algorithms/_composite/dos_qpe.py +250 -0
- openqarp-0.1.0/qarp/algorithms/_composite/grover.py +135 -0
- openqarp-0.1.0/qarp/algorithms/_composite/mmqcels.py +625 -0
- openqarp-0.1.0/qarp/algorithms/_composite/montecarlo.py +1219 -0
- openqarp-0.1.0/qarp/algorithms/_composite/pce.py +1014 -0
- openqarp-0.1.0/qarp/algorithms/_composite/projected_vqe.py +380 -0
- openqarp-0.1.0/qarp/algorithms/_composite/qaoa.py +96 -0
- openqarp-0.1.0/qarp/algorithms/_composite/qite.py +258 -0
- openqarp-0.1.0/qarp/algorithms/_composite/qmegs.py +649 -0
- openqarp-0.1.0/qarp/algorithms/_composite/qpe.py +219 -0
- openqarp-0.1.0/qarp/algorithms/_composite/qse.py +321 -0
- openqarp-0.1.0/qarp/algorithms/_composite/shor.py +386 -0
- openqarp-0.1.0/qarp/algorithms/_composite/ssvqe.py +204 -0
- openqarp-0.1.0/qarp/algorithms/_composite/vff.py +175 -0
- openqarp-0.1.0/qarp/algorithms/_composite/vqa.py +205 -0
- openqarp-0.1.0/qarp/algorithms/_composite/vqd.py +320 -0
- openqarp-0.1.0/qarp/algorithms/_composite/vqe.py +64 -0
- openqarp-0.1.0/qarp/algorithms/_primitives/__init__.py +49 -0
- openqarp-0.1.0/qarp/algorithms/_primitives/basis_rotation_averaging.py +186 -0
- openqarp-0.1.0/qarp/algorithms/_primitives/cutting_primitive.py +199 -0
- openqarp-0.1.0/qarp/algorithms/_primitives/grouped_transition_hadamard_test.py +254 -0
- openqarp-0.1.0/qarp/algorithms/_primitives/hadamard_test.py +160 -0
- openqarp-0.1.0/qarp/algorithms/_primitives/interferometric_test.py +157 -0
- openqarp-0.1.0/qarp/algorithms/_primitives/mirror_test.py +119 -0
- openqarp-0.1.0/qarp/algorithms/_primitives/pauli_averaging.py +228 -0
- openqarp-0.1.0/qarp/algorithms/_primitives/primitive_algorithm.py +212 -0
- openqarp-0.1.0/qarp/algorithms/_primitives/sampler.py +95 -0
- openqarp-0.1.0/qarp/algorithms/_primitives/shadows/__init__.py +22 -0
- openqarp-0.1.0/qarp/algorithms/_primitives/shadows/_estimators.py +109 -0
- openqarp-0.1.0/qarp/algorithms/_primitives/shadows/base.py +166 -0
- openqarp-0.1.0/qarp/algorithms/_primitives/shadows/dataset.py +188 -0
- openqarp-0.1.0/qarp/algorithms/_primitives/shadows/estimator.py +184 -0
- openqarp-0.1.0/qarp/algorithms/_primitives/shadows/kernels.py +84 -0
- openqarp-0.1.0/qarp/algorithms/_primitives/shadows/pauli.py +69 -0
- openqarp-0.1.0/qarp/algorithms/_primitives/state_vector.py +414 -0
- openqarp-0.1.0/qarp/algorithms/_primitives/swap_test.py +93 -0
- openqarp-0.1.0/qarp/algorithms/_primitives/target.py +24 -0
- openqarp-0.1.0/qarp/algorithms/_primitives/termwise_hadamard_test.py +189 -0
- openqarp-0.1.0/qarp/algorithms/_primitives/termwise_swap_test.py +118 -0
- openqarp-0.1.0/qarp/algorithms/_spectral_estimation.py +1586 -0
- openqarp-0.1.0/qarp/algorithms/_utils.py +276 -0
- openqarp-0.1.0/qarp/blocks/__init__.py +193 -0
- openqarp-0.1.0/qarp/blocks/_block.py +1549 -0
- openqarp-0.1.0/qarp/blocks/_composite_block.py +98 -0
- openqarp-0.1.0/qarp/blocks/_prepares_known_state.py +219 -0
- openqarp-0.1.0/qarp/blocks/_primitives/__init__.py +63 -0
- openqarp-0.1.0/qarp/blocks/_primitives/a_gate_block.py +48 -0
- openqarp-0.1.0/qarp/blocks/_primitives/amplitude_amplification_block.py +135 -0
- openqarp-0.1.0/qarp/blocks/_primitives/amplitude_estimation_block.py +77 -0
- openqarp-0.1.0/qarp/blocks/_primitives/block_encoding_block.py +220 -0
- openqarp-0.1.0/qarp/blocks/_primitives/brickwork_entangling_block.py +56 -0
- openqarp-0.1.0/qarp/blocks/_primitives/brickwork_pce_block.py +83 -0
- openqarp-0.1.0/qarp/blocks/_primitives/cost_operator_block.py +62 -0
- openqarp-0.1.0/qarp/blocks/_primitives/dos_qpe_block.py +113 -0
- openqarp-0.1.0/qarp/blocks/_primitives/givens_block.py +58 -0
- openqarp-0.1.0/qarp/blocks/_primitives/grover_block.py +95 -0
- openqarp-0.1.0/qarp/blocks/_primitives/haar_random_block.py +248 -0
- openqarp-0.1.0/qarp/blocks/_primitives/hadamard_test_block.py +257 -0
- openqarp-0.1.0/qarp/blocks/_primitives/hea_block.py +85 -0
- openqarp-0.1.0/qarp/blocks/_primitives/hn_block.py +24 -0
- openqarp-0.1.0/qarp/blocks/_primitives/identity_block.py +26 -0
- openqarp-0.1.0/qarp/blocks/_primitives/interferometric_state_block.py +154 -0
- openqarp-0.1.0/qarp/blocks/_primitives/layer_block.py +237 -0
- openqarp-0.1.0/qarp/blocks/_primitives/linear_entangling_block.py +47 -0
- openqarp-0.1.0/qarp/blocks/_primitives/mixed_operator_block.py +36 -0
- openqarp-0.1.0/qarp/blocks/_primitives/modular_multiplication_block.py +128 -0
- openqarp-0.1.0/qarp/blocks/_primitives/orbital_rotation_block.py +139 -0
- openqarp-0.1.0/qarp/blocks/_primitives/order_finding_block.py +133 -0
- openqarp-0.1.0/qarp/blocks/_primitives/pauli_block.py +183 -0
- openqarp-0.1.0/qarp/blocks/_primitives/phase_shift_block.py +29 -0
- openqarp-0.1.0/qarp/blocks/_primitives/projected_control_phase_block.py +54 -0
- openqarp-0.1.0/qarp/blocks/_primitives/projector_blocks.py +541 -0
- openqarp-0.1.0/qarp/blocks/_primitives/qaoa_block.py +69 -0
- openqarp-0.1.0/qarp/blocks/_primitives/qft_block.py +41 -0
- openqarp-0.1.0/qarp/blocks/_primitives/qpe_block.py +91 -0
- openqarp-0.1.0/qarp/blocks/_primitives/qrom_block.py +99 -0
- openqarp-0.1.0/qarp/blocks/_primitives/qsp_block.py +107 -0
- openqarp-0.1.0/qarp/blocks/_primitives/qsvt_block.py +146 -0
- openqarp-0.1.0/qarp/blocks/_primitives/qubitization_block.py +73 -0
- openqarp-0.1.0/qarp/blocks/_primitives/readout_block.py +80 -0
- openqarp-0.1.0/qarp/blocks/_primitives/reflection_block.py +39 -0
- openqarp-0.1.0/qarp/blocks/_primitives/rsp_block.py +42 -0
- openqarp-0.1.0/qarp/blocks/_primitives/select_block.py +262 -0
- openqarp-0.1.0/qarp/blocks/_primitives/spa_block.py +81 -0
- openqarp-0.1.0/qarp/blocks/_primitives/swap_test_block.py +109 -0
- openqarp-0.1.0/qarp/blocks/_primitives/synthesized_time_evolution_block.py +74 -0
- openqarp-0.1.0/qarp/blocks/_primitives/synthesized_unitary_block.py +61 -0
- openqarp-0.1.0/qarp/blocks/_primitives/trotter_block.py +619 -0
- openqarp-0.1.0/qarp/blocks/_primitives/ucc_block.py +137 -0
- openqarp-0.1.0/qarp/blocks/_primitives/upccd_block.py +100 -0
- openqarp-0.1.0/qarp/blocks/_primitives/vumpo_brickwork_block.py +90 -0
- openqarp-0.1.0/qarp/blocks/_primitives/xn_block.py +24 -0
- openqarp-0.1.0/qarp/blocks/_state_preparation/__init__.py +20 -0
- openqarp-0.1.0/qarp/blocks/_state_preparation/_linalg.py +23 -0
- openqarp-0.1.0/qarp/blocks/_state_preparation/_multi_controlled.py +113 -0
- openqarp-0.1.0/qarp/blocks/_state_preparation/computational_basis_state_block.py +47 -0
- openqarp-0.1.0/qarp/blocks/_state_preparation/csf_state_block.py +225 -0
- openqarp-0.1.0/qarp/blocks/_state_preparation/cv_qram_state_block.py +129 -0
- openqarp-0.1.0/qarp/blocks/_state_preparation/cvo_qram_state_block.py +114 -0
- openqarp-0.1.0/qarp/blocks/_state_preparation/dicke_state_block.py +129 -0
- openqarp-0.1.0/qarp/blocks/_state_preparation/ghz_like_state_block.py +78 -0
- openqarp-0.1.0/qarp/blocks/_state_preparation/hypergraph_state_block.py +113 -0
- openqarp-0.1.0/qarp/blocks/_state_preparation/low_rank_state_block.py +160 -0
- openqarp-0.1.0/qarp/blocks/_state_preparation/mapped_onv_state_block.py +54 -0
- openqarp-0.1.0/qarp/blocks/_state_preparation/mps_state_block.py +172 -0
- openqarp-0.1.0/qarp/blocks/_state_preparation/multi_onv_state_block.py +97 -0
- openqarp-0.1.0/qarp/blocks/_state_preparation/piecewise_linear_state_block.py +192 -0
- openqarp-0.1.0/qarp/blocks/_state_preparation/slater_determinant_block.py +187 -0
- openqarp-0.1.0/qarp/blocks/_state_preparation/sparse_state_block.py +130 -0
- openqarp-0.1.0/qarp/blocks/_state_preparation/synthesized_state_block.py +88 -0
- openqarp-0.1.0/qarp/blocks/_state_preparation/uniform_superposition_block.py +89 -0
- openqarp-0.1.0/qarp/cutting/__init__.py +37 -0
- openqarp-0.1.0/qarp/cutting/_auto_cut_finder.py +137 -0
- openqarp-0.1.0/qarp/cutting/_decompositions.py +158 -0
- openqarp-0.1.0/qarp/cutting/_ea_partitioning.py +225 -0
- openqarp-0.1.0/qarp/cutting/_internals.py +95 -0
- openqarp-0.1.0/qarp/cutting/_post_processing.py +90 -0
- openqarp-0.1.0/qarp/cutting/_qpd_decomposition.py +764 -0
- openqarp-0.1.0/qarp/cutting/_reconstructer.py +171 -0
- openqarp-0.1.0/qarp/devices/__init__.py +46 -0
- openqarp-0.1.0/qarp/devices/_architecture.py +29 -0
- openqarp-0.1.0/qarp/devices/_device.py +16 -0
- openqarp-0.1.0/qarp/devices/_noise_model.py +152 -0
- openqarp-0.1.0/qarp/devices/_utils.py +18 -0
- openqarp-0.1.0/qarp/emit/__init__.py +37 -0
- openqarp-0.1.0/qarp/endianness.py +97 -0
- openqarp-0.1.0/qarp/engines/__init__.py +13 -0
- openqarp-0.1.0/qarp/engines/_cudaq_engine.py +331 -0
- openqarp-0.1.0/qarp/engines/_engine.py +691 -0
- openqarp-0.1.0/qarp/engines/_gradients.py +546 -0
- openqarp-0.1.0/qarp/engines/_qarp_engine.py +484 -0
- openqarp-0.1.0/qarp/engines/_runnable.py +45 -0
- openqarp-0.1.0/qarp/errors.py +23 -0
- openqarp-0.1.0/qarp/factories/__init__.py +9 -0
- openqarp-0.1.0/qarp/factories/_block_factory.py +17 -0
- openqarp-0.1.0/qarp/factories/_pauli_block_factory.py +233 -0
- openqarp-0.1.0/qarp/graphs/__init__.py +41 -0
- openqarp-0.1.0/qarp/graphs/_graph.py +252 -0
- openqarp-0.1.0/qarp/graphs/_hypergraph.py +79 -0
- openqarp-0.1.0/qarp/graphs/_simplicial_complex.py +362 -0
- openqarp-0.1.0/qarp/graphs/_utils.py +166 -0
- openqarp-0.1.0/qarp/operators/__init__.py +81 -0
- openqarp-0.1.0/qarp/operators/_basis_rotation_grouping.py +257 -0
- openqarp-0.1.0/qarp/operators/_fermion_operator.py +37 -0
- openqarp-0.1.0/qarp/operators/_grouping.py +224 -0
- openqarp-0.1.0/qarp/operators/_linear_combination_unitaries.py +354 -0
- openqarp-0.1.0/qarp/operators/_mappings.py +189 -0
- openqarp-0.1.0/qarp/operators/_qdrift.py +195 -0
- openqarp-0.1.0/qarp/operators/_qubit_operator.py +48 -0
- openqarp-0.1.0/qarp/operators/_tensor_operators.py +176 -0
- openqarp-0.1.0/qarp/operators/_vumpo.py +1070 -0
- openqarp-0.1.0/qarp/operators/_vumpo_network.py +418 -0
- openqarp-0.1.0/qarp/operators/compat.py +73 -0
- openqarp-0.1.0/qarp/operators/functions.py +58 -0
- openqarp-0.1.0/qarp/operators/integrals.py +330 -0
- openqarp-0.1.0/qarp/operators/models.py +205 -0
- openqarp-0.1.0/qarp/operators/onv.py +119 -0
- openqarp-0.1.0/qarp/operators/pyscf.py +164 -0
- openqarp-0.1.0/qarp/operators/ucc.py +317 -0
- openqarp-0.1.0/qarp/optimizers/__init__.py +38 -0
- openqarp-0.1.0/qarp/optimizers/_gradient_descent_optimizer.py +895 -0
- openqarp-0.1.0/qarp/optimizers/_optimizer.py +29 -0
- openqarp-0.1.0/qarp/optimizers/_rotosolve_optimizer.py +225 -0
- openqarp-0.1.0/qarp/optimizers/_scipy_optimizer.py +72 -0
- openqarp-0.1.0/qarp/plotting/__init__.py +22 -0
- openqarp-0.1.0/qarp/plotting/_circuit_adapter.py +366 -0
- openqarp-0.1.0/qarp/plotting/_circuit_plotter.py +513 -0
- openqarp-0.1.0/qarp/plotting/_config.py +70 -0
- openqarp-0.1.0/qarp/plotting/_interactive.py +118 -0
- openqarp-0.1.0/qarp/plotting/_plot.py +160 -0
- openqarp-0.1.0/qarp/plotting/_plot_histogram.py +112 -0
- openqarp-0.1.0/qarp/plotting/_processors/__init__.py +10 -0
- openqarp-0.1.0/qarp/plotting/_processors/circuit_processor.py +102 -0
- openqarp-0.1.0/qarp/plotting/_processors/positioning.py +51 -0
- openqarp-0.1.0/qarp/plotting/_renderers/__init__.py +22 -0
- openqarp-0.1.0/qarp/plotting/_renderers/base.py +103 -0
- openqarp-0.1.0/qarp/plotting/_renderers/boxed.py +99 -0
- openqarp-0.1.0/qarp/plotting/_renderers/controlled.py +83 -0
- openqarp-0.1.0/qarp/plotting/_renderers/controlled_block.py +115 -0
- openqarp-0.1.0/qarp/plotting/_renderers/factory.py +72 -0
- openqarp-0.1.0/qarp/plotting/_renderers/global_phase.py +26 -0
- openqarp-0.1.0/qarp/plotting/_renderers/label_manager.py +333 -0
- openqarp-0.1.0/qarp/plotting/_renderers/multi.py +55 -0
- openqarp-0.1.0/qarp/plotting/_renderers/single.py +54 -0
- openqarp-0.1.0/qarp/plotting/styles/__init__.py +35 -0
- openqarp-0.1.0/qarp/plotting/styles/_colors.py +205 -0
- openqarp-0.1.0/qarp/plotting/styles/_theme.py +119 -0
- openqarp-0.1.0/qarp/plotting/styles/fonts/OFL.txt +93 -0
- openqarp-0.1.0/qarp/plotting/styles/fonts/SplineSansMono-Medium.ttf +0 -0
- openqarp-0.1.0/qarp/plotting/styles/fonts/SplineSansMono-Regular.ttf +0 -0
- openqarp-0.1.0/qarp/plotting/styles/fonts/SplineSansMono-SemiBold.ttf +0 -0
- openqarp-0.1.0/qarp/resources/__init__.py +31 -0
- openqarp-0.1.0/qarp/resources/_counting.py +110 -0
- openqarp-0.1.0/qarp/resources/_estimator.py +231 -0
- openqarp-0.1.0/qarp/resources/_modelers.py +30 -0
- openqarp-0.1.0/qarp/resources/_synthesis.py +147 -0
- openqarp-0.1.0/qarp/resources/_vector.py +114 -0
- openqarp-0.1.0/qarp/utils/__init__.py +12 -0
- openqarp-0.1.0/qarp/utils/_random_instances.py +99 -0
- openqarp-0.1.0/qarp/utils/_toy_models.py +66 -0
- openqarp-0.1.0/scripts/__init__.py +0 -0
- openqarp-0.1.0/scripts/bootstrap_qarpx.py +349 -0
- openqarp-0.1.0/scripts/bootstrap_qarpx_cudaq.py +321 -0
- openqarp-0.1.0/scripts/ci/__init__.py +0 -0
- openqarp-0.1.0/scripts/ci/check_api_inventory.py +82 -0
- openqarp-0.1.0/scripts/ci/check_docs_code.py +376 -0
- openqarp-0.1.0/scripts/ci/synthesis_smoke.py +52 -0
- openqarp-0.1.0/scripts/run_cpp_tests.py +188 -0
- openqarp-0.1.0/tests/__init__.py +0 -0
- openqarp-0.1.0/tests/assets/molecules/generate.py +48 -0
- openqarp-0.1.0/tests/assets/molecules/h2_0.635_sto3g.npz +0 -0
- openqarp-0.1.0/tests/assets/molecules/h2_0.735_sto3g.npz +0 -0
- openqarp-0.1.0/tests/assets/molecules/h2_3.000_sto3g.npz +0 -0
- openqarp-0.1.0/tests/assets/molecules/h4_1.000_sto3g.npz +0 -0
- openqarp-0.1.0/tests/assets/molecules/lih_1.30_sto3g.npz +0 -0
- openqarp-0.1.0/tests/assets/molecules/lih_1.59_sto3g.npz +0 -0
- openqarp-0.1.0/tests/conftest.py +226 -0
- openqarp-0.1.0/tests/leakdiag.py +137 -0
- openqarp-0.1.0/tests/molecular_assets.py +69 -0
- openqarp-0.1.0/tests/operator_test_utils.py +89 -0
- openqarp-0.1.0/tests/pccd_reference_energies.py +33 -0
- openqarp-0.1.0/tests/pyscf_recipes.py +35 -0
- openqarp-0.1.0/tests/strategies.py +580 -0
- openqarp-0.1.0/tests/test_abi_stamp.py +92 -0
- openqarp-0.1.0/tests/test_absorb/__init__.py +0 -0
- openqarp-0.1.0/tests/test_absorb/conftest.py +32 -0
- openqarp-0.1.0/tests/test_absorb/test_pennylane_absorber.py +207 -0
- openqarp-0.1.0/tests/test_absorb/test_pytket_absorber.py +358 -0
- openqarp-0.1.0/tests/test_absorb/test_qasm2_absorber.py +370 -0
- openqarp-0.1.0/tests/test_absorb/test_qasm3_absorber.py +281 -0
- openqarp-0.1.0/tests/test_absorb/test_qiskit_absorber.py +378 -0
- openqarp-0.1.0/tests/test_absorb/test_qulacs_absorber.py +315 -0
- openqarp-0.1.0/tests/test_absorb/test_wrong_sdk_object.py +69 -0
- openqarp-0.1.0/tests/test_algorithms/__init__.py +0 -0
- openqarp-0.1.0/tests/test_algorithms/test_composite/__init__.py +0 -0
- openqarp-0.1.0/tests/test_algorithms/test_composite/test_adapt_unit.py +330 -0
- openqarp-0.1.0/tests/test_algorithms/test_composite/test_adapt_vqd.py +145 -0
- openqarp-0.1.0/tests/test_algorithms/test_composite/test_adapt_vqe.py +268 -0
- openqarp-0.1.0/tests/test_algorithms/test_composite/test_amplitude_amplification.py +282 -0
- openqarp-0.1.0/tests/test_algorithms/test_composite/test_amplitude_estimation.py +241 -0
- openqarp-0.1.0/tests/test_algorithms/test_composite/test_amplitude_gate.py +196 -0
- openqarp-0.1.0/tests/test_algorithms/test_composite/test_composite_algorithm.py +289 -0
- openqarp-0.1.0/tests/test_algorithms/test_composite/test_dos_qpe.py +220 -0
- openqarp-0.1.0/tests/test_algorithms/test_composite/test_grover.py +172 -0
- openqarp-0.1.0/tests/test_algorithms/test_composite/test_mmqcels.py +664 -0
- openqarp-0.1.0/tests/test_algorithms/test_composite/test_montecarlo.py +508 -0
- openqarp-0.1.0/tests/test_algorithms/test_composite/test_montecarlo_unit.py +369 -0
- openqarp-0.1.0/tests/test_algorithms/test_composite/test_params.py +46 -0
- openqarp-0.1.0/tests/test_algorithms/test_composite/test_pce.py +756 -0
- openqarp-0.1.0/tests/test_algorithms/test_composite/test_primitive_isolation.py +43 -0
- openqarp-0.1.0/tests/test_algorithms/test_composite/test_projected_vqe.py +193 -0
- openqarp-0.1.0/tests/test_algorithms/test_composite/test_qaoa.py +224 -0
- openqarp-0.1.0/tests/test_algorithms/test_composite/test_qite.py +366 -0
- openqarp-0.1.0/tests/test_algorithms/test_composite/test_qmegs.py +760 -0
- openqarp-0.1.0/tests/test_algorithms/test_composite/test_qpe.py +348 -0
- openqarp-0.1.0/tests/test_algorithms/test_composite/test_qse.py +234 -0
- openqarp-0.1.0/tests/test_algorithms/test_composite/test_shor.py +301 -0
- openqarp-0.1.0/tests/test_algorithms/test_composite/test_ssvqe.py +169 -0
- openqarp-0.1.0/tests/test_algorithms/test_composite/test_ssvqe_analytic.py +128 -0
- openqarp-0.1.0/tests/test_algorithms/test_composite/test_vff.py +183 -0
- openqarp-0.1.0/tests/test_algorithms/test_composite/test_vqa.py +172 -0
- openqarp-0.1.0/tests/test_algorithms/test_composite/test_vqd.py +122 -0
- openqarp-0.1.0/tests/test_algorithms/test_composite/test_vqd_analytic.py +393 -0
- openqarp-0.1.0/tests/test_algorithms/test_composite/test_vqe.py +287 -0
- openqarp-0.1.0/tests/test_algorithms/test_primitives/__init__.py +0 -0
- openqarp-0.1.0/tests/test_algorithms/test_primitives/test_basis_rotation_averaging.py +193 -0
- openqarp-0.1.0/tests/test_algorithms/test_primitives/test_cutting_primitive.py +291 -0
- openqarp-0.1.0/tests/test_algorithms/test_primitives/test_grouped_transition_hadamard_test.py +146 -0
- openqarp-0.1.0/tests/test_algorithms/test_primitives/test_hadamard_test.py +261 -0
- openqarp-0.1.0/tests/test_algorithms/test_primitives/test_interferometric_test.py +199 -0
- openqarp-0.1.0/tests/test_algorithms/test_primitives/test_mirror_test.py +201 -0
- openqarp-0.1.0/tests/test_algorithms/test_primitives/test_pauli_averaging.py +434 -0
- openqarp-0.1.0/tests/test_algorithms/test_primitives/test_primitive_algorithm.py +148 -0
- openqarp-0.1.0/tests/test_algorithms/test_primitives/test_sampler.py +122 -0
- openqarp-0.1.0/tests/test_algorithms/test_primitives/test_shadows/__init__.py +0 -0
- openqarp-0.1.0/tests/test_algorithms/test_primitives/test_shadows/test_base.py +229 -0
- openqarp-0.1.0/tests/test_algorithms/test_primitives/test_shadows/test_dataset.py +109 -0
- openqarp-0.1.0/tests/test_algorithms/test_primitives/test_shadows/test_estimators.py +179 -0
- openqarp-0.1.0/tests/test_algorithms/test_primitives/test_shadows/test_integration.py +50 -0
- openqarp-0.1.0/tests/test_algorithms/test_primitives/test_shadows/test_pauli.py +223 -0
- openqarp-0.1.0/tests/test_algorithms/test_primitives/test_state_vector.py +470 -0
- openqarp-0.1.0/tests/test_algorithms/test_primitives/test_swap_test.py +192 -0
- openqarp-0.1.0/tests/test_algorithms/test_primitives/test_termwise_hadamard_test.py +387 -0
- openqarp-0.1.0/tests/test_algorithms/test_primitives/test_termwise_swap_test.py +246 -0
- openqarp-0.1.0/tests/test_algorithms/test_spectral_estimation.py +901 -0
- openqarp-0.1.0/tests/test_algorithms/test_utils.py +242 -0
- openqarp-0.1.0/tests/test_benchmarks/__init__.py +0 -0
- openqarp-0.1.0/tests/test_benchmarks/test_tune.py +44 -0
- openqarp-0.1.0/tests/test_blocks/__init__.py +0 -0
- openqarp-0.1.0/tests/test_blocks/_block_test_helpers.py +53 -0
- openqarp-0.1.0/tests/test_blocks/test_block.py +793 -0
- openqarp-0.1.0/tests/test_blocks/test_block_arithmetic.py +146 -0
- openqarp-0.1.0/tests/test_blocks/test_block_equality.py +75 -0
- openqarp-0.1.0/tests/test_blocks/test_block_refactor.py +381 -0
- openqarp-0.1.0/tests/test_blocks/test_block_residuals.py +282 -0
- openqarp-0.1.0/tests/test_blocks/test_bridge_cleanup.py +90 -0
- openqarp-0.1.0/tests/test_blocks/test_cbit_register_width.py +283 -0
- openqarp-0.1.0/tests/test_blocks/test_composite_add_child.py +55 -0
- openqarp-0.1.0/tests/test_blocks/test_composite_block.py +145 -0
- openqarp-0.1.0/tests/test_blocks/test_custom_rebase.py +165 -0
- openqarp-0.1.0/tests/test_blocks/test_gateset_expansion.py +130 -0
- openqarp-0.1.0/tests/test_blocks/test_initial_state_injection.py +208 -0
- openqarp-0.1.0/tests/test_blocks/test_interop_methods.py +61 -0
- openqarp-0.1.0/tests/test_blocks/test_mcm_execution.py +283 -0
- openqarp-0.1.0/tests/test_blocks/test_pauli_exp_builder.py +269 -0
- openqarp-0.1.0/tests/test_blocks/test_pending_ops_through_containers.py +190 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/__init__.py +0 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_a_gate_block.py +69 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_amplitude_amplification_block.py +320 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_amplitude_estimation_block.py +200 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_block_encoding_block.py +324 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_block_phase_under_control.py +145 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_brickwork_entangling_block.py +131 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_brickwork_pce_block.py +166 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_cost_operator_block.py +76 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_dos_qpe_block.py +158 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_givens_block.py +53 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_grover_block.py +182 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_haar_random_block.py +463 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_hadamard_test_block.py +275 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_hea_block.py +186 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_hn_block.py +31 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_identity_block.py +24 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_layer_block.py +201 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_linear_entangling_block.py +45 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_mixed_operator_block.py +32 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_modular_multiplication_block.py +144 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_orbital_rotation_block.py +227 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_order_finding_block.py +149 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_param_units.py +70 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_pauli_block.py +323 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_phase_shift_block.py +19 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_projected_control_phase_block.py +81 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_projector_blocks.py +675 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_qaoa_block.py +96 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_qft_block.py +51 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_qpe_block.py +178 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_qrom_block.py +109 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_qsp_block.py +21 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_qsvt_block.py +236 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_qubitization_block.py +199 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_readout_block.py +57 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_reflection_block.py +47 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_rsp_block.py +113 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_select_block.py +386 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_spa_block.py +105 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_swap_test_block.py +188 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_synthesized_blocks.py +265 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_synthesized_time_evolution_block.py +317 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_synthesized_unitary_block.py +170 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_trotter_ansatz.py +640 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_trotter_block.py +983 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_ucc_block.py +464 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_upccd_block.py +212 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_vumpo_brickwork_block.py +256 -0
- openqarp-0.1.0/tests/test_blocks/test_primitives/test_xn_block.py +25 -0
- openqarp-0.1.0/tests/test_blocks/test_set_symbols_rebind.py +67 -0
- openqarp-0.1.0/tests/test_blocks/test_state_preparation/__init__.py +0 -0
- openqarp-0.1.0/tests/test_blocks/test_state_preparation/test_computational_basis_state_block.py +40 -0
- openqarp-0.1.0/tests/test_blocks/test_state_preparation/test_csf_state_block.py +301 -0
- openqarp-0.1.0/tests/test_blocks/test_state_preparation/test_cv_qram_state_block.py +71 -0
- openqarp-0.1.0/tests/test_blocks/test_state_preparation/test_cvo_qram_state_block.py +86 -0
- openqarp-0.1.0/tests/test_blocks/test_state_preparation/test_dicke_state_block.py +57 -0
- openqarp-0.1.0/tests/test_blocks/test_state_preparation/test_ghz_like_state_block.py +303 -0
- openqarp-0.1.0/tests/test_blocks/test_state_preparation/test_hypergraph_state_block.py +221 -0
- openqarp-0.1.0/tests/test_blocks/test_state_preparation/test_low_rank_state_block.py +121 -0
- openqarp-0.1.0/tests/test_blocks/test_state_preparation/test_mapped_onv_state_block.py +8 -0
- openqarp-0.1.0/tests/test_blocks/test_state_preparation/test_mps_state_block.py +158 -0
- openqarp-0.1.0/tests/test_blocks/test_state_preparation/test_multi_onv_state_block.py +169 -0
- openqarp-0.1.0/tests/test_blocks/test_state_preparation/test_piecewise_linear_state_block.py +174 -0
- openqarp-0.1.0/tests/test_blocks/test_state_preparation/test_prepares_known_state.py +368 -0
- openqarp-0.1.0/tests/test_blocks/test_state_preparation/test_slater_determinant_block.py +153 -0
- openqarp-0.1.0/tests/test_blocks/test_state_preparation/test_sparse_state_block.py +107 -0
- openqarp-0.1.0/tests/test_blocks/test_state_preparation/test_state_prep_cost.py +211 -0
- openqarp-0.1.0/tests/test_blocks/test_state_preparation/test_uniform_superposition_block.py +95 -0
- openqarp-0.1.0/tests/test_blocks/test_symbols_contract.py +436 -0
- openqarp-0.1.0/tests/test_blocks/test_variadic_builders.py +144 -0
- openqarp-0.1.0/tests/test_conventions_exports.py +235 -0
- openqarp-0.1.0/tests/test_conventions_gates.py +445 -0
- openqarp-0.1.0/tests/test_cutting/__init__.py +0 -0
- openqarp-0.1.0/tests/test_cutting/test_cut_budget.py +54 -0
- openqarp-0.1.0/tests/test_cutting/test_decompositions.py +155 -0
- openqarp-0.1.0/tests/test_cutting/test_ea_partitioning.py +86 -0
- openqarp-0.1.0/tests/test_cutting/test_qpd_decomposition.py +550 -0
- openqarp-0.1.0/tests/test_cutting/test_reconstructer.py +116 -0
- openqarp-0.1.0/tests/test_devices/__init__.py +0 -0
- openqarp-0.1.0/tests/test_devices/test_device.py +674 -0
- openqarp-0.1.0/tests/test_devices/test_noise_model.py +107 -0
- openqarp-0.1.0/tests/test_devices/test_utils.py +19 -0
- openqarp-0.1.0/tests/test_docs/__init__.py +0 -0
- openqarp-0.1.0/tests/test_docs/fixtures/extraction.rst +37 -0
- openqarp-0.1.0/tests/test_docs/fixtures/imports.rst +14 -0
- openqarp-0.1.0/tests/test_docs/fixtures/skip_bare.rst +8 -0
- openqarp-0.1.0/tests/test_docs/fixtures/skip_valid.rst +16 -0
- openqarp-0.1.0/tests/test_docs/fixtures/undefined_name.rst +7 -0
- openqarp-0.1.0/tests/test_docs/test_docs_code_blocks.py +113 -0
- openqarp-0.1.0/tests/test_docs/test_extractor.py +60 -0
- openqarp-0.1.0/tests/test_docs/test_xref_targets.py +48 -0
- openqarp-0.1.0/tests/test_emit/__init__.py +0 -0
- openqarp-0.1.0/tests/test_emit/conftest.py +92 -0
- openqarp-0.1.0/tests/test_emit/test_capability_contract.py +429 -0
- openqarp-0.1.0/tests/test_emit/test_pennylane_emitter.py +335 -0
- openqarp-0.1.0/tests/test_emit/test_pytket_emitter.py +373 -0
- openqarp-0.1.0/tests/test_emit/test_qasm2_external_parse.py +364 -0
- openqarp-0.1.0/tests/test_emit/test_qasm3_external_parse.py +198 -0
- openqarp-0.1.0/tests/test_emit/test_qiskit_emitter.py +468 -0
- openqarp-0.1.0/tests/test_emit/test_qulacs_emitter.py +412 -0
- openqarp-0.1.0/tests/test_endianness.py +101 -0
- openqarp-0.1.0/tests/test_engines/__init__.py +0 -0
- openqarp-0.1.0/tests/test_engines/test_capability_validation.py +267 -0
- openqarp-0.1.0/tests/test_engines/test_cudaq_engine.py +511 -0
- openqarp-0.1.0/tests/test_engines/test_exact_readout.py +407 -0
- openqarp-0.1.0/tests/test_engines/test_expectation_kernel.py +453 -0
- openqarp-0.1.0/tests/test_engines/test_gradient_order.py +165 -0
- openqarp-0.1.0/tests/test_engines/test_gradient_registry.py +391 -0
- openqarp-0.1.0/tests/test_engines/test_gradient_shift_rules.py +432 -0
- openqarp-0.1.0/tests/test_engines/test_initial_state_engine.py +288 -0
- openqarp-0.1.0/tests/test_engines/test_layering.py +38 -0
- openqarp-0.1.0/tests/test_engines/test_qarp_engine.py +89 -0
- openqarp-0.1.0/tests/test_engines/test_seed_decorrelation.py +45 -0
- openqarp-0.1.0/tests/test_engines/test_simulation_fusion.py +318 -0
- openqarp-0.1.0/tests/test_engines/test_threading.py +283 -0
- openqarp-0.1.0/tests/test_factories/__init__.py +0 -0
- openqarp-0.1.0/tests/test_factories/test_pauli_block_factory.py +101 -0
- openqarp-0.1.0/tests/test_functional/__init__.py +0 -0
- openqarp-0.1.0/tests/test_functional/test_excited_states_workflow.py +53 -0
- openqarp-0.1.0/tests/test_functional/test_vqe_workflow.py +66 -0
- openqarp-0.1.0/tests/test_graphs/__init__.py +0 -0
- openqarp-0.1.0/tests/test_graphs/test_graph.py +283 -0
- openqarp-0.1.0/tests/test_graphs/test_hypergraph.py +80 -0
- openqarp-0.1.0/tests/test_graphs/test_simplicial_complex.py +572 -0
- openqarp-0.1.0/tests/test_graphs/test_utils.py +99 -0
- openqarp-0.1.0/tests/test_import_time.py +122 -0
- openqarp-0.1.0/tests/test_integrations/__init__.py +0 -0
- openqarp-0.1.0/tests/test_integrations/test_gradient_jax_recipe.py +93 -0
- openqarp-0.1.0/tests/test_integrations/test_gradient_pennylane_crosscheck.py +70 -0
- openqarp-0.1.0/tests/test_mpi_config.py +50 -0
- openqarp-0.1.0/tests/test_operators/__init__.py +0 -0
- openqarp-0.1.0/tests/test_operators/test_active_space.py +199 -0
- openqarp-0.1.0/tests/test_operators/test_basis_rotation_grouping.py +284 -0
- openqarp-0.1.0/tests/test_operators/test_compat.py +189 -0
- openqarp-0.1.0/tests/test_operators/test_exact_physics.py +264 -0
- openqarp-0.1.0/tests/test_operators/test_exact_physics_molecules.py +193 -0
- openqarp-0.1.0/tests/test_operators/test_fermion_operator.py +197 -0
- openqarp-0.1.0/tests/test_operators/test_functions.py +146 -0
- openqarp-0.1.0/tests/test_operators/test_grouping.py +191 -0
- openqarp-0.1.0/tests/test_operators/test_integrals.py +225 -0
- openqarp-0.1.0/tests/test_operators/test_linear_combination_unitaries.py +243 -0
- openqarp-0.1.0/tests/test_operators/test_mappings.py +538 -0
- openqarp-0.1.0/tests/test_operators/test_mappings_vs_openfermion.py +170 -0
- openqarp-0.1.0/tests/test_operators/test_models.py +290 -0
- openqarp-0.1.0/tests/test_operators/test_molecular_assets.py +52 -0
- openqarp-0.1.0/tests/test_operators/test_onv.py +104 -0
- openqarp-0.1.0/tests/test_operators/test_pyscf_helpers.py +331 -0
- openqarp-0.1.0/tests/test_operators/test_qdrift.py +193 -0
- openqarp-0.1.0/tests/test_operators/test_qubit_operator.py +375 -0
- openqarp-0.1.0/tests/test_operators/test_sparse_matrix.py +213 -0
- openqarp-0.1.0/tests/test_operators/test_symbolic_coefficients.py +172 -0
- openqarp-0.1.0/tests/test_operators/test_tensor_operators.py +256 -0
- openqarp-0.1.0/tests/test_operators/test_ucc.py +261 -0
- openqarp-0.1.0/tests/test_operators/test_vumpo.py +638 -0
- openqarp-0.1.0/tests/test_operators/test_vumpo_network.py +585 -0
- openqarp-0.1.0/tests/test_operators/test_vumpo_paper.py +100 -0
- openqarp-0.1.0/tests/test_operators/test_vumpo_unit.py +223 -0
- openqarp-0.1.0/tests/test_optimizers/__init__.py +0 -0
- openqarp-0.1.0/tests/test_optimizers/test_gradient_descent_optimizer.py +594 -0
- openqarp-0.1.0/tests/test_optimizers/test_rotosolve_optimizer.py +97 -0
- openqarp-0.1.0/tests/test_optimizers/test_scipy_optimizer.py +50 -0
- openqarp-0.1.0/tests/test_pipeline/__init__.py +0 -0
- openqarp-0.1.0/tests/test_pipeline/conftest.py +68 -0
- openqarp-0.1.0/tests/test_pipeline/test_capability_contract.py +123 -0
- openqarp-0.1.0/tests/test_pipeline/test_dense_reference.py +166 -0
- openqarp-0.1.0/tests/test_pipeline/test_emit_absorb_roundtrip.py +66 -0
- openqarp-0.1.0/tests/test_pipeline/test_engine_agreement.py +134 -0
- openqarp-0.1.0/tests/test_pipeline/test_gradient_consistency.py +124 -0
- openqarp-0.1.0/tests/test_pipeline/test_harness.py +33 -0
- openqarp-0.1.0/tests/test_pipeline/test_optimization_preserves_semantics.py +60 -0
- openqarp-0.1.0/tests/test_pipeline/test_optimizer_agreement.py +107 -0
- openqarp-0.1.0/tests/test_pipeline/test_primitive_agreement.py +136 -0
- openqarp-0.1.0/tests/test_pipeline/test_routing_preserves_semantics.py +177 -0
- openqarp-0.1.0/tests/test_pipeline/test_sabre_output_pins.py +96 -0
- openqarp-0.1.0/tests/test_plotting/__init__.py +1 -0
- openqarp-0.1.0/tests/test_plotting/test_circuit_adapter_residuals.py +138 -0
- openqarp-0.1.0/tests/test_plotting/test_circuit_plotter.py +521 -0
- openqarp-0.1.0/tests/test_plotting/test_config.py +67 -0
- openqarp-0.1.0/tests/test_plotting/test_interactive.py +54 -0
- openqarp-0.1.0/tests/test_plotting/test_plot_api.py +152 -0
- openqarp-0.1.0/tests/test_plotting/test_plot_histogram.py +95 -0
- openqarp-0.1.0/tests/test_plotting/test_processors/__init__.py +0 -0
- openqarp-0.1.0/tests/test_plotting/test_processors/test_circuit_processor.py +91 -0
- openqarp-0.1.0/tests/test_plotting/test_processors/test_positioning.py +66 -0
- openqarp-0.1.0/tests/test_plotting/test_renderers/__init__.py +0 -0
- openqarp-0.1.0/tests/test_plotting/test_renderers/test_base_and_global_phase.py +164 -0
- openqarp-0.1.0/tests/test_plotting/test_renderers/test_label_manager.py +295 -0
- openqarp-0.1.0/tests/test_plotting/test_renderers/test_renderers.py +516 -0
- openqarp-0.1.0/tests/test_plotting/test_styles/__init__.py +0 -0
- openqarp-0.1.0/tests/test_plotting/test_styles/test_theme.py +45 -0
- openqarp-0.1.0/tests/test_postselection.py +208 -0
- openqarp-0.1.0/tests/test_resources/__init__.py +0 -0
- openqarp-0.1.0/tests/test_resources/test_counting.py +160 -0
- openqarp-0.1.0/tests/test_resources/test_estimator.py +162 -0
- openqarp-0.1.0/tests/test_resources/test_modelers.py +57 -0
- openqarp-0.1.0/tests/test_resources/test_synthesis.py +193 -0
- openqarp-0.1.0/tests/test_resources/test_vector.py +113 -0
- openqarp-0.1.0/tests/test_transpiler/__init__.py +0 -0
- openqarp-0.1.0/tests/test_transpiler/test_target_rules.py +166 -0
- openqarp-0.1.0/tests/test_utils/__init__.py +0 -0
- openqarp-0.1.0/tests/test_utils/test_random_instances.py +32 -0
- openqarp-0.1.0/tests/test_utils/test_toy_models.py +19 -0
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: plan
|
|
3
|
+
description: Scaffold a OpenQARP contribution plan in the house format under docs/contributions/. Use at the start of any standard- or structural-tier contribution, ideally during the contributor+reviewer sit-down.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /plan — scaffold a contribution plan
|
|
7
|
+
|
|
8
|
+
You are helping draft a plan that a reviewer will green-light in a Draft PR
|
|
9
|
+
before implementation starts. Plan and implementation share one PR, so the
|
|
10
|
+
green-lit plan is the contract the rest of that same PR gets diffed against
|
|
11
|
+
— precision here saves review time later.
|
|
12
|
+
|
|
13
|
+
## Before writing anything
|
|
14
|
+
|
|
15
|
+
1. Read `docs/contributions/README.md` (tiers, loop, oracle rule).
|
|
16
|
+
2. Read `docs/contracts/qarp_conventions.md` — at minimum
|
|
17
|
+
§13 (blocks), §14 (engines/devices), §15 (repo), §17 (symbols), plus any
|
|
18
|
+
section the topic touches. The plan must FIT these conventions; if it
|
|
19
|
+
needs to change one, that is a deliberate edit to the conventions doc,
|
|
20
|
+
named explicitly in the plan's Design section.
|
|
21
|
+
3. Skim the open rows (🚧, 📋) of the index in `docs/contributions/README.md`
|
|
22
|
+
for adjacent work the plan should not collide with.
|
|
23
|
+
|
|
24
|
+
## Then
|
|
25
|
+
|
|
26
|
+
4. Copy `docs/contributions/_template.md` to
|
|
27
|
+
`docs/contributions/<topic>_plan.md` (short snake_case topic).
|
|
28
|
+
5. Fill every section with what was agreed in the discussion — do not
|
|
29
|
+
invent scope. Rules that matter most:
|
|
30
|
+
- **Scope** is an explicit file list. The conformance review checks the
|
|
31
|
+
implementation commits touch nothing outside it without a declared
|
|
32
|
+
deviation.
|
|
33
|
+
- **API sketch** concrete enough to diff an implementation against.
|
|
34
|
+
- **Test plan**: one row per behaviour, and the oracle column is
|
|
35
|
+
mandatory — an independent reference (analytic value, published
|
|
36
|
+
number, openfermion/scipy), never the implementation's own output.
|
|
37
|
+
Naming oracles now, before code exists, is the point.
|
|
38
|
+
- **Phases** individually landable; date items as they complete.
|
|
39
|
+
6. Add the plan's row to the index table in `docs/contributions/README.md`
|
|
40
|
+
(status 📋 Planned).
|
|
41
|
+
7. Remind the author: branch, then open a **Draft** PR whose first commit is
|
|
42
|
+
the plan, using the default PR template (fill the *Plan* section, leave
|
|
43
|
+
the *Implementation* section for later). The reviewer's green-light in
|
|
44
|
+
that Draft PR is the design approval — do not start implementing before
|
|
45
|
+
it, and do not open a second PR.
|
|
46
|
+
|
|
47
|
+
Ask the user for any decision the discussion has not settled rather than
|
|
48
|
+
choosing silently — unresolved decisions belong in the plan as explicit
|
|
49
|
+
open items, not as your guesses.
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: plan-review
|
|
3
|
+
description: Conformance-review a OpenQARP implementation against the green-lit plan in docs/contributions/ (same PR — the plan is its first commit). Reviewer tool — produces a report for the human reviewer, never a merge decision.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /plan-review — diff an implementation against its plan
|
|
7
|
+
|
|
8
|
+
Input: a plan file in `docs/contributions/` and the implementation branch
|
|
9
|
+
(or PR diff). If either is not given, ask. Your output is INPUT to the
|
|
10
|
+
human reviewer — you never approve or block; write findings, not verdicts.
|
|
11
|
+
|
|
12
|
+
## Procedure
|
|
13
|
+
|
|
14
|
+
1. Read the plan fully: Scope, Design, API sketch, Test plan (oracle
|
|
15
|
+
column), Phases, Deviations log.
|
|
16
|
+
2. Get the change set: `git diff <target>...<branch> --stat` and then the
|
|
17
|
+
full diff of the files that matter. Target is `develop` unless told
|
|
18
|
+
otherwise. The plan file is part of this diff by design (it is the
|
|
19
|
+
branch's first commit) — never report it as out-of-scope.
|
|
20
|
+
3. **Check the plan was not rewritten to match the code.** Plan and
|
|
21
|
+
implementation share a branch, so the plan file is editable after the
|
|
22
|
+
green-light — an easy way to make deviations disappear. Diff the plan
|
|
23
|
+
file across its own history on the branch
|
|
24
|
+
(`git log -p <target>..<branch> -- <plan file>`). Post-green-light edits
|
|
25
|
+
to Scope, Design, API sketch or the Test plan's oracle column are a
|
|
26
|
+
finding unless the PR's "Deviations from plan" section declares them.
|
|
27
|
+
Later phase-box dates, folded-back deviations and status flips are
|
|
28
|
+
expected and fine.
|
|
29
|
+
4. Check, in order:
|
|
30
|
+
- **Scope**: every touched file is in the plan's Scope list, or the
|
|
31
|
+
deviation is declared in the PR's "Deviations from plan" section.
|
|
32
|
+
Undeclared out-of-scope changes are the highest-priority finding.
|
|
33
|
+
- **Design & API**: implementation matches the sketch — names,
|
|
34
|
+
signatures, ownership/layering. Note drift even when it is an
|
|
35
|
+
improvement; declared-and-folded-back is the rule, not silence.
|
|
36
|
+
- **Test plan**: each row of the plan's test table exists in the diff,
|
|
37
|
+
and each named oracle actually appears in the assertions. Flag any
|
|
38
|
+
test that asserts the implementation against itself (round-trip
|
|
39
|
+
posing as an oracle) — per conventions, round-trips are additional,
|
|
40
|
+
never the oracle. Ask of each test: would it fail if the feature were
|
|
41
|
+
wrong?
|
|
42
|
+
- **Conventions**: `qarp_conventions.md` §13–§17 compliance for the
|
|
43
|
+
touched areas — LSB endianness, radians, SimpleBlock/CompositeBlock
|
|
44
|
+
inheritance (never `Block` internally), sorted-tuple `.symbols` and
|
|
45
|
+
`parameter_map` usage, SDK imports only in adapters, `zip(strict=)` justified.
|
|
46
|
+
- **Plan hygiene**: deviations folded back into the plan file; phase
|
|
47
|
+
checkboxes dated; status/index row updated if this PR completes the
|
|
48
|
+
plan.
|
|
49
|
+
5. Do not relitigate the design itself — the Draft-PR green-light approved
|
|
50
|
+
it. If the design looks wrong in hindsight, flag it as exactly that: a
|
|
51
|
+
question for the humans, separate from conformance findings.
|
|
52
|
+
|
|
53
|
+
## Report format
|
|
54
|
+
|
|
55
|
+
- **Verdict-free summary** (2–3 sentences: what the PR does, overall
|
|
56
|
+
conformance impression).
|
|
57
|
+
- **Findings**, most severe first, each with file:line, what the plan says,
|
|
58
|
+
what the code does.
|
|
59
|
+
- **Unverifiable items** — anything you could not check (e.g. behaviour
|
|
60
|
+
needing a run) listed explicitly, never silently skipped.
|
|
61
|
+
- **Suggested reviewer focus** — the 2–3 places human judgment matters most.
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Bug
|
|
3
|
+
about: Something is wrong, including a plausible-but-wrong number
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
## What is the bug about?
|
|
7
|
+
|
|
8
|
+
<!-- Observed vs expected behaviour. Plausible-but-wrong numbers count as
|
|
9
|
+
bugs — include the reference value you expected and its source. -->
|
|
10
|
+
|
|
11
|
+
## OpenQARP version / commit
|
|
12
|
+
|
|
13
|
+
<!-- `qarp.__version__` or commit hash; note if qarpx was rebuilt locally. -->
|
|
14
|
+
|
|
15
|
+
## Minimal example to reproduce
|
|
16
|
+
|
|
17
|
+
```python
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## Stacktrace / output
|
|
21
|
+
|
|
22
|
+
```
|
|
23
|
+
```
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Feature
|
|
3
|
+
about: Propose a new block, algorithm, engine or capability
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
## What does it do?
|
|
7
|
+
|
|
8
|
+
<!-- Describe the feature. -->
|
|
9
|
+
|
|
10
|
+
## Why do we need it in OpenQARP?
|
|
11
|
+
|
|
12
|
+
<!-- Use case, physics/algorithmic motivation. -->
|
|
13
|
+
|
|
14
|
+
## References
|
|
15
|
+
|
|
16
|
+
<!-- Research articles, other packages, benchmarks. -->
|
|
17
|
+
|
|
18
|
+
## Expected tier
|
|
19
|
+
|
|
20
|
+
<!-- trivial / standard / structural — see docs/contributions/README.md.
|
|
21
|
+
Standard/structural features start with a plan before implementation. -->
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
<!-- One PR per contribution, two gates inside it: green-light the plan while
|
|
2
|
+
this PR is a Draft, then mark it ready for implementation review.
|
|
3
|
+
The loop: docs/contributions/README.md -->
|
|
4
|
+
|
|
5
|
+
## Summary
|
|
6
|
+
|
|
7
|
+
<!-- What and why, 2–4 sentences. -->
|
|
8
|
+
|
|
9
|
+
## Plan
|
|
10
|
+
|
|
11
|
+
<!-- One of the two lines below; delete the other.
|
|
12
|
+
Tier definitions: docs/contributions/README.md -->
|
|
13
|
+
Plan: docs/contributions/<topic>_plan.md
|
|
14
|
+
Tier: trivial — <!-- one-line justification -->
|
|
15
|
+
|
|
16
|
+
Reviewer: @
|
|
17
|
+
Sit-down held: <!-- yes / no — structural tier requires yes -->
|
|
18
|
+
|
|
19
|
+
### Design summary
|
|
20
|
+
|
|
21
|
+
<!-- 3–5 sentences: the problem, the chosen approach, what it deliberately
|
|
22
|
+
does NOT do. Details live in the plan file — don't duplicate. -->
|
|
23
|
+
|
|
24
|
+
### Gate 1 — green-light checklist (while Draft)
|
|
25
|
+
|
|
26
|
+
<!-- Trivial tier: delete this whole section. -->
|
|
27
|
+
|
|
28
|
+
- [ ] House-format header complete (Status / Author / Reviewer / Date /
|
|
29
|
+
Tier / Scope / Branch)
|
|
30
|
+
- [ ] Scope is an explicit file list
|
|
31
|
+
- [ ] Test plan table has the oracle column filled (independent references
|
|
32
|
+
named BEFORE implementation exists)
|
|
33
|
+
- [ ] Conventions checked (`qarp_conventions.md` §13–§17); any convention
|
|
34
|
+
change named explicitly in the Design section
|
|
35
|
+
- [ ] Index row added in `docs/contributions/README.md` (📋 Planned)
|
|
36
|
+
- [ ] **Green-lit by the reviewer** — implementation starts only after this;
|
|
37
|
+
flip the index row to 🚧 In progress
|
|
38
|
+
|
|
39
|
+
## Deviations from plan
|
|
40
|
+
|
|
41
|
+
<!-- Measured against the plan AS GREEN-LIT, not as later edited.
|
|
42
|
+
Leave EMPTY to claim "implemented exactly as green-lit" (reviewers check
|
|
43
|
+
this claim). Otherwise list each deviation; fold them back into the
|
|
44
|
+
plan file before merge — declared drift is fine, silent drift is not. -->
|
|
45
|
+
|
|
46
|
+
## Gate 2 — implementation checklist (before marking ready)
|
|
47
|
+
|
|
48
|
+
- [ ] Tests added/updated; every numerical assertion has an independent
|
|
49
|
+
oracle (analytic / published / openfermion / scipy — round-trips are
|
|
50
|
+
additional, never the oracle)
|
|
51
|
+
- [ ] Example in `examples/` (standard/structural features)
|
|
52
|
+
- [ ] Plan file updated: deviations folded back, phase boxes dated,
|
|
53
|
+
status + index row in `docs/contributions/README.md` (standard/structural)
|
|
54
|
+
- [ ] `ruff check .`, `ruff format --check .`, mypy, `pytest` green locally
|
|
55
|
+
|
|
56
|
+
<!-- Default expectation is untouched: a convention change is a deliberate act,
|
|
57
|
+
green-lit in the plan — never a side effect of implementation. -->
|
|
58
|
+
- [ ] `qarp_conventions.md` **has not been edited** — or, if it has, the change
|
|
59
|
+
was named in the plan and green-lit
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
name: Build the qarpx wheel
|
|
2
|
+
description: >-
|
|
3
|
+
The pipeline's only qarpx compile. Every Python job installs this wheel
|
|
4
|
+
instead of rebuilding. ccache is keyed per commit with a prefix fallback, so
|
|
5
|
+
a C++-free change restores the newest cache and collapses to packaging.
|
|
6
|
+
runs:
|
|
7
|
+
using: composite
|
|
8
|
+
steps:
|
|
9
|
+
- name: System build deps
|
|
10
|
+
shell: bash
|
|
11
|
+
run: sudo apt-get update && sudo apt-get install -y --no-install-recommends cmake ccache
|
|
12
|
+
- name: Restore ccache
|
|
13
|
+
uses: actions/cache@v5
|
|
14
|
+
with:
|
|
15
|
+
path: .ccache
|
|
16
|
+
key: ccache-wheel-${{ runner.os }}-${{ github.sha }}
|
|
17
|
+
restore-keys: ccache-wheel-${{ runner.os }}-
|
|
18
|
+
- name: Build wheel
|
|
19
|
+
shell: bash
|
|
20
|
+
env:
|
|
21
|
+
CCACHE_DIR: ${{ github.workspace }}/.ccache
|
|
22
|
+
CCACHE_MAXSIZE: 1G
|
|
23
|
+
run: |
|
|
24
|
+
ccache --zero-stats
|
|
25
|
+
python -m pip wheel . --no-deps --wheel-dir dist \
|
|
26
|
+
--config-settings=cmake.define.CMAKE_C_COMPILER_LAUNCHER=ccache \
|
|
27
|
+
--config-settings=cmake.define.CMAKE_CXX_COMPILER_LAUNCHER=ccache
|
|
28
|
+
# 0% on a C++-free change means the cache is not surviving between runs.
|
|
29
|
+
ccache --show-stats
|
|
30
|
+
- name: Upload wheel
|
|
31
|
+
uses: actions/upload-artifact@v6
|
|
32
|
+
with:
|
|
33
|
+
name: wheel
|
|
34
|
+
path: dist/*.whl
|
|
35
|
+
retention-days: 1
|
|
@@ -0,0 +1,294 @@
|
|
|
1
|
+
# The per-change gate. Order mirrors the legacy pipeline: lint first so a ruff
|
|
2
|
+
# failure never costs a 17-minute compile; one wheel build feeds mypy, pytest
|
|
3
|
+
# and docs; ctest builds its own tree (tests ON, which the wheel omits). The
|
|
4
|
+
# Pages deploy sits behind every test job, so docs never publish for a commit
|
|
5
|
+
# whose tests did not pass; it also carries the coverage badge endpoint, so the
|
|
6
|
+
# README badge shows the number this gate measured. Tags run the full battery:
|
|
7
|
+
# a release tag revalidates the exact tagged commit.
|
|
8
|
+
name: ci
|
|
9
|
+
|
|
10
|
+
on:
|
|
11
|
+
push:
|
|
12
|
+
branches: [develop, main, "release/**"]
|
|
13
|
+
tags: ["v*"]
|
|
14
|
+
pull_request:
|
|
15
|
+
workflow_dispatch:
|
|
16
|
+
|
|
17
|
+
concurrency:
|
|
18
|
+
group: ci-${{ github.ref }}
|
|
19
|
+
cancel-in-progress: true
|
|
20
|
+
|
|
21
|
+
permissions:
|
|
22
|
+
contents: read
|
|
23
|
+
|
|
24
|
+
env:
|
|
25
|
+
PYTHON_VERSION: "3.12"
|
|
26
|
+
|
|
27
|
+
jobs:
|
|
28
|
+
lint:
|
|
29
|
+
runs-on: ubuntu-latest
|
|
30
|
+
timeout-minutes: 15
|
|
31
|
+
steps:
|
|
32
|
+
- uses: actions/checkout@v5
|
|
33
|
+
with:
|
|
34
|
+
fetch-depth: 0 # the large-files check diffs against the base commit
|
|
35
|
+
- uses: actions/setup-python@v6
|
|
36
|
+
with:
|
|
37
|
+
python-version: ${{ env.PYTHON_VERSION }}
|
|
38
|
+
- name: ruff (check + format)
|
|
39
|
+
run: |
|
|
40
|
+
# Pin must match pyproject [dev] and .pre-commit-config.yaml.
|
|
41
|
+
python -m pip install ruff==0.15.22
|
|
42
|
+
ruff --version
|
|
43
|
+
ruff check .
|
|
44
|
+
ruff format --check .
|
|
45
|
+
- name: README mirror is byte-identical
|
|
46
|
+
run: |
|
|
47
|
+
diff -u README.rst docs/source/getting_started.rst || {
|
|
48
|
+
echo "docs/source/getting_started.rst has drifted from README.rst — edit README, then copy it over the mirror."
|
|
49
|
+
exit 1
|
|
50
|
+
}
|
|
51
|
+
- name: Narrative-docs static gate
|
|
52
|
+
run: python scripts/ci/check_docs_code.py --static docs/source
|
|
53
|
+
- name: Notebook outputs are stripped
|
|
54
|
+
run: |
|
|
55
|
+
failed=""
|
|
56
|
+
while IFS= read -r nb; do
|
|
57
|
+
python3 -c "import json,sys;d=json.load(open('$nb'));sys.exit(1 if any(c.get('outputs') or c.get('execution_count') for c in d.get('cells',[])) else 0)" || failed="$failed\n $nb"
|
|
58
|
+
done < <(git ls-files '*.ipynb')
|
|
59
|
+
if [ -n "$failed" ]; then
|
|
60
|
+
echo "ERROR: The following notebooks have outputs. Clear them before pushing:"
|
|
61
|
+
echo -e "$failed"
|
|
62
|
+
echo "Run: jupyter nbconvert --clear-output --inplace <notebook>"
|
|
63
|
+
exit 1
|
|
64
|
+
fi
|
|
65
|
+
- name: No large or forbidden files in the change
|
|
66
|
+
env:
|
|
67
|
+
# PR: the merge base GitHub computed. Push: the previous tip, all
|
|
68
|
+
# zeros on a new branch or tag — then there is nothing to diff.
|
|
69
|
+
BASE: ${{ github.event_name == 'pull_request' && github.event.pull_request.base.sha || github.event.before }}
|
|
70
|
+
run: |
|
|
71
|
+
FORBIDDEN_EXTENSIONS="pkl npy npz data csv json log"
|
|
72
|
+
MAX_SIZE_KB=500
|
|
73
|
+
if [ -z "$BASE" ] || echo "$BASE" | grep -qE '^0+$'; then
|
|
74
|
+
echo "No base commit (new branch, tag or manual run) — nothing to diff, skipping."
|
|
75
|
+
exit 0
|
|
76
|
+
fi
|
|
77
|
+
git cat-file -e "${BASE}^{commit}" 2>/dev/null || git fetch --depth=50 origin "$BASE" 2>/dev/null || true
|
|
78
|
+
git cat-file -e "${BASE}^{commit}" 2>/dev/null || { echo "ERROR: base commit $BASE is not present and could not be fetched."; exit 1; }
|
|
79
|
+
failed=""
|
|
80
|
+
for file in $(git diff --name-only --diff-filter=AM "$BASE" HEAD); do
|
|
81
|
+
[ ! -f "$file" ] && continue
|
|
82
|
+
# tests/assets/ holds provenance-scripted test data: the extension
|
|
83
|
+
# ban is waived there, the size cap is not.
|
|
84
|
+
case "$file" in
|
|
85
|
+
tests/assets/*) ;;
|
|
86
|
+
*)
|
|
87
|
+
ext="${file##*.}"
|
|
88
|
+
for forbidden in $FORBIDDEN_EXTENSIONS; do
|
|
89
|
+
[ "$ext" = "$forbidden" ] && { failed="$failed\n $file (forbidden type: .$ext)"; break; }
|
|
90
|
+
done
|
|
91
|
+
;;
|
|
92
|
+
esac
|
|
93
|
+
size_kb=$(du -k "$file" | cut -f1)
|
|
94
|
+
[ "$size_kb" -gt "$MAX_SIZE_KB" ] && failed="$failed\n $file (${size_kb}KB exceeds ${MAX_SIZE_KB}KB limit)"
|
|
95
|
+
done
|
|
96
|
+
if [ -n "$failed" ]; then
|
|
97
|
+
echo "ERROR: The following files violate repository policies:"
|
|
98
|
+
echo -e "$failed"
|
|
99
|
+
echo "Forbidden types: ${FORBIDDEN_EXTENSIONS}; max file size: ${MAX_SIZE_KB}KB"
|
|
100
|
+
exit 1
|
|
101
|
+
fi
|
|
102
|
+
|
|
103
|
+
wheel:
|
|
104
|
+
needs: [lint]
|
|
105
|
+
runs-on: ubuntu-latest
|
|
106
|
+
timeout-minutes: 60
|
|
107
|
+
steps:
|
|
108
|
+
- uses: actions/checkout@v5
|
|
109
|
+
- uses: actions/setup-python@v6
|
|
110
|
+
with:
|
|
111
|
+
python-version: ${{ env.PYTHON_VERSION }}
|
|
112
|
+
- uses: ./.github/actions/build-wheel
|
|
113
|
+
|
|
114
|
+
mypy:
|
|
115
|
+
needs: [wheel]
|
|
116
|
+
runs-on: ubuntu-latest
|
|
117
|
+
timeout-minutes: 30
|
|
118
|
+
steps:
|
|
119
|
+
- uses: actions/checkout@v5
|
|
120
|
+
- uses: actions/setup-python@v6
|
|
121
|
+
with:
|
|
122
|
+
python-version: ${{ env.PYTHON_VERSION }}
|
|
123
|
+
- uses: actions/download-artifact@v7
|
|
124
|
+
with:
|
|
125
|
+
name: wheel
|
|
126
|
+
path: dist
|
|
127
|
+
- run: python -m pip install "$(ls dist/*.whl)[full-dev]"
|
|
128
|
+
- run: |
|
|
129
|
+
mypy --version
|
|
130
|
+
mypy qarp/ tests/ --disable-error-code=import-untyped --disable-error-code=method-assign
|
|
131
|
+
|
|
132
|
+
pytest:
|
|
133
|
+
needs: [wheel]
|
|
134
|
+
runs-on: ubuntu-latest
|
|
135
|
+
timeout-minutes: 60
|
|
136
|
+
steps:
|
|
137
|
+
- uses: actions/checkout@v5
|
|
138
|
+
- uses: actions/setup-python@v6
|
|
139
|
+
with:
|
|
140
|
+
python-version: ${{ env.PYTHON_VERSION }}
|
|
141
|
+
- uses: actions/download-artifact@v7
|
|
142
|
+
with:
|
|
143
|
+
name: wheel
|
|
144
|
+
path: dist
|
|
145
|
+
- run: python -m pip install "$(ls dist/*.whl)[full-dev]"
|
|
146
|
+
# No --cov-fail-under here: this job answers "did the tests pass"; the
|
|
147
|
+
# coverage job reads the artefacts and answers "did coverage regress".
|
|
148
|
+
- run: pytest tests/ --cov --cov-report=term --cov-report=xml:coverage.xml
|
|
149
|
+
- uses: actions/upload-artifact@v6
|
|
150
|
+
if: always()
|
|
151
|
+
with:
|
|
152
|
+
name: coverage
|
|
153
|
+
path: |
|
|
154
|
+
coverage.xml
|
|
155
|
+
.coverage
|
|
156
|
+
include-hidden-files: true # .coverage is the raw data file the ratchet needs
|
|
157
|
+
retention-days: 7
|
|
158
|
+
|
|
159
|
+
coverage:
|
|
160
|
+
needs: [pytest]
|
|
161
|
+
runs-on: ubuntu-latest
|
|
162
|
+
timeout-minutes: 15
|
|
163
|
+
env:
|
|
164
|
+
# RATCHET FLOOR — only ever rises (qarp_conventions.md §15). Lowering it
|
|
165
|
+
# to make a run pass is the violation the gate exists to prevent.
|
|
166
|
+
COVERAGE_FLOOR: "94.0"
|
|
167
|
+
# Patch gate: lines THIS change touched; PR-only, since off a PR there
|
|
168
|
+
# is no base and "the lines this change touched" has no meaning.
|
|
169
|
+
PATCH_COVERAGE_FLOOR: "80"
|
|
170
|
+
steps:
|
|
171
|
+
- uses: actions/checkout@v5
|
|
172
|
+
with:
|
|
173
|
+
fetch-depth: 0 # diff-cover needs the merge base with the target branch
|
|
174
|
+
- uses: actions/setup-python@v6
|
|
175
|
+
with:
|
|
176
|
+
python-version: ${{ env.PYTHON_VERSION }}
|
|
177
|
+
- uses: actions/download-artifact@v7
|
|
178
|
+
with:
|
|
179
|
+
name: coverage
|
|
180
|
+
path: .
|
|
181
|
+
- run: python -m pip install "diff-cover==10.5.0" "coverage==7.15.4"
|
|
182
|
+
- name: Artefacts arrived
|
|
183
|
+
# A missing coverage.xml makes diff-cover report "no lines with coverage
|
|
184
|
+
# information" and exit 0 — indistinguishable from a non-Python change.
|
|
185
|
+
run: |
|
|
186
|
+
test -s coverage.xml || { echo "coverage.xml missing/empty — pytest artefact did not arrive"; exit 1; }
|
|
187
|
+
test -s .coverage || { echo ".coverage missing/empty — cannot enforce the ratchet floor"; exit 1; }
|
|
188
|
+
- name: Ratchet floor
|
|
189
|
+
run: coverage report --fail-under="$COVERAGE_FLOOR"
|
|
190
|
+
- name: Badge endpoint (shields.io JSON, published with the docs)
|
|
191
|
+
# Colour follows the floor, so badge and gate can never disagree.
|
|
192
|
+
run: |
|
|
193
|
+
total=$(coverage report --format=total)
|
|
194
|
+
if python -c "import sys; sys.exit(0 if float('$total') >= float('$COVERAGE_FLOOR') else 1)"; then color=brightgreen; else color=red; fi
|
|
195
|
+
mkdir -p badges
|
|
196
|
+
printf '{"schemaVersion":1,"label":"coverage","message":"%s%%","color":"%s"}\n' "$total" "$color" > badges/coverage.json
|
|
197
|
+
cat badges/coverage.json
|
|
198
|
+
- uses: actions/upload-artifact@v6
|
|
199
|
+
with:
|
|
200
|
+
name: coverage-badge
|
|
201
|
+
path: badges/coverage.json
|
|
202
|
+
retention-days: 7
|
|
203
|
+
- name: Patch gate (PRs only)
|
|
204
|
+
if: github.event_name == 'pull_request'
|
|
205
|
+
run: |
|
|
206
|
+
git fetch origin "${{ github.base_ref }}"
|
|
207
|
+
diff-cover coverage.xml --compare-branch="origin/${{ github.base_ref }}" --fail-under="$PATCH_COVERAGE_FLOOR"
|
|
208
|
+
|
|
209
|
+
docs:
|
|
210
|
+
needs: [wheel]
|
|
211
|
+
runs-on: ubuntu-latest
|
|
212
|
+
timeout-minutes: 30
|
|
213
|
+
steps:
|
|
214
|
+
- uses: actions/checkout@v5
|
|
215
|
+
- uses: actions/setup-python@v6
|
|
216
|
+
with:
|
|
217
|
+
python-version: ${{ env.PYTHON_VERSION }}
|
|
218
|
+
- uses: actions/download-artifact@v7
|
|
219
|
+
with:
|
|
220
|
+
name: wheel
|
|
221
|
+
path: dist
|
|
222
|
+
- run: python -m pip install "$(ls dist/*.whl)[docs]"
|
|
223
|
+
- run: |
|
|
224
|
+
chmod +x build_docs.sh
|
|
225
|
+
./build_docs.sh
|
|
226
|
+
- name: Keep the site for the Pages deploy
|
|
227
|
+
if: github.event_name == 'push' && github.ref == 'refs/heads/develop'
|
|
228
|
+
uses: actions/upload-artifact@v6
|
|
229
|
+
with:
|
|
230
|
+
name: docs-html
|
|
231
|
+
path: docs/_build/html
|
|
232
|
+
retention-days: 1
|
|
233
|
+
|
|
234
|
+
ctest:
|
|
235
|
+
needs: [lint]
|
|
236
|
+
runs-on: ubuntu-latest
|
|
237
|
+
timeout-minutes: 60
|
|
238
|
+
env:
|
|
239
|
+
CCACHE_DIR: ${{ github.workspace }}/.ccache
|
|
240
|
+
CCACHE_MAXSIZE: 1G
|
|
241
|
+
steps:
|
|
242
|
+
- uses: actions/checkout@v5
|
|
243
|
+
- run: sudo apt-get update && sudo apt-get install -y --no-install-recommends cmake ccache
|
|
244
|
+
- uses: actions/cache@v5
|
|
245
|
+
with:
|
|
246
|
+
path: .ccache
|
|
247
|
+
# Own key: tests ON shares few objects with the wheel build.
|
|
248
|
+
key: ccache-ctest-${{ runner.os }}-${{ github.sha }}
|
|
249
|
+
restore-keys: ccache-ctest-${{ runner.os }}-
|
|
250
|
+
- name: Build and run the C++ suite (shipping pure-Eigen CSD)
|
|
251
|
+
run: |
|
|
252
|
+
ccache --zero-stats
|
|
253
|
+
cmake -S cpp/libqarpx -B cpp/libqarpx/build-ci -DQARP_BUILD_TESTS=ON -DCMAKE_BUILD_TYPE=Release \
|
|
254
|
+
-DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache
|
|
255
|
+
cmake --build cpp/libqarpx/build-ci --target qarpx_tests --parallel "$(nproc)"
|
|
256
|
+
ctest --test-dir cpp/libqarpx/build-ci --output-on-failure -j "$(nproc)"
|
|
257
|
+
ccache --show-stats
|
|
258
|
+
|
|
259
|
+
pages:
|
|
260
|
+
# Only develop publishes, and only once every test job is green.
|
|
261
|
+
if: github.event_name == 'push' && github.ref == 'refs/heads/develop'
|
|
262
|
+
needs: [docs, mypy, pytest, coverage, ctest]
|
|
263
|
+
runs-on: ubuntu-latest
|
|
264
|
+
timeout-minutes: 10
|
|
265
|
+
permissions:
|
|
266
|
+
pages: write
|
|
267
|
+
id-token: write
|
|
268
|
+
environment:
|
|
269
|
+
name: github-pages
|
|
270
|
+
url: ${{ steps.deployment.outputs.page_url }}
|
|
271
|
+
concurrency:
|
|
272
|
+
group: pages
|
|
273
|
+
cancel-in-progress: false
|
|
274
|
+
steps:
|
|
275
|
+
- uses: actions/download-artifact@v7
|
|
276
|
+
with:
|
|
277
|
+
name: docs-html
|
|
278
|
+
path: site
|
|
279
|
+
- uses: actions/download-artifact@v7
|
|
280
|
+
with:
|
|
281
|
+
name: coverage-badge
|
|
282
|
+
path: site/badges
|
|
283
|
+
- run: touch site/.nojekyll
|
|
284
|
+
# Inlined upload-pages-artifact: the composite still wraps a Node 20
|
|
285
|
+
# upload-artifact. Same tar flags, same artifact name deploy-pages expects.
|
|
286
|
+
- name: Archive the site
|
|
287
|
+
run: tar --dereference --hard-dereference --directory site -cf "$RUNNER_TEMP/artifact.tar" --exclude=.git --exclude=.github .
|
|
288
|
+
- uses: actions/upload-artifact@v6
|
|
289
|
+
with:
|
|
290
|
+
name: github-pages
|
|
291
|
+
path: ${{ runner.temp }}/artifact.tar
|
|
292
|
+
retention-days: 1
|
|
293
|
+
- id: deployment
|
|
294
|
+
uses: actions/deploy-pages@v5
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
# The tiers the per-change gate deliberately excludes: slow-marked tests, the
|
|
2
|
+
# randomised hypothesis profile, the executed notebooks, the benchmark smoke
|
|
3
|
+
# run and the LAPACK build of the C++ suite. Nightly matches what they catch
|
|
4
|
+
# (upstream bumps, invariant drift), and workflow_dispatch is the on-demand
|
|
5
|
+
# button for a branch that touches one of them. Schedules run on the default
|
|
6
|
+
# branch only.
|
|
7
|
+
name: nightly
|
|
8
|
+
|
|
9
|
+
on:
|
|
10
|
+
schedule:
|
|
11
|
+
- cron: "0 3 * * *"
|
|
12
|
+
workflow_dispatch:
|
|
13
|
+
|
|
14
|
+
permissions:
|
|
15
|
+
contents: read
|
|
16
|
+
|
|
17
|
+
env:
|
|
18
|
+
PYTHON_VERSION: "3.12"
|
|
19
|
+
|
|
20
|
+
jobs:
|
|
21
|
+
wheel:
|
|
22
|
+
runs-on: ubuntu-latest
|
|
23
|
+
timeout-minutes: 60
|
|
24
|
+
steps:
|
|
25
|
+
- uses: actions/checkout@v5
|
|
26
|
+
- uses: actions/setup-python@v6
|
|
27
|
+
with:
|
|
28
|
+
python-version: ${{ env.PYTHON_VERSION }}
|
|
29
|
+
- uses: ./.github/actions/build-wheel
|
|
30
|
+
|
|
31
|
+
pytest-nightly:
|
|
32
|
+
needs: [wheel]
|
|
33
|
+
runs-on: ubuntu-latest
|
|
34
|
+
timeout-minutes: 120
|
|
35
|
+
steps:
|
|
36
|
+
- uses: actions/checkout@v5
|
|
37
|
+
- uses: actions/setup-python@v6
|
|
38
|
+
with:
|
|
39
|
+
python-version: ${{ env.PYTHON_VERSION }}
|
|
40
|
+
- uses: actions/download-artifact@v7
|
|
41
|
+
with:
|
|
42
|
+
name: wheel
|
|
43
|
+
path: dist
|
|
44
|
+
- run: python -m pip install "$(ls dist/*.whl)[full-dev]"
|
|
45
|
+
# CLI -m overrides pytest.ini's `-m "not slow and not bench"`. Exit 5
|
|
46
|
+
# (nothing collected) is a real failure: the marker tier emptied out.
|
|
47
|
+
- run: pytest tests/ -m slow
|
|
48
|
+
- run: HYPOTHESIS_PROFILE=nightly pytest tests/ -m property
|
|
49
|
+
|
|
50
|
+
notebooks:
|
|
51
|
+
needs: [wheel]
|
|
52
|
+
runs-on: ubuntu-latest
|
|
53
|
+
timeout-minutes: 180
|
|
54
|
+
env:
|
|
55
|
+
TQDM_DISABLE: "1" # a progress bar in a kernel is one output line per tick
|
|
56
|
+
OMP_NUM_THREADS: "2" # pools sized from the host's core count oversubscribe a shared runner
|
|
57
|
+
OPENBLAS_NUM_THREADS: "2"
|
|
58
|
+
steps:
|
|
59
|
+
- uses: actions/checkout@v5
|
|
60
|
+
- uses: actions/setup-python@v6
|
|
61
|
+
with:
|
|
62
|
+
python-version: ${{ env.PYTHON_VERSION }}
|
|
63
|
+
- uses: actions/download-artifact@v7
|
|
64
|
+
with:
|
|
65
|
+
name: wheel
|
|
66
|
+
path: dist
|
|
67
|
+
# [full] not [full-dev]: [notebooks] stays out of the install the coverage
|
|
68
|
+
# floor is measured from; [integrations] carries the emit/absorb SDKs.
|
|
69
|
+
- run: python -m pip install "$(ls dist/*.whl)[full,notebooks,integrations]"
|
|
70
|
+
# The only job with the [integrations] SDKs installed, so the emit/absorb
|
|
71
|
+
# adapter suites run un-skipped here and nowhere else.
|
|
72
|
+
- run: pytest tests/test_emit tests/test_absorb -p no:cacheprovider
|
|
73
|
+
- run: pytest --nbmake --nbmake-timeout=1800 examples/ --junitxml=nbmake.xml
|
|
74
|
+
- uses: actions/upload-artifact@v6
|
|
75
|
+
if: always()
|
|
76
|
+
with:
|
|
77
|
+
name: nbmake-junit
|
|
78
|
+
path: nbmake.xml
|
|
79
|
+
retention-days: 7
|
|
80
|
+
|
|
81
|
+
bench-smoke:
|
|
82
|
+
needs: [wheel]
|
|
83
|
+
runs-on: ubuntu-latest
|
|
84
|
+
timeout-minutes: 60
|
|
85
|
+
env:
|
|
86
|
+
OMP_NUM_THREADS: "2"
|
|
87
|
+
OPENBLAS_NUM_THREADS: "2"
|
|
88
|
+
steps:
|
|
89
|
+
- uses: actions/checkout@v5
|
|
90
|
+
- uses: actions/setup-python@v6
|
|
91
|
+
with:
|
|
92
|
+
python-version: ${{ env.PYTHON_VERSION }}
|
|
93
|
+
- uses: actions/download-artifact@v7
|
|
94
|
+
with:
|
|
95
|
+
name: wheel
|
|
96
|
+
path: dist
|
|
97
|
+
- run: python -m pip install "$(ls dist/*.whl)[full,integrations,bench]"
|
|
98
|
+
# Correctness only — timings on a shared runner are noise, never a gate.
|
|
99
|
+
- run: python -m benchmarks.smoke --require-all
|
|
100
|
+
|
|
101
|
+
ctest-lapack:
|
|
102
|
+
runs-on: ubuntu-latest
|
|
103
|
+
timeout-minutes: 60
|
|
104
|
+
env:
|
|
105
|
+
CCACHE_DIR: ${{ github.workspace }}/.ccache
|
|
106
|
+
CCACHE_MAXSIZE: 1G
|
|
107
|
+
steps:
|
|
108
|
+
- uses: actions/checkout@v5
|
|
109
|
+
- run: sudo apt-get update && sudo apt-get install -y --no-install-recommends cmake ccache libopenblas-dev liblapack-dev
|
|
110
|
+
- uses: actions/cache@v5
|
|
111
|
+
with:
|
|
112
|
+
path: .ccache
|
|
113
|
+
# Own key: QARP_USE_LAPACK is a PUBLIC compile definition, no object is shared.
|
|
114
|
+
key: ccache-ctest-lapack-${{ runner.os }}-${{ github.sha }}
|
|
115
|
+
restore-keys: ccache-ctest-lapack-${{ runner.os }}-
|
|
116
|
+
- name: Build and run the C++ suite on the LAPACK zuncsd CSD
|
|
117
|
+
run: |
|
|
118
|
+
ccache --zero-stats
|
|
119
|
+
cmake -S cpp/libqarpx -B cpp/libqarpx/build-ci-lapack -DQARP_BUILD_TESTS=ON -DQARP_USE_LAPACK=ON -DCMAKE_BUILD_TYPE=Release \
|
|
120
|
+
-DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache
|
|
121
|
+
cmake --build cpp/libqarpx/build-ci-lapack --target qarpx_tests --parallel "$(nproc)"
|
|
122
|
+
ctest --test-dir cpp/libqarpx/build-ci-lapack --output-on-failure -j "$(nproc)"
|
|
123
|
+
ccache --show-stats
|