Open Access
ARTICLE
Foundations of Photonic Quantum Computation. Part 1. Introduction to Quantum Operators
1 UMR 6158 LIMOS, Université Clermont Auvergne, 1 Rue de la Chébarde, Aubière, France
2 UMR 6533 LPCA, Université Clermont Auvergne, 4 Av. Blaise Pascal, Aubière, France
3 CGI 10 Rue Eric de Cromières, Clermont-Ferrand, France
* Corresponding Author: Philippe Lacomme. Email:
Journal of Quantum Computing 2026, 8, 13-54. https://doi.org/10.32604/jqc.2026.075438
Received 31 October 2025; Accepted 23 April 2026; Issue published 26 June 2026
Abstract
This work aims to present the fundamental concepts necessary for performing computations on photonic quantum computers by detailing the gates specific to this architecture and introducing the relationships between standard Pauli gates and their counterparts in photonic systems. Physical considerations related to the optical components are addressed. Theoretical aspects concerning quantum operators are presented, and applied sections demonstrating implementations using the Perceval library developed by Quandela are given. This paper provides a comprehensive, state-of-the-art description of photonic quantum gates in a formal way. The main contribution of this paper is to allow researchers with prior knowledge of the gate model of quantum computing to have a comprehensive understanding of how some photonic quantum computers work. Three optical components are used in this document: beam splitters, phase shifters and permutation components. Most of the more common quantum gates are built from the physical description of these components and the associated physical laws. Extensive focus is placed on controlled gates, which have more complicated constructions. Two different constructions of the CNOT gate are given to show how versatile photonic quantum computers can be. The main drawback of this type of controlled gate is discussed, namely the probabilistic nature of its implementation.Keywords
1.1 Photonic Quantum Computing
Simulating quantum physics on a computer is widely believed to be an algorithmically difficult task. This was already the case as early as 1980, which led Manin [1,2] to briefly mention the idea of using quantum systems to build quantum automata. The same year, Benioff [3] introduced quantum Turing machines. One of the problems that arise when one wants to simulate quantum physics accurately is the amount of memory needed to fully represent the quantum state of the system [4]. This difficulty in simulating quantum systems led Richard Feynman to imagine a “computer” made of and for quantum systems in his foundational article “Simulating Physics with Computers” [5]. The concept was then extended to what is known as gate model quantum computing (QC) by David Deutch [6]. The first advantage of this quantum model of computation was found by leveraging the query model on Deutsch’s problem. QC allows us to check if a given function
Building on these early successes, researchers came up with other quantum algorithms which had a lower algorithmic complexity than their classical counterparts. The canonical and most famous examples are Grover’s [8] search algorithm and Shor’s factoring algorithm [9].
Photonic QC is one of many physical realizations of a quantum computer. The first proposal came from [10], which introduced “dual-rail encoding,” making it possible to encode qubits into Fock states [11]. This led Knill, Laflamme, and Milburn to develop an entire protocol for physically realizing a gate-model quantum computer using optical components, known as the KLM protocol [12]. This protocol was further developed in the following years in [13,14]. This model was refined in [15] into a more complex model of photonic QC, called one-way QC or measurement-based QC, which lies outside the scope of this work.
Photons have proven to be good candidates for the main applications of quantum information. First, they have been used to simulate Hamiltonian dynamics with good precision and high success probability on a 4-qubit photonic silicon chip [16]. Photonic quantum information has applications to cybersecurity with many examples of quantum key distribution being achieved using photons [17–19]. In the field of optimization, although no advantage has been found yet, several promising papers aim to reduce the qubit count required to use photonic quantum computers to solve hard optimization problems [20–22].
Another reason to consider photons a powerful quantum resource is that Scott Aaronson and Anton Arkhipov proposed a protocol for demonstrating quantum supremacy, called boson sampling, which can be implemented using photons and linear optical components [23]. In 2020, ref. [24] reported a claim of quantum computational advantage using this protocol.
1.2 Understanding Modes and Defining Qubits from Modes
To create qubits in a photonic quantum computer, the first method proposed was path encoding, introduced by [10]. The locations of the photons—referred to as spatial modes—define the state of the qubit. Spatial modes can, for instance, correspond to optical fibers. For convenience, throughout this chapter, we use the term mode to refer specifically to spatial mode.
To describe a system composed of photons and modes. We use the notation
To define a Qubit, let us now consider a specific case where a single photon is distributed over two modes. The definition of the two basic states of a qubit in the dual rail encoding relies on the location of the said photon.
When the photon is in mode 0, this corresponds to the Fock state
Remark
When possible and in cases where ambiguity may arise, we use the notation
It is also common to omit the commas between each component of the state, so that
The Fock state

