Hidden variables in mathematical models of quantum structures

Bachelor’s Thesis
Czech
Technical
University
in Prague
F3
Faculty of Electrical Engineering
Department of Cybernetics
Hidden variables in mathematical
models of quantum structures
Matěj Petr
Open Informatics
May 2016
Supervisor: Prof. Ing. Mirko Navara, DrSc.
Czech Technical University in Prague
Faculty of Electrical Engineering
Department of Cybernetics
BACHELOR PROJECT ASSIGNMENT
Student:
Matěj P e t r
Study programme:
Open Informatics
Specialisation:
Computer and Information Science
Title of Bachelor Project:
Hidden Variables in Mathematical Models of Quantum Structures
Guidelines:
1. Make a review of literature on (non-)existence of hidden variables in quantum structures.
2. Write an overview of c;urrent specialized programs for computing in quantum structures.
3. Write a computer program which, for a quantum structure (orthomodular poset) given by
a hypergraph, finds all hidden variables (=two-valued states).
4. Consider possibilities of extension of the program and previous results. E.g., construct a set
representation if the quantum structure has sufficiently many two-valued states and try to
optimize this representation by omitting as many states as possible. Consider a possibility of
improvement of some results, in particular, restriction to rational elements in L(R³).
Bibliography/Sources:
[1] Kalmbach, G.: Orthomodular Lattices. Academic Press, London, 1983.
[2] Pták, P., Pulmannová, S.: Orthomodular Structures as Quantum Logics. Kluwer Academic
Publ., Dordrecht/Boston/London, 1991.
[3] Mermin, N.D.: Hidden variables and the two theorems of John Bell. Rev. Mod. Phys. 65
(1993), 803-815.
[4] Navara, M.: Mathematical questions related to non-existence of hidden variables. In:
L. Accardi, G.Adenier, C. Fuchs, G. Jaeger, A. Yu. Khrennikov, J. A. Larsson, S. Stenholm
(eds.), Foundations of Probability and Physics 5, American Institute of Physics Conference
Proceedings, Vol. 1101, New York, 2009, 119-126.
Bachelor Project Supervisor: prof. Ing. Mirko Navara, DrSc.
Valid until: the end of the summer semester of academic year 2016/2017
L.S.
prof. Dr. Ing. Jan Kybic
Head of Department
prof. Ing. Pavel Ripka, CSc.
Dean
Prague, December 14, 2015
Acknowledgement / Declaration
I wish to express my sincere thanks to
my thesis supervisor Prof. Ing. Mirko
Navara, DrSc. for all his help, advice,
time, and comments.
I declare that the presented work
was developed independently and that
I have listed all sources of information
used within it in accordance with the
methodical instructions for observing
the ethical principles in the preparation
of university theses.
Prague, 27. 5. 2016
........................................
v
Abstrakt / Abstract
Cílem této práce je seznámení s
teorií skrytých proměnných a stavem
programů zabývajících se výpočty na
kvantových strukturách. Dále je popsána implementace algoritmu, který
pro danou kvantovou strukturu (ortomodulární poset) zjistí, zda-li dovoluje
dostatečnou množinu skrytých proměnných (dvouhodnotových stavů).
Klíčová slova: kvantová struktura,
ortomodulární poset, pravděpodobnost,
stav, skrytá proměnná.
The aim of the thesis is an introduction to the theory of hidden variables
and a contribution to programs dealing
with computations on quantum structures. Furthermore the implementation
of a program, which for given quantum structure (orthomodular poset)
determines if the structure allows sufficient amount of two-valued states, is
described.
Keywords: quantum structure, orthomodular poset, probability, state,
hidden variable.
vi
Contents /
References . . . . . . . . . . . . . . . . . . . . . . . . 30
A Contents of CD . . . . . . . . . . . . . . . . . . 31
1 Intro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
1.1 Thesis organisation . . . . . . . . . . . . . .1
2 Preliminaries . . . . . . . . . . . . . . . . . . . . . . . .2
2.1 Motivating examples . . . . . . . . . . . . .2
2.1.1 States . . . . . . . . . . . . . . . . . . . . . . .4
2.1.2 Hidden variables conjecture . . . . . . . . . . . . . . . . . . . . . .5
2.2 Definitions . . . . . . . . . . . . . . . . . . . . . . . .6
3 Important results in question
of nonexistence of hidden variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8
3.1 EPR Paradox . . . . . . . . . . . . . . . . . . . .8
3.2 Gleason’s Theorem. . . . . . . . . . . . . . .8
3.3 Bell’s theorem . . . . . . . . . . . . . . . . . . . .8
3.3.1 Bell inequalities . . . . . . . . . . . .9
3.4 Kochen-Specker Theorem. . . . . . . .9
3.4.1 Geometric proof
(colouring vectors in <3 ) . .9
3.4.2 Peres’ proof for L(<3 )
and L(<4 ) . . . . . . . . . . . . . . . . 10
3.4.3 Cabello proof for L(<4 ) . 11
4 Programs. . . . . . . . . . . . . . . . . . . . . . . . . . 12
4.1 GENER . . . . . . . . . . . . . . . . . . . . . . . . 12
4.2 BIPOLAR . . . . . . . . . . . . . . . . . . . . . . 12
4.3 COMPARE . . . . . . . . . . . . . . . . . . . . 12
4.4 MINRE . . . . . . . . . . . . . . . . . . . . . . . . . 12
5 Implementation of algorithm . . . . 16
5.1 Representing hypergraph . . . . . . 16
5.2 Speeding up the algorithm . . . . 16
5.3 Input and output . . . . . . . . . . . . . . 17
5.4 Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
5.4.1 Package main . . . . . . . . . . . . 17
5.4.2 Package helper . . . . . . . . . . . 18
5.4.3 Package generator . . . . . . . 18
6 Experiments . . . . . . . . . . . . . . . . . . . . . . 19
6.1 Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
6.2 Example of using the program . 19
6.3 Results . . . . . . . . . . . . . . . . . . . . . . . . . 20
6.3.1 Correctness of the algorithm . . . . . . . . . . . . . . . . . . . 20
6.3.2 Speed of algorithm . . . . . . . 21
6.3.3 Time complexity of the
algorithm . . . . . . . . . . . . . . . . . 22
7 Extension of program . . . . . . . . . . . . 26
7.1 Example of use . . . . . . . . . . . . . . . . . 26
8 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . 29
vii
Tables / Figures
3.1. Orthogonal triads . . . . . . . . . . . . . .
3.2. Orthogonal tetrads . . . . . . . . . . . . .
6.1. Proof of OMP not being concrete . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.2. Speed of algorithm . . . . . . . . . . . . .
6.3. Speed of faster algorithm . . . . . .
6.4. Speed of the algorithm for
Gn,k graphs . . . . . . . . . . . . . . . . . . . . .
2.1. Experiment from Example 2.1. . .3
2.2. Greechie diagrams from Examples 2.1. and 2.2.. . . . . . . . . . . . . .5
3.1. Kochen-Specker diagram . . . . . . . 10
4.1. Hasse and Greechie diagrams
of E6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4.2. All two-valued states for E6 . . . 15
6.1. Example of OMP that is not
concrete . . . . . . . . . . . . . . . . . . . . . . . . . 21
6.2. Two-valued probability measures on the pentagon . . . . . . . . . . 23
6.3. Block Fn . . . . . . . . . . . . . . . . . . . . . . . . 24
6.4. Blocks Gn,k . . . . . . . . . . . . . . . . . . . . . 24
6.5. Hypergraph Gn,k . . . . . . . . . . . . . . . 25
11
11
21
22
22
22
viii
Chapter
Intro
1
Quantum mechanics, formulated at the beginning of 20th century, is one of the most
important branches of physics. Quantum mechanics deals with phenomena of the microworld where laws of classical physics do not apply.
Quantum mechanics describes particles by the wave function, a complex function
of spacetime. Though we know particles’ wave function we do not know everything
about its properties. We can only predict probability of values of certain property, eg.
position or momentum. Heisenberg uncertainty principle limits accuracy with which
we can know values of certain pairs of properties (eg. position and momentum).
Quantum mechanics claims measured properties of particles do not have definite
value until they are measured and thus the observed value is created as a result of
measurement. Some renowned physicists, eg. Einstein, were convinced that quantum
theory is insufficient and would be replaced by so called Hidden Variables Theory.
Irish physicist J.S. Bell however showed that Hidden Variables Theories are not
possible.
Premises of Hidden Variable Theory:[1]
Value definiteness: All observables defined for a QM system have definite values at
all times.
Non-contextuality: If a QM system possesses a property (value of an observable),
then it does so independently of any measurement context, i.e. independently of how
that value is eventually measured.[1]
1.1
Thesis organisation
In the second chapter we will introduce basic definitions.
In the third chapter we will review most important results regarding Hidden Variables
Theories.
In the fourth chapter we will review programs for investigation of concrete logics.
In the fifth chapter we will discuss implementation of the algorithm and in the following chapter we will discuss testing of the algorithm on various hypergraphs.
In the penultimate chapter we will discuss possibility of extending the program.
In the last chapter we will conclude the thesis.
1
Chapter 2
Preliminaries
The classic probability model was successful in many tasks, mostly as the basis of
statistics. However there are at least two reasons for its revision. Some systems violate
the assumptions of the classical theory and require a more general probability model.
This brings new mathematical problems worth attention.[2]
Quantum mechanics has been the first field which required a revision of the probability theory. Some events cannot be tested simultaneously due to the uncertainty
principle. Therefore there is no reason to assign a probability to their conjunction (disjunction, etc.) if such a phenomenon is not observable. This gives us more freedom in
the probabilistic description of the system. Without this modification, the theory did
not allow to explain phenomena occurring in quantum physics.[2]
In a classical system, the observable events form a Boolean algebra. The states (2.1.1)
are described by a mapping which assigns to each event its probability. So the states
may be identified with probability measures.[3]
The logic of quantum mechanics is more general – it is non-distributive. For its
system of events, several corresponding algebraical structures were suggested, e.g., orthomodular lattices, orthomodular posets, etc.[3]
2.1
Motivating examples
In this section, we present several physical experiments which demonstrate some quantum phenomena and which are described by simple orthomodular structures. We will
refer to them for demonstration of different descriptions and features of orthomodular
structures.
Example 2.1. [2][3] Let us assume that we observe a firefly in a box arranged as in
Figure 2.1. The firefly can move between the quadrants. Assume it is glowing all the
time. An observer at point A can distinguish whether the firefly is in the left or in the
right side of the box. Similarly the observer at point B can tell whether the firefly is in
the upper or in the bottom part of the box. In the classical case it would be possible
to place two observers A, B and distinguish four states corresponding to the presence
of the atom in particular quadrants.
In quantum systems, however, a simultaneous observation is often impossible. Measurements are destructive (they change the state of the system irreversibly) eg. a single
photon can be observed only once. The same situation, characterized by irreversible
changes of the states during measurements, is often found in many other fields, such as
sociology, psychology, AI etc. In this example, this phenomenon could be recreated by
having only one observer in one of the points. We may choose only one of two possible
observations, we cannot perform both at the same time. For the observer in place A the
0
0
observable events form a Boolean algebra A = {0, a, a A , 1} where a and a A represent
the event firefly is in the right side and in the left side of the box respectively, and 0
and 1 denotes the impossible and sure event respectively. Similarly for the observer in
0
the place B the observable events form a Boolean algebra B = {0, b, b B , 1} where b and
2
......................................
2.1 Motivating examples
Figure 2.1. Experiment from Example 2.1.[2]
0
b B represent the event firefly is in the upper half and in the bottom side of the box
respectively.
It is not possible to observe the conjunction of a and b and other events which
are supposed to exist in the classical probability theory. Our system is described by
two Boolean algebras, A and B. Their intersection is nonempty, because their bounds
(impossible and sure events) are the same: 0A = 0B , 1A = 1B . Now we omit the indices.
0
0
All observable events form a “logic” L = {0, a, a A , b, b B , 1} which inherits the ordering and negation of A and B.
Knowing the internal structure, we can consider four internal states of the system.
They are described by the results of the observation performed at the states, so we can
represent them as mappings from L to the set of truth values, {0, 1}. Each of these
states corresponds to one row in the following table:
s(a)
s(b)
0
0
1
1
0
1
0
1
All the remaining values follow the rules:
(S0) s(0) = 0
(S1) s(x0 ) = 1 − s(x).
All states s on L satisfy (S0) and (S1) and
s(a) = p, s(b) = q,
where p, q ∈ [0, 1] can be chosen arbitrarily.
3
2. Preliminaries
..........................................
Example 2.2. [2][3] We take the same system as in Example 2.1. with the only difference
the firefly can put out the light. This situation corresponds to a new event, d, with the
meaning the firefly is not observed from A. The events observable from position A form a
0
Boolean algebra A, isomorphic to 23 , having atoms A (A) = {a, d, (a∨A d) A }. Similarly
the events observable from B form a Boolean algebra B with atoms B (B) = {b, d, (b ∨B
0
0
0
d) B }. All observable events are L = {0, a, b, d, a ∨A d, b ∨B d, (a ∨A d) A , (b ∨B d) A , 1}
0A
0B
(d = d ). The pure states, states which cannot be expressed as non-trivial convex
combinations of different states, are given by the following table:
s(a)
s(b)
s(d)
0
0
1
0
0
1
0
0
0
0
0
1
All states s on L are uniquely determined by the values
s(a) = p, s(b) = q, s(d) = r,
where r ∈ [0, 1] is arbitrary and p, q ∈ [0, 1 − r].
The observable events from Examples 2.1. and 2.2. do not form a Boolean algebra
but a Boolean algebras. The basic structure for the description of such systems is an orthomodular lattice. It is a bounded lattice L (with bounds 0, 1 corresponding to the impossible and the sure event) with a unary operation 0 : L → L (orthocomplementation)
such that
a ≤ b ⇒ b0 ≤ a0
00
a =a
a ∨ a0 = 1
a ∨ b = a ∨ (a0 ∧ (a ∨ b))
Every orthomodular lattice is a union of Boolean algebras. Elements a, b ∈ L are
compatible if they are contained in a Boolean subalgebra of L. Although the lattice
operations ∧, ∨ are defined for any couple of elements of an orthomodular lattice, they
coincide with the conjunction and the disjunction only for compatible elements. By
quantum structures we mean not only orthomodular lattices, but also more general
structures which are not lattices, orthomodular posets.
Finite (and some infinite) quantum structures admit a representation by hypergraphs
called Greechie diagrams. Vertices represent atoms, i.e., minimal non-zero elements.
Edges represent maximal sets of mutually exclusive atoms (which correspond to maximal Boolean subalgebras). The experiments from Examples 2.1. and 2.2. can be
described by Greechie diagrams in Figure 2.2.
2.1.1
States
A quantum state of the system can be described by a probability measure which is also
called a state in this context. It is a mapping s : L → [0, 1] such that
s(1) = 1,
W
P
s( i∈N ai ) = i∈N s(ai ) if i 6= j.
whenever (ai )i∈N is a sequence of elements which are mutually orthogonal, ie. ai ≤ a0j .
We demonstrate it on the experiment from Example 2.2. For an observer at A, the
probabilities of elementary events must sum up to one,
4
......................................
2.1 Motivating examples
s(a) + s(a0 ) + s(d) = 1
Similarly, for the observer at B, we obtain the requirement
s(b) + s(b0 ) + s(d) = 1
These properties can be easily seen from the Greechie diagrams in Figure 2.2. States
on a quantum structure correspond to states on their Greechie diagrams, i.e., nonnegative evaluations of vertices which sum up to one over each edge. The state space
(=the set of all states) is closed under convex combinations.[2]
Figure 2.2. Greechie diagrams from Examples 2.1.(a) and 2.2.(b)[3]
2.1.2
Hidden variables conjecture
The quantum theory admits the existence of non-compatible events. As their conjunction cannot be tested, there is no need to assign any probability to it. Nevertheless,
there still could be a classical description of a non-classical system, although it would
remain unknown. This idea has led to the notion of hidden variables which could determine the results of quantum experiments in a classical way. Being not recognizable,
they are not in direct contradiction with the limited knowledge in quantum systems.[2]
The idea of hidden variables was strongly defended by Einstein, Podolsky, and Rosen
in [4]. This idea was rejected by Heisenberg, von Neumann, and others, but it remained
a topic of discussions for several decades. The definite mathematical argument against
it was the Gleason’s theorem [5] which characterizes probabilities (states) on the lattice
of closed subspaces of a Hilbert space. This is the principal example of a quantum
structure. Linear subspaces of a Hilbert space H (in case of infinite dimension, only
closed subspaces are taken) form an orthomodular lattice, L(H), where
0 = 0,
1 = H,
A ∧ B = A ∩ B,
A0 = {x ∈ H | ∀y ∈ A : x⊥y},
A ∨ B = Lin(A ∪ B),
where Lin denotes the closed linear hull.
5
2. Preliminaries
2.2
..........................................
Definitions
Definition 2.1. An orthomodular poset (OMP) is a partially ordered set L with the
largest element 1, the smallest element 0, and unary operation 0 called orthocomplemation on E satisfying
x00 = x
x ≤ y ⇒ x0 ≥ y 0
x ≤ y0 ⇒ ∃ x ∨ y
x ∨ x0 = 1
x ≤ y ⇒ ∃z ≤ x0 (y = x ∨ z)
Definition 2.2. Let A be a Boolean algebra. A state on A is a mapping s : A → [0, 1]
such that
s(1) = 1,
a, b ∈ A; a ∧ b = 0 ⇒ s(a ∨ b) = s(a) + s(b).
The state in the above definition is finitely additive.
Definition 2.3. A state is called two-valued if it attains only the values 0 and 1.
Definition 2.4. A hypergraph is a couple H = (V, ε)
S where V is a nonempty set and ε
is a covering of V by nonempty subsets of V (i.e. ε = V ). The elements of V and ε
are called vertices and edges respectively.
Definition 2.5. Two hypergraphs H1 = (V1 , ε1 ) and H2 = (V2 , ε2 ) are isomorphic if
there is a one-to-one mapping i : V1 → V2 such that ε2 = {i(E) : E ∈ ε1 }.
Definition 2.6. Let Ω be a set. A concrete logic on Ω is a collection, E, of subsets of Ω
satisfying
Ω∈ E
X ∈ E ⇒ Ω\X ∈ E
X, Y ∈ E, X ∩ Y = ∅ ⇒ X ∪ Y ∈ E
When we want to refer to the domain, we speak of T
a concrete logic (Ω, E).
If {Ei } is a family of concrete logics on Ω, then Ei is a concrete logic as well.
Therefore, for an arbitrary family G = {Gi } of subsets of Ω there exists the least, with
respect to inclusion, concrete logic on Ω, l(G), containing all Gi . In this case, Gi are
called generators, and l(G) is referred to as generated by Gi .
Definition 2.7. A set S of states on an OMP L is called full (order determining) if
∀a, b ∈ L: a b there is a state s ∈ S such that s(a) s(b).
Definition 2.8. The set of states on L is called S(L).
Definition 2.9. The set of all two-valued states on L is called S2 (L).
Definition 2.10. An OMP L is isomorphic to a concrete logic iff S2 (L) is order determining.[6]
In this case, we call L as a set representable logic; a representation for L is an arbitrary
concrete logic isomorphic to L as an OMP.
Definition 2.11. Every concrete logic isomorphic to OMP L is called a representation
for L.
Definition 2.12. A representation (Ω, E) is said to be minimal providing Ω is a minimal
(under inclusion) full collection of two-valued states.
Definition 2.13. A representation (Ω, E) of OMP L is called total if Ω = S2 (E).
6
..........................................
2.2 Definitions
Definition 2.14. The minimal nonzero elements of an OMP L are called atoms; we
denote by A(L)
W the set of all atoms in L. An OMP L is called atomistic provided that
∀x ∈ L (x = {a ∈ A(L) | a ≤ x}).
Definition 2.15. Let n be a positive integer, En is defined as the OMP whose Greechie
diagram is a (proper) n-polygon with three atoms on each side. The automorphism
group of En is generated by the rotations and symmetries.[7]
Denote by P0 , P1 , . . . , Pn−1 the vertices of the n-polygon. Obviously a two-valued
state on En is completely defined by the values on the vertices. So, it is sufficient to
indicate the vertices on which a two-valued state equals 1 (in other vertices the state
value equals 0 by default).
Definition 2.16. An orthomodular poset L is rich ⇐⇒ ∀ a,b ∈ L, a 6⊥ b ∃ state
s ∈ S(L): s(a) = s(b) = 1.
Definition 2.17. An orthomodular poset L is concrete ⇐⇒ ∀ a,b ∈ L, a 6⊥ b ∃ state
s ∈ S2 (L): s(a) = 1, s(b) = 1.[6]
7
Chapter 3
Important results in question of nonexistence
of hidden variables
3.1
EPR Paradox
EPR paradox is a thought experiment with which its creators, Albert Einstein, Boris
Podolsky, and Nathan Rosen, tried to prove that the wave function is not sufficient
to the whole description of physical reality. “While we have thus shown that wave
function does not provide a complete description of the physical reality, we left open the
question of whether or not such a description exists. We believe, however, that such a
theory is possible.”[4] Einstein, Podolsky, and Rosen came up with an argument against
completeness of quantum mechanics. In other words that there are some concepts of
reality which are not described by quantum mechanics. They agreed there must exist
deeper layer of reality using some hidden variables that can describe reality in more
detailed way than quantum mechanics could. This statement leads to paradoxes. One
paradox claims that two particles can interact with each other in a way that would
permit to measure both their position and momentum more precisely than what permits
Heisenberg Uncertainty Principle under condition measuring one particle immediately
influence the other to prevent it. It would mean the particles are exchanging information
at a speed faster than the speed of light, that is impossible according to Einstein’s
Theory of Relativity.
3.2
Gleason’s Theorem
Definition 3.1. Let q ∈P
H, kqk = 1 on P
L(H) then the state sq on L(H), defined by
sq (Lin({y1 , . . . , yn })) = ni=1 (q · yi )2 = ni=1 cos2 ^(q, yi ) for every orthonormal basis
(y1 , . . . , yn ) of space H, is called a vector space.
Theorem 3.1. Let H be separable Hilbert space of dimension at least three. Then all
states on L(H), where L(H) is a lattice of projections on H, are convex combinations
of vector states.
A consequence of Gleason’s Theorem is that L(H) allows no two-valued probability
measures, thus disproving Hidden Variables Theory.
3.3
Bell’s theorem
John Bell showed that if local hidden variables existed it would be possible to make an
experiment with quantum entanglement whose result would satisfy Bell inequalities. If
hidden variables do not exist then the Bell inequalities would not be satisfied. It turned
out quantum probabilities do not satisfy these inequalities.
8
....................................
3.3.1
3.4 Kochen-Specker Theorem
Bell inequalities
Let (L, S) be a system where L is an orthomodular σ-lattice and S is a set of states on
L. Let s ∈ S, a, b, c, d ∈ L.[8]
s(a) + s(b) − s(a ∧ b) ≤ 1
0 ≥ s(a ∧ b) + s(b ∧ c) + s(c ∧ d) − s(a ∧ d) − s(b) − s(c)
s(a) + s(b) + s(c) − s(a ∧ b) − s(a ∧ c) − s(b ∧ c) ≤ 1
s(a ∧ b) + s(b ∧ c) + s(c ∧ d) − s(a ∧ d) − s(b) − s(c) ≥ −1
3.4
Kochen-Specker Theorem
In a Hilbert space of dimension ≥ 3 there is a set of observables, generalizations of the
random variables in quantum structures, for which it is impossible to assign outcomes
in a way consistent with quantum mechanics formalism (i.e., in a way that all functional
identities satisfied by mutually commuting observables are also satisfied by the values
assigned to them in each individual system).[9]
We have spin-1 quantum system that has components in three mutually perpendicular
directions Sx , Sy , Sz . We know that the projection of spin-1 system along arbitrary
chosen axis can give three results: eigenvalues −1,0,1. Observables of our interest
are squares of Sx , Sy , Sz that can have eigenvalues 0,1. Additionaly, these squares
are commuting and nothing prevents us from measuring them simultaneously. From
quantum mechanics we have equation Sx2 + Sy2 + Sz2 = s(s + 1) = 2. It follows that two
of the values have to be 1 and the third has to be 0. If we could find quantum state
in which the result of measuring of any three observables, that are in an orthogonal
triad, is not possible to realize with any assignment of 0s and 1s satisfying condition
s(s + 1) = 2 then we would disprove an existence of Hidden Variable Theory. See the
proof below.
3.4.1
Geometric proof (colouring vectors in <3 )
Find a set of three-dimensional vectors such that it is impossible to colour vectors
red(1), blue(0) in such a way that every subset of three mutually perpendicular vectors
contains one blue and two red vectors. It can be shown if angle between two vectors
.
of different colour is less than tan−1 0.5 = 26.565◦ , we can find other vectors that form
subset with original two vectors and it is impossible to colour them according to the
rules.[10]
We choose unit vector z and mark it blue. We choose vector a, a = z + αy, 0 < α <
0.5, laying in plane y − z as the second vector and mark it red.
1. Since vector z is blue, vectors x a y have to be red. Additionally all vectors in plane
x − y are red. Arbitrary vector c = βx + y has to be red.
2. Similarly all vectors in plane a − x are red. Even vector d = x/β − a/α has to be red.
3. Since a = z + αy, d is perpendicular to c = βx + y. Vectors c and d are red, thus
vector e = c + d has to be red.
4. If we express vector e as a sum of explicit forms of vectors c and d, we get e =
(β + β −1 )x − z/α
5. Since α < 0.5, then α−1 > 2. Since |β + β −1 | ranges between 2 and ∞ it is possible
to find such β that vector e lays along direction f = x − z. Change of sign β will
result in the second direction g = −x − z.
9
3. Important results in question of nonexistence of hidden variables
.....................
Figure 3.1. Kochen-Specker diagram[11]
6. Vector e is red independently on a choice of parameter β, thus vectors f and g have
to be red. Similarly all vectors in plane f − g are red.
7. Vector z = −0.5f − 0.5g lays in plane f − g and thus has to be red, however at the
beginning we marked vector z blue. This leads to contradiction.
3.4.2
Peres’ proof for L(<3 ) and L(<4 )
Let u1 ...uN be a set of vectors forming an orthonormal basis. Let N matrices Pm =um u†m ,
m = 1, . . . , N , be projection operators on vectors um . These matrices are commuting
and their sum is 1. There exist N different ways of assigning value of 1 to a matrix
(i.e. assign 1 to a vector and 0 to N − 1 other vectors). We assume several different
orthogonal bases which can share some unit vectors. We assume that if a vector is
found in more than one basis its value is always the same. This assumption leads to a
contradiction as Kochen and Specker proved using 117 vectors.
Peres came up with a set of real three-dimensional rays (vectors) from the center of
a cube to its surface in [12]. Vectors end in the center of three sides, six edges, twelve
centers of edges, and twelve vertices of the inner cube.
We now assign a value to each ray; 0 (blue) or 1 (red). When we mark one ray blue
all perpendicular rays have to be red. We choose a triplet of mutually orthogonal rays
(triads) and we mark one ray
blue (in table denoted by bold).
√ in each triad √
(1 denotes -1, 2 denotes 2, 2 denotes − 2)
In the Table 3.1. the first, fourth, and the last row contain vectors 100, 021 a 012.
These rays are red and perpendicular which is contradiction. Proof for four dimensions
is analogous. It requires only 24 rays.
In the Table 3.2. the first, third, and fifth row there are vectors 0110, 0110, 1001,
and 1001. These four vectors are red and mutually orthogonal, it again leads to contradiction.
10
....................................
3.4 Kochen-Specker Theorem
Orthogonal triads
Other perpendicular vectors
001
101
011
112
102
211
201
112
012
121
110 110
100
101
011
112
201
011
010
110
100
101
010
010
100
110
010
211
102
111
021
121
201 021
211
102
112
021
121
012
Table 3.1. Orthogonal triads
Orthogonal tetrads
1000
1100
1111
1010
1111
0100
1100
1111
1010
1111
0010
0011
1111
0101
1111
0001
0011
1111
0101
1111
Other perpendicular rays
0011 0011 0101 0101 0110 0110
1111 1111 1111 1111
1010 1001
1111
1001
Table 3.2. Orthogonal tetrads
3.4.3
Cabello proof for L(<4 )
Cabello proved non-existence of two-valued state on L(<4 ) using 18 different vectors in
[13]. In every row there is a quadruplet of orthogonal vectors. We assign value of 1 to
exactly one vector, the other three will be assigned value of 0. If the vector appears in
more than one basis we assume it has constant assignment then it can be shown it is
impossible to find two-valued assignment.
v(0, 0, 0, 1) + v(0, 0, 1, 0) + v(1, 1, 0, 0) + v(1, −1, 0, 0) = 1, (1)
v(0, 0, 0, 1) + v(0, 1, 0, 0) + v(1, 0, 1, 0) + v(1, 0, −1, 0) = 1, (2)
v(1, −1, 1, −1) + v(1, −1, −1, 1) + v(1, 1, 0, 0) + v(0, 0, 1, 1) = 1, (3)
v(1, −1, 1, −1) + v(1, 1, 1, 1) + v(1, 0, −1, 0) + v(0, 1, 0, −1) = 1, (4)
v(0, 0, 1, 0) + v(0, 1, 0, 0) + v(1, 0, 0, 1) + v(1, 0, 0, −1) = 1, (5)
v(1, −1, −1, 1) + v(1, 1, 1, 1) + v(1, 0, 0, −1) + v(0, 1, −1, 0) = 1, (6)
v(1, 1, −1, 1) + v(1, 1, 1, −1) + v(1, −1, 0, 0) + v(0, 0, 1, 1) = 1, (7)
v(1, 1, −1, 1) + v(−1, 1, 1, 1) + v(1, 0, 1, 0) + v(0, 1, 0, −1) = 1, (8)
v(1, 1, 1, −1) + v(−1, 1, 1, 1) + v(1, 0, 0, 1) + v(0, 1, −1, 0) = 1.(9)
The sum of right sides is 9. The left sides contain each vector twice thus the sum of
the left sides is an even number. Therefore this system of equations does not have a
solution. The number of vectors with a unit state is odd and even at the same time.
11
Chapter 4
Programs
I had not found any program that would deal with my problem. However I have discovered programs for investigation of concrete logics made by professor Foat Sultanbekov
of Kazan University. All programs had been written in Turbo Pascal. One of the programs, MINRE, could be used as an extension to my program as described in Chapter
7.
4.1
GENER
Let Ω be a finite set and G a family of subsets of Ω. Program GENER returns the
atoms and the blocks of the concrete logic l(G) generated by G.
4.2
BIPOLAR
This program finds all atoms in a bipolar set of concrete logic.
4.3
COMPARE
This program compares any two collections of sets of nonnegative integers. If these
collections are not equal, then their differences will be written in two files.
4.4
MINRE
This program is the most useful regarding the topic of the thesis. It would be possible
to use MINRE as an extension of my own program. It finds all minimal and orderdetermining subsets of Ω. (E is set representable logic and (E, Ω) is a representation
for E.)
The input of the program is file *.dmr. The user should input card Ω in 3rd line and
the number of atoms of E in 5th line. Atoms of E should be input in the 9th line.
The code below is an example of the use of the program. The use is illustrated
on concrete logic E6 , an orthomodular poset whose Greechie diagram is a hexagon
with three atoms on each side. The two-valued state on E6 is completely defined by
the values on vertices Pi , i = 0 . . . 5, of the hexagon. We can describe set S2 (E6 ) =
{a0 , . . . , a5 , b0 , . . . , b5 , c0 , c1 , d0 , d1 , d2 , e} this way:
ak (Pk+1 ) = ak (Pk−1 ) = 1, (k = 0 . . . 5)
bk (Pk ) = 1, (k = 0 . . . 5)
ck (Pk ) = ck (Pk+2 ) = ck (Pk+4 ) = 1, (k = 0, 1)
dk (Pk ) = dk (Pk+3 ) = 1, (k = 0, 1, 2)
12
...........................................
4.4 MINRE
and the values on the remaining vertices P0 , . . . , P5 are zero (in particular, state e
vanishes at P0 , . . . , P5 ). Indices of vertices are considered modulo 6.
The total representation has 18 elements. We number the states the following way:
bi := i + 1, (i = 0 . . . 5), e := 7, ai := 8 + i, (i = 0 . . . 5), ci := 14 + i, (i = 0, 1), di :=
16 + i, (i = 0, 1, 2). All the two-valued states on E6 are shown in Figure 4.2. The
example file e6 .dmr has the following form.
Enter number of all two-valued states on the logic, a natural
number between 2 and 255, on the third line:
18
Enter number of atoms (more than 1):
12
Enter atoms of a logic (elements of atoms are natural numbers
between 1 and 255 at least one interval after each; each atom
should start a line):
1 9 13 14 16
2 8 10 15 17
3 9 11 14 18
4 10 12 15 16
5 11 13 14 17
6 8 12 15 18
3 4 5 6 7 11 12 18
1 4 5 6 7 12 13 16
1 2 5 6 7 8 13 17
1 2 3 6 7 8 9 18
1 2 3 4 7 9 10 16
2 3 4 5 7 10 11 17
Enter logic automorphisms (each permutation on a new line;
with at least one interval after each number):
2 3 4 5 6 1 7 9 10 11 12 13 8 15 14 17 18 16
3 4 5 6 1 2 7 10 11 12 13 8 9 14 15 18 16 17
Here each atom represents one vertex of the hexagon. Eg. the first atom tells us that
vertex Pi is assigned 1 in following states: b0 , a1 , a5 , c0 , and d0 .
MINRE offers also full output which returns all representations including the authomorphic representation.
Minimal representations of the logic.
Representations of 10 elements:
C1(2): 1 3 5 8 10 12 14 16 17 18
C2(1): 7 8 9 10 11 12 13 16 17 18
(2 classes)
Representations of 11 elements:
C3(1): 1 2 3 4 5 6 14 15 16 17 18
(1 classes)
Representations of 12 elements:
C4(2): 1 3 5 8 9 10 11 12 13 16 17 18
C5(6): 1 5 7 8 9 10 11 12 14 16 17 18
C6(6): 1 3 4 5 6 8 10 14 15 16 17 18
(3 classes)
Representations of 13 elements:
C7(3): 1 2 4 5 8 9 10 11 12 13 16 17 18
C8(6): 1 3 4 6 8 9 10 11 13 15 16 17 18
C9(3): 1 3 4 6 8 10 11 13 14 15 16 17 18
(3 classes)
Representations of 14 elements:
C10(6): 1 4 5 6 7 8 9 10 11 14 15 16 17 18
(1 classes)
Number of all minimal representations is 36
13
4. Programs
...........................................
and number of all equivalence classes is 10
That"s all.
Computing time: 0 hours; 0 minutes; 0,33 seconds.
The program found 10 minimal representations of E6 .
E1 = a024 b024 c0 d;
E2 = a d e;
E5 = a01234 b04 c0 e d;
E8 = a01235 b0235 c1 d;
E3 = b c d;
E6 = a02 b02345 c d;
E9 = a0235 b0235 c d;
E4 = a b024 d;
E7 = a b0134 d;
E10 = a0123 b0345 c d e
where a12 denotes a1 , a2 , etc., and a denotes a0 . . . a5 and similarly for b,c,d. Eg. E1
denotes a minimal representation consisting of states a0 , a2 , a4 , b0 , b2 , b4 , c0 , d0 , d1 , d2 .
This program could be used as an extension to my program. This is described in
Chapter 7.
u
"
b
BZ
J
"
b
@
"
b
BJZ
@Z
"
b
" B J@Zb
" b
B J @ZZ
"
b
"
B J @ Zbb
"
" B J @ Z b
"
B
J @ ZZbb
" "0 0
b
0
0
0
B 8 J 90 @
0 Zu b
" 3 6
Bu
Ju @u10Z
u 4 u 50 u
u
u7
0bu 0 u 0
20 u"
10 uH
11
12 1
H
H
H
H
H
@HH@
@HH@
@HH@
@HH@
@HH@
@HH@
@H@
@H@
@H@
@H@
@H@
@H@
H@
H@
@
H
Hu
Hu
H
Hu1
@u HH
@u H@
u @u H@
u @u H@
u @u12
1 u @ub
"
11
b
"
Z
10
B
J
@
"
2 b3 Z 4 @ 5 J
6
7
8
9
B
"
b Z
b Z @ J
B
"
b Z @ J B
"
b Z
""
b Z@ J B
"
b
"
bZ@ J B
bZ@J B "
"
bZ
"
b@
Z
bJB "
u
@
JB
"
Z
b
1
0
5u
4 u
3 Tu
2 TTu
Tu
1
6u
u
12
7
u
T
Tu 8
T
Tu9
10
u
u
11
Figure 4.1. Hasse and Greechie diagrams of E6 . (In the Hasse diagram, elements 1, 10 are
marked twice.)
14
...........................................
@
s
s
@
@s
@
@s
@
s
W1 = {1, 4, 6, 8, 10}
s
@s
@
@
s
s
@
@
@
s
s
@
s
s
@
@
@
@s
@
s
W2 = {3, 6, 8, 10, 12}
s
s
@s
@
@
@
@
s
@s
W4 = {2, 4, 7, 10, 12}
W5 = {2, 4, 6, 9, 12}
s
s
s
@s
@
@
s
@
@s
@
s
W7 = {2, 4, 6, 8, 10}
s
@
@
@
s
s
@
@
@
s
W10 = {3, 7, 10, 12}
@
s
@
@s
s
@
@
@s
W13 = {1, 4, 6, 9}
@
s
@
@s
s
@
@
@
s
W16 = {1, 4, 7, 10}
s
@
@
@s
@
s
@
@
W8 = {3, 6, 8, 11}
@s
@
@
s
@
@
s
@s
W11 = {2, 5, 9, 12}
s
@
@
@
@
@s
@s
W14 = {1, 5, 9}
s
@
@
@
s
@
@s
@s
W17 = {3, 6, 9, 12}
s
@s
@
@
@
@s
@
s
W3 = {2, 5, 8, 10, 12}
s
@s
@
@
s
@
@s
@
s
W6 = {2, 4, 6, 8, 11}
s
@
@
@s
@
@s
@
s
W9 = {1, 5, 8, 10}
s
@s
@
@
s
@
@
s
@
W12 = {2, 4, 7, 11}
s
@
@
@
s
@
@
s
@
W15 = {3, 7, 11}
s
@s
@
@
@
@s
@
s
W18 = {2, 5, 8, 11}
Figure 4.2. All two-valued states for E6
15
s
4.4 MINRE
Chapter 5
Implementation of algorithm
In this section we will focus on implementation of the algorithm.
The algorithm finds two-valued state for each pair of non-orthogonal vertices in OMP
represented by hypergraph, ie. it finds if the OMP is concrete. Also the algorithm can
find total representation.
5.1
Representing hypergraph
The hypergraph on the input is stored in the textfile. Within the program the hypergraph is respresented by class Graph which has attributes numOfVertices storing the
number of vertices, numOfEdges storing the number of edges, edges - the list of edges,
automorphism mandatory attribute storing automorphisms, hashmap map where keys
are vertices and values are adjacent vertices, and resultlist storing two-valued states.
5.2
Speeding up the algorithm
My first version of the algorithm was pretty straightforward. It solved the task for every
possible combination of non-orthogonal vertices. This approach was not very fast. For
n vertices there are n(n+1)
combinations of pairs of vertices. This approach produced
2
a lot of duplicate values and since the program uses java.util.Set, which does not store
duplicates, to store the states there was a lot of useless computation. I improved the
algorithm with method removeDuplicateComb. This method is called when a two-valued
state is found. It removes all combinations of pairs of vertices with value 1 from a list
of pairs of non-orthogonal vertices to check. Eg. when the program finds a solution
for E6 (see 4.1) for vertices 1 and 4 - {1, 4, 7, 10}, then the method removes pairs
{4, 7}, {4, 10}, and {7, 10} from the list since {1, 4, 7, 10} is also the solution for the
removed pairs above.
Another great improvement was done by rewriting the method assignZeros in the
class Solver. This method is given a number of vertex v with value 1 as one argument
and assigns value 0 to all adjacent vertices. Originally this method iterated over all
edges in the graph, found every edge with vertex v and assigned 0s to all other vertices
in the edge. The speed of the algorithm using this method was tested on several graphs.
The results are shown in Table 6.2. and in the sixth column of Table 6.4.
Now upon reading the data the program makes hashmap whose keys are vertices
and values are lists of all adjacent vertices, eg. for E6 (see Figure 4.2.) for key 1 the
hashmap stores list {2, 3, 11, 12}. The hashmap is then used in method assignZeros. The
method uses vertex v as a key for hashmap and simply assigns value 0 to all vertices
adjacent to v. The speed of the algorithm using this improved method was tested on
the same graphs as in the previous case. You can see the results in Table 6.3. and in
the seventh column of Table 6.4.
16
.......................................
5.3
5.3 Input and output
Input and output
The input of the program is the text file determining a hypergraph. The hypergraph
should be represented by edges and numbered vertices. Each edge should be on a new
line. The user can input automorphisms by writing automorphism on the line after last
edge and then enter each automorphism on a new line (this can speed up the algorithm
for En hypergraphs by 40 % as shown in Section 6.2). The output of the program
depends on the result. If it is not possible to find the two-valued assignment for some
pair of non-orthogonal vertices then the program quits and prints the vertices for which
there is not any two-valued assignment. If the orthomodular poset represented by the
hypergraph is concrete then the program prints all two-valued states and stores them
in a text file.
5.4
Code
The structure of NetBeans project is the following (all files have .java extension):
|-- main/
| |-- Main
| |-- Solver
| |-- Edge
| |-- Graph
|-- helper/
| |-- Text
|-- generator/
| |-- Generator
5.4.1
Package main
Package main contains classes Main, Solver, Edge, and Graph. Class Main runs the whole
program. It is used to receive input and produce output. Class Solver finds whether the
given orthomodular poset given as a hypergraph is concrete or not. The main method
of this class is solve() which solves the hypergraph. If we are interested only in two
particular non-orthogonal vectors it is possible to call method initiate(int i, int j). This
method takes two arguments. Those arguments are integers representing two vertices
of the hypergraph. This method finds a two-valued state on the hypergraph subject
to verticei+1 = 1 and verticej+2 = 1. Class Edge represents individual edges of the
hypergraph. Class Graph represents the hypergraph given as input.
Method solve() is used for finding all two-valued states on given hypergraph. Firstly
this function calls method getCombinations(ArrayListhEdgei edges, int vertices) which
finds all pairs of vertices and assigns them either 1 for a non-orthogonal pair, or 0 for an
orthogonal pair. All pair of vertices are stored in an upper triangular matrix represented
by ListhIntegeri. Then the program tries to find a two-valued assignment by calling
method initiate(int i, int j) for each pair of non-orthogonal vertices. The assignment is
stored in ListhIntegeri bool. Each position in the list represents one vertex, it can have
values −1 for an unassigned vertex, 0 for a vertex with value 0, or 1 for a vertex with
value 1.
The method initiate takes two arguments, a pair of non-orthogonal vertices. It assigns
them value 1. Each vertex sharing an edge with either of the vertices is assigned value
0. The method then checks if there is an edge with n − 1 zeros assigned, where n is the
number of vertices in the edge. If so, 1 is assigned to the last unassigned vertex. Then
17
5. Implementation of algorithm
...................................
the recursive function rec(ListhIntegeri bool, int start) is called. This method assigns
1 to the first unassigned vertex, then it assigns 0 to all orthogonal vertices. Then it
recursively calls itself. If it fails it returns from recursion and tries to make a different
assignment. Thanks to this approach the program will always find some solution if
there exists at least one two-valued state.
If the given OMP is not concrete the program will return the first pair of nonorthogonal vertices for which there is no two-valued assignment.
5.4.2
Package helper
Package helper contains class Text which handles user interaction.
5.4.3
Package generator
Package generator contains class Generator. This class was used for generating hypergraphs for testing purposes. The hypergraphs generated by this class are described in
Chapter 6.
18
Chapter 6
Experiments
6.1
Data
I used two different sets of hypergraphs to test the algorithm. The first set contained
hypergraphs with known solutions. This set was used to test correctness of results
returned by the program. The second set of graphs was used for testing the speed and
limits of the algorithm. For this purpose I used two types of hypergraphs; En graphs
and graphs from Figure 6.5. generated by class Generator. Construction of the graph
from Figure 6.5. is shown in Figures 6.3. and 6.4. Firstly block Fn is created. This
block has n layers. Secondly block Gn,k is created by connecting k blocks Fn . Finally
three blocks Gn,k are connected together to form the graph from Figure 6.5.
6.2
Example of using the program
We show the use of the program on E6 . The numbering of vertices is shown in Figure
4.1. Input file e6.txt has the following form.
1 2 3
3 4 5
5 6 7
7 8 9
9 10 11
11 12 1
Each line represents one edge of the hypergraph. The program can be run from NetBeans IDE, or more simply from command line using command java -jar Program.jar
hname of file.txti. The user can enter the name of the file if it is present in the same
folder as Program.jar or he can input full path to the file. If the user inputs a correct file the program starts solving the problem. The program can take two optional
arguments -total and -set, -total option tells the program to find all two-valued states
on given hypergraph, option -set tells the program to make set representation of found
two-valued states and to generate *.dmr file used by program MINRE (for more details
and example run of the program with both optional arguments see Chapter 7).
If the solution is not found the program will show for which two non-orthogonal
vertices there is no two-valued assignment. If the solution is found the program will
output the found two-valued states (only if there are less than 500 two-valued states,
otherwise it will print the number of solutions and the time of computation), the number
of solutions, and the time of computation in seconds.
3,
2,
3,
1,
2,
7,
4,
6,
5,
4,
10, 12
7, 11
8, 11
8, 10
6, 8, 11
19
6. Experiments
..........................................
3, 6, 8, 10, 12
2, 4, 7, 10, 12
2, 4, 6, 8, 10, 12
1, 5, 9
1, 4, 6, 8, 10
1, 4, 7, 10
3, 6, 9, 12
2, 5, 8, 10, 12
2, 4, 6, 9, 12
2, 5, 8, 11
1, 4, 6, 9
Solutions found: 16
Computation time: 0.020266802
The program found the two-valued assignment for every pair of non-orthogonal vertices.
It did not find states W7 and W11 from Figure 4.2. because the two-valued states for
all pairs of vertices with value 1 from states W7 and W11 were already found.
6.3
6.3.1
Results
Correctness of the algorithm
The correctness of the algorithm was tested on several graphs with known solutions.
Here we list some of them.
Theorem 6.1. Hypergraph E5 is concrete.
See Figure 6.2. for a proof.
For this hypergraph the program will finish successfully. The two-valued states of
E5 returned by the program are shown below. In each row there is one two-valued
assignment. The numbers represents vertices with value 1. We can compare it with the
results in Figure 6.2.
3,
1,
1,
3,
1,
3,
2,
2,
2,
2,
2,
6,
4,
5,
6,
4,
7,
4,
4,
5,
5,
4,
8,
6,
8
9
7
10
6,
7,
9
8,
6,
10
8
8, 10
10
10
9
Theorem 6.2. Orthomodular poset in Figure 6.1. is not concrete.
Proof. Let non-orthogonal vertices 1 and 5 have value 1. All vertices that
share an edge with either vertex 1 or 5 must have value 0. Those vertices are
{2, 3, 4, 6, 7, 11, 12, 14, 20}. In the second column of Table 6.1. we can see that the edge
{6, 12, 17} has two vertices with value 0 and the vertex 17 has no value. Since there has
to be exactly one vertex with value 1 in each edge therefore vertex 17 must have value
1. All vertices that share an edge with vertex 17 must have value 0. Those vertices are
{15, 16, 18, 19}. Now there are some edges with two vertices valued 0 and one vertex
without value. Those edges are {{13, 14, 15}, {3, 24, 18}, {8, 2, 16}, {10, 4, 15}}. The
20
...........................................
6.3 Results
vertices {8, 10, 13, 24} must have value 1. However this leads to contradiction; in the
edge {23, 24, 13} there are now two vertices with value 1. QED.
Figure 6.1. Example of OMP that is not concrete. Eg. there is no two-valued assignment
for vertices 1 and 5.[14]
Edges
123
345
567
789
9 10 11
11 12 1
13 14 15
15 16 17
17 18 19
19 20 21
21 22 23
23 24 13
1 14 20
3 24 18
6 12 17
8 2 16
10 4 15
1st step
2nd step
3rd step
100
001
100
0??
???
001
?0?
???
???
???
???
???
100
0??
00?
?0?
?0?
100
001
100
0??
???
001
?00
001
100
0??
???
???
100
0?0
001
?00
?00
100
001
100
01?
?1?
001
100
001
100
0??
???
?11
100
010
001
100
100
Table 6.1. Proof of OMP from Figure 6.1. not being concrete.
6.3.2
Speed of algorithm
When the number of edges and vertices doubled the speed of the algorithm went
down about sixteen times. However the speed of the algorithm does not depend only
on the number of edges and vertices but also on the complexity of the hypergraph.
Hypergraphs G3,4 and E100 have similar number of edges and vertices but the graph
E100 required about six times more time to finish.
When we calculate time per one solution for graphs G3,i , where i = 3, . . . , 7, we will
see that time needed to finish in each instance doubled.
21
6. Experiments
..........................................
En
Time (using automorphism) [s]
Time [s]
0.0054
0.6353
10.19
163.5
0.0036
1.118
18.37
304.8
E5
E50
E100
E200
Table 6.2. Speed of algorithm
En
Time (using automorphism) [s]
Time [s]
0.0025
0.4765
7.732
120.6
0.0058
0.8376
13.20
215.1
E5
E50
E100
E200
Table 6.3. Speed of faster algorithm
Gn,k
Vertices
Edges
Pairs of non-orthogonal
vertices
Solutions
Time [s]
Time using faster
algorithm [s]
G3,3
G3,4
G3,5
G3,6
G3,7
G4,3
G5,3
159
204
249
294
339
212
265
96
120
144
168
192
122
148
12561
20706
30876
43071
57291
22366
34980
1191
1924
2990
4304
5857
2507
4303
1.575
4.411
11.54
31.95
91.34
6.056
15.25
0.9169
2.537
6.375
16.49
45.71
2.868
6.769
Table 6.4. Speed of algorithm for Gn,k graphs
The use of automorphism improved the speed of the algorithm for En graphs greatly.
It took only about 60 % of time to solve it. The improved algorithm described in
Section 5.2. is about 30 % faster than the previous one.
6.3.3
Time complexity of the algorithm
The algorithm uses backtracking to find the two-valued assignment for a pair of nonorthogonal vertices. Hence the worst case time complexity is O(n!), where n is the
number of vertices. This time complexity is reached when the program tries to find the
total representation. Therefore it is not recommended to use the program to find the
total representation of big hypergraphs. Eg. for En the size of total representation can
be found by this recursive formulas
s0 = 4,
s1 = 7,
si = si−1 + si−2 , i = 2 . . . ∞,
where s0 is a size of total representation of E3 , s1 is a size of total representation of
E4 etc. In the best case the function rec will need O(n · k) time to find one two-valued
assignment, where n is number of vertices and k is number of vertices with value 1.
There are O(n2 ) pairs of non-orthogonal vertices therefore the resulting time complexity
will be O(n3 ).
22
...........................................
#c r
#
c
#
c
c
r
#
B
B
r
B
B
r
#c r
#
c
#
r#
B
B
B
B
c
c
r
#c r
#
c
#r
#
B
Br
B
B
#
#
B
Br
B
B
r
r
#c
#
c
c
r
c
c
c
r
r
#c r
#
c
#r
c
c
#
B
B
r
B
Br
#c
#
c
#r
c
cr
#
B
B
B
Br
#c
#
c
#r
c
cr
#
B
Br
B
B
r
#c r
#
c
#r
c
c
#
B
Br
B
B
r
6.3 Results
r
#c
#
c
#
#
B
B
B
Br
r#
B
B
B
B
#
c
c
r
#c
#
c
r
c
cr
r
#c
#
c
#
#
B
Br
B
B
c
c
r
Figure 6.2. Two-valued probability measures on the pentagon.[15] Filled circles indicate
probability 1.
23
6. Experiments
..........................................
e
u1 e PPPPew1
PP
v2
PP
eP
x1 g
P
u2 e
PPew2
PP
p
PP
p
x2 g
p
p
p
p
p
p
p
p
p
eP
p
P
un e vn PPewn
PP
PP
xn g
v1
x1 e
x2 e
p
p
p
xn e
Fn
e y1
e y2
p
p
p
e yn
g y1
g y2
p
p
p
g yn
Figure 6.3. Block Fn . The symbol for the block is below.[16]
x1,1 e
x2,1 e
p
p
p
xk,1 e
e
pp
p
x1,n e
e
pp
p
x2,n e
p
p
p
e
p
p
p
pp
p
xk,n e
g gp p p g
x1 x2 xn
Fn
Fn
p
p
p
Fn
pp
p
e
ey1,n
e
p
pp
ey2,n
p
p
p
p
p
p
pp
p
e
eyk,n
ey1,1
ey2,1
p
p
p
eyk,1
gp p p g g
yn
p
p
p
xn e
y2 y1
Figure 6.4. Blocks Gn,k [16]
24
x1 e
x2 e
Gn,k
e y1
e y2
p
p
p
e yn
...........................................
6.3 Results
Figure 6.5. Hypergraph Gn,k created by connecting hypergraphs from Figure 6.3. and
Figure 6.4. used for testing the speed of the algorithm.[16]
25
Chapter 7
Extension of program
The program can return set representation and generate *.dmr file needed by program
MINRE. MINRE can find minimal representation for hypergraphs with at most 255
atoms.
The set representation is generated by method makeSetRepresentation() of class
Graph. This method iterates over each vertex in each two-valued assignment. It stores
numbers of assignments in which each vertex has value 1. It is stored in MaphInteger,
ListhIntegerii where the key is one of the vertices of the hypergraph and the value is a
list of two-valued assignments in which the vertex has value 1.
7.1
Example of use
For this example we used orthomodular poset E6 stored in file e6.txt. We run the
program from command line using command java -jar Program.jar e6 -total -set. The
program found all two-valued states. The states are listed below.
2,
3,
3,
1,
2,
3,
2,
2,
1,
2,
1,
1,
3,
2,
2,
2,
1,
3,
4,
7,
6,
5,
4,
6,
4,
4,
5,
5,
4,
4,
6,
5,
4,
5,
4,
7,
7, 11
10, 12
8, 11
8, 10
6, 8, 11
8, 10, 12
7, 10, 12
6, 8, 10, 12
9
9, 12
6, 8, 10
7, 10
9, 12
8, 10, 12
6, 9, 12
8, 11
6, 9
11
On each line there is one state. The numbers listed are vertices with probability 1.
The total representation of E6 consists of 18 states (see Section 4.4.). See the generated E 6.dmr file below.
Enter number of all two-valued states on the logic, a natural
number between 2 and 255, on the third line:
18
Enter number of atoms (more than 1):
12
Enter atoms of a logic (elements of atoms are natural numbers
26
........................................
7.1 Example of use
between 1 and 255 at least one interval after each; each atom
should start a line):
4 9 11 12 17
1 5 7 8 10 14 15 16
2 3 6 13 18
1 5 7 8 11 12 15 17
4 9 10 14 16
3 5 6 8 11 13 15 17
1 2 7 12 18
3 4 5 6 8 11 14 16
9 10 13 15 17
2 4 6 7 8 11 12 14
1 3 5 16 18
2 6 7 8 10 13 14 15
Enter logic automorphisms (each permutation on a new line;
with at least one interval after each number):
Eg. the first atom 4 9 11 12 17 denotes numbers of assignments in which vertex 1 has
value 1.
The program does not enter spatial automorphisms. However if the user wants to
use them he can edit the file in Notepad++ or a similar text editor. The output of
program MINRE is shown below.
Minimal representations of the logic.
Representation of 10 elements:
M1: 1 2 3 4 8 10 12 13 16 17
M2: 4 5 6 7 10 12 13 16 17 18
M3: 1 2 3 9 11 12 13 14 15 16
(3 representations)
Representation of 11 elements:
M4: 5 6 7 9 11 12 13 14 15 16 18
(1 representations)
Representation of 12 elements:
M5: 1 2 3 4 8 9 10 11 12 13 15 16
M6: 1 2 3 4 8 9 12 13 14 15 16 17
M7: 4 5 6 7 9 10 11 12 13 15 16 18
M8: 4 5 6 7 9 12 13 14 15 16 17 18
M9: 1 2 3 4 5 6 7 10 12 13 16 17
M10: 1 2 3 4 10 11 12 13 14 15 16 17
M11: 1 2 4 5 6 8 10 12 13 16 17 18
M12: 1 3 4 6 7 8 10 12 13 16 17 18
M13: 2 3 4 5 7 8 10 12 13 16 17 18
M14: 1 2 3 8 9 10 11 12 13 14 16 17
M15: 1 2 5 6 9 11 12 13 14 15 16 18
M16: 1 3 6 7 9 11 12 13 14 15 16 18
M17: 5 6 7 9 10 11 12 13 14 16 17 18
M18: 2 3 5 7 9 11 12 13 14 15 16 18
(14 representations)
27
7. Extension of program
......................................
Representation of 13 elements:
M19: 1 2 3 4 6 7 9 10 11 12 13 15 16
M20: 1 3 4 6 7 9 10 11 12 13 15 16 18
M21: 1 2 3 4 5 6 9 12 13 14 15 16 17
M22: 1 2 4 5 6 9 12 13 14 15 16 17 18
M23: 1 2 3 4 6 7 10 11 12 13 15 16 17
M24: 1 2 3 4 5 7 10 11 12 13 14 16 17
M25: 1 2 3 4 5 6 10 12 13 14 15 16 17
M26: 1 2 4 5 6 10 12 13 14 15 16 17 18
M27: 1 3 4 6 7 10 11 12 13 15 16 17 18
M28: 2 3 4 5 7 10 11 12 13 14 16 17 18
M29: 1 2 3 5 7 9 10 11 12 13 14 16 17
M30: 2 3 5 7 9 10 11 12 13 14 16 17 18
(12 representations)
Representation of 14 elements:
M31: 1 2 4 5 6 8 9 10 11 12 13 15 16 18
M32: 1 3 4 6 7 8 9 12 13 14 15 16 17 18
M33: 2 3 4 5 7 8 9 10 11 12 13 15 16 18
M34: 2 3 4 5 7 8 9 12 13 14 15 16 17 18
M35: 1 2 5 6 8 9 10 11 12 13 14 16 17 18
M36: 1 3 6 7 8 9 10 11 12 13 14 16 17 18
(6 representations)
Number of all minimal representations is 36
.
That"s all.
Computing time: 0 hours; 0 minutes; 0,6 seconds.
28
Chapter 8
Conclusion
Let us summarize the content of the thesis. We have reviewed the most important
results in the study of hidden variables. We have reviewed the programs dealing with
investigations of concrete logics. Then we introduced the algorithm that will decide
whether an orthomodular poset is concrete or not. We have discussed results on various
hypergraphs. Finally we have reviewed the possibility of the construction of a setrepresentation.
We believe that the presented algorithm will be interesting for people involved in the
study of quantum structures and will be helpful in practice.
29
References
[1] Held, C.: The Kochen-Specker Theorem, The Stanford Encyclopedia of Philosophy
(Winter 2014 Edition), Edward N. Zalta (ed.), http://plato.stanford.edu/
archives/win2014/entries/kochen-specker/.
[2] Navara, M.: Probability Theory on Quantum and Fuzzy Logics. Professorial Lectures 6/2005, Czech Technical University, Praha, 2005.
[3] Navara, M.: State spaces of orthomodular structures. Rend. Istit. Mat. Univ.
Trieste 31 (2000), Suppl. 1, 143–201.
[4] Einstein, A., Podolsky, B., & Rosen, N.: Can quantum-mechanical description of
physical reality be considered complete?. Physical review, 47(10) (1935), 777.
[5] Gleason, A. M.: Measures on the closed subspaces of a Hilbert space. Journal of
Mathematics and Mechanics. 6(4) (1957), 885–893.
[6] Gudder, S.P.: Stochastic Methods in Quantum Mechanics. North Holland, New
York, 1979.
[7] Sultanbekov, F.: Set logics and their representations. International Journal of
Theoretical Physics, 32(11), 2177–2186.
[8] Pulmannová, S.: Hidden Variables and Bell Inequalities on Quantum Logics. Foundations of Physics. 32(2) (2002), 193–216.
[9] Macinska, L.: Kochen-Specker Theorem and Games. 2007. http://home.lu.lv/
˜sd20008/papers/essays/Kochen%20Specker%20%5bpaper%5d.pdf.
[10] Mermin, N.D.: Hidden variables and the two theorems of John Bell. Rev. Mod.
Phys. 65 (1993), 803–815.
[11] Kochen, S. & Specker, E.P.: The problem of hidden variables in quantum mechanics, Journal of Mathematics and Mechanics 17 (1967), 59—87.
[12] Peres, A.: Two simple proofs of the Kochen-Specker theorem. Journal of Physics
A: Mathematical and General 24 (1991), 175–178.
[13] Cabello, A. et al.: Bell-Kochen-Specker theorem: A proof with 18 vectors. Phys.
Lett. A 212 (1996), 183–187.
[14] Weber, H.: There are orthomodular lattices without non-trivial group-valued states:
A computer-based construction. J. Math. Analysis and Appl. 183 (1994), 89–93.
[15] Svozil, K.: Quantum Logic. Springer (1998).
[16] Mayet, R., Navara, M., Rogalewicz, V.: Orthomodular lattices with rich state
spaces. Algebra Universalis 43 (2000), 1—30.
30
Appendix A
Contents of CD
Attached CD contains the following:
..
..
.
Folder Program containing source code of the program
Folder Graphs containing graphs used for testing the program
Folder Pdf containing source files of this pdf
Program.jar
petrmat1 bp.pdf
31