cirq-core 1.6.0.dev20250614001105__py3-none-any.whl → 1.6.0.dev20250616211950__py3-none-any.whl

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 cirq-core might be problematic. Click here for more details.

cirq/_version.py CHANGED
@@ -28,4 +28,4 @@ if sys.version_info < (3, 11, 0): # pragma: no cover
28
28
  'of cirq (e.g. "python -m pip install cirq==1.5.0")'
29
29
  )
30
30
 
31
- __version__ = "1.6.0.dev20250614001105"
31
+ __version__ = "1.6.0.dev20250616211950"
cirq/_version_test.py CHANGED
@@ -3,4 +3,4 @@ import cirq
3
3
 
4
4
 
5
5
  def test_version() -> None:
6
- assert cirq.__version__ == "1.6.0.dev20250614001105"
6
+ assert cirq.__version__ == "1.6.0.dev20250616211950"
cirq/circuits/circuit.py CHANGED
@@ -1172,7 +1172,7 @@ class AbstractCircuit(abc.ABC):
1172
1172
  *,
1173
1173
  use_unicode_characters: bool = True,
1174
1174
  transpose: bool = False,
1175
- include_tags: bool = True,
1175
+ include_tags: bool | Iterable[type] = True,
1176
1176
  precision: int | None = 3,
1177
1177
  qubit_order: cirq.QubitOrderOrList = ops.QubitOrder.DEFAULT,
1178
1178
  ) -> str:
@@ -1182,7 +1182,10 @@ class AbstractCircuit(abc.ABC):
1182
1182
  use_unicode_characters: Determines if unicode characters are
1183
1183
  allowed (as opposed to ascii-only diagrams).
1184
1184
  transpose: Arranges qubit wires vertically instead of horizontally.
1185
- include_tags: Whether tags on TaggedOperations should be printed
1185
+ include_tags: Controls which tags attached to operations are
1186
+ included. ``True`` includes all tags, ``False`` includes none,
1187
+ or a collection of tag classes may be specified to include only
1188
+ those tags.
1186
1189
  precision: Number of digits to display in text diagram
1187
1190
  qubit_order: Determines how qubits are ordered in the diagram.
1188
1191
 
@@ -1209,7 +1212,7 @@ class AbstractCircuit(abc.ABC):
1209
1212
  use_unicode_characters: bool = True,
1210
1213
  qubit_namer: Callable[[cirq.Qid], str] | None = None,
1211
1214
  transpose: bool = False,
1212
- include_tags: bool = True,
1215
+ include_tags: bool | Iterable[type] = True,
1213
1216
  draw_moment_groups: bool = True,
1214
1217
  precision: int | None = 3,
1215
1218
  qubit_order: cirq.QubitOrderOrList = ops.QubitOrder.DEFAULT,
@@ -1224,7 +1227,10 @@ class AbstractCircuit(abc.ABC):
1224
1227
  allowed (as opposed to ascii-only diagrams).
1225
1228
  qubit_namer: Names qubits in diagram. Defaults to using _circuit_diagram_info_ or str.
1226
1229
  transpose: Arranges qubit wires vertically instead of horizontally.
1227
- include_tags: Whether to include tags in the operation.
1230
+ include_tags: Controls which tags attached to operations are
1231
+ included. ``True`` includes all tags, ``False`` includes none,
1232
+ or a collection of tag classes may be specified to include only
1233
+ those tags.
1228
1234
  draw_moment_groups: Whether to draw moment symbol or not
1229
1235
  precision: Number of digits to use when representing numbers.
1230
1236
  qubit_order: Determines how qubits are ordered in the diagram.
@@ -2534,7 +2540,7 @@ def _draw_moment_annotations(
2534
2540
  get_circuit_diagram_info: Callable[
2535
2541
  [cirq.Operation, cirq.CircuitDiagramInfoArgs], cirq.CircuitDiagramInfo
2536
2542
  ],
2537
- include_tags: bool,
2543
+ include_tags: bool | Iterable[type],
2538
2544
  first_annotation_row: int,
2539
2545
  transpose: bool,
2540
2546
  ):
