cirq-core 1.6.0.dev20250514171429__py3-none-any.whl → 1.6.0.dev20250514184136__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/__init__.py CHANGED
@@ -205,7 +205,9 @@ from cirq.ops import (
205
205
  CSwapGate as CSwapGate,
206
206
  CX as CX,
207
207
  CXPowGate as CXPowGate,
208
+ CXSWAP as CXSWAP,
208
209
  CZ as CZ,
210
+ CZSWAP as CZSWAP,
209
211
  CZPowGate as CZPowGate,
210
212
  DensePauliString as DensePauliString,
211
213
  depolarize as depolarize,
cirq/_version.py CHANGED
@@ -28,4 +28,4 @@ if sys.version_info < (3, 10, 0): # pragma: no cover
28
28
  'of cirq (e.g. "python -m pip install cirq==1.1.*")'
29
29
  )
30
30
 
31
- __version__ = "1.6.0.dev20250514171429"
31
+ __version__ = "1.6.0.dev20250514184136"
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.dev20250514171429"
6
+ assert cirq.__version__ == "1.6.0.dev20250514184136"
@@ -744,7 +744,7 @@ def _random_single_q_clifford(
744
744
  ) -> List[cirq.Operation]:
745
745
  clifford_group_size = 24
746
746
  operations = [[gate.to_phased_xz_gate()(qubit) for gate in gates] for gates in cfds]
747
- gate_ids = list(np.random.choice(clifford_group_size, num_cfds))
747
+ gate_ids = np.random.choice(clifford_group_size, num_cfds).tolist()
748
748
  adjoint = _reduce_gate_seq([gate for gate_id in gate_ids for gate in cfds[gate_id]]) ** -1