Figure 1: Qubit state
Similarly, the Fock state

Figure 2: Qubit state
This encoding is called the dual mode encoding. But there exist many other possibilities to encode qubits, qudits or even continuous variable quantum information! [25].
1.3 Creation and Annihilation Operators for the Modes
The creation and annihilation operators associated with a mode
• The creation operator
• The annihilation operator
These operators correspond to the emission or annihilation of a photon in a given mode. They play a crucial role when describing the operation of complex optical components.
2 The Generic Beam Splitter Component
2.1 Physical Description of the Action of the Beam Splitter
A beam splitter is an optical component used in photonic circuits. Let

Figure 3: Representation of a beam splitter with two input modes and two output modes.
The output field amplitudes can be expressed in terms of the input amplitudes through the so-called continuity relations:
where
The conservation of energy (proportional to the squared modulus of
Using (1) and (2), the action of the beam splitter can be described in matrix form based on the field amplitudes of each mode, as shown in Fig. 4.

Figure 4: Action of a beam splitter.
Let us note:
If the entire input field is injected into mode
which is consistent with the normalization condition
It follows that:
Staying in the case of one single input (here in
So
Because we consider that we have an input in
By the applying the same process this time with
One would obtain:
Given (1) and (2), it is possible to calculate:
Similarly
Adding both equations together:
So
Reminder
According to (3), we should have:
By substituting
We get:
Since this expression must hold for any choice of
Theorem 1:
Proof: Consider the matrix:
Using (7)–(10), we directly get:
Therefore, the beam splitter’s operation is unitary. □
2.2 Parameterization of the Beam Splitter Matrix U
The gate
There are several conventions for the beam splitter, some of which belong to
Theorem 2:
Proof: As a starting point, let us take the relation demonstrated in the preceding section:
As all the coefficients are complex numbers, each one can be represented in its exponential form so we can be written:
So
It is now possible to analyze:
All magnitudes are positive real numbers, so
From this we find the first important relation:
□
Theorem 3:
Proof: To find the second important relation, let us start with:
Squaring both sides of the equation gives:
i.e.,
It follows that
The equation
Recalling (8)
And using the new notation leads to the second important relation:
□
Remark on the Physical Meaning of the Coefficients
The coefficients
The reflectance
The transmittance
We can also define:
The absorbance
Energy conservation requires
By taking the complex form of its coefficients, the BS operator can be parameterized as:
And by definition of
Thus, the BS operator is completely defined by the six parameters:
And by applying the two important relations (11) and (12):
We would like to reduce the number of parameters of
To do this, we start by using (11):
One can now write:
In their paper, ref. [26] propose the change of variables:
To obtain
Verification
The verifications for
For
And for
We can therefore rewrite by replacing each of the expressions:
Thus, a common expression for the noiseless beam splitter becomes:
We obtained an expression of
2.3 Important Remark on Different Conventions
The definitions of
We would obtain:
Or alternatively, by defining:
One could also have obtained:
In by using
Note that the conventions presented above are not exhaustive. Perceval, the library proposed by [27], offers by default three conventions.
Let us now consider, in each case, all phases set to zero.
Quandela Convention
In particular,
Quandela Convention
The operator

New parameters for
which can be rewritten
Table 1 provides the correspondence between the old definitions of
Quandela Convention
This corresponds exactly to the
A beam splitter is said to be symmetric if it is assigned
It means choosing
In the first convention,
From a mathematical point of view, we choose
The values of the symmetric beam splitter in the Quandela convention (for
which represents the Hadamard gate
All these conventions are equivalent in the sense that one can be transformed into another.
Now, let us clarify a subtlety that was previously overlooked. The Perceval implementation is as follows:
With the special cases:
It should be noted that the library allows passing 4 phases as parameters, which differs from the 3 phases described previously. Fig. 5 shows on the left the placement of these four phases the library uses, to be compared with the three parameters of the generic beam splitter on the right we described.

Figure 5: Differences between the phase parameters of the beam splitter provided by the Perceval library [27] and those considered previously.
The phases considered are those associated with each complex coefficient describing the action of the beam splitter, whereas Perceval adds a phase to each mode (inputs and outputs) that can be controlled using phase shifters (described in the next section). This allows them to obtain a more tunable beam splitter. By default, in the Quandela library, the parameters are
The notation
3 Photonic Circuit Representation and Two Other Optical Components
3.1 The Phase Shifter Component
Apart from the beam splitter, there is a second essential optical component that enables transformations on Fock states. One can also use phase shifters: a transparent plate acting on a single input mode and allowing the phase of the output mode to be changed if a photon is present. Physically, a phase shifter is a device that “slows down” the photon, creating a phase shift relative to the rest of the system. There are several ways to implement it. One way is simply to place a transparent plate in the photon’s path, as stressed in the figure below (Fig. 6).

Figure 6: Representation of a type of physical phase shifter.
The phase shifter acts on a single input mode and produces a single output mode. In other words, its action can be described in terms of Fock states. Recall that the basis states of qubits are encoded on two modes by
And
Let
Its action on Fock states can be described as follows:
This time, applying it to the qubit
We thus have the action on qubits:
Reminders
According to the definition of
This corresponds (up to a global phase) to the
The action of
We also immediately obtain:
From a Fock state perspective, we have the following:
Theorem 4: Applying a phase shift to each mode is equivalent to applying a global phase shift to the qubit. Let
Proof:
□
3.2 Definition of the Permutation Component
The permutation “component” is an optical element whose action is very simple: it exchanges the number of photons between the modes given as parameters. It can be realized by redirecting the optical modes through the use of mirrors for instance.
For example, for
Another example involving more modes:
2301 corresponds to the permutation
One can observe that
3.3 Graphical Representations of the Beam Splitter and the Phase Shifter
Photonic systems can be described using various graphical representations of their optical components. To recognize them, here are a few examples. In the following diagrams, each line represents an optical mode. Let us begin with the beam splitter, shown in Fig. 7 and let us continue with the phase shifter in Fig. 8.

Figure 7: Two representations of the beam splitter.

Figure 8: Two representations of the phase shifter.
We can also give a representation of the

Figure 9: A representation of
3.4 Graphical Representations of a Photonic Circuit
Theses optical components can then be used in an optical circuit. The optical circuit will be composed of different lines representing different modes.
Then the components are placed onto the circuit. Like in gate model of quantum computation, the components are applied in order from left to right. To keep this in mind, we can imagine photons coming from the left of the circuit and moving along the lines until it reaches the end of the circuit.
An example of circuit with two Phase Shifters and two Beam Splitters

Figure 10: Representation of a quantum photonic circuit made with the Perceval library.
Note that the circuit does not directly produce the input Fock state. In some cases, we place it on the left side of the circuit.
4 Modelling Single-Qubit Gates
4.1 From a Unitary on Fock States to a Unitary on Qubits
Before starting to describe how to rebuild the quantum gates on qubits, it is important to understand the link between a unitary acting on Fock states and a unitary acting on qubits. To understand this, we will need to use the creation and annihilation operators.
Let
where
To better understand what happens, we multiply both sides on the left by
We then take the conjugate transpose of the equation
Applying the transposition
with
This if we rename the output mode with the same name as the corresponding input mode, we can rewrite the previous relations:
We now have an expression to describe how an operator
Let us consider an example with for instance:
Replacing
We can rewrite the system as:
Then we use theses relations to describe the effect of the component on a Fock state starting from:
We use the relations from the previous system to get the result after the component:
Starting with two photons on different modes, applying a beamsplitter to both modes results in getting either two photons in the first output mode or two photons in the second output mode. Never in between. This is known as the Hong Ou Mandel effect [28].
Our goal is to construct an

Figure 11: Permutation of the two modes of a Fock state realizing the
For an arbitrary qubit state
We indeed recover the effect of the Pauli-

Figure 12: Equivalent of the
4.3 Realization of the SWAP Gate
We now focus on the standard SWAP gate applied to qubits. Compared to the
To define a gate that swaps qubit 1 with qubit 2, i.e., performs the following operation:
One can use the following permutations:
A visualization is given in Fig. 13.

Figure 13: Mode permutations to define a permutation gate.
On an arbitrary 2-qubit state:
We apply
On Fock states
This is exactly the expected action of
Let us consider the expression obtained for the Beam Splitter introduced in Section 2 (see (13)) :
If we choose
We immediately obtain the

Figure 14: Realization of the H-gate with a beam splitter.
But this
The matrix of
Let us describe the effect on the basis states of a qubit:
This is exactly what we would expect of H applied onto qubits.
To implement
This describes the action of the

Figure 15: Realization of the Z-gate with a phase shifter.
To implement the
• A Beam Splitter
• 2 Phase shifters
Reminder
Using this reminder, let us prove the following statement:
Theorem 5:
Proof: Let us consider
We have:
And by consequence
And as:
So we conclude that
□
This expression corresponds to the photonic circuit introduced in Fig. 16.

Figure 16: Photonic circuit for the
4.7 Realization of the
Recall that according to (14), the definition of
The Perceval computing library natively provides a gate named
and does not directly correspond to the usual
Theorem 6:
Proof: Once again, let us consider
We have:
and we have:
Because
We have:
Therefore:
□
The photonic circuit representation is shown in Fig. 17.

Figure 17: Quantum circuit for the
4.8 Realization of the
Let us note that:
The definition of the component

Figure 18: Representation of the photonic circuit associated with
For completion, we can use the formalism of Section 4.1 on
Starting from the two basis states of a qubit, we get:
This is exactly how the Ry gate acts on qubits.
4.9 Realization of the
To rebuild the
Theorem 7:
Proof: Let us consider
and
Because
We have
Because
We have
and
and
So
□
The photonic representation of the gate is shown in Fig. 19.

Figure 19: Representation of the photonic circuit associated to
5.1 Realization of CX According to [14]
Consider the definition of

Figure 20: Ralph
This figure presents a method for implementing a CNOT gate based on 6 modes representing two qubits and two auxiliary modes. The modes
To explain the CNOT operation, we need to distinguish between the input and output parts of the CNOT for a given mode. For instance, we distinguish
Before diving into the explanation of the CNOT operation, let us highlight two important elements:
• Each Beam Splitter has a dashed side, which is the side that will receive a phase shift (the side that will receive the minus sign in the chosen convention).
• We consider two types of Beam Splitters: some with a reflectivity of
Notes
It is important to recall that for a Beam Splitter with reflectivity
• The state
• The fraction of
This leads to the output

Figure 21: Output amplitudes of a beam splitter with reflectivity
By observing Fig. 20, we can establish the following relations:
Giving:
Remark
By choosing a different reflectivity
Example with
Note 1
The creation and annihilation operators associated with a mode
• The creation operator
• The annihilation operator
Note 2
Strictly speaking, the creation operator on the output mode
For convenience and simplicity, we will use the shorthand notation
For example:
The creation operator on the output modes can be deduced from the previous relations. For example, we have:
The final state of a two-qubit system (4 modes), to which we add the two auxiliary modes that we reorganize for clarity, can be written as:
This state can be described in terms of Fock states and creation operators by considering only the 4 output qubits. So the state:
is rewritten:
Now, let us consider each term separately.
For the first term
For the second term
For the third term
For the last term
It is necessary to apply a post-selection on the resulting states to retain only the states having:
• Exactly one photon on the control side
• Exactly one photon on the target side
• No photons on the auxiliary modes: remove all terms involving
Thus, by grouping the four terms and removing the terms corresponding to the post selection conditions mentioned previously:
After removing the terms, we obtain:
We almost recover the expected action of the CNOT gate: (
Example
If we started from the state
We do not always find ourselves in this situation whenever we use our CNOT, and the value
Remark
Ralph’s CNOT gate is a “simple” way to implement the CNOT gate on photonic computers using dual-rail encoding. However, the application of this gate succeeds only 1 time out of 9. This limitation is not an error rate that can be corrected with hardware improvements. It is a real fundamental limit intrinsic to the functioning of Ralph’s CNOT gate.
Note that the calculation starts by defining
For two qubits in the state
In this implementation (originally proposed by [14]), the two auxiliary modes are:
• Mode 0 which appears in the first position in Fig. 20;
• Mode 5 which appears in the last position in Fig. 20.
Conclusion for Ralph’s CNOT: The implementation of the

Figure 22: Incorporating two CNOT gates in a single circuit: infeasibility of implementation using the CNOT scheme by [14].
5.2 Implementation of the
There exist different ways to implement the
The heralded
Just as for Ralph’s CX, two auxiliary modes are required, which in this case correspond to modes 4 and 5. Note that unlike the
An implementation using the library is given in (Appendix B).
5.3 Implementation the CX of Ralph and the Library [27]
The CX gate proposed by Ralph is also appearing in Perceval’s catalogue under the name “postprocessed cnot”. Therefore, you can easily build a quantum circuit using it. A code example is given in (Appendix A).
To implement this
• modes 0 and 1 define a qubit (have exactly one photon);
• modes 2 and 3 define a qubit (have exactly one photon);
• modes 4 and 5 are equal to 0.
5.4 Representation of Gates
For two qubits
Table 2 provides the correspondence between quantum operators on qubits and photonic components, along with the Perceval code associated with their implementation.

This article presents the foundational concepts of photonic quantum computing from an operator- and computation-oriented perspective, providing a state-of-the-art overview of quantum gates within a universal formalism. Beam splitters and phase shifters are introduced, along with a physical description of their action on spatial modes, offering a comprehensive view of photonic quantum computers. Each basic gate is expressed in matrix form, and we demonstrate how standard quantum computation gates can be implemented using photonic components. The gates are decomposed into optical elements according to the KLM protocol and employing dual-rail encoding. Basic elements for programming with Quandela’s Perceval library are included in the Appendix Section to facilitate practical implementation of these concepts. Particular emphasis is placed on different CNOT realizations, specifically the heralded CNOT and the Ralph CNOT, highlighting their differences, advantages, and limitations.
Acknowledgement: Authors have used ChatGPT to improve English skill.
Funding Statement: This work was done within the scope of a Ph.D which is funded by CGI for author Martin Bombardelli. Philippe Lacomme, Gerard Fleury and Bogdan Vulpescu are financed by a public laboratory in France (LIMOS, LIMOS and LPCA, respectively).
Author Contributions: The authors confirm contribution to the paper as follows: Conceptualization, Martin Bombardelli, Philippe Lacomme and Bogdan Vulpescu; methodology, Martin Bombardelli, Philippe Lacomme, Bogdan Vulpescu and Gérard Fleury; software, Martin Bombardelli, Philippe Lacomme and Bogdan Vulpescu; validation, Martin Bombardelli, Philippe Lacomme, Bogdan Vulpescu and Gérard Fleury; formal analysis, Martin Bombardelli, Philippe Lacomme, Bogdan Vulpescu and Gérard Fleury; investigation, Martin Bombardelli, Philippe Lacomme, Bogdan Vulpescu and Gérard Fleury. All authors reviewed and approved the final version of the manuscript.
Availability of Data and Materials: Not applicable.
Ethics Approval: Not applicable.
Conflicts of Interest: The authors declare no conflicts of interest.
import perceval as pcvl
import numpy as np
def toFockState(qubitState):
pe = {0: [1,0], 1: [0,1], 2: [0,1]}
res = pe [qubitState [0]] + pe [qubitState [1]] + pe [qubitState
[2]]
return res
def strState(state):
return str(pcvl.BasicState(state))
from perceval.components import PS, BS, PERM
import perceval as pcvl
import numpy as np
from perceval.components import BS
theta_13 = BS.r_to_theta(r=1/3)
cnot = (pcvl.Circuit(6, name =“Ralph CNOT”)
.add((0, 1), BS.H(theta_13, phi_bl = np.pi,
phi_tr = np.pi/2, phi_tl = -np.pi/2))
.add((3, 4), BS.H())
.add((2, 3), BS.H(theta_13, phi_bl = np.pi,
phi_tr = np.pi/2, phi_tl = -np.pi/2))
.add((4, 5), BS.H(theta_13))
.add((3, 4), BS.H()))
# 1.initialisation
istate = [0,1,0,1,0,0]
# 2.test of thecnot
circuit = pcvl.Circuit(6)
circuit.add(0,PERM([0,1,2,4,3,5]))
circuit.add(0,PERM([0,1,3,2,4,5]))
circuit.add(0,PERM([0,2,1,3,4,5]))
circuit.add(0,PERM([1,0,2,3,4,5]))
circuit.add(0,cnot)
circuit.add(0,PERM([1,0,2,3,4,5]))
circuit.add(0,PERM([0,2,1,3,4,5]))
circuit.add(0,PERM([0,1,3,2,4,5]))
circuit.add(0,PERM([0,1,2,4,3,5]))
# 3. Displaying the circuit
pcvl.pdisplay(circuit.compute_unitary())
print(““)
pcvl.pdisplay(circuit)
# 4. Simulation
p = pcvl.Processor(“SLOS”, circuit)
p.set_postselection(pcvl.PostSelect(“[0,1]==1 & [2,3]==1 & [4]==0 & [5]==0”))
nsample = 50,000
from perceval.algorithm import Sampler, Analyzer
sampler = Sampler (p)
p.with_input (pcvl.BasicState ([0, 1, 0, 1, 0, 0]))
output = sampler.sample_count (1000)
pcvl.pdisplay (output[‘results’], output_format = pcvl.Format.TEXT)
import perceval as pcvl
import numpy as np
from perceval.components import PS, BS, PERM
import perceval as pcvl
import numpy as np
from perceval.components import BS
from perceval.components import catalog
cnot = catalog [‘heraldedcnot’].build_circuit()
# 1.initialization
istate = [0, 1, 0, 1, 1, 1]
# 2.test of thecnot
circuit = pcvl.Circuit(6)
circuit.add(0,cnot)
# 3. Displaying the circuit
pcvl.pdisplay(circuit.compute_unitary())
print(““)
pcvl.pdisplay(circuit)
# 4calculation
p = pcvl.Processor(“SLOS”, circuit)
p.set_postselection(pcvl.PostSelect(“[4]==1 & [5]==1”))
nsample = 50,000
from perceval.algorithm import Sampler, Analyzer
sampler = Sampler (p)
p.with_input (pcvl.BasicState (istate)) #Corresponds to logical
qubit state
output = sampler.sample_count (1000)
pcvl.pdisplay (output [‘results’], output_format =
pcvl.Format.TEXT)
print(‘end’)
import perceval as pcvl
import numpy as np
from perceval.components import PS, BS, PERM
import perceval as pcvl
import numpy as np
from perceval.components import BS
from perceval.components import catalog
ccnot = catalog [‘toffoli’].build_circuit()
# 1.initialisation
istate = [0, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0]
# 2.Cnot
circuit = pcvl.Circuit(12)
circuit.add(0,ccnot)
# 3.print of the circuit
pcvl.pdisplay(circuit.compute_unitary())
print(““)
pcvl.pdisplay(circuit)
# 4Computation
p = pcvl.Processor(“SLOS”, circuit)
p.set_postselection(pcvl.PostSelect(“[0,1]==1 & [2,3]==1 & [6]==0 & [7]==0 & [8]==0 & [9]==0 & [10]==0 & [11]==0”))
nsample = 1000
from perceval.algorithm import Sampler, Analyzer
sampler = Sampler (p)
p.with_input (pcvl.BasicState (istate)) #Corresponds to logical
qubit state
output = sampler.sample_count (nsample)
print(output [‘results’])
pcvl.pdisplay (output [‘results’], output_format =
pcvl.Format.TEXT)
print(‘end’)
Appendix D Perceval Implementation of
Step 1. Circuit Initialization
This can be done by initializing qubits and then converting them into a Fock state.
For example, starting from the state
qubit_istate = [1, 0]
istate = toFockState(qubit_istate)
Step 2. Define the circuit composed of 2 qubits, i.e., 4 Fock modes
circuit = pcvl.Circuit(4)
Step 3. Add an
The associated code is:
circuit.add(0,PERM([1, 0, 2, 3]))
#orcircuit.add(0,PERM([1,0]))
Step 4. Display the circuit
pcvl.pdisplay(circuit.compute_unitary())
print(““)
pcvl.pdisplay(circuit)
Step 5. Perform the computation
backend = pcvl.BackendFactory().get_backend(“Naive”)
backend.set_circuit(circuit)
backend.set_input_state(pcvl.BasicState(istate))
Step 6. Define the possible output states
output_qubit_states = [
[x1,x2]
for x1 in [0, 1] for x2 in [0, 1]
]
Step 7. Display the results
for oqstate in output_qubit_states:
ostate = toFockState(oqstate)
a = backend.prob_amplitude(pcvl.BasicState(ostate))
print(strState(ostate),” ->“,strState(oqstate), a)
print(‘end’)
References
1. Manin Y. Computable and uncomputable. Moscow, Russia: Sovetskoye Radio; 1980. 128 p. [Google Scholar]
2. Anonymous. 40 years of quantum computing. Nat Rev Phys. 2022;4(1):1. doi:10.1038/s42254-021-00410-6. [Google Scholar] [CrossRef]
3. Benioff P. The computer as a physical system: a microscopic quantum mechanical Hamiltonian model of computers as represented by Turing machines. J Stat Phys. 1980;22(5):563–91. doi:10.1007/BF01011339. [Google Scholar] [CrossRef]
4. Buluta I, Nori F. Quantum simulators. Science. 2009;326(5949):108–11. doi:10.1126/science.1177838. [Google Scholar] [PubMed] [CrossRef]
5. Feynman RP. Simulating physics with computers. In: Feynman and computation. Boca Raton, FL, USA: CRC Press; 2018. p. 133–53. [Google Scholar]
6. Deutsch D. Quantum theory, the church-turing principle and the universal quantum computer. Proc R Soc Lond Ser A Math Phys Sci. 1985;400(1818):97–117. [Google Scholar]
7. Deutsch D, Jozsa R. Rapid solution of problems by quantum computation. Proc R Soc Lond Ser A Math Phys Sci. 1992;439(1907):553–8. doi:10.1098/rspa.1992.0167. [Google Scholar] [CrossRef]
8. Grover LK. A fast quantum mechanical algorithm for database search. In: Proceedings of the Twenty-Eighth Annual ACM Symposium on Theory of Computing—STOC’96; 1996 May 22–24; Philadelphia, PA, USA. p. 212–9. doi:10.1145/237814.237866. [Google Scholar] [CrossRef]
9. Shor PW. Algorithms for quantum computation: discrete logarithms and factoring. In: Proceedings 35th Annual Symposium on Foundations of Computer Science; 1994 Nov 20–22; Santa Fe, NM, USA. p. 124–34. doi:10.1109/SFCS.1994.365700. [Google Scholar] [CrossRef]
10. Chuang IL, Yamamoto Y. Simple quantum computer. Phys Rev A. 1995;52(5):3489–96. doi:10.1103/physreva.52.3489. [Google Scholar] [PubMed] [CrossRef]
11. Fock V. Configuration space and second quantization. In: V.A. Fock-selected works: quantum mechanics and quantum field theory. Boca Raton, FL, USA: CRC Press; 2004. p. 191–220. doi:10.1201/9780203643204.ch5b. [Google Scholar] [CrossRef]
12. Knill E, Laflamme R, Milburn GJ. A scheme for efficient quantum computation with linear optics. Nature. 2001;409(6816):46–52. doi:10.1038/35051009. [Google Scholar] [PubMed] [CrossRef]
13. Knill E. Quantum gates using linear optics and postselection. Phys Rev A. 2002;66(5):052306. doi:10.1103/physreva.66.052306. [Google Scholar] [CrossRef]
14. Ralph TC, White AG, Munro WJ, Milburn GJ. Simple scheme for efficient linear optics quantum gates. Phys Rev A. 2001;65(1):012314. doi:10.1103/physreva.65.012314. [Google Scholar] [CrossRef]
15. Raussendorf R, Briegel HJ. A one-way quantum computer. Phys Rev Lett. 2001;86(22):5188–91. doi:10.1103/physrevlett.86.5188. [Google Scholar] [PubMed] [CrossRef]
16. Yu Y, Chi Y, Zhai C, Huang J, Gong Q, Wang J. Simulating Hamiltonian dynamics in a programmable photonic quantum processor using linear combinations of unitary operations. arXiv:2211.06723. 2022. [Google Scholar]
17. Riso AL, Thyagarajan K, Whiting C, Jimenez K. Constructing a photonic implementation of quantum key distribution. arXiv:2509.04389. 2025. [Google Scholar]
18. Zahidy M, Mikkelsen MT, Müller R, Da Lio B, Krehbiel M, Wang Y, et al. Quantum key distribution using deterministic single-photon sources over a field-installed fibre link. npj Quantum Inf. 2024;10(1):2. doi:10.1038/s41534-023-00800-x. [Google Scholar] [CrossRef]
19. Zhang Y, Ding X, Li Y, Zhang L, Guo YP, Wang GQ, et al. Experimental single-photon quantum key distribution surpassing the fundamental coherent-state rate limit. arXiv:2406.02045. 2024. [Google Scholar]
20. Baldazzi A, Azzini S, Pavesi L. Resource-efficient variational quantum solver for the travelling salesman problem and its silicon photonics implementation. arXiv:2511.02696. 2025. [Google Scholar]
21. Baldazzi A, Sanna M, Borghi M, Azzini S, Pavesi L. Four-qubit variational algorithms in silicon photonics with integrated entangled photon sources. arXiv:2501.01301. 2025. [Google Scholar]
22. Abbassi A, Dujardin Y, Gourdin E, Lacomme P, Prodhon C. Quantum approaches to the minimum edge multiway cut problem. arXiv:2601.00720. 2026. [Google Scholar]
23. Aaronson S, Arkhipov A. The computational complexity of linear optics. In: Proceedings of the Forty-Third Annual ACM Symposium on Theory of Computing. San Jose, CA, USA: ACM; 2011. p. 333–42. doi:10.1145/1993636.1993682. [Google Scholar] [CrossRef]
24. Zhong HS, Wang H, Deng YH, Chen MC, Peng LC, Luo YH, et al. Quantum computational advantage using photons. Science. 2020;370(6523):1460–3. doi:10.1126/science.abe8770. [Google Scholar] [PubMed] [CrossRef]
25. Romero J, Milburn G. Photonic quantum computing. arXiv:2404.03367. 2024. [Google Scholar]
26. Campos R, Saleh B, Teich M. Quantum-mechanical lossless beam splitter: SU(2) symmetry and photon statistics. Phys Rev A Gen Phys. 1989;40(3):1371–84. doi:10.1103/physreva.40.1371. [Google Scholar] [PubMed] [CrossRef]
27. Heurtel N, Fyrillas A, de Gliniasty G, Le Bihan R, Malherbe S, Pailhas M, et al. Perceval: a software platform for discrete variable photonic quantum computing. Quantum. 2023;7:931. doi:10.22331/q-2023-02-21-931. [Google Scholar] [CrossRef]
28. Hong C, Ou Z, Mandel L. Measurement of subpicosecond time intervals between two photons by interference. Phys Rev Lett. 1987;59(18):2044–6. doi:10.1103/PhysRevLett.59.2044. [Google Scholar] [PubMed] [CrossRef]
Cite This Article
Copyright © 2026 The Author(s). Published by Tech Science Press.This work is licensed under a Creative Commons Attribution 4.0 International License , which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.


Submit a Paper
Propose a Special lssue
View Full Text
Download PDF
Downloads
Citation Tools