@@ -2566,7 +2572,7 @@ def _draw_moment_in_diagram(
2566
2572
  get_circuit_diagram_info: (
2567
2573
  Callable[[cirq.Operation, cirq.CircuitDiagramInfoArgs], cirq.CircuitDiagramInfo] | None
2568
2574
  ),
2569
- include_tags: bool,
2575
+ include_tags: bool | Iterable[type],
2570
2576
  first_annotation_row: int,
2571
2577
  transpose: bool,
2572
2578
  ):
@@ -2637,8 +2643,16 @@ def _draw_moment_in_diagram(
2637
2643
  desc = _formatted_phase(global_phase, use_unicode_characters, precision)
2638
2644
  if desc:
2639
2645
  y = max(label_map.values(), default=0) + 1
2640
- if tags and include_tags:
2641
- desc = desc + f"[{', '.join(map(str, tags))}]"
2646
+ visible_tags = protocols.CircuitDiagramInfoArgs(
2647
+ known_qubits=None,
2648
+ known_qubit_count=None,
2649
+ use_unicode_characters=True,
2650
+ precision=None,
2651
+ label_map=None,
2652
+ include_tags=include_tags,
2653
+ ).tags_to_include(tags)
2654
+ if visible_tags:
2655
+ desc = desc + f"[{', '.join(map(str, visible_tags))}]"
2642
2656
  out_diagram.write(x0, y, desc)
2643
2657
 
2644
2658
  if not non_global_ops:
cirq/circuits/moment.py CHANGED
@@ -565,7 +565,7 @@ class Moment:
565
565
  extra_qubits: Iterable[cirq.Qid] = (),
566
566
  use_unicode_characters: bool = True,
567
567
  precision: int | None = None,
568
- include_tags: bool = True,
568
+ include_tags: bool | Iterable[type] = True,
569
569
  ) -> str:
570
570
  """Create a text diagram for the moment.
571
571
 
@@ -583,8 +583,10 @@ class Moment:
583
583
  precision: How precise numbers, such as angles, should be. Use None
584
584
  for infinite precision, or an integer for a certain number of
585
585
  digits of precision.
586
- include_tags: Whether or not to include operation tags in the
587
- diagram.
586
+ include_tags: Controls which tags attached to operations are
587
+ included. ``True`` includes all tags, ``False`` includes none,
588
+ or a collection of tag classes may be specified to include only
589
+ those tags.
588
590
 
589
591
  Returns:
590
592
  The text diagram rendered into text.
@@ -127,7 +127,7 @@ def sample_heavy_set(
127
127
  # Add measure gates to the end of (a copy of) the circuit. Ensure that those
128
128
  # gates measure those in the given mapping, preserving this order.
129
129
  qubits = circuit.all_qubits()
130
- key = None
130
+ key: Callable[[cirq.Qid], cirq.Qid] | None = None
131
131
  if mapping:
132
132
  # Add any qubits that were not explicitly mapped, so they aren't lost in
133
133
  # the sorting.
@@ -137,7 +137,7 @@ def sample_heavy_set(
137
137
  # Don't do a single large measurement gate because then the key will be one
138
138
  # large string. Instead, do a bunch of single-qubit measurement gates so we
139
139
  # preserve the qubit keys.
140
- sorted_qubits = sorted(qubits, key=key) # type: ignore[arg-type]
140
+ sorted_qubits = sorted(qubits, key=key)
141
141
  circuit_copy = circuit + [cirq.measure(q) for q in sorted_qubits]
142
142
 
143
143
  # Run the sampler to compare each output against the Heavy Set.
cirq/ops/raw_types.py CHANGED
@@ -913,11 +913,12 @@ class TaggedOperation(Operation):
913
913
 
914
914
  def _circuit_diagram_info_(self, args: cirq.CircuitDiagramInfoArgs) -> cirq.CircuitDiagramInfo:
915
915
  sub_op_info = protocols.circuit_diagram_info(self.sub_operation, args, NotImplemented)
916
- # Add tag to wire symbol if it exists.
917
- if sub_op_info is not NotImplemented and args.include_tags and sub_op_info.wire_symbols:
918
- sub_op_info.wire_symbols = (
919
- sub_op_info.wire_symbols[0] + f"[{', '.join(map(str, self._tags))}]",
920
- ) + sub_op_info.wire_symbols[1:]
916
+ if sub_op_info is not NotImplemented and sub_op_info.wire_symbols:
917
+ visible_tags = args.tags_to_include(self._tags)
918
+ if visible_tags:
919
+ sub_op_info.wire_symbols = (
920
+ sub_op_info.wire_symbols[0] + f"[{', '.join(map(str, visible_tags))}]",
921
+ ) + sub_op_info.wire_symbols[1:]
921
922
  return sub_op_info
922
923
 
923
924
  @cached_method
@@ -554,6 +554,8 @@ def test_circuit_diagram() -> None:
554
554
  diagram_with_non_string_tag = "(1, 1): ───H[<taggy>]───"
555
555
  assert c.to_text_diagram() == diagram_with_non_string_tag
556
556
  assert c.to_text_diagram(include_tags=False) == diagram_without_tags
557
+ assert c.to_text_diagram(include_tags={str}) == diagram_without_tags
558
+ assert c.to_text_diagram(include_tags={TaggyTag}) == diagram_with_non_string_tag
557
559
 
558
560
 
559
561
  def test_circuit_diagram_tagged_global_phase() -> None:
@@ -181,7 +181,10 @@ class CircuitDiagramInfoArgs:
181
181
  precision: The number of digits after the decimal to show for numbers in
182
182
  the text diagram. None means use full precision.
183
183
  label_map: The map from label entities to diagram positions.
184
- include_tags: Whether to print tags from TaggedOperations.
184
+ include_tags: If ``True`` all tags from ``TaggedOperations`` will be
185
+ printed. If ``False`` no tags will be printed. Alternatively a
186
+ collection of tag classes can be provided. In this case only tags
187
+ whose type is contained in the collection will be shown.
185
188
  transpose: Whether the circuit is to be drawn with time from left to
186
189
  right (transpose is False), or from top to bottom.
187
190
  """
