cirq-core 1.6.0.dev20250603221345__py3-none-any.whl → 1.6.0.dev20250605164716__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.

Files changed (41) hide show
  1. cirq/_compat_test.py +1 -17
  2. cirq/_version.py +1 -1
  3. cirq/_version_test.py +1 -1
  4. cirq/circuits/circuit.py +0 -6
  5. cirq/circuits/moment.py +0 -1
  6. cirq/contrib/acquaintance/bipartite_test.py +5 -4
  7. cirq/contrib/quirk/quirk_gate.py +0 -1
  8. cirq/linalg/decompositions.py +0 -1
  9. cirq/ops/clifford_gate.py +1 -5
  10. cirq/ops/eigen_gate.py +0 -2
  11. cirq/ops/measure_util.py +0 -6
  12. cirq/ops/pauli_string.py +0 -7
  13. cirq/ops/pauli_string_test.py +0 -2
  14. cirq/ops/three_qubit_gates.py +0 -1
  15. cirq/protocols/circuit_diagram_info_protocol.py +0 -4
  16. cirq/protocols/decompose_protocol.py +0 -6
  17. cirq/protocols/inverse_protocol.py +0 -5
  18. cirq/protocols/json_serialization.py +0 -3
  19. cirq/protocols/mul_protocol.py +0 -3
  20. cirq/protocols/pow_protocol.py +2 -5
  21. cirq/protocols/qasm.py +0 -6
  22. cirq/sim/density_matrix_simulator_test.py +0 -1
  23. cirq/study/sweeps.py +0 -3
  24. cirq/testing/logs.py +0 -3
  25. cirq/transformers/analytical_decompositions/three_qubit_decomposition.py +2 -12
  26. cirq/transformers/analytical_decompositions/three_qubit_decomposition_test.py +0 -27
  27. cirq/transformers/dynamical_decoupling_test.py +1 -1
  28. cirq/transformers/eject_z_test.py +0 -2
  29. cirq/transformers/merge_k_qubit_gates_test.py +1 -2
  30. cirq/value/angle.py +0 -4
  31. cirq/value/digits.py +0 -4
  32. cirq/value/linear_dict.py +0 -3
  33. cirq/value/timestamp.py +0 -3
  34. cirq/value/value_equality_attr.py +0 -4
  35. cirq/vis/heatmap.py +0 -1
  36. cirq/work/observable_grouping_test.py +0 -1
  37. {cirq_core-1.6.0.dev20250603221345.dist-info → cirq_core-1.6.0.dev20250605164716.dist-info}/METADATA +1 -1
  38. {cirq_core-1.6.0.dev20250603221345.dist-info → cirq_core-1.6.0.dev20250605164716.dist-info}/RECORD +41 -41
  39. {cirq_core-1.6.0.dev20250603221345.dist-info → cirq_core-1.6.0.dev20250605164716.dist-info}/WHEEL +0 -0
  40. {cirq_core-1.6.0.dev20250603221345.dist-info → cirq_core-1.6.0.dev20250605164716.dist-info}/licenses/LICENSE +0 -0
  41. {cirq_core-1.6.0.dev20250603221345.dist-info → cirq_core-1.6.0.dev20250605164716.dist-info}/top_level.txt +0 -0
cirq/_compat_test.py CHANGED
@@ -202,13 +202,11 @@ def test_deprecated():
202
202
  old_func(1, 2)
203
203
 
204
204
  with pytest.raises(AssertionError, match='deadline should match vX.Y'):
205
- # pylint: disable=unused-variable
205
+
206
206
  @deprecated(deadline='invalid', fix='Roll some dice.')
207
207
  def badly_deprecated_func(*args, **kwargs): # pragma: no cover
208
208
  return new_func(*args, **kwargs)
209
209
 
210
- # pylint: enable=unused-variable
211
-
212
210
 
213
211
  def test_deprecated_parameter():
214
212
  @deprecated_parameter(
@@ -234,20 +232,16 @@ def test_deprecated_parameter():
234
232
  'Double it yourself.',
235
233
  deadline='v1.2',
236
234
  ):
237
- # pylint: disable=unexpected-keyword-arg
238
235
  # pylint: disable=no-value-for-parameter
239
236
  assert f(double_count=1) == 2
240
237
  # pylint: enable=no-value-for-parameter
241
- # pylint: enable=unexpected-keyword-arg
242
238
 
243
239
  with pytest.raises(
244
240
  ValueError, match='During testing using Cirq deprecated functionality is not allowed'
245
241
  ):
246
- # pylint: disable=unexpected-keyword-arg
247
242
  # pylint: disable=no-value-for-parameter
248
243
  f(double_count=1)
249
244
  # pylint: enable=no-value-for-parameter
250
- # pylint: enable=unexpected-keyword-arg
251
245
 
252
246
  with pytest.raises(AssertionError, match='deadline should match vX.Y'):
253
247
 
@@ -259,12 +253,9 @@ def test_deprecated_parameter():
259
253
  match=lambda args, kwargs: 'double_count' in kwargs,
260
254
  rewrite=lambda args, kwargs: (args, {'new_count': kwargs['double_count'] * 2}),
261
255
  )
262
- # pylint: disable=unused-variable
263
256
  def f_with_badly_deprecated_param(new_count): # pragma: no cover
264
257
  return new_count
265
258
 
266
- # pylint: enable=unused-variable
267
-
268
259
 
269
260
  @duet.sync
270
261
  async def test_deprecated_parameter_async_function():
@@ -293,11 +284,9 @@ async def test_deprecated_parameter_async_function():
293
284
  'Double it yourself.',
294
285
  deadline='v1.2',
295
286
  ):
296
- # pylint: disable=unexpected-keyword-arg
297
287
  # pylint: disable=no-value-for-parameter
298
288
  assert await f(double_count=1) == 2
299
289
  # pylint: enable=no-value-for-parameter
300
- # pylint: enable=unexpected-keyword-arg
301
290
 
302
291
 
303
292
  def test_wrap_module():
@@ -587,7 +576,6 @@ def _repeated_import_path():
587
576
 
588
577
  def _type_repr_in_deprecated_module():
589
578
  # initialize the DeprecatedModuleFinders
590
- # pylint: disable=unused-import
591
579
  import cirq.testing._compat_test_data.fake_a as mod_a
592
580
 
593
581
  expected_repr = "<class 'cirq.testing._compat_test_data.module_a.types.SampleType'>"
@@ -763,8 +751,6 @@ def test_metadata_search_path():
763
751
 
764
752
  def _test_metadata_search_path_inner(): # pragma: no cover
765
753
  # initialize the DeprecatedModuleFinders
766
- # pylint: disable=unused-import
767
-
768
754
  assert importlib.metadata.metadata('numpy')
769
755
 
770
756
 
@@ -805,7 +791,6 @@ def test_type_repr_in_new_module():
805
791
 
806
792
  def _test_type_repr_in_new_module_inner():
807
793
  # initialize the DeprecatedModuleFinders
808
- # pylint: disable=unused-import
809
794
  import cirq.testing._compat_test_data.module_a as mod_a
810
795
 
811
796
  expected_repr = "<class 'cirq.testing._compat_test_data.module_a.types.SampleType'>"
@@ -875,7 +860,6 @@ def test_new_module_is_top_level():
875
860
 
876
861
  def _test_new_module_is_top_level_inner():
877
862
  # sets up the DeprecationFinders
878
- # pylint: disable=unused-import
879
863
  import time
880
864
 
881
865
  # imports a top level module that was also deprecated
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.dev20250603221345"
31
+ __version__ = "1.6.0.dev20250605164716"
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.dev20250603221345"
6
+ assert cirq.__version__ == "1.6.0.dev20250605164716"
cirq/circuits/circuit.py CHANGED
@@ -233,7 +233,6 @@ class AbstractCircuit(abc.ABC):
233
233
  """See `cirq.SupportsDecompose`."""
234
234
  return self.all_operations()
235
235
 
236
- # pylint: disable=function-redefined
237
236
  @overload
238
237
  def __getitem__(self, key: int) -> cirq.Moment:
239
238
  pass
@@ -277,8 +276,6 @@ class AbstractCircuit(abc.ABC):
277
276
 
278
277
  raise TypeError('__getitem__ called with key not of type slice, int, or tuple.')
279
278
 
280
- # pylint: enable=function-redefined
281
-
282
279
  def __str__(self) -> str:
283
280
  return self.to_text_diagram()
284
281
 
@@ -1895,7 +1892,6 @@ class Circuit(AbstractCircuit):
1895
1892
  copied_circuit._placement_cache = None
1896
1893
  return copied_circuit
1897
1894
 
1898
- # pylint: disable=function-redefined
1899
1895
  @overload
1900
1896
  def __setitem__(self, key: int, value: cirq.Moment):
1901
1897
  pass
@@ -1916,8 +1912,6 @@ class Circuit(AbstractCircuit):
1916
1912
  self._moments[key] = value
1917
1913
  self._mutated()
1918
1914
 
1919
- # pylint: enable=function-redefined
1920
-
1921
1915
  def __delitem__(self, key: int | slice):
1922
1916
  del self._moments[key]
1923
1917
  self._mutated()
cirq/circuits/moment.py CHANGED
@@ -538,7 +538,6 @@ class Moment:
538
538
  )
539
539
  return Moment(new_ops)
540
540
 
541
- # pylint: disable=function-redefined
542
541
  @overload
543
542
  def __getitem__(self, key: raw_types.Qid) -> cirq.Operation:
544
543
  pass
