Download Quantum Energy–based P Systems - Computational Biology and

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Copenhagen interpretation wikipedia , lookup

Quantum decoherence wikipedia , lookup

Casimir effect wikipedia , lookup

Max Born wikipedia , lookup

Quantum fiction wikipedia , lookup

Wave–particle duality wikipedia , lookup

Quantum field theory wikipedia , lookup

Measurement in quantum mechanics wikipedia , lookup

Bell's theorem wikipedia , lookup

Probability amplitude wikipedia , lookup

Many-worlds interpretation wikipedia , lookup

Scalar field theory wikipedia , lookup

Renormalization group wikipedia , lookup

Orchestrated objective reduction wikipedia , lookup

Molecular Hamiltonian wikipedia , lookup

Self-adjoint operator wikipedia , lookup

Compact operator on Hilbert space wikipedia , lookup

Path integral formulation wikipedia , lookup

Quantum entanglement wikipedia , lookup

Interpretations of quantum mechanics wikipedia , lookup

History of quantum field theory wikipedia , lookup

EPR paradox wikipedia , lookup

Coherent states wikipedia , lookup

Hydrogen atom wikipedia , lookup

Quantum computing wikipedia , lookup

Quantum key distribution wikipedia , lookup

Relativistic quantum mechanics wikipedia , lookup

Particle in a box wikipedia , lookup

Quantum machine learning wikipedia , lookup

Bra–ket notation wikipedia , lookup

Hidden variable theory wikipedia , lookup

Density matrix wikipedia , lookup

Quantum teleportation wikipedia , lookup

Quantum group wikipedia , lookup

Theoretical and experimental justification for the Schrödinger equation wikipedia , lookup

Quantum state wikipedia , lookup

Symmetry in quantum mechanics wikipedia , lookup

T-symmetry wikipedia , lookup

Canonical quantization wikipedia , lookup

