<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Graph-Theoretical Arguments in Support of a Quantum Declarative Manifesto</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Alex Della Schiava</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Carla Piazza</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Riccardo Romanello</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Dipartimento di Scienze Matematiche, Informatiche e Fisiche, Università degli Studi di Udine</institution>
        </aff>
      </contrib-group>
      <abstract>
        <p>The encoding of graphs and the development of eficient algorithms over graphs in the Quantum framework is still a challenging problem. More in general, the understanding of whether a problem can benefit of the Quantum speed-up or not is far from being complete. In this paper we analyse, compare, and generalize some proposals for the encoding of graphs in Quantum computing. A question peeping out on the horizon of our analysis concern the shift from a procedural way of thinking to a declarative one in the context of Quantum computing.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;Quantum computing</kwd>
        <kwd>Graphs</kwd>
        <kwd>Quantum walks</kwd>
        <kwd>Quantum speed-up</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        In May 1981, Feynman gave a conference lecture on “Simulating physics with computers". In
that occasion, he proposed the idea of using quantum computers to simulate quantum systems
that are too hard to simulate using classical computers. His talk, published in [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], is remembered
as the big bang of quantum computing as a research field.
      </p>
      <p>Since that moment, both academia and companies have put a lot of efort in the task of
developing useful Quantum Computers. Despite the stakeholders that joined the task, the path
is far from being complete. One of the biggest problems is a manufacturing one: creating and
preserving qubits. Qubits are the equivalent of bits in the quantum setting, but they are not as
easy to preserve as their classical counterpart. They must be stored at a very low temperature
in order to maintain coherence — any computation based on uncoherent qubits leads to error.
Despite the high costs demanded by the task, a handful of companies have been able to construct
working Quantum Computers.</p>
      <p>
        Confined by the rules of quantum mechanics, the quantum model of computation solely
manipulates qubits through unitary operations, which are a subset of linear operators.
Projections, another subset of linear operators, allow to read the content of qubits, albeit by inevitably
altering their state. Hence, every Quantum algorithm must be developed as a sequence of
unitary operators and projections. Quantum algorithms such as Shor’s factorization [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] and
Grover’s search [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] witness the diferent kind of speed-up achievable by adopting a quantum
system as model of calculus. Nevertheless, there exists no standard recipe to systematically
exploit the properties of quantum mechanics to obtain similarly remarkable results. For example,
problems defined over graphs play a central role in Computer Science. Since their introduction
by Euler in [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]–which is considered the first paper in Graph Theory–graphs have become more
and more prominent in mathematics first and in computer science later. Not only do they allow
to model and solve a vast amount of problems, but they also capture the notion of computation
over procedural models such as Turing Machines, Random Access Machines, and imperative
programming languages [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ].
      </p>
      <p>
        As a consequence, to understand and generalize quantum speed-up results, one could
investigate how graphs and graph algorithms behave on quantum architectures. Nevertheless, graphs
did not receive much attention in the quantum case: there are no exhaustive answers as to
how these data structures may be encoded in the quantum setting. Current techniques require
graphs to satisfy severely restrictive properties in order to be encoded [
        <xref ref-type="bibr" rid="ref6 ref7">6, 7</xref>
        ]. Starting from
assumptions of this form, quantum algorithms over graphs are not general. Moreover, graphs
have hardly been adopted and used in theoretical Quantum Computing to show results about
expressiveness and complexity. It is enough to dig a little into the topic of Quantum Automata
to see how many questions are still open [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ].
      </p>
      <p>
        In light of these theoretical questions, the use of Quantum Hardware is hardly justifiable:
only a handful of algorithms fully exploit its benefits. While eforts have been directed toward
defining further eficient quantum algorithms through Quantum Programming Languages [
        <xref ref-type="bibr" rid="ref10 ref9">9, 10</xref>
        ],
in this paper we prompt investigations on the eficient compilation of declarative languages
over quantum architectures. Joint eforts on the investigations would reciprocally benefit the
two involved research fields: How can declarative programming and Quantum Computing
assist each other?
      </p>
      <p>Our intuition starts by observing the dificulties arising in the quantum encoding and
management of graphs. These complications are strongly related to the intrinsic reversibility of
quantum computation. Intuitively, only strongly connected graphs are reversible. As a
consequence, an eficient compilation of procedural languages that rely on operational semantics, i.e.,
on graphs, looks dificult. On the other hand, because of their “natural” denotational semantics,
declarative languages seem like better candidates. While the main part of this paper is devoted
to give the reader evidence on the obstacles in using graphs within quantum computation, in
Section 4 we come back to our claim on declarative languages.</p>
      <p>The paper is structured as follows. In Section 1 we give an overview of Quantum Computing
from two diferent perspectives. The former builds up from a lower level, introducing the
elements from linear algebra required to handle theoretical Quantum Computing. The latter is
a high level view where we lay down the mathematical details to focus on the general ideas
of quantum computation. The purpose of Section 2 is to introduce and explain the key role
graphs play in classical computation. Section 3 thus shifts the discussion to the quantum setting,
providing insights on the problem of encoding graphs into quantum computation. In Section 4
we speculate on the possible advantages of a shift of point of view in the direction of compilers
from classical declarative languages on quantum machines.</p>
    </sec>
    <sec id="sec-2">
      <title>1. From Low to High Level View of Quantum Computation</title>
      <sec id="sec-2-1">
        <title>1.1. Low Level View</title>
        <p>The most used model of Quantum Computation relies on the formalism of state vectors, unitary
