From d48da55af6e456d0f938c3eb70bf68252e8f83b2 Mon Sep 17 00:00:00 2001 From: Phillip Weinberg Date: Mon, 7 Apr 2025 11:13:38 -0400 Subject: [PATCH 1/2] updating version of isort in pre-commit file --- .pre-commit-config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 6a113c6b..2f131037 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -9,7 +9,7 @@ repos: - id: end-of-file-fixer - id: trailing-whitespace - repo: https://github.com/pycqa/isort - rev: 5.13.2 + rev: 6.0.1 hooks: - id: isort name: isort (python) From f58a4b5a904dfb8df8b95e03e3f039806b335ea9 Mon Sep 17 00:00:00 2001 From: Phillip Weinberg Date: Mon, 7 Apr 2025 11:18:25 -0400 Subject: [PATCH 2/2] running linter --- docs/digital/examples/ghz.py | 3 ++- docs/digital/examples/ghz_linear_circuit.svg | 2 +- docs/digital/examples/ghz_log_circuit.svg | 2 +- docs/digital/examples/pauli_exponentiation.svg | 2 +- docs/digital/examples/qaoa.py | 3 ++- docs/digital/examples/qft.svg | 2 +- src/bloqade/analysis/address/analysis.py | 3 ++- src/bloqade/analysis/schedule.py | 1 + src/bloqade/noise/native/_wrappers.py | 3 ++- src/bloqade/noise/native/stmts.py | 1 + src/bloqade/qasm2/dialects/core/address.py | 1 + src/bloqade/qasm2/dialects/core/emit.py | 1 + src/bloqade/qasm2/dialects/core/stmts.py | 1 + src/bloqade/qasm2/dialects/core/typeinfer.py | 1 + src/bloqade/qasm2/dialects/expr/emit.py | 3 ++- src/bloqade/qasm2/dialects/glob.py | 1 + src/bloqade/qasm2/dialects/indexing.py | 1 + src/bloqade/qasm2/dialects/noise.py | 1 + src/bloqade/qasm2/dialects/parallel.py | 1 + src/bloqade/qasm2/dialects/uop/emit.py | 1 + src/bloqade/qasm2/dialects/uop/schedule.py | 1 + src/bloqade/qasm2/dialects/uop/stmts.py | 1 + src/bloqade/qasm2/emit/base.py | 1 + src/bloqade/qasm2/emit/gate.py | 3 ++- src/bloqade/qasm2/emit/main.py | 1 + src/bloqade/qasm2/emit/target.py | 1 + src/bloqade/qasm2/groups.py | 1 + src/bloqade/qasm2/parse/lowering.py | 1 + src/bloqade/qasm2/passes/fold.py | 1 + src/bloqade/qasm2/passes/glob.py | 5 +++-- src/bloqade/qasm2/passes/noise.py | 5 +++-- src/bloqade/qasm2/passes/parallel.py | 1 + src/bloqade/qasm2/passes/py2qasm.py | 1 + src/bloqade/qasm2/passes/qasm2py.py | 1 + src/bloqade/qasm2/rewrite/desugar.py | 1 + src/bloqade/qasm2/rewrite/glob.py | 3 ++- src/bloqade/qasm2/rewrite/heuristic_noise.py | 3 ++- src/bloqade/qasm2/rewrite/native_gates.py | 3 ++- src/bloqade/qasm2/rewrite/parallel_to_uop.py | 1 + src/bloqade/qasm2/rewrite/register.py | 1 + src/bloqade/qasm2/rewrite/uop_to_parallel.py | 3 ++- src/bloqade/qasm2/types.py | 1 + src/bloqade/qbraid/lowering.py | 3 ++- src/bloqade/qbraid/simulation_result.py | 1 + src/bloqade/squin/groups.py | 1 + src/bloqade/squin/qubit.py | 3 ++- src/bloqade/squin/wire.py | 1 + src/bloqade/stim/dialects/aux/emit.py | 1 + src/bloqade/stim/dialects/collapse/emit.py | 1 + src/bloqade/stim/dialects/gate/emit.py | 1 + src/bloqade/stim/dialects/gate/stmts/base.py | 1 + src/bloqade/stim/dialects/noise/emit.py | 1 + test/qasm2/passes/test_global_to_parallel.py | 3 ++- test/qasm2/passes/test_global_to_uop.py | 3 ++- test/qasm2/passes/test_heuristic_noise.py | 5 +++-- test/qasm2/passes/test_parallel_to_uop.py | 3 ++- test/qasm2/test_count.py | 3 ++- test/qasm2/test_inline.py | 3 ++- test/qasm2/test_native.py | 3 ++- test/qbraid/test_lowering.py | 5 +++-- test/qbraid/test_target.py | 3 ++- test/stim/dialects/stim/emit/base.py | 1 + test/test_serialization.py | 1 + test/visual/test_utils.py | 1 + 64 files changed, 91 insertions(+), 31 deletions(-) diff --git a/docs/digital/examples/ghz.py b/docs/digital/examples/ghz.py index 72e739d4..5279fd2a 100644 --- a/docs/digital/examples/ghz.py +++ b/docs/digital/examples/ghz.py @@ -11,9 +11,10 @@ # %% import math -from bloqade import qasm2 from kirin.dialects import ilist +from bloqade import qasm2 + # %% [markdown] # ## Simple Linear Depth Implementation of a GHZ State Preparation Circuit # diff --git a/docs/digital/examples/ghz_linear_circuit.svg b/docs/digital/examples/ghz_linear_circuit.svg index 23534a6b..51e5a0d4 100644 --- a/docs/digital/examples/ghz_linear_circuit.svg +++ b/docs/digital/examples/ghz_linear_circuit.svg @@ -83,4 +83,4 @@ - \ No newline at end of file + diff --git a/docs/digital/examples/ghz_log_circuit.svg b/docs/digital/examples/ghz_log_circuit.svg index 0a02c60c..c08fa14a 100644 --- a/docs/digital/examples/ghz_log_circuit.svg +++ b/docs/digital/examples/ghz_log_circuit.svg @@ -88,4 +88,4 @@ - \ No newline at end of file + diff --git a/docs/digital/examples/pauli_exponentiation.svg b/docs/digital/examples/pauli_exponentiation.svg index bd6cbcdc..833d71ba 100644 --- a/docs/digital/examples/pauli_exponentiation.svg +++ b/docs/digital/examples/pauli_exponentiation.svg @@ -144,4 +144,4 @@ - \ No newline at end of file + diff --git a/docs/digital/examples/qaoa.py b/docs/digital/examples/qaoa.py index 574d74f3..9391b672 100644 --- a/docs/digital/examples/qaoa.py +++ b/docs/digital/examples/qaoa.py @@ -9,9 +9,10 @@ import kirin import networkx as nx -from bloqade import qasm2 from kirin.dialects import py, ilist +from bloqade import qasm2 + pi = math.pi # %% [markdown] diff --git a/docs/digital/examples/qft.svg b/docs/digital/examples/qft.svg index 7e8f26b9..50bd563b 100644 --- a/docs/digital/examples/qft.svg +++ b/docs/digital/examples/qft.svg @@ -87,4 +87,4 @@ - \ No newline at end of file + diff --git a/src/bloqade/analysis/address/analysis.py b/src/bloqade/analysis/address/analysis.py index ea08b3f5..9ce84f83 100644 --- a/src/bloqade/analysis/address/analysis.py +++ b/src/bloqade/analysis/address/analysis.py @@ -2,10 +2,11 @@ from dataclasses import field from kirin import ir, interp -from bloqade.types import QubitType from kirin.analysis import Forward, const from kirin.analysis.forward import ForwardFrame +from bloqade.types import QubitType + from .lattice import Address diff --git a/src/bloqade/analysis/schedule.py b/src/bloqade/analysis/schedule.py index d6e7c7b1..e6ea71b8 100644 --- a/src/bloqade/analysis/schedule.py +++ b/src/bloqade/analysis/schedule.py @@ -13,6 +13,7 @@ ) from kirin.analysis import Forward, ForwardFrame from kirin.dialects import func + from bloqade.analysis import address from bloqade.qasm2.parse.print import Printer diff --git a/src/bloqade/noise/native/_wrappers.py b/src/bloqade/noise/native/_wrappers.py index f6f4aea9..9f43306e 100644 --- a/src/bloqade/noise/native/_wrappers.py +++ b/src/bloqade/noise/native/_wrappers.py @@ -1,8 +1,9 @@ from typing import Any -from bloqade.noise import native from kirin.dialects import ilist from kirin.lowering import wraps + +from bloqade.noise import native from bloqade.qasm2.types import Qubit diff --git a/src/bloqade/noise/native/stmts.py b/src/bloqade/noise/native/stmts.py index ca4e2f40..1e78e01a 100644 --- a/src/bloqade/noise/native/stmts.py +++ b/src/bloqade/noise/native/stmts.py @@ -1,6 +1,7 @@ from kirin import ir, types from kirin.decl import info, statement from kirin.dialects import ilist + from bloqade.qasm2.types import QubitType from ._dialect import dialect diff --git a/src/bloqade/qasm2/dialects/core/address.py b/src/bloqade/qasm2/dialects/core/address.py index bbe7703c..f7505b52 100644 --- a/src/bloqade/qasm2/dialects/core/address.py +++ b/src/bloqade/qasm2/dialects/core/address.py @@ -1,4 +1,5 @@ from kirin import interp + from bloqade.analysis.address import ( Address, NotQubit, diff --git a/src/bloqade/qasm2/dialects/core/emit.py b/src/bloqade/qasm2/dialects/core/emit.py index a92bfcf8..783a44fb 100644 --- a/src/bloqade/qasm2/dialects/core/emit.py +++ b/src/bloqade/qasm2/dialects/core/emit.py @@ -1,4 +1,5 @@ from kirin import interp + from bloqade.qasm2.parse import ast from bloqade.qasm2.emit.main import EmitQASM2Main, EmitQASM2Frame diff --git a/src/bloqade/qasm2/dialects/core/stmts.py b/src/bloqade/qasm2/dialects/core/stmts.py index f48096da..661f97cf 100644 --- a/src/bloqade/qasm2/dialects/core/stmts.py +++ b/src/bloqade/qasm2/dialects/core/stmts.py @@ -1,5 +1,6 @@ from kirin import ir, types from kirin.decl import info, statement + from bloqade.qasm2.types import BitType, CRegType, QRegType, QubitType from ._dialect import dialect diff --git a/src/bloqade/qasm2/dialects/core/typeinfer.py b/src/bloqade/qasm2/dialects/core/typeinfer.py index 1c03890f..ce1315e7 100644 --- a/src/bloqade/qasm2/dialects/core/typeinfer.py +++ b/src/bloqade/qasm2/dialects/core/typeinfer.py @@ -1,6 +1,7 @@ from kirin import types, interp from kirin.analysis import TypeInference from kirin.dialects import py + from bloqade.qasm2.types import CRegType, QRegType, QubitType from ._dialect import dialect diff --git a/src/bloqade/qasm2/dialects/expr/emit.py b/src/bloqade/qasm2/dialects/expr/emit.py index 28e7354b..2d3c84ea 100644 --- a/src/bloqade/qasm2/dialects/expr/emit.py +++ b/src/bloqade/qasm2/dialects/expr/emit.py @@ -1,9 +1,10 @@ from typing import Literal from kirin import interp +from kirin.emit.exceptions import EmitError + from bloqade.qasm2.parse import ast from bloqade.qasm2.types import QubitType -from kirin.emit.exceptions import EmitError from bloqade.qasm2.emit.gate import EmitQASM2Gate, EmitQASM2Frame from . import stmts diff --git a/src/bloqade/qasm2/dialects/glob.py b/src/bloqade/qasm2/dialects/glob.py index f88232b5..f7d6c758 100644 --- a/src/bloqade/qasm2/dialects/glob.py +++ b/src/bloqade/qasm2/dialects/glob.py @@ -1,6 +1,7 @@ from kirin import ir, types, interp from kirin.decl import info, statement from kirin.dialects import ilist + from bloqade.qasm2.parse import ast from bloqade.qasm2.types import QRegType from bloqade.qasm2.emit.gate import EmitQASM2Gate, EmitQASM2Frame diff --git a/src/bloqade/qasm2/dialects/indexing.py b/src/bloqade/qasm2/dialects/indexing.py index cc6aa661..9bc913f1 100644 --- a/src/bloqade/qasm2/dialects/indexing.py +++ b/src/bloqade/qasm2/dialects/indexing.py @@ -10,6 +10,7 @@ from kirin import ir, types from kirin.lowering import Result, FromPythonAST, LoweringState from kirin.exceptions import DialectLoweringError + from bloqade.qasm2.types import BitType, CRegType, QRegType, QubitType from bloqade.qasm2.dialects import core diff --git a/src/bloqade/qasm2/dialects/noise.py b/src/bloqade/qasm2/dialects/noise.py index 986bf687..962b2e03 100644 --- a/src/bloqade/qasm2/dialects/noise.py +++ b/src/bloqade/qasm2/dialects/noise.py @@ -1,5 +1,6 @@ from kirin import ir, types from kirin.decl import info, statement + from bloqade.qasm2.types import QubitType dialect = ir.Dialect("qasm2.noise") diff --git a/src/bloqade/qasm2/dialects/parallel.py b/src/bloqade/qasm2/dialects/parallel.py index 0fc6a2a3..4f64aa84 100644 --- a/src/bloqade/qasm2/dialects/parallel.py +++ b/src/bloqade/qasm2/dialects/parallel.py @@ -4,6 +4,7 @@ from kirin.decl import info, statement from kirin.analysis import ForwardFrame from kirin.dialects import ilist + from bloqade.qasm2.parse import ast from bloqade.qasm2.types import QubitType from bloqade.qasm2.emit.gate import EmitQASM2Gate, EmitQASM2Frame diff --git a/src/bloqade/qasm2/dialects/uop/emit.py b/src/bloqade/qasm2/dialects/uop/emit.py index d8bf6e3d..e3ded03f 100644 --- a/src/bloqade/qasm2/dialects/uop/emit.py +++ b/src/bloqade/qasm2/dialects/uop/emit.py @@ -1,4 +1,5 @@ from kirin import interp + from bloqade.qasm2.parse import ast from bloqade.qasm2.emit.gate import EmitQASM2Gate, EmitQASM2Frame diff --git a/src/bloqade/qasm2/dialects/uop/schedule.py b/src/bloqade/qasm2/dialects/uop/schedule.py index 14b77e94..15955ec4 100644 --- a/src/bloqade/qasm2/dialects/uop/schedule.py +++ b/src/bloqade/qasm2/dialects/uop/schedule.py @@ -1,5 +1,6 @@ from kirin import interp from kirin.analysis import ForwardFrame + from bloqade.analysis.schedule import DagScheduleAnalysis from . import stmts diff --git a/src/bloqade/qasm2/dialects/uop/stmts.py b/src/bloqade/qasm2/dialects/uop/stmts.py index e76076a1..f0740be3 100644 --- a/src/bloqade/qasm2/dialects/uop/stmts.py +++ b/src/bloqade/qasm2/dialects/uop/stmts.py @@ -1,5 +1,6 @@ from kirin import ir from kirin.decl import info, statement + from bloqade.qasm2.types import QubitType from bloqade.qasm2.dialects.expr.stmts import PyNum diff --git a/src/bloqade/qasm2/emit/base.py b/src/bloqade/qasm2/emit/base.py index 178edbb1..af49503c 100644 --- a/src/bloqade/qasm2/emit/base.py +++ b/src/bloqade/qasm2/emit/base.py @@ -5,6 +5,7 @@ from kirin import ir, idtable from kirin.emit import EmitABC, EmitError, EmitFrame from typing_extensions import Self + from bloqade.qasm2.parse import ast StmtType = TypeVar("StmtType", bound=ast.Node) diff --git a/src/bloqade/qasm2/emit/gate.py b/src/bloqade/qasm2/emit/gate.py index a71c03c1..2f978e07 100644 --- a/src/bloqade/qasm2/emit/gate.py +++ b/src/bloqade/qasm2/emit/gate.py @@ -1,9 +1,10 @@ from dataclasses import field, dataclass from kirin import ir, types, interp -from bloqade.types import QubitType from kirin.dialects import py, func, ilist from kirin.ir.dialect import Dialect as Dialect + +from bloqade.types import QubitType from bloqade.qasm2.parse import ast from .base import EmitError, EmitQASM2Base, EmitQASM2Frame diff --git a/src/bloqade/qasm2/emit/main.py b/src/bloqade/qasm2/emit/main.py index ba615d2e..07f0180a 100644 --- a/src/bloqade/qasm2/emit/main.py +++ b/src/bloqade/qasm2/emit/main.py @@ -3,6 +3,7 @@ from kirin import ir, interp from kirin.dialects import cf, scf, func from kirin.ir.dialect import Dialect as Dialect + from bloqade.qasm2.parse import ast from .base import EmitQASM2Base, EmitQASM2Frame diff --git a/src/bloqade/qasm2/emit/target.py b/src/bloqade/qasm2/emit/target.py index 657b81d4..b36e9008 100644 --- a/src/bloqade/qasm2/emit/target.py +++ b/src/bloqade/qasm2/emit/target.py @@ -4,6 +4,7 @@ from rich.console import Console from kirin.analysis import CallGraph from kirin.dialects import ilist + from bloqade.qasm2.parse import ast, pprint from bloqade.qasm2.passes.fold import QASM2Fold from bloqade.qasm2.passes.glob import GlobalToParallel diff --git a/src/bloqade/qasm2/groups.py b/src/bloqade/qasm2/groups.py index 78a32da9..84361eff 100644 --- a/src/bloqade/qasm2/groups.py +++ b/src/bloqade/qasm2/groups.py @@ -1,6 +1,7 @@ from kirin import ir, passes from kirin.prelude import structural_no_opt from kirin.dialects import scf, func, ilist, lowering + from bloqade.qasm2.dialects import ( uop, core, diff --git a/src/bloqade/qasm2/parse/lowering.py b/src/bloqade/qasm2/parse/lowering.py index 0f523c56..4d18a64c 100644 --- a/src/bloqade/qasm2/parse/lowering.py +++ b/src/bloqade/qasm2/parse/lowering.py @@ -4,6 +4,7 @@ from kirin.dialects import cf, func, ilist from kirin.lowering import LoweringState from kirin.exceptions import DialectLoweringError + from bloqade.qasm2.types import CRegType, QRegType from bloqade.qasm2.dialects import uop, core, expr, glob, noise, parallel diff --git a/src/bloqade/qasm2/passes/fold.py b/src/bloqade/qasm2/passes/fold.py index c35d1f6b..afb1b880 100644 --- a/src/bloqade/qasm2/passes/fold.py +++ b/src/bloqade/qasm2/passes/fold.py @@ -20,6 +20,7 @@ from kirin.dialects import scf, ilist from kirin.ir.method import Method from kirin.rewrite.abc import RewriteResult + from bloqade.qasm2.dialects import expr diff --git a/src/bloqade/qasm2/passes/glob.py b/src/bloqade/qasm2/passes/glob.py index 6b27738e..e07d1dac 100644 --- a/src/bloqade/qasm2/passes/glob.py +++ b/src/bloqade/qasm2/passes/glob.py @@ -5,12 +5,13 @@ from kirin import ir from kirin.rewrite import cse, dce, walk, result -from bloqade.analysis import address from kirin.passes.abc import Pass from kirin.passes.fold import Fold -from bloqade.qasm2.rewrite import GlobalToUOpRule, GlobalToParallelRule from kirin.rewrite.fixpoint import Fixpoint +from bloqade.analysis import address +from bloqade.qasm2.rewrite import GlobalToUOpRule, GlobalToParallelRule + class GlobalToUOP(Pass): """Pass to convert Global gates into single gates. diff --git a/src/bloqade/qasm2/passes/noise.py b/src/bloqade/qasm2/passes/noise.py index 66f63eee..be055683 100644 --- a/src/bloqade/qasm2/passes/noise.py +++ b/src/bloqade/qasm2/passes/noise.py @@ -2,7 +2,6 @@ from kirin import ir from kirin.passes import Pass -from bloqade.noise import native from kirin.rewrite import ( Walk, Chain, @@ -11,8 +10,10 @@ DeadCodeElimination, CommonSubexpressionElimination, ) -from bloqade.analysis import address from kirin.rewrite.result import RewriteResult + +from bloqade.noise import native +from bloqade.analysis import address from bloqade.qasm2.rewrite.heuristic_noise import NoiseRewriteRule diff --git a/src/bloqade/qasm2/passes/parallel.py b/src/bloqade/qasm2/passes/parallel.py index 99b18f2e..0fcd415b 100644 --- a/src/bloqade/qasm2/passes/parallel.py +++ b/src/bloqade/qasm2/passes/parallel.py @@ -19,6 +19,7 @@ result, ) from kirin.analysis import const + from bloqade.analysis import address, schedule from bloqade.qasm2.rewrite import ( MergePolicyABC, diff --git a/src/bloqade/qasm2/passes/py2qasm.py b/src/bloqade/qasm2/passes/py2qasm.py index 30d2c519..b87c52e0 100644 --- a/src/bloqade/qasm2/passes/py2qasm.py +++ b/src/bloqade/qasm2/passes/py2qasm.py @@ -6,6 +6,7 @@ from kirin.dialects import py, math from kirin.rewrite.abc import RewriteRule from kirin.rewrite.result import RewriteResult + from bloqade.qasm2.dialects import core, expr diff --git a/src/bloqade/qasm2/passes/qasm2py.py b/src/bloqade/qasm2/passes/qasm2py.py index 6b820447..9b0fa794 100644 --- a/src/bloqade/qasm2/passes/qasm2py.py +++ b/src/bloqade/qasm2/passes/qasm2py.py @@ -8,6 +8,7 @@ from kirin.dialects import py, math from kirin.rewrite.abc import RewriteRule from kirin.rewrite.result import RewriteResult + from bloqade.qasm2.dialects import core, expr diff --git a/src/bloqade/qasm2/rewrite/desugar.py b/src/bloqade/qasm2/rewrite/desugar.py index 098ccd49..3129cab5 100644 --- a/src/bloqade/qasm2/rewrite/desugar.py +++ b/src/bloqade/qasm2/rewrite/desugar.py @@ -4,6 +4,7 @@ from kirin.passes import Pass from kirin.rewrite import abc, walk, result from kirin.dialects import py + from bloqade.qasm2.dialects import core diff --git a/src/bloqade/qasm2/rewrite/glob.py b/src/bloqade/qasm2/rewrite/glob.py index 8a0124da..92f8a2d9 100644 --- a/src/bloqade/qasm2/rewrite/glob.py +++ b/src/bloqade/qasm2/rewrite/glob.py @@ -2,9 +2,10 @@ from dataclasses import dataclass from kirin import ir -from bloqade import qasm2 from kirin.rewrite import abc, result from kirin.dialects import py, ilist + +from bloqade import qasm2 from bloqade.analysis import address from bloqade.qasm2.dialects import glob diff --git a/src/bloqade/qasm2/rewrite/heuristic_noise.py b/src/bloqade/qasm2/rewrite/heuristic_noise.py index af088aea..6180ccef 100644 --- a/src/bloqade/qasm2/rewrite/heuristic_noise.py +++ b/src/bloqade/qasm2/rewrite/heuristic_noise.py @@ -2,9 +2,10 @@ from dataclasses import field, dataclass from kirin import ir -from bloqade.noise import native from kirin.rewrite import abc as result_abc, result from kirin.dialects import py, ilist + +from bloqade.noise import native from bloqade.analysis import address from bloqade.qasm2.dialects import uop, core, glob, parallel diff --git a/src/bloqade/qasm2/rewrite/native_gates.py b/src/bloqade/qasm2/rewrite/native_gates.py index eaf00e9f..7d4840c4 100644 --- a/src/bloqade/qasm2/rewrite/native_gates.py +++ b/src/bloqade/qasm2/rewrite/native_gates.py @@ -12,12 +12,13 @@ from kirin import ir from kirin.rewrite import abc, result from kirin.dialects import py -from bloqade.qasm2.dialects import uop, expr from cirq.circuits.qasm_output import QasmUGate from cirq.transformers.target_gatesets.compilation_target_gateset import ( CompilationTargetGateset, ) +from bloqade.qasm2.dialects import uop, expr + # rydeberg gate sets class RydbergTargetGateset(cirq.CZTargetGateset): diff --git a/src/bloqade/qasm2/rewrite/parallel_to_uop.py b/src/bloqade/qasm2/rewrite/parallel_to_uop.py index 6b59dede..a9e58199 100644 --- a/src/bloqade/qasm2/rewrite/parallel_to_uop.py +++ b/src/bloqade/qasm2/rewrite/parallel_to_uop.py @@ -3,6 +3,7 @@ from kirin import ir from kirin.rewrite import abc, result + from bloqade.analysis import address from bloqade.qasm2.dialects import uop, parallel diff --git a/src/bloqade/qasm2/rewrite/register.py b/src/bloqade/qasm2/rewrite/register.py index ffdf574d..3784d6f0 100644 --- a/src/bloqade/qasm2/rewrite/register.py +++ b/src/bloqade/qasm2/rewrite/register.py @@ -1,6 +1,7 @@ from kirin import ir from kirin.dialects import py from kirin.rewrite.abc import RewriteRule, RewriteResult + from bloqade.qasm2.dialects import core diff --git a/src/bloqade/qasm2/rewrite/uop_to_parallel.py b/src/bloqade/qasm2/rewrite/uop_to_parallel.py index 03548764..e8a3be72 100644 --- a/src/bloqade/qasm2/rewrite/uop_to_parallel.py +++ b/src/bloqade/qasm2/rewrite/uop_to_parallel.py @@ -5,8 +5,9 @@ from kirin import ir from kirin.rewrite import abc as rewrite_abc from kirin.dialects import py, ilist -from bloqade.analysis import address from kirin.analysis.const import lattice + +from bloqade.analysis import address from bloqade.qasm2.dialects import uop, core, parallel from bloqade.analysis.schedule import StmtDag diff --git a/src/bloqade/qasm2/types.py b/src/bloqade/qasm2/types.py index a40ff4b4..827bfde0 100644 --- a/src/bloqade/qasm2/types.py +++ b/src/bloqade/qasm2/types.py @@ -1,4 +1,5 @@ from kirin import types + from bloqade.types import Qubit as Qubit, QubitType as QubitType diff --git a/src/bloqade/qbraid/lowering.py b/src/bloqade/qbraid/lowering.py index f957fda6..45fed722 100644 --- a/src/bloqade/qbraid/lowering.py +++ b/src/bloqade/qbraid/lowering.py @@ -2,9 +2,10 @@ from dataclasses import field, dataclass from kirin import ir, types, passes +from kirin.dialects import func, ilist + from bloqade import noise, qasm2 from bloqade.qbraid import schema -from kirin.dialects import func, ilist from bloqade.qasm2.dialects import glob, parallel diff --git a/src/bloqade/qbraid/simulation_result.py b/src/bloqade/qbraid/simulation_result.py index 519f91e2..c797b8e1 100644 --- a/src/bloqade/qbraid/simulation_result.py +++ b/src/bloqade/qbraid/simulation_result.py @@ -7,6 +7,7 @@ import pandas as pd from pandas import DataFrame + from bloqade.visual.animation.runtime import qpustate as vis_qpustate from .schema import NoiseModel diff --git a/src/bloqade/squin/groups.py b/src/bloqade/squin/groups.py index 62b093d2..e9ec82a6 100644 --- a/src/bloqade/squin/groups.py +++ b/src/bloqade/squin/groups.py @@ -1,6 +1,7 @@ from kirin import ir, passes from kirin.prelude import structural_no_opt from kirin.dialects import ilist + from bloqade.qasm2.rewrite.desugar import IndexingDesugarPass from . import op, wire, qubit diff --git a/src/bloqade/squin/qubit.py b/src/bloqade/squin/qubit.py index c950d552..9ed80d31 100644 --- a/src/bloqade/squin/qubit.py +++ b/src/bloqade/squin/qubit.py @@ -11,9 +11,10 @@ from kirin import ir, types from kirin.decl import info, statement -from bloqade.types import Qubit, QubitType from kirin.dialects import ilist from kirin.lowering import wraps + +from bloqade.types import Qubit, QubitType from bloqade.squin.op.types import Op, OpType dialect = ir.Dialect("squin.qubit") diff --git a/src/bloqade/squin/wire.py b/src/bloqade/squin/wire.py index 3caac41e..9578181d 100644 --- a/src/bloqade/squin/wire.py +++ b/src/bloqade/squin/wire.py @@ -8,6 +8,7 @@ from kirin import ir, types from kirin.decl import info, statement + from bloqade.types import QubitType from .op.types import OpType diff --git a/src/bloqade/stim/dialects/aux/emit.py b/src/bloqade/stim/dialects/aux/emit.py index 57b047eb..be4aa0cb 100644 --- a/src/bloqade/stim/dialects/aux/emit.py +++ b/src/bloqade/stim/dialects/aux/emit.py @@ -1,5 +1,6 @@ from kirin.emit import EmitStrFrame from kirin.interp import MethodTable, impl + from bloqade.stim.emit.stim import EmitStimMain from . import stmts diff --git a/src/bloqade/stim/dialects/collapse/emit.py b/src/bloqade/stim/dialects/collapse/emit.py index b6a41180..be96f2b2 100644 --- a/src/bloqade/stim/dialects/collapse/emit.py +++ b/src/bloqade/stim/dialects/collapse/emit.py @@ -1,5 +1,6 @@ from kirin.emit import EmitStrFrame from kirin.interp import MethodTable, impl + from bloqade.stim.emit.stim import EmitStimMain from . import stmts diff --git a/src/bloqade/stim/dialects/gate/emit.py b/src/bloqade/stim/dialects/gate/emit.py index d39013c8..e0e28631 100644 --- a/src/bloqade/stim/dialects/gate/emit.py +++ b/src/bloqade/stim/dialects/gate/emit.py @@ -1,5 +1,6 @@ from kirin.emit import EmitStrFrame from kirin.interp import MethodTable, impl + from bloqade.stim.emit.stim import EmitStimMain from . import stmts diff --git a/src/bloqade/stim/dialects/gate/stmts/base.py b/src/bloqade/stim/dialects/gate/stmts/base.py index 59910eac..cae7beba 100644 --- a/src/bloqade/stim/dialects/gate/stmts/base.py +++ b/src/bloqade/stim/dialects/gate/stmts/base.py @@ -1,5 +1,6 @@ from kirin import ir, types from kirin.decl import info, statement + from bloqade.stim.dialects.aux import RecordType diff --git a/src/bloqade/stim/dialects/noise/emit.py b/src/bloqade/stim/dialects/noise/emit.py index a83218c6..e4c2b8b0 100644 --- a/src/bloqade/stim/dialects/noise/emit.py +++ b/src/bloqade/stim/dialects/noise/emit.py @@ -1,5 +1,6 @@ from kirin.emit import EmitStrFrame from kirin.interp import MethodTable, impl + from bloqade.stim.emit.stim import EmitStimMain from . import stmts diff --git a/test/qasm2/passes/test_global_to_parallel.py b/test/qasm2/passes/test_global_to_parallel.py index 996604bb..3b147636 100644 --- a/test/qasm2/passes/test_global_to_parallel.py +++ b/test/qasm2/passes/test_global_to_parallel.py @@ -1,9 +1,10 @@ from typing import List from kirin import ir, types -from bloqade import qasm2 from kirin.rewrite import Walk, Fixpoint, CommonSubexpressionElimination from kirin.dialects import py, func, ilist + +from bloqade import qasm2 from bloqade.test_utils import assert_methods from bloqade.qasm2.passes.glob import GlobalToParallel diff --git a/test/qasm2/passes/test_global_to_uop.py b/test/qasm2/passes/test_global_to_uop.py index 39f6f424..dafe6f2a 100644 --- a/test/qasm2/passes/test_global_to_uop.py +++ b/test/qasm2/passes/test_global_to_uop.py @@ -1,9 +1,10 @@ from typing import List from kirin import ir, types -from bloqade import qasm2 from kirin.rewrite import Walk, Fixpoint, CommonSubexpressionElimination from kirin.dialects import py, func + +from bloqade import qasm2 from bloqade.test_utils import assert_methods from bloqade.qasm2.passes.glob import GlobalToUOP diff --git a/test/qasm2/passes/test_heuristic_noise.py b/test/qasm2/passes/test_heuristic_noise.py index dc714030..e2bfd54f 100644 --- a/test/qasm2/passes/test_heuristic_noise.py +++ b/test/qasm2/passes/test_heuristic_noise.py @@ -1,9 +1,10 @@ from kirin import ir, types +from kirin.dialects import func, ilist +from kirin.dialects.py import constant + from bloqade import qasm2 from bloqade.noise import native -from kirin.dialects import func, ilist from bloqade.analysis import address -from kirin.dialects.py import constant from bloqade.test_utils import assert_nodes from bloqade.qasm2.dialects import uop, core, glob, parallel from bloqade.qasm2.passes.noise import NoisePass diff --git a/test/qasm2/passes/test_parallel_to_uop.py b/test/qasm2/passes/test_parallel_to_uop.py index f4dc33bf..c3e2c59e 100644 --- a/test/qasm2/passes/test_parallel_to_uop.py +++ b/test/qasm2/passes/test_parallel_to_uop.py @@ -1,8 +1,9 @@ from typing import List from kirin import ir, types -from bloqade import qasm2 from kirin.dialects import py, func + +from bloqade import qasm2 from bloqade.test_utils import assert_methods from bloqade.qasm2.passes.parallel import ParallelToUOp diff --git a/test/qasm2/test_count.py b/test/qasm2/test_count.py index cfebeb4c..598b68bb 100644 --- a/test/qasm2/test_count.py +++ b/test/qasm2/test_count.py @@ -1,6 +1,7 @@ from kirin import passes -from bloqade import qasm2 from kirin.dialects import py, ilist + +from bloqade import qasm2 from bloqade.analysis.address import ( NotQubit, AddressReg, diff --git a/test/qasm2/test_inline.py b/test/qasm2/test_inline.py index 1372e35a..a53aeb65 100644 --- a/test/qasm2/test_inline.py +++ b/test/qasm2/test_inline.py @@ -1,7 +1,8 @@ import textwrap -from bloqade import qasm2 from kirin.dialects import ilist + +from bloqade import qasm2 from bloqade.qasm2.dialects import glob, noise, inline, parallel diff --git a/test/qasm2/test_native.py b/test/qasm2/test_native.py index 8c5d4ad7..f8e32101 100644 --- a/test/qasm2/test_native.py +++ b/test/qasm2/test_native.py @@ -7,8 +7,9 @@ import cirq.contrib.qasm_import as qasm_import import cirq.circuits.qasm_output as qasm_output from pytest import mark -from bloqade import qasm2 from kirin.rewrite import walk + +from bloqade import qasm2 from bloqade.qasm2.rewrite.native_gates import ( RydbergGateSetRewriteRule, one_qubit_gate_to_u3_angles, diff --git a/test/qbraid/test_lowering.py b/test/qbraid/test_lowering.py index 57886f49..f398749d 100644 --- a/test/qbraid/test_lowering.py +++ b/test/qbraid/test_lowering.py @@ -3,11 +3,12 @@ from typing import List from kirin import ir, types -from bloqade import qasm2 from rich.console import Console +from kirin.dialects import func, ilist + +from bloqade import qasm2 from bloqade.noise import native from bloqade.qbraid import schema, lowering -from kirin.dialects import func, ilist from bloqade.qasm2.dialects import parallel diff --git a/test/qbraid/test_target.py b/test/qbraid/test_target.py index ea16490c..5d238223 100644 --- a/test/qbraid/test_target.py +++ b/test/qbraid/test_target.py @@ -1,7 +1,8 @@ from typing import Optional -from bloqade import qasm2 from kirin.dialects import ilist + +from bloqade import qasm2 from bloqade.qbraid.target import qBraid diff --git a/test/stim/dialects/stim/emit/base.py b/test/stim/dialects/stim/emit/base.py index 3e8731bd..ca552fea 100644 --- a/test/stim/dialects/stim/emit/base.py +++ b/test/stim/dialects/stim/emit/base.py @@ -1,4 +1,5 @@ from kirin import ir + from bloqade.stim.emit import EmitStimMain emit = EmitStimMain() diff --git a/test/test_serialization.py b/test/test_serialization.py index 01632cea..e26620cb 100644 --- a/test/test_serialization.py +++ b/test/test_serialization.py @@ -2,6 +2,7 @@ import numpy as np import pandas as pd + from bloqade.qbraid.simulation_result import QuEraSimulationResult from bloqade.visual.animation.gate_event import GateEvent from bloqade.visual.animation.runtime.aod import AODMoveEvent diff --git a/test/visual/test_utils.py b/test/visual/test_utils.py index efdac21f..cfd5f7ac 100644 --- a/test/visual/test_utils.py +++ b/test/visual/test_utils.py @@ -2,6 +2,7 @@ import numpy as np import pytest + from bloqade.visual.animation.runtime import utils