749
749
  return [op for gate_id in gate_ids for op in operations[gate_id]] + [
750
750
  adjoint.to_phased_xz_gate()(qubit)
@@ -755,7 +755,7 @@ def _random_two_q_clifford(
755
755
  q_0: cirq.Qid, q_1: cirq.Qid, num_cfds: int, cfd_matrices: np.ndarray, cliffords: Cliffords
756
756
  ) -> cirq.Circuit:
757
757
  clifford_group_size = 11520
758
- idx_list = list(np.random.choice(clifford_group_size, num_cfds))
758
+ idx_list = np.random.choice(clifford_group_size, num_cfds).tolist()
759
759
  circuit = circuits.Circuit()
760
760
  for idx in idx_list:
761
761
  circuit.append(_two_qubit_clifford(q_0, q_1, idx, cliffords))
@@ -242,11 +242,11 @@ def calibrate_z_phases(
242
242
 
243
243
  def plot_z_phase_calibration_result(
244
244
  before_after_df: pd.DataFrame,
245
- axes: Optional[np.ndarray[Sequence[Sequence[plt.Axes]], np.dtype[np.object_]]] = None,
245
+ axes: Optional[np.ndarray[Tuple[int, int], np.dtype[np.object_]]] = None,
246
246
  pairs: Optional[Sequence[Tuple[cirq.Qid, cirq.Qid]]] = None,
247
247
  *,
248
248
  with_error_bars: bool = False,
249
- ) -> np.ndarray[Sequence[Sequence[plt.Axes]], np.dtype[np.object_]]:
249
+ ) -> np.ndarray[Tuple[int, int], np.dtype[np.object_]]:
250
250
  """A helper method to plot the result of running z-phase calibration.
251
251
 
252
252
  Note that the plotted fidelity is a statistical estimate of the true fidelity and as a result
@@ -80,7 +80,7 @@ def matrix_from_basis_coefficients(
80
80
  some_element = next(iter(basis.values()))
81
81
  result = np.zeros_like(some_element, dtype=np.complex128)
82
82
  for name, coefficient in expansion.items():
83
- result += coefficient * basis[name]
83
+ result += complex(coefficient) * basis[name]
84
84
  return result
85
85
 
86
86
 
cirq/ops/__init__.py CHANGED
@@ -17,6 +17,8 @@ from cirq.ops.arithmetic_operation import ArithmeticGate as ArithmeticGate
17
17
 
18
18
  from cirq.ops.clifford_gate import (
19
19
  CliffordGate as CliffordGate,
20
+ CXSWAP as CXSWAP,
21
+ CZSWAP as CZSWAP,
20
22
  SingleQubitCliffordGate as SingleQubitCliffordGate,
21
23
  )
22
24
 
@@ -32,8 +32,7 @@ def adder_matrix(target_width: int, source_width: int) -> np.ndarray:
32
32
  result = np.zeros((t, s, t, s))
33
33
  for k in range(s):
34
34
  result[:, k, :, k] = shift_matrix(t, k)
35
- result.shape = (t * s, t * s)
36
- return result
35
+ return result.reshape(t * s, t * s)
37
36
 
38
37
 
39
38
  def test_the_tests() -> None:
cirq/ops/clifford_gate.py CHANGED
@@ -941,3 +941,32 @@ class SingleQubitCliffordGate(CliffordGate):
941
941
  def _value_equality_values_cls_(self):
942
942
  """To make it with compatible to compare with clifford gate."""
943
943
  return CliffordGate
944
+
945
+
946
+ CXSWAP = CliffordGate.from_clifford_tableau(
947
+ qis.CliffordTableau(
948
+ 2,
949
+ rs=np.array([False, False, False, False], dtype=np.dtype('bool')),
950
+ xs=np.array(
951
+ [[True, True], [True, False], [False, False], [False, False]], dtype=np.dtype('bool')
952
+ ),
953
+ zs=np.array(
954
+ [[False, False], [False, False], [False, True], [True, True]], dtype=np.dtype('bool')
955
+ ),
956
+ initial_state=0,
957
+ )
958
+ )
959
+
960
+ CZSWAP = CliffordGate.from_clifford_tableau(
961
+ qis.CliffordTableau(
962
+ 2,
963
+ rs=np.array([False, False, False, False], dtype=np.dtype('bool')),
964
+ xs=np.array(
965
+ [[False, True], [True, False], [False, False], [False, False]], dtype=np.dtype('bool')
966
+ ),
967
+ zs=np.array(
968
+ [[True, False], [False, True], [False, True], [True, False]], dtype=np.dtype('bool')
969
+ ),
970
+ initial_state=0,
971
+ )
972
+ )
@@ -995,3 +995,14 @@ def test_single_qubit_clifford_gate_repr():
995
995
  'rs=np.array([False, True]), xs=np.array([[True], [False]]), '
996
996
  'zs=np.array([[True], [True]])))'
997
997
  )
998
+
999
+
1000
+ def test_cxswap_czswap():
1001
+
1002
+ # cirq unitary for CNOT then SWAP (big endian)
1003
+ cxswap_expected = np.asarray([[1, 0, 0, 0], [0, 0, 0, 1], [0, 1, 0, 0], [0, 0, 1, 0]])
1004
+ print(cirq.unitary(cirq.CXSWAP))
1005
+ assert np.allclose(cirq.unitary(cirq.CXSWAP), cxswap_expected)
1006
+
1007
+ czswap_expected = np.asarray([[1, 0, 0, 0], [0, 0, 1, 0], [0, 1, 0, 0], [0, 0, 0, -1]])
1008
+ assert np.allclose(cirq.unitary(cirq.CZSWAP), czswap_expected)
@@ -243,7 +243,7 @@ class ControlledOperation(raw_types.Operation):
243
243
  sub_tensor = sub_matrix.reshape(qid_shape[len(self.controls) :] * 2)
244
244
  for control_vals in self.control_values.expand():
245
245
  active = (*(v for v in control_vals), *(slice(None),) * sub_n) * 2
246
- tensor[active] = sub_tensor
246
+ tensor[active] = sub_tensor # type: ignore[index]
247
247
  return tensor.reshape((np.prod(qid_shape, dtype=np.int64).item(),) * 2)
248
248
 
249
249
  def _unitary_(self) -> Union[np.ndarray, NotImplementedType]:
@@ -302,7 +302,7 @@ class LinearCombinationOfOperations(value.LinearDict[raw_types.Operation]):
302
302
  workspace = np.empty_like(identity)
303
303
  axes = tuple(qubit_to_axis[q] for q in op.qubits)
304
304
  u = protocols.apply_unitary(op, protocols.ApplyUnitaryArgs(identity, workspace, axes))
305
- result += coefficient * u
305
+ result += complex(coefficient) * u
306
306
  return result.reshape((num_dim, num_dim))
307
307
 
308
308
  def _has_unitary_(self) -> bool:
@@ -0,0 +1,46 @@
1
+ {
2
+ "cirq_type": "CliffordGate",
3
+ "n": 2,
4
+ "rs": [
5
+ false,
6
+ false,
7
+ false,
8
+ false
9
+ ],
10
+ "xs": [
11
+ [
12
+ true,
13
+ true
14
+ ],
15
+ [
16
+ true,
17
+ false
18
+ ],
19
+ [
20
+ false,
21
+ false
22
+ ],
23
+ [
24
+ false,
25
+ false
26
+ ]
27
+ ],
28
+ "zs": [
29
+ [
30
+ false,
31
+ false
32
+ ],
33
+ [
34
+ false,
35
+ false
36
+ ],
37
+ [
38
+ false,
39
+ true
40
+ ],
41
+ [
42
+ true,
43
+ true
44
+ ]
45
+ ]
46
+ }
@@ -0,0 +1,13 @@
1
+ cirq.CliffordGate(_clifford_tableau=
2
+ cirq.CliffordTableau(
3
+ 2,
4
+ rs=np.array([False, False, False, False], dtype=np.dtype('bool')),
5
+ xs=np.array(
6
+ [[True, True], [True, False], [False, False], [False, False]], dtype=np.dtype('bool')
7
+ ),
8
+ zs=np.array(
9
+ [[False, False], [False, False], [False, True], [True, True]], dtype=np.dtype('bool')
10
+ ),
11
+ initial_state=0,
12
+ )
13
+ )
@@ -0,0 +1,46 @@
1
+ {
2
+ "cirq_type": "CliffordGate",
3
+ "n": 2,
4
+ "rs": [
5
+ false,
6
+ false,
7
+ false,
8
+ false
9
+ ],
10
+ "xs": [
11
+ [
12
+ false,
13
+ true
14
+ ],
15
+ [
16
+ true,
17
+ false
18
+ ],
19
+ [
20
+ false,
21
+ false
22
+ ],
23
+ [
24
+ false,
25
+ false
26
+ ]
27
+ ],
28
+ "zs": [
29
+ [
30
+ true,
31
+ false
32
+ ],
33
+ [
34
+ false,
35
+ true
36
+ ],
37
+ [
38
+ false,
39
+ true
40
+ ],
41
+ [
42
+ true,
43
+ false
44
+ ]
45
+ ]
46
+ }
@@ -0,0 +1,13 @@
1
+ cirq.CliffordGate(_clifford_tableau=
2
+ cirq.CliffordTableau(
3
+ 2,
4
+ rs=np.array([False, False, False, False], dtype=np.dtype('bool')),
5
+ xs=np.array(
6
+ [[False, True], [True, False], [False, False], [False, False]], dtype=np.dtype('bool')
7
+ ),
8
+ zs=np.array(
9
+ [[True, False], [False, True], [False, True], [True, False]], dtype=np.dtype('bool')
10
+ ),
11
+ initial_state=0,
12
+ )
13
+ )
cirq/qis/entropy.py CHANGED
@@ -15,7 +15,7 @@
15
15
  from collections.abc import Sequence
16
16
  from concurrent.futures import ThreadPoolExecutor
17
17
  from itertools import product
18
- from typing import Any, Optional
18
+ from typing import Any, cast, Iterator, Optional
19
19
 
20
20
  import numpy as np
21
21
  import numpy.typing as npt
@@ -73,8 +73,17 @@ def _compute_bitstrings_contribution_to_purity(bitstrings: npt.NDArray[np.int8])
73
73
  """
74
74
 
75
75
  bitstrings, probs = _bitstrings_to_probs(bitstrings)
76
+ product_iterator = cast(
77
+ Iterator[
78
+ tuple[
79
+ tuple[npt.NDArray[np.int8], npt.NDArray[Any]],
80
+ tuple[npt.NDArray[np.int8], npt.NDArray[Any]],
81
+ ]
82
+ ],
83
+ product(zip(bitstrings, probs), repeat=2),
84
+ )
76
85
  purity = 0
77
- for (s, p), (s_prime, p_prime) in product(zip(bitstrings, probs), repeat=2):
86
+ for (s, p), (s_prime, p_prime) in product_iterator:
78
87
  purity += (-2.0) ** float(-_get_hamming_distance(s, s_prime)) * p * p_prime
79
88
 
80
89
  return purity * 2 ** (bitstrings.shape[-1])
@@ -288,10 +288,10 @@ class StabilizerStateChForm(qis.StabilizerState):
288
288
  copy = StabilizerStateChForm(self.n)
289
289
  copy.G = self.G[axes][:, axes]
290
290
  copy.F = self.F[axes][:, axes]
291
- copy.M = self.M[axes][:, axes]
292
- copy.gamma = self.gamma[axes]
293
- copy.v = self.v[axes]
294
- copy.s = self.s[axes]
291
+ copy.M = self.M[axes][:, axes] # type: ignore[assignment]
292
+ copy.gamma = self.gamma[axes] # type: ignore[assignment]
293
+ copy.v = self.v[axes] # type: ignore[assignment]
294
+ copy.s = self.s[axes] # type: ignore[assignment]
295
295
  copy.omega = self.omega
296
296
  return copy
297
297
 
@@ -11,7 +11,8 @@
11
11
  # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
12
  # See the License for the specific language governing permissions and
13
13
  # limitations under the License.
14
- from typing import Sequence, Tuple
14
+
15
+ from typing import Any, Sequence, Tuple
15
16
 
16
17
  import numpy as np
17
18
 
@@ -37,6 +38,7 @@ def state_probabilities_by_indices(
37
38
  Returns:
38
39
  State probabilities.
39
40
  """
41
+ probs: np.ndarray[Tuple[int, ...], Any]
40
42
  probs = state_probability.reshape((-1,))
41
43
  not_measured = [i for i in range(len(qid_shape)) if i not in indices]
42
44
  if linalg.can_numpy_support_shape(qid_shape):
@@ -23,7 +23,7 @@ def test_state_probabilities_by_indices(n: int, m: int) -> None:
23
23
  np.random.seed(0)
24
24
  state = testing.random_superposition(1 << n)
25
25
  d = (state.conj() * state).real
26
- desired_axes = list(np.random.choice(n, m, replace=False))
26
+ desired_axes = np.random.choice(n, m, replace=False).tolist()
27
27
  not_wanted = [i for i in range(n) if i not in desired_axes]
28
28
  got = simulation_utils.state_probabilities_by_indices(d, desired_axes, (2,) * n)
29
29
  want = np.transpose(d.reshape((2,) * n), desired_axes + not_wanted)
@@ -227,17 +227,20 @@ class BitstringAccumulator:
227
227
  self._qubit_to_index = qubit_to_index
228
228
  self._readout_calibration = readout_calibration
229
229
 
230
+ self.bitstrings: np.ndarray[Tuple[int, ...], np.dtype[np.uint8]]
230
231
  if bitstrings is None:
231
232
  n_bits = len(qubit_to_index)
232
233
  self.bitstrings = np.zeros((0, n_bits), dtype=np.uint8)
233
234
  else:
234
235
  self.bitstrings = np.asarray(bitstrings, dtype=np.uint8)
235
236
 
237
+ self.chunksizes: np.ndarray[Tuple[int, ...], np.dtype[np.int64]]
236
238
  if chunksizes is None:
237
239
  self.chunksizes = np.zeros((0,), dtype=np.int64)
238
240
  else:
239
241
  self.chunksizes = np.asarray(chunksizes, dtype=np.int64)
240
242
 
243
+ self.timestamps: np.ndarray[Tuple[int, ...], np.dtype[np.datetime64]]
241
244
  if timestamps is None:
242
245
  self.timestamps = np.zeros((0,), dtype='datetime64[us]')
243
246
  else:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cirq-core
3
- Version: 1.6.0.dev20250514171429
3
+ Version: 1.6.0.dev20250514184136
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
- cirq/__init__.py,sha256=ecDdbOid5m5VpqO4ZPoXQRuWUanrH3Y7lGzzgNPpiyM,28194
1
+ cirq/__init__.py,sha256=QLBOuigMYDEL12O1ZaWw0Nmw3vKY3gJ4yuGfPo4YENM,28238
2
2
  cirq/_compat.py,sha256=_DknO27XngcjEidNApRsCzLUWDS4QmDk9M12BaqP5Is,29531
3
3
  cirq/_compat_test.py,sha256=t51ZXkEuomg1SMI871Ws-5pk68DGBsAf2TGNjVXtZ8I,34755
4
4
  cirq/_doc.py,sha256=yDyWUD_2JDS0gShfGRb-rdqRt9-WeL7DhkqX7np0Nko,2879
5
5
  cirq/_import.py,sha256=cfocxtT1BJ4HkfZ-VO8YyIhPP-xfqHDkLrzz6eeO5U0,8421
6
6
  cirq/_import_test.py,sha256=6K_v0riZJXOXUphHNkGA8MY-JcmGlezFaGmvrNhm3OQ,1015
7
- cirq/_version.py,sha256=zjfdHuC9T9iDGnExu7V-g3vyY3IP-0gsHb7jAMfOOjU,1206
8
- cirq/_version_test.py,sha256=TfEwXA-8CGiQCzRW-7_DXIL7k22FvOCoqJsiFlwjiG0,155
7
+ cirq/_version.py,sha256=j23T56SCLWsLnpRXZv6i8T2dbxPaRu7wOyXjzTZ_Yk8,1206
8
+ cirq/_version_test.py,sha256=NJXGUDHxeU5z6Zj3jHiLyxA-SPONz2iubkia9Q0EoY0,155
9
9
  cirq/conftest.py,sha256=X7yLFL8GLhg2CjPw0hp5e_dGASfvHx1-QT03aUbhKJw,1168
10
10
  cirq/json_resolver_cache.py,sha256=-4KqEEYb6aps-seafnFTHTp3SZc0D8mr4O-pCKIajn8,13653
11
11
  cirq/py.typed,sha256=VFSlmh_lNwnaXzwY-ZuW-C2Ws5PkuDoVgBdNCs0jXJE,63
@@ -187,7 +187,7 @@ cirq/experiments/n_qubit_tomography.py,sha256=T4Q8GkcESrraFfnSnDEaMh_-7X7U3ufpdH
187
187
  cirq/experiments/n_qubit_tomography_test.py,sha256=meZcrjHJfeA3gMfrltKX_V5CP57ORSe_GQJt79wJzK4,4402
188
188
  cirq/experiments/purity_estimation.py,sha256=6D1UwFlQRzHeajXMTyTUfBYAc0jJQ8Cfz4lteFKeUaM,2467
189
189
  cirq/experiments/purity_estimation_test.py,sha256=xlBGp0NOBYR0IhTy3bckHPgi81FkGSGxKqk9hwXG-I8,923
190
- cirq/experiments/qubit_characterizations.py,sha256=dlW50ijAHPSGIx6ObH2_bXRjUIZOsDFotzpPuJiJkJY,36710
190
+ cirq/experiments/qubit_characterizations.py,sha256=HQwpoxI3z2InRy33ETqp1yCukJ4eEzMXi4pZ49FmsRs,36716
191
191
  cirq/experiments/qubit_characterizations_test.py,sha256=km4-D-JrsxhjCjbpf7DTgHnGSNS3Iadtqt0b5hfTQqI,9716
192
192
  cirq/experiments/random_quantum_circuit_generation.py,sha256=P3LcrAQSAioyGfpbtZsAuf5uSRYOxXJKHIJh41oRPB4,28153
193
193
  cirq/experiments/random_quantum_circuit_generation_test.py,sha256=hWiW31iNzheaU2M82G4CDsAhSW8kQ1-DWm8FgDpxvU4,16549
@@ -207,7 +207,7 @@ cirq/experiments/xeb_sampling.py,sha256=7va7Rq_BpKtj-ip3Tnx6doqAoVWRQi4-g10kX03E
207
207
  cirq/experiments/xeb_sampling_test.py,sha256=0XkQGvcURsug3IblE_wZrHVDoOQV3WuQilrqCJbDHjI,6784
208
208
  cirq/experiments/xeb_simulation.py,sha256=w-4TI8KexpI6zJTS8PHmcWWWHfyRcbJYC4Ifin-bHts,5101
209
209
  cirq/experiments/xeb_simulation_test.py,sha256=2ETf99fb0b76w9NjH8pGHTVLLmQE6CIv0yzlCB6WbQ8,5646
210
- cirq/experiments/z_phase_calibration.py,sha256=EPblzpLl3JXRkmXgD9GS0R7RKf4zVVYAHhGW0c-HZ6E,15128
210
+ cirq/experiments/z_phase_calibration.py,sha256=NBn40t-w-PVorGVyEn_b16IiOkc7-wHY0KjWJMpovwY,15102
211
211
  cirq/experiments/z_phase_calibration_test.py,sha256=gyZgldzM0G8bRHp33Jk_eYaYqO2WsfFky_GDtElRpzo,9012
212
212
  cirq/experiments/benchmarking/__init__.py,sha256=2jMiP2dmQrH9Z2eKC8koaQqZcOi_-ziuer-aHkLm_bU,709
213
213
  cirq/experiments/benchmarking/parallel_xeb.py,sha256=3RyTTnHpqV-8B-TmDS7jBnaLu6GFLKPUFDtOOnMUlwQ,26015
@@ -258,7 +258,7 @@ cirq/linalg/decompositions.py,sha256=bKwdrDSMQtnZgGhowVFrxfpuQbLR-s-xWwVF23h88Ms
258
258
  cirq/linalg/decompositions_test.py,sha256=zlx9-1GbEjD128-fAwx4qqdbd5g324O65l3VzioilHY,25436
259
259
  cirq/linalg/diagonalize.py,sha256=Y3fFcyEWKH5CGbGY8KeQPGBgdDgvETF3WUCkVNIVfNw,10051
260
260
  cirq/linalg/diagonalize_test.py,sha256=EOD4ufvwb6jgfLmio61iIsPEr_Pz2wAtINgjOX7zg7Q,9169
261
- cirq/linalg/operator_spaces.py,sha256=kzKK0TNn7Mjul45vTygGyJik-PCct8dVfUiTcjWPVps,4136
261
+ cirq/linalg/operator_spaces.py,sha256=zoqUpa_cCvhycqe2y7FikhLSB2tOV7wtuqRiYRXtcJo,4145
262
262
  cirq/linalg/operator_spaces_test.py,sha256=0zXC75KQ5S6hJhY5wndq61rOIltV-6r2WoLrzv3esSw,10693
263
263
  cirq/linalg/predicates.py,sha256=WyMHG_X_nGrPAqAN7Z-QIEfOxeBaaBqesHuJg2jz-MY,12147
264
264
  cirq/linalg/predicates_test.py,sha256=syNiyS-clEGeZnbKT7zyR8_ClDnXFYtDnLKozLbitzw,21504
@@ -270,15 +270,15 @@ cirq/neutral_atoms/__init__.py,sha256=VoQBkmZ5m4TPxjxShRixjqJbnc-IAnAWkGOPu8MBS5
270
270
  cirq/neutral_atoms/convert_to_neutral_atom_gates.py,sha256=2sIJd5CzWjehMi_rfFW8QXSnafwdWqzrnrzKbWlkXf0,1156
271
271
  cirq/neutral_atoms/convert_to_neutral_atom_gates_test.py,sha256=yZhv5hVhvUhCQnntP_Nk6mPsXs1j1d8bFhcSMmz-_yE,1869
272
272
  cirq/neutral_atoms/neutral_atom_devices.py,sha256=s-LInrNp8k_txKbpLWfsaoiZvUScOWNxr-jiB-nFcDA,1358
273
- cirq/ops/__init__.py,sha256=Fvghj3MopLpeIdbpb6en855QgwperBs5esV1iszhBDA,8274
273
+ cirq/ops/__init__.py,sha256=HNtQJBFeiJJ-MbbNqe3f6KfcmZ_4YP5oTcCcZnGkYbY,8318
274
274
  cirq/ops/arithmetic_operation.py,sha256=j1RkP2gDX3n7xzEKNAoTQSmzfXBIAdov07AUlhdtVQw,10157
275
- cirq/ops/arithmetic_operation_test.py,sha256=xIuLKsTWl6y2X90IukOv4xsbQGUCYi2m4jgHJWqdbLM,4958
275
+ cirq/ops/arithmetic_operation_test.py,sha256=uV6hGwqq-QfewdfFZOpgCTupbnBUvV3-hLhiEADhJSo,4946
276
276
  cirq/ops/boolean_hamiltonian.py,sha256=2Z5iqrxHxMmFjRgY72uqedK2C6sfFtIFSGs8TGwyhKg,14946
277
277
  cirq/ops/boolean_hamiltonian_test.py,sha256=p0vm-hQKWJQdiLl6KyM-ylF3eIW1JgxBfiheFABKCig,8540
278
278
  cirq/ops/classically_controlled_operation.py,sha256=lRP-agJZBgGO5CL9OML3oZKaOZJAuAMqnHe4XRAC6Gk,10369
279
279
  cirq/ops/classically_controlled_operation_test.py,sha256=nIYyXfNH4E2IibZSLk6QDVHpfJQbuI_iWwirCH8rhi8,50209
280
- cirq/ops/clifford_gate.py,sha256=awiYS6M5HiFXZee1Y9ZouC6u92UjfTJsK7soelid0ng,39392
281
- cirq/ops/clifford_gate_test.py,sha256=0AzR-XI9N97rRS-bxXQhvu5KS2eaFSoMliW-J68wk68,40375
280
+ cirq/ops/clifford_gate.py,sha256=N2obL0540tkuIHOvfyEPuXavYm29kymieXqxKcKJ24M,40293
281
+ cirq/ops/clifford_gate_test.py,sha256=iLzN-zca-wIbjbNng8gwlHGh7KZlg5zcoH_BV-KAuQ4,40810
282
282
  cirq/ops/common_channels.py,sha256=aTxfQ7F4ewv2h_XfUgfdGk2DbU7Lian-Jp_2muMNXlg,37130
283
283
  cirq/ops/common_channels_test.py,sha256=2AEMqpjQyeDP6rE2nY2gHuMbanaYQZb_na0ScuuGPWA,30719
284
284
  cirq/ops/common_gate_families.py,sha256=2E31Qr_Yv1zI-r_MNWmr1xJYrEHHU45274iDrt_oKPE,8611
@@ -289,7 +289,7 @@ cirq/ops/control_values.py,sha256=J674mKNnncydB2n_F2ZhqIs1EZQBFPDprdHilRKfUsk,13
289
289
  cirq/ops/control_values_test.py,sha256=K8tbKM6b6PqMEL_lHLFzdrnWF1SkLN0Scft6YMT7FlE,12907
290
290
  cirq/ops/controlled_gate.py,sha256=w6llkldlz_ap8rvtXCF7NIPFkMKbJJQgJXe2tFY8LBg,15208
291
291
  cirq/ops/controlled_gate_test.py,sha256=8PprvTdGMfBQOOQ-BpW_decRQU39P2gM_xJfX-fawMo,25512
292
- cirq/ops/controlled_operation.py,sha256=VJt4-plwcA60fclTVbT26edL_9ReNl_AfGplB2126Hk,14103
292
+ cirq/ops/controlled_operation.py,sha256=Xzp8Yove9Ix0u4jkXHWxfQGXoqEzfNb6LtWvi92dGoY,14126
293
293
  cirq/ops/controlled_operation_test.py,sha256=kHdHGR6Q6ROgUJqG4DSKOvyrLJhi-u4uMh-rM3QRJ8o,16525
294
294
  cirq/ops/dense_pauli_string.py,sha256=-cnQs2z9qf45KRqWC_ppqsCfJFdtpjbaw5kQio8-XMc,24435
295
295
  cirq/ops/dense_pauli_string_test.py,sha256=duvgzhgTV9wuem4kDSwtL62SEUCThkz1tdP984-C4_s,21504
@@ -315,7 +315,7 @@ cirq/ops/identity.py,sha256=VaIVbO-4rIAxgiud9TQZDtI0EwTG1qyxD_Rg-pBsq6g,5910
315
315
  cirq/ops/identity_test.py,sha256=OIrm8v4wBVq8bbAGZ-f5TERt8Hl6aD1bL8iHCOEhzNo,7939
316
316
  cirq/ops/kraus_channel.py,sha256=mA8iCmdZIavIc7vcGqSeJ5mYm48nIOTTQu789nfMjGY,5113
317
317
  cirq/ops/kraus_channel_test.py,sha256=-E6ExIO3P0y2T74Gx-RMu0kLpy1RWP9wH6UGDI21oFU,4820
318
- cirq/ops/linear_combinations.py,sha256=cU4evv8-VL23Y7AN2yVkjy32tXXdqJoEq634SELJgHM,39872
318
+ cirq/ops/linear_combinations.py,sha256=DshYZRhhmLn1_gCiU1nZdeJ49IM9q46WMCpMniI9fXY,39881
319
319
  cirq/ops/linear_combinations_test.py,sha256=ip-wN8T8nUQviD3ql42eet7k_MQ6DVUfIK8aX-_ygOs,67217
320
320
  cirq/ops/matrix_gates.py,sha256=bVN8u5wPEvalZfM6Y6MICEqQs4gZUnENcktc3r56NHs,10347
321
321
  cirq/ops/matrix_gates_test.py,sha256=m5rMwq_sqVvsmkc5opVr3Ikd1ERuULmSRNAvGZUg7ds,14224
@@ -484,10 +484,14 @@ cirq/protocols/json_test_data/CX.repr,sha256=MEz6igUiT1YdVhY3C2s8KHDvat0qC-guDV-
484
484
  cirq/protocols/json_test_data/CX.repr_inward,sha256=MEz6igUiT1YdVhY3C2s8KHDvat0qC-guDV-K_hqBfxM,9
485
485
  cirq/protocols/json_test_data/CXPowGate.json,sha256=2t2RbA32D4_bdjgc4JXExjTYvUmvV38ejY9jvr8TUKw,76
486
486
  cirq/protocols/json_test_data/CXPowGate.repr,sha256=SCJLIkXQQwqH9NBEX_6ZBa6mqplL36fL81NYBT_6hbM,50
487
+ cirq/protocols/json_test_data/CXSWAP.json,sha256=uhlMgCTp-UFmnev4a785yr155rQJLLammGtmrN5J43I,428
488
+ cirq/protocols/json_test_data/CXSWAP.repr,sha256=mxBK3JZHsTh7Cz6e7wAfwfFA0mMI2oFWcW2UDjg_zwg,442
487
489
  cirq/protocols/json_test_data/CZ.json,sha256=732Zza9yot4TpapFbJaQj3Q0NrcqbolTkyPtr8N0pmA,70
488
490
  cirq/protocols/json_test_data/CZ.repr,sha256=PjvOrt0zh_3EWbqxrSVw1o8pIQjIkEBObeM8tai7uUA,7
489
491
  cirq/protocols/json_test_data/CZPowGate.json,sha256=3N2Ageh6MeH0ZbqUY549dDkQQmtcOzGCOmbMe7Gfn9M,76
490
492
  cirq/protocols/json_test_data/CZPowGate.repr,sha256=r73dZkZPUKUoKycbPay4pUKgQm3iazvrNRdgCYSJbok,50
493
+ cirq/protocols/json_test_data/CZSWAP.json,sha256=NMDqC9hTwfRYxvexnj71llxDQIZ_EtBnoun3fghFevE,428
494
+ cirq/protocols/json_test_data/CZSWAP.repr,sha256=uY2UGApAeQi7e0fwD__deX3XFKtPpIpj42o_60VOOAE,442
491
495
  cirq/protocols/json_test_data/CZTargetGateset.json,sha256=awjiW6WeUI76O6ONwObe7JQpz-GQOZH-uckpojiTRP8,1256
492
496
  cirq/protocols/json_test_data/CZTargetGateset.repr,sha256=ua9QtMoUcuErWoH6M4IsBP67M41KXjbeOD4dDKodYPA,596
493
497
  cirq/protocols/json_test_data/Circuit.json,sha256=pQNIcjuIYBfXnGkqQnn4xuSLoHysFELzi01SxFfcOAY,4379
@@ -904,7 +908,7 @@ cirq/qis/channels.py,sha256=AxKgLUbWLrb1pz9xLtSpYm_stjN-IWOwLFYC9YZSons,12798
904
908
  cirq/qis/channels_test.py,sha256=Ac6GqB3nvka93AUr6nHhcRCTmW1selsQnt4ZK8h-Ttw,14220
905
909
  cirq/qis/clifford_tableau.py,sha256=jz5CS1lmwh1Adkq5lZ6qUmABGiebcyYUTTFqGf26H_A,26248
906
910
  cirq/qis/clifford_tableau_test.py,sha256=sHmHC3APFc5tpAkSSpVsywVgvAnkg5cYcj8KQjifcBI,18440
907
- cirq/qis/entropy.py,sha256=KFMp9oH_4_q7emYiD5wIVRZFpgamyBXrA61_Ul7XGCU,3954
911
+ cirq/qis/entropy.py,sha256=Km2X34YIqJSiLWU5VichF7LMeFehCAB8mPhBq9_MxT0,4219
908
912
  cirq/qis/entropy_test.py,sha256=FEx-cK8LMfj7iDwX3u-60U_Kg38l00K3uJfkLTQbuKM,1673
909
913
  cirq/qis/measures.py,sha256=ymbCgIzKZ9o4nUOt6UYrbQe6lUUUgyKFe80fpcIXExg,12277
910
914
  cirq/qis/measures_test.py,sha256=m1RDwdoAWz7sK_Cov2MLz3cCQu5hCpQHIdVS0XMz-Ms,10386
@@ -929,8 +933,8 @@ cirq/sim/simulation_product_state_test.py,sha256=4jnR3Ppke4muti_X84m2DvMtWCQysAZ
929
933
  cirq/sim/simulation_state.py,sha256=z-4s4WWO9L2zRZHpBsDvqaBsIZyOgT4uEp3bookXVSw,12653
930
934
  cirq/sim/simulation_state_base.py,sha256=pi4M2h4H23rBGSLLzrxbjL6RvN17hP6zQYQg7Mj-Scg,4194
931
935
  cirq/sim/simulation_state_test.py,sha256=Lj714X4eDqyhXARDcomEn6BxWYNJviUMGpk7UW_ERfk,7524
932
- cirq/sim/simulation_utils.py,sha256=hsR4ea2eERW3ugNPSheE0bNBYEcJl6US-a6rmu7CSOA,2598
933
- cirq/sim/simulation_utils_test.py,sha256=NASrZL6oErRg9fhSg0OrwttUBlM490jzXIiwlijcoCs,1340
936
+ cirq/sim/simulation_utils.py,sha256=ehNRBVJmqlnORZrnwimxpCo09erQ9NMs2b2NrFyTfe8,2648
937
+ cirq/sim/simulation_utils_test.py,sha256=QYbXohyq3XrHPqedFu3Hkj5VmYZ3gQwnrP4VjcV93jU,1343
934
938
  cirq/sim/simulator.py,sha256=Cc_jkQp4IQQjB1jjqtC1I3Penr3SrYrL8dfjyCGg0K4,41899
935
939
  cirq/sim/simulator_base.py,sha256=KPTuU1SgQqynZ5IPDY50hlgh--jPn5Wl_5WJiYtJhVU,18153
936
940
  cirq/sim/simulator_base_test.py,sha256=U8HqxdUwKOpzVde74Zwdmazz_SJEiDV2bQVV-maoST4,14970
@@ -954,7 +958,7 @@ cirq/sim/clifford/stabilizer_sampler.py,sha256=DQ2kpMwo9xZnAZbHgHbYS3-s4IyRpXTt_
954
958
  cirq/sim/clifford/stabilizer_sampler_test.py,sha256=n5ptR44iWASxIuNIzpNNJqPlv_2g0Sc656RYt2w-e-s,1354
955
959
  cirq/sim/clifford/stabilizer_simulation_state.py,sha256=MdcnqiB4V38b_rbpgtN5SNpQ0j5hVWBd-BiciWjMTds,6731
956
960
  cirq/sim/clifford/stabilizer_simulation_state_test.py,sha256=K5ax_qz4SIM5wjnJ1DUpCGM3uFuL8HqkWvU0oumAyFs,4349
957
- cirq/sim/clifford/stabilizer_state_ch_form.py,sha256=1HQd2kFWo63xy_LlonRC2Z1ZhF1QmC6LSYYyAXG5XPc,14055
961
+ cirq/sim/clifford/stabilizer_state_ch_form.py,sha256=PlQVIvcg0myibqZZ0ziLWJXA0_y4ci7UcRAuoF4Dr7g,14167
958
962
  cirq/sim/clifford/stabilizer_state_ch_form_test.py,sha256=bU3GH2tH1n5oxdPkDCCoAND5FZMiJjgLGAbOfZiuxLQ,3165
959
963
  cirq/study/__init__.py,sha256=OyJhZjBiEkNbtSuSZaOwHGwwnOIGgnn-W8ec0xHhHBI,1647
960
964
  cirq/study/flatten_expressions.py,sha256=j-aqhvHbAW764M7VVKB_AI_nLeqSWFs6HNCIic_9XCg,15607
@@ -1201,7 +1205,7 @@ cirq/work/collector_test.py,sha256=MirBDZ584HMZ3nJRUOSSQZcAyLR6sKc124GTQqPkunc,4
1201
1205
  cirq/work/observable_grouping.py,sha256=Nx-oeih6fCDVxux3E3b6_Q4xDBJaEhzujc9Y2xYX8uY,3492
1202
1206
  cirq/work/observable_grouping_test.py,sha256=NzTPw6PD0-jvRRsGj4Q1kmZRj68I9SXbKR_PBr7OZAM,5875
1203
1207
  cirq/work/observable_measurement.py,sha256=On5e9So3q2jMrtAhiXcbvCNZQPMrzABZxjed0LHzqjo,28303
1204
- cirq/work/observable_measurement_data.py,sha256=4vgReYuKZS_nJpRdr7SJ8aGnZfa-2LZDGOLR_fQvwmA,20962
1208
+ cirq/work/observable_measurement_data.py,sha256=LOykgXlEcx1HLgHnODAPSuhSmxRRSZGrS5RN67wPHpg,21186
1205
1209
  cirq/work/observable_measurement_data_test.py,sha256=vI_SMbG4riMu0XD0tN9d_Kbq2u73k6kxTWU6Vx_tfOI,19696
1206
1210
  cirq/work/observable_measurement_test.py,sha256=0EvlC3rqiKSudEyq24ZYD1NQ6mxYMO9CluP3Clc-BOI,20189
1207
1211
  cirq/work/observable_readout_calibration.py,sha256=XM8pY3lAJqwQSuCqVDhx4P2XeDzk-QC2nXMVlhlDz5s,1921
@@ -1214,8 +1218,8 @@ cirq/work/sampler.py,sha256=b7O3B8bc77KQb8ReLx7qeF8owP1Qwb5_I-RwC6-M_C8,19118
1214
1218
  cirq/work/sampler_test.py,sha256=TBJm3gepuOURwklJTXNdqj0thvdqKUvrZwZqdytJxNY,13313
1215
1219
  cirq/work/zeros_sampler.py,sha256=vHCfqkXmUcPkaDuKHlY-UQ71dUHVroEtm_XW51mZpHs,2390
1216
1220
  cirq/work/zeros_sampler_test.py,sha256=lQLgQDGBLtfImryys2HzQ2jOSGxHgc7-koVBUhv8qYk,3345
1217
- cirq_core-1.6.0.dev20250514171429.dist-info/licenses/LICENSE,sha256=tAkwu8-AdEyGxGoSvJ2gVmQdcicWw3j1ZZueVV74M-E,11357
1218
- cirq_core-1.6.0.dev20250514171429.dist-info/METADATA,sha256=rpnyuVvUlgBhsMI8Yn7beN4NoCA-UdO2eIsFn1UmYHY,4959
1219
- cirq_core-1.6.0.dev20250514171429.dist-info/WHEEL,sha256=DnLRTWE75wApRYVsjgc6wsVswC54sMSJhAEd4xhDpBk,91
1220
- cirq_core-1.6.0.dev20250514171429.dist-info/top_level.txt,sha256=Sz9iOxHU0IEMLSFGwiwOCaN2e9K-jFbBbtpPN1hB73g,5
1221
- cirq_core-1.6.0.dev20250514171429.dist-info/RECORD,,
1221
+ cirq_core-1.6.0.dev20250514184136.dist-info/licenses/LICENSE,sha256=tAkwu8-AdEyGxGoSvJ2gVmQdcicWw3j1ZZueVV74M-E,11357
1222
+ cirq_core-1.6.0.dev20250514184136.dist-info/METADATA,sha256=w65awTjRDqY1mtIYW5xuG0GAozsnT9h73Q70z3bRwtI,4959
1223
+ cirq_core-1.6.0.dev20250514184136.dist-info/WHEEL,sha256=DnLRTWE75wApRYVsjgc6wsVswC54sMSJhAEd4xhDpBk,91
1224
+ cirq_core-1.6.0.dev20250514184136.dist-info/top_level.txt,sha256=Sz9iOxHU0IEMLSFGwiwOCaN2e9K-jFbBbtpPN1hB73g,5
1225
+ cirq_core-1.6.0.dev20250514184136.dist-info/RECORD,,