operators and projectors. State vectors evolve during the computation through unitary operators,
then projectors are used to remove part of the uncertainty on the internal state of the system.</p>
        <p>The state of the system is represented by a unitary vector over C with  = 2 for some
 ∈ N. The concept of a bit of classical computation is replaced by that of a qubit. While bits
have value either 0 or 1, qubits are unitary vectors in C2. The two components of the qubit are
the complex numbers  =  +  and  =  + ; their squared norms | |2 = 2 + 2 and
| |2 = 2 + 2 represent, respectively, the probability of measuring the qubit at either value 0 or
1. In the more general case of  qubits the unitary vectors range in C with  = 2. Adopting
the standard Dirac notation we denote a column vector  ∈ C by |⟩, and its conjugate
transpose † by ⟨|. A quantum state is a unitary vector
| ⟩ = ∑︁ ℎ |ℎ⟩</p>
        <p>
          ℎ
for some basis {|ℎ⟩}. When not specified, we refer to the canonical basis. Further details can
be found in [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ].
        </p>
        <p>Unitary operators and projectors are linear operators. Unitary operators are a particular class
of reversible linear operators. They preserve both the angles between vectors and their lengths.
In other terms, unitary operators are transformations from one orthonormal basis to another.
Hence, they are represented by unitary matrices. Let  be a square matrix over C.  is said to
be unitary if   † =  † = . We describe the application of a unitary matrix  to a state
| ⟩ by writing</p>
        <p>⃒⃒  ′⟩︀ =  | ⟩
meaning that the state | ⟩ becomes | ′⟩ after applying the operator  .</p>
        <p>In order to extract information from a quantum state |⟩ a measurement must be performed.
The most common measurements are projectors. Let |⟩ be a quantum state. The projector
operator  along the direction of |⟩ is the linear operator defined as:
 = |⟩⟨|
⟨|⟩
where |⟩⟨|, being the product between a column vector and a row one both of size , returns
a matrix of size  × . Since throughout the paper we only use unitary vectors, the term ⟨|⟩
is always 1 and can be ignored.</p>
      </sec>
      <sec id="sec-2-2">
        <title>1.2. High Level View</title>
        <p>In order to both summarize and take a step back from technical details, we can say that quantum
computation is a computation over vectors of complex numbers which only exploits a subset of
linear functions (i.e., unitaries and projectors) as basic operations. Each function that can be
obtained as a composition of these basic operations is a quantum circuit. The model becomes
Turing complete by either considering uniform families of circuits or by adding loops over
classical Boolean variables (e.g., Boolean values obtained through projectors).</p>
        <p>One of the main peculiarities of quantum computation is that of being reversible. As a matter
of fact once a unitary operator  has modified the system, we can go back to the past state by
applying the unitary operator  †.</p>
        <p>Classical computation is in general non-reversible. Let us consider the conjunction Boolean
operator ∧. When we apply it to the bits  and , we obtain the output bit . From  it is not
always possible to infer the values of  and . However, any classical Boolean function 
can be embedded into the reversible function 
defined as</p>
        <p>: {0, 1} → {0, 1}
 : {0, 1}+1 → {0, 1}+1</p>
        <p>(, ) = (,  ⊕  ())
where  ∈ {0, 1} and  ∈ {0, 1}. Not only  is reversible, but it is unitary and it coincides
with its inverse.</p>
        <p>If we simply think at quantum computation as a sequence of unitary and projector operators
applied to an initial vector, it shares some aspects with the computation done within a neural
network. Both unitaries and projectors are linear transformations. So, Quantum compared with
Neural Networks lacks of the key feature of non-linear activation functions. However, quantum
computation is performed over complex numbers, while a neural network relies on the reals.
As witnessed by quantum interference, a complex number is much more than a pair of reals.</p>
        <p>The main phenomena that distinguish quantum computation from the classical one are:
superposition, interference and entanglement.</p>
        <p>The quantum state | ⟩ = ∑︀ℎ ℎ |ℎ⟩ is in a superposition of classical states and a projector is
necessary to collapse it in the classical world.</p>
        <p>Interference allows probabilities to behave in an unexpected way. In the quantum framework
two events  and  can have both positive probabilities, while  ∨  has probability 0.</p>
        <p>Entanglement is so surprisingly and unexplainable that even Einstein could not believe it. It
is a sort of correlation between particles that remains true until they are observed.</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>2. Graphs at the Basis of Procedural Computation Models</title>
      <p>
        Graphs are a standard data structure in Computer Science for the representation of binary
relations. We report below some standard definitions on graphs, while we refer the reader
to [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] for further details. A directed graph  is a pair (, ) where  is a non empty set of
vertices and  ⊆  ×  is a set of edges. We say that an edge (, ) is directed from  to  and
that  is adjacent to . We also say that  is the source and  is the target of (, ). Two edges
of the form (, ) and (, ) are said to be consecutive. Given a vertex , its out-neighbourhood
 +() (in-neighbourhood  − ()) is the set of vertices connected via an edge from (to) ; the
out-degree (in-degree) of  is +() = | +()| (− () = | − ()|).
      </p>
      <p>
        Graphs are the key data structure for eficiently solving problems defined over maps, networks,
processes and, more in general problems, that can be stated through binary relations. Not only
graphs allow to model and eficiently solve such a wide range of problems, but they are at the
core of every computation endowed with an operational semantics. As a consequence, time and
space complexities of the reachability problem over deterministic and non-deterministic Turing
machines are at the basis of the most important results in Complexity Theory, such as Savitch’s
theorem and Immerman-Szelepscényi theorem [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ].
      </p>
      <p>
        In the context of randomized computations, again graphs, and in particular random walks
