Quantum AnalogDigital Conversion
Abstract
Many quantum algorithms, such as HarrowHassidimLloyd (HHL) algorithm, depend on oracles that efficiently encode classical data into a quantum state. The encoding of the data can be categorized into two types; analogencoding where the data are stored as amplitudes of a state, and digitalencoding where they are stored as qubitstrings. The former has been utilized to process classical data in an exponentially large space of a quantum system, where as the latter is required to perform arithmetics on a quantum computer. Quantum algorithms like HHL achieve quantum speedups with a sophisticated use of these two encodings. In this work, we present algorithms that converts these two encodings to one another. While quantum digitaltoanalog conversions have implicitly been used in existing quantum algorithms, we reformulate it and give a generalized protocol that works probabilistically. On the other hand, we propose an deterministic algorithm that performs a quantum analogtodigital conversion. These algorithms can be utilized to realize highlevel quantum algorithms such as a nonlinear transformation of amplitude of a quantum state. As an example, we construct a “quantum amplitude perceptron”, a quantum version of neural network, and hence has a possible application in the area of quantum machine learning.
pacs:
Valid PACS appear hereI Introduction
A wide variety of quantum algorithms have been proposed that potentially give quantum speedups over classical computers. The problems that are efficiently solved by existing quantum algorithms can be divided into two types; ones where input data of a problem is relatively small in size but the problem itself is hard classically, and ones where input of a problem is exponentially large, making it hard to handle on classical computers. The formers are solved by algorithms such as Shor’s factoring Shor (1997), or quantum chemistry calculations Kassal et al. (2011). On the other hand, there are algorithms that solve problems categorized as the latter. They achieve quantum speedups only if an oracle that encodes classical data in time exists Aaronson (2015). A famous example is HarrowHassidimLloyd (HHL) algorithm Harrow et al. (2009), which executes a linear transformation represented by a matrix on a dimensional vector . It requires us to construct a quantum state:
(1) 
where normalized to satisfy . Data encoding in the format of Eq. (1) is crucial for all HHLbased algorithms Schuld et al. (2016); Yu et al. (2017); Rebentrost et al. (2014); Wiebe et al. (2012), and others Wiebe et al. (2015); Lloyd et al. (2013). We will call the state of Eq. (1) as an “analogencoded” state, since data are encoded into analog quantities, that is, complex amplitudes of a quantum state. Here we define an analogencoding unitary transformation by:
(2) 
Another approach is to encode bits of binary data into qubitstrings. Let and (, ) be the number of binary data provided and the data bitstrings. In this approach, a dataencoded quantum state is constructed as follows:
(3) 
We will call this state as a “digitalencoded” state. For example, quantum algorithms for solving semidefinite programs (SDPs) Brandao and Svore (2017); Brandão et al. (2017) depends on this encoding. Similarly to an analogencoding unitary transformation, we define a digitalencoding unitary transformation by
(4) 
is often called quantum random access memory (QRAM). Refs. Giovannetti et al. (2008a, b) have provided a protocol which employs qutrits to speedup a memory call to twobody interaction gates. Their method is promising compared to a conventional method that requires operations. It might be worth noting that in the context of QRAM, it is usually assumed that we already have “memory cells” which stores data in the form accessible from a quantum computer.
Many quantum algorithms sophisticatedly use these two types of encodings. For example, in HHL algorithm Harrow et al. (2009), an analogencoded state Eq. (1) is put through quantum phase estimation algorithm that digitally encode eigenvalues of a matrix , and then the inverse of them are multiplied to the amplitudes by controlled rotations (Fig. 1 (b)); in quantum metropolis sampling Temme et al. (2011), energy eigenvalue of a Hamiltonian is first digitally encoded by the phase estimation, and then the encoded energies are transferred to amplitudes in the form of , again using controlled rotations.
In this paper, we investigate the relation of these two different encoding methods. Specifically, we concentrate on conversions between these two encodings; can you go from “digitalencoding” to “analogencoding” (quanutm digitaltoanalog conversion, QDAC), or other way around (quantum analogtodigital conversion, QADC)? DAC and ADC play important roles in classical information processing, since digitallystored data are easier to handle than analog data which physical systems generate and are driven by. QDAC and QADC can be regarded as quantum analogues of them, and therefore there is a possibility that they stimulate the construction of more sophisticated quantum algorithms. First we formulate these problems. It is shown that QDAC can be implemented probabilistically, and QADC deterministically. A special case of QDAC, in fact, has implicitly been employed in existing algorithms such as HHL and quantum metropolis samplings. We unify those techniques and give a generalized procedure. QDAC and QADC algorithms provide an insight of what should be done in digital or analogencodings. Also, as an application, we show that a QADCQDAC combined method can be utilized to perform almost arbitrary nonlinear transformations of amplitudes of a quantum state. This result can be utilized, for example, for a purpose of constructing quantum machine learning algortihms.
This paper is organized as follows. First in Sec. II, we summarize the algorithms we use as subroutines and define QADC and QDAC problem. In Sec.III, we review QDAC procedures that has implicitly been utilized in existing algorithms. We also present the generalized QDAC procedure. Then in Sec.IV, we present an algorithm to perform QADC. In Sec. V, we provide applications of QADC, and show that QADC combined with QDAC provides us a way to perform a nonlinear transformation of amplitudes of a quantum state.
Ii Preliminary
Here we summarize some useful results from existing works along with definitions of terms. Throughout this paper denotes the number of data.
Fact 1 (analog encoding unitary Kerenidis and Prakash (2017))
For given classical data , a binarytree like classical data structure can be constructed in time on a classical computer. With this structure, there exists a quantum algorithm that constructs an analogencoding unitary with single and twoqubit gates.
We use the phase estimation algorithm stated below as a key ingredient of our QADC algorithm.
Fact 2 (phase estimation Cleve et al. (1998))
Let be a unitary operator acting on qubit Hilbert space with eigenstates and corresponding eigenvalues where . Let for some positive integer . There exists a quantum algorithm, which consists of controlled calls and single and twoqubit gates, that performs transformation where denotes a bitstring such that for all with state fidelity at least .
We say that has fidelity with when . The phase estimation algorithm can also be viewed as a digitalencoding unitary transformation, where address is replaced by eigenstates of .
Next we state a version of the amplitude amplification technique.
Fact 3 (amplitude amplification Brassard et al. ())
Suppose we have a unitary operator that acts on qubit Hilbert space as where are arbitrary qubit states. Then probability of getting can be made close to unity by application of .
Finally, we define QDAC and QADC as follows.
Definition 1 (Qdac)
Let be a set of real numbers in , each of which is represented by with binary variables . Let denote the bit string . An bit QDAC operation transforms digitalencoded state to where is a normalization constant. It may be done both deterministically or nondeterministically.
Definition 2 (Qadc)
Let be real numbers such that and . Let denote the bit string that best approximates by . An bit QADC operation transforms analogencoded state to . It may be done both deterministically or nondeterministically.
We use quantum arithmetics as a subroutine, which is stated as the following theorem.
Fact 4 (quantum arithmetics RuizPerez and GarciaEscartin (2017))
Let be bit strings. There exists a quantum algorithm that performs transformation or with single and twoqubit gates.
Note that for accuracy defined as , quantum arithmetics scales as . Furthermore, we assume the following statement as a fact.
Fact 5
Some basic functions such as inverse, trigonometric functions, square root, and inverse trigonometric functions can be calculated to accuracy , that is, we can perform a transformation such that where is the objective function, using quantum arithmetics.
A similar title is found on Ref. Schmüser and Janzing (2005). However, their purpose was to map a continuousspace wave function to a discretespace wave function . In the context of this paper, it can be viewed as analogtoanalog conversion.
Iii Qdac
It is actually straightforward to create an analogencoded state from a digitalencoded state; you can do it just by adding an ancilla qubit and performing a controlled rotation with the data register. In fact, this QDAC procedure has implicitly used in existing works. For example, HHL Harrow et al. (2009) has utilized the above protocol to multiply inverse of eigenvalues of an Hermitian matrix to an analogencoded state vector. We state this QDAC operation formally as a theorem below.
Theorem 1 (QDAC with ancilla)
There exists a quantum algorithm that performs bit QDAC using single and twoqubit gates and one , where , with probability .
Proof  The procedure of algorithm is as follows. Assume that we are provided with a digitalencoded state Eq. (3).

