diff --git a/inconspiquous/dialects/qref.py b/inconspiquous/dialects/qref.py index e4f5110..a2d732e 100644 --- a/inconspiquous/dialects/qref.py +++ b/inconspiquous/dialects/qref.py @@ -80,7 +80,7 @@ class MeasureOp(IRDLOperation): _I: ClassVar = IntVarConstraint("I", AnyInt()) - measure = prop_def( + measurement = prop_def( SizedAttributeConstraint(MeasurementAttr, _I), default_value=CompBasisMeasurementAttr(), ) @@ -89,16 +89,16 @@ class MeasureOp(IRDLOperation): out = var_result_def(RangeOf(eq(i1), length=_I)) - assembly_format = "(`` `<` $measure^ `>`)? $in_qubits attr-dict" + assembly_format = "(`` `<` $measurement^ `>`)? $in_qubits attr-dict" def __init__( self, *in_qubits: SSAValue | Operation, - measure: MeasurementAttr = CompBasisMeasurementAttr(), + measurement: MeasurementAttr = CompBasisMeasurementAttr(), ): super().__init__( properties={ - "measure": measure, + "measurement": measurement, }, operands=(in_qubits,), result_types=((i1,) * len(in_qubits)), diff --git a/inconspiquous/dialects/qssa.py b/inconspiquous/dialects/qssa.py index be88afa..d52264b 100644 --- a/inconspiquous/dialects/qssa.py +++ b/inconspiquous/dialects/qssa.py @@ -99,7 +99,7 @@ class MeasureOp(IRDLOperation): _I: ClassVar = IntVarConstraint("I", AnyInt()) - measure = prop_def( + measurement = prop_def( SizedAttributeConstraint(MeasurementAttr, _I), default_value=CompBasisMeasurementAttr(), ) @@ -108,16 +108,16 @@ class MeasureOp(IRDLOperation): out = var_result_def(RangeOf(eq(i1), length=_I)) - assembly_format = "(`` `<` $measure^ `>`)? $in_qubits attr-dict" + assembly_format = "(`` `<` $measurement^ `>`)? $in_qubits attr-dict" def __init__( self, *in_qubits: SSAValue | Operation, - measure: MeasurementAttr = CompBasisMeasurementAttr(), + measurement: MeasurementAttr = CompBasisMeasurementAttr(), ): super().__init__( properties={ - "measure": measure, + "measurement": measurement, }, operands=(in_qubits,), result_types=((i1,) * len(in_qubits)), diff --git a/inconspiquous/transforms/convert_qref_to_qssa.py b/inconspiquous/transforms/convert_qref_to_qssa.py index a80854e..fb7ae0d 100644 --- a/inconspiquous/transforms/convert_qref_to_qssa.py +++ b/inconspiquous/transforms/convert_qref_to_qssa.py @@ -59,7 +59,7 @@ def match_and_rewrite(self, op: qref.MeasureOp, rewriter: PatternRewriter): if len(operand.uses) != 1: return - new_op = qssa.MeasureOp(*op.in_qubits, measure=op.measure) + new_op = qssa.MeasureOp(*op.in_qubits, measurement=op.measurement) rewriter.replace_matched_op(new_op, new_op.out) diff --git a/inconspiquous/transforms/convert_qssa_to_qref.py b/inconspiquous/transforms/convert_qssa_to_qref.py index 59ad2b9..4756af4 100644 --- a/inconspiquous/transforms/convert_qssa_to_qref.py +++ b/inconspiquous/transforms/convert_qssa_to_qref.py @@ -39,7 +39,7 @@ class ConvertQssaMeasureToQrefMeasure(RewritePattern): @op_type_rewrite_pattern def match_and_rewrite(self, op: qssa.MeasureOp, rewriter: PatternRewriter): - new_measure = qref.MeasureOp(*op.in_qubits, measure=op.measure) + new_measure = qref.MeasureOp(*op.in_qubits, measurement=op.measurement) rewriter.replace_matched_op(new_measure) diff --git a/inconspiquous/transforms/randomized_comp.py b/inconspiquous/transforms/randomized_comp.py index 553f5e2..310fbc2 100644 --- a/inconspiquous/transforms/randomized_comp.py +++ b/inconspiquous/transforms/randomized_comp.py @@ -260,7 +260,7 @@ class PadMeasure(RewritePattern): @op_type_rewrite_pattern def match_and_rewrite(self, op: MeasureOp, rewriter: PatternRewriter): - if op.measure != CompBasisMeasurementAttr(): + if op.measurement != CompBasisMeasurementAttr(): # Only try to pad computation basis measurements return x_rand = UniformOp(i1) diff --git a/inconspiquous/transforms/xzs/commute.py b/inconspiquous/transforms/xzs/commute.py index 4feda8c..e798c46 100644 --- a/inconspiquous/transforms/xzs/commute.py +++ b/inconspiquous/transforms/xzs/commute.py @@ -35,7 +35,7 @@ def match_and_rewrite(self, op1: qssa.DynGateOp, rewriter: PatternRewriter): op2 = use.operation if isinstance(op2, qssa.MeasureOp): - if not isinstance(op2.measure, CompBasisMeasurementAttr): + if not isinstance(op2.measurement, CompBasisMeasurementAttr): return new_op2 = qssa.MeasureOp(op1.ins[0]) new_op1 = arith.AddiOp(new_op2.out[0], gate.x) diff --git a/tests/filecheck/dialects/qref/ops.mlir b/tests/filecheck/dialects/qref/ops.mlir index 6ff7e18..f75c8d4 100644 --- a/tests/filecheck/dialects/qref/ops.mlir +++ b/tests/filecheck/dialects/qref/ops.mlir @@ -28,5 +28,5 @@ qref.gate<#gate.cnot> %q0, %q1 qref.dyn_gate<%g1> %q1 // CHECK: %{{.*}} = qref.measure %q0 -// CHECK-GENERIC: %{{.*}} = "qref.measure"(%q0) <{measure = #measurement.comp_basis}> : (!qubit.bit) -> i1 +// CHECK-GENERIC: %{{.*}} = "qref.measure"(%q0) <{measurement = #measurement.comp_basis}> : (!qubit.bit) -> i1 %0 = qref.measure %q0 diff --git a/tests/filecheck/dialects/qssa/ops.mlir b/tests/filecheck/dialects/qssa/ops.mlir index 4d4f175..0a353cf 100644 --- a/tests/filecheck/dialects/qssa/ops.mlir +++ b/tests/filecheck/dialects/qssa/ops.mlir @@ -28,9 +28,9 @@ %q6 = qssa.dyn_gate<%g1> %q5 // CHECK: %{{.*}} = qssa.measure %q4 -// CHECK-GENERIC: %{{.*}} = "qssa.measure"(%q4) <{measure = #measurement.comp_basis}> : (!qubit.bit) -> i1 +// CHECK-GENERIC: %{{.*}} = "qssa.measure"(%q4) <{measurement = #measurement.comp_basis}> : (!qubit.bit) -> i1 %0 = qssa.measure %q4 // CHECK: %{{.*}} = qssa.measure<#measurement.xy<0.5pi>> %q6 -// CHECK-GENERIC: %{{.*}} = "qssa.measure"(%q6) <{measure = #measurement.xy<0.5pi>}> : (!qubit.bit) -> i1 +// CHECK-GENERIC: %{{.*}} = "qssa.measure"(%q6) <{measurement = #measurement.xy<0.5pi>}> : (!qubit.bit) -> i1 %1 = qssa.measure<#measurement.xy<0.5pi>> %q6