@@ -195,7 +198,7 @@ class CircuitDiagramInfoArgs:
195
198
  use_unicode_characters: bool,
196
199
  precision: int | None,
197
200
  label_map: dict[LabelEntity, int] | None,
198
- include_tags: bool = True,
201
+ include_tags: bool | Iterable[type] = True,
199
202
  transpose: bool = False,
200
203
  ) -> None:
201
204
  self.known_qubits = None if known_qubits is None else tuple(known_qubits)
@@ -203,7 +206,11 @@ class CircuitDiagramInfoArgs:
203
206
  self.use_unicode_characters = use_unicode_characters
204
207
  self.precision = precision
205
208
  self.label_map = label_map
206
- self.include_tags = include_tags
209
+ self.include_tags: bool | frozenset[type]
210
+ if isinstance(include_tags, bool):
211
+ self.include_tags = include_tags
212
+ else:
213
+ self.include_tags = frozenset(include_tags)
207
214
  self.transpose = transpose
208
215
 
209
216
  def _value_equality_values_(self) -> Any:
@@ -217,7 +224,11 @@ class CircuitDiagramInfoArgs:
217
224
  if self.label_map is None
218
225
  else tuple(sorted(self.label_map.items(), key=lambda e: e[0]))
219
226
  ),
220
- self.include_tags,
227
+ (
228
+ self.include_tags
229
+ if isinstance(self.include_tags, bool)
230
+ else tuple(sorted(self.include_tags, key=lambda c: c.__name__))
231
+ ),
221
232
  self.transpose,
222
233
  )
223
234
 
@@ -229,10 +240,27 @@ class CircuitDiagramInfoArgs:
229
240
  f'use_unicode_characters={self.use_unicode_characters!r}, '
230
241
  f'precision={self.precision!r}, '
231
242
  f'label_map={self.label_map!r}, '
232
- f'include_tags={self.include_tags!r}, '
243
+ f'include_tags={self._include_tags_repr()}, '
233
244
  f'transpose={self.transpose!r})'
234
245
  )
235
246
 