Compute by quantum arithmetics.
(5) where denotes bit strings such that .

Adding an ancilla qubit , perform a controlled rotation on the ancilla.
(6) 
Measure the ancilla in computational basis. With probability , we obtain
(7) where .

Uncompute (step 1) and apply . We now have an analogencoded state
(8)
Now we analyze the complexity. On step 1, can be calculated with quantum arithmetics using gates by Fact. Step 2 uses controlled rotations. Therefore, overall complexity for steps 1, 2 and 4 is and one . The success probability of step 3 is .
Success probability of above procedure can be rewritten in terms of the mean and the variance of the data, since . Note that, when and the success probability is relatively small, the amplitude amplification technique can be utilized to shorten the expected running time quadratically from to .
When one modifies Step 1 to give , we readily obtain the following.
Corollary 1.1 (generalized QDAC)
There exists a quantum algorithm that performs the transformation such that , where is a function satisfying Fact 5, using single and twoqubit gates, with probability .
It can be generalized further. If we use ancilla qubit, and follow the same procedure as above, we obtain
(9) 
Although the success probability decays exponentially to , it provides us a way to encode a highlynonlinear function in the amplitudes. Quantum neuron proposed in Ref. Cao et al. () has employed a method somewhat similar to a special case of Eq. (9), but not completely comparable, to get nonlinearlity. If we choose , Collorary 1.1 provides an alternative way to implement a sigmoid function.
Iv Qadc
Here we propose an QADC algorithm.
Theorem 2 (Qadc)
There exists an bit QADC algorithm that runs using controlled gates and single and twoqubit gates with output state fidelity , where .
Proof  First we provide the algorithm. (See Fig. 2 for steps 14.)