@@ -164,9 +164,11 @@ circuit_diagrams = {
164
164
  │ │ │ │
165
165
  3: ─────────────█───1↦0───────█───1↦0─────────────
166
166
  """,
167
- ('decomposed', cca.BipartiteGraphType.COMPLETE, 3):
168
- # pylint: disable=line-too-long
169
- """
167
+ (
168
+ 'decomposed',
169
+ cca.BipartiteGraphType.COMPLETE,
170
+ 3,
171
+ ): """
170
172
  0: ───────────────────────█───0↦1───────────────────────────█───0↦1───────────────────────
171
173
  │ │ │ │
172
174
  1: ─────────────█───0↦1───█───1↦0───█───0↦1───────█───0↦1───█───1↦0───█───0↦1─────────────
@@ -202,7 +204,6 @@ circuit_diagrams = {
202
204
  7: ─────────────────────────────────█───1↦0───────────────────────────────────────────────█───1↦0─────────────────────────────────
203
205
 
204
206
  """,
205
- # pylint: enable=line-too-long
206
207
  (
207
208
  'decomposed',
208
209
  cca.BipartiteGraphType.MATCHING,
@@ -113,7 +113,6 @@ def single_qubit_matrix_gate(matrix: np.ndarray | None) -> QuirkOp | None:
113
113
  if matrix is None or matrix.shape[0] != 2:
114
114
  return None
115
115
 
116
- # pylint: disable=consider-using-f-string
117
116
  matrix = matrix.round(6)
118
117
  matrix_repr = '{{%s+%si,%s+%si},{%s+%si,%s+%si}}' % (
119
118
  np.real(matrix[0, 0]),
@@ -130,7 +130,6 @@ def unitary_eig(
130
130
  return R.diagonal(), V
131
131
 
132
132
 
133
- # pylint: enable=missing-raises-doc
134
133
  def map_eigenvalues(
135
134
  matrix: np.ndarray, func: Callable[[complex], complex], *, atol: float = 1e-8
136
135
  ) -> np.ndarray:
cirq/ops/clifford_gate.py CHANGED
@@ -747,11 +747,7 @@ class SingleQubitCliffordGate(CliffordGate):
747
747
 
748
748
  return NotImplemented
749
749
 
750
- def _act_on_(
751
- self,
752
- sim_state: cirq.SimulationStateBase, # pylint: disable=unused-argument
753
- qubits: Sequence[cirq.Qid], # pylint: disable=unused-argument
754
- ):
750
+ def _act_on_(self, sim_state: cirq.SimulationStateBase, qubits: Sequence[cirq.Qid]):
755
751
  # TODO(#5256) Add the implementation of _act_on_ with CliffordTableauSimulationState.
756
752
  return NotImplemented
757
753
 
cirq/ops/eigen_gate.py CHANGED
@@ -128,11 +128,9 @@ class EigenGate(raw_types.Gate):
128
128
  Child classes should override this method if they have an __init__
129
129
  method with a differing signature.
130
130
  """
131
- # pylint: disable=unexpected-keyword-arg
132
131
  if self._global_shift == 0:
133
132
  return type(self)(exponent=exponent)
134
133
  return type(self)(exponent=exponent, global_shift=self._global_shift)
135
- # pylint: enable=unexpected-keyword-arg
136
134
 
137
135
  def _diagram_exponent(
138
136
  self, args: protocols.CircuitDiagramInfoArgs, *, ignore_global_phase: bool = True
cirq/ops/measure_util.py CHANGED
@@ -90,9 +90,6 @@ def measure_paulistring_terms(
90
90
  return [PauliMeasurementGate([pauli_basis[q]], key=key_func(q)).on(q) for q in pauli_basis]
91
91
 
92
92
 
93
- # pylint: disable=function-redefined
94
-
95
-
96
93
  @overload
97
94
  def measure(
98
95
  *target: raw_types.Qid,
@@ -205,6 +202,3 @@ def measure_each(
205
202
  )
206
203
  qubitsequence = qubits[0] if one_iterable_arg else qubits
207
204
  return [MeasurementGate(1, key_func(q), qid_shape=(q.dimension,)).on(q) for q in qubitsequence]
208
-
209
-
210
- # pylint: enable=function-redefined
cirq/ops/pauli_string.py CHANGED
@@ -232,7 +232,6 @@ class PauliString(raw_types.Operation, Generic[TKey]):
232
232
  def __getitem__(self, key: TKey) -> pauli_gates.Pauli:
233
233
  return self._qubit_pauli_map[key]
234
234
 
235
- # pylint: disable=function-redefined
236
235
  @overload
237
236
  def get(self, key: Any, default: None = None) -> pauli_gates.Pauli | None:
238
237
  pass
@@ -281,8 +280,6 @@ class PauliString(raw_types.Operation, Generic[TKey]):
281
280
  )
282
281
  return NotImplemented
283
282
 
284
- # pylint: enable=function-redefined
285
-
286
283
  @property
287
284
  def gate(self) -> cirq.DensePauliString:
288
285
  """Returns a `cirq.DensePauliString`"""
@@ -897,9 +894,7 @@ class PauliString(raw_types.Operation, Generic[TKey]):
897
894
 
898
895
  if not self.keys() <= set(qubits):
899
896
  raise ValueError('not self.keys() <= set(qubits)')
900
- # pylint: disable=too-many-function-args
901
897
  pauli_mask = [self.get(q, identity.I) for q in qubits]
902
- # pylint: enable=too-many-function-args
903
898
  return dense_pauli_string.DensePauliString(pauli_mask, coefficient=self.coefficient)
904
899
 
905
900
  def conjugated_by(self, clifford: cirq.OP_TREE) -> PauliString:
@@ -1349,7 +1344,6 @@ class MutablePauliString(Generic[TKey]):
1349
1344
  def __delitem__(self, key: TKey):
1350
1345
  del self.pauli_int_dict[key]
1351
1346
 
1352
- # pylint: disable=function-redefined
1353
1347
  @overload
1354
1348
  def get(self, key: TKey, default: None = None) -> cirq.Pauli | None:
1355
1349
  pass
@@ -1363,7 +1357,6 @@ class MutablePauliString(Generic[TKey]):
1363
1357
  result = self.pauli_int_dict.get(key, None)
1364
1358
  return default if result is None else _INT_TO_PAULI[result - 1]
1365
1359
 
1366
- # pylint: enable=function-redefined
1367
1360
  def inplace_before(self, ops: cirq.OP_TREE) -> cirq.MutablePauliString:
1368
1361
  r"""Propagates the pauli string from after to before a Clifford effect.
1369
1362
 
@@ -337,9 +337,7 @@ def test_get(qubit_pauli_map):
337
337
  assert qubit_pauli_map.get(key) == pauli_string.get(key)
338
338
  assert qubit_pauli_map.get(other) is None
339
339
  assert pauli_string.get(other) is None
340
- # pylint: disable=too-many-function-args
341
340
  assert qubit_pauli_map.get(other, 5) == pauli_string.get(other, 5) == 5
342
- # pylint: enable=too-many-function-args
343
341
 
344
342
 
345
343
  @pytest.mark.parametrize('qubit_pauli_map', _sample_qubit_pauli_maps())
@@ -37,7 +37,6 @@ from cirq.ops import (
37
37
  )
38
38
 
39
39
  if TYPE_CHECKING:
40
- # pylint: disable=unused-import
41
40
  import cirq
42
41
 
43
42
 
@@ -357,7 +357,6 @@ def _op_info_with_fallback(
357
357
  return protocols.CircuitDiagramInfo(wire_symbols=symbols)
358
358
 
359
359
 
360
- # pylint: disable=function-redefined
361
360
  @overload
362
361
  def circuit_diagram_info(
363
362
  val: Any, args: CircuitDiagramInfoArgs | None = None
@@ -429,6 +428,3 @@ def circuit_diagram_info(
429
428
  f"object of type '{type(val)}' does have a _circuit_diagram_info_ "
430
429
  "method, but it returned NotImplemented."
431
430
  )
432
-
433
-
434
- # pylint: enable=function-redefined
@@ -308,9 +308,6 @@ def decompose(
308
308
  return [*_decompose_dfs(val, args)]
309
309
 
310
310
 
311
- # pylint: disable=function-redefined
312
-
313
-
314
311
  @overload
315
312
  def decompose_once(val: Any, **kwargs) -> list[cirq.Operation]:
316
313
  pass
@@ -452,9 +449,6 @@ def decompose_once_with_qubits(
452
449
  return decompose_once(val, default, tuple(qubits), flatten=flatten, context=context)
453
450
 
454
451
 
455
- # pylint: enable=function-redefined
456
-
457
-
458
452
  def _try_decompose_into_operations_and_qubits(
459
453
  val: Any,
460
454
  ) -> tuple[list[cirq.Operation] | None, Sequence[cirq.Qid], tuple[int, ...]]:
@@ -28,7 +28,6 @@ RaiseTypeErrorIfNotProvided: tuple[list[Any]] = ([],)
28
28
  TDefault = TypeVar('TDefault')
29
29
 
30
30
 
31
- # pylint: disable=function-redefined
32
31
  @overload
33
32
  def inverse(val: cirq.Gate) -> cirq.Gate:
34
33
  pass
@@ -100,7 +99,6 @@ def inverse(val: Any, default: Any = RaiseTypeErrorIfNotProvided) -> Any:
100
99
  # Check if object defines an inverse via __pow__.
101
100
  raiser = getattr(val, '__pow__', None)
102
101
 
103
- # pylint: disable=not-callable
104
102
  result = NotImplemented if raiser is None else raiser(-1)
105
103
  if result is not NotImplemented:
106
104
  return result
@@ -121,6 +119,3 @@ def inverse(val: Any, default: Any = RaiseTypeErrorIfNotProvided) -> Any:
121
119
  "It has no __pow__ method (or the method returned NotImplemented) "
122
120
  "and it isn't an iterable of invertible objects."
123
121
  )
124
-
125
-
126
- # pylint: enable=function-redefined
@@ -155,7 +155,6 @@ def obj_to_dict_helper(obj: Any, attribute_names: Iterable[str]) -> dict[str, An
155
155
  return d
156
156
 
157
157
 
158
- # pylint: enable=redefined-builtin
159
158
  def dataclass_json_dict(obj: Any) -> dict[str, Any]:
160
159
  """Return a dictionary suitable for `_json_dict_` from a dataclass.
161
160
 
@@ -460,7 +459,6 @@ def cirq_type_from_json(type_str: str, resolvers: Sequence[JsonResolver] | None
460
459
  raise ValueError(f"Type {type_str} maps to a factory method instead of a type.")
461
460
 
462
461
 
463
- # pylint: disable=function-redefined
464
462
  @overload
465
463
  def to_json(
466
464
  obj: Any, file_or_fn: IO | pathlib.Path | str, *, indent=2, separators=None, cls=CirqEncoder
@@ -517,7 +515,6 @@ def to_json(
517
515
  return None
518
516
 
519
517
 
520
- # pylint: enable=function-redefined
521
518
  def read_json(
522
519
  file_or_fn: None | IO | pathlib.Path | str = None,
523
520
  *,
@@ -71,6 +71,3 @@ def mul(lhs: Any, rhs: Any, default: Any = RaiseTypeErrorIfNotProvided) -> Any:
71
71
  if default is not RaiseTypeErrorIfNotProvided:
72
72
  return default
73
73
  raise TypeError(f"unsupported operand type(s) for *: '{type(lhs)}' and '{type(rhs)}'")
74
-
75
-
76
- # pylint: enable=function-redefined, redefined-builtin
@@ -26,7 +26,7 @@ RaiseTypeErrorIfNotProvided: Any = ([],)
26
26
  TDefault = TypeVar('TDefault')
27
27
 
28
28
 
29
- # pylint: disable=function-redefined, redefined-builtin
29
+ # pylint: disable=redefined-builtin
30
30
  @overload
31
31
  def pow(val: cirq.Gate, exponent: Any) -> cirq.Gate:
32
32
  pass
@@ -57,7 +57,7 @@ def pow(val: Any, exponent: Any, default: TDefault) -> Any:
57
57
  pass
58
58
 
59
59
 
60
- # pylint: enable=function-redefined
60
+ # pylint: enable=redefined-builtin
61
61
 
62
62
 
63
63
  def pow(val: Any, exponent: Any, default: Any = RaiseTypeErrorIfNotProvided) -> Any:
@@ -96,6 +96,3 @@ def pow(val: Any, exponent: Any, default: Any = RaiseTypeErrorIfNotProvided) ->
96
96
  raise TypeError(
97
97
  f"object of type '{type(val)}' does have a __pow__ method, but it returned NotImplemented."
98
98
  )
99
-
100
-
101
- # pylint: enable=redefined-builtin
cirq/protocols/qasm.py CHANGED
@@ -129,7 +129,6 @@ class SupportsQasmWithArgsAndQubits(Protocol):
129
129
  pass
130
130
 
131
131
 
132
- # pylint: disable=function-redefined
133
132
  def qasm(
134
133
  val: Any,
135
134
  *,
@@ -172,7 +171,6 @@ def qasm(
172
171
  kwargs: dict[str, Any] = {}
173
172
  if args is not None:
174
173
  kwargs['args'] = args
175
- # pylint: disable=not-callable
176
174
  if qubits is not None:
177
175
  kwargs['qubits'] = tuple(qubits)
178
176
  try:
@@ -182,7 +180,6 @@ def qasm(
182
180
  "cirq.qasm does not expect qubits or args to be specified"
183
181
  f"for the given value of type {type(val)}."
184
182
  ) from error
185
- # pylint: enable=not-callable
186
183
  if result is not None and result is not NotImplemented:
187
184
  return result
188
185
 
@@ -194,6 +191,3 @@ def qasm(
194
191
  f"object of type '{type(val)}' does have a _qasm_ method, "
195
192
  "but it returned NotImplemented or None."
196
193
  )
197
-
198
-
199
- # pylint: enable=function-redefined
@@ -406,7 +406,6 @@ def test_run_param_resolver(dtype: type[np.complexfloating], split: bool):
406
406
  param_resolver = {'b0': b0, 'b1': b1}
407
407
  result = simulator.run(circuit, param_resolver=param_resolver)
408
408
  np.testing.assert_equal(result.measurements, {'q(0)': [[b0]], 'q(1)': [[b1]]})
409
- # pylint: disable=line-too-long
410
409
  np.testing.assert_equal(result.params, cirq.ParamResolver(param_resolver))
411
410
 
412
411
 
cirq/study/sweeps.py CHANGED
@@ -109,7 +109,6 @@ class Sweep(metaclass=abc.ABCMeta):
109
109
  for params in self.param_tuples():
110
110
  yield resolver.ParamResolver(collections.OrderedDict(params))
111
111
 
112
- # pylint: disable=function-redefined
113
112
  @overload
114
113
  def __getitem__(self, val: int) -> resolver.ParamResolver:
115
114
  pass
@@ -139,8 +138,6 @@ class Sweep(metaclass=abc.ABCMeta):
139
138
 
140
139
  return ListSweep(results)
141
140
 
142
- # pylint: enable=function-redefined
143
-
144
141
  @abc.abstractmethod
145
142
  def param_tuples(self) -> Iterator[Params]:
146
143
  """An iterator over (key, value) pairs assigning Symbol key to value."""
cirq/testing/logs.py CHANGED
@@ -96,6 +96,3 @@ def assert_logs(
96
96
  f'{match} expected to appear in log messages but it was '
97
97
  f'not found. Log messages: {msgs}.'
98
98
  )
99
-
100
-
101
- # pylint: enable=missing-raises-doc
@@ -19,6 +19,7 @@ from __future__ import annotations
19
19
  from typing import Sequence
20
20
 
21
21
  import numpy as np
22
+ import scipy.linalg
22
23
 
23
24
  import cirq
24
25
  from cirq import ops, transformers as opt
@@ -47,24 +48,13 @@ def three_qubit_matrix_to_operations(
47
48
 
48
49
  Raises:
49
50
  ValueError: If the u matrix is non-unitary or not of shape (8,8).
50
- ImportError: If the decomposition cannot be done because the SciPy version is less than
51
- 1.5.0 and so does not contain the required `cossin` method.
52
51
  """
53
52
  if np.shape(u) != (8, 8):
54
53
  raise ValueError(f"Expected unitary matrix with shape (8,8) got {np.shape(u)}")
55
54
  if not cirq.is_unitary(u, atol=atol):
56
55
  raise ValueError(f"Matrix is not unitary: {u}")
57
56
 
58
- try:
59
- from scipy.linalg import cossin
60
- except ImportError: # pragma: no cover
61
- raise ImportError(
62
- "cirq.three_qubit_unitary_to_operations requires "
63
- "SciPy 1.5.0+, as it uses the cossin function. Please"
64
- " upgrade scipy in your environment to use this "
65
- "function!"
66
- )
67
- (u1, u2), theta, (v1h, v2h) = cossin(u, 4, 4, separate=True)
57
+ (u1, u2), theta, (v1h, v2h) = scipy.linalg.cossin(u, 4, 4, separate=True)
68
58
 
69
59
  cs_ops = _cs_to_ops(q0, q1, q2, theta)
70
60
  if len(cs_ops) > 0 and cs_ops[-1] == cirq.CZ(q2, q0):
@@ -15,7 +15,6 @@
15
15
  from __future__ import annotations
16
16
 
17
17
  from random import random
18
- from typing import Callable
19
18
 
20
19
  import numpy as np
21
20
  import pytest
@@ -31,20 +30,6 @@ from cirq.transformers.analytical_decompositions.three_qubit_decomposition impor
31
30
  )
32
31
 
33
32
 
34
- def _skip_if_scipy(*, version_is_greater_than_1_5_0: bool) -> Callable[[Callable], Callable]:
35
- def decorator(func): # pragma: no cover
36
- try:
37
- # pylint: disable=unused-import
38
- from scipy.linalg import cossin
39
-
40
- return None if version_is_greater_than_1_5_0 else func
41
- except ImportError:
42
- return func if version_is_greater_than_1_5_0 else None
43
-
44
- return decorator
45
-
46
-
47
- @_skip_if_scipy(version_is_greater_than_1_5_0=False)
48
33
  @pytest.mark.parametrize(
49
34
  "u",
50
35
  [
@@ -70,7 +55,6 @@ def test_three_qubit_matrix_to_operations(u) -> None:
70
55
  assert num_two_qubit_gates <= 20, f"expected at most 20 CZ/CNOTs got {num_two_qubit_gates}"
71
56
 
72
57
 
73
- @_skip_if_scipy(version_is_greater_than_1_5_0=False)
74
58
  def test_three_qubit_matrix_to_operations_errors() -> None:
75
59
  a, b, c = cirq.LineQubit.range(3)
76
60
  with pytest.raises(ValueError, match="(8,8)"):
@@ -79,17 +63,6 @@ def test_three_qubit_matrix_to_operations_errors() -> None:
79
63
  cirq.three_qubit_matrix_to_operations(a, b, c, cirq.unitary(cirq.CCX) * 2)
80
64
 
81
65
 
82
- # on environments with scipy <1.5.0 this will not be sufficient to cover the
83
- # full three_qubit_matrix_to_operations method. In case we ever introduce a CI
84
- # environment like that, we'll need to ignore the coverage somehow conditionally on
85
- # the scipy version.
86
- @_skip_if_scipy(version_is_greater_than_1_5_0=True)
87
- def test_three_qubit_matrix_to_operations_scipy_error() -> None: # pragma: no cover
88
- a, b, c = cirq.LineQubit.range(3)
89
- with pytest.raises(ImportError, match="three_qubit.*1.5.0+"):
90
- cirq.three_qubit_matrix_to_operations(a, b, c, np.eye(8))
91
-
92
-
93
66
  @pytest.mark.parametrize(
94
67
  ["theta", "num_czs"],
95
68
  [
@@ -745,7 +745,7 @@ def test_cross_clifford_pieces_filling_merge():
745
745
 
746
746
  6: ───────────────────────────────────────────────────────────PhXZ(a=0.2,x=0.2,z=0.1)───X─────────────────────────@───PhXZ(a=0.8,x=0.8,z=0.5)─────H────────────────────────
747
747
  """
748
- # pylint: enable
748
+ # pylint: enable=line-too-long
749
749
  qubits = cirq.LineQubit.range(7)
750
750
  phased_xz_gate = cirq.PhasedXZGate(axis_phase_exponent=0.2, x_exponent=0.2, z_exponent=0.1)
751
751
  assert_dd(
@@ -193,8 +193,6 @@ def test_unphaseable_causes_earlier_merge_without_size_increase():
193
193
  pass
194
194
 
195
195
  u = UnknownGate()
196
-
197
- # pylint: disable=not-callable
198
196
  q = cirq.NamedQubit('q')
199
197
  assert_optimizes(
200
198
  before=cirq.Circuit(
@@ -12,8 +12,6 @@
12
12
  # See the License for the specific language governing permissions and
13
13
  # limitations under the License.
14
14
 
15
- # pylint: skip-file
16
-
17
15
  from __future__ import annotations
18
16
 
19
17
  import numpy as np
@@ -102,6 +100,7 @@ def test_merge_k_qubit_unitaries_raises() -> None:
102
100
 
103
101
 
104
102
  def test_merge_complex_circuit_preserving_moment_structure() -> None:
103
+ # pylint: disable=line-too-long
105
104
  q = cirq.LineQubit.range(3)
106
105
  c_orig = cirq.Circuit(
107
106
  cirq.Moment(cirq.H.on_each(*q)),
cirq/value/angle.py CHANGED
@@ -87,7 +87,6 @@ def chosen_angle_to_canonical_half_turns(
87
87
  )
88
88
 
89
89
 
90
- # pylint: disable=function-redefined
91
90
  @overload
92
91
  def canonicalize_half_turns(half_turns: float) -> float:
93
92
  pass
@@ -108,6 +107,3 @@ def canonicalize_half_turns(half_turns: type_alias.TParamVal) -> type_alias.TPar
108
107
  if half_turns > 1:
109
108
  half_turns -= 2
110
109
  return half_turns
111
-
112
-
113
- # pylint: enable=function-redefined
cirq/value/digits.py CHANGED
@@ -120,7 +120,6 @@ def big_endian_digits_to_int(digits: Iterable[int], *, base: int | Iterable[int]
120
120
  return result
121
121
 
122
122
 
123
- # pylint: disable=function-redefined
124
123
  @overload
125
124
  def big_endian_int_to_digits(val: int, *, digit_count: int, base: int) -> list[int]:
126
125
  pass
@@ -194,6 +193,3 @@ def big_endian_int_to_digits(
194
193
  )
195
194
 
196
195
  return result[::-1]
197
-
198
-
199
- # pylint: enable=function-redefined
cirq/value/linear_dict.py CHANGED
@@ -178,7 +178,6 @@ class LinearDict(Generic[TVector], MutableMapping[TVector, 'cirq.TParamValComple
178
178
  snapshot = self.copy().clean(atol=0)
179
179
  return snapshot._terms.items()
180
180
 
181
- # pylint: disable=function-redefined
182
181
  @overload
183
182
  def update(
184
183
  self, other: Mapping[TVector, cirq.TParamValComplex], **kwargs: cirq.TParamValComplex
@@ -221,8 +220,6 @@ class LinearDict(Generic[TVector], MutableMapping[TVector, 'cirq.TParamValComple
221
220
  return default
222
221
  return self._terms.get(vector)
223
222
 
224
- # pylint: enable=function-redefined
225
-
226
223
  def __contains__(self, vector: Any) -> bool:
227
224
  return vector in self._terms and self._terms[vector] != 0
228
225
 
cirq/value/timestamp.py CHANGED
@@ -58,7 +58,6 @@ class Timestamp:
58
58
  def __radd__(self, other) -> Timestamp:
59
59
  return self.__add__(other)
60
60
 
61
- # pylint: disable=function-redefined
62
61
  @overload
63
62
  def __sub__(self, other: Timestamp) -> Duration:
64
63
  pass
@@ -80,8 +79,6 @@ class Timestamp:
80
79
  return Duration(picos=self._picos - other._picos)
81
80
  return NotImplemented
82
81
 
83
- # pylint: enable=function-redefined
84
-
85
82
  def __eq__(self, other):
86
83
  if not isinstance(other, type(self)):
87
84
  return NotImplemented
@@ -123,7 +123,6 @@ def _value_equality_getstate(self: _SupportsValueEquality) -> dict[str, Any]:
123
123
  return state
124
124
 
125
125
 
126
- # pylint: disable=function-redefined
127
126
  @overload
128
127
  def value_equality(
129
128
  cls: type,
@@ -258,6 +257,3 @@ def value_equality(
258
257
  setattr(cls, '_approx_eq_', _value_equality_approx_eq)
259
258
 
260
259
  return cls
261
-
262
-
263
- # pylint: enable=function-redefined
cirq/vis/heatmap.py CHANGED
@@ -65,7 +65,6 @@ class PolygonUnit:
65
65
  class Heatmap:
66
66
  """Distribution of a value in 2D qubit lattice as a color map."""
67
67
 
68
- # pylint: disable=function-redefined
69
68
  @overload
70
69
  def __init__(self, value_map: Mapping[QubitTuple, SupportsFloat], **kwargs):
71
70
  pass
@@ -87,7 +87,6 @@ def test_group_settings_greedy_init_state_compat_sparse() -> None:
87
87
  cirq.work.InitObsSetting(init_state=cirq.KET_ZERO(q1), observable=cirq.Z(q1)),
88
88
  ]
89
89
  grouped_settings = cirq.work.group_settings_greedy(settings)
90
- # pylint: disable=line-too-long
91
90
  grouped_settings_should_be = {
92
91
  cirq.work.InitObsSetting(
93
92
  init_state=cirq.KET_PLUS(q0) * cirq.KET_ZERO(q1), observable=cirq.X(q0) * cirq.Z(q1)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cirq-core
3
- Version: 1.6.0.dev20250603221345
3
+ Version: 1.6.0.dev20250605164716
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
@@ -1,11 +1,11 @@
1
1
  cirq/__init__.py,sha256=ATT0Sbu4iemRSpJ0xGabMJJ85kEeGJZ0TPirye6BWwM,28336
2
2
  cirq/_compat.py,sha256=BCAAJx19-5UXHv3HpCzewinx-b9eDs_C1GHPXPfKLIY,29478
3
- cirq/_compat_test.py,sha256=ZSmenkbqEfRJpGsvutmV8vgIlfZCWj8GAVgi3t5YRso,34635
3
+ cirq/_compat_test.py,sha256=05AfYsnU6FPiM47YQ_b6tN2hxV67GXD7vkxYT9FOybI,34032
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=qsDodKLl4FqIhWv9SguAUDm7DTsASB72VJ033Fn_Ys4,1206
8
- cirq/_version_test.py,sha256=GL6enzyh170ekRbNCSyje9sEY81-b72UaQ9EkHvM2yg,155
7
+ cirq/_version.py,sha256=3XaC56Xm3dSFyYRjs_VWwqfFqkt0tr12qg8zOow_BYw,1206
8
+ cirq/_version_test.py,sha256=F5NTCqm8MNWTvxOrY8SqE7AXRhPtLbiEUrnn1VpE0UA,155
9
9
  cirq/conftest.py,sha256=X7yLFL8GLhg2CjPw0hp5e_dGASfvHx1-QT03aUbhKJw,1168
10
10
  cirq/json_resolver_cache.py,sha256=S-zUVI4D_XnAxyR6z7WHDImCVmB_awJp6EStD1-CNPU,13621
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=om-XK7MQzTXssrKf8KOA4OPCZwOUQ4FWfVmFlV-6ctk,118908
19
+ cirq/circuits/circuit.py,sha256=6jU6hpvfyJgZGsEGRhovE_A_4VCmwbs7pVdtYw46zGs,118744
20
20
  cirq/circuits/circuit_operation.py,sha256=5LN0vXQT8hoUP8Vhkozm3d6hPqw0BUX5WBhKMr5qOng,36252
21
21
  cirq/circuits/circuit_operation_test.py,sha256=vMSqpBQQSDlfsWtdERNueDnGhVE7_F3uhmgsl_2qfLo,49397
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=5yQOqFI-_ow7O0PX0ToulzpsJq8J8AUVCIJg-Oeqaqc,25826
27
+ cirq/circuits/moment.py,sha256=WGsUMmdjHnPbvaIbAOUoCCK-qqldN7RldQm58--2ccw,25785
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
@@ -37,7 +37,7 @@ cirq/contrib/json.py,sha256=ITiaznB1mndxtasVO5QTeu-31h3vgGTBCGFzousOxHE,788
37
37
  cirq/contrib/json_test.py,sha256=9wJb-N1Sv_Epz548el6g6iZYB5VgPk2eOBHYur0V0ho,1178
38
38
  cirq/contrib/acquaintance/__init__.py,sha256=mJgE6eQjZ0csa7hrGYkb3lC86c4hY4LvmpY8QEOIA8s,3201
39
39
  cirq/contrib/acquaintance/bipartite.py,sha256=9BusD-thMIfOEZeDuUEBnZUJoOJ8bc-DzNJTVMOrVR8,6494
40
- cirq/contrib/acquaintance/bipartite_test.py,sha256=sLygAb40mRfEk1bAzgPf1mMlgIqrWvhay8SW5aTSfwk,16100
40
+ cirq/contrib/acquaintance/bipartite_test.py,sha256=0Hxie-d64f5IsJ97yoQZFsODSvd0K72UaazJdEgMQWw,16056
41
41
  cirq/contrib/acquaintance/devices.py,sha256=RV03R0Ie_OGAQXQ80TQZWvs-D9443AjTXZcXSAkEskg,3051
42
42
  cirq/contrib/acquaintance/devices_test.py,sha256=l76xfjzmYhvWash8_XDUKhqFkfTBT-rFqdfbjLbxreI,1243
43
43
  cirq/contrib/acquaintance/executor.py,sha256=PcdI1a8H1KrNWI0Es8S4PdEKrvC1vG-K8lPHcZiaymM,8626
@@ -135,7 +135,7 @@ cirq/contrib/quirk/__init__.py,sha256=0c14toTDI-aopiJjaGre6HGnXA6Vq7zs8Hun9whUEh
135
135
  cirq/contrib/quirk/export_to_quirk.py,sha256=vbzG3LzqlZfRxdqVIdYoqFalBfkFHUtE762rCVTYNqs,3860
136
136
  cirq/contrib/quirk/export_to_quirk_test.py,sha256=WaPfHVrC06yzIsJ91M0vR18D9dL0RpXuJcZ5Xz4-KQY,12149
137
137
  cirq/contrib/quirk/linearize_circuit.py,sha256=ackWBymRhMLOL9MBvPkamXLfOQG0xDKOHhP01_l1G9Y,1581
138
- cirq/contrib/quirk/quirk_gate.py,sha256=mldzqkKYD_KlY3gkI4ujrHn3Xlp1L2ODHKyQr6eL8Gk,7232
138
+ cirq/contrib/quirk/quirk_gate.py,sha256=-nfwb4y-gIuFNVyFu_RT47p-7MUV-3wvcpWab5h2mbI,7186
139
139
  cirq/contrib/routing/__init__.py,sha256=ktb3I20eDrRtlywE_JR9yHZ_YHDC3UQn6xB-S6GTaTs,1279
140
140
  cirq/contrib/routing/device.py,sha256=5BWKLh5AIJNNLNoUAr-ROHF87JSK75x5Hu4V2SRo6cU,2912
141
141
  cirq/contrib/routing/device_test.py,sha256=60ZAstzmHpw9XxrYd3HOMpWnXaEWmH2yq_zJmxLhC8E,1962
@@ -254,7 +254,7 @@ cirq/ion/__init__.py,sha256=F6tf4JZOGpDdxX0FxT42qgq8rF96ZTFHMJ0OV09Yj1c,787
254
254
  cirq/linalg/__init__.py,sha256=0dSlIBy-TVzf7b_-rLLlrS8ZFkgCfYg0pJjWs72xYOk,4045
255
255
  cirq/linalg/combinators.py,sha256=7V9oNSojc466NvOXyt4FMu50yDQ77iM5N4oZ37fV9tc,5347
256
256
  cirq/linalg/combinators_test.py,sha256=GohGZwFF87XW37sZtldaG5TlDp5-DA0Nc7k2gTZIlNo,4922
257
- cirq/linalg/decompositions.py,sha256=q0h8waz3Xn_KjY83glyJVxk4ZfXbh1Dz-uXriWv_VjA,38573
257
+ cirq/linalg/decompositions.py,sha256=gyQQ3iwuar22ZwOV3qV9nmc6LrPr-86NMlMNS8UMIjg,38537
258
258
  cirq/linalg/decompositions_test.py,sha256=b61HGNDPhykEazp48lHk8Kgw08cKCMW4ZHtVDN8yDFA,25472
259
259
  cirq/linalg/diagonalize.py,sha256=3PpGmlI7CCkQS3JKr0AkgdHOZedXLniZkxmUtpCNQPk,10074
260
260
  cirq/linalg/diagonalize_test.py,sha256=c6-ksL2PDZ5hqr2ib2iS0uEnJuCHSv16cuiJK4PLjok,9161
@@ -277,7 +277,7 @@ cirq/ops/boolean_hamiltonian.py,sha256=x25fraM9NNs-XzDKDl2AZ1AMpkVovfe-dNm_0wOol
277
277
  cirq/ops/boolean_hamiltonian_test.py,sha256=_4mFFrbO9C21oZYutr_pl01_bqDDxvgY_h4DWKGkse0,8630
278
278
  cirq/ops/classically_controlled_operation.py,sha256=hj8oShyWpOD4bmKS5CTmxNftywkCnHTFi28kku1clJM,10386
279
279
  cirq/ops/classically_controlled_operation_test.py,sha256=YA6t7cqFAG7UDIHftZ46gmMKMv-1XxLnKYUMozJjGc4,50653
280
- cirq/ops/clifford_gate.py,sha256=vdN41tYaijabnDtFFOz-4Lx1uOt7ycnY5d1iO-IdZX4,40156
280
+ cirq/ops/clifford_gate.py,sha256=BMjCuJq2fTFZm-Sv475qDqwsFof1kxru8zNDJOTFkL8,40055
281
281
  cirq/ops/clifford_gate_test.py,sha256=63NR6oLpx9hn21-0b_YpYLk32GIsd_P0k0A_4EJxxAE,41313
282
282
  cirq/ops/common_channels.py,sha256=BD8-qJDGITOSP0bJVcWGgjbI5dj2dwFkSzzWb-qgfcc,37026
283
283
  cirq/ops/common_channels_test.py,sha256=Qzw7nDrWgO1GDB7qkN2YUZi3NDswvvBJ9TEnSNakJX4,30755
@@ -295,7 +295,7 @@ cirq/ops/dense_pauli_string.py,sha256=1TijNu1D2HIbbnwLbT_f546R2L4OCQtm1bKjqhno1K
295
295
  cirq/ops/dense_pauli_string_test.py,sha256=JLfTLO13Qnr9c5jZOPBTJWD4409vm7uV6vi8R7m1kOg,21517
296
296
  cirq/ops/diagonal_gate.py,sha256=HNMxcgKgfZ2ZcXGaPhcBp6yOwu_stpSN3_GtNeWnR5s,8909
297
297
  cirq/ops/diagonal_gate_test.py,sha256=JRQWrL4cEYzVjwal-EewyIPgThUwLdrE6f9i7ifd6Rk,6319
298
- cirq/ops/eigen_gate.py,sha256=DMDlLJLSSxYD22CTvvx8hQNQyGSzF4bBysDKMjg1DbE,17407
298
+ cirq/ops/eigen_gate.py,sha256=BLooTrKX1tJiBjIVMfC1w7LLYbAco78oJW3Z4hcJLrc,17310
299
299
  cirq/ops/eigen_gate_test.py,sha256=gk0EPzOLY_KEJxVvp6HyDGHGg3ybcbhUtEj1OETaWCA,16444
300
300
  cirq/ops/fourier_transform.py,sha256=JMledJB0tPjLlIlG9bfapJSqass94rXkAheXragQxq8,7455
301
301
  cirq/ops/fourier_transform_test.py,sha256=sX5TfZd9-n1WTyZcqOQ0x6yyI8k6rasywijMo3bc1ls,6426
@@ -319,7 +319,7 @@ cirq/ops/linear_combinations.py,sha256=AQA0aFDuHXks44fFtevrc2Zl1chleSlf1A0LkmrZr
319
319
  cirq/ops/linear_combinations_test.py,sha256=EYqrWlFFThv8dl5B_9yIckEn_z3-Nfzh7rdVzGpIVWM,67351
320
320
  cirq/ops/matrix_gates.py,sha256=w-yDz2ZmIDiSTLO6Qhp6NrJJFJOJIjrt3okK7rRcZ68,10309
321
321
  cirq/ops/matrix_gates_test.py,sha256=5ZVdkTODOXKv5fi3xDqJA0gc9cYBMTd-KuKHyK-dxHI,14261
322
- cirq/ops/measure_util.py,sha256=wtq09zJ3If9eYwxCG6hvy8hCdQWu1DIzKKcsKsmAfVo,7338
322
+ cirq/ops/measure_util.py,sha256=iT7vrYLTo6L4z4_Zdm-8e8iiiKyQgF2v9Ui74Tg52aw,7261
323
323
  cirq/ops/measure_util_test.py,sha256=WrbR2jr_bFXxpQe8n3ANLAKYo1hcf-SlgsFOi-ULRXU,5343
324
324
  cirq/ops/measurement_gate.py,sha256=i7ThYTd1xdzOG274jzFnzqEz5Qmv6wggcubWa-3FDZE,11874
325
325
  cirq/ops/measurement_gate_test.py,sha256=SPVD8DTc0Kmkazp7jmUIVHfELihkK_SFu3aXSw-uHbc,18335
@@ -339,12 +339,12 @@ cirq/ops/pauli_interaction_gate.py,sha256=1drxD57PLCmp7dI9p5oDX2HPzsqwh0rrqHltUj
339
339
  cirq/ops/pauli_interaction_gate_test.py,sha256=9IGQjf4cRNe1EAsxVJjTMysoO2TxUhDlp-6lXJuAYD8,4643
340
340
  cirq/ops/pauli_measurement_gate.py,sha256=OzbQeMzr9cHQsai8K-usg3Il74o8gdXZLksLuYr8RcU,7113
341
341
  cirq/ops/pauli_measurement_gate_test.py,sha256=BVTUl5EwLrKwYZmEWmVHYu15tH0L9EkF8SYrm0eL0HI,6814
342
- cirq/ops/pauli_string.py,sha256=rD7lIXDwKrHY-LFDId2vvZp4ZPLrMnvB-y4tNs5uEoA,66509
342
+ cirq/ops/pauli_string.py,sha256=sIU4ykQoAVRfBMfMtC_qSa31kJOVEqpygr5lqst2pic,66249
343
343
  cirq/ops/pauli_string_phasor.py,sha256=JLKZem7rdshQ0doNvFMJmP7cLhl9lCsHAI1QlOmbmrg,18207
344
344
  cirq/ops/pauli_string_phasor_test.py,sha256=-1mB1WLEFlrKnSfcgR1LabTaeLYf2bvcJQdWxEImGH4,27767
345
345
  cirq/ops/pauli_string_raw_types.py,sha256=lXW-Fv2TTv77g_7VMdQun33y4reD4p7dS7g9Nm1Id20,2256
346
346
  cirq/ops/pauli_string_raw_types_test.py,sha256=jjFEbQxGsazsR8p4y-EK7SaTryRWagR9Hi7YuixXi6A,2684
347
- cirq/ops/pauli_string_test.py,sha256=Z1H2K3bp8oCcWTBEWOTeRBhwUWukRsxHyGFEILfo46o,73823
347
+ cirq/ops/pauli_string_test.py,sha256=rhdKqyfF9w3MDCOasKpYzb6TT5xc1seSVdGWlMyKXfI,73734
348
348
  cirq/ops/pauli_sum_exponential.py,sha256=Zq8YBMZ7sLLEPQuoX4uR95I9VY4C38Ma8FtOEjQGr3k,4861
349
349
  cirq/ops/pauli_sum_exponential_test.py,sha256=u9fVBUMuiIb6xOPC2GRTR3zFUeO6N3vanejUk5_u9_8,5485
350
350
  cirq/ops/permutation_gate.py,sha256=CiAWDXloj3kszU-aEarBaCXcK73_6vJkcnnHWPKjVY8,4211
@@ -374,7 +374,7 @@ cirq/ops/swap_gates.py,sha256=mEDVB4pdBsbenaOahrNtAcE2B1ZPW-4vGq079rECxf4,11743
374
374
  cirq/ops/swap_gates_test.py,sha256=8Yee6RgkQahsnB92ZD-rTb9dNqMLXdBKlgWC8qWd2uo,7624
375
375
  cirq/ops/tags.py,sha256=nBKqDnPHunxABIOqSAHsVb2hByRAJSfGCJjTC6-AbTY,2307
376
376
  cirq/ops/tags_test.py,sha256=EUCAjFYsQ98r6eo8XUNJoQCKMRCc4KvcqXUZAzfPqiE,1210
377
- cirq/ops/three_qubit_gates.py,sha256=IsuV22fi_KAn6Oo-IIfDLEKXsSA37EUsuRXn74bbFJ8,28211
377
+ cirq/ops/three_qubit_gates.py,sha256=DTxExMVcWRW8mmZnQrW6HQLUYbty0I_INAGaFxUh5DY,28175
378
378
  cirq/ops/three_qubit_gates_test.py,sha256=r9bO7noLCUIGhSprE-KUTlnrf16IEoAhy93Obi6oL18,11951
379
379
  cirq/ops/two_qubit_diagonal_gate.py,sha256=m2wnFpi0sHA9cxMa2cqwRYGQIlbyTGohMTLdVVQZ2-U,5377
380
380
  cirq/ops/two_qubit_diagonal_gate_test.py,sha256=pv24VMf2yQ-2gaHg_EUwWx5tAFvXo47_sKzdbdCPhRY,4100
@@ -393,13 +393,13 @@ 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=J5BYgK29w-8ASryAEQrA6gRmiQEM9VfctJYTPvOzpmM,15896
396
+ cirq/protocols/circuit_diagram_info_protocol.py,sha256=SSF5JXqEOU9s0eWXJvWaWbaZcz1XiB57pRSxkD2LqWA,15821
397
397
  cirq/protocols/circuit_diagram_info_protocol_test.py,sha256=sjXD0_EDNhKpDUBC1f-0vu8S4jyFz0Qtb2xRAEozXZg,10774
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
401
401
  cirq/protocols/control_key_protocol_test.py,sha256=fNDDkf4mQpA_tKuhX1e2BJN72v9HdGftgd79sOqREJE,1014
402
- cirq/protocols/decompose_protocol.py,sha256=lWKT03Aij0TdcvQTkYAGFUfOLytupi3JABz4X9jxkSo,18806
402
+ cirq/protocols/decompose_protocol.py,sha256=uNptw0F1SxJRE8TDdcuoLdxd-B50brbJ8S5bQUPzRCs,18729
403
403
  cirq/protocols/decompose_protocol_test.py,sha256=sSiycmk4kMYC32IKuTjAoQBzfmM5sE3hzhZd1Dzd6rE,16144
404
404
  cirq/protocols/equal_up_to_global_phase_protocol.py,sha256=y-GPOImHgdjVqXF-qE3SUmlekF6-zI0tgi0E2nTdW1M,4106
405
405
  cirq/protocols/equal_up_to_global_phase_protocol_test.py,sha256=EDfWnCuYAVfcvBXHYoZ0lDukNEGG2c53vzP7s8jHLKA,6050
@@ -408,9 +408,9 @@ cirq/protocols/has_stabilizer_effect_protocol_test.py,sha256=T6-vtMO-eBXIMRur1nl
408
408
  cirq/protocols/has_unitary_protocol.py,sha256=M2GzrmlJT4Zu4H-Z-PPrwVyGAXNMM7etwwMLnHOgFyE,5386
409
409
  cirq/protocols/has_unitary_protocol_test.py,sha256=X78xt3SP-Tx5pflit5X-ZiC5zf9EmuUdwXXApuGNASM,5861
410
410
  cirq/protocols/hash_from_pickle_test.py,sha256=ghLwtXySQgya5flt4rSNiuK4nqRfiFlZh7d9o7nmeXc,4642
411
- cirq/protocols/inverse_protocol.py,sha256=CVsCzaePc_p1WgRENxyxsptGZbh_rk22OnNxNyvKndQ,4075
411
+ cirq/protocols/inverse_protocol.py,sha256=tHaY8-dfd0SD59v3DZ_zpwz7lwFrraPExEnIgn1T0RI,3965
412
412
  cirq/protocols/inverse_protocol_test.py,sha256=5RoZfSRzBvpGpLdg1XKYdB6qy-GkDvZsATUvxdFrLJ0,2067
413
- cirq/protocols/json_serialization.py,sha256=--4o7404FM34Q8aXxtmM5tmVgdT24E55UBiqno2OB8Y,24628
413
+ cirq/protocols/json_serialization.py,sha256=z7Yu2vsNabRkdeYyIuNCoXATHkrOGreTRShNyN0Fjuc,24520
414
414
  cirq/protocols/json_serialization_test.py,sha256=xDRylmud660G3A-mSv8FLZvRiG59mBsY6qK-j3gwvP4,28109
415
415
  cirq/protocols/kraus_protocol.py,sha256=ssojYrkve1dtnodTqqCzBje1fsTec5utxIQMsxtZ1Ow,9310
416
416
  cirq/protocols/kraus_protocol_test.py,sha256=51eJ3r3Kx10rG-1hPjcfcODeUO3PFQmwU9ATMnhTWDw,5495
@@ -418,15 +418,15 @@ cirq/protocols/measurement_key_protocol.py,sha256=JU7XbZfR7o6Wcv5qRJisp3ZAWwW9Fx
418
418
  cirq/protocols/measurement_key_protocol_test.py,sha256=s6X7rP0NA3RBUhz_Z6f1YiGGtpajbC4PYiq-LZ8_uQw,8813
419
419
  cirq/protocols/mixture_protocol.py,sha256=K34KJ0HUaecaml3E6JfpYrJXJTu9i0vXcXzhP0n_v5s,6464
420
420
  cirq/protocols/mixture_protocol_test.py,sha256=OtIRulKt6mTwLxLWzfGh6FTwc4CA5CiYoKSAW6bX1Is,3854
421
- cirq/protocols/mul_protocol.py,sha256=iND491TUKnTedjSvZA3mAT8v_EqgWf3xxOh4otQ5WSY,2806
421
+ cirq/protocols/mul_protocol.py,sha256=Jv7Qq5SejO0F6kpnFcTBML3rjZd-LTmrUJJ_D7PRpR4,2749
422
422
  cirq/protocols/mul_protocol_test.py,sha256=J2jvKPr4Doy9Fx7RNCXbjvTkyBu1fcsxfRH-I6OzE34,2172
423
423
  cirq/protocols/pauli_expansion_protocol.py,sha256=haLt7_FJUt-jK0im4R25Gku6Zhiyu6Zt-CeB_WonXK4,3768
424
424
  cirq/protocols/pauli_expansion_protocol_test.py,sha256=qKMMeJ7a8cT2xrNDdXtVabd9Hmcc5wLMOXo88_mkBM4,2780
425
425
  cirq/protocols/phase_protocol.py,sha256=e_xsYDgs4K5poWcTBipziiz3Asuc7tGiVSBgD__Mooo,3648
426
426
  cirq/protocols/phase_protocol_test.py,sha256=brLHtnnAhB28ErwgdkVDZlXTFsF5M7vSyNz-lxe8D0Y,1983
427
- cirq/protocols/pow_protocol.py,sha256=OVVkoIpbxGAx2Ima8OlQUSrKqWNouEyUjQpubiYRJIU,3262
427
+ cirq/protocols/pow_protocol.py,sha256=CCV6-NtEX63yJnnHmdcQX_7p7BHaie8gcG-YAGGxeN8,3204
428
428
  cirq/protocols/pow_protocol_test.py,sha256=Mf5kn0qhgStR9fEjpRVQrlF96-BJaAAcOcCRAlyFhDs,1662
429
- cirq/protocols/qasm.py,sha256=N4Iohs1gcv50G3TXhsI0FWRatXiy-RMwVbEbxV3pzsU,7368
429
+ cirq/protocols/qasm.py,sha256=7hAnBsGdePEytxqoI-TEx8S4P2NDDhVlhj-7rLFtDak,7216
430
430
  cirq/protocols/qasm_test.py,sha256=HirWOanvVpqd9aT9s8etKBvfjbEKfpnro8Vyrq7WELc,2277
431
431
  cirq/protocols/qid_shape_protocol.py,sha256=YrJpUDviSCbgH7n0yYYxaV6hh5nKTqWjAXJ2HenLzmA,7682
432
432
  cirq/protocols/qid_shape_protocol_test.py,sha256=qCocF8pVb6U27lnHJiRkRRDQSgA59KvwXr6RxGEixXI,2347
@@ -923,7 +923,7 @@ cirq/sim/classical_simulator_test.py,sha256=aopFirhrKt1hy1bmWomXdKJ30zEpd0Cxug8b
923
923
  cirq/sim/density_matrix_simulation_state.py,sha256=EW_iOJutp5jKJfM9gZhBjkAkD7ZLmukN3t8mP0quzLE,13968
924
924
  cirq/sim/density_matrix_simulation_state_test.py,sha256=bjiDTclg9g83dLfmuYpZxMy1o_JlucRbbKXw8wgG20I,4469
925
925
  cirq/sim/density_matrix_simulator.py,sha256=ZvXfKs0IxBTtu93Eq207WA9hXXv4CUfvxyAzq3eXAEc,17490
926
- cirq/sim/density_matrix_simulator_test.py,sha256=Lf58HDWNcYDeQEGMDqTiL9foyxqDn5-l4-EsQ6xSlkA,61332
926
+ cirq/sim/density_matrix_simulator_test.py,sha256=X2BVzl1jZeORA3aiK3X6BKFpt1pcnXhx74NA2cL9sCg,61288
927
927
  cirq/sim/density_matrix_utils.py,sha256=W2jUIiuBve3MEECrgxUImTKw4YtaaGiscXxQEzYdViY,10273
928
928
  cirq/sim/density_matrix_utils_test.py,sha256=9UQO6pHnWOpTJ0JobeM1vmVJc1EIwS7zmM9y6MKdXg8,14549
929
929
  cirq/sim/mux.py,sha256=w7sdSWFtmAEmHHn5nMH4H1qBCCp5oltlteH5vs3C_ik,12451
@@ -969,7 +969,7 @@ cirq/study/result.py,sha256=ci9Pg9IW4OMR4aZ4SaQ7TPVTgoSU-1WarjKEXBv2F2g,19214
969
969
  cirq/study/result_test.py,sha256=Safhg93E1x7NA--bxvkMwOnTPAlT0VkfF6hdsEKvhEM,15627
970
970
  cirq/study/sweepable.py,sha256=lVzlkF9d_PaT1RSLponKzwXebGoDXQ56zwd1XEMa6h0,4338
971
971
  cirq/study/sweepable_test.py,sha256=gMKkCoy8JxaCDeMTiDLdmcbBrioWs-teYOnqrri_2rI,5539
972
- cirq/study/sweeps.py,sha256=wy8nTxbBE3EibbmvGIFtfOe8xDq0PefFPYLYd4cD45Y,21647
972
+ cirq/study/sweeps.py,sha256=HwckrE9J0Rf_oWDqVwBHy4AEdrmSxRifNumQl-eRXIw,21565
973
973
  cirq/study/sweeps_test.py,sha256=o__dMwDQZl4R0KpK6MwqKHowWBEqopOhAfLk6BYB1V4,16336
974
974
  cirq/testing/__init__.py,sha256=m_HUdHcJ3HcKpGQBKCwZ6E6QSkKpIN-dUGr4e75o4tY,6217
975
975
  cirq/testing/circuit_compare.py,sha256=Fu1I4NtRFUUxI1_48wYoDWx9pkiy8s1uv4YBk9nEZOY,19173
@@ -1011,7 +1011,7 @@ cirq/testing/json.py,sha256=Lzpfv_vn8NqYUhmB373Ay9NY9qkfd_piJMsLI4uSRSM,6683
1011
1011
  cirq/testing/json_test.py,sha256=wKpzoEHPariqLdZaIxgb87Tx1gAIbIXoXWUyR8TykGw,1152
1012
1012
  cirq/testing/lin_alg_utils.py,sha256=sLhudrHYga6uCQE_13DJAjqhERgbHjk58yYFnrrpMQM,6361
1013
1013
  cirq/testing/lin_alg_utils_test.py,sha256=HiCNYby5ZXVcXJLb8CNatExtuAacrphgUERsqKswF6U,4245
1014
- cirq/testing/logs.py,sha256=1FGmyw6-7qXI5HcHv4H-1ef9tNf9e21OqWSA3cPq1kI,4072
1014
+ cirq/testing/logs.py,sha256=s5w_qv-DLyZ_4S76u3ZH5zrV1jVSOW8ktmouR7aOXBI,4034
1015
1015
  cirq/testing/logs_test.py,sha256=spuIb0EOJxW-UNEuBds20ouIE1ROdqL9TbyTlqn1p6o,5811
1016
1016
  cirq/testing/no_identifier_qubit.py,sha256=jeevOm60Jm8jkdxTJaR9vFwYEBFamCQKL_F1UuQizg8,1225
1017
1017
  cirq/testing/no_identifier_qubit_test.py,sha256=K4fCbM_o9Hw1d7KggAttWKr2T_Ty9T7JXnjaQMpfgSg,1001
@@ -1058,11 +1058,11 @@ cirq/transformers/drop_empty_moments_test.py,sha256=h6Pji0z0o9KOB7fnSHseWpIAhzvx
1058
1058
  cirq/transformers/drop_negligible_operations.py,sha256=eP2dP_n0BYlr8aZ1wnD8YWsqCtwN0l0O6p45RbXEpfM,2097
1059
1059
  cirq/transformers/drop_negligible_operations_test.py,sha256=32mS4QQ8tiH3wBAAgbUU8LgwWDmvreRVEDZML_kgxyo,3859
1060
1060
  cirq/transformers/dynamical_decoupling.py,sha256=zSe49ohNn0mD0yMk3RnjxDSGVjpk_wndjYt2Rt2bd7c,14677
1061
- cirq/transformers/dynamical_decoupling_test.py,sha256=8PSxm5ydc4eugBjqedsQBiRSKOL-61c5fI5S-xxZJm4,44682
1061
+ cirq/transformers/dynamical_decoupling_test.py,sha256=3vDeKXicAGjBJB5ulHfSoLlGEAzn5YbPT_wMiOBvPrM,44696
1062
1062
  cirq/transformers/eject_phased_paulis.py,sha256=ZeVEh614OihWZtHyaBBtgpWj_dUxQGXDzf4NmBlzbeM,14725
1063
1063
  cirq/transformers/eject_phased_paulis_test.py,sha256=AOMmOq3fWFGm2_qDyocjtF9fK7GAhC0kF550mkjtPx4,15791
1064
1064
  cirq/transformers/eject_z.py,sha256=3u0Q0WGGAxmZuPnyiU4q04gJMnY--0nvhF4eotnSl9k,5803
1065
- cirq/transformers/eject_z_test.py,sha256=dAAIPPl_lXGURFuncoSD4S_a1c-ZYgMptAzqHjV_a-o,13262
1065
+ cirq/transformers/eject_z_test.py,sha256=mKa-xViF9ZyuJpHWeqmYfPHL-3AGNTTfe0yHaXYHRZ8,13226
1066
1066
  cirq/transformers/expand_composite.py,sha256=jDuipLc-9uYKGogQ7HAH0NLg5qb1uhdxh1nFWBYWkPk,2402
1067
1067
  cirq/transformers/expand_composite_test.py,sha256=bc18zBuo_7yAzkfIv8scfl_6s-NaGXOX8Rrw34oiJE0,8676
1068
1068
  cirq/transformers/insertion_sort.py,sha256=LtuLQmoA1uWyraPqQ7_QZdkf_vAk75V5HIHvnk4GIZo,2613
@@ -1070,7 +1070,7 @@ cirq/transformers/insertion_sort_test.py,sha256=E4unAfvPrTE73zI7OnZ8vWq5BUXYpPYj
1070
1070
  cirq/transformers/measurement_transformers.py,sha256=crAYKGK90drr_3GEh5t8-Z87eSE8v6uH9Xcn0OfjpOs,19496
1071
1071
  cirq/transformers/measurement_transformers_test.py,sha256=mJKYFqqMwZnD8KXVM1tmF2kcIZXkkZKlfOU9XbGxYpQ,29019
1072
1072
  cirq/transformers/merge_k_qubit_gates.py,sha256=v9vY3f52S9QR7D_Om4APSZ65rwJH6Z7g6Gf3pD_9H3I,4380
1073
- cirq/transformers/merge_k_qubit_gates_test.py,sha256=EPWv1APGp4WVPsyq2voXTbAlTX1z7UGZ1B-dZokFQKk,13991
1073
+ cirq/transformers/merge_k_qubit_gates_test.py,sha256=PaH3vOwrqubJFAeYuM8TOxEvyGm6gLTYtL1dSj-trVs,14006
1074
1074
  cirq/transformers/merge_single_qubit_gates.py,sha256=OqQBPtKreJ7uqa7vjZpxCmX7oRN-llYMClG76TXt9kE,5806
1075
1075
  cirq/transformers/merge_single_qubit_gates_test.py,sha256=0RgVmSuTOjiKSzmjSm8a3APwiOjRUWBzjbr7fHN4x1Y,9954
1076
1076
  cirq/transformers/noise_adding.py,sha256=ZBS-015Kc-BnoO-lMXfEGpCXbPu4whVgTXIB-E16ApQ,4476
@@ -1108,8 +1108,8 @@ cirq/transformers/analytical_decompositions/single_qubit_decompositions.py,sha25
1108
1108
  cirq/transformers/analytical_decompositions/single_qubit_decompositions_test.py,sha256=oh96QXddCm1v8CrYA5mEnnx_ENXwZi89W6paVZU273I,12344
1109
1109
  cirq/transformers/analytical_decompositions/single_to_two_qubit_isometry.py,sha256=CRZylmI8nA_aq6vXj0WmMce8PIe8OFCjq4_bqYfkenk,2464
1110
1110
  cirq/transformers/analytical_decompositions/single_to_two_qubit_isometry_test.py,sha256=0nHp7b_Uz-00eod1U6c8Lcx78zNes3hABWnPR_NuMo4,2554
1111
- cirq/transformers/analytical_decompositions/three_qubit_decomposition.py,sha256=kajmUyhahfPpI_tToO0zPwhmnKOsNBITEGXRZ2g90lY,9733
1112
- cirq/transformers/analytical_decompositions/three_qubit_decomposition_test.py,sha256=skyV4CwDVSHX619cuhE6uqZ_QLTlpejp2Rtnk4CdGzo,7939
1111
+ cirq/transformers/analytical_decompositions/three_qubit_decomposition.py,sha256=6IChilA5NB4X00MYumvbRUo757cLaIslXmtirJk7TxU,9252
1112
+ cirq/transformers/analytical_decompositions/three_qubit_decomposition_test.py,sha256=a21HU4BE82AG2UJU4hUVqymUU7Lw4CLw4-NChX4OpLI,6808
1113
1113
  cirq/transformers/analytical_decompositions/two_qubit_state_preparation.py,sha256=2bIpZOHBHxH2mdbJfDpo6nQgpitOI0ZmoH_5l_nA1nU,6167
1114
1114
  cirq/transformers/analytical_decompositions/two_qubit_state_preparation_test.py,sha256=c-vFBZnybd-Ez4rcs13THGGthzEZ0qw9Iw9sAKbE6yc,4494
1115
1115
  cirq/transformers/analytical_decompositions/two_qubit_to_cz.py,sha256=XwDkm7l8DnRoKcQVgm2X64mmUS16iVDsMFV-35KYHfo,9305
@@ -1163,17 +1163,17 @@ cirq/transformers/target_gatesets/sqrt_iswap_gateset_test.py,sha256=lH7xYm_qkgi_
1163
1163
  cirq/value/__init__.py,sha256=0OQimJUEjmT8HGPqRWYhWTEBuA9sMAD3IfwVTVbwrVc,2947
1164
1164
  cirq/value/abc_alt.py,sha256=ZNHskvHpu3KOhMpIo0C5MBEbEpWFQ2WPiNdstppwZ7E,6026
1165
1165
  cirq/value/abc_alt_test.py,sha256=3ryHzM0B2uxFw3ZP_BIj0FWg4gXKNPLfeQOJMPVL1FQ,9033
1166
- cirq/value/angle.py,sha256=NdYVT5Fwe9nuEHk_5WEf-K-c1SLgJYKvxHdrOumjykA,3360
1166
+ cirq/value/angle.py,sha256=6YP1RWv8IrruvgxvqlCYxcabYRE8bXrbV_Jx66Jfuvs,3285
1167
1167
  cirq/value/angle_test.py,sha256=jKLd1hkY-Tb22krD-WkJjfqFy9EJIIZCAL57__FgW_c,3608
1168
1168
  cirq/value/classical_data.py,sha256=mPkDGZb4I0a1qSgY-T01NLzkJSgSpKpU_o_EQQEn3mc,11517
1169
1169
  cirq/value/classical_data_test.py,sha256=q1QMT17E-X9kcaPw1oQqx3Hwnq3hyht24HaK3z7Udpo,5332
1170
1170
  cirq/value/condition.py,sha256=sl2ol2vyVIQba3YQVXqVI_IgglFMGcDlw7vrCjo9wFk,11920
1171
1171
  cirq/value/condition_test.py,sha256=oEdim5nOYYY8UPU91H2xhb9MH8EC2WbMXTQ_DruHVO0,12949
1172
- cirq/value/digits.py,sha256=ozQA8KYUXsz8AL7fwSkOkXxrp_EnOVjvxnuBdW7oICQ,6138
1172
+ cirq/value/digits.py,sha256=-3HTHqEQqy5evUz8aLE6ruw0NV3ncuPrc5asRMQ-sQ4,6063
1173
1173
  cirq/value/digits_test.py,sha256=WDeUQTnDqZXh4JjWu_qEkzCFAtd8x1UlN9I2yjdDV3g,3848
1174
1174
  cirq/value/duration.py,sha256=9zhnMe7EBicqbRp267GkPz97q1y1DcnPDXHqdEjJpts,10389
1175
1175
  cirq/value/duration_test.py,sha256=xQd5-dE8zZddsZru1P6ClV3PoeJncqLAQr3ivgZIXdQ,8281
1176
- cirq/value/linear_dict.py,sha256=X3nSifOq49ryItORI56sRwcYND5uojAI3ni5zRuP98U,12664
1176
+ cirq/value/linear_dict.py,sha256=0g4fWremhgnLTxjApVJzB6y0hJ9Vz-afudHltvvqkUY,12582
1177
1177
  cirq/value/linear_dict_test.py,sha256=l07YeEb-i9TU4smXcVzQAGVkhPsN8Q-kFjcmQzPQ4vE,20067
1178
1178
  cirq/value/measurement_key.py,sha256=tgKhfa6UUPMP3azlF_yuARqg31T-lAAMhoTK6OtUEeQ,5175
1179
1179
  cirq/value/measurement_key_test.py,sha256=8p7dm5zYKkvykT1F-IaEOMJDTGeqZCfUsWuvqKDLAxc,4545
@@ -1185,15 +1185,15 @@ cirq/value/product_state.py,sha256=yrYlvVoINj4N_fj_9nxugm1qsTxOzIh5j_pJGsyJ8lc,8
1185
1185
  cirq/value/product_state_test.py,sha256=PqIONpf7Eo2tbk-_BF_Eb_P47ui8nUO0dfz9CN-24Qk,5982
1186
1186
  cirq/value/random_state.py,sha256=Kv3dcVif6ltJSI0RT9kSI1XeofW16jdtmo5T3pD4m9w,2099
1187
1187
  cirq/value/random_state_test.py,sha256=AfzX82WsyyuLYnoakNOTj2PPL1fYRH5ZaH84uO-6Cvg,1394
1188
- cirq/value/timestamp.py,sha256=KhQhHY9cSryyUo9QCA5li8OCvUKWuy64rphhUVQK6eE,3715
1188
+ cirq/value/timestamp.py,sha256=pC-hwfLL6U1_5937AMw6YtGgEBq71prNQ6jOjh8Kbls,3633
1189
1189
  cirq/value/timestamp_test.py,sha256=iMc7cREwhDPu7QDkP9bsWxDiGPtXJ2n_JpNpoUgsXmM,4225
1190
1190
  cirq/value/type_alias.py,sha256=64tVzxOqzwtKTwuqXan-PeTyjy7i6J928FCg5NtMcw4,1121
1191
- cirq/value/value_equality_attr.py,sha256=8UfXZ-1y8ocBkysY9_ma3vN06aOz1iBN6pEQptxT6Xk,10550
1191
+ cirq/value/value_equality_attr.py,sha256=xFkLFZ3sSoPD79lWl3ezry1JYd8V7hTAGa1F0F6ire8,10475
1192
1192
  cirq/value/value_equality_attr_test.py,sha256=ZWsjAlJd9M_-HONqTXcdjpIaFCilLcelyodZl1fIu2Y,6557
1193
1193
  cirq/vis/__init__.py,sha256=YzNrNjIyUiTxKHGzYw92qzOYzx8aXkm2y_1hkfVohtU,1171
1194
1194
  cirq/vis/density_matrix.py,sha256=7Mydxi7r1at6W0t7lH99Gq__deyCQ9RxHf-HveKLTZw,4820
1195
1195
  cirq/vis/density_matrix_test.py,sha256=yoOQd0XqCECfmM6ycsBEF2hEyM5NTeNNAoVYEhRj8pk,7082
1196
- cirq/vis/heatmap.py,sha256=2s6_g6wAfYckPR_hI1fIHN3HumUxsOMB8kzm0o4x1fM,17661
1196
+ cirq/vis/heatmap.py,sha256=nKb91MmL5HxMQd95u0v3pf0zrV2dMqdUGCMDxOyoOO4,17620
1197
1197
  cirq/vis/heatmap_test.py,sha256=5Z6EymBugK_tygqKb_qHy7rBI1LfIG67tzPtGUWSUB4,20587
1198
1198
  cirq/vis/histogram.py,sha256=EYuCshhIwXJPaoL5PvWG58bI2gK5mhbTyiWpDHVjq_I,5109
1199
1199
  cirq/vis/histogram_test.py,sha256=G2JRYXfVwrw7TVaaejILqOowxRn_2oF456dYNH9pzeA,1956
@@ -1205,7 +1205,7 @@ cirq/work/__init__.py,sha256=qbw_dKRx_88FxNH_f_CfpVGMrrJKxtjDncx6m7dEWYs,1771
1205
1205
  cirq/work/collector.py,sha256=-1r5giLOPTFFA2M1yHf9l8yLUiePB_6gRzNaOKhQ_rc,7750
1206
1206
  cirq/work/collector_test.py,sha256=2dAOkKTn0tazxb_gyhKPJghXpj47Bm2SuCCpf_EW7kI,5004
1207
1207
  cirq/work/observable_grouping.py,sha256=fYK48ml5U2B9AXXBFvql3YkIU2xSzBF-Bq5tWMVTYbM,3473
1208
- cirq/work/observable_grouping_test.py,sha256=L9EmGZzOi4R81YzKhgQ0mZUXHRLCT8P-vujvZZQvXoM,5911
1208
+ cirq/work/observable_grouping_test.py,sha256=c_axFGnGfCAqk69oqSgottsT_u_Versa4A_oZrgasMk,5875
1209
1209
  cirq/work/observable_measurement.py,sha256=5SC_Dtkb7eZEKS6hA7BY41TX41-racYWyW8C_my_uYA,28211
1210
1210
  cirq/work/observable_measurement_data.py,sha256=IdxqP9anGxLWDugJMNZUO7stKkcLQKJnCdYuSaBVP1g,21135
1211
1211
  cirq/work/observable_measurement_data_test.py,sha256=EDmmrcQeN-QtWdIxYqjpYyn_443zF_2peVV6DwU49zA,19731
@@ -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.dev20250603221345.dist-info/licenses/LICENSE,sha256=tAkwu8-AdEyGxGoSvJ2gVmQdcicWw3j1ZZueVV74M-E,11357
1224
- cirq_core-1.6.0.dev20250603221345.dist-info/METADATA,sha256=M3eFTRSP_T19QCV1CAfoRRebh7bMTJ7XyLGAM-gjY-Q,4857
1225
- cirq_core-1.6.0.dev20250603221345.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
1226
- cirq_core-1.6.0.dev20250603221345.dist-info/top_level.txt,sha256=Sz9iOxHU0IEMLSFGwiwOCaN2e9K-jFbBbtpPN1hB73g,5
1227
- cirq_core-1.6.0.dev20250603221345.dist-info/RECORD,,
1223
+ cirq_core-1.6.0.dev20250605164716.dist-info/licenses/LICENSE,sha256=tAkwu8-AdEyGxGoSvJ2gVmQdcicWw3j1ZZueVV74M-E,11357
1224
+ cirq_core-1.6.0.dev20250605164716.dist-info/METADATA,sha256=TdzuTTPe4sBLTnS8lP8f1SYOlYTXuZPYiqN-Arj6Rkw,4857
1225
+ cirq_core-1.6.0.dev20250605164716.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
1226
+ cirq_core-1.6.0.dev20250605164716.dist-info/top_level.txt,sha256=Sz9iOxHU0IEMLSFGwiwOCaN2e9K-jFbBbtpPN1hB73g,5
1227
+ cirq_core-1.6.0.dev20250605164716.dist-info/RECORD,,