247
+ def _include_tags_repr(self) -> str:
248
+ if isinstance(self.include_tags, bool):
249
+ return repr(self.include_tags)
250
+ items = []
251
+ for cls in self.include_tags:
252
+ if cls.__module__ == 'builtins':
253
+ items.append(cls.__qualname__)
254
+ else:
255
+ items.append(f"{cls.__module__}.{cls.__qualname__}")
256
+ joined = ', '.join(items)
257
+ return f'frozenset({{{joined}}})'
258
+
259
+ def tags_to_include(self, tags: Iterable[Any]) -> list[Any]:
260
+ if isinstance(self.include_tags, bool):
261
+ return list(tags) if self.include_tags else []
262
+ return [t for t in tags if any(isinstance(t, cls) for cls in self.include_tags)]
263
+
236
264
  def format_real(self, val: sympy.Basic | int | float) -> str:
237
265
  if isinstance(val, sympy.Basic):
238
266
  return str(val)
@@ -279,6 +307,7 @@ class CircuitDiagramInfoArgs:
279
307
  use_unicode_characters=self.use_unicode_characters,
280
308
  precision=self.precision,
281
309
  label_map=self.label_map,
310
+ include_tags=self.include_tags,
282
311
  transpose=self.transpose,
283
312
  )
284
313
 
@@ -21,6 +21,10 @@ import sympy
21
21
  import cirq
22
22
 
23
23
 
24
+ class CustomTag:
25
+ pass
26
+
27
+
24
28
  def test_circuit_diagram_info_value_wrapping() -> None:
25
29
  single_info = cirq.CircuitDiagramInfo(('Single',))
26
30
 
@@ -174,6 +178,26 @@ def test_circuit_diagram_info_args_eq() -> None:
174
178
  include_tags=False,
175
179
  )
176
180
  )
181
+ eq.add_equality_group(
182
+ cirq.CircuitDiagramInfoArgs(
183
+ known_qubits=cirq.LineQubit.range(2),
184
+ known_qubit_count=2,
185
+ use_unicode_characters=False,
186
+ precision=None,
187
+ label_map=None,
188
+ include_tags={str},
189
+ )
190
+ )
191
+ eq.add_equality_group(
192
+ cirq.CircuitDiagramInfoArgs(
193
+ known_qubits=cirq.LineQubit.range(2),
194
+ known_qubit_count=2,
195
+ use_unicode_characters=False,
196
+ precision=None,
197
+ label_map=None,
198
+ include_tags={CustomTag},
199
+ )
200
+ )
177
201
  eq.add_equality_group(
178
202
  cirq.CircuitDiagramInfoArgs(
179
203
  known_qubits=cirq.LineQubit.range(2),
@@ -208,6 +232,30 @@ def test_circuit_diagram_info_args_repr() -> None:
208
232
  )
209
233
  )
210
234
 
235
+ cirq.testing.assert_equivalent_repr(
236
+ cirq.CircuitDiagramInfoArgs(
237
+ known_qubits=cirq.LineQubit.range(1),
238
+ known_qubit_count=1,
239
+ use_unicode_characters=False,
240
+ precision=None,
241
+ label_map=None,
242
+ include_tags={str},
243
+ transpose=False,
244
+ )
245
+ )
246
+
247
+ cirq.testing.assert_equivalent_repr(
248
+ cirq.CircuitDiagramInfoArgs(
249
+ known_qubits=cirq.LineQubit.range(1),
250
+ known_qubit_count=1,
251
+ use_unicode_characters=False,
252
+ precision=None,
253
+ label_map=None,
254
+ include_tags={CustomTag},
255
+ transpose=False,
256
+ )
257
+ )
258
+
211
259
 
212
260
  def test_format_real() -> None:
213
261
  args = cirq.CircuitDiagramInfoArgs.UNINFORMED_DEFAULT.copy()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cirq-core
3
- Version: 1.6.0.dev20250614001105
3
+ Version: 1.6.0.dev20250616211950
4
4
  Summary: A framework for creating, editing, and invoking Noisy Intermediate Scale Quantum (NISQ) circuits.
5
5
  Home-page: http://github.com/quantumlib/cirq
6
6
  Author: The Cirq Developers
@@ -4,8 +4,8 @@ cirq/_compat_test.py,sha256=emXpdD5ZvwLRlFAoQB8YatmZyU3b4e9jg6FppMTUhkU,33900
4
4
  cirq/_doc.py,sha256=BrnoABo1hk5RgB3Cgww4zLHUfiyFny0F1V-tOMCbdaU,2909
5
5
  cirq/_import.py,sha256=ixBu4EyGl46Ram2cP3p5eZVEFDW5L2DS-VyTjz4N9iw,8429