Prepare address qubits.

Perform controlledNOT from the address qubits to initialized ancilla qubits (We will call them qubits A) to get .

Prepare the analogencoded state in data qubits.

Now using another ancilla qubit (We will call it qubit B), perform a swap test Buhrman et al. (2001) without measurement between dataqubit and qubits A (Fig. 2). We have:
(10) (11) Fig. 2 shows the quantum circuit from step 1 to step 4. We define to be the combined unitary transformation of step 3 and 4. Note here that amplitude of is for each . This step extracts an amplitude each corresponding to an address . The same idea is also used from Ref. Zhou et al. (2017).

Construct a gate
(12) where is a conditional phase shift gate; and is a Pauli gate only acting on the qubit B (Fig. 3). Each is decomposed into two of eigenstates and of , which respectively have eigenvalue where and . The decomposition is: . Brassard et al. ()

Introducing the register qubits, run the phase estimation of as depicted in Fig.4. Then we have:
(13) where and are bit strings that store and as binary data.

On another register, using digital quantum arithmetics, calculate . Note that , and is uniquely recovered since we have assumed . Then finally we get:
(14) 
Uncompute the data, A, B, reg’ qubits. We obtain:
(15) which is a digitalencoded state.
Here we analyze the complexity of the above algorithm. For steps 1 to 4, we used single and twoqubit gate. On step 5, the phase estimation, we need to use of controlled and of single and twoqubit gate. Step 6, quantum arithmetics takes by Fact 5. Therefore, overall complexity is of controlled and of single and twoqubit gate. The fidelity of the output state is by Fact 2.
V applications
v.1 Classical data loading
As stated in the introduction, there are some algorithms, such as quantum SDP solvers Brandao and Svore (2017); Brandão et al. (2017), that require an oracle which encodes classical data into a quantum state Eq. (3) in time .
QADC can be utilized for this purpose. Assume that a binarytree structure required in Fact 1 is already constructed on classical side. Combined with the analogencoding unitary of Fact 1, the bit digitalencoded state can be prepared with quantum gates.
Recently another method for digital encoding has been proposed Cortese and Braje (2018). They proposed a protocol that directly encodes binary classical data into qubits.
v.2 Nonlinear transformation of amplitude
The transformation performed on the probability amplitudes of a quantum state , without measurements, is always linear owing to the unitarity of the quantum dynamics. Even with (projective) measurement, the transformation is restricted to the form of , where C is some constant that is determined by normalization condition. Therefore, a transformation of the form with an aribitrary function cannot be done, without encoding them in digital form using QADC. We state the fact that this form of nonlinear transformation of amplitude can be performed using QADC and QDAC as following theorem.
Theorem 3
Let data , where , analogencoding unitary and analogencoded state be given. For any function that satisfies Fact 5, there exists a probabilistic quantum algorithm that performs transformation , such that , with controlled gates and single and twoqubit gates. Probability of success is and the output state fidelity is
Proof  The QADC algorithm from Theorem 2 provides us a state using controlled gates and single and twoqubit gates with state fidelity . Then performing the modified QDAC from Corollary 1.1, we get with single and twoqubit gates and with probability . Finally, application of inverse QADC leaves us the desired state.
The most useful application of this would be to deal with a “quantum bigdata”. For example, using on two registers, we can prepare
(16) 
is not restricted to the loading of classical data , but can also be a time evolution operator , where is some Hamiltonian which can efficiently be simulated on a quantum computer. Notice that the tensor product structure of quantum mechanics has calculated the product and the combined system has of amplitudes. This nonlinearity is employed in quantum circuit learning Mitarai et al. () for machine learning application. The direct digital encoding of these dimensional data on a quantum state might be impractical, since the calculation of the product takes time and space classically. In comparison, the construction of the quantum state Eq. (16) requires only classical and quantum operations. Tensor product structure is useful to introduce nonlinearity to the data in the form of Eq. (16), however, it cannot be used to introduce general and more complex transformation stated in above theorem.
Applying QADC on this combined state yields a state,
(17) 
Note that this transformation can also be performed in time . Then applying the nonlinear QDAC procedure and the inverse of QADC, one gets,
(18) 
which has nonlinearly transformed probability amplitudes. Further extension is discussed in the next subsection.
v.3 Quantum amplitude perceptron
When one chooses or with any sigmoid function , it can readily mimic the perceptron that is frequently used in neural networks. In neural network, a transformation of the form , where and are a weight vector and a data vector, is utilized to learn some task. The training of the network is done by tuning the weight to give some specific output. To mimic this, first we apply a parametrized unitary transformation , which corresponds to the weight , on a analogencoded state , yielding a state . Note that the amplitude can be a resultant amplitude after the tensor product multiplication described in previous section. Then use the procedure of Theorem 3 with the sigmoid function , which produces,
(19) 
The squaring of occurs because is not always positive and hence the step 7 of presented QADC algorithm has to be modified. The full tomograhy of this state would require us an exponential time, but if one is interested in costant number of perceptron outputs, performing a swap test Buhrman et al. (2001) with chosen basis is enough to extract them. The state Eq. (19) can be further transformed by some unitary gates to determine the readout weight of the output.
For machine learning, it is necessary to optimize the parameter . Although the gradient of the output with respect to cannot be extracted due to the complex form of Eq. (19), gradientfree method can be utilized, just as same as mentioned in Ref. Cao et al. ().
Finally, we note here, if one can determine the value of somehow, amplitude amplification technique can be employed to make QDAC procedure deterministic. This would enable us to implement multilayer neural network on a quantum computer deterministically.
Vi Conclusion
We have formulated QDAC and QADC, and described algorithms to implement them on quantum computers. Although QDAC protocols have implicitly been utilized in existing algorithms, we have generalized it to facilitate complex nonlinear functions. We have also presented an algorithm that performs QADC. It was shown that a combination of QADC and QDAC enables us almost arbitrary nonlinear transformations of amplitudes of a quantum state. The possible application of this nonlinear transformation is to make a quantum amplitude perceptron, which can be employed to construct more sophisticated quantum machine learning algorithms.
Acknowledgements.
KM would like to thank Makoto Negoro for fruitful discussions. KF is supported by KAKENHI No. 16H02211, JST PRESTO JPMJPR1668, JST ERATO JPMJER1601, and JST CREST JPMJCR1673.References
 Shor (1997) P. W. Shor, SIAM J. Comput. 26, 1484 (1997).
 Kassal et al. (2011) I. Kassal, J. D. Whitfield, A. PerdomoOrtiz, M.H. Yung, and A. AspuruGuzik, Annu. Rev. Phys. Chem. 62, 185 (2011).
 Aaronson (2015) S. Aaronson, Nature Physics 11, 291 (2015).
 Harrow et al. (2009) A. W. Harrow, A. Hassidim, and S. Lloyd, Phys. Rev. Lett. 103, 150502 (2009).
 Schuld et al. (2016) M. Schuld, I. Sinayskiy, and F. Petruccione, Phys. Rev. A 94, 022342 (2016).
 Yu et al. (2017) C.H. Yu, F. Gao, and Q.Y. Wen, (2017), arXiv:1707.09524 .
 Rebentrost et al. (2014) P. Rebentrost, M. Mohseni, and S. Lloyd, Phys. Rev. Lett. 113, 130503 (2014).
 Wiebe et al. (2012) N. Wiebe, D. Braun, and S. Lloyd, Phys. Rev. Lett. 109, 050505 (2012).
 Wiebe et al. (2015) N. Wiebe, A. Kapoor, and K. M. Svore, Quantum Info. Comput. 15, 316 (2015).
 Lloyd et al. (2013) S. Lloyd, M. Mohseni, and P. Rebentrost, (2013), arXiv:1307.0411 .
 Brandao and Svore (2017) F. G. Brandao and K. M. Svore, in 2017 IEEE 58th Annual Symposium on Foundations of Computer Science (FOCS) (IEEE, 2017) pp. 415–426.
 Brandão et al. (2017) F. G. S. L. Brandão, A. Kalev, T. Li, C. Y.Y. Lin, K. M. Svore, and X. Wu, (2017), arXiv: 1710.02581 .
 Giovannetti et al. (2008a) V. Giovannetti, S. Lloyd, and L. Maccone, Phys. Rev. A 78, 052310 (2008a).
 Giovannetti et al. (2008b) V. Giovannetti, S. Lloyd, and L. Maccone, Phys. Rev. Lett. 100, 160501 (2008b).
 Temme et al. (2011) K. Temme, T. J. Osborne, K. G. Vollbrecht, D. Poulin, and F. Verstraete, Nature 471, 87 (2011).
 Kerenidis and Prakash (2017) I. Kerenidis and A. Prakash, (2017), arXiv:1704.04992 .
 Cleve et al. (1998) R. Cleve, A. Ekert, C. Macchiavello, and M. Mosca, Proceedings of the Royal Society A 454, 339 (1998).
 (18) G. Brassard, P. Hoyer, M. Mosca, and A. Tapp, arXiv:0005055 [quantph] .
 RuizPerez and GarciaEscartin (2017) L. RuizPerez and J. C. GarciaEscartin, Quantum Information Processing 16, 152 (2017).
 Schmüser and Janzing (2005) F. Schmüser and D. Janzing, Phys. Rev. A 72, 042324 (2005).
 (21) Y. Cao, G. G. Guerreschi, and A. AspuruGuzik, arXiv:1711.11240 .
 Buhrman et al. (2001) H. Buhrman, R. Cleve, J. Watrous, and R. de Wolf, Phys. Rev. Lett. 87, 167902 (2001).
 Zhou et al. (2017) S. S. Zhou, T. Loke, J. A. Izaac, and J. B. Wang, Quantum Inf. Process. 16, 82 (2017).
 Nielsen and Chuang (2010) M. A. Nielsen and I. L. Chuang, Quantum Computation and Quantum Information (Cambridge University Press, Cambridge, 2010).
 Cortese and Braje (2018) J. A. Cortese and T. M. Braje, (2018), arXiv:1803.01958 .
 (26) K. Mitarai, M. Negoro, M. Kitagawa, and K. Fujii, arXiv:1803.00745 .