over graphs, play a central role both in the design of eficient algorithms and in the development
of general strategies for speeding-up their convergence [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ].
      </p>
      <p>So, on the one hand, one could observe that any computational model that aims at solving
interesting problems should provide a set of tools for managing graphs (i.e., for solving problems
over graphs). On the other hand, a computational model able to eficiently solve the reachability
problem has already the ability to eficiently simulate classical machines, and can aim to beat
them over specific problems.</p>
      <p>
        Such point of view naturally suggests some questions in the direction of a better understanding
of the potential of quantum computation:
• Which problems over graphs can be eficiently solved over a quantum model?
• How can graphs be eficiently stored in a quantum machine?
At the moment the answers to the above questions are not complete. Several approaches
have been presented in the literature and we will provide details on some of them in the
next sections. With diferent strategies these approaches try to encode graphs into unitary
matrices. Intuitively, during a traversal/walk over the graph the state vector keeps track of the
current superposition of vertices, which looks amazing, since it means that we are “in parallel”
proceeding along diferent directions. Diferently from classical random walks, some paths
may interfere destructively with each other, introducing bias in the global behaviour of the
quantum walk. Remarkably, this action significantly reduces the time required by the quantum
walk to spread across certain graphs [
        <xref ref-type="bibr" rid="ref14 ref15">14, 15</xref>
        ]. Moreover, only some classes of graphs ensure
the reversibility of the traversal, while all the others have to be somehow embedded in larger
structures.
      </p>
      <p>Are these unsatisfactory answers to the above questions just a matter of how much efort
has been put so far on the topic? Cannot be the case that they are a symptom of the need for a
shift of point of view? We will come back to this in the last section.</p>
    </sec>
    <sec id="sec-4">
      <title>3. Graph Encoding in Quantum</title>
      <p>In classical computations graphs are largely used as an abstract data structure where to encode
the input knowledge and eficient graph algorithms are developed with the aim of computing
the desired output.</p>
      <p>
        On the contrary, in the context of Quantum Computation graphs are mainly studied as the
domain for quantum walks. As a matter of fact, quantum walks have been a fundamental tool in
physics, where they have been employed to analyze/simulate the evolution of quantum systems.
Quantum walks are the quantum mechanical counterpart of random walks. A “quantum walker"
moves analogously to a classical one, albeit, with three key diferences: (i) he may lie in a
superposition of states; (ii) his steps are guided by probability amplitudes; (iii) only unitary
transformations can be used to guide the changes of the quantum walker. In the context of
quantum simulation, the quantum walker is meant to represent the quantum system under
consideration and, as such, he obeys the laws of Quantum Mechanics. Indeed, conditions (i),
(ii), and (iii) given above are but a coarse summary of these laws. Conditions (i) and (ii)—
together with entanglement—are at the basis of quantum speed-up. Condition (iii) poses a
strong limit by restricting the class of graphs over which walks may be performed. Nonetheless,
both continuous and discrete-time quantum walks have been shown to be as powerful as the
quantum circuit model of computation [
        <xref ref-type="bibr" rid="ref16 ref17">16, 17</xref>
        ]. However, issues arise when studying quantum
walks and quantum representations of graphs in a more general setting.
      </p>
      <p>For the above reasons in this section we investigate the classes of graphs amenable to
representations in the quantum setting and to quantum walks. Then, we analyse how general
graphs can be embedded into ones belonging these classes as well as the costs such embedding
procedures demand.</p>
      <sec id="sec-4-1">
        <title>3.1. Directed Graphs and Unitary Matrices</title>
        <p>The relationship between graphs and unitary matrices is formalized via the adjacency matrix