6
6
  cirq/_import_test.py,sha256=oF4izzOVZLc7NZ0aZHFcGv-r01eiFFt_JORx_x7_D4s,1089
7
- cirq/_version.py,sha256=OmpZhJ2sr7HU524c8rwX_LiiVH_7hItKdBHuk4cR1S0,1206
8
- cirq/_version_test.py,sha256=ZVF2f7hffs77GUsr3dqRb3nrFRXQN-FV2ifSxTk6Xz8,155
7
+ cirq/_version.py,sha256=hRw1TSLRRaS7gIHR9xzd-q6e86icXRGEMLM8vSxOKoE,1206
8
+ cirq/_version_test.py,sha256=nlOb1nzuYWza7kIi-5yqWVP60QvADI2NpfpNEsbP1TA,155
9
9
  cirq/conftest.py,sha256=X7yLFL8GLhg2CjPw0hp5e_dGASfvHx1-QT03aUbhKJw,1168
10
10
  cirq/json_resolver_cache.py,sha256=hYyG53VJeV61X0oukK5ndZYega8lkL2FyaL1m0j6h5M,13556
11
11
  cirq/py.typed,sha256=VFSlmh_lNwnaXzwY-ZuW-C2Ws5PkuDoVgBdNCs0jXJE,63
@@ -16,7 +16,7 @@ cirq/circuits/_box_drawing_character_data.py,sha256=hExbMJHm9LGORhlhNiUvPiHquv4p
16
16
  cirq/circuits/_box_drawing_character_data_test.py,sha256=GyiNQDtiu_drzEe_y8DOXCFRYDKr2k8KetXN5RVDp18,1668
17
17
  cirq/circuits/_bucket_priority_queue.py,sha256=U564r2mou4aZsOlpVYiZCgirqS6mVznG3ESyawBt4gE,6749
18
18
  cirq/circuits/_bucket_priority_queue_test.py,sha256=MOby-UKYZQMe2n4KhqkfDCPrz-T_3eBbWDEa0_nadJQ,5627
19
- cirq/circuits/circuit.py,sha256=6jU6hpvfyJgZGsEGRhovE_A_4VCmwbs7pVdtYw46zGs,118744
19
+ cirq/circuits/circuit.py,sha256=8Y3tB1paBEScKrWYPWcyIgSY3kHnb76ISDuZY_GrJ4Y,119510
20
20
  cirq/circuits/circuit_operation.py,sha256=5LN0vXQT8hoUP8Vhkozm3d6hPqw0BUX5WBhKMr5qOng,36252
21
21
  cirq/circuits/circuit_operation_test.py,sha256=JqRjSqt--Weceog4CAl4iZW8CNy0qJ_2svUyeAR6D-s,49411
22
22
  cirq/circuits/circuit_test.py,sha256=8lOt-U48Taxa2DzGG0XP0uXgzA0mAJAKaVpkXDzmJ98,162773
@@ -24,7 +24,7 @@ cirq/circuits/frozen_circuit.py,sha256=CwlREZbCCrHJ6zTLLEbER_M7P4IsBEADhM5dbDBTv
24
24
  cirq/circuits/frozen_circuit_test.py,sha256=b-SQdV7KFLt3KCo50eBkGs8q29B2H5PmMevVGk8UCN4,4294
25
25
  cirq/circuits/insert_strategy.py,sha256=3995vK4U6O9RV4BXMoFl9Tf3ekxIiqxv71IuX80JtYo,3237
26
26
  cirq/circuits/insert_strategy_test.py,sha256=pBFgsylgRG1CS1h4JyzZQFP-xvh6fSbgpiZgxXfbpr4,1237
27
- cirq/circuits/moment.py,sha256=JSaaPnTqO8Fw2M1E8UjjqEI06O5yRDLWSYPQ7X3Kx0Q,25722
27
+ cirq/circuits/moment.py,sha256=H6PRIo6HajNjeP-Wx5c2xiF31id56fr0FywelO3KZwY,25900
28
28
  cirq/circuits/moment_test.py,sha256=kfPObC2xXlulWV7exXt6a6wraXrdZJiAV4xTGwXFc5Y,31152
