bloqade-circuit 0.5.1__tar.gz → 0.5.2__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.
Potentially problematic release.
This version of bloqade-circuit might be problematic. Click here for more details.
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/PKG-INFO +1 -1
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/pyproject.toml +1 -1
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/cirq/lowering.py +2 -1
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/squin/cirq/test_cirq_to_squin.py +57 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/uv.lock +1 -1
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/.github/dependabot.yml +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/.github/workflows/ci.yml +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/.github/workflows/isort.yml +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/.github/workflows/lint.yml +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/.github/workflows/release.yml +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/.gitignore +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/.pre-commit-config.yaml +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/LICENSE +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/README.md +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/_typos.toml +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/justfile +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/analysis/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/analysis/address/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/analysis/address/analysis.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/analysis/address/impls.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/analysis/address/lattice.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/analysis/fidelity/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/analysis/fidelity/analysis.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/analysis/measure_id/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/analysis/measure_id/analysis.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/analysis/measure_id/impls.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/analysis/measure_id/lattice.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/cirq_utils/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/cirq_utils/lineprog.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/cirq_utils/parallelize.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/device.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/pyqrack/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/pyqrack/base.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/pyqrack/device.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/pyqrack/noise/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/pyqrack/noise/native.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/pyqrack/qasm2/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/pyqrack/qasm2/core.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/pyqrack/qasm2/glob.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/pyqrack/qasm2/parallel.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/pyqrack/qasm2/uop.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/pyqrack/reg.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/pyqrack/squin/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/pyqrack/squin/noise/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/pyqrack/squin/noise/native.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/pyqrack/squin/op.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/pyqrack/squin/qubit.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/pyqrack/squin/runtime.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/pyqrack/squin/wire.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/pyqrack/target.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/pyqrack/task.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/_qasm_loading.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/_wrappers.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/core/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/core/_dialect.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/core/_emit.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/core/_typeinfer.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/core/address.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/core/stmts.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/expr/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/expr/_dialect.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/expr/_emit.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/expr/_from_python.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/expr/_interp.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/expr/stmts.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/glob.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/indexing.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/inline.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/noise/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/noise/_dialect.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/noise/fidelity.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/noise/model.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/noise/stmts.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/parallel.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/uop/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/uop/_dialect.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/uop/_emit.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/uop/schedule.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/uop/stmts.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/emit/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/emit/base.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/emit/gate.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/emit/impls/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/emit/impls/noise.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/emit/main.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/emit/target.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/glob.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/groups.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/noise.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/parallel.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/parse/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/parse/ast.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/parse/build.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/parse/lowering.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/parse/parser.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/parse/print.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/parse/qasm2.lark +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/parse/visitor.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/parse/visitor.pyi +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/passes/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/passes/fold.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/passes/glob.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/passes/lift_qubits.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/passes/noise.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/passes/parallel.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/passes/py2qasm.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/passes/qasm2py.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/passes/unroll_if.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/rewrite/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/rewrite/desugar.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/rewrite/glob.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/rewrite/insert_qubits.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/rewrite/native_gates.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/rewrite/noise/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/rewrite/noise/heuristic_noise.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/rewrite/noise/remove_noise.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/rewrite/parallel_to_glob.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/rewrite/parallel_to_uop.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/rewrite/register.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/rewrite/uop_to_parallel.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/types.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qbraid/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qbraid/lowering.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qbraid/schema.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qbraid/simulation_result.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qbraid/target.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/rewrite/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/rewrite/passes/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/rewrite/passes/canonicalize_ilist.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/rewrite/rules/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/rewrite/rules/flatten_ilist.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/rewrite/rules/inline_getitem_ilist.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/rewrite/rules/split_ifs.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/_typeinfer.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/analysis/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/analysis/address_impl.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/analysis/nsites/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/analysis/nsites/analysis.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/analysis/nsites/impls.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/analysis/nsites/lattice.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/analysis/schedule.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/cirq/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/cirq/emit/emit_circuit.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/cirq/emit/noise.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/cirq/emit/op.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/cirq/emit/qubit.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/cirq/emit/runtime.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/groups.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/lowering.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/noise/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/noise/_dialect.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/noise/_wrapper.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/noise/rewrite.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/noise/stmts.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/op/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/op/_dialect.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/op/_wrapper.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/op/number.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/op/rewrite.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/op/stdlib.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/op/stmts.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/op/traits.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/op/types.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/qubit.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/rewrite/U3_to_clifford.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/rewrite/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/rewrite/canonicalize.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/rewrite/desugar.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/rewrite/remove_dangling_qubits.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/rewrite/wrap_analysis.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/types.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/wire.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/_wrappers.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/auxiliary/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/auxiliary/_dialect.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/auxiliary/emit.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/auxiliary/interp.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/auxiliary/lowering.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/auxiliary/stmts/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/auxiliary/stmts/annotate.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/auxiliary/stmts/const.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/auxiliary/types.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/collapse/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/collapse/_dialect.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/collapse/emit_str.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/collapse/stmts/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/collapse/stmts/measure.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/collapse/stmts/pp_measure.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/collapse/stmts/reset.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/gate/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/gate/_dialect.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/gate/emit.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/gate/stmts/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/gate/stmts/base.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/gate/stmts/clifford_1q.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/gate/stmts/clifford_2q.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/gate/stmts/control_2q.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/gate/stmts/pp.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/noise/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/noise/_dialect.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/noise/emit.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/noise/stmts.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/emit/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/emit/stim_str.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/groups.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/parse/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/parse/lowering.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/passes/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/passes/simplify_ifs.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/passes/squin_to_stim.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/rewrite/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/rewrite/ifs_to_stim.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/rewrite/py_constant_to_stim.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/rewrite/qubit_to_stim.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/rewrite/squin_measure.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/rewrite/squin_noise.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/rewrite/util.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/rewrite/wire_identity_elimination.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/rewrite/wire_to_stim.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/upstream/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/upstream/from_squin.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/task.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/test_utils.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/types.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/visual/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/visual/animation/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/visual/animation/animate.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/visual/animation/base.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/visual/animation/gate_event.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/visual/animation/runtime/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/visual/animation/runtime/aod.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/visual/animation/runtime/atoms.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/visual/animation/runtime/ppoly.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/visual/animation/runtime/qpustate.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/visual/animation/runtime/utils.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/analysis/address/test_analysis.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/analysis/address/test_qubit_analysis.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/analysis/address/test_wire_analysis.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/analysis/address/util.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/analysis/fidelity/test_fidelity.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/analysis/measure_id/test_measure_id.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/cirq_utils/test_lpsolvers.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/cirq_utils/test_parallelize.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/pyqrack/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/pyqrack/runtime/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/pyqrack/runtime/noise/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/pyqrack/runtime/noise/qasm2/test_loss.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/pyqrack/runtime/noise/qasm2/test_pauli.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/pyqrack/runtime/test_dyn_memory.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/pyqrack/runtime/test_qrack.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/pyqrack/squin/test_kernel.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/pyqrack/squin/test_noise.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/pyqrack/test_target.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/analysis/test_dag.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/emit/test_extended.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/emit/test_extended_noise.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/emit/test_qasm2.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/emit/test_qasm2_emit.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/parse/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/parse/invalid_programs/invalid_if.qasm +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/parse/programs/README.md +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/parse/programs/global.qasm +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/parse/programs/iqft1.qasm +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/parse/programs/main.qasm +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/parse/programs/noise.qasm +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/parse/programs/para.qasm +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/parse/programs/process_tomo.qasm +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/parse/programs/qelib1.inc +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/parse/programs/qft.qasm +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/parse/programs/qft2.qasm +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/parse/programs/rb.qasm +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/parse/programs/rep_code.qasm +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/parse/programs/ripple_carry_adder.qasm +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/parse/programs/tele.qasm +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/parse/programs/valid_if.qasm +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/parse/test_ast.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/parse/test_roundtrip.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/passes/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/passes/test_global_to_parallel.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/passes/test_global_to_uop.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/passes/test_heuristic_noise.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/passes/test_parallel_to_global.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/passes/test_parallel_to_uop.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/passes/test_qasm2py.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/passes/test_unroll_if.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/passes/test_uop_to_parallel.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/test_count.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/test_inline.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/test_lowering.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/test_native.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qasm2/test_two2one.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qbraid/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qbraid/test_clean_circuit.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qbraid/test_lowering.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/qbraid/test_target.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/sample/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/sample/test_noise_model.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/squin/analysis/test_nsites_analysis.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/squin/cirq/test_squin_noise_to_cirq.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/squin/cirq/test_squin_to_cirq.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/squin/op/test_reset.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/squin/rewrite/test_U3_to_clifford.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/squin/rewrite/test_canonicalize.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/squin/rewrite/test_desugar.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/squin/rewrite/test_mult_rewrite.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/squin/test_constprop.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/squin/test_sugar.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/squin/test_typeinfer.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/squin/wire/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/squin/wire/test_check.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/dialects/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/dialects/stim/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/dialects/stim/emit/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/dialects/stim/emit/base.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/dialects/stim/emit/test_stim_1q.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/dialects/stim/emit/test_stim_ctrl.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/dialects/stim/emit/test_stim_detector.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/dialects/stim/emit/test_stim_meas.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/dialects/stim/emit/test_stim_noise.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/dialects/stim/emit/test_stim_obs_inc.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/dialects/stim/emit/test_stim_ppmeas.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/dialects/stim/emit/test_stim_qubit_coords.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/dialects/stim/emit/test_stim_spp.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/dialects/stim/test_stim_circuits.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/dialects/stim/test_stim_const.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/parse/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/parse/base.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/parse/test_parse.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/parse/test_parse_clifford.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/parse/test_parse_control.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/parse/test_parse_custom.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/parse/test_parse_noise.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/parse/test_parse_spp.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/passes/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/passes/stim_reference_programs/pure_squin_rewrite.txt +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/passes/stim_reference_programs/qubit/qubit.stim +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/passes/stim_reference_programs/qubit/qubit_broadcast.stim +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/passes/stim_reference_programs/qubit/qubit_loss.stim +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/passes/stim_reference_programs/qubit/qubit_reset.stim +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/passes/stim_reference_programs/qubit/u3_to_clifford.stim +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/passes/stim_reference_programs/simple_if_rewrite.txt +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/passes/stim_reference_programs/wire/wire.stim +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/passes/stim_reference_programs/wire/wire_apply.stim +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/passes/stim_reference_programs/wire/wire_apply_control.stim +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/passes/stim_reference_programs/wire/wire_broadcast.stim +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/passes/stim_reference_programs/wire/wire_broadcast_control.stim +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/passes/stim_reference_programs/wire/wire_measure.stim +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/passes/stim_reference_programs/wire/wire_multiple_apply.stim +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/passes/stim_reference_programs/wire/wire_qubit_loss.stim +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/passes/stim_reference_programs/wire/wire_reset.stim +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/passes/test_squin_meas_to_stim.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/passes/test_squin_noise_to_stim.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/passes/test_squin_qubit_to_stim.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/passes/test_squin_to_stim_cases.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/passes/test_squin_wire_to_stim.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/test_measure_id_analysis.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/wrapper/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/stim/wrapper/test_wrapper.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/test_serialization.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/test_zone_model.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/visual/__init__.py +0 -0
- {bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/test/visual/test_utils.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: bloqade-circuit
|
|
3
|
-
Version: 0.5.
|
|
3
|
+
Version: 0.5.2
|
|
4
4
|
Summary: The software development toolkit for neutral atom arrays.
|
|
5
5
|
Author-email: Roger-luo <rluo@quera.com>, kaihsin <khwu@quera.com>, weinbe58 <pweinberg@quera.com>, johnzl-777 <jlong@quera.com>
|
|
6
6
|
License-File: LICENSE
|
|
@@ -281,7 +281,8 @@ class Squin(lowering.LoweringABC[CirqNode]):
|
|
|
281
281
|
return state.current_frame.push(op.stmts.Z())
|
|
282
282
|
|
|
283
283
|
# NOTE: just for the Z gate, an arbitrary exponent is equivalent to the ShiftOp
|
|
284
|
-
|
|
284
|
+
# up to a minus sign!
|
|
285
|
+
t = -node.exponent
|
|
285
286
|
theta = state.current_frame.push(py.Constant(math.pi * t))
|
|
286
287
|
return state.current_frame.push(op.stmts.ShiftOp(theta=theta.result))
|
|
287
288
|
|
|
@@ -291,3 +291,60 @@ def test_multiple_classical_controls(run_sim: bool = False):
|
|
|
291
291
|
|
|
292
292
|
kernel = squin.cirq.load_circuit(circuit)
|
|
293
293
|
kernel.print()
|
|
294
|
+
|
|
295
|
+
|
|
296
|
+
def test_ghz_simulation():
|
|
297
|
+
q = cirq.LineQubit.range(2)
|
|
298
|
+
|
|
299
|
+
# NOTE: uses native gateset
|
|
300
|
+
circuit = cirq.Circuit(
|
|
301
|
+
cirq.PhasedXZGate(x_exponent=0.5, z_exponent=0.0, axis_phase_exponent=0.5).on(
|
|
302
|
+
q[0]
|
|
303
|
+
),
|
|
304
|
+
cirq.PhasedXZGate(x_exponent=0.5, z_exponent=0.0, axis_phase_exponent=0.5).on(
|
|
305
|
+
q[1]
|
|
306
|
+
),
|
|
307
|
+
cirq.CZ(*q),
|
|
308
|
+
cirq.PhasedXZGate(x_exponent=1.0, z_exponent=0.0, axis_phase_exponent=0.5).on(
|
|
309
|
+
q[0]
|
|
310
|
+
),
|
|
311
|
+
cirq.PhasedXZGate(x_exponent=0.5, z_exponent=1.0, axis_phase_exponent=0.5).on(
|
|
312
|
+
q[1]
|
|
313
|
+
),
|
|
314
|
+
)
|
|
315
|
+
|
|
316
|
+
print(circuit)
|
|
317
|
+
|
|
318
|
+
# manually written kernel
|
|
319
|
+
@squin.kernel
|
|
320
|
+
def manual():
|
|
321
|
+
q = squin.qubit.new(2)
|
|
322
|
+
s = squin.op.s()
|
|
323
|
+
s_adj = squin.op.adjoint(s)
|
|
324
|
+
squin.qubit.broadcast(s_adj, q)
|
|
325
|
+
x = squin.op.x()
|
|
326
|
+
xrot = squin.op.rot(x, math.pi / 2)
|
|
327
|
+
squin.qubit.broadcast(xrot, q)
|
|
328
|
+
squin.qubit.broadcast(s, q)
|
|
329
|
+
cz = squin.op.cz()
|
|
330
|
+
squin.qubit.apply(cz, q)
|
|
331
|
+
squin.qubit.broadcast(s_adj, q)
|
|
332
|
+
squin.qubit.apply(x, q[0])
|
|
333
|
+
squin.qubit.apply(xrot, q[1])
|
|
334
|
+
squin.qubit.broadcast(s, q)
|
|
335
|
+
z = squin.op.z()
|
|
336
|
+
squin.qubit.apply(z, q[1])
|
|
337
|
+
|
|
338
|
+
# lower from circuit
|
|
339
|
+
kernel = squin.cirq.load_circuit(circuit)
|
|
340
|
+
cirq_sim = cirq.Simulator().simulate(circuit)
|
|
341
|
+
|
|
342
|
+
sim = DynamicMemorySimulator()
|
|
343
|
+
ket_manual = sim.state_vector(manual)
|
|
344
|
+
|
|
345
|
+
ket_kernel = sim.state_vector(kernel)
|
|
346
|
+
|
|
347
|
+
for ket in (ket_manual, ket_kernel, cirq_sim.final_state_vector):
|
|
348
|
+
assert ket[1] == ket[2] == 0
|
|
349
|
+
assert math.isclose(abs(ket[0]) ** 2, 0.5, abs_tol=1e-5)
|
|
350
|
+
assert math.isclose(abs(ket[3]) ** 2, 0.5, abs_tol=1e-5)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/core/_typeinfer.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/expr/_from_python.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/noise/__init__.py
RENAMED
|
File without changes
|
{bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/noise/_dialect.py
RENAMED
|
File without changes
|
{bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/dialects/noise/fidelity.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/rewrite/noise/heuristic_noise.py
RENAMED
|
File without changes
|
{bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/rewrite/noise/remove_noise.py
RENAMED
|
File without changes
|
{bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/rewrite/parallel_to_glob.py
RENAMED
|
File without changes
|
{bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/rewrite/parallel_to_uop.py
RENAMED
|
File without changes
|
|
File without changes
|
{bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/qasm2/rewrite/uop_to_parallel.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/rewrite/passes/canonicalize_ilist.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/rewrite/rules/inline_getitem_ilist.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/analysis/nsites/__init__.py
RENAMED
|
File without changes
|
{bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/analysis/nsites/analysis.py
RENAMED
|
File without changes
|
|
File without changes
|
{bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/analysis/nsites/lattice.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/squin/rewrite/remove_dangling_qubits.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/auxiliary/__init__.py
RENAMED
|
File without changes
|
{bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/auxiliary/_dialect.py
RENAMED
|
File without changes
|
|
File without changes
|
{bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/auxiliary/interp.py
RENAMED
|
File without changes
|
{bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/auxiliary/lowering.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/auxiliary/stmts/const.py
RENAMED
|
File without changes
|
{bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/auxiliary/types.py
RENAMED
|
File without changes
|
{bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/collapse/__init__.py
RENAMED
|
File without changes
|
{bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/collapse/_dialect.py
RENAMED
|
File without changes
|
{bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/collapse/emit_str.py
RENAMED
|
File without changes
|
{bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/collapse/stmts/__init__.py
RENAMED
|
File without changes
|
{bloqade_circuit-0.5.1 → bloqade_circuit-0.5.2}/src/bloqade/stim/dialects/collapse/stmts/measure.py
RENAMED
|
File without changes
|
|
File without changes
|