cirq-core 1.5.0.dev20250206210935__py3-none-any.whl → 1.5.0.dev20250207063657__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 +1 -1
- cirq/_version_test.py +1 -1
- cirq/interop/quirk/cells/parse.py +1 -1
- cirq/linalg/combinators.py +2 -2
- cirq/linalg/decompositions.py +2 -8
- cirq/linalg/tolerance.py +1 -1
- cirq/ops/dense_pauli_string.py +5 -5
- cirq/ops/eigen_gate.py +1 -1
- cirq/ops/identity.py +3 -2
- cirq/ops/linear_combinations.py +1 -1
- cirq/ops/pauli_string.py +13 -16
- cirq/ops/pauli_string_phasor.py +2 -2
- cirq/ops/pauli_string_test.py +2 -0
- cirq/ops/phased_x_gate.py +2 -2
- cirq/ops/phased_x_z_gate.py +3 -3
- cirq/ops/projector.py +2 -4
- cirq/ops/raw_types.py +3 -3
- cirq/qis/states.py +2 -2
- cirq/sim/clifford/stabilizer_state_ch_form.py +2 -2
- cirq/study/flatten_expressions.py +2 -2
- {cirq_core-1.5.0.dev20250206210935.dist-info → cirq_core-1.5.0.dev20250207063657.dist-info}/METADATA +1 -1
- {cirq_core-1.5.0.dev20250206210935.dist-info → cirq_core-1.5.0.dev20250207063657.dist-info}/RECORD +25 -25
- {cirq_core-1.5.0.dev20250206210935.dist-info → cirq_core-1.5.0.dev20250207063657.dist-info}/LICENSE +0 -0
- {cirq_core-1.5.0.dev20250206210935.dist-info → cirq_core-1.5.0.dev20250207063657.dist-info}/WHEEL +0 -0
- {cirq_core-1.5.0.dev20250206210935.dist-info → cirq_core-1.5.0.dev20250207063657.dist-info}/top_level.txt +0 -0
cirq/_version.py
CHANGED
cirq/_version_test.py
CHANGED
|
@@ -86,7 +86,7 @@ def _tokenize(text: str) -> List[str]:
|
|
|
86
86
|
return _merge_scientific_float_tokens(g for g in result if g.strip())
|
|
87
87
|
|
|
88
88
|
|
|
89
|
-
_ResolvedToken = Union[sympy.Expr,
|
|
89
|
+
_ResolvedToken = Union[sympy.Expr, complex]
|
|
90
90
|
|
|
91
91
|
|
|
92
92
|
class _CustomQuirkOperationToken:
|
cirq/linalg/combinators.py
CHANGED
|
@@ -25,7 +25,7 @@ if TYPE_CHECKING:
|
|
|
25
25
|
from numpy.typing import DTypeLike, ArrayLike
|
|
26
26
|
|
|
27
27
|
|
|
28
|
-
def kron(*factors: Union[np.ndarray, complex
|
|
28
|
+
def kron(*factors: Union[np.ndarray, complex], shape_len: int = 2) -> np.ndarray:
|
|
29
29
|
"""Computes the kronecker product of a sequence of values.
|
|
30
30
|
|
|
31
31
|
A *args version of lambda args: functools.reduce(np.kron, args).
|
|
@@ -56,7 +56,7 @@ document(
|
|
|
56
56
|
)
|
|
57
57
|
|
|
58
58
|
|
|
59
|
-
def kron_with_controls(*factors: Union[np.ndarray, complex
|
|
59
|
+
def kron_with_controls(*factors: Union[np.ndarray, complex]) -> np.ndarray:
|
|
60
60
|
"""Computes the kronecker product of a sequence of values and control tags.
|
|
61
61
|
|
|
62
62
|
Use `cirq.CONTROL_TAG` to represent controls. Any entry of the output
|
cirq/linalg/decompositions.py
CHANGED
|
@@ -283,13 +283,7 @@ class AxisAngleDecomposition:
|
|
|
283
283
|
rotation axis, and g is the global phase.
|
|
284
284
|
"""
|
|
285
285
|
|
|
286
|
-
def __init__(
|
|
287
|
-
self,
|
|
288
|
-
*,
|
|
289
|
-
angle: float,
|
|
290
|
-
axis: Tuple[float, float, float],
|
|
291
|
-
global_phase: Union[int, float, complex],
|
|
292
|
-
):
|
|
286
|
+
def __init__(self, *, angle: float, axis: Tuple[float, float, float], global_phase: complex):
|
|
293
287
|
if not np.isclose(np.linalg.norm(axis, 2), 1, atol=1e-8):
|
|
294
288
|
raise ValueError('Axis vector must be normalized.')
|
|
295
289
|
self.global_phase = complex(global_phase)
|
|
@@ -634,7 +628,7 @@ def scatter_plot_normalized_kak_interaction_coefficients(
|
|
|
634
628
|
ax = cast(mplot3d.axes3d.Axes3D, fig.add_subplot(1, 1, 1, projection='3d'))
|
|
635
629
|
|
|
636
630
|
def coord_transform(
|
|
637
|
-
pts: Union[List[Tuple[int, int, int]], np.ndarray]
|
|
631
|
+
pts: Union[List[Tuple[int, int, int]], np.ndarray],
|
|
638
632
|
) -> Tuple[np.ndarray, np.ndarray, np.ndarray]:
|
|
639
633
|
if len(pts) == 0:
|
|
640
634
|
return np.array([]), np.array([]), np.array([])
|
cirq/linalg/tolerance.py
CHANGED
|
@@ -33,7 +33,7 @@ def all_near_zero(a: 'ArrayLike', *, atol: float = 1e-8) -> bool:
|
|
|
33
33
|
|
|
34
34
|
|
|
35
35
|
def all_near_zero_mod(
|
|
36
|
-
a: Union[float,
|
|
36
|
+
a: Union[float, Iterable[float], np.ndarray], period: float, *, atol: float = 1e-8
|
|
37
37
|
) -> bool:
|
|
38
38
|
"""Checks if the tensor's elements are all near multiples of the period.
|
|
39
39
|
|
cirq/ops/dense_pauli_string.py
CHANGED
|
@@ -116,7 +116,7 @@ class BaseDensePauliString(raw_types.Gate, metaclass=abc.ABCMeta):
|
|
|
116
116
|
return self._pauli_mask
|
|
117
117
|
|
|
118
118
|
@property
|
|
119
|
-
def coefficient(self) ->
|
|
119
|
+
def coefficient(self) -> 'cirq.TParamValComplex':
|
|
120
120
|
"""A complex coefficient or symbol."""
|
|
121
121
|
return self._coefficient
|
|
122
122
|
|
|
@@ -359,7 +359,7 @@ class BaseDensePauliString(raw_types.Gate, metaclass=abc.ABCMeta):
|
|
|
359
359
|
coef = '+'
|
|
360
360
|
elif self.coefficient == -1:
|
|
361
361
|
coef = '-'
|
|
362
|
-
elif isinstance(self.coefficient, (
|
|
362
|
+
elif isinstance(self.coefficient, (numbers.Complex, sympy.Symbol)):
|
|
363
363
|
coef = f'{self.coefficient}*'
|
|
364
364
|
else:
|
|
365
365
|
coef = f'({self.coefficient})*'
|
|
@@ -403,7 +403,7 @@ class BaseDensePauliString(raw_types.Gate, metaclass=abc.ABCMeta):
|
|
|
403
403
|
@abc.abstractmethod
|
|
404
404
|
def copy(
|
|
405
405
|
self,
|
|
406
|
-
coefficient: Optional[
|
|
406
|
+
coefficient: Optional['cirq.TParamValComplex'] = None,
|
|
407
407
|
pauli_mask: Union[None, str, Iterable[int], np.ndarray] = None,
|
|
408
408
|
) -> Self:
|
|
409
409
|
"""Returns a copy with possibly modified contents.
|
|
@@ -459,7 +459,7 @@ class DensePauliString(BaseDensePauliString):
|
|
|
459
459
|
|
|
460
460
|
def copy(
|
|
461
461
|
self,
|
|
462
|
-
coefficient: Optional[
|
|
462
|
+
coefficient: Optional['cirq.TParamValComplex'] = None,
|
|
463
463
|
pauli_mask: Union[None, str, Iterable[int], np.ndarray] = None,
|
|
464
464
|
) -> 'DensePauliString':
|
|
465
465
|
if pauli_mask is None and (coefficient is None or coefficient == self.coefficient):
|
|
@@ -559,7 +559,7 @@ class MutableDensePauliString(BaseDensePauliString):
|
|
|
559
559
|
|
|
560
560
|
def copy(
|
|
561
561
|
self,
|
|
562
|
-
coefficient: Optional[
|
|
562
|
+
coefficient: Optional['cirq.TParamValComplex'] = None,
|
|
563
563
|
pauli_mask: Union[None, str, Iterable[int], np.ndarray] = None,
|
|
564
564
|
) -> 'MutableDensePauliString':
|
|
565
565
|
return MutableDensePauliString(
|
cirq/ops/eigen_gate.py
CHANGED
|
@@ -359,7 +359,7 @@ class EigenGate(raw_types.Gate):
|
|
|
359
359
|
|
|
360
360
|
def _resolve_parameters_(self, resolver: 'cirq.ParamResolver', recursive: bool) -> 'EigenGate':
|
|
361
361
|
exponent = resolver.value_of(self._exponent, recursive)
|
|
362
|
-
if isinstance(exponent,
|
|
362
|
+
if isinstance(exponent, numbers.Complex):
|
|
363
363
|
if isinstance(exponent, numbers.Real):
|
|
364
364
|
exponent = float(exponent)
|
|
365
365
|
else:
|
cirq/ops/identity.py
CHANGED
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
# limitations under the License.
|
|
14
14
|
"""IdentityGate."""
|
|
15
15
|
|
|
16
|
+
import numbers
|
|
16
17
|
from types import NotImplementedType
|
|
17
18
|
from typing import Any, Dict, Optional, Tuple, TYPE_CHECKING, Sequence, Union
|
|
18
19
|
|
|
@@ -72,7 +73,7 @@ class IdentityGate(raw_types.Gate):
|
|
|
72
73
|
return len(self._qid_shape)
|
|
73
74
|
|
|
74
75
|
def __pow__(self, power: Any) -> Any:
|
|
75
|
-
if isinstance(power, (
|
|
76
|
+
if isinstance(power, (numbers.Complex, sympy.Basic)):
|
|
76
77
|
return self
|
|
77
78
|
return NotImplemented
|
|
78
79
|
|
|
@@ -126,7 +127,7 @@ class IdentityGate(raw_types.Gate):
|
|
|
126
127
|
def _mul_with_qubits(self, qubits: Tuple['cirq.Qid', ...], other):
|
|
127
128
|
if isinstance(other, raw_types.Operation):
|
|
128
129
|
return other
|
|
129
|
-
if isinstance(other,
|
|
130
|
+
if isinstance(other, numbers.Complex):
|
|
130
131
|
from cirq.ops.pauli_string import PauliString
|
|
131
132
|
|
|
132
133
|
return PauliString(coefficient=other)
|
cirq/ops/linear_combinations.py
CHANGED
|
@@ -48,7 +48,7 @@ if TYPE_CHECKING:
|
|
|
48
48
|
|
|
49
49
|
UnitPauliStringT = FrozenSet[Tuple[raw_types.Qid, pauli_gates.Pauli]]
|
|
50
50
|
PauliSumLike = Union[
|
|
51
|
-
|
|
51
|
+
complex, PauliString, 'PauliSum', pauli_string.SingleQubitPauliStringGateOperation
|
|
52
52
|
]
|
|
53
53
|
document(
|
|
54
54
|
PauliSumLike,
|
cirq/ops/pauli_string.py
CHANGED
|
@@ -28,7 +28,6 @@ from typing import (
|
|
|
28
28
|
Optional,
|
|
29
29
|
overload,
|
|
30
30
|
Sequence,
|
|
31
|
-
SupportsComplex,
|
|
32
31
|
Tuple,
|
|
33
32
|
TYPE_CHECKING,
|
|
34
33
|
TypeVar,
|
|
@@ -271,9 +270,7 @@ class PauliString(raw_types.Operation, Generic[TKey]):
|
|
|
271
270
|
pass
|
|
272
271
|
|
|
273
272
|
@overload
|
|
274
|
-
def __mul__(
|
|
275
|
-
self, other: Union[complex, int, float, numbers.Number]
|
|
276
|
-
) -> 'cirq.PauliString[TKey]':
|
|
273
|
+
def __mul__(self, other: complex) -> 'cirq.PauliString[TKey]':
|
|
277
274
|
pass
|
|
278
275
|
|
|
279
276
|
def __mul__(self, other):
|
|
@@ -308,10 +305,9 @@ class PauliString(raw_types.Operation, Generic[TKey]):
|
|
|
308
305
|
)
|
|
309
306
|
|
|
310
307
|
def __rmul__(self, other) -> 'PauliString':
|
|
311
|
-
if isinstance(other, numbers.
|
|
308
|
+
if isinstance(other, numbers.Complex):
|
|
312
309
|
return PauliString(
|
|
313
|
-
qubit_pauli_map=self._qubit_pauli_map,
|
|
314
|
-
coefficient=self._coefficient * complex(cast(SupportsComplex, other)),
|
|
310
|
+
qubit_pauli_map=self._qubit_pauli_map, coefficient=self._coefficient * other
|
|
315
311
|
)
|
|
316
312
|
|
|
317
313
|
if isinstance(other, raw_types.Operation) and isinstance(other.gate, identity.IdentityGate):
|
|
@@ -321,10 +317,9 @@ class PauliString(raw_types.Operation, Generic[TKey]):
|
|
|
321
317
|
return NotImplemented
|
|
322
318
|
|
|
323
319
|
def __truediv__(self, other):
|
|
324
|
-
if isinstance(other, numbers.
|
|
320
|
+
if isinstance(other, numbers.Complex):
|
|
325
321
|
return PauliString(
|
|
326
|
-
qubit_pauli_map=self._qubit_pauli_map,
|
|
327
|
-
coefficient=self._coefficient / complex(cast(SupportsComplex, other)),
|
|
322
|
+
qubit_pauli_map=self._qubit_pauli_map, coefficient=self._coefficient / other
|
|
328
323
|
)
|
|
329
324
|
return NotImplemented
|
|
330
325
|
|
|
@@ -518,7 +513,7 @@ class PauliString(raw_types.Operation, Generic[TKey]):
|
|
|
518
513
|
def _apply_unitary_(self, args: 'protocols.ApplyUnitaryArgs'):
|
|
519
514
|
if not self._has_unitary_():
|
|
520
515
|
return None
|
|
521
|
-
assert isinstance(self.coefficient,
|
|
516
|
+
assert isinstance(self.coefficient, numbers.Complex)
|
|
522
517
|
if self.coefficient != 1:
|
|
523
518
|
args.target_tensor *= self.coefficient
|
|
524
519
|
return protocols.apply_unitaries([self[q].on(q) for q in self.qubits], self.qubits, args)
|
|
@@ -792,9 +787,11 @@ class PauliString(raw_types.Operation, Generic[TKey]):
|
|
|
792
787
|
return self
|
|
793
788
|
|
|
794
789
|
def __array_ufunc__(self, ufunc, method, *inputs, **kwargs):
|
|
795
|
-
"""Override
|
|
790
|
+
"""Override numpy behavior."""
|
|
796
791
|
if ufunc == np.exp and len(inputs) == 1 and inputs[0] is self:
|
|
797
792
|
return math.e**self
|
|
793
|
+
if ufunc == np.multiply and len(inputs) == 2 and inputs[1] is self:
|
|
794
|
+
return self * inputs[0]
|
|
798
795
|
return NotImplemented
|
|
799
796
|
|
|
800
797
|
def __pow__(self, power):
|
|
@@ -1174,14 +1171,14 @@ class SingleQubitPauliStringGateOperation( # type: ignore
|
|
|
1174
1171
|
def __mul__(self, other):
|
|
1175
1172
|
if isinstance(other, SingleQubitPauliStringGateOperation):
|
|
1176
1173
|
return self._as_pauli_string() * other._as_pauli_string()
|
|
1177
|
-
if isinstance(other, (PauliString,
|
|
1174
|
+
if isinstance(other, (PauliString, numbers.Complex)):
|
|
1178
1175
|
return self._as_pauli_string() * other
|
|
1179
1176
|
if (as_pauli_string := _try_interpret_as_pauli_string(other)) is not None:
|
|
1180
1177
|
return self * as_pauli_string
|
|
1181
1178
|
return NotImplemented
|
|
1182
1179
|
|
|
1183
1180
|
def __rmul__(self, other):
|
|
1184
|
-
if isinstance(other, (PauliString,
|
|
1181
|
+
if isinstance(other, (PauliString, numbers.Complex)):
|
|
1185
1182
|
return other * self._as_pauli_string()
|
|
1186
1183
|
if (as_pauli_string := _try_interpret_as_pauli_string(other)) is not None:
|
|
1187
1184
|
return as_pauli_string * self
|
|
@@ -1430,8 +1427,8 @@ class MutablePauliString(Generic[TKey]):
|
|
|
1430
1427
|
pauli_int = _pauli_like_to_pauli_int(qubit, pauli_gate_like)
|
|
1431
1428
|
phase_log_i += self._imul_atom_helper(cast(TKey, qubit), pauli_int, sign)
|
|
1432
1429
|
self.coefficient *= 1j ** (phase_log_i & 3)
|
|
1433
|
-
elif isinstance(other, numbers.
|
|
1434
|
-
self.coefficient *=
|
|
1430
|
+
elif isinstance(other, numbers.Complex):
|
|
1431
|
+
self.coefficient *= other
|
|
1435
1432
|
elif isinstance(other, raw_types.Operation) and isinstance(
|
|
1436
1433
|
other.gate, identity.IdentityGate
|
|
1437
1434
|
):
|
cirq/ops/pauli_string_phasor.py
CHANGED
|
@@ -392,14 +392,14 @@ class PauliStringPhasorGate(raw_types.Gate):
|
|
|
392
392
|
) -> 'PauliStringPhasorGate':
|
|
393
393
|
exponent_neg = resolver.value_of(self.exponent_neg, recursive)
|
|
394
394
|
exponent_pos = resolver.value_of(self.exponent_pos, recursive)
|
|
395
|
-
if isinstance(exponent_neg,
|
|
395
|
+
if isinstance(exponent_neg, numbers.Complex):
|
|
396
396
|
if isinstance(exponent_neg, numbers.Real):
|
|
397
397
|
exponent_neg = float(exponent_neg)
|
|
398
398
|
else:
|
|
399
399
|
raise ValueError(
|
|
400
400
|
f'PauliStringPhasorGate does not support complex exponent {exponent_neg}'
|
|
401
401
|
)
|
|
402
|
-
if isinstance(exponent_pos,
|
|
402
|
+
if isinstance(exponent_pos, numbers.Complex):
|
|
403
403
|
if isinstance(exponent_pos, numbers.Real):
|
|
404
404
|
exponent_pos = float(exponent_pos)
|
|
405
405
|
else:
|
cirq/ops/pauli_string_test.py
CHANGED
cirq/ops/phased_x_gate.py
CHANGED
|
@@ -176,12 +176,12 @@ class PhasedXPowGate(raw_types.Gate):
|
|
|
176
176
|
"""See `cirq.SupportsParameterization`."""
|
|
177
177
|
phase_exponent = resolver.value_of(self._phase_exponent, recursive)
|
|
178
178
|
exponent = resolver.value_of(self._exponent, recursive)
|
|
179
|
-
if isinstance(phase_exponent,
|
|
179
|
+
if isinstance(phase_exponent, numbers.Complex):
|
|
180
180
|
if isinstance(phase_exponent, numbers.Real):
|
|
181
181
|
phase_exponent = float(phase_exponent)
|
|
182
182
|
else:
|
|
183
183
|
raise ValueError(f'PhasedXPowGate does not support complex value {phase_exponent}')
|
|
184
|
-
if isinstance(exponent,
|
|
184
|
+
if isinstance(exponent, numbers.Complex):
|
|
185
185
|
if isinstance(exponent, numbers.Real):
|
|
186
186
|
exponent = float(exponent)
|
|
187
187
|
else:
|
cirq/ops/phased_x_z_gate.py
CHANGED
|
@@ -229,17 +229,17 @@ class PhasedXZGate(raw_types.Gate):
|
|
|
229
229
|
z_exponent = resolver.value_of(self._z_exponent, recursive)
|
|
230
230
|
x_exponent = resolver.value_of(self._x_exponent, recursive)
|
|
231
231
|
axis_phase_exponent = resolver.value_of(self._axis_phase_exponent, recursive)
|
|
232
|
-
if isinstance(z_exponent,
|
|
232
|
+
if isinstance(z_exponent, numbers.Complex):
|
|
233
233
|
if isinstance(z_exponent, numbers.Real):
|
|
234
234
|
z_exponent = float(z_exponent)
|
|
235
235
|
else:
|
|
236
236
|
raise ValueError(f'Complex exponent {z_exponent} not allowed in cirq.PhasedXZGate')
|
|
237
|
-
if isinstance(x_exponent,
|
|
237
|
+
if isinstance(x_exponent, numbers.Complex):
|
|
238
238
|
if isinstance(x_exponent, numbers.Real):
|
|
239
239
|
x_exponent = float(x_exponent)
|
|
240
240
|
else:
|
|
241
241
|
raise ValueError(f'Complex exponent {x_exponent} not allowed in cirq.PhasedXZGate')
|
|
242
|
-
if isinstance(axis_phase_exponent,
|
|
242
|
+
if isinstance(axis_phase_exponent, numbers.Complex):
|
|
243
243
|
if isinstance(axis_phase_exponent, numbers.Real):
|
|
244
244
|
axis_phase_exponent = float(axis_phase_exponent)
|
|
245
245
|
else:
|
cirq/ops/projector.py
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# pylint: disable=wrong-or-nonexistent-copyright-notice
|
|
2
2
|
import itertools
|
|
3
3
|
import math
|
|
4
|
-
from typing import Any, Dict, Iterable, List, Mapping, Optional
|
|
4
|
+
from typing import Any, Dict, Iterable, List, Mapping, Optional
|
|
5
5
|
|
|
6
6
|
import numpy as np
|
|
7
7
|
from scipy.sparse import csr_matrix
|
|
@@ -21,9 +21,7 @@ def _check_qids_dimension(qids):
|
|
|
21
21
|
class ProjectorString:
|
|
22
22
|
"""Mapping of `cirq.Qid` to measurement values (with a coefficient) representing a projector."""
|
|
23
23
|
|
|
24
|
-
def __init__(
|
|
25
|
-
self, projector_dict: Dict[raw_types.Qid, int], coefficient: Union[int, float, complex] = 1
|
|
26
|
-
):
|
|
24
|
+
def __init__(self, projector_dict: Dict[raw_types.Qid, int], coefficient: complex = 1):
|
|
27
25
|
"""Constructor for ProjectorString
|
|
28
26
|
|
|
29
27
|
Args:
|
cirq/ops/raw_types.py
CHANGED
|
@@ -337,13 +337,13 @@ class Gate(metaclass=value.ABCMetaImplementAnyOneOf):
|
|
|
337
337
|
def __neg__(self) -> 'cirq.LinearCombinationOfGates':
|
|
338
338
|
return self.wrap_in_linear_combination(coefficient=-1)
|
|
339
339
|
|
|
340
|
-
def __mul__(self, other:
|
|
340
|
+
def __mul__(self, other: complex) -> 'cirq.LinearCombinationOfGates':
|
|
341
341
|
return self.wrap_in_linear_combination(coefficient=other)
|
|
342
342
|
|
|
343
|
-
def __rmul__(self, other:
|
|
343
|
+
def __rmul__(self, other: complex) -> 'cirq.LinearCombinationOfGates':
|
|
344
344
|
return self.wrap_in_linear_combination(coefficient=other)
|
|
345
345
|
|
|
346
|
-
def __truediv__(self, other:
|
|
346
|
+
def __truediv__(self, other: complex) -> 'cirq.LinearCombinationOfGates':
|
|
347
347
|
return self.wrap_in_linear_combination(coefficient=1 / other)
|
|
348
348
|
|
|
349
349
|
def __pow__(self, power):
|
cirq/qis/states.py
CHANGED
|
@@ -35,7 +35,7 @@ STATE_VECTOR_LIKE = Union[
|
|
|
35
35
|
Sequence[int],
|
|
36
36
|
# Explicit state vector or state tensor.
|
|
37
37
|
np.ndarray,
|
|
38
|
-
Sequence[
|
|
38
|
+
Sequence[complex],
|
|
39
39
|
# Product state object
|
|
40
40
|
'cirq.ProductState',
|
|
41
41
|
]
|
|
@@ -341,7 +341,7 @@ _NON_INT_STATE_LIKE = Union[
|
|
|
341
341
|
Sequence[int],
|
|
342
342
|
# Explicit state vector or state tensor.
|
|
343
343
|
np.ndarray,
|
|
344
|
-
Sequence[
|
|
344
|
+
Sequence[complex],
|
|
345
345
|
# Product state object
|
|
346
346
|
'cirq.ProductState',
|
|
347
347
|
# Quantum state object
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
# See the License for the specific language governing permissions and
|
|
13
13
|
# limitations under the License.
|
|
14
14
|
|
|
15
|
-
from typing import Any, Dict, List, Sequence
|
|
15
|
+
from typing import Any, Dict, List, Sequence
|
|
16
16
|
import numpy as np
|
|
17
17
|
|
|
18
18
|
import cirq
|
|
@@ -101,7 +101,7 @@ class StabilizerStateChForm(qis.StabilizerState):
|
|
|
101
101
|
"""Return the CH form representation of the state."""
|
|
102
102
|
return f'StabilizerStateChForm(num_qubits={self.n!r})'
|
|
103
103
|
|
|
104
|
-
def inner_product_of_state_and_x(self, x: int) ->
|
|
104
|
+
def inner_product_of_state_and_x(self, x: int) -> complex:
|
|
105
105
|
"""Returns the amplitude of x'th element of
|
|
106
106
|
the state vector, i.e. <x|psi>"""
|
|
107
107
|
if type(x) == int:
|
|
@@ -269,7 +269,7 @@ class _ParamFlattener(resolver.ParamResolver):
|
|
|
269
269
|
The unique symbol or value of the parameter as resolved by this
|
|
270
270
|
resolver.
|
|
271
271
|
"""
|
|
272
|
-
if isinstance(value,
|
|
272
|
+
if isinstance(value, numbers.Complex):
|
|
273
273
|
return value
|
|
274
274
|
if isinstance(value, str):
|
|
275
275
|
value = sympy.Symbol(value)
|
|
@@ -380,7 +380,7 @@ class ExpressionMap(dict):
|
|
|
380
380
|
|
|
381
381
|
|
|
382
382
|
def _ensure_not_str(
|
|
383
|
-
param: Union[sympy.Expr, 'cirq.TParamValComplex', str]
|
|
383
|
+
param: Union[sympy.Expr, 'cirq.TParamValComplex', str],
|
|
384
384
|
) -> Union[sympy.Expr, 'cirq.TParamValComplex']:
|
|
385
385
|
if isinstance(param, str):
|
|
386
386
|
return sympy.Symbol(param)
|
{cirq_core-1.5.0.dev20250206210935.dist-info → cirq_core-1.5.0.dev20250207063657.dist-info}/METADATA
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: cirq-core
|
|
3
|
-
Version: 1.5.0.
|
|
3
|
+
Version: 1.5.0.dev20250207063657
|
|
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
|
{cirq_core-1.5.0.dev20250206210935.dist-info → cirq_core-1.5.0.dev20250207063657.dist-info}/RECORD
RENAMED
|
@@ -4,8 +4,8 @@ cirq/_compat_test.py,sha256=Qq3ZcfgD-Nb81cEppQdJqhAyrVqXKtfXZYGXT0p-Wh0,34718
|
|
|
4
4
|
cirq/_doc.py,sha256=yDyWUD_2JDS0gShfGRb-rdqRt9-WeL7DhkqX7np0Nko,2879
|
|
5
5
|
cirq/_import.py,sha256=p9gMHJscbtDDkfHOaulvd3Aer0pwUF5AXpL89XR8dNw,8402
|
|
6
6
|
cirq/_import_test.py,sha256=6K_v0riZJXOXUphHNkGA8MY-JcmGlezFaGmvrNhm3OQ,1015
|
|
7
|
-
cirq/_version.py,sha256=
|
|
8
|
-
cirq/_version_test.py,sha256=
|
|
7
|
+
cirq/_version.py,sha256=NwjwW-Jelx2vuigtJ6vLt9NrNxrfjJBJQ_eUa3plglU,1206
|
|
8
|
+
cirq/_version_test.py,sha256=u9qKu659VRmWCTxP9EjT2nBPjDSBUuaKeU9xO5ltIDc,147
|
|
9
9
|
cirq/conftest.py,sha256=X7yLFL8GLhg2CjPw0hp5e_dGASfvHx1-QT03aUbhKJw,1168
|
|
10
10
|
cirq/json_resolver_cache.py,sha256=p-vEOa-8GQ2cFIAdze-kd6C1un1uRvtujVPljVKaHBg,13557
|
|
11
11
|
cirq/py.typed,sha256=VFSlmh_lNwnaXzwY-ZuW-C2Ws5PkuDoVgBdNCs0jXJE,63
|
|
@@ -230,7 +230,7 @@ cirq/interop/quirk/cells/input_rotation_cells.py,sha256=mo75TGkbtD_phNPM-ZPFs2VJ
|
|
|
230
230
|
cirq/interop/quirk/cells/input_rotation_cells_test.py,sha256=1jmEBHbHpmSSB3grPbn8LFzMEwkc6Or3kAULxVofTEg,6318
|
|
231
231
|
cirq/interop/quirk/cells/measurement_cells.py,sha256=1jLtGMHCbxfNN9r5E_GWPIqz7fLdNKJK0WgrcjXsS3I,1504
|
|
232
232
|
cirq/interop/quirk/cells/measurement_cells_test.py,sha256=AYYzjn3BrQbk-Rg1L3WjCOQN9eGLRQzqwYr6i8UH0Fk,1574
|
|
233
|
-
cirq/interop/quirk/cells/parse.py,sha256=
|
|
233
|
+
cirq/interop/quirk/cells/parse.py,sha256=lvh6rqSrBr8-CYQuq4qGdHcZipnZ9XAIQGCwYshjCUY,11874
|
|
234
234
|
cirq/interop/quirk/cells/parse_test.py,sha256=xCTS6lKv4i8HAuTSivH2Tjwun1yMQbnl7HLfB-nEKY4,7473
|
|
235
235
|
cirq/interop/quirk/cells/qubit_permutation_cells.py,sha256=F9Br_SFB1ys4pP-hYlpPRMXH_4Cd8LePtOl4aTE_p8g,3390
|
|
236
236
|
cirq/interop/quirk/cells/qubit_permutation_cells_test.py,sha256=n0veQKx0EdFzu_gdY_AVjwqyoHae7JGkDFX6qhLeGrQ,4460
|
|
@@ -246,9 +246,9 @@ cirq/interop/quirk/cells/unsupported_cells.py,sha256=JFLuP_0MtKQ2sMpB1Jx071qrn9o
|
|
|
246
246
|
cirq/interop/quirk/cells/unsupported_cells_test.py,sha256=5bl-maazy7Dr8u6kwK1AhGT4vtHqzIMRKxoMKYC-JWs,2178
|
|
247
247
|
cirq/ion/__init__.py,sha256=F6tf4JZOGpDdxX0FxT42qgq8rF96ZTFHMJ0OV09Yj1c,787
|
|
248
248
|
cirq/linalg/__init__.py,sha256=9WLnBqLQ02FzCIUcchHBMYpOGVcENAjzv7GyDNgh89I,4013
|
|
249
|
-
cirq/linalg/combinators.py,sha256=
|
|
249
|
+
cirq/linalg/combinators.py,sha256=bq--LTsTI2WFRnok3weeIX7_QYKTW2OEFC2xktPMwA0,5336
|
|
250
250
|
cirq/linalg/combinators_test.py,sha256=nZ3snkVA2nAOZ6WJK1hNd1f_i2a5xNdnostfMD1upbc,4699
|
|
251
|
-
cirq/linalg/decompositions.py,sha256=
|
|
251
|
+
cirq/linalg/decompositions.py,sha256=8FlQKq5gwORCbDU807gCu6zsuC9o0VEVOUbNGaJPZbM,39164
|
|
252
252
|
cirq/linalg/decompositions_test.py,sha256=S6p9AJO_9wwQdmNHYTAgBK4TL6_lz1U93sLNNuUJmBw,25840
|
|
253
253
|
cirq/linalg/diagonalize.py,sha256=Ym7C0JTAC9xfRQDYI72U6NxMYg0DfchjfXcbdg_92QE,10051
|
|
254
254
|
cirq/linalg/diagonalize_test.py,sha256=H-JcLvcCBdN-DrKo2o1Gs7B8Q9SU70oAZmdT4yTLAi4,9089
|
|
@@ -256,7 +256,7 @@ cirq/linalg/operator_spaces.py,sha256=-i5DEAW-b_sgmfZKXFf37XzX5h7cZ7R6EeW7RcFNeE
|
|
|
256
256
|
cirq/linalg/operator_spaces_test.py,sha256=Hbm8e4kGbGw9c4O3v5o0kYbcikwDkdIoAy3V8EofJr4,10605
|
|
257
257
|
cirq/linalg/predicates.py,sha256=Q8BTlR4EvPg2KP9VodK78UEWYJbSCOTqRahn1DnFmSc,12056
|
|
258
258
|
cirq/linalg/predicates_test.py,sha256=UVDkNH2ujI80JwJwsDjbTgyALZUQJAVVCoFN1T_LLf0,21503
|
|
259
|
-
cirq/linalg/tolerance.py,sha256=
|
|
259
|
+
cirq/linalg/tolerance.py,sha256=yHYVSHx2aoRci1aac9ZiM8OH1Bvy1Em-Rybnar701nE,1870
|
|
260
260
|
cirq/linalg/tolerance_test.py,sha256=wnmuXIGEn_mugGoNm3AigSgjV2DMFdj8xpgRTMBbO7A,2355
|
|
261
261
|
cirq/linalg/transformations.py,sha256=errpuYfF2Cxdn2zN1NWAMfFHwu77Mfr5g3lk_MJceDI,32143
|
|
262
262
|
cirq/linalg/transformations_test.py,sha256=ofrqw8H9109vVDBelSGkMjTPkmNinYsin4rvUE_iSn4,25095
|
|
@@ -285,11 +285,11 @@ cirq/ops/controlled_gate.py,sha256=8ELuov5mOUp_cNwwrwMEjB4NwDph4Cpi7ezABx86W8Y,1
|
|
|
285
285
|
cirq/ops/controlled_gate_test.py,sha256=oasofj1Qu4iD2xJffAGDSDB8FN0xzhn5t912rqkKUXI,23083
|
|
286
286
|
cirq/ops/controlled_operation.py,sha256=7X6NgihCuV5iaK-ya9cYZHlBAgN-eFcOFZ3PhGYlkFY,13998
|
|
287
287
|
cirq/ops/controlled_operation_test.py,sha256=iRRkzxMmsChYiWYMuz5-q3xq2mWV1wJY8Y8QQ1ieP5c,16443
|
|
288
|
-
cirq/ops/dense_pauli_string.py,sha256=
|
|
288
|
+
cirq/ops/dense_pauli_string.py,sha256=bnH4F0W2vKFKViL93SXfs0o-6wvHEy8qIxHs_t5gZaQ,24469
|
|
289
289
|
cirq/ops/dense_pauli_string_test.py,sha256=duvgzhgTV9wuem4kDSwtL62SEUCThkz1tdP984-C4_s,21504
|
|
290
290
|
cirq/ops/diagonal_gate.py,sha256=_-Pzt3T6U1Oq6DwExIjCmVYBBSWY6EoBNCKHpzWIRzk,9021
|
|
291
291
|
cirq/ops/diagonal_gate_test.py,sha256=cPHxjc7g2oTcXt5UFm470oo0eJupubSNzs4TccKHlSc,6223
|
|
292
|
-
cirq/ops/eigen_gate.py,sha256=
|
|
292
|
+
cirq/ops/eigen_gate.py,sha256=gmKsmaucve3ob8M3O-ADll5SbOhOsT7_A2MUH63US6E,18323
|
|
293
293
|
cirq/ops/eigen_gate_test.py,sha256=-7l6GmAd1EYzHoGREQN1n7J1VOQKbThH2mA88TRODs8,13928
|
|
294
294
|
cirq/ops/fourier_transform.py,sha256=pynO07OcZSVCeL8L0pNQ9m_y5_wrpTWOMf99BHpjXdU,7579
|
|
295
295
|
cirq/ops/fourier_transform_test.py,sha256=PIK4bWnCIy2TuX0fgclHeU1CBDT6zRVoQpv1v1jt62c,6220
|
|
@@ -305,11 +305,11 @@ cirq/ops/global_phase_op.py,sha256=4qYUov6BnBql2_yqUHI9DE60fLiLmCsKI9ZkfMLRRyo,4
|
|
|
305
305
|
cirq/ops/global_phase_op_test.py,sha256=FjtUsohIYabTtiGytvPQw9Rzkqd6dlT7qrj4oltDbTI,9814
|
|
306
306
|
cirq/ops/greedy_qubit_manager.py,sha256=O9qY8GB1KGxm3B7JEjq50sGVD51bNwTSupJpi3WUeAc,4039
|
|
307
307
|
cirq/ops/greedy_qubit_manager_test.py,sha256=iVZDKes-r08raTiJHpYNmP-Dp89ok3hIU-QboL2BHdw,3300
|
|
308
|
-
cirq/ops/identity.py,sha256=
|
|
308
|
+
cirq/ops/identity.py,sha256=mlmyTQknjlomA8RdqS1SZOmyB4SXPSly1PDW75yfTJo,5892
|
|
309
309
|
cirq/ops/identity_test.py,sha256=OIrm8v4wBVq8bbAGZ-f5TERt8Hl6aD1bL8iHCOEhzNo,7939
|
|
310
310
|
cirq/ops/kraus_channel.py,sha256=tCPAEzr_GAL5vTwI43rBoiOnT04l-ebZanuuEuYWDo8,5085
|
|
311
311
|
cirq/ops/kraus_channel_test.py,sha256=qH2Y9cngXzKCabd-Mq5xBYcM_wyL8c6KkrXw8kZr7Dc,4726
|
|
312
|
-
cirq/ops/linear_combinations.py,sha256=
|
|
312
|
+
cirq/ops/linear_combinations.py,sha256=3D3HpmO_3uhggLAcaeVMSmtG9UL_raUQfC-HrAB5gkM,39916
|
|
313
313
|
cirq/ops/linear_combinations_test.py,sha256=ip-wN8T8nUQviD3ql42eet7k_MQ6DVUfIK8aX-_ygOs,67217
|
|
314
314
|
cirq/ops/matrix_gates.py,sha256=inBhKPsNx7ZeejNpmbPEGl5hgyrTqmA852BVlKMUZmg,9297
|
|
315
315
|
cirq/ops/matrix_gates_test.py,sha256=m5rMwq_sqVvsmkc5opVr3Ikd1ERuULmSRNAvGZUg7ds,14224
|
|
@@ -333,23 +333,23 @@ cirq/ops/pauli_interaction_gate.py,sha256=Ep7XwZMVP81Qq1J2MTc3kJ79h26daOZcLPxqN3
|
|
|
333
333
|
cirq/ops/pauli_interaction_gate_test.py,sha256=U9ORW5Ayx5PESPFiGESzWY-02qHklYcM1mYW56RWe_A,4544
|
|
334
334
|
cirq/ops/pauli_measurement_gate.py,sha256=AS9tzLGAOhJzRzVsW9m-WPz5Wx0sMS1jzhppn5qtW84,7239
|
|
335
335
|
cirq/ops/pauli_measurement_gate_test.py,sha256=uh3J0Ps3V3578V8qkRiEgIl6jBiv8DsXlk_vzLvOEhQ,6720
|
|
336
|
-
cirq/ops/pauli_string.py,sha256=
|
|
337
|
-
cirq/ops/pauli_string_phasor.py,sha256=
|
|
336
|
+
cirq/ops/pauli_string.py,sha256=M40LNLf6_RhEtMW2VmF2rzySTCbQlmBELFEzp6msES0,67402
|
|
337
|
+
cirq/ops/pauli_string_phasor.py,sha256=vkYPsd55rc-h_huuDJWA1vdYZtQVunfCsyj72K57-OM,17649
|
|
338
338
|
cirq/ops/pauli_string_phasor_test.py,sha256=91YXIm9RbqrG8dPdA18E9i4G7JT1epGvM4BZu6_YVzw,27796
|
|
339
339
|
cirq/ops/pauli_string_raw_types.py,sha256=6CgdPWYmOziP4uZbrIsRW0sDSMmV1GioGdAk0owFITU,2240
|
|
340
340
|
cirq/ops/pauli_string_raw_types_test.py,sha256=SZPluslZPGffPq93F5apESBygWZ2cj7BEX6dQuawRQE,2648
|
|
341
|
-
cirq/ops/pauli_string_test.py,sha256=
|
|
341
|
+
cirq/ops/pauli_string_test.py,sha256=ht9FDsphSQgb-dU2YqMuQvzzFKTMS3yS1hMrYbIvawY,74663
|
|
342
342
|
cirq/ops/pauli_sum_exponential.py,sha256=n3fhKWJVMudzGuOcdPHskVNx3fHE2MAblVdkzbDtcz4,4909
|
|
343
343
|
cirq/ops/pauli_sum_exponential_test.py,sha256=wVnJ3FSpEimHT8ERVkmljALrgSuuDYo6GRg91uJ7ztk,5370
|
|
344
344
|
cirq/ops/permutation_gate.py,sha256=2h8n76N2M3nu5MA8JkRQgVLByq5cOEluKUN042ClSRs,4196
|
|
345
345
|
cirq/ops/permutation_gate_test.py,sha256=SwXRgsZNLn5jnGhfcKPJ0J0CIssNzElbFaqylV2TXD8,3281
|
|
346
346
|
cirq/ops/phased_iswap_gate.py,sha256=Q-1PuSc4F3gsZL9UUN8EgrO31Ix6mA-7HoUIndvePbk,8990
|
|
347
347
|
cirq/ops/phased_iswap_gate_test.py,sha256=tB1MqH8Y0Kgr0QIxs1kq1yl2g0mKYI7Q_AaadBhFe2U,7360
|
|
348
|
-
cirq/ops/phased_x_gate.py,sha256=
|
|
348
|
+
cirq/ops/phased_x_gate.py,sha256=RPZAdxRh9tJk8TFU5cttSjQSx66156t8j1hVupfJ_tM,9961
|
|
349
349
|
cirq/ops/phased_x_gate_test.py,sha256=IpY-Z-MsqtYbyIEdxWu1NqgAJF2B7nddxPc2Hxafr4s,10202
|
|
350
|
-
cirq/ops/phased_x_z_gate.py,sha256=
|
|
350
|
+
cirq/ops/phased_x_z_gate.py,sha256=pP_jhfGpKYNBjey00qKmm_H4u9Wa1HWasoR4LCEdwBI,11530
|
|
351
351
|
cirq/ops/phased_x_z_gate_test.py,sha256=KK5-FD5zoaqZkw7p6UKxFddzaFWoxnQnE8LpCiKtIk8,10690
|
|
352
|
-
cirq/ops/projector.py,sha256=
|
|
352
|
+
cirq/ops/projector.py,sha256=y3ignrYFmthdPm_pjJ0Y0xp8SGPviqcT07Y9KEZ231Y,5646
|
|
353
353
|
cirq/ops/projector_test.py,sha256=Wq7ddj-PV30yUXJxJoT3XIw2sIUC1AilnZ9m9N5Ejr8,9063
|
|
354
354
|
cirq/ops/qid_util.py,sha256=SxyoMy_s070lcqXV7ny6vE8pp082OrTjBtawZtHOhXs,2071
|
|
355
355
|
cirq/ops/qid_util_test.py,sha256=JdViBgFfH4bZJyPKTjUf9MuPxMQe08JV_Tl6tusekfk,1061
|
|
@@ -360,7 +360,7 @@ cirq/ops/qubit_order_or_list.py,sha256=WVnhQcOYCgAhiB4t47Kji-pN1tnvs--X5deCQwwGV
|
|
|
360
360
|
cirq/ops/qubit_order_test.py,sha256=B9xMIxlaI7YjRUNA6AkHJuUCFejGYw-lT7ZaSl31yTU,4238
|
|
361
361
|
cirq/ops/random_gate_channel.py,sha256=gKDqZa6AwdCIuuh2UOvO5oxCdGRDOInA7fI3ZLQ-LTY,5121
|
|
362
362
|
cirq/ops/random_gate_channel_test.py,sha256=U3EAaAlCZkgFIYxqwcSkPsaVGrKA2PSeG_DK2ou--AE,8606
|
|
363
|
-
cirq/ops/raw_types.py,sha256=
|
|
363
|
+
cirq/ops/raw_types.py,sha256=aDaBoB4_6iwwYvWRsCfhSNdX6D9l_Jne7bOUsGM0geE,42116
|
|
364
364
|
cirq/ops/raw_types_test.py,sha256=U2sAzc6DjpOmgHafGv94VJXqZHm7J898khmJoHAawHQ,33940
|
|
365
365
|
cirq/ops/state_preparation_channel.py,sha256=PjVtoLbjBAy_XqnFAY40Am-NifeuCFVVLW6RJxph5sQ,4778
|
|
366
366
|
cirq/ops/state_preparation_channel_test.py,sha256=yKUvLw_ft6cvIgRJcFQ779wZS-V6V-pzQq-rZRWdCmU,5922
|
|
@@ -903,7 +903,7 @@ cirq/qis/measures_test.py,sha256=3LTTGdvuFfZWmFyWFeUHpg1yGc9z0VE8j7Kd7J7y8i4,100
|
|
|
903
903
|
cirq/qis/noise_utils.py,sha256=wakkdQdBzOUWCf71sCxMCWwfPPAnJi5bNYsXDzGzkx0,3680
|
|
904
904
|
cirq/qis/noise_utils_test.py,sha256=6r99DBN_2bImZbuOIB2A9ZdvyipqDopXsoxV-8OUK_I,3391
|
|
905
905
|
cirq/qis/quantum_state_representation.py,sha256=5ybXGqjGSpSZqOn9q6OW6IBOmJs8KQekv5fFZZMCqZQ,3238
|
|
906
|
-
cirq/qis/states.py,sha256=
|
|
906
|
+
cirq/qis/states.py,sha256=xrkYZR2UOkxTf0GouQ0p1-aiQRYmJheiEk7fxPR8Kog,41967
|
|
907
907
|
cirq/qis/states_test.py,sha256=I4fHt5drqG0C36bvmU-H7DfY3zOC8CfiZFzKJvSOnFs,31813
|
|
908
908
|
cirq/sim/__init__.py,sha256=J209uAbjmgzER-48Q-FkRUWQ1FlG6-1c7GK11owZIW4,3452
|
|
909
909
|
cirq/sim/classical_simulator.py,sha256=orp2WY15HNCJk60Aosq7igO3bjKcWjAAOeU_CiPK_98,9349
|
|
@@ -946,10 +946,10 @@ cirq/sim/clifford/stabilizer_sampler.py,sha256=XfJ2Y0bpCZTdAmiOVMIYPKDQ5SII5EuDJ
|
|
|
946
946
|
cirq/sim/clifford/stabilizer_sampler_test.py,sha256=sNqJyUY--wqHjsPfm4E1YPBll1-GirvxKFz04n5I0f4,1338
|
|
947
947
|
cirq/sim/clifford/stabilizer_simulation_state.py,sha256=mqADFqLHg2Kit9EsuhNp8ntZQQnTRXc51ZQ9LdqQ4PM,6723
|
|
948
948
|
cirq/sim/clifford/stabilizer_simulation_state_test.py,sha256=dsphoXTaIwRCjprGJQirSs0qeVKHlni_pt_GZJn5Vpc,4317
|
|
949
|
-
cirq/sim/clifford/stabilizer_state_ch_form.py,sha256=
|
|
949
|
+
cirq/sim/clifford/stabilizer_state_ch_form.py,sha256=OAbJK9QuIVPSp7vNyoXUjETxEJ1HOm9bz9r8UetX0Jw,14028
|
|
950
950
|
cirq/sim/clifford/stabilizer_state_ch_form_test.py,sha256=FK0IsyrTfT6ZPZeBYmyPG2xpzUT7RG6P6UQw_61c6kU,3149
|
|
951
951
|
cirq/study/__init__.py,sha256=OyJhZjBiEkNbtSuSZaOwHGwwnOIGgnn-W8ec0xHhHBI,1647
|
|
952
|
-
cirq/study/flatten_expressions.py,sha256=
|
|
952
|
+
cirq/study/flatten_expressions.py,sha256=a38GP12hp-MWlYGeVsCdNFwx81r--mvKpr8ICu-XoFg,15582
|
|
953
953
|
cirq/study/flatten_expressions_test.py,sha256=6e7pTkaBrZW-EmG4teZxcwemqnxCtJW3kq2KOlPcwW8,6078
|
|
954
954
|
cirq/study/resolver.py,sha256=dDEGIwWueP7ZICbEAUc6G5li2UoTFkPS9Qs2dSDCbV8,11906
|
|
955
955
|
cirq/study/resolver_test.py,sha256=QQe9Rr0z6qNbSWPEvCKd_DNka6454AWVKbG2J2DD1Wg,10228
|
|
@@ -1202,8 +1202,8 @@ cirq/work/sampler.py,sha256=bE5tmVkcR6cZZMLETxDfHehdsYUMbx2RvBeIBetehI4,19187
|
|
|
1202
1202
|
cirq/work/sampler_test.py,sha256=hL2UWx3dz2ukZVNxWftiKVvJcQoLplLZdQm-k1QcA40,13282
|
|
1203
1203
|
cirq/work/zeros_sampler.py,sha256=x1C7cup66a43n-3tm8QjhiqJa07qcJW10FxNp9jJ59Q,2356
|
|
1204
1204
|
cirq/work/zeros_sampler_test.py,sha256=JIkpBBFPJe5Ba4142vzogyWyboG1Q1ZAm0UVGgOoZn8,3279
|
|
1205
|
-
cirq_core-1.5.0.
|
|
1206
|
-
cirq_core-1.5.0.
|
|
1207
|
-
cirq_core-1.5.0.
|
|
1208
|
-
cirq_core-1.5.0.
|
|
1209
|
-
cirq_core-1.5.0.
|
|
1205
|
+
cirq_core-1.5.0.dev20250207063657.dist-info/LICENSE,sha256=tAkwu8-AdEyGxGoSvJ2gVmQdcicWw3j1ZZueVV74M-E,11357
|
|
1206
|
+
cirq_core-1.5.0.dev20250207063657.dist-info/METADATA,sha256=CjPl8aoUw-1ahr8LoDzs3diFaY3UUoNOS4B_BWpgG30,4811
|
|
1207
|
+
cirq_core-1.5.0.dev20250207063657.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
|
|
1208
|
+
cirq_core-1.5.0.dev20250207063657.dist-info/top_level.txt,sha256=Sz9iOxHU0IEMLSFGwiwOCaN2e9K-jFbBbtpPN1hB73g,5
|
|
1209
|
+
cirq_core-1.5.0.dev20250207063657.dist-info/RECORD,,
|
{cirq_core-1.5.0.dev20250206210935.dist-info → cirq_core-1.5.0.dev20250207063657.dist-info}/LICENSE
RENAMED
|
File without changes
|
{cirq_core-1.5.0.dev20250206210935.dist-info → cirq_core-1.5.0.dev20250207063657.dist-info}/WHEEL
RENAMED
|
File without changes
|
|
File without changes
|