representation. As a preliminary notion, the support of a matrix  ∈ C×  is defined as the
matrix   ∈ {0, 1}×  such that, for any 1 ≤ ,  ≤ ,
 =
{︃1 if  ̸= 0;</p>
        <p>0 otherwise.</p>
        <p>A graph and a unitary matrix may, thus, be related in terms of the following definition.
Definition 1. A graph  is said to be the graph of a unitary matrix  if and only if the respective
adjacency matrix  () supports  .</p>
        <p>Example 1. Graph  depicted in Figure 1 is the graph of the unitary matrix  ,
 = ⎝
⎛ 1/√2</p>
        <p>0
− 1/√2
1/2 1/2 ⎞
1/√2 − 1/√2⎠ .</p>
        <p>1/2 1/2</p>
        <p>Graphs of unitary matrices are amenable to quantum walks. In the case of graph  from
Figure 1, a quantum walk may be defined in terms of operator  . Its construction is analogous
to that of a classical Markov chain. The three vertices of  induce the state space C3, with
each vertex  being represented by a column vector |⟩ of the canonical basis. Transitions are
guided by the adjoint of  :  †. The adjoint  † is here required to abide to the conventional
representation of unitary evolution as a matrix-vector multiplication.</p>
        <p>To provide an example, let the quantum walk start from state |1⟩ = (1, 0, 0) . Performing
the first step then leads to state</p>
        <p>1 1 1
 † |1⟩ = √2 |1⟩ + 2 |2⟩ + 2 |3⟩ .
 =</p>
        <p>After a single step, the quantum walker finds herself into a superposition of all three vertices of
the graph.</p>
        <p>Another insightful example sees the quantum walk start from state | ⟩ = 12 |1⟩+ √12 |2⟩+ 12 |3⟩.
A single step transition leads to state</p>
        <p>† | ⟩ = |2⟩ .</p>
        <p>The step has produced a rather singular efect: whereas the probability amplitudes for the paths
leading to vertex 2 reinforce each other, the paths heading towards vertices 1 and 3 cancel out.
These two phenomena are known, respectively, as constructive and destructive interference and
characterize the peculiar behaviour of quantum walks: more paths heading towards the same
vertex do not necessarily imply a higher probability of reaching it.</p>
        <p>
          As previously mentioned, the class of graphs of unitary matrices is severely restrictive.
Moreover, it is hard to characterize the class through ordinary properties from Graph Theory.
From the literature, three distinct approaches to the problem emerge, each relating graphs of
unitary matrices to other graph properties: (i) via strong quadrangularity [
          <xref ref-type="bibr" rid="ref18">18</xref>
          ]; (ii) via graph
reversibility [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ]; (iii) via study of bridges and cuts [
          <xref ref-type="bibr" rid="ref19">19</xref>
          ]. As for (iii), the work explores how
diferent connected components from graphs of unitary matrices are connected to each other.
The study is here not elaborated any further.
        </p>
        <p>
          Strong Quadrangularity In [
          <xref ref-type="bibr" rid="ref18">18</xref>
          ], graphs of unitary matrices have been studied with respect
to the property of strong quadrangularity.
        </p>
        <p>Definition 2 (Strong Quadrangularity). Given a graph  = (, ), consider sets of the two
following forms:
• out ⊆  , where, for any  ∈ out there exists  ∈ out such that  +() ∩  +() ̸= ∅.
• in ⊆  , where, for any  ∈ in there exists  ∈ in such that  − () ∩  − () ̸= ∅.
Then,  is said to be strongly quadrangular if and only if for any set of the form out or in it
holds that</p>
        <p>⃒⃒⃒⃒⃒ ,⋃∈︁out  +() ∩  +()⃒⃒⃒⃒⃒ ≥ | out|; ⃒⃒⃒⃒⃒ ,⋃∈︁in  − () ∩  − ()⃒⃒⃒⃒⃒ ≥ | in|.</p>
        <p>Although apparently abstract, the property of strong quadrangularity provides deep,
matrixtheoretical insights over the class of graphs of unitary matrices.</p>
        <sec id="sec-4-1-1">
          <title>Lemma 1. [18] Any graph of a unitary matrix is strongly quadrangular.</title>
          <p>The opposite direction of this relationship involves the property of specularity.
Definition 3 (Specularity). A graph  = (, ) is said to be specular if and only if, for any
pair of vertices ,  ∈  , the following two conditions are satisfied:
 +() ∩  +() = ∅ or  +() =  +();
and
 − () ∩  − () = ∅ or  − () =  − ().</p>
          <p>
            In other words, two vertices of a specular graph either share the entire in/out-neighbourhood
or none of it. Pairing specularity and strong quadrangularity gives the following result.
Theorem 1. [
            <xref ref-type="bibr" rid="ref18">18</xref>
            ] A specular, strongly quadrangular graph is the graph of a unitary matrix.
          </p>
          <p>A broader version of the discussion involves the notion of line graph.</p>
          <p>Definition 4 (Line Graph). Given a graph  = (, ), the respective line graph i→s−  =→(−  →,−  )
where:
•→−  = . The vertices in→−  represent the edges from .
•→−  = {(︀ (, ), (, ))︀ : (, ), (, ) ∈ }. Two vertices are adjacent in→−  if and only
if they represent consecutive edges in .</p>
          <p>The convenience in dealing with line graphs is twofold. On the one hand, a line graph encodes
all adjacencies of the original graphs. On the other, line graphs are tightly linked to the property
of specularity, as stated by the following result.</p>
        </sec>
        <sec id="sec-4-1-2">
          <title>Lemma 2. Any line graph is specular.</title>
          <p>Theorem 1 now prompts the question as to which graphs induce strongly quadrangular line
graphs. As it turns out, the question is answered by Eulerian graphs or graphs that are disjoint
unions of Eulerian components.</p>
          <p>
            Theorem 2. [
            <xref ref-type="bibr" rid="ref18">18</xref>
            ] Let  be a graph. Then→,−  is the graph of a unitary if and only if  is Eulerian
or the disjoint union of Eulerian components.
          </p>
          <p>As for Theorem 2, it should be clarified that the proof from left to right is only partially
related to the reasoning constructed so far in this section.</p>
          <p>
            Graph Reversibility Following a diferent path, Montanaro studied graphs of unitary
matrices from the perspective of graph reversibility [
            <xref ref-type="bibr" rid="ref6">6</xref>
            ]. This novel notion builds upon its local
version: an edge (, ) is reversible if and only if there exists a path from  to .
Definition 5 (Graph Reversibility). [
            <xref ref-type="bibr" rid="ref6">6</xref>
            ] A graph is said to be reversible if and only if all of its
edges are reversible.
          </p>
          <p>Eulerian</p>
          <p>→− 
Specular, strongly
quadrangular</p>
          <p>Graph of unitary matrix</p>
          <p>Strongly quadrangular</p>
          <p>Reversible</p>
          <p>Reversibility is closely tied with the more standard property of strong connectivity: any
strongly connected graph is reversible. However, the opposite is not true: the class of reversible
graphs includes all graphs composed of diferent disconnected strongly connected components.</p>
          <p>The following result provides the main connection between graphs of unitary matrices and
reversibility.</p>
          <p>
            Theorem 3. [
            <xref ref-type="bibr" rid="ref6">6</xref>
            ] If  is the graph of a unitary matrix then  is reversible.
          </p>
          <p>In light of these results, strong quadrangularity and reversibility appear to relate to graphs
of unitary matrices in distinct ways. Whereas the study of strong quadrangularity requires a
deeper quasi matrix-theoretical analysis, reversibility links to graphs of unitary matrices on a
higher level. Because quantum computation is inherently reversible, it is of no surprise that
graphs apt to describe it should satisfy some sort of Graph Theoretical-analogous of reversibility.</p>
          <p>To clarify the picture described by the results provided so far, Figure 2 provides a conceptual
summary of the relationships between graphs of unitary matrices and the graph properties here
reviewed.</p>
        </sec>
      </sec>
      <sec id="sec-4-2">
        <title>3.2. Encoding Graphs into Unitary Matrices</title>
        <p>Section 3.1 provided insights over the properties that characterize graphs of unitary matrices.
Because these are the graphs that lend themselves to quantum walks, a reasonable question
would ask how to transform general graphs into graphs of unitary matrices. “Graph Encoding
in Quantum Computing” refers precisely to this transformation.</p>
        <p>
          Hereby, two edge addition based encoding procedures are summarized: from general to
Eulerian graphs [
          <xref ref-type="bibr" rid="ref20">20</xref>
          ]; from irreversible to reversible graphs [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ].
        </p>
      </sec>
      <sec id="sec-4-3">
        <title>Encoding General Graphs into Eulerian Ones In [20], an algorithmic solution aimed at</title>
        <p>encoding graphs into unitary matrices was proposed. Because the result solely relies on the
assumption that the given multigraph be connected, the procedure may be extended to general
graphs via reiteration over each connected component.</p>
        <p>The procedure builds upon Theorem 2 through the following steps: (i) the given graph
 = (, ) is encoded into a Eulerian graph ′; (ii) the line graph→−′ is computed; (iii)  is
encoded into a unitary matrix  supported by the adjacency matrix →(−′). By Theorem 2→,−′
is the graph of a unitary matrix, thus  exists.</p>
        <p>Providing a closer inspection over the workings of step (i), this exploits the following result.








(a) Input graph .</p>
        <p>(b) Eulerian multigraph ′.</p>
        <p>Theorem 4. A connected graph  = (, ) is Eulerian if, for any  ∈  , +() = − ().</p>
        <p>On these grounds, the procedure “Eulerifies”  by balancing the in- and out-degree of each
vertex through addition of edges. Figure 3 provides an example of this process, the added
edges are highlighted in Figure 3b in orange color. Because edges may be duplicated,  is,
more generally, encoded into a Eulerian multigraph, that is, a graph where two vertices may be
connected by more than one edge going the same direction.</p>
        <p>In light of the fact that, in a directed graph, incoming and outgoing edges always come in the
same quantity, the procedure can be shown to converge in (| | + ||) time. All three steps
considered, the overall time-complexity of the procedure is Θ(||2).</p>
        <p>As is the case for the example in Figure 3, the encoded graph might include adjacencies
that were not part of the original graph. While the encoding itself does not address the issue,
projectors do come in to rescue. Let us briefly recall that the state space of a quantum walk is
spanned by the vertices of the given graph. Now, because this encoding procedure constructs a
quantum walk on a line graph, unwanted edges become unwanted vertices and are thus quickly
taken care of with projectors. Elaborating on this, let ⊥ be the set of newly created edges and
consider projector
 =  −
∑︁ |⟩ ⟨| ,
∈⊥
where  is the identity operator. Applying  on any state of the walk erases any part of the
superposition concerning the unwanted edges, thus continuing the walk as they were never
traversed. Clearly,  needs to be applied after each step of the walk.</p>
      </sec>
      <sec id="sec-4-4">
        <title>Encoding Irreversible Graphs into Reversible Ones Apart from providing a reasonable</title>
        <p>
          notion of graph reversibility, Montanaro has also developed a procedure to edit irreversible
graphs so to satisfy this newly defined graph property [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ]. Before proceeding any further, it
should be clarified what reversible graphs are good for; the results given thus far are silent as to
the conditions these graphs must satisfy. As it turns out, once a reversible graph is equipped
with self-loops at each vertex, a procedure exists to encode it into the graph of a unitary matrix.
The process works through a specific cycle decomposition of the graph. Further details may be
found in [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ].
        </p>
        <p>Returning to irreversible graphs, the path towards their transformation to reversible ones
begins with the identification of all those edges that are irreversible. Trivially, these edges are
to be turned into reversible ones, though defining the resulting quantum walk shall require a
more elaborate plan.</p>
        <p>Given a graph , removing all such edges inevitably leads to a reversible graph . Indeed,
no reversible edge becomes irreversible through such removal. The efect of the removal is
twofold: (i)  is structured into diferent reversible connected (or, equivalently, strongly
connected) components 1, 2, . . . , ; (ii) in , irreversible edges always connect two distinct
components ,  . Let (, ) be the irreversible edge connecting components ,  .  is
augmented with vertex . To preserve reversibility of , edge (, ) is added. Finally two
distinct quantum walks ,  are constructed over reversible components  and  via
the above procedure. Depending on which component the walker is currently visiting, the
respecting quantum walk operator is applied.</p>
        <p>However, with a solution comes a problem, namely that the quantum walker should be
prevented from ever traversing edge (, ), as it does not belong the original graph . To this
end, projective measurements are devised, such that, upon superposition between vertices of
,  , the walker collapses to one of the components. That is, for any connected component
of , the following projector is defined
 = ∑︁ |⟩ ⟨| .</p>
        <p>∈
After a step, the walker is measured via all projectors . Measuring  or  means, respectively,
ifnding the walker in either reversible component  or  . Thus, given measurement outcome
, the quantum walk is continued via operator . Naturally, the next step could again traverse
an irreversible edge. Thus, just as in the encoding procedure into Eulerian graphs, quantum
walk operators and projectors need be alternated.</p>
      </sec>
      <sec id="sec-4-5">
        <title>How Truthful Can an Encoding Procedure Be? Both encoding procedures here reviewed</title>
        <p>appear to heavily rely on the use of projectors to ensure truthfulness with respect to the
structure of the original graph. More specifically, projectors are inevitable whenever dealing
with non-strongly connected graphs: yet another hint to the restriction posed by computational
reversibility and graph reversibility.</p>
        <p>In this regard, the study on truthful encoding procedures should also concern duplicated
edges. Indeed, edge duplication also afects graph topology, albeit in a somewhat softer way. In
turn, these efects appear to produce phenomena of local bias in the resulting quantum walk.</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>4. Conclusions and Future Declarative Directions</title>
      <p>
        A large part of quantum computing research focuses on the development of eficient quantum
algorithms and quantum programming languages that should allow to code such algorithms
(see, e.g., [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]). Pursuing this route has the advantage of directing the eforts in identifying
the complexity classes including all the problems that can be eficiently solved in the quantum
setting (e.g., the classes QP and BQP). However, it requires a deep change in the way we instruct
new generations of computer scientists on algorithms and programming. The risk is that of
ifnding only “small” classes of problems over which the quantum advantage is substantial.
      </p>
      <p>This paper follows an alternative path: coding quantum algorithms in a classical setting,
relying on a compiler to achieve quantum speed-up. Ideally, the programmer would thus be
relieved from any “quantum mechanical duty.” However, the generalized speed-up provided by
a compiler would hardly compare with the speed-ups available for each given problem.</p>
      <p>In light of these observations, a compromise between the two approaches seems reasonable.
Though, two questions arise: (i) What kind of compiler? (ii) What kind of classical paradigm?</p>
      <p>In Section 2 we recall the tight connection between graphs and procedural models (e.g.,
imperative programming languages). Throughout Section 3, the analogy between quantum
computational and graph reversibility frequently emerges in a rather natural way. However,
graphs defined by the operational semantics of procedural models are almost never reversible,
being termination states sink vertices. We saw that whenever lacking graph reversibility,
projectors play a fundamental role in providing quantum representation of graphs. However,
to rely on projectors means to give up on unitary evolution. So it seems as if procedural
computations and unitary evolution are like oil and water.</p>
      <p>
        One could argue that a reversible operational semantics can be defined for any imperative
program that always terminates. Which is of course true, as it is true that classical Boolean
circuits can be embedded into reversible ones, and hence into quantum circuits. The cost must
be paid in terms of space occupancy and an upper bound for the number of computational steps
should be available a-priori in order to allocate the right amount of space (qubits). Notice that
a proposal for a compiler of a fragment of the C language into Quantum Annealers has been
presented in [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ]. It is worth mentioning that even though Quantum Annealers are currently one
of the most used architectures that exploit quantum mechanics, they are not general quantum
machines and the debate on the speed-up they achieve is still open (see, e.g., [
        <xref ref-type="bibr" rid="ref22 ref23">22, 23</xref>
        ]). As a
matter of fact, the most recent works in the direction of defining the boundaries of quantum
supremacy rely on photonic processors [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ].
      </p>
      <p>We argue that a better chance for compiling classical languages into quantum comes from
declarative languages. The most easy way to get a grasp of our intuition is that of considering
assignments and the no-cloning theorem. The no-cloning theorem states that the function
that makes a copy of an unknown, generic quantum state is not unitary, and as such it cannot
be realized in a purely quantum model. While this is a major obstacle for the compilation of
procedural languages, where assignments make copies of values, it is coherent with the spirit
of declarative programming, where assignments and in general side efects are avoided. We
argue significant developments on this matter may come from joint eforts between the two
involved research fields.</p>
      <p>
        In the case of functional languages, the most natural semantics is the denotational one, which
associates to a program the function it defines. Since classical architectures are by nature
operational, the denotational semantics of such languages have been mainly exploited to prove
correctness of the programs, while the efort of producing the equivalent procedural version
is paid by the compiler. In this sense a quantum compilation would instead consist in the
embedding of the denotation of the program into a reversible unitary function, which should
then be compiled into a quantum circuit. The compilation of unitaries into quantum circuits
is a hot topic in the quantum community and diferent techniques are under development to
optimize the task (see, e.g., [
        <xref ref-type="bibr" rid="ref25">25, 26</xref>
        ]). As far as the embedding of a computable function into a
unitary one is concerned, since the framework of Quantum Circuits becomes Turing Complete
only when we endow it a classical model that generates uniform families of circuits, we cannot
expect to be able to compile any computable function into a unitary one. This is the point where
we envisage that compositionality properties of the denotational semantics should come into
play to decompose the whole denotation in subcomponents. For each of these subcomponents
the compiler should be able to identify whether it is amenable to quantum compilation and
quantum speed-up or it is better to implement it in a classical fashion.
      </p>
      <p>As far as logic and constraint based languages are concerned, a similar analysis should be
conducted referring to model-theoretic semantics instead of denotational ones. In a sense this
makes the picture more challenging than the functional case. It comes not as a surprise being
the framework the most high level one. However, our analysis of graphs and quantum walks is
pertinent with several aspects of this approach.</p>
      <p>One concerns the solving stage in Answer Set Programming (ASP), which relies on a
dependency graph for the assignment of truth values to the atoms, in accordance with the constraints
defined in the model. Dependency graphs supporting stable models and quantum walk amenable
graphs share few commonalities due to loops. Future studies could focus on encoding techniques
to conciliate these two conflicting classes of graphs.</p>
      <p>The link between ASP and quantum computation is reinforced by the work in [27], where
stable models search was given a solution through Grover’s algorithm. Aside from the resulting
quadratic speed-up, the work leads to a broader implication: any ASP program may be executed
on quantum architecture. This is a first efort in the same direction that we are proposing; our
aim is to generalize it. Ideally, the investigations could set of from quantum SAT solvers [ 28],
thus extending the above result to any SAT solving-based program.</p>
      <p>The case of MiniZinc is analogous: a graph underlies the evolution of the domains of the
variables. In this context, consistency properties over such graph are at the basis of the computation.
While on classical machines many techniques have been developed to remove symmetries over
the graph, thus reducing the computational complexity, in the case of quantum computation
we observed in Section 3 that the more a graph is symmetric the more likely it is amenable to
quantum encoding and quantum walks.</p>
      <p>Information Processing 19 (2020). doi:10.1007/s11128-020-02816-0.
[26] M. Soeken, M. Roetteler, N. Wiebe, G. D. Micheli, Logic synthesis for quantum computing,
2017. arXiv:1706.02721.
[27] D. Meyer, J. Pommersheim, J. Remmel, Finding stable models via quantum computation.,
2004, pp. 285–291.
[28] M. Mosca, S. R. Verschoor, Factoring semi-primes with (quantum) sat-solvers, Scientific
Reports 12 (2019).</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>R. P.</given-names>
            <surname>Feynman</surname>
          </string-name>
          ,
          <article-title>Simulating physics with computers, in: Feynman and computation</article-title>
          , CRC Press,
          <year>2018</year>
          , pp.
          <fpage>133</fpage>
          -
          <lpage>153</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>P. W.</given-names>
            <surname>Shor</surname>
          </string-name>
          ,
          <article-title>Polynomial-time algorithms for prime factorization and discrete logarithms on a quantum computer</article-title>
          ,
          <source>SIAM Review 41</source>
          (
          <year>1999</year>
          )
          <fpage>303</fpage>
          -
          <lpage>332</lpage>
          . doi:
          <volume>10</volume>
          .1137/ S0036144598347011.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>L. K.</given-names>
            <surname>Grover</surname>
          </string-name>
          ,
          <article-title>A fast quantum mechanical algorithm for database search</article-title>
          ,
          <source>in: Proceedings of the Twenty-Eighth Annual ACM Symposium on Theory of Computing</source>
          , STOC '96,
          <string-name>
            <surname>Association</surname>
          </string-name>
          for Computing Machinery, New York, NY, USA,
          <year>1996</year>
          , p.
          <fpage>212</fpage>
          -
          <lpage>219</lpage>
          . URL: https: //doi.org/10.1145/237814.237866. doi:
          <volume>10</volume>
          .1145/237814.237866.
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>L.</given-names>
            <surname>Euler</surname>
          </string-name>
          ,
          <article-title>Solutio problematis ad geometriam situs pertinentis</article-title>
          ,
          <source>Commentarii Academiae Scientiarum Imperialis Petropolitanae</source>
          <volume>8</volume>
          (
          <issue>1736</issue>
          )
          <fpage>128</fpage>
          -
          <lpage>140</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>C. H.</given-names>
            <surname>Papadimitriou</surname>
          </string-name>
          , Computational complexity,
          <year>1993</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>A.</given-names>
            <surname>Montanaro</surname>
          </string-name>
          ,
          <article-title>Quantum walks on directed graphs</article-title>
          ,
          <source>arXiv preprint quant-ph/0504116</source>
          (
          <year>2005</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>J.</given-names>
            <surname>Kempe</surname>
          </string-name>
          ,
          <article-title>Quantum random walks: An introductory overview</article-title>
          ,
          <source>Contemporary Physics</source>
          <volume>44</volume>
          (
          <year>2003</year>
          )
          <fpage>307</fpage>
          -
          <lpage>327</lpage>
          . doi:
          <volume>10</volume>
          .1080/00107151031000110776.
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>A. S.</given-names>
            <surname>Bhatia</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Kumar</surname>
          </string-name>
          ,
          <article-title>Quantum finite automata: survey, status</article-title>
          and research directions,
          <year>2019</year>
          . arXiv:
          <year>1901</year>
          .07992.
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>A. W.</given-names>
            <surname>Harrow</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Hassidim</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Lloyd</surname>
          </string-name>
          ,
          <article-title>Quantum algorithm for linear systems of equations</article-title>
          ,
          <source>Physical review letters 103</source>
          (
          <year>2009</year>
          )
          <fpage>150502</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>M.</given-names>
            <surname>Ying</surname>
          </string-name>
          , Foundations of Quantum Programming, 1st ed., Morgan Kaufmann Publishers Inc., San Francisco, CA, USA,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>M. A.</given-names>
            <surname>Nielsen</surname>
          </string-name>
          ,
          <string-name>
            <surname>I. Chuang</surname>
          </string-name>
          ,
          <source>Quantum computation and quantum information</source>
          ,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>F.</given-names>
            <surname>Harary</surname>
          </string-name>
          , Graph Theory, Addison Wesley series in mathematics, Addison-Wesley,
          <year>1971</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>R.</given-names>
            <surname>Motwani</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Raghavan</surname>
          </string-name>
          , Randomized algorithms, Cambridge university press,
          <year>1995</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>D.</given-names>
            <surname>Aharonov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Ambainis</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Kempe</surname>
          </string-name>
          , U. Vazirani,
          <article-title>Quantum walks on graphs</article-title>
          ,
          <source>in: Proceedings of the thirty-third annual ACM symposium on Theory of computing</source>
          ,
          <year>2001</year>
          , pp.
          <fpage>50</fpage>
          -
          <lpage>59</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>A.</given-names>
            <surname>Ambainis</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Bach</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Nayak</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Vishwanath</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Watrous</surname>
          </string-name>
          ,
          <article-title>One-dimensional quantum walks</article-title>
          ,
          <source>in: Proceedings of the thirty-third annual ACM symposium on Theory of computing</source>
          ,
          <year>2001</year>
          , pp.
          <fpage>37</fpage>
          -
          <lpage>49</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <surname>A. M. Childs</surname>
          </string-name>
          ,
          <article-title>Universal computation by quantum walk</article-title>
          ,
          <source>Phys. Rev. Lett</source>
          .
          <volume>102</volume>
          (
          <year>2009</year>
          )
          <article-title>180501</article-title>
          . doi:
          <volume>10</volume>
          .1103/PhysRevLett.102.180501.
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>N. B.</given-names>
            <surname>Lovett</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Cooper</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Everitt</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Trevers</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Kendon</surname>
          </string-name>
          ,
          <article-title>Universal quantum computation using the discrete-time quantum walk</article-title>
          ,
          <source>Physical Review A</source>
          <volume>81</volume>
          (
          <year>2010</year>
          ). doi:
          <volume>10</volume>
          .1103/ physreva.81.042330.
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>S.</given-names>
            <surname>Severini</surname>
          </string-name>
          ,
          <article-title>On the digraph of a unitary matrix</article-title>
          ,
          <source>SIAM Journal on Matrix Analysis and Applications</source>
          <volume>25</volume>
          (
          <year>2003</year>
          )
          <fpage>295</fpage>
          -
          <lpage>300</lpage>
          . URL: https://doi.org/10.1137%2Fs0895479802410293. doi:
          <volume>10</volume>
          .1137/s0895479802410293.
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>S.</given-names>
            <surname>Severini</surname>
          </string-name>
          , Graphs of unitary matrices,
          <year>2003</year>
          . URL: https://arxiv.org/abs/math/0303084. doi:
          <volume>10</volume>
          .48550/ARXIV.MATH/0303084.
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>D.</given-names>
            <surname>Della Giustina</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Piazza</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Riccardi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Romanello</surname>
          </string-name>
          ,
          <article-title>Directed graph encoding in quantum computing supporting edge-failures, in: C. A</article-title>
          .
          <string-name>
            <surname>Mezzina</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          Podlaski (Eds.),
          <source>Reversible Computation</source>
          , Springer International Publishing, Cham,
          <year>2022</year>
          , pp.
          <fpage>75</fpage>
          -
          <lpage>92</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>M. W.</given-names>
            <surname>Hassan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Pakin</surname>
          </string-name>
          , W.-c. Feng,
          <article-title>C to d-wave: A high-level c compilation framework for quantum annealers</article-title>
          ,
          <source>in: 2019 IEEE High Performance Extreme Computing Conference (HPEC)</source>
          , IEEE,
          <year>2019</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>8</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>M. H.</given-names>
            <surname>Amin</surname>
          </string-name>
          ,
          <article-title>Searching for quantum speedup in quasistatic quantum annealers</article-title>
          ,
          <source>Physical Review A</source>
          <volume>92</volume>
          (
          <year>2015</year>
          )
          <fpage>052323</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <given-names>J.</given-names>
            <surname>King</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Yarkoni</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Raymond</surname>
          </string-name>
          ,
          <string-name>
            <surname>I. Ozfidan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. D.</given-names>
            <surname>King</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. M.</given-names>
            <surname>Nevisi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. P.</given-names>
            <surname>Hilton</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C. C.</given-names>
            <surname>McGeoch</surname>
          </string-name>
          ,
          <article-title>Quantum annealing amid local ruggedness and global frustration</article-title>
          ,
          <source>Journal of the Physical Society of Japan</source>
          <volume>88</volume>
          (
          <year>2019</year>
          )
          <fpage>061007</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <string-name>
            <given-names>L. S.</given-names>
            <surname>Madsen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Laudenbach</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. F.</given-names>
            <surname>Askarani</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Rortais</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Vincent</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. F.</given-names>
            <surname>Bulmer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F. M.</given-names>
            <surname>Miatto</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Neuhaus</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L. G.</given-names>
            <surname>Helt</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. J.</given-names>
            <surname>Collins</surname>
          </string-name>
          , et al.,
          <article-title>Quantum computational advantage with a programmable photonic processor</article-title>
          ,
          <source>Nature</source>
          <volume>606</volume>
          (
          <year>2022</year>
          )
          <fpage>75</fpage>
          -
          <lpage>81</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          [25]
          <string-name>
            <given-names>P.</given-names>
            <surname>Niemann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Wille</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Drechsler</surname>
          </string-name>
          ,
          <article-title>Advanced exact synthesis of cliford+t circuits</article-title>
          , Quantum
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>