Skip to content

Commit c485504

Browse files
authored
Fix docstring indentation of cirq.PauliString (#5940)
* Fix docstring indentation cirq.PauliString * Update indentation for GridQubit, GridQid and flatten
1 parent 6245c91 commit c485504

File tree

3 files changed

+73
-83
lines changed

3 files changed

+73
-83
lines changed

cirq-core/cirq/devices/grid_qubit.py

Lines changed: 12 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -134,14 +134,12 @@ class GridQid(_BaseGridQid):
134134
New GridQid can be constructed by adding or subtracting tuples or numpy
135135
arrays
136136
137-
>>> cirq.GridQid(2, 3, dimension=2) + (3, 1)
138-
cirq.GridQid(5, 4, dimension=2)
139-
140-
>>> cirq.GridQid(2, 3, dimension=2) - (1, 2)
141-
cirq.GridQid(1, 1, dimension=2)
142-
143-
>>> cirq.GridQid(2, 3, dimension=2) + np.array([3, 1], dtype=int)
144-
cirq.GridQid(5, 4, dimension=2)
137+
>>> cirq.GridQid(2, 3, dimension=2) + (3, 1)
138+
cirq.GridQid(5, 4, dimension=2)
139+
>>> cirq.GridQid(2, 3, dimension=2) - (1, 2)
140+
cirq.GridQid(1, 1, dimension=2)
141+
>>> cirq.GridQid(2, 3, dimension=2) + np.array([3, 1], dtype=int)
142+
cirq.GridQid(5, 4, dimension=2)
145143
"""
146144

147145
def __init__(self, row: int, col: int, *, dimension: int) -> None:
@@ -284,14 +282,12 @@ class GridQubit(_BaseGridQid):
284282
285283
New GridQubits can be constructed by adding or subtracting tuples
286284
287-
>>> cirq.GridQubit(2, 3) + (3, 1)
288-
cirq.GridQubit(5, 4)
289-
290-
>>> cirq.GridQubit(2, 3) - (1, 2)
291-
cirq.GridQubit(1, 1)
292-
293-
>>> cirq.GridQubit(2, 3,) + np.array([3, 1], dtype=int)
294-
cirq.GridQubit(5, 4)
285+
>>> cirq.GridQubit(2, 3) + (3, 1)
286+
cirq.GridQubit(5, 4)
287+
>>> cirq.GridQubit(2, 3) - (1, 2)
288+
cirq.GridQubit(1, 1)
289+
>>> cirq.GridQubit(2, 3,) + np.array([3, 1], dtype=int)
290+
cirq.GridQubit(5, 4)
295291
"""
296292

297293
def __getstate__(self):

cirq-core/cirq/ops/pauli_string.py

Lines changed: 13 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -140,26 +140,19 @@ class PauliString(raw_types.Operation, Generic[TKey]):
140140
PauliStrings can be constructed via various different ways, some examples are
141141
given as follows:
142142
143-
>>> a, b, c = cirq.LineQubit.range(3)
144-
145-
>>> print(cirq.PauliString([cirq.X(a), cirq.X(a)]))
146-
I
147-
148-
>>> print(cirq.PauliString(-1, cirq.X(a), cirq.Y(b), cirq.Z(c)))
149-
-X(q(0))*Y(q(1))*Z(q(2))
150-
151-
>>> print(-1 * cirq.X(a) * cirq.Y(b) * cirq.Z(c))
152-
-X(q(0))*Y(q(1))*Z(q(2))
153-
154-
>>> print(cirq.PauliString({a: cirq.X}, [-2, 3, cirq.Y(a)]))
155-
-6j*Z(q(0))
156-
157-
>>> print(cirq.PauliString({a: cirq.I, b: cirq.X}))
158-
X(q(1))
159-
160-
>>> print(cirq.PauliString({a: cirq.Y},
161-
... qubit_pauli_map={a: cirq.X}))
162-
1j*Z(q(0))
143+
>>> a, b, c = cirq.LineQubit.range(3)
144+
>>> print(cirq.PauliString([cirq.X(a), cirq.X(a)]))
145+
I
146+
>>> print(cirq.PauliString(-1, cirq.X(a), cirq.Y(b), cirq.Z(c)))
147+
-X(q(0))*Y(q(1))*Z(q(2))
148+
>>> print(-1 * cirq.X(a) * cirq.Y(b) * cirq.Z(c))
149+
-X(q(0))*Y(q(1))*Z(q(2))
150+
>>> print(cirq.PauliString({a: cirq.X}, [-2, 3, cirq.Y(a)]))
151+
-6j*Z(q(0))
152+
>>> print(cirq.PauliString({a: cirq.I, b: cirq.X}))
153+
X(q(1))
154+
>>> print(cirq.PauliString({a: cirq.Y}, qubit_pauli_map={a: cirq.X}))
155+
1j*Z(q(0))
163156
164157
Note that `cirq.PauliString`s are immutable objects. If you need a mutable version
165158
of pauli strings, see `cirq.MutablePauliString`.

cirq-core/cirq/study/flatten_expressions.py

Lines changed: 48 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -55,53 +55,54 @@ def flatten(val: Any) -> Tuple[Any, 'ExpressionMap']:
5555
are described above.
5656
5757
Examples:
58-
>>> qubit = cirq.LineQubit(0)
59-
>>> a = sympy.Symbol('a')
60-
>>> circuit = cirq.Circuit(
61-
... cirq.X(qubit) ** (a/4),
62-
... cirq.Y(qubit) ** (1-a/2),
63-
... )
64-
>>> print(circuit)
65-
0: ───X^(a/4)───Y^(1 - a/2)───
66-
67-
>>> sweep = cirq.Linspace(a, start=0, stop=3, length=4)
68-
>>> print(cirq.ListSweep(sweep))
69-
Sweep:
70-
{'a': 0.0}
71-
{'a': 1.0}
72-
{'a': 2.0}
73-
{'a': 3.0}
74-
75-
>>> c_flat, expr_map = cirq.flatten(circuit)
76-
>>> print(c_flat)
77-
0: ───X^(<a/4>)───Y^(<1 - a/2>)───
78-
>>> expr_map
79-
cirq.ExpressionMap({a/4: <a/4>, 1 - a/2: <1 - a/2>})
80-
81-
>>> new_sweep = expr_map.transform_sweep(sweep)
82-
>>> print(new_sweep)
83-
Sweep:
84-
{'<a/4>': 0.0, '<1 - a/2>': 1.0}
85-
{'<a/4>': 0.25, '<1 - a/2>': 0.5}
86-
{'<a/4>': 0.5, '<1 - a/2>': 0.0}
87-
{'<a/4>': 0.75, '<1 - a/2>': -0.5}
88-
89-
>>> for params in sweep: # Original
90-
... print(circuit,
91-
... '=>',
92-
... cirq.resolve_parameters(circuit, params))
93-
0: ───X^(a/4)───Y^(1 - a/2)─── => 0: ───X^0───Y───
94-
0: ───X^(a/4)───Y^(1 - a/2)─── => 0: ───X^0.25───Y^0.5───
95-
0: ───X^(a/4)───Y^(1 - a/2)─── => 0: ───X^0.5───Y^0───
96-
0: ───X^(a/4)───Y^(1 - a/2)─── => 0: ───X^0.75───Y^-0.5───
97-
98-
>>> for params in new_sweep: # Flattened
99-
... print(c_flat, '=>', end=' ')
100-
... print(cirq.resolve_parameters(c_flat, params))
101-
0: ───X^(<a/4>)───Y^(<1 - a/2>)─── => 0: ───X^0───Y───
102-
0: ───X^(<a/4>)───Y^(<1 - a/2>)─── => 0: ───X^0.25───Y^0.5───
103-
0: ───X^(<a/4>)───Y^(<1 - a/2>)─── => 0: ───X^0.5───Y^0───
104-
0: ───X^(<a/4>)───Y^(<1 - a/2>)─── => 0: ───X^0.75───Y^-0.5───
58+
59+
>>> qubit = cirq.LineQubit(0)
60+
>>> a = sympy.Symbol('a')
61+
>>> circuit = cirq.Circuit(
62+
... cirq.X(qubit) ** (a/4),
63+
... cirq.Y(qubit) ** (1-a/2),
64+
... )
65+
>>> print(circuit)
66+
0: ───X^(a/4)───Y^(1 - a/2)───
67+
68+
>>> sweep = cirq.Linspace(a, start=0, stop=3, length=4)
69+
>>> print(cirq.ListSweep(sweep))
70+
Sweep:
71+
{'a': 0.0}
72+
{'a': 1.0}
73+
{'a': 2.0}
74+
{'a': 3.0}
75+
76+
>>> c_flat, expr_map = cirq.flatten(circuit)
77+
>>> print(c_flat)
78+
0: ───X^(<a/4>)───Y^(<1 - a/2>)───
79+
>>> expr_map
80+
cirq.ExpressionMap({a/4: <a/4>, 1 - a/2: <1 - a/2>})
81+
82+
>>> new_sweep = expr_map.transform_sweep(sweep)
83+
>>> print(new_sweep)
84+
Sweep:
85+
{'<a/4>': 0.0, '<1 - a/2>': 1.0}
86+
{'<a/4>': 0.25, '<1 - a/2>': 0.5}
87+
{'<a/4>': 0.5, '<1 - a/2>': 0.0}
88+
{'<a/4>': 0.75, '<1 - a/2>': -0.5}
89+
90+
>>> for params in sweep: # Original
91+
... print(circuit,
92+
... '=>',
93+
... cirq.resolve_parameters(circuit, params))
94+
0: ───X^(a/4)───Y^(1 - a/2)─── => 0: ───X^0───Y───
95+
0: ───X^(a/4)───Y^(1 - a/2)─── => 0: ───X^0.25───Y^0.5───
96+
0: ───X^(a/4)───Y^(1 - a/2)─── => 0: ───X^0.5───Y^0───
97+
0: ───X^(a/4)───Y^(1 - a/2)─── => 0: ───X^0.75───Y^-0.5───
98+
99+
>>> for params in new_sweep: # Flattened
100+
... print(c_flat, '=>', end=' ')
101+
... print(cirq.resolve_parameters(c_flat, params))
102+
0: ───X^(<a/4>)───Y^(<1 - a/2>)─── => 0: ───X^0───Y───
103+
0: ───X^(<a/4>)───Y^(<1 - a/2>)─── => 0: ───X^0.25───Y^0.5───
104+
0: ───X^(<a/4>)───Y^(<1 - a/2>)─── => 0: ───X^0.5───Y^0───
105+
0: ───X^(<a/4>)───Y^(<1 - a/2>)─── => 0: ───X^0.75───Y^-0.5───
105106
"""
106107
flattener = _ParamFlattener()
107108
val_flat = flattener.flatten(val)

0 commit comments

Comments
 (0)