Transcript
Quantum Energy–based P Systems
Alberto Leporati, Dario Pescini and Claudio Zandron
Dipartimento di Informatica, Sistemistica e Comunicazione
Università degli Studi di Milano – Bicocca
Via Bicocca degli Arcimboldi 8, 20126 Milano, Italy
e-mail: {leporati,pescini,zandron}@disco.unimib.it
Abstract
Energy–based P systems have been recently defined as P systems
in which the amount of energy manipulated and/or consumed during
computations is taken into account. In this paper we propose two
quantum versions of energy–based P systems. Both versions are defined just like classical energy–based P systems, but for objects and
rules. Objects are represented as pure states in the Hilbert space Cd ,
whereas the definition of rules differs between the two models. In the
former, rules are defined as bijective functions — implemented as unitary operators — which transform the objects from the alphabet. In
the latter, rules are defined as generic functions which map the alphabet into itself. Such functions are implemented using a generalization
of the Conditional Quantum Control technique, and may yield to non–
unitary operators. Finally, we address some problems and outline some
directions for future work.
1
Introduction
P systems (also called membrane systems) have been introduced in [14] as
a new class of distributed and parallel computing devices, inspired by the
structure and functioning of living cells. The basic model consists of a hierarchical structure composed by several membranes, embedded into a main
membrane called the skin. Membranes divide the Euclidean space into regions, that contain some objects (represented by symbols of an alphabet)
and evolution rules. Using these rules, the objects may evolve and/or move
from a region to a neighboring one. The rules are applied in a nondeterministic and maximally parallel way: all the objects that may evolve are
1
forced to evolve. A computation starts from an initial configuration of the
system and terminates when no evolution rule can be applied. The result of
a computation is the multiset of objects contained into an output membrane
or emitted from the skin of the system.
In what follows we assume the reader is already familiar with the basic
notions and the terminology underlying P systems. For a systematic introduction, we refer the reader to [15]. The latest information about P systems
can be found in [18].
Energy–based P systems have been defined in [16] as P systems in which
the amount of energy manipulated and/or consumed during computations
is taken into account. A given amount of energy is associated to each object of the system. Moreover, instances of a special symbol e are used to
denote free energy units occurring into the regions of the system. These
energy units can be used to transform objects, using appropriate rules. The
rules are defined according to conservativeness considerations. An object
can always be transformed into another object having the same energy. On
the other hand, if the transformed object has a different energy then the
required (resp., exceeding) free energy units are taken from (resp., released
to) the region where the rule is applied. We assume that the application of
rules consumes no energy. This means, in particular, that objects can be
moved (without altering them) between the regions of the system without
energy consumption. A special case of energy–based P systems are conservative P systems, where the amount of energy entering the system with the
input values is completely returned with the output values at the end of the
computation.
Formally, an energy–based P system (of degree m ≥ 1) is a construct
Π = (A, ε, µ, e, w1 , . . . , wm , R1 , . . . , Rm , iin , iout )
where:
• A is an alphabet; its elements are called objects;
• ε : A → N is a linear mapping that associates to each object a ∈ A
the value ε(a) (also denoted by εa ), which can be thought of as the
“energy value of a”. If ε(a) = ℓ, we also say that object a embeds
ℓ units of energy. Precisely, if A = {a1 , a2 , . . . , ad } then for all i ∈
{1, 2, . . . , d} it holds ε(ai ) = ε(a1 ) + (i − 1)δ for an appropriate integer
value δ > 0. Hence, the energy values considered in the system are
equispaced by the quantity δ. By adding “dummy” symbols into the
alphabet (that is, symbols which never appear in the system during the
computations), we can always assume δ = 1 without loss of generality;
2
• µ is a hierarchical membrane structure consisting of m membranes. For
the sake of clarity, we will label membranes with mnemonic identifiers
which recall their function;
• e 6∈ A is a special symbol that denotes one free energy unit, that is,
one unit of energy which is not embedded into any object;
• wi , for all i ∈ {1, . . . , m}, specify the multiset (over A ∪ {e}) of objects
initially present in region i;
• Ri , for all i ∈ {1, . . . , m}, is a finite set of evolution rules over A
associated with region i. Only rules of the following types are allowed:
aek → (b, p) ,
a → (b, p)ek ,
e → (e, p)
where a, b ∈ A, p ∈ {here, in(name), out} and k is a non negative
integer;
• iin is an integer between 1 and m and specifies the input membrane of
Π;
• iout is an integer between 0 and m and specifies the output membrane
of Π. If iout = 0 then the environment is used for the output, that is,
the output value is the multiset of objects (over A) emitted from the
skin.
A special attention is due to the definition of rules. The meaning of
rule aek → (b, p), with a, b ∈ A, p ∈ {here, in(name), out}, and k a positive
integer number, is the following: the object a, in presence of k free energy
units, is allowed to be transformed into object b. If p = here then the
new object b remains in the same region; if p = out then b exits from the
current membrane. Finally, if p = in(name) then b enters into the membrane
labelled with name, which must be a child of the current membrane in the
membrane hierarchy.
The meaning of rule a → (b, p)ek , when k is a positive integer number,
is analogous. The object a is allowed to be transformed into object b by
releasing k units of free energy. As above, the new object b may optionally
move one level up or down into the membrane hierarchy. The k free energy
units can now be used by another rule to produce “more energetic” objects
from “less energetic” ones.
When k = 0 the rule aek → (b, p) is written as a → (a, p), and simply
moves (if p 6= here) the object a upward or downward into the membrane
3
hierarchy, without acquiring nor releasing any free energy unit. Analogously,
rules e → (e, p) simply move (if p 6= here) one unit of free energy upward or
downward into the membrane hierarchy.
A further constraint is that each rule must be “conservative”, in the
sense that the amount of energy occurring on the left side of the rule must
be the same as the amount of energy which occurs on the right side.
With a little abuse of notation, when the pair (x, p), with x ∈ A ∪ {e}
and p ∈ {here, in(name), out}, appears into a rule we will write xp . Also, if
p = in(name) and no confusion arises we will usually write just the name of
the membrane. Moreover, instead of writing ek we will sometimes explicitly
write k instances of e. It is also understood that the position of ek (that
is, on the left or on the right of the symbol from A) either into the left or
into the right side of a rule is uninfluent. Finally, when the position p of an
object which occurs in the right side of a rule is “here” we will omit to write
it.
A configuration of Π is the tuple (M1 , . . . , Mm ) of multisets (over A∪{e})
of objects contained in each region of the system. (w1 , . . . , wm ) is called the
′ )
initial configuration. For two configurations (M1 , . . . , Mm ), (M1′ , . . . , Mm
′ ) to denote a transition from
of Π we write (M1 , . . . , Mm ) ⇒ (M1′ , . . . , Mm
′
′
(M1 , . . . , Mm ) to (M1 , . . . , Mm ). The reflexive and transitive closure of ⇒
is denoted by ⇒∗ . A final configuration is a configuration where no rule can
be applied.
A computation is a sequence of transitions between configurations of Π,
starting from the initial configuration. A computation is successful if and
only if it reaches a final configuration or, in other words, it halts. It is understood that the multiset (over A, that is, not considering free energy units) of
objects which occur in wiin are the input values for the computation. Analogously, the multiset (over A) of objects occurring in the output membrane
(or emitted from the skin if iout = 0) in the final configuration is the output
of the computation. A non–halting computation produces no output.
Since energy is an additive quantity, it is natural to define the energy
of a multiset as the sum of the amounts of energy associated to each instance of the objects which occur into the multiset. Analogously, the energy
of a configuration is the sum of the amounts of energy associated to each
multiset which occurs into the configuration. A conservative computation
is a computation where each configuration has the same amount of energy.
A conservative energy–based P system is an energy–based P system that
performs only conservative computations.
Energy–based P systems are by no means the first model of P systems
which involve energy. We recall in particular [1, 8, 17, 9]. In [12] it is shown
4
that energy–based P systems are able to simulate the Fredkin gate. By allowing different objects of the alphabet to embed the same amount of energy,
in [13] the simulation is extended to reversible Fredkin circuits. Moreover
it is shown that the simulating P systems can be made self–reversible (that
is, able to perform both “forward” and “backward” computations) and conservative. This result shows that (non–uniform families of) energy–based P
systems are able to perform universal computations.
2
Quantum versions of energy–based P systems
In this section we propose two quantum versions of energy–based P systems. From now on, quantum energy–based P systems will simply be called
quantum P systems for short. Both versions are defined just like classical
energy–based P systems, but for objects and rules. The objects are represented as pure states in the Hilbert space Cd , whereas the definition of rules
differs between the two models. In the former, rules are defined as bijective
functions — implemented as unitary operators — which transform the objects from the alphabet. In the latter, rules are defined as generic functions
which map the alphabet into itself. Such functions are implemented using
a generalization of the Conditional Quantum Control technique, and may
yield to non–unitary operators.
Before delving into the details of quantum P systems, let us recall some
basic notions of quantum computing. From an abstract point of view a
quantum computer can be considered as made up of interacting parts. The
elementary units (memory cells) that compose these parts are two–levels
quantum systems called qubits. A qubit is typically implemented using the
energy levels of a two–levels atom, or the two spin states of a spin– 12 atomic
nucleus, or a polarization photon. The mathematical description — independent of the practical realization — of a single qubit is based on the
two–dimensional complex Hilbert space C2 . The Boolean truth values 0
and 1 are represented in this framework by the unit vectors of the canonical
orthonormal basis, called the computational basis of C2 :
1
0
|0i =
|1i =
0
1
Qubits are thus the quantum extension of the classical notion of bit, but
whereas bits can only take two different values, 0 and 1, qubits are not
confined to their two basis (also pure) states, |0i and |1i, but can also exist
in states which are coherent superpositions such as ψ = c0 |0i + c1 |1i, where
5
c0 and c1 are complex numbers satisfying the condition |c0 |2 + |c1 |2 = 1. A
qubit in this state is not simply in state |0i or |1i, nor is it in an intermediate
state; rather the qubit is in both states simultaneously and a mere act of
measurement alters this state. Indeed, performing a measurement on a
qubit in the above superposition will return 0 with probability |c0 |2 and 1
with probability |c1 |2 ; the state of the qubit after the measurement (post–
measurement state) will be |0i or |1i, depending on the outcome.
Let us stress that in axiomatic quantum mechanics a pure state is described by a one–dimensional subspace of the involved Hilbert space, whose
vectors are representatives of this state. Thus, two unit vectors |ψi and
|ϕi describe (belong to) the same state if and only if they differ of a phase
factor, that is, if and only if there exists a real value ϑ ∈ [0, 2π) such that
|ψi = eiϑ |ϕi.
A quantum register of size n (also called an n–register ) is mathematically
2
described by the Hilbert space ⊗n C2 = C
. . ⊗ C2}, representing a set of
| ⊗ .{z
n times
n qubits labelled by the index i ∈ {1, . . . , n}. An n–configuration (also
pattern) is a vector |x1 i ⊗ . . . ⊗ |xn i ∈ ⊗n C2 , usually written as |x1 , . . . , xn i,
considered as a quantum realization of the Boolean tuple (x1 , . . . , xn ). Let us
recall that the dimension of ⊗n C2 is 2n and that {|x1 , . . . , xn i : xi ∈ {0, 1}}
is an orthonormal basis of this space called the n–register computational
basis.
Unlike the situation of the classical wired computer, where voltages of a
wire go over voltages of another, in quantum computers something different
happens. Each qubit of a given n–register is prepared in some particular pure
state (|0i or |1i) in order to realize the required n–configuration |x1 , . . . , xn i,
quantum realization of an input Boolean tuple of length n. Then, a linear
operator G : ⊗n C2 → ⊗n C2 is applied to the n–register. The application
of G has the effect of transforming the n–configuration |x1 , . . . , xn i into
a new n–configuration G(|x1 , . . . , xn i) = |y1 , . . . , yn i, which is the quantum
realization of the output tuple of the computer. In other words, G transforms
the vectors of the n–register computational basis into vectors of the same
basis. Let us stress that in particular such operator G changes the state
|xi i (with xi ∈ {0, 1}) of each qubit of the register into a new state |yi i
(with yi ∈ {0, 1}) of the same qubit, and we interpret such modifications as
a computation step performed by the quantum
P i1computer.
The action of the operator G on Φ =
c ...in |xi1 , . . . , xin i, expressed
as a linear combination
P of the elements of the n–register basis, is obtained
by linearity: G(Φ) = ci1 ...in G(|xi1 , . . . , xin i). We recall that linear operators which act on n–registers can be represented as order 2n square matrices
6
of complex entries. Usually such operators, as well as the corresponding
matrices, are required to be unitary. In particular, this implies that the
implemented operations are logically reversible (an operation is logically reversible if its inputs can always be deduced from its outputs).
All these notions can be easily extended to quantum systems which have
d > 2 pure states. In this setting, the d–valued versions of qubits are
usually called qudits [10]. As it happens with qubits, a qudit is typically
implemented using the energy levels of an atom or a nuclear spin. The
mathematical description — independent of the practical realization — of a
single qudit is based on the d–dimensional
Hilbert
space Cd . In par
E E complex
E
2
1
, d−1
, . . . , d−2
ticular, the pure states |0i , d−1
d−1 , |1i are represented by
the unit vectors of the canonical orthonormal basis, called the computational
basis of Cd :
 
 
 
 
1
0
0
0
0






1
0
 
 
 
0
1
d − 2
 .. 






.
.
.
|0i =  .  , =  ..  , · · · , =  ..  , |1i =  .. 
 
 
 
 
d−1
d−1
0
0
1 
0
0
0
0
1
As before, a quantum register of size n can be defined as a collection
of n qudits. It is mathematically described by the Hilbert space ⊗n Cd =
d
C
. . ⊗ Cd}. An n–configuration is now a vector |x1 i ⊗ . . . ⊗ |xn i ∈ ⊗n Cd ,
| ⊗ .{z
n times
n
1
2
simply written as |x1 , . . . , xn i, for xi running on Ld = 0, d−1
, d−1
, . . . , d−2
d−1 ,
o
1 . An n–configuration can be viewed as the quantum realization of the
“classical” tuple (x1 , . . . , xn ) ∈ Lnd . The dimension of ⊗n Cd is dn and the
set {|x1 , . . . , xn i : xi ∈ Ld } of all n–configurations is an orthonormal basis
of this space, called the n–register computational basis. Notice that the
set Ld can also be interpreted as a set of truth values, where 0 denotes
falsity, 1 denotes truth and the other elements indicate different degrees of
indefiniteness.
In our definition of quantum P systems, all the elements of the model
(multisets, the membrane hierarchy, input and output membrane, configurations, computations, and so on) are defined just like the corresponding
elements of a classical energy–based P system, but for objects and rules. The
objects are represented by the pure states of a quantum system. Hence, if
the alphabet
then without
loss of generality we can
n contains
E d ≥ 2Eelements,
E
o
1
2
d−2
put A = |0i , d−1 , d−1 , . . . , d−1 , |1i , that is, A = {|ai : a ∈ Ld }.
7
In a possible physical realization, we can think of a quantum system which
is able to assume the above pure states. As stated above, such system will
also be able to assume as a state any superposition of the kind:
1
d − 2
c0 |0i + c 1 + . . . + c d−2 + c1 |1i
d−1 d − 1
d−1 d − 1
Pd−1 c i 2 = 1. A multiset is
with c0 , c 1 , . . . , c d−2 , c1 ∈ C such that i=0
d−1
d−1
d−1
simply a collection of quantum systems, each in its own state. In the most
general setting, two or more quantum systems may become entangled, either
because they are prepared in this way as input values for a computation, or
because they are the result of the application of an operator on them. When
two or more quantum systems are entangled, the state of each single system
is tied to the state of the other systems. So, if we perform a measurement on
a single system of an entangled pair, such operation will affect also the state
of the other system. Formally, two or more quantum systems are entangled
if their global state cannot be factorized as the tensor product of the states of
the single systems. For example, √12 (|10i − |01i) is an entangled quantum
state of the Hilbert space C2 ⊗ C2 .
Now let us turn to rules. As stated above, in this paper we propose two
versions of quantum P systems. In the first version, rules are simply defined
as unitary operators which transform the state of their input qudits. This is
analogous to what happens with reversible logic gates, which act according
to their truth table. If a rule acts on n quantum systems, we say that it
computes an (n, d)–function, that is, a function f : An → An . Notice that,
since rules are defined by unitary operators, they are logically reversible.
This means that f is a permutation on the set An . As an example let us assume d = 3, so that A = |0i , 12 , |1i . If we
want to write the unitary operator which realizes the function f : A → A
such that:
1
1
f (|0i) = ,
f = |0i ,
f (|1i) = |1i
2
2
we can operate as follows. The unitary matrix is an order dn = 31 = 3 square
matrix having complex entries. Each row and each column is associated with
an element of An (in this case, A). If f (|x1 , . . . , xn i) = |y1 , . . . , yn i, then the
element of the matrix whose row and column is associated with |x1 , . . . , xn i
and |y1 , . . . , yn i respectively, is put to 1. All the other elements in the same
row are put to 0. Since f is bijective, also all the other elements in the
8
same column are put to 0. Continuing with the example, the unitary matrix
which corresponds to the function f : A → A described above is:


0 1 0
Uf = 1 0 0
0 0 1
Of course there exist also genuine quantum functions, i.e., functions that
have no classical counterpart and are thus characterized by the fact that
some input pure states (tensor product of vectors of the computational basis
of Cd ) are transformed into non–trivial superpositions
of pure states. An
√
example of an operation of this kind is the Not function, acting on the
states of a single qubit, that can be thought of as the realization of a 1–
register. Another genuine quantum gate is the Hadamard gate, also acting
on quantum registers of size 1. Formally, the map H : C2 → C2 is described
by the following order 2 unitary matrix:
1 1
1
H := √
2 1 −1
and the corresponding action on qubits is given by:
(
H |0i = √12 |0i + √12 |1i
H |1i =
√1
2
|0i −
√1
2
|1i
Our second proposal for quantum P systems is more complicated, but is
in some sense closer to physics laws. Objects are defined as in the first proposal, whereas the definition of rules is directly inspired from energy–based P
systems. However, as we will see, differently from a classical energy–based P
system, in a quantum P system free energy units are not just symbols which
move into the system and cooperate with objects when the rules are applied.
In quantum P systems, free energy units are true quanta of energy (for example, photons) which are necessary to transform a “low” energy state of
a system to a higher energy state. On the other hand, when a quantum
system decays to a lower energy state, it is understood that the difference
of energy between the two states is released in the form of energy quanta
(e.g., photons).
n
In order to become more formal, let us consider the set Ed = ε0 , ε 1 ,
d−1
o
ε 2 , . . . , ε d−2 , ε1 ⊆ R of real values; we can think to such quantities as
d−1
d−1
energy values. To each element v ∈ Ld (and hence to each object |vi ∈ A)
9
we associate the energy level εv ; moreover, let us assume that the values of
Ed are all positive, equispaced, and ordered according to the corresponding
objects: 0 < ε0 < ε 1 < · · · < ε d−2 < ε1 . If we denote by ∆ε the gap
d−1
d−1
between two adjacent energy levels then the following linear relation holds:
εv = ε0 + ∆ε (d − 1) v
∀ v ∈ Ld
(1)
Notice that it is not required that ε0 = ∆ε.
If x = |x1 , . . . , xn i ∈ An is an n–configuration,
we define the amount of
Pn
energy associated to x as En (x) = i=1 εxi , where εxi ∈ Ed is the amount
of energy associated to the i–th element |xi i of the configuration. Let us
remark that the map En : Lnd → R+ is indeed a family of mappings parameterized by n, the size of the input. We say that a rule is conservative
if, for any input configuration x = |x1 , . . . , xn i ∈ An , the corresponding
output configuration y = |y1 , . . . , ym i ∈ Am is such that En (x) = Em (y).
Rules are again defined as (n, d)–functions, that is, functions of the kind
f : An → An . The difference with respect to the first proposal is that such
functions are not necessarily bijections on An : they can be arbitrary mappings. This means that the linear operators which realize such functions
are not necessarily unitary. Hence, we need a method to build and describe
them.
In this paper we present a quantum realization of rules using an extension of the Conditional Quantum Control technique introduced in [2]. The
technique is used to write quantum operators which describe the behavior
of classical rules. Such operators are sums of “local” operators, each of
which is a tensor product of suitable compositions of the operators a† and
a, which are the finite dimensional versions of creation and annihilation operators usually found in quantum mechanics. An equivalent formulation is
also given, using spin–rising (J+ ) and spin–lowering (J− ) operators.
In the following sections we interpret the d energy levels of a quantum
system by the truncated quantum harmonic oscillator. Moreover, we introduce the creation and annihilation operators on Cd , and we show how they
can be used to transform the state of a single quantum system, as required
by the rules which occur in energy–based P systems. An alternative description is also given, using spin–rising and spin–lowering operators. Finally, we
show how the linear operators which correspond to rules can be built, using
both a “brute force” approach and an extension of the Conditional Quantum
Control.
10
3
3.1
A mathematical model for quantum rules
The d–levels single system Hamiltonian
In describing a computation device it is important, from the point of view
of quantum mechanics, to give the Hamiltonian operator for the physical
system that constitutes the computing machinery. As it is well known,
the Hamiltonian operator describes the energy of the quantum system and
allows one to derive its time evolution.
The quantum realization of d–valued one–input/one–output rules can be
done by considering single quantum systems whose Hamiltonian on Cd is:


ε0
0
...
0
 0 ε0 + ∆ε . . .

0


H=.
(2)

.
.
..
..
..
 ..

.
0
0
. . . ε0 + (d − 1)∆ε
The energy eigenvalues εk = ε0 + k∆ε of H, starting from the ground
energy state ε0 and equispaced by the quantum of energy ∆ε, are the ones
of the infinite dimensional quantum harmonic oscillator truncated at the
(d − 1)-th excited level (see Figure 1).
ε0 + n ∆ ε
ε0 + 3 ∆ ε
ε0 + 2 ∆ ε
∆ε
ε0 + 2 ∆ ε
ε0 + ∆ ε
∆ε
ε0
ε0 + ∆ ε
ε0
0
0
Figure 1: Energy levels of the infinite dimensional (on the left) and of the
truncated (on the right) quantum harmonic oscillator
E
k
The unit vector |H = εk i = d−1
, for k ∈ {0, 1, . . . , d − 1}, is the
eigenvector of the state of energy ε0 + k∆ε. The spectral resolution of
11
the above truncated harmonic oscillator Hamiltonian (2) is:
H=
d−1
X
(ε0 + k∆ε)Pεk
k=0
where each orthogonal projection Pεk = P k is the quantum realization of
d−1
the sharp event “a measure of the system energy yields the value ε0 + k∆ε”.
We can now introduce the creation and annihilation operators on the
d–dimensional Hilbert spaces Cd . Formally, creation and annihilation operators on the Hilbert space Cd are respectively defined as:




0 0 ···
0
0
0 1 √0 · · ·
0
1 0 · · ·
0 0
0
0
2 ···
0 
 √





..
.. 
..
2 ···
0
0
a† = 0
a =  ... ...


.
.
 ..

√ . 
..
..
.. 
.
.
.
0 0 0 · · ·
.
.
.
d − 1
√ .
0 0 ···
d−1 0
0 0 0 ···
0
The operators a† and a are non–Hermitian, adjoints of each other, and satisfy
the following commutation and anticommutation relations, respectively:




1 0 ··· 0
0
1 0 ···
0
0
0 1 · · · 0
0 3 · · ·
0 
0
0 





 .. ..
.. . .
.. 
..
.. 
†
..
[a, a† ] =  ... ...
[a,
a
]
=


+
.
.
.
. 
.
. 

. .

0 0 · · · 1
0 0 · · · d − 3
0 
0 
0 0 ··· 0 1 − d
0 0 ···
0
d−1
Thus, if one excludes the case d = 2 where the boson anticommutation
rule is satisfied, neither the fermion commutation rule [a, a† ] = Id nor the
anticummutation rule [a, a† ]+ = Id of the infinite dimensional case hold.
From these formulas it follows that the action of a† on the vectors of the
canonical orthonormal basis of Cd is the following:
√
k + 1
† k
a = k + 1
for k ∈ {0, 1, . . . , d − 2}
d−1
d−1
a† |1i = 0
whereas the action of a is:
√ k − 1
k
a
= k
d−1
d−1
a |0i = 0
for k ∈ {1, 2, . . . , d − 1}
12
Using a† and a we can introduce the following operators:



0 0 0 ···
0
1 0 ···
0
0 1 0 · · ·


0 
0

0 2 · · ·
0 0 2 · · ·

 .. .. . .
..
†
†
0
N =a a=
aa =  . .

.
.
 .. .. .. . .

.. 
. . .
0 0 · · · d − 1
.
. 
0 0 0 ··· d − 1
0 0 ···
0

0
0

.. 
.

0
0
The eigenvalues of the self–adjoint operator N are 0, 1, 2, . . . , d − 1, and
the
E
k
eigenvector corresponding to the generic eigenvalue k is |N = ki = d−1
.
This corresponds to the notation adopted in [10], where the qudit base states
are denoted by |0i , |1i , . . . , |d − 1i, and it is assumed that a qudit can be in
a superposition of the d base states:
c0 |0i + c1 |1i + . . . + cd−1 |d − 1i
with ci ∈ C for i ∈ {0, 1, . . . , d − 1}, and |c0 |2 + |c1 |2 + . . . + |cd−1 |2 = 1.
One possible physical interpretation of N is that it describes the number
of particles of physical systems consisting of a maximum number of d − 1
particles. In order to add a particle to the k particles state |N = ki (thus
making it switch to the “next” state |N = k + 1i) we apply the creation operator a† , while to remove a particle from this system (thus making it switch
to the “previous” state |N = k − 1i) we apply the annihilation operator a.
Since the maximum number of particles that can be simultaneously in the
system is d − 1, the application of the creation operator to a full d − 1 particles system does not have any effect on the system, and returns as a result
the null vector. Analogously, the application of the annihilation operator
to an empty particle system does not affect the system and returns the null
vector as a result.
Another physical interpretation of operators a† and a, by operator N ,
follows from the possibility of expressing the Hamiltonian (2) as follows:
H = ε0 Id + ∆ε N = ε0 Id + ∆ε a† a
In this case a† (resp., a) realizes the transition from the eigenstate of energy
εk = ε0 + k ∆ε to the “next” (resp., “previous”) eigenstate of energy εk+1 =
ε0 + (k + 1) ∆ε (resp., εk−1 = ε0 + (k − 1) ∆ε) for any 0 ≤ k < d − 1 (resp.,
0 < k ≤ d − 1), while it collapses the last excited (resp., ground) state of
energy ε0 + (d − 1) ∆ε (resp., ε0 ) to the null vector.
The collection of all linear operators on Cd is a d2 –dimensional linear
space whose canonical basis is:
{Ex,y = |yi hx| : x, y ∈ Ld }
13
Since Ex,y |xi = |yi and Ex,y |zi = 0 for every z ∈ Ld such that z 6= x, this
operator transforms the unit vector |xi into the unit vector |yi, collapsing
all the other vectors of the canonical orthonormal basis of Cd into the null
vector. For i, j ∈ {0, 1, . . . , d − 1}, the operator E i , j can be represented
d−1 d−1
as an order d square matrix having 1 in position (j + 1, i + 1) and 0 in every
other position:
E i , j = (δr,j+1 δi+1,s )r,s=1,2,...,d
d−1 d−1
Each of the operators Ex,y can be expressed, using the whole algebraic
structure of the associative algebra of operators, as a suitable composition
of creation and annihilation operators.
We can use the whole algebraic structure (in particular, the composition
operation) of the associative algebra of operators to express any such operator (i.e., any order d complex matrix) as a linear combination of suitable
compositions of creations and annihilations. Precisely, if we denote by Ap,q,r
u,v
the expression
v| ·{z
· · v} v| ∗ ·{z
· · v ∗} v| ·{z
· · v} u
(3)
r
q
p
where u, v ∈ {a† , a}, v ∗ is the adjoint of v, and p, q, r are non negative integer
values, then for any i, j ∈ {0, 1, . . . , d − 1} we can express the operator
E i , j in terms of creation and annihilation as follows:
d−1 d−1
E
i
, j
d−1 d−1
=
 √
j!

Aad−2,d−1−j,0
† ,a†

(d−1)!

√


d−1,d−1−j,0
j!

Aa,a†

(d−1)!

√


i!

√ Ad−2−i,d−1,j


(d−1)! j! a† ,a†


if i = 0
if i = 1 and j ≥ 1
√
j!√
Ai−1,d−1,d−1−j


(d−1)! i! a,a





1

√

Aad−1,j,0
† ,a


(d−1)!j!(d−1)


d−2,j,0

√ 1
Aa,a
(d−1)!j!
3.2
if (i = 1, j = 0 and d ≥ 3) or
(1 < i < d − 2 and j ≤ i)
if (i = d − 2, j = d − 1 and d ≥ 3)
or (1 < i < d − 2 and j > i)
if i = d − 2 and j ≤ d − 2
if i = d − 1
The angular momentum interpretation of qudits
As it is well known, for a fixed integer d ≥ 2 the angular momentum based
on the Hilbert space Cd consists of the triple of self–adjoint operators J =
(Jx , Jy , Jz ). Moreover, for j = d−1
2 , the real value j(j + 1) is an eigenvalue
of the operator J2 = Jx2 + Jy2 + Jz2 . The matrix representation of the z
14
component of this angular momentum with respect to the orthonormal basis
of its eigenvectors is:
 d−1

0 ... 0
0
2
d−3
 0
... 0
0 
2



..
..
.. 
..
Jz =  ...
.
.
.
. 


3−d
 0
0 ...
0 
0
2
0
1−d
2
0
...
Thus, the z component of the angular momentum can assume d possible
eigenvalues:
d − (2k + 1)
for k ∈ {0, 1, . . . , d − 1}
2
with corresponding eigenvectors:
Jz = d − (2k + 1) = k
d − 1
2
m=
(4)
Let us consider the two operators J+ and J− on the Hilbert space Cd
which are obtained from the general angular momentum operators as:
J+ = Jx + iJy
J− = Jx − iJy
The operators J+ and J− are non–Hermitian, adjoints of each other, and
satisfy the canonical commutation relation [J+ , J− ] = 2Jz . In matrix form
they can be expressed as follows:
 √

0
d−1 p 0
···
0
0
0
2(d − 2) · · ·
0
0 
0


 ..
..
..
..
.. 
..
.
.
.
.
. 
J+ = 

p .
0
0
0
···
2(d − 2) √ 0 


0
0
0
···
0
d − 1
0
0
0
···
0
0
and

0
√ 0
 d−1
0

p
 0
2(d − 2)

J− =  .
..
 ..
.

 0
0
0
0
···
···
···
..
.
···
···
15
p
0
0
0
..
.
0
0
0
..
.

0
0

0

.. 
.

0
2(d − 2) √ 0
0
d−1 0
That is, for r, s ∈ {1, 2, . . . , d}, the element in position (r, s) of matrices J+
and J− is, respectively:
p
(J+ )r,s = r(d − r)δr,s−1
p
(J− )r,s = s(d − s)δr,s+1
As it is well known, the action of operators J+ and J− on the vectors of
the orthonormal basis of Cd formed by the eigenvectors of Jz is the following:
p
J+ |Jz = mi = j(j + 1) − m(m + 1) |Jz = m + 1i for m = −j, . . . , j
and
J− |Jz = mi =
p
j(j + 1) − m(m − 1) |Jz = m − 1i for m = −j, . . . , j
Thus, we can interpret these operators as follows: the application of J+ has
the effect of changing the z component of the angular momentum to the
next value. If applied to a system which has already a maximum value of
Jz , J+ leaves the system unchanged and returns as a result the null vector.
Analogously, the application of J− has the effect of switching the system to
the previous value of the z component of the angular momentum. If applied
to a system which has already a minimum value of Jz , J− does not affect
the system and returns as a result the null vector. Usually, J+ and J− are
called the spin–rising and the spin–lowering operators, respectively.
The actions of J+ and J− on the vectors of the qudit orthonormal basis
are the following:
p
k − 1
k
J+ = k(d − k) for k ∈ {1, 2 . . . , d − 1}
d−1
d−1
J+ |0i = 0
and
p
k
k + 1
J− = (k + 1)(d − (k + 1)) d−1
d−1
for k ∈ {0, 1, . . . , d − 2}
J− |1i = 0
In particular, let us note that J+ switches a qudit to the previous element
in Ld , whereas J− switches it to the next element. The effect of operator
J+ is depicted on the left side of Figure 2 for a spin–1 system on the Hilbert
space C3 . On the right side of the same figure the annihilation action of
16
the same operator on a three–levels system is given for comparison with
the previous behavior. A similar figure with respect to J− can be drawn
showing its spin–1 annihilation action with respect to the eigenstate creation
behavior.
| +1 >
J+
|1>
J+
J+
| 1/2 >
J+
|0>
0
|0>
J+
0
J+
| −1 >
Figure 2: The effect of the spin–rising operator on a spin–1 system and the
corresponding annihilation on three–level eigenstates
Let us note also that in the Boolean case (that is, when d = 2) it holds:
0 0
0 1
†
and
a = J+ =
a = J− =
1 0
0 0
Therefore it holds also N = J− J+ and N ′ = J+ J− , whereas in general, for
d > 2, such equalities do not hold.
We conclude this section by presenting the expressions that allow one to
obtain the operators E i , j in terms of spin–rising and spin–lowering. Let
d−1 d−1
us consider the formal expression (3) applied to u, v ∈ {J+ , J− }; moreover,
let:
s p
Y
k(d − k)
cr,s =
k=r
d−1
Y
k=1
k(d − k)
where s, r are two non negative integers. Then, for i, j ∈ {0, 1, . . . , d − 1} it
17
holds:
E
i
, j
d−1 d−1
=


c1,j AJd−2,d−1−j,0

− ,J−


d−1,d−1−j,0


c2,j AJ+ ,J−





d−2−i,d−1,j

cj+1,i AJ− ,J−


ci+1,j Ai−1,d−1,d−1−j


J+ ,J+





c2,d−1−j AJd−1,j,0

− ,J+


c
Ad−2,j,0
1,d−1−j
4
J+ ,J+
if i = 0
if i = 1 and j ≥ 1
if (i = 1, j = 0 and d ≥ 3) or
(1 < i < d − 2 and j ≤ i)
if (i = d − 2, j = d − 1 and d ≥ 3) or
(1 < i < d − 2 and j > i)
if i = d − 2 and j ≤ d − 2
if i = d − 1
Quantum realization of rules
Now that we have a mathematical model to interpret objects as vectors of
the Hilbert space Cd , and the quantum version of rules as linear operators
G : ⊗n Cd → ⊗n Cd which implement (n, d)–functions, let us address the
following problem.
Problem 1 Given the truth table of an (n, d)–function f : Lnd → Lnd , describe the linear operator Gf : ⊗n Cd → ⊗n Cd that provides a quantum realization of the rule as a formula containing only the linear operators Id2 , a† , a
and the algebraic operations +, −, ◦, ⊗.
If the (n, d)–function f is reversible then we already know how to build
the corresponding (unitary) operator Gf . With the techniques we will introduce, it is also immediate to write a formula which describes Gf . However, we are interested to give a quantum description of all possible (n, d)–
functions and thus, as we will see in the following, generally the operators
we will obtain are not necessarily unitary.
In the next sections we expose two methods that can be used to build
any (n, d)–function: the so called “brute force” method, and an extension of
the Conditional Quantum Control method, originally proposed by Barenco,
Deutsch, Ekert and Jozsa in [2].
4.1
The “brute force” method
We can write the global operator Gf as a sum of so called local operators, by
a “brute force” procedure, where each local operator corresponds to a single
row of the table which describes the (n, d)–function. Precisely, in order to
18
translate the generic table row:
(x1 , x2 , . . . , xn ) 7→ (y1 , y2 , . . . , yn )
meaning that the input n–tuple (x1 , x2 , . . . , xn ) is transformed by the function into the output n–tuple (y1 , y2 , . . . , yn ), we build the “local” operator:
Ex1 ,y1 ⊗ Ex2 ,y2 ⊗ · · · ⊗ Exn ,yn
where Ex,y := |yi hx|, with x, y ∈ Ld , is the operator that transforms the
single qudit vector |xi into the vector |yi, and returns the null vector if it is
applied to any other vector of the computational basis of Cd .
Hence, the operator Ex1 ,y1 ⊗Ex2 ,y2 ⊗· · ·⊗Exn ,yn transforms the input vector |x1 , x2 , . . . , xn i ∈ ⊗n Cd into the output vector |y1 , y2 , . . . , yn i ∈ ⊗n Cd ,
whereas it collapses all the other input vectors of the n–register computational basis to the null vector.
Since each operator Ex,y can be expressed as an appropriate composition
of creation and annihilation (resp., spin–rising and spin–lowering) operators,
we can conclude that every local operator is a tensor product of suitable compositions of creation and annihilation (resp., spin–rising and spin–lowering)
operators.
4.2
The generalized “Conditional Quantum Control” method
Let us now introduce a method derived from Conditional Quantum Control
[2].
The quantum realization of a “controlled behavior” can benobtained by
1
2
making use of the operators PX = EX,X = |Xi hX|, for X ∈ 0, d−1
, d−1
,
o
. . . , d−2
d−1 , 1 . For simplicity, let us first consider the case of a (2, 2)–function.
For a reason that will be clear in a moment, we call control qubit and target
qubit the first and the second input, respectively. If we want to realize a
linear operator performing the condition: “if the control qubit is |1i then the
operator O1 is applied to the target qubit (and the control qubit is left unchanged)”, then we can build the operator N ⊗ O1 , where N = E1,1 = |1i h1|
checks for the condition “the control qubit is |1i” and O1 is the operator
which acts on the target qubit |x2 i. Note that if the control qubit is |0i then
the operator N ⊗ O1 produces the null vector of C2 ⊗ C2 . Similarly, N ′ ⊗ O0 ,
with N ′ = E0,0 = |0i h0| realizes the condition “if the control qubit is |0i
then the operator O0 is applied to the target qubit |x2 i (and the control
qubit is left unchanged)”.
19
Notice that the method we are using here is a generalization of the Conditional Quantum Control method introduced in [2]. In fact recall that in
Conditional Control (n, 2)–functions, 2k functions δ0 , . . . , δ2k −1 are stored
in the memory of the control unit, the function δa being bijectively associated to the control input configuration labelled by the integer number
a ∈ {0, . . . , 2k − 1} (see Figure 3). In [2] these functions are described
through unitary operators U0 , U1 , . . . , U2k −1 , defined on the Hilbert space
⊗n−k C2 ; here we drop the requirement that such operators, as well as the
global operator defined on ⊗n C2 , be unitary. Moreover, in the following we
apply this method to realize d–valued operators.
Control Unit
x1
U0
Uj
U2 k −1
xk
y1
yk
Uj
x
k +1
y
Operating Unit
xn
k +1
yn
(n,2)−function
Figure 3: Conditional Quantum Control: the function is divided into a
control unit and an operating unit. The input values of the control unit select
a prescribed operator to be applied to the input values of the operating unit
Thus, when a configuration |x1 , . . . , xk i is fed to the control unit of a
Conditional Control function two things happen:
1. the control configuration |x1 , . . . , xk i is returned unchanged into the
output values of the control unit, and
2. the (non necessarily unitary) operator Ua bijectively associated to the
control configuration is selected and applied to the input configuration
|xk+1 , . . . , xn i of the operating unit, producing the output configuration Ua |xk+1 , . . . , xn i.
The global operator on [⊗k C2 ] ⊗ [⊗n−k C2 ] which describes the behavior of
20
the function can thus be written as:
P0 ⊗ U0 + P1 ⊗ U1 + . . . + P2k −1 ⊗ U2k −1
(5)
where Pa = Ea,a = |ai ha| is the orthogonal projection of the Hilbert space
⊗k C2 which selects the a-th control configuration and collapses to the null
vector all the other control configurations, and Ua is the corresponding operator on ⊗n−k C2 which has to be applied to the target configuration. Making
use of Dirac notation, expression (5) can be equivalently written as (see [2]):
|0i h0| ⊗ U0 + |1i h1| ⊗ U1 + . . . + |2k − 1ih2k − 1| ⊗ U2k −1
(6)
A further extension of the Conditional Quantum Control method to
the d–valued case is immediate. If the (n, d)–function under consideration can be divided as a k–input/k–output control unit and an (n − k)–
input/(n − k)–output target (also operating) unit, then any input configuration |x1 , . . . , xk , xk+1 , . . . , xn i can be splitted into a control configuration
|x1 , . . . , xk i and a target configuration |xk+1 , . . . , xn i. The control configuration is returned unchanged on the k output values of the control unit;
as a side effect, it selects one of the dk (non necessarily unitary) operators U0 , U1 , . . . , Udk −1 , defined on the Hilbert space ⊗n−k Cd , stored into the
control unit. The selected operator is applied to the target configuration in
order to produce the output values of the target unit. The global operator
that describes the behavior of the (n, d)–function has now the form:
P0 ⊗ U0 + P1 ⊗ U1 + . . . + Pdk −1 ⊗ Udk −1 =
k −1
dX
X=0
PX ⊗ UX
where PX = EX,X = |Xi hX| is the orthogonal projection of the Hilbert
space ⊗k Cd which selects the X-th control configuration, and collapses to
the null vector all the other configurations. If many of the operators Ui are
identical then this expression is much shorter than the one obtained with the
brute force method. On the other hand, it is clear that the method derived
from Conditional Quantum Control cannot be used to describe every conceivable (n, d)–function, since there are functions which cannot be divided
into a control unit and an operating unit.
5
Some problems and directions for future work
In this section we address some problems we have encountered while trying
to define quantum P systems. Since this is a work in progress, still in its
21
early stage, we would like to share these problems with the community. We
hope in this way to generate stimulating discussions on appropriate ways to
define quantum P systems.
A first problem which comes to mind when speaking about quantum
systems concerns the localization of objects. How can we be sure that an
object will stay for a long time into a region surrounded by a membrane?
Indeed, one notable feature of quantum systems is the so called “tunnel
effect”, thanks to which in every moment we have a positive probability
that the object spontaneously (i.e., without the application of any rule)
leaves the current region. How should we manage this situation? How can
we control the computation (that is, the behavior of the system) under the
assumption that every object can be anywhere with a non–zero probability?
The above problem is exacerbated by the fact that in classical P systems
the objects can be moved as the effect of the application of a rule. Precisely,
in classical energy–based P systems we can have a rule of the kind:
aek → (b, p)
where p ∈ {here, in(name), out} denotes the position of the new object b.
This means that the rule has to transform the object a into the object b,
using k units of free energy, and move b according to the prescribed position.
In our current definition of quantum energy–based P systems we have only
addressed the transformation
of a into b. The object a will be represented
E
ℓ
d
as a pure state d−1 of C , with ℓ ∈ {0, 1, . . . , d − 1 − k}. Analogously, the
E
ℓ+k
object b will be represented as the pure state d−1
. The presence of k free
E
E
ℓ
ℓ+k
energy units makes the transition from d−1
to d−1
possible. Currently,
E
ℓ+k
the movement of d−1 to the new position p is assumed to occur in the same
way as in classical P systems. However, this would imply the existence of a
“magic” transportation mechanism that, notwithstanding the tunnel effect,
is able to pick up and move a quantum system exactly as desired.
Another problem in the definition of a quantum P system derives from
the fact that the
of k units of free energy enables the transition
presence
E
E
ℓ
ℓ+k
d
from any state d−1 of C , with ℓ ∈ {0, 1, . . . , d − 1 − k}, to the state d−1
.
Indeed, it is tempting to translate the classical rule aek → (b, p) into the
quantum rule:
ℓ
ℓ + k
k
(7)
d − 1 e → d − 1 , p
Now assume that a given region contains two rules of this kind, possibly
22
with different values of ℓ and k. The presence of a big number of free energy
units (at least as many as the maximum of the two values of k) activates
both rules. This occurs even if k = 1 for both rules, and the region contains
one free energy unit. However, in this last case one rule or the other is
correctly applied in a nondeterministic way, as it happens in classical P
systems. When k > 1 for both rules, and the region contains some free
energy units, we must avoid the undesirable situation in which some free
energy units modify the first object and the remaining free energy units
modify the second object. This occurs because when we have written the
quantum rule (7) we have implicitly assumed that the k units of free energy
must act simultaneously.
One possible solution to this problem would be to allow only transitions
which involve just one unit of free energy. However, we should check whether
these systems are computationally equivalent to the more general ones (we
conjecture that the answer is affirmative).
The solution we have adopted in this paper involves the linear operators
Ex,y = |yi hx|, with x, y ∈ Ld . The classical rule aek → (b, p) is translated
as:
ℓ + k ℓ ,p
E ℓ , ℓ+k , p ≡ d−1 d−1
d−1
d − 1
E
E
ℓ
ℓ+k
In this way, the object d−1
can only be transformed into d−1
, and this
transformation requires k units of free energy to be performed.
Another observation concerning the use of quantum rules is the following. In a classical P system, a rule of the kind aek → (b, p) is applied
simultaneously to every occurrence of a in the region, provided that enough
free energy units are present. Clearly, this is a mathematical abstraction.
In a real quantum system, there will be a subsystem — whose behavior is
described by an appropriate linear operator — which is devoted to transform an instance of a into an instance of b, using k units of free energy.
Hence, only one of such transformations at the time is possible. How does
this affect the computational power of quantum P systems? Notice that P
systems were originally inspired by the functioning of living cells, and in
living cells we have the same problem: a prescribed biological mechanism is
devoted to transform one (or a limited number of) instance(s) of a into one
(or the corresponding number of) instance(s) of b. Hence, even in classical
P systems the possibility to simultaneously apply a rule to every instance
of a is a mathematical abstraction.
Concerning the power of quantum P systems we note that, in analogy
with other models of quantum computers, there is the possibility to initial23
ize the system with a multiset of objects whose state is a superposition of
classical (that is, pure) states. As a result, the computation will transform
such input multiset to an output multiset which is obtained by linearity as
a superposition of the results of the computation on every single classical
state. As usual, when we measure the state of the systems which occur into
the output multiset we will obtain a pure state as a result, according to the
probability distribution which is induced by the coefficients of the superposition. Another interesting aspect of quantum P systems is their behavior
when some quantum systems from the input multiset are in an entangled
state.
Of course we advocate the study of the computational power of quantum
P systems, by comparing them both against their classical counterparts and
other quantum computational models. In particular, it would be useful to
define a quantum version of counter machines, since they have proven to be
a useful and powerful tool in the classical setting.
Last, but not the least, we pose the problem to write the linear operator
which describes an entire quantum P system, starting from the linear operators which describe the single rules. Such global operator is important, from
the point of view of Quantum Computing, for the existence of a physical
system that behaves like the prescribed P system. Moreover, such operators
are related with the Hamiltonian of the system, which describes the internal
energy of the system. The difficulty of writing the global operator is due to
the fact that in quantum P systems, at each computation step a maximally
parallel set of rules is nondeterministically chosen and applied. This contrasts the deterministic nature of the application of the global operator to
the global state of the quantum P system. One possible solution, in order
to always select a maximally parallel set of rules, would be to distribute the
free energy contained into each region to the rules of the region, sorted in
increasing order with respect to the required amount of free energy units.
However, this would be equivalent to introducing a priority between the
rules of each region. We ask ourselves whether this is appropriate or not.
We hope that all these problems will generate stimulating discussion on
quantum P systems. In this sense, they can all be considered a starting
point for future work.
6
Conclusions
In this paper we have introduced two quantum versions of energy–based P
systems. Both versions are defined just like classical energy–based P sys-
24
tems, but for objects and rules. Objects are represented as pure states in the
Hilbert space Cd , whereas the definition of rules differs between the two models. In the former, rules are defined as bijective functions — implemented as
unitary operators — which transform the objects from the alphabet. In the
latter, rules are defined as generic functions which map the alphabet into
itself. Such functions are implemented using a generalization of the Conditional Quantum Control technique, and may yield to non–unitary operators.
Finally, we have addressed some problems and outlined some directions for
future work.
Acknowledgments
We gratefully thank Gheorghe Păun, who prompted us to define quantum
P systems.
References
[1] G. Alford. Membrane systems with heat control. In Pre–Proceedings of
the Workshop on Membrane Computing, Curtea de Arges, Romania,
August 2002.
[2] A. Barenco, D. Deutsch, A. Ekert, R. Jozsa. Conditional Quantum
Control and Logic Gates. Physical Review Letters, 74, 1995, pp. 4083–
4086.
[3] P. Benioff. Quantum Mechanical Hamiltonian Models of Discrete
Processes. Journal of Mathematical Physics, 22, 1981, pp. 495–507.
[4] P. Benioff. Quantum Mechanical Hamiltonian Models of Computers.
Annals of the New York Academy of Science, 480, 1986, pp. 475–486.
[5] D. Deutsch. Quantum Theory, the Church–Turing Principle, and the
Universal Quantum Computer. Proceedings of the Royal Society of London, A 400, 1985, pp. 97–117.
[6] R. P. Feynman. Simulating Physics with Computers. International
Journal of Theoretical Physics, 21, No. 6–7, 1982, pp. 467–488.
[7] R. P. Feynman. Quantum Mechanical Computers. Optics News, 11,
1985, pp. 11–20.
25
[8] R. Freund. Energy–Controlled P Systems. In Membrane Computing,
Proceedings of the International Workshop WMC–CdeA 2002, Curtea
de Arges, Romania, August 2002, LNCS 2597, Springer, 2002, pp. 247–
260.
[9] P. Frisco. The conformon–P system: a molecular and cell biology–
inspired computability model. Theoretical Computer Science, 312,
2004, pp. 295–319.
[10] D. Gottesman. Fault–tolerant quantum computation with higher–
dimensional systems. Chaos, Solitons, and Fractals, 10, 1999, pp. 1749–
1758.
[11] J. Gruska. Quantum Computing. McGraw–Hill, 1999.
[12] A. Leporati, C. Zandron, G. Mauri. Simulating the Fredkin Gate with
Energy–Based P Systems. Journal of Universal Computer Science, 10,
No. 5, 2004, pp. 600–619. A preliminary version is contained in [16],
pp. 292–308.
[13] A. Leporati, C. Zandron, G. Mauri. Universal families of Reversible
P Systems. In Machines, Computation and Universality (MCU 2004),
Saint–Petersburg, Russia, September 21–26, 2004. To appear in Lecture
Notes in Computer Science.
[14] G. Păun. Computing with membranes. Journal of Computer and System Sciences, 1, No. 61, 2000, pp. 108–143. See also Turku Centre for
Computer Science – TUCS Report No. 208, 1998.
[15] G. Păun. Membrane Computing. An Introduction. Springer–Verlag,
Berlin, 2002.
[16] G. Păun, A. Riscos Nuñez, A. Romero Jiménez, F. Sancho Caparrini
(Eds.). Second Brainstorming Week on Membrane Computing, Seville,
Spain, February 2–7, 2004. Department of Computer Sciences and Artificial Intelligence, University of Seville TR 01/2004.
[17] G. Păun, Y. Suzuki, H. Tanaka. P Systems with energy accounting.
International Journal Computer Math., 78, No. 3, 2001, pp. 343–364.
[18] The P systems Web page: http://psystems.disco.unimib.it/
26