# Quantum autonomous Boolean networks

Ian T. Durham<EMAIL_ADDRESS>Department of Physics, Saint Anselm College,
Manchester, NH 03102, USA

###### Abstract

Boolean networks, first developed in the late 1960s as a tool for studying
complex disordered dynamical systems, consist of nodes governed by Boolean
functions whose evolution is entirely deterministic in that the state of the
network at a given time fully determines the state of the network at some
future time. They are known for exhibiting a high degree of spontaneous order
and have since become a fundamental tool for modeling a wide variety of
systems. In this article I develop a model for quantum autonomous Boolean
networks that exhibits many of the same properties as the classical model
while also demonstrating uniquely quantum properties within a rich landscape
of behavior.

##  I Introduction

Boolean networks were first developed by Kauffman in the late 1960s as a tool
for studying complex disordered dynamical systems [1]. His original intent was
to find networks that might possess enough order such that they allow for
adaptation and selection as in, for example, genetic regulatory processes and
similar systems [2]. The nodes of these networks consist of Boolean functions
and their evolution is entirely deterministic; the state of the network at a
given time $t$ fully determines the state of the network at time $t+1$. As
such, these networks are referred to as autonomous. If the initial connections
between the nodes are randomly determined, then these networks are also
referred to as random Boolean networks. Because these networks have a finite
number of nodes and are entirely deterministic, they eventually cycle through
a finite number of states, i.e. they exhibit state cycles of finite length
where the length depends on the number of functions in the network. In some of
these networks, the state of one or more of the nodes are “frozen” in a given
state regardless of the length of the state cycle. Such elements are referred
to as frozen cores. The frozen cores create “islands” of isolated nodes
separated by “percolating walls” such that perturbations to variables in one
island have no effect on variables in other islands [3]. Since Kauffman’s
introduction, the properties of these networks have been extensively studied
[4, 5, 6, 7, 8, 9, 10, 11, 12, 13]. They are considered one of the fundamental
modeling tools in the study of complex biological systems [14] and are also
considered an important tool in the modeling of stochastic dynamical systems
[15, 16, 17]. They serve as the canonical example of mechanisms in integrated
information theory and its quantum generalizations [18, 19, 20, 21, 22], and
have also found applicability in cryptography [23, 24].

To date, however, little work has been done on quantum extensions or analogs
of these networks. By extensions and analogs, I am not referring here to the
simulation of these networks on quantum systems, but rather to more direct
implementations of these networks as circuits of Boolean functions. This, of
course, requires modeling the functions as unitary gates but since not all
classical Boolean functions are reversible, their implementation as unitary
gates in quantum circuits often requires the use of ancilla qubits [22]. A
method for the construction of unitary gates for the implementation of
classical Boolean functions was first proposed by Deutsch in 1985 [25]. The
more general concept of quantum Boolean functions was developed by Montanaro
and Osborne in 2010 [26]. The latter was recently used as a basis for the
development of a quantum analog of Kauffman’s original model [27]. This
analog, however, left a number of fundamental issues unaddressed. In
particular it did not explore the effects of quantization on a number of
issues, including the lengths of state cycles and the existence of frozen
cores, which are of vital importance to the emergence of order and to the
robustness of these networks to random perturbations.

This article thus develops a model framework for such networks that includes
these features, allowing for a more direct comparison to Kauffman’s networks
and extending the realm of study for such networks to the quantum domain. The
framework reveals a rich landscape of behavior unique to quantum systems
including highly variable state cycle lengths that do not depend on the number
of functions in the network, as well as the existence of correlations between
isolated islands across frozen cores. This framework, however, is not intended
as a way to model Kauffman’s networks directly using quantum systems. That is,
I am not interested here in reproducing the exact sequences of states that are
generated by classical autonomous Boolean networks. Rather, I am interested in
the behavior of sets of Boolean functions modeled as unitary gates in the
quantum domain. So, while it might be possible to recreate the properties of
an autonomous Boolean network consisting of a certain set of Boolean functions
using a set of quantum logic gates, instead, in the framework presented here,
the network’s gates would be direct quantum implementations of the those
classical Boolean functions. In other words, there is a one-to-one
correspondence in the present work between the number of operations in the
network and the number of Boolean functions that are represented.

I begin in Section II with a review of Boolean functions in general before
introducing their unitary implementations and a generalized bit oracle for
calculating irreversible classical Boolean functions on quantum networks. In
Section III I then give an overview of classical autonomous Boolean networks
along with a discussion of circuit implementations of such networks before
introducing the quantum framework. In Section IV.1 I discuss the important
features of these networks, which I refer to as quantum autonomous Boolean
networks (qABNs), and compare them to their classical counterparts. Finally,
in Section V I discuss some of the unanswered questions and lines of inquiry
that might be undertaken to address them.

##  II Boolean functions

A classical Boolean function is a function of $k$ input variables and $m$
output variables of the form $f:\\{0,1\\}^{k}\to\\{0,1\\}^{m}$ where
$\\{0,1\\}$ is the standard Boolean domain and is isomorphic to
$\mathbbm{Z}/2\mathbbm{Z}$ where the addition of any two variables $x$ and $y$
is $x\oplus y$. In the quantum domain, each of our $k$ input variables is
represented by a qubit. A quantum Boolean function of $k$ qubits is then a
unitary operator $f$ on $k$ qubits such that $f^{2}=\mathbbm{1}$.

It is often standard procedure to identify $\\{0,1\\}$ with $\\{+1,-1\\}$ by
defining $0\equiv+1$ and $1\equiv-1$ [26]. This makes $\\{+1,-1\\}$, which is
also isomorphic to $\mathbbm{Z}/2\mathbbm{Z}$, the multiplicative group of two
elements where products are written $xy$. In this paper, unless otherwise
specified, I will employ the $\\{0,1\\}$ convention in order to better
demonstrate the consistency with Kauffman’s original ideas.

Consider a single variable $x$ defined on the Boolean domain $\\{0,1\\}$ whose
state is determined by $k$ input variables, each of which is itself defined on
the Boolean domain. The number of combinations of states of $k$ inputs is just
$2^{k}$. But for each of these $2^{k}$ combinations, a specific Boolean
function must, by definition, specify the value of $x$. Since the values of
$x$ lie on the Boolean domain, this means that there are a total of
$2^{2^{k}}$ Boolean functions of $k$ inputs. For example there are sixteen
two-input Boolean functions, including the familiar AND, OR, and NOT.

There are two natural ways of representing classical Boolean functions on
quantum systems. These are known as the phase oracle [28]:

$\left|\mathbf{x}\right>\mapsto(-1)^{f(\mathbf{x})}\left|\mathbf{x}\right>$
(1)

and the bit oracle (also called the standard oracle):

$\left|\mathbf{x}\right>\left|\mathbf{y}\right>\mapsto
U_{f}\left|\mathbf{x}\right>\left|\mathbf{y}\right>\equiv\left|\mathbf{x}\right>\left|\mathbf{y}\oplus
f(\mathbf{x})\right>$ (2)

where $U_{f}^{2}=U_{f}^{{\dagger}}U_{f}=\mathbbm{1}$, $\mathbf{x}\equiv
x_{1}x_{2}\cdots x_{k},x_{j}\in\\{0,1\\}$, and $\mathbf{y}\equiv
y_{1}y_{2}\cdots y_{m},y_{i}\in\\{0,1\\}$. That is, given an input state
$\left|\mathbf{x}\right>\left|\mathbf{y}\right>$, $U_{f}$ maps the function’s
logical output to $\left|\mathbf{y}\right>$.

###  II.1 Unitary implementations

The logical output $\left|\mathbf{y}\right>$ may or may not be a set of
ancillas depending on the nature of the function. If a function is naturally
reversible then no ancilla is needed. But if the function is not reversible
then at least one ancilla is required in order to ensure unitarity. To see
this, consider the truth tables of the exclusive OR (XOR) and OR functions in
Table II.1.

XOR |  |  |  |  | OR |  |  |
---|---|---|---|---|---|---|---|---
$x$ |  $y$ | $x$ |  $y\oplus f(x)$ |  | $x$ |  $y$ | $x$ |  $y\oplus f(x)$
0.5pt]1-4 0.5pt]6-9 0 |  0 | 0 |  0 |  | 0 |  0 | 0 |  0
0 |  1 | 0 |  1 |  | 0 |  1 | 0 |  1
1 |  0 | 1 |  1 |  | 1 |  0 | 1 |  1
1 |  1 | 1 |  0 |  | 1 |  1 | 1 |  1

Table 1:  As the truth table for the XOR function indicates, each pair of
outputs can uniquely be identified with a pair of inputs which means the XOR
function is reversible and thus does not require an ancilla. There is
ambiguity in the OR function since both $(x,y)=(1,0)$ and $(x,y)=(1,1)$ as
inputs lead to $(x,y\oplus f(x))=(1,1)$ as an output. As such the OR function
is not reversible and thus requires an ancilla in order to be represented
reversibly.

Every pair of outputs $(x,y\oplus f(x))$ for the XOR function is uniquely
specified by a pair of inputs $(x,y)$. The same is not true for the OR
function since the output pair $(x,y\oplus f(x))=(1,1)$ is obtained from two
different input pairs. Thus the OR function is not reversible and an
additional input and output would need to be specified in order for this
function to be represented reversibly. A reversible truth table for the OR
function with $y$ serving as an ancilla is shown in Table 2 where $y$ is
always assumed to start in the $0$ state.

OR |  |  |  |  |
---|---|---|---|---|---
$x_{1}$ | $x_{2}$ |  $y$ | $x_{1}$ | $x_{2}$ |  $y\oplus f(x)$
[0.5pt] 0 | 0 |  0 | 0 | 0 |  0
0 | 1 |  0 | 0 | 1 |  1
1 | 0 |  0 | 1 | 0 |  1
1 | 1 |  0 | 1 | 1 |  1
Table 2:  In order to reversibly represent the OR function, $y$ must be an
ancilla to which the logical output is mapped.

It’s clear, then, that not all classical Boolean functions of $k$ inputs can
be reversibly represented with those $k$ inputs alone. This can become
cumbersome for systems of multiple Boolean functions and so it might be
natural to ask if there is a way to optimize the system. Suppose we have two
classical Boolean functions, each of which has two logical inputs and each of
which requires an ancilla in order to be represented reversibly. That is, both
functions are of the form

$(x_{1},x_{2},y)\mapsto(x_{1},x_{2},y\oplus f(x_{1},x_{2})).$ (3)

We might be tempted to simultaneously implement these two functions as

$(x_{1},x_{2},y)\mapsto(x_{1},x_{2}\oplus f_{1}(x_{1},y),y\oplus
f_{2}(x_{1},x_{2}))$ (4)

But 4 isn’t necessarily reversible. A simple example will suffice to show
this. The truth table for 4 with $f_{1}(x_{1},y)$ taken to be the AND function
and $f_{2}(x_{1},x_{2})$ taken to be the OR function is shown in Table 3.

|  |  |  | AND |  OR
---|---|---|---|---|---
$x_{1}$ |  $x_{2}$ | $y$ |  $x_{1}$ | $x_{2}\oplus f_{1}(x_{1},y)$ |  $y\oplus f_{2}(x_{1},x_{2})$
[0.5pt] 0 |  0 | 0 |  0 | 0 |  0
1 |  0 | 0 |  1 | 0 |  1
0 |  1 | 0 |  0 | 0 |  1
0 |  0 | 1 |  0 | 0 |  0
1 |  0 | 1 |  1 | 1 |  1
1 |  1 | 0 |  1 | 0 |  1
0 |  1 | 1 |  0 | 0 |  1
1 |  1 | 1 |  1 | 1 |  1
Table 3:  If we attempt to simultaneously implement both the AND and the OR
function on the same set of three inputs, we find that the process is not
reversible since every unique output string could have arisen from one of two
possible input strings.

As the truth table shows, none of the output triples is uniquely determined by
a single input triple. As such one ancilla is required for each function. For
example, if $f_{1}(x_{1},x_{2})$ is the AND function and $f_{2}(x_{1},x_{2})$
is the OR function,

$(x_{1},x_{2},y_{1},y_{2})\mapsto(x_{1},x_{2},y_{1}\oplus
f_{1}(x_{1},x_{2}),y_{2}\oplus f_{2}(x_{1},x_{2}))$ (5)

is reversible.

A similar process can be used to show that for any single irreversible
classical Boolean function of $k$ inputs and $m$ outputs (where I am assuming
that $m\leq k$ – the problem is more complicated when $m>k$) one ancilla is
required for each output in order to implement it reversibly. The total number
of elements in any such string must then be $k+m$. For $n$ such functions to
be implemented with the same set of logical inputs, the total number of
elements in the tuple must then be $n(k+m)$. Thus for any system of $n$
irreversible Boolean functions to be implemented reversibly, a total of
$n\times m$ ancillas are required. The total length of the input and output
strings must then be $n(k+m)$. But there is an additional problem that must be
considered.

The point of reversible representations is to allow for unitary
implementations by quantum systems. But consider a simple system of just two
logical qubits and two ancillas to which we apply two (unitary) functions. We
might naively expect that the bit oracle allows us to write

$\left|x_{1},x_{2}\right>\left|y_{1},y_{2}\right>\mapsto
U_{f_{1}}U_{f_{2}}\left|x_{1},x_{2}\right>\left|y_{1},y_{2}\right>.$

But there’s nothing privileging the order of the operators. We could just as
easily have written

$\left|x_{1},x_{2}\right>\left|y_{1},y_{2}\right>\mapsto
U_{f_{2}}U_{f_{1}}\left|x_{1},x_{2}\right>\left|y_{1},y_{2}\right>$

But for these to produce the same result, the unitary representations of our
functions would have to be commutative, i.e. $U_{f_{1}}U_{f_{2}}$ would have
to be equal to $U_{f_{2}}U_{f_{1}}$. Of course not all unitary operators are
commutative. The Pauli operators, for example, which are valid quantum single-
input Boolean functions are not commutative. However, I am primarily concerned
here with those unitary operators that represent classical Boolean functions
and it remains an open question as to whether all such operators are
commutative. If not, the number of qubits required to implement some of these
systems could be quite large. In this article I will keep things simple and
focus on Boolean functions for which $k=2$ and $m=1$ and will implement each
with its own, unique set of qubits.

###  II.2 A generalized bit oracle

We can generalize the notion of a bit oracle to include both pure and mixed
states by defining

$\rho(\mathbf{x},\mathbf{y})\equiv\left|\mathbf{x}\right>\left|\mathbf{y}\right>\left<\mathbf{y}\right|\left<\mathbf{x}\right|$
(6)

The action of a Boolean function on this state is then a unitary
transformation

$\rho(\mathbf{x},\mathbf{y}\oplus
f(\mathbf{x}))=U_{f}\rho(\mathbf{x},\mathbf{y})U_{f}^{{\dagger}}.$ (7)

This is a generalization of the bit oracle to a broader class of states. Now
consider a system of $n$ Boolean functions and define

$\displaystyle\rho(\mathbf{X},\mathbf{Y})$
$\displaystyle\equiv\rho(\mathbf{x}_{1},\mathbf{y}_{1})\otimes\cdots\otimes\rho(\mathbf{x}_{n},\mathbf{y}_{n})$
$\displaystyle U_{F}$ $\displaystyle\equiv U_{f_{1}}\otimes\cdots\otimes
U_{f_{n}}$ $\displaystyle F(\mathbf{X})$ $\displaystyle\equiv
f_{1}(\mathbf{x}_{1})\otimes\cdots\otimes f_{n}(\mathbf{x}_{n}).$ (8)

The evolution of the full system is then

$\rho(\mathbf{X},\mathbf{Y}\oplus
F(\mathbf{X}))=U_{F}\left[\rho(\mathbf{X},\mathbf{Y})\right]U_{F}^{{\dagger}}.$
(9)

This generalizes the bit oracle to a network of $n$ classical Boolean
functions and serves as the governing equation for the evolution of the
network.

##  III Autonomous Boolean networks

An autonomous Boolean network (ABN) is a network of $n$ Boolean variables
(i.e. their values are on the Boolean domain) whose state at some time $t$
fully determines the state of the network at time $t+1$ via a set of Boolean
functions acting on the set of variables. As such these networks are fully
deterministic in their evolution and there are no additional external
variables introduced at any point in the evolution of the network. If each
variable is updated simultaneously, the network is said to be synchronous [3].
Only synchronous networks are considered in this article.

The networks developed by Kauffman were described as both autonomous and
random. But this latter description is misleading. It refers to how the
connections between the nodes in the network are initially set. But thereafter
the connections remain fixed. Since the point of these networks is to
characterize the study the general behavior of all such networks and their
connections by studying some subset of them, there’s really nothing random
about it. It’s simply a way to choose which network to study at a given
moment. As such I will refrain from referring to these networks as random.

###  III.1 Classical networks

Consider a simple network of three variables, $x_{1},x_{2},x_{3}\in\\{0,1\\}$,
each of which receives inputs from the other two. Assume that the dynamical
evolution of the first is governed by the AND function and the dynamical
evolution of the other two are governed by the OR function. The truth table
for this simple network is shown in Table 4 where, for simplicity, I have set
$y=x_{3}$.

|  |  |  AND | OR |  OR
---|---|---|---|---|---
|  |  |  $x_{1}\oplus$ | $x_{2}\oplus$ |  $x_{3}\oplus$
$x_{1}$ |  $x_{2}$ | $x_{3}$ |  $f_{1}(x_{2},x_{3})$ | $f_{2}(x_{1},x_{3})$ |  $f_{3}(x_{1},x_{2})$
[0.5pt] 0 |  0 | 0 |  0 | 0 |  0
1 |  0 | 0 |  0 | 1 |  1
0 |  1 | 0 |  0 | 0 |  1
0 |  0 | 1 |  0 | 1 |  0
1 |  0 | 1 |  0 | 1 |  1
1 |  1 | 0 |  0 | 1 |  1
0 |  1 | 1 |  1 | 1 |  1
1 |  1 | 1 |  1 | 1 |  1
Table 4:  The truth table for a classical Boolean network of three variables
whose values are governed by the AND, OR, and OR functions respectively is
shown here.

This, of course, is not reversible but serves as a useful example for
demonstrating the basic properties of these networks.

The first thing to notice is that, since there are a finite number of states
and the evolution is entirely deterministic, the system will eventually pass
through a given state more than once. In fact it will continue to cycle
through the same set of states, referred to as a state cycle, ad infinitum.
The state cycles themselves are referred to as the dynamical attractors of the
network and the set of all states leading into or lying on a given cycle are
said to constitute the basin of attraction. The length of a given state cycle
is the number of states on that cycle and can range from unity for a steady
state up to $2^{n}$ depending, in part, on the number of inputs $k$ to each
function. The basins of attraction partition the $2^{n}$ state space of the
network.

Figure 1 shows all the state cycles and basins of attraction for the network
whose truth table is shown in Table 4.

000001010011110111100101state cycle 1state cycle 2state cycle 3 Figure 1:  The
state cycles and basins of attraction are shown for an autonomous Boolean
network corresponding to the truth table in Table 4. Note that the length of
the third state cycle is just unity since, once it settles into the $(1,1,1)$
state, it remains there.

In general, the length of the state cycle and the number of attractors are
both functions of the number of inputs per function $k$ and the number of
functions $n$. For example, for functions with $k=2$ inputs such as the AND
and OR functions, the expected state cycle length and the mean attractor
length is on the order of $\sqrt{n}$, though some systems show a power law
relation [4, 9]. This is a rather remarkable result. A system of 10,000 binary
variables with $2^{10,000}$ possible states will settle and cycle through a
mere 100 of these states. Additionally each state cycle (in the $k=2$ case) is
stable to almost all minimal perturbations including the deletion of elements
[3]. For the network in Figure 1, the second state cycle is actually the
longest since, in the third basin of attraction, once the state settles into
the $(1,1,1)$ state, it remains there.

Now consider a more complicated network of seven variables, each of which
dynamically evolves according to some Boolean function. The variables are
connected to one another such that each variable’s state at time $t+1$ is
determined by the states of two other not necessarily neighboring variables at
time $t$. Suppose the evolution of the first seven elements of the network
over ten time steps proceeds as shown in Table 5.

$t$ |  $x_{1}$ |  $x_{2}$ | $x_{3}$ |  $x_{4}$ | $x_{5}$ |  $x_{6}$ | $x_{7}$
---|---|---|---|---|---|---|---
[0.5pt] 1 |  0 |  1 | 0 |  1 | 0 |  0 | 1
2 |  1 |  0 | 1 |  1 | 1 |  1 | 0
3 |  0 |  1 | 1 |  1 | 1 |  0 | 1
4 |  1 |  1 | 1 |  1 | 0 |  1 | 0
5 |  0 |  1 | 0 |  1 | 1 |  1 | 1
6 |  1 |  0 | 0 |  1 | 1 |  0 | 0
7 |  0 |  0 | 1 |  1 | 0 |  1 | 1
8 |  1 |  0 | 1 |  1 | 0 |  1 | 0
9 |  1 |  1 | 0 |  1 | 1 |  1 | 1
10 |  0 |  1 | 0 |  1 | 1 |  0 | 1
Table 5:  The evolution of the first seven variables in a hypothetical seven-
variable network shows a frozen core corresponding to the fourth element which
gives two functionally isolated islands consisting of ($x_{1},x_{2},x_{3}$)
and ($x_{5},x_{6},x_{7}$) respectively.

Notice that the fourth variable never changes. We refer to this variable as a
frozen core; it separates all the variables to its left from those to its
right. The two sides of the frozen core form functionally isolated islands
separated by a percolating wall. Note that this does not mean that there
aren’t connections between the islands. For example, it could be that the
second variable’s state is determined by variables one and six, i.e.
$x_{3}\equiv x_{3}\oplus f(x_{1},x_{6})$. Nevertheless, the islands are said
to be functionally isolated because perturbations to variables in one island
have no effect on variables in other islands even though the islands may be
connected. As I will show, this is not true in the quantum case. I refer the
interested reader back to Kauffman for additional details on these structures
[2, 3].

###  III.2 Circuit implementations

In circuit implementations of these networks there are two things worthy of
note. These are best seen by considering the idealized circuit diagram for the
network described in Table 4 as shown in Figure 2.

ANDORORANDOROR$x_{1}$$y_{1}$$x_{2}$$y_{2}$$x_{3}$$y_{3}$$y_{1}\oplus
f_{1}(x_{1})$$y_{2}\oplus f_{2}(x_{2})$$y_{3}\oplus f_{3}(x_{3})$ Figure 2:
The classical circuit diagram for a network consisting of an AND gate and two
OR gates highlights two important facts: (i) the non-logical outputs
($x_{1},x_{2},x_{3}$) are discarded after the first step and (ii) each logical
output ($y_{1}\oplus f_{1}(x_{1}),y_{2}\oplus f_{2}(x_{2}),y_{3}\oplus
f_{3}(x_{3})$) is copied so it can be used as the input to more than one
function at the next step. Note that this is only one of thirty-six possible
wiring diagrams for a network consisting of these three functions.

The first thing to notice is that the bits that do not represent the logical
output are discarded in the sense that they are not used to compute the
network’s next state. Only the logical output bits are used to compute the
next step. But that, then, necessitates the second noteworthy attribute of
these networks. In order to ensure the correct number of inputs on subsequent
steps, the logical outputs must be copied.

This presents a problem for any attempt to directly implement such a network
on a quantum system. Since the system is quantum its evolution should be
unitary. But it is well-known that no single universal unitary gate can copy
(clone) an arbitrary quantum state [29, 30, 31]. As such, we can’t directly
implement such a network on a quantum system without additional inputs.

Consider a network consisting of the same functions as those just described in
Figure 2 but with each function implemented unitarily. Neither the AND nor the
OR function is naturally reversible and so each requires an ancilla qubit. The
network is thus composed of nine qubits. Since we can’t arbitrarily clone any
of the qubits, there must be a one-to-one correspondence between the outputs
at one step and the inputs at the next step. But as long as that constraint is
satisfied, we can connect (wire) them in any manner we like. An arbitrary
wiring diagram for this network is shown in Figure 3.

OR$x_{3}^{(a)}$$x_{3}^{(b)}$$y_{3}$$y_{3}\oplus
f_{3}$$x_{3}^{(b)}$$x_{3}^{(a)}$OR$x_{2}^{(a)}$$x_{2}^{(b)}$$y_{2}$$y_{2}\oplus
f_{2}$$x_{2}^{(b)}$$x_{2}^{(a)}$AND$x_{1}^{(a)}$$x_{1}^{(b)}$$y_{1}$$y_{1}\oplus
f_{1}$$x_{1}^{(b)}$$x_{1}^{(a)}$ORORAND Figure 3:  One potential wiring
diagram for a quantum implementation of a Boolean network consisting of an AND
and two OR functions is shown. Since there are nine outputs and nine inputs,
there are eighty-one possible wiring diagrams for this set of functions. In
this particular case, for example, the output $y_{1}\oplus
f_{1}(x_{1}^{(a)},x_{1}^{(b)})$ at one step is mapped to the input
$x_{3}^{(b)}$ for the next step. Likewise, the output $y_{2}\oplus
f_{2}(x_{2}^{(a)},x_{2}^{(b)})$ at one step is mapped to the input $y_{3}$
which is an ancilla for the next step.

The arbitrary manner in which a given connection (wiring) was chosen is the
reason Kauffman referred to them as random. The randomness was simply how a
given connection was selected for study any a given time.

Notice in the circuit of Figure 3 that the output $y_{2}\oplus
f_{2}(x_{2}^{(a)},x_{2}^{(b)})$ from the first step acts as the input to
$y_{3}$ at the next step. That is, if we indicate the input to the second step
with a prime, then $y_{3}^{\prime}\equiv y_{2}\oplus
f_{2}(x_{2}^{(a)},x_{2}^{(b)})$. But $y_{3}$ is an ancilla that encodes the
logical output of $f_{3}(x_{3}^{\prime(a)},x_{3}^{\prime(b)})$. This means
that the output of the second step is $y_{3}^{\prime}\oplus
f_{3}(x_{3}^{\prime(a)},x_{3}^{\prime(b)})\equiv y_{2}\oplus
f_{2}(x_{2}^{(a)},x_{2}^{(b)})\oplus
f_{3}(x_{3}^{\prime(a)},x_{3}^{\prime(b)})$. It is usually convention to set
ancillas to 0 but since there is no action external to the network here (since
it is autonomous) it is entirely possible that $y_{3}^{\prime}\equiv
y_{2}\oplus f_{2}(x_{2}^{(a)},x_{2}^{(b)})$ will be 1. Since the action of the
function is modulo 2 the logical output of the second step could produce a 0
when a 1 is expected, and vice-versa.

As a simple example of this, consider a single OR function implemented
unitarily and assume the initial input state is $(x_{1}=1,x_{2}=1,y=0)$
(corresponding to the bottom line of Table 2). Also assume that this network
has the simplest wiring diagram such that, for example,
$x_{1}^{\prime(a)}\equiv x_{1}^{(a)}$, $x_{1}^{\prime(b)}\equiv x_{1}^{(b)}$,
and $y_{1}^{\prime}\equiv y_{1}$. Since the function itself is mapped to the
ancilla, i.e. $y_{1}=f(x_{1}^{(a)},x_{1}^{(b)})$, the output state is
$(1,1,1)$. But if we implement this function again with $(1,1,1)$ now serving
as the input, the function’s action on the ancilla (which is now in the state
1) is modulo 2 and thus the output becomes $(1,1,0)$. That is, for a network
consisting of just the OR function and three qubits, if at any time the state
of the system is either $(1,1,0)$ or $(1,1,1)$, then the system will simply
cycle between these two states, i.e.
$\cdots(1,1,0)\mapsto(1,1,1)\mapsto(1,1,0)\mapsto(1,1,1)\mapsto(1,1,0)\cdots$.
We could choose to perform error correction at each step (that is, immediately
following the output) and reset the ancilla to 0 if need be, but that would
either require external intervention, in which case the network wouldn’t truly
be autonomous, or would consist of more than just the functions that defined
the network, i.e. it would require additional operations. Since I am primarily
interested here in the autonomous behavior of sets of Boolean functions, I
will not execute any error correction on the ancilla qubits.

##  IV Quantum networks

I am now in a position to define a quantum autonomous Boolean network (qABN)
in direct analogy to classical autonomous Boolean networks.

  * Definition 1

A quantum autonomous Boolean network is a network of $n$ Boolean functions of
$k$ logical qubits whose state at time $t$ determines, through unitary
evolution via a generalized bit oracle, its state at time $t+1$ and for which
each output qubit at time $t$ maps to some input qubit (not necessarily
itself) at time $t+1$, i.e. there is a one-to-one correspondence between the
number of outputs at one step and the number of inputs at the next step.

In order to ensure unitarity, each function can act on up to $k+m$ total
qubits where $m$ is the maximum number of ancillas required. These networks
thus consist of up to a maximum of $n(k+m)$ qubits (see Section II.1). The
number of qubits in the network is conserved and, as such, there is a one-to-
one correspondence between the number of outputs at one step and the number of
inputs at the next step. The connections between the outputs and inputs are
arbitrary. As such, for a system of $n(k+m)$ qubits there are $(n(k+m))!$
possible connections (referred to as wirings) between the outputs of one step
and the inputs of the next. Evolution of the network is via the generalized
bit oracle defined in Equation 9.

Consider again a network consisting of an AND and two OR gates. If this
network is implemented on a classical system as in Figure 2, there are thirty-
six possible wiring diagrams and thus thirty-six possible input combinations.
However, since each output from the previous step is copied, the number of
unique input combinations is only eighteen. But in the quantum case as in
Figure 3, there are eighty-one possible combinations.

In this article I focus on networks such as these that implement classical
Boolean functions on a quantum network, i.e. a network that allows for quantum
inputs and is implemented as described in Section III.2, but I emphasize that
the definition introduced here is far more broad.

As an example, I now describe the properties of qABNs of classical functions
for the case in which $k=2$. In this case the total number of ancillas $m$
never exceeds the number of functions $n$ since there is never more than one
ancilla per function.

###  IV.1 qABNs of classical functions for $k=2$ inputs

Classical Boolean functions for which $k=2$ and $m=1$ consist of a set of
sixteen functions that include the familiar AND, OR, and NOT functions. The
most remarkable feature of these networks is the spontaneous order that they
exhibit through short state cycles, multiple basins of attraction, and frozen
cores separating isolated islands. The most conspicuous differences in $k=2$
quantum networks are that the state cycles are not always short (in fact they
can be exceptionally long) and, despite the existence of frozen cores and thus
percolating walls, the islands are no longer isolated to perturbations.

Simulations of qABNs of these functions in Python utilizing the QuTIP package
[32, 33] have been carried out and a GitHub repository of the code is
available (https://github.com/iantdurham/quantum_boolean_networks). In these
simulations the allowed input states were

$\begin{array}[]{rlcrl}\rho(0)&=\left|0\right>\left<0\right|&&\rho(1)&=\left|1\right>\left<1\right|\\\
\rho(+)&=\left|+\right>\left<+\right|&&\rho(-)&=\left|-\right>\left<-\right|.\end{array}$
(10)

Either a set of functions is manually entered or the code randomly chooses a
set. Since there are a large number of possible wiring diagrams for any given
set of functions, the code is designed to select one by randomly permuting the
outputs from the first step. That is, an initial state is set (either randomly
chosen or manually entered) and the generalized bit oracle is applied to get
an output state which is then randomly permuted before the next application of
the oracle. The same permutation is then applied after each subsequent output
so that the same wiring occurs at every step.

In order to keep track of a specific wiring diagram, I assign an index to the
output ‘wires’ for a network starting with 0 at the top. Each wire can then be
traced to its input at the next step which shuffles the indices. For the
network shown in Figure 3, there are nine output wires that are labeled
$[0,1,2,3,4,5,6,7,8]$ top-to-bottom in the figure. The order in which these
wires connect to the next iteration of the network is $[3,0,6,4,1,8,7,2,5]$ as
shown in Figure 4 (e.g. the circuit maps $x_{1,t}^{(a)}\mapsto
x_{1,t+1}^{(b)}$, etc.).

OR$x_{3}^{(a)}$$x_{3}^{(b)}$$y_{3}$(8)(7)(6)OR$x_{2}^{(a)}$$x_{2}^{(b)}$$y_{2}$(5)(4)(3)AND$x_{1}^{(a)}$$x_{1}^{(b)}$$y_{1}$(2)(1)(0)OR(5)(2)(7)OR(8)(1)(4)AND(6)(0)(3)
Figure 4:  The wires exiting the first step, $[0,1,2,3,4,5,6,7,8]$, enter the
second step in the order $[3,0,6,4,1,8,7,2,5]$, i.e. the circuit maps
$x_{1,t}^{(a)}\mapsto x_{1,t+1}^{(b)}$.

Tracking the state cycles for quantum networks can be particularly tricky
given the shear number of possible states that could exist in a given cycle.
The addition of ancillas adds to the complexity level. We can, however, get
some sense of the behavior of the system as a whole by tracking various
properties of the system. For example, one measure that provides a sense of
how these networks evolve is the multipartite mutual information which, for a
network whose overall state is $\rho$, is given as [34, 35]

$\displaystyle I_{m}(A_{1}:\cdots:A_{n})$
$\displaystyle=\sum_{n}S(\rho^{A_{n}})-S(\rho)$ (11)
$\displaystyle=S(\rho||\rho^{A_{1}}\otimes\cdots\otimes\rho^{A_{n}})$
$\displaystyle\geq 0$

where $S(\rho)$ is the von Neumann entropy of the entire network and
$S(\rho^{A_{n}})$ is the von Neumann entropy of the $n$th qubit in the
network. It expresses the difference between the sum of the von Neumann
entropies of the individual qubits in the system, and the von Neumann entropy
of the system considered as a whole. Since the network evolves
deterministically in the absence of measurement, the value $I_{m}$ should vary
periodically. Note, however, that this measure does not depend on the relative
locations of the qubits in the network. As such it cannot distinguish between,
say, the state $\rho(+)\otimes\rho(-)\otimes\rho(0)$ and the state
$\rho(-)\otimes\rho(+)\otimes\rho(0)$. But there exists a $k=2$ Boolean
function for which $f(\rho(+)\otimes\rho(-)\otimes\rho(0))\neq
f(\rho(-)\otimes\rho(+)\otimes\rho(0))$ and thus the order of the qubits
matters. As such, the length of any cycles for $I_{m}$ would represent a
minimum length for any associated state cycles. That is, if, for example,
$I_{m}$ for a given network varies over five time steps, the state cycle for
the network could be no shorter than five but might be longer. Developing a
more robust measure is an important aim of future work. However, a fair amount
of useful information can be obtained about a network from the behavior of
multipartite mutual information as I will show.

As a simple example of the use of the multipartite mutual information for
analyzing these networks, consider a network consisting XNOR and NOR functions
with a wiring of $[0,3,2,1,4]$ and an initial input state of
$\rho(\mathbf{X},\mathbf{Y})=\rho(\mathbf{x}_{1},\mathbf{y}_{1})\otimes\rho(\mathbf{x}_{2},\mathbf{y}_{2})=\rho(+,+)\otimes\rho(10,0)$.
In this case the multipartite mutual information, $I_{m}$, varies
symmetrically with a cycle length of six steps as shown in Figure 5.

Figure 5:  A quantum network implementing an XNOR function and a NOR function
with an input state of
$\rho(\mathbf{X},\mathbf{Y})=\rho(\mathbf{x}_{1},\mathbf{y}_{1})\otimes\rho(\mathbf{x}_{2},\mathbf{y}_{2})=\rho(+,1)\otimes\rho(1-,0)$
and wiring $[2,1,0,4,3]$ has a multipartite mutual information that displays
symmetric oscillatory behavior with a cycle length of six steps.

While the actual state cycle length may be longer, the cycle length for
$I_{m}$ nevertheless is useful in that it suggests that the network evolves
through the states in the cycle in a symmetric way. In contrast, a network
implementing the same functions but with input state
$\rho(\mathbf{X},\mathbf{Y})=\rho(\mathbf{x}_{1},\mathbf{y}_{1})\otimes\rho(\mathbf{x}_{2},\mathbf{y}_{2})=\rho(-,+)\otimes\rho(+0,0)$
and wiring $[4,1,0,3,2]$ exhibits asymmetric behavior, as shown in Figure 6.

Figure 6:  A network implementing an XNOR and a NOR function with an input
state
of$\rho(\mathbf{X},\mathbf{Y})=\rho(\mathbf{x}_{1},\mathbf{y}_{1})\otimes\rho(\mathbf{x}_{2},\mathbf{y}_{2})=\rho(-,+)\otimes\rho(+0,0)$
and wiring $[4,1,0,3,2]$ exhibits asymmetric behavior.

One might expect the complexity of the behavior exhibited by these networks to
increase rapidly as the number of functions increases. But suppose we add a
single NAND function to the simple network we just considered. That is,
suppose we implement a network implementing XNOR, NOR, and NAND functions with
an input state of
$\rho(\mathbf{X},\mathbf{Y})=\rho(\mathbf{x}_{1},\mathbf{y}_{1})\otimes\rho(\mathbf{x}_{2},\mathbf{y}_{2})\otimes\rho(\mathbf{x}_{3},\mathbf{y}_{3})=\rho(0,+)\otimes\rho(-+,0)\otimes\rho(0-.0)$
and wiring $[6,1,3,2,0,5,4,7]$. The cycle length for $I_{m}$, shown in Figure
7, is just one step longer than the associated cycle for the network in Figure
5.

Figure 7:  A network implementing XNOR, NOR, and NAND functions with an input
state of
$\rho(\mathbf{X},\mathbf{Y})=\rho(\mathbf{x}_{1},\mathbf{y}_{1})\otimes\rho(\mathbf{x}_{2},\mathbf{y}_{2})\otimes\rho(\mathbf{x}_{3},\mathbf{y}_{3})=\rho(0,+)\otimes\rho(-+,0)\otimes\rho(0-,0)$
and wiring $[6,1,3,2,0,5,4,7]$ exhibits a relatively short cycle length for
$I_{m}$.

By contrast, the same set of functions with an input state of
$\rho(\mathbf{X},\mathbf{Y})=\rho(\mathbf{x}_{1},\mathbf{y}_{1})\otimes\rho(\mathbf{x}_{2},\mathbf{y}_{2})\otimes\rho(\mathbf{x}_{3},\mathbf{y}_{3})=\rho(-,+)\otimes\rho(-0,0)\otimes\rho(1+,0)$
and wiring $[6,5,7,4,0,3,1,2]$ has a cycle length for $I_{m}$ of nearly nine
million steps, as shown in Figure 8.

Figure 8:  A network implementing XNOR, NOR, and NAND functions with an input
state of
$\rho(\mathbf{X},\mathbf{Y})=\rho(\mathbf{x}_{1},\mathbf{y}_{1})\otimes\rho(\mathbf{x}_{2},\mathbf{y}_{2})\otimes\rho(\mathbf{x}_{3},\mathbf{y}_{3})=\rho(-+,0)\otimes\rho(-+,0)\otimes\rho(-,1)$
and wiring $[6,3,1,4,5,7,2,0]$ exhibits a very long cycle length for $I_{m}$.

This actually tells us something about the states in the cycle. We know that
the state cycle must be as long if not longer than the cycle length of $I_{m}$
and, given that there are eight qubits in the system, if those qubits could
only ever be in one of the four input states given by equation 10, there would
only be a total of $4^{8}$ possible system states. Since the system is
deterministic in that each state uniquely leads to another state, $4^{8}$
would thus be the maximum length for any state cycle. Since the state cycle
for the network in Figure 8 far exceeds that, the network must produce states
not specified by equation 10. As such, while $I_{m}$ cannot distinguish
between all of the network’s states, it can still tell us something important
about what the network is doing and can prompt further action. In this
example, when tracing out the individual qubit states, one finds that they are
mixed states.

The network described in Figure 7 also exhibits two frozen cores. Since the
$y_{1}$ (index 1), $x_{3}^{(a)}$ (index 5), and $y_{3}$ (index 7) qubits feed
back into themselves, one might actually expect there to be three frozen
cores. But, in fact, only $y_{1}$ and $x_{3}^{(a)}$ remain unchanged. It might
be unsurprising that $x_{3}^{(a)}$ is frozen given that no output is mapped to
it. But $y_{1}$ represents the logical output of the XNOR function, i.e.
$y_{1}^{\prime}=y_{1}\oplus f_{1}$. Thus, if $x_{1}$ changes, one would expect
$y_{1}$ to change. If we look at the states that $x_{1}$ cycles through —
$\rho(-)$, $\rho(0)$, and a mixed state defined as $0.5\rho(0)+0.5\rho(1)$ —
we might expect that, at the very least, $y_{1}$ would change to a mixed state
of some kind, but the combinations are just such that no change occurs.

The frozen cores $y_{1}$ and $x_{3}^{(a)}$ separate the network into three
“islands” of states: one island on the left containing $x_{1}$, one island in
the middle containing $x_{2}^{(a)}$, $x_{2}^{(b)}$, and $y_{2}$, and one
island on the right containing $x_{3}^{(b)}$ and $y_{3}$. In classical Boolean
networks, perturbations to bits in one island have no effect on the bits in
the other islands. Hence the islands are said to be isolated. The same is not
true in the quantum case. As an example, consider that on the eleventh time
step, $x_{1}=\rho(0)$ and on the fifteenth time step, $y_{2}=\rho(0)$. If we
apply the bit flip operator to $x_{1}$ on the eleventh time step, $y_{2}$ at
the fifteenth time step also flips. In a classical network, $y_{2}$ would
never flip since it is in a different island. One would assume that the
ability to cross into another island is a result of non-classical
correlations, but a better measure is needed in order to be sure.

But this result is remarkable for another reason: $y_{2}$ is not affected
until the fifteenth step. Perhaps even more remarkably, this perturbation has
no effect whatsoever on the multipartite mutual information cycle. While this
can be (rightly) taken as a failure of $I_{m}$ to detect changes to the
individual qubit states, it is nevertheless notable that $I_{m}$ is resilient
to perturbations in this situation. In the language of classical Boolean
networks, the cycle would be referred to as an attractor since the
perturbation ultimately preserved the cycle. Not all cycles (classical or
quantum) are impervious to perturbations.

Having set out the basic definition of qABNs and given a few specific
examples, it’s now worth taking a closer look at some of the pressing
questions and how they might be addressed.

##  V Discussion and Conclusions

Perhaps the most pressing issue raised by this framework is the need for an
alternative measure to the multipartite mutual information that can
distinguish states in such a way as to maintain the ordering of the individual
qubits since it is what distinguishes the the states in the cycle. One
potential measure for this is the quantum discord [36, 37, 38] since the
discord can be asymmetric [39, 40]. However, existing generalizations of the
discord to multipartite systems are symmetric with regard to the exchange of
subsystems [41, 42], though the latter can account for different measurement
orders. If the latter could be further extended to account for the ordering of
the qubits, it might be useful, particularly since it tells us something about
the correlations between the various subsystems. However, it likely would also
prove to be difficult to compute since computing the discord is known to be
NP-complete [43].

Another pressing issue is the nature of the mixed states that are produced in
some of these networks. In the network shown in Figure 7, recall that a
perturbation to $x_{1}$ on the eleventh time step led to a change in the value
of $y_{2}$ on the fifteenth time step. One would expect that a perturbation at
one time step would lead to changes at the very next time step rather than
several steps later. It seems possible that the propagation of the
perturbation occurs through some combination of correlations between the
states as well as the nature of the mixed states. That is, the mixed states
somehow mask the perturbation. A better understanding of these mixed states,
particularly in conjunction with a better measure than the multipartite mutual
information, might shed more light on this issue.

Given that these networks exhibit oscillatory behavior, as evidenced by their
finite state cycles, it might also be of interest to explore any cycle measure
such as the multipartite mutual information or discord in the frequency
domain. In fact the code written for this and available on GitHub includes a
Fourier transform of the multipartite mutual information to the frequency
domain. The transform for the cycle shown in Figure 5 is given in Figure 9.

Figure 9:  The Fourier transform of $I_{m}$ for the network shown in Figure 5
likely represents the Fourier decomposition of the cycle, but it’s unclear
which subsystems the components would represent.

The trouble is that it’s not entirely clear how to interpret the results. One
would expect that it would give the Fourier decomposition of a given cycle
into component cycles, but it’s not clear what those component cycles would
represent. Are they, for instance, the cycles of individual subsystems within
the larger network? If so, which subsystems would they represent?

In addition to these particular questions, I have only explored networks of
$k=2$ functions. Additional networks should be explored in order to establish
general bounds for the mean attractor length and mean attractor number for
each class of network.

Nevertheless, the framework presented here captures some of the most salient
features of classical Boolean networks in a quantum setting including finite
state cycles and frozen cores, while also demonstrating uniquely quantum
properties within a rich landscape of behavior ripe for further exploration.

###### Acknowledgements.

I would like to thank Nana Liu, Peter Rohde, Robert Prentner, and Larissa
Albantakis for helpful discussions. This work was partially supported by a
grant from FQxI (FQXi-RFP-IPW-1911).

## References

  * Kauffman [1969] S. A. Kauffman, Journal of Theoretical Biology 22, 437 (1969).
  * Kauffman [1990a] S. A. Kauffman, _Origins of Order: Self Organization in Evolution_ (Oxford University Press, Oxford, 1990a).
  * Kauffman [1990b] S. A. Kauffman, in _Complexity, Entropy, and the Physics of Information_ , edited by W. H. Zurek (Addison Wesley, Redwood City, 1990b), Santa Fe Institute Studies in the Science of Complexity, pp. 151–192.
  * Bastolla and Parisi [1998] U. Bastolla and G. Parisi, Physica D: Nonlinear Phenomena 115, 219 (1998), ISSN 0167-2789, URL https://www.sciencedirect.com/science/article/pii/S016727899700242X.
  * Bilke and Sjunnesson [2001] S. Bilke and F. Sjunnesson, Phys. Rev. E 65, 016129 (2001), URL https://link.aps.org/doi/10.1103/PhysRevE.65.016129.
  * Socolar and Kauffman [2003] J. E. S. Socolar and S. A. Kauffman, Phys. Rev. Lett. 90, 068702 (2003), URL https://link.aps.org/doi/10.1103/PhysRevLett.90.068702.
  * Samuelsson and Troein [2003] B. Samuelsson and C. Troein, Phys. Rev. Lett. 90, 098701 (2003), URL https://link.aps.org/doi/10.1103/PhysRevLett.90.098701.
  * Aldana et al. [2003] M. Aldana, S. Coppersmith, and L. P. Kadanoff, _Boolean Dynamics with Random Couplings_ (Springer New York, New York, NY, 2003), pp. 23–89, ISBN 978-0-387-21789-5, URL https://doi.org/10.1007/978-0-387-21789-5_2.
  * Mihaljev and Drossel [2006] T. Mihaljev and B. Drossel, Phys. Rev. E 74, 046101 (2006), URL https://link.aps.org/doi/10.1103/PhysRevE.74.046101.
  * Drossel and Greil [2009] B. Drossel and F. Greil, Phys. Rev. E 80, 026102 (2009), URL https://link.aps.org/doi/10.1103/PhysRevE.80.026102.
  * Zhang et al. [2009] R. Zhang, H. L. D. de S.Cavalcante, Z. Gao, D. J. Gauthier, J. E. S. Socolar, M. M. Adams, and D. P. Lathrop, Phys. Rev. E 80, 045202 (2009), URL https://link.aps.org/doi/10.1103/PhysRevE.80.045202.
  * de S. Cavalcante et al. [2010] H. L. de S. Cavalcante, D. Gauthier, J. E. Socolar, and R. Zhang, Philosophical transactions of the Royal Society A: Mathematical, Physical and Engineering Sciences 368, 495 (2010).
  * Greil [2012] F. Greil, Frontiers in Plant Science 3 (2012), ISSN 1664-462X, URL https://www.frontiersin.org/articles/10.3389/fpls.2012.00178.
  * Schwab et al. [2020] J. D. Schwab, S. D. Kühlwein, N. Ikonomi, M. Kühl, and H. A. Kestler, Computational and Structural Biotechnology Journal 18, 571 (2020), ISSN 2001-0370, URL https://www.sciencedirect.com/science/article/pii/S200103701930460X.
  * Klemm and Bornholdt [2005] K. Klemm and S. Bornholdt, Phys. Rev. E 72, 055101 (2005), URL https://link.aps.org/doi/10.1103/PhysRevE.72.055101.
  * Mozeika and Saad [2012] A. Mozeika and D. Saad, Philosophical Magazine 92, 210 (2012), eprint https://doi.org/10.1080/14786435.2011.602371, URL https://doi.org/10.1080/14786435.2011.602371.
  * Jansen and Matache [2013] K. Jansen and M. T. Matache, Eur. Phys. J. B 86, 316 (2013), URL https://doi.org/10.1140/epjb/e2013-40009-4.
  * Oizumi et al. [2014] M. Oizumi, L. Albantakis, and G. Tononi, PLOS Computational Biology 10, e1003588 (2014).
  * Zanardi et al. [2018] P. Zanardi, M. Tomka, and L. C. Venuti (2018), https://arxiv.org/abs/1806.01421.
  * Barbosa et al. [2021] L. Barbosa, W. Marshall, L. Albantakis, and G. Tononi, Entropy 23, 362 (2021).
  * Kleiner and Tull [2021] J. Kleiner and S. Tull, Frontiers in Applied Mathematics and Statistics 6, 602973 (2021).
  * Albantakis et al. [2023] L. Albantakis, R. Prentner, and I. Durham (2023), https://arxiv.org/abs/2301.02244.
  * Wang and Gao [2020] X. Wang and S. Gao, Information Sciences 507, 16 (2020), ISSN 0020-0255, URL https://www.sciencedirect.com/science/article/pii/S0020025519307807.
  * Gao et al. [2023] S. Gao, R. Wu, X. Wang, J. Liu, Q. Li, C. Wang, and X. Tang, IEEE Transactions on Circuits and Systems for Video Technology pp. 1–1 (2023).
  * Deutsch [1985] D. Deutsch, Proceedings of the Royal Society of London A 400, 97 (1985).
  * Montanaro and Osborne [2010] A. Montanaro and T. J. Osborne, Chicago Journal of Theoretical Computer Science 2010, 1 (2010).
  * Franco et al. [2021] M. Franco, O. Zapata, D. A. Rosenblueth, and C. Gershenson (2021), vol. ALIFE 2021: The 2021 Conference on Artificial Life of _ALIFE 2022: The 2022 Conference on Artificial Life_ , 94, eprint https://direct.mit.edu/isal/proceedings-pdf/isal/33/94/1929803/isal_a_00428.pdf, URL https://doi.org/10.1162/isal_a_00428.
  * Kashefi et al. [2002] E. Kashefi, A. Kent, V. Vedral, and K. Banaszek, Phys. Rev. A 65, 050304 (2002), URL https://link.aps.org/doi/10.1103/PhysRevA.65.050304.
  * Park [1970] J. Park, Foundations of Physics 1, 23 (1970).
  * Wootters and Zurek [1982] W. Wootters and W. H. Zurek, Nature 299, 802 (1982).
  * Dieks [1982] D. Dieks, Physics Letters A 92, 271 (1982).
  * Johansson et al. [2013] J. Johansson, P. Nation, and F. Nori, Computer Physics Communications 184, 1234 (2013), ISSN 0010-4655, URL https://www.sciencedirect.com/science/article/pii/S0010465512003955.
  * Johansson et al. [2012] J. Johansson, P. Nation, and F. Nori, Computer Physics Communications 183, 1760 (2012), ISSN 0010-4655, URL https://www.sciencedirect.com/science/article/pii/S0010465512000835.
  * Watanabe [1960] S. Watanabe, IBM Journal of Research and Development 4, 66 (1960).
  * Herbut [2004] F. Herbut, Journal of Physics A: Mathematical and General 37, 3535 (2004), URL https://dx.doi.org/10.1088/0305-4470/37/10/016.
  * Ollivier and Zurek [2001] H. Ollivier and W. H. Zurek, Phys. Rev. Lett. 88, 017901 (2001), URL https://link.aps.org/doi/10.1103/PhysRevLett.88.017901.
  * Henderson and Vedral [2001] L. Henderson and V. Vedral, Journal of Physics A: Mathematical and General 34, 6899 (2001), URL https://dx.doi.org/10.1088/0305-4470/34/35/315.
  * Zurek [2002] W. H. Zurek, _Einselection and Decoherence from an Information Theory Perspective_ (Springer US, Boston, MA, 2002), pp. 115–125, ISBN 978-0-306-47114-8, URL https://doi.org/10.1007/0-306-47114-0_17.
  * Dillenschneider [2008] R. Dillenschneider, Phys. Rev. B 78, 224413 (2008), URL https://link.aps.org/doi/10.1103/PhysRevB.78.224413.
  * Dakić et al. [2010] B. Dakić, V. Vedral, and i. c. v. Brukner, Phys. Rev. Lett. 105, 190502 (2010), URL https://link.aps.org/doi/10.1103/PhysRevLett.105.190502.
  * Rulli and Sarandy [2011] C. C. Rulli and M. S. Sarandy, Phys. Rev. A 84, 042109 (2011), URL https://link.aps.org/doi/10.1103/PhysRevA.84.042109.
  * Radhakrishnan et al. [2020] C. Radhakrishnan, M. Laurière, and T. Byrnes, Phys. Rev. Lett. 124, 110401 (2020), URL https://link.aps.org/doi/10.1103/PhysRevLett.124.110401.
  * Huang et al. [2011] J.-H. Huang, L. Wang, and S.-Y. Zhu, New J. Phys. 13 (2011), URL https://doi.org/10.1088/1367-2630/13/6/063045.