29
29
  cirq/circuits/optimization_pass.py,sha256=r_elKwotCt8QDz_7meQQxHW4b8mCN7zFZOlmXTsDE54,6473
30
30
  cirq/circuits/optimization_pass_test.py,sha256=FvCCOZrqVQLYrf_BUAZ6M-sm6dMv00_xsvpN25Op1BA,5914
@@ -120,7 +120,7 @@ cirq/contrib/qcircuit/qcircuit_pdf.py,sha256=IEuq2rQMU9x_NcU8MS9uRc5o-E_BoeJPo8i
120
120
  cirq/contrib/qcircuit/qcircuit_pdf_test.py,sha256=qiR8GIopgeImoLtGD4vTzp_R3nPRhOg9pUND4Y6gRjs,1122
121
121
  cirq/contrib/qcircuit/qcircuit_test.py,sha256=Nivln1ECv4_AIUH8-2kfQH7d2E7332uvFOXXSU-AfYo,6153
122
122
  cirq/contrib/quantum_volume/__init__.py,sha256=RF_nbmm9s9A8sLhsnb7aZnuuoeHnsvlRNuoK8nBBW2w,1038
123
- cirq/contrib/quantum_volume/quantum_volume.py,sha256=BEWtmHJaqcMxczgTwj-q90cfOYQbaxi4DDyMpeTpG1w,19444
123
+ cirq/contrib/quantum_volume/quantum_volume.py,sha256=NM47qf3yxkGxI3uJAa7pCI3NgLrD8XqdyvFbfMZyPY8,19457
124
124
  cirq/contrib/quantum_volume/quantum_volume_test.py,sha256=NvqrJaw0Nok2Z_71eKQQQ_xoazxIPWim8NZ14iS5CpE,12436
125
125
  cirq/contrib/quimb/__init__.py,sha256=G6tzsTqQeYUg14urOBKE_dOe59cxsBWgvR5b_ngvKkE,943
126
126
  cirq/contrib/quimb/density_matrix.py,sha256=Ja0iBv9pPGad0Y5_9R0QZFTOOSAnU6-BuewLcO6JiVQ,8606
@@ -366,8 +366,8 @@ cirq/ops/qubit_order_or_list.py,sha256=5kChRv1gUnBKB-kF6okXoXcCa5CXbJ6HoB6ETpfl3
366
366
  cirq/ops/qubit_order_test.py,sha256=8uOW9oLLQcjbYvd2DdXZLCbRS2sJuH6b8Bal3SgPo5M,4372
367
367
  cirq/ops/random_gate_channel.py,sha256=i4eg9GA4CF6ZWQRrICa5lfYqvdZzN8oLEWwXHcxRStM,5115
368
368
  cirq/ops/random_gate_channel_test.py,sha256=p-xtDOMIYBJ1wVHLJmrALi-ZU978l3AVuX0kgoan1Ac,8523
369
- cirq/ops/raw_types.py,sha256=saIxkSrcW4A_exDY_2rdGSpHB_jnI3Ffi4kQCB1JbZo,43592
370
- cirq/ops/raw_types_test.py,sha256=iFkzkpwMcvyDqPI685UtuHQMRJ_boo1_h3UQ_rFIOrQ,35250
369
+ cirq/ops/raw_types.py,sha256=2QoHkWlVGAY3Yzkvlkop0GhLRdTMlHPGCIZNzffDjcI,43626
370
+ cirq/ops/raw_types_test.py,sha256=SHQCxqriYaQHc63ORvrTAWGyhinZ0Zn5JvdCdyZIVAQ,35408
371
371
  cirq/ops/state_preparation_channel.py,sha256=3qbqrrYaVN2eHL1qiBHcItj1Pzjxhtq10tSEkRz9GNM,4781
372
372
  cirq/ops/state_preparation_channel_test.py,sha256=xFi6nOFPoQatxvnorCXujmhMvtf65lmyFfxbGlTKo4c,6039
373
373
  cirq/ops/swap_gates.py,sha256=mEDVB4pdBsbenaOahrNtAcE2B1ZPW-4vGq079rECxf4,11743
@@ -393,8 +393,8 @@ cirq/protocols/apply_unitary_protocol.py,sha256=bvqGe_Yt_pnJiVRlj9Kq0_sf557BrA1i
393
393
  cirq/protocols/apply_unitary_protocol_test.py,sha256=po1z7a-r4kbfLg7_7XKgFMrsFIzQCFgceCwn-lyBEOA,26172
394
394
  cirq/protocols/approximate_equality_protocol.py,sha256=DZ4eNCSwl_MI1LIo6tosFFqw0Gl9snM51C2vR5X1mdA,6293
395
395
  cirq/protocols/approximate_equality_protocol_test.py,sha256=qVw2TzKRTZC7fDg6DK_fVEvJzJGmlzBi6JidlJrR_Fc,9212
396
- cirq/protocols/circuit_diagram_info_protocol.py,sha256=SSF5JXqEOU9s0eWXJvWaWbaZcz1XiB57pRSxkD2LqWA,15821
397
- cirq/protocols/circuit_diagram_info_protocol_test.py,sha256=sjXD0_EDNhKpDUBC1f-0vu8S4jyFz0Qtb2xRAEozXZg,10774
396
+ cirq/protocols/circuit_diagram_info_protocol.py,sha256=jttsQgG7DDYJDcVC3kV-jZxrkJrE5HKrZB8VnyVsziE,17164
397
+ cirq/protocols/circuit_diagram_info_protocol_test.py,sha256=r-kNamR6QPdu-Q9to2DKLrDP9J8rWOA7IxfMVvcO0qE,12074
398
398
  cirq/protocols/commutes_protocol.py,sha256=6cJNba3aEsCh_XHIeNTHb0LRzws6ZbxOrKL_rieqU6k,7397
399
399
  cirq/protocols/commutes_protocol_test.py,sha256=9YhBFYAwc-XpU7HrQp-GarKwmwmbgyadUYqlkiG10A8,5885
400
400
  cirq/protocols/control_key_protocol.py,sha256=uGgfahCHzsFpUGq6flgTMuqPh20zUSB2AOkSrhyoqwQ,2621
@@ -1220,8 +1220,8 @@ cirq/work/sampler.py,sha256=rxbMWvrhu3gfNSBjZKozw28lLKVvBAS_1EGyPdYe8Xg,19041
1220
1220
  cirq/work/sampler_test.py,sha256=SsMrRvLDYELyOAWLKISjkdEfrBwLYWRsT6D8WrsLM3Q,13533
1221
1221
  cirq/work/zeros_sampler.py,sha256=Fs2JWwq0n9zv7_G5Rm-9vPeHUag7uctcMOHg0JTkZpc,2371
1222
1222
  cirq/work/zeros_sampler_test.py,sha256=lQLgQDGBLtfImryys2HzQ2jOSGxHgc7-koVBUhv8qYk,3345
1223
- cirq_core-1.6.0.dev20250614001105.dist-info/licenses/LICENSE,sha256=tAkwu8-AdEyGxGoSvJ2gVmQdcicWw3j1ZZueVV74M-E,11357
1224
- cirq_core-1.6.0.dev20250614001105.dist-info/METADATA,sha256=3mP4t1Ffb0skaCke4mKqTCbCBDvItwo2KaAN64q9n48,4857
1225
- cirq_core-1.6.0.dev20250614001105.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
1226
- cirq_core-1.6.0.dev20250614001105.dist-info/top_level.txt,sha256=Sz9iOxHU0IEMLSFGwiwOCaN2e9K-jFbBbtpPN1hB73g,5
1227
- cirq_core-1.6.0.dev20250614001105.dist-info/RECORD,,
1223
+ cirq_core-1.6.0.dev20250616211950.dist-info/licenses/LICENSE,sha256=tAkwu8-AdEyGxGoSvJ2gVmQdcicWw3j1ZZueVV74M-E,11357
1224
+ cirq_core-1.6.0.dev20250616211950.dist-info/METADATA,sha256=pXqBU21-xsyvuLgoDAAjdDhFtHFd6ga-CqpTChoP1os,4857
1225
+ cirq_core-1.6.0.dev20250616211950.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
1226
+ cirq_core-1.6.0.dev20250616211950.dist-info/top_level.txt,sha256=Sz9iOxHU0IEMLSFGwiwOCaN2e9K-jFbBbtpPN1hB73g,5
1227
+ cirq_core-1.6.0.dev20250616211950.dist-info/RECORD,,