Skip to content

Commit 9260fad

Browse files
committed
typo fix
1 parent f7df631 commit 9260fad

1 file changed

Lines changed: 10 additions & 10 deletions

File tree

research/Incrementer.ipynb

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -11,27 +11,27 @@
1111
"\n",
1212
"### Summary\n",
1313
"\n",
14-
"Here I present a circuit for incrementing n-qubit integer register using only O(log n) ancillas.\n",
14+
"Here I present a circuit for incrementing an n-qubit integer register using only O(log n) ancillas.\n",
1515
"\n",
1616
"### Motivation\n",
1717
"\n",
18-
"The practical use case for low-ancilla incrementer is constant addition when the constant is small (let's say bit size of constant is $n_c$). Then we can use constant adder circuit with carry on first $n_c$ qubits. For the rest of the register, we just need to add a carry qubit to it, which can be done by applying incrementer controlled by the carry bit.\n",
18+
"The practical use case for a low-ancilla incrementer is in constant addition when the constant is small (let's say the bit size of the constant is $n_c$). Then we can use a constant adder circuit with carry on the first $n_c$ qubits. For the rest of the register, we just need to add a carry bit to it, which can be done by applying an incrementer controlled by the carry bit.\n",
1919
"\n",
2020
"### Baseline\n",
2121
"\n",
22-
"As baseline, I am using incrementer from [this paper](https://www.worldscientific.com/doi/abs/10.1142/S0217979213501919) which I generalized to a constant adder (https://arxiv.org/pdf/2501.07060) and which is implemented in [ConstAdder.qs](../lib/src/QuantumArithmetic/ConstAdder.qs).\n",
22+
"As a baseline, I am using the incrementer from [this paper](https://www.worldscientific.com/doi/abs/10.1142/S0217979213501919), which I generalized to a constant adder (https://arxiv.org/pdf/2501.07060) and which is implemented in [ConstAdder.qs](../lib/src/QuantumArithmetic/ConstAdder.qs).\n",
2323
"\n",
2424
"### Implementation idea\n",
2525
"\n",
26-
"Define CTO(x) - \"count trailing ones\", i.e. number of least significant bits in x equal to 1 before first 0 bit.\n",
26+
"Define CTO(x) - \"count trailing ones\", i.e., the number of least significant bits in x equal to 1 before the first 0 bit.\n",
2727
"\n",
28-
"Then to increment x we need to flip first CTO(x)+1 bits in x.\n",
28+
"Then to increment x we need to flip the first CTO(x)+1 bits in x.\n",
2929
"\n",
3030
"So, incrementing is reduced to implementing two operations:\n",
3131
"* CountTrailingOnes(x, ans) - computes ans:=CTO(x)\n",
3232
"* FlipFirst(target, ctr) - flips first `ctr` bits in `target`.\n",
3333
"\n",
34-
"Both CountTrailingOnes and FlipFirst can be implemented recursively by splitting input in 2 parts, first of them having length equal to a power of 2. Both of them use $O(\\log n)$ ancilla, adding one ancilla for each level of recursion.\n",
34+
"Both CountTrailingOnes and FlipFirst can be implemented recursively by splitting the input in 2 parts, the first of them having a length equal to a power of 2. Both of them use $O(\\log n)$ ancilla, adding one ancilla for each level of recursion.\n",
3535
"\n",
3636
"The incrementer works like this:\n",
3737
"* Allocate counter register and carry qubit.\n",
@@ -45,21 +45,21 @@
4545
"\n",
4646
"### Version with carry\n",
4747
"\n",
48-
"To turn presented incremented in incrementer with carry:\n",
48+
"To turn the presented incrementer into an incrementer with carry:\n",
4949
"* Instead of using ancilla for carry, make it input qubit.\n",
5050
"* Do not uncompute the carry qubit.\n",
5151
"\n",
5252
"### Cost\n",
5353
"\n",
5454
"Baseline incrementer uses $n-3$ ancillary qubits.\n",
5555
"\n",
56-
"The presented incrementer uses exactly $2 \\lceil \\log_2(n+2) \\rceil -1$ ancillary qubits which becomes less than base starting from n=11.\n",
56+
"The presented incrementer uses exactly $2 \\lceil \\log_2(n+2) \\rceil -1$ ancillary qubits, which becomes less than the baseline starting from n=11.\n",
5757
"\n",
58-
"On depth, the proposed circuit uses ~10n CCZ gates while base circuit uses ~1n CCZ gates.\n",
58+
"In terms of depth, the proposed circuit uses ~10n CCZ gates while the baseline circuit uses ~1n CCZ gates.\n",
5959
"\n",
6060
"So it's much more expensive in depth, but might be worth it if it can reduce overall space requirement of an algorithm.\n",
6161
"\n",
62-
"The table below compares ancilla count and CCZ coutn between the baseline and proposed incrementer."
62+
"The table below compares ancilla count and CCZ count between the baseline and proposed incrementer."
6363
]
6464
},
6565
{

0 commit comments

Comments
 (0)