Complexity with costing and stochastic oracles

Size: px
Start display at page:

Download "Complexity with costing and stochastic oracles"

Transcription

1 Complexity with costing and stochastic oracles Diogo Miguel Ferreira Poças Thesis to obtain the Master of Science Degree in Mathematics and Applications Examination Committee Chairperson: Prof. Maria Cristina Sales Viana Serôdio Sernadas Supervisor: Prof. José Félix Gomes da Costa Members of the Committee: Prof. André Nuno Carvalho Souto Prof. Luís Filipe Coelho Antunes July 2013

2 ii

3 Acknowledgements I would like to express my grattitude to my advisor, Félix Costa, for his invaluable dedication and guidance during the ellaboration of this thesis. I also want to thank him for providing me with important lessons and tips for a young mathematician doing research for the first time, and for helping me to get in touch with the scientific community on several occasions. I also want to thank Professor Amílcar Sernadas for his meta-guidance during the entirety of my MSc, and for presenting me a very realistic perspective of research and the future as an investigator. I like to thank all people in the Department of Mathematics of IST, and in the Computer Science Section, for their support and assistance provided when needed. Thanks also to Edwin Beggs, John Case and John Tucker, for their useful suggestions and appreciations during the course of this work. I want to express my grattitude to all my classmates, former classmates and colleagues that provided me with unmeasurable support and close friendship. I am also grateful to my old and recent friends in Scouting, for helping me to mantain my health of mind, body and spirit, and for their true friendship. In particular, I want to thank my friend Rafael Ribeiro also for his insights on some sections of the thesis dealing with Physics. Finally, I wish to give my very special thanks to my family, for their presence, support, interest and unconditional love. iii

4 iv

5 Resumo Pretende-se estudar nesta dissertação o poder computacional que se obtêm combinando um dispositivo digital, como a máquina de Turing, com um dispositivo analógico, como uma experiência física que serve de oráculo para a máquina. Definem-se os principais componentes destes sistemas híbridos, a que chamamos máquinas de Turing analógicas-digitais, e analiza-se o seu poder computational sujeito a recursos polinomiais. Investigam-se três tipos de oráculos motivados por experiências físicas, nomeadamente oráculos bilaterais, oráculos de limiar e oráculos de desvanecimento. O oráculo fornece informação qualitativa que auxilia a computação da máquina de Turing. Também se consideram variantes no protocolo entre a máquina de Turing e o oráculo, de modo que as questões ao oráculo sejam traduzidas para números reais com precisão infinita, precisão ilimitada ou precisão finita. Para cada caso são provadas minorações e majorações nas classes de complexidade computadas por estes sistemas. Palavras-chave: Complexidade computacional. Oráculo físico. Sistema híbrido. Teoria da medição. Complexidade não-uniforme. v

6 vi

7 Abstract The purpose of this dissertation is to study the computational power obtained when combining a digital device, such as the Turing machine, with an analog device, such as a physical experiment seen as an oracle to the machine. We define the components of such hybrid systems, which we call analog-digital Turing machine, and analyze their computational power subject to polynomial resources. We investigate three types of oracles motivated by experiments in the physical world, namely two-sided oracles, threshold oracles and vanishing oracles. The oracle provides qualitative information that helps the computation of the Turing machine. We also consider variations of the protocol between the Turing machine and the oracle, such that queries can be translated into real numbers with infinite precision, unbounded precision or finite precision. For each case we state and prove lower and upper bounds on the complexity classes computed by such systems. Keywords: Computational complexity. Physical oracle. Hybrid system. Theory of measurement. Non-uniform complexity. vii

8 viii

9 Contents Acknowledgements iii Resumo v Abstract vii List of Figures xi List of Abbreviations xiii Glossary xv Introduction 1 1 Two-sided Oracles Introdutory concepts On Turing machines On physical experiments On the interface Examples of two-sided experiments The Sharp Scatter Machine Experiment The Smooth Scatter Machine Experiment The Balance Scale Experiment Characterization of protocols in terms of precision Description and decidability of the AD machine The role of measuring algorithms Feasibility of the Physical Experiments Lower bounds on the AD machines for the SME The AD machine as a means to measure real numbers The AD machine as a means to produce fair coin tosses Some non-uniform complexity classes Encoding advice functions as wedge positions Main results Upper bounds on the AD machines for the SME The boundary numbers Probabilistic trees Main results Threshold Oracles Examples of threshold experiments The Spinal Neuron Experiment The Rutherford Scattering Experiment The Photoelectric Effect Experiment ix

10 2.1.4 The Broken Balance Experiment Characterization of protocols Lower bounds on the AD machine for the BBE The AD machine as a means to measure real numbers The AD machine as a means to produce fair coin tosses Main results Upper bounds Boundary numbers revisited Probabilistic trees revisited Upper bounds using boundary numbers as advice Upper bounds assuming explicit time Final remarks Vanishing Oracles Examples of vanishing experiments The Brewster Angle Experiment The Vanishing Balance Experiment Characterization of protocols Lower bounds on the AD machine for the VBE Measuring with the AD machine with infinite precision Measuring with the AD machine with unbounded precision Measuring with the AD machine with fixed precision Tossing coins with the AD machine Main results Upper bounds on the AD machine for the VBE Upper bounds in the first implementation Upper bounds in the second implementation Conclusion 77 Bibliography 81 A Additional proofs 84 A.1 Experimental time for the SmSME A.2 Experimental time for the BBE A.3 Experimental time for the BAE A.4 Generation of coin tosses A.5 BPP/log versus BPP//log A.6 On the size of logarithmic advices B Changing the Schedule 92 C Table of Bounds 95 Index 97 x

11 List of Figures 1.1 The sharp scatter machine experiment The smooth scatter machine experiment The balance scale experiment Protocol Shoot(IP ) Protocol Shoot(UP ) Protocol Shoot(F P, ɛ) Algorithm BinarySearch(IP ) Algorithm BinarySearch(UP ) Algorithm FreqCount(F P, ɛ, h) Behaviour of the oracle Turing machine M The boundary numbers Example of a probabilistic tree Induction step in Proposition The spinal neuron experiment The Rutherford scattering experiment The photoelectric effect experiment The broken balance experiment Protocol Mass(IP ) Protocol Mass(UP ) Protocol Mass(F P, ɛ) Algorithm BinarySearch(IP ) Algorithm BinarySearch(UP ) Algorithm FreqCount(F P, ɛ, h) The boundary numbers Induction step in Proposition The Brewster angle experiment The vanishing balance experiment Protocol Compare(1, IP ) Protocol Compare(2, IP, g) Algorithm BinarySearch(1, IP ) Algorithm BinarySearch(2, IP, g) Algorithm BinarySearch(1, UP ) Algorithm BinarySearch(2, UP, g) Algorithm FreqCount(P, h) Algorithm Simulate(1, IP ) Algorithm Simulate(1, UP, s) xi

12 3.12 Regions of a particular experiment Algorithm Simulate(1, F P, ɛ, σ, h) Algorithm Random(h) Algorithm Simulate(2, IP, g, h) Algorithm Simulate(2, UP, g, s, h) Regions of a particular experiment Algorithm Simulate(2, F P, ɛ, g, σ, h) A.1 The smooth scatter machine experiment A.2 The broken balance experiment A.3 The Brewster angle experiment xii

13 List of Abbreviations δ, γ, p, q probabilities, that is, real numbers in [0, 1] E ɛ I family of experiments fixed precision set of initial conditions E, V expected value and variance R τ T set of outcomes physical constant or experimental constant probabilistic tree ξ, e natural constants, usually in defining advice functions a, y unknown mass or unknown value b, c, d, k natural constants, usually as exponents BP P class of sets decidable by a probabilistic Turing machine in polynomial time C, D, E, F natural constants, usually multiplicative or additive C 3 the set of Cantor numbers f, f, g, g advice functions M M E,T,P Turing machine or oracle Turing machine analog-digital Turing machine n, l the size of a word in {0, 1} P T class of sets decidable by a deterministic Turing machine in polynomial time time schedule T exp experimental time function (arity 2) t exp experimental time function (arity 1) z, z 1, z 2, m, x 0, x 1, x 2, x 3, x 4 dyadic rationals z n cropping or padding of a dyadic rational z k, l k, r k boundary numbers, which are reals in (0, 1) xiii

14 AD machine analog-digital Turing machine BAE BBE BSE FP(ɛ) IP PEE RSE Brewster angle experiment broken balance experiment balance scale experiment fixed precision ɛ infinite precision photoelectric effect experiment Rutherford scattering experiment ShSME sharp scatter machine experiment SME scatter machine experiment SmSME smooth scatter machine experiment SNE UP VBE spinal neuron experiment unbounded precision vanishing balance experiment xiv

15 Glossary C n Given an open set U R and a function f : U R and a natural n, f is said to be of class C n if all derivatives f,..., f (n) exist and are continuous. O For a given function g over the natural numbers, we define O(g) as the class of functions f over the natural numbers such that there exists positive constants M and n 0 such that f(n) Mg(n) for all n > n 0. Ω For a given function g over the natural numbers, we define Ω(g) as the class of functions f over the natural numbers such that there exists positive constants M and n 0 such that f(n) Mg(n) for all n > n 0. ω For a given function g over the natural numbers, we define ω(g) as the class of functions f over the natural numbers such that for any positive real number ɛ there exists a positive constant n 0 such that f(n) ɛg(n) for all n > n 0. o For a given function g over the natural numbers, we define o(g) as the class of functions f over the natural numbers such that for any positive real number ɛ there exists a positive constant n 0 such that f(n) ɛg(n) for all n > n 0. dyadic rational A dyadic rational is a number of the form n 2 k where n is an integer and k a natural number. Any dyadic rational in [0, 1) has a unique binary expansion of the form 0.a 1 a 2 a k, a i {0, 1}. xv

16 tally set time constructible A tally set or unary set is a subset of 0, that is, a set whose words have the form 0 k. A function f : N N is said to be time constructible if there is a deterministic Turing machine M and a natural n 0 such that for any input word z of size z = n > n 0 the machine M halts after exactly f(n) steps. xvi

17 Introduction The main focus of computability and complexity theories is to study the limits of what can be computed or done in a feasible way. The main tool for studying these objects is the algorithm a sequence of instructions, executable in an unambiguous way by a machine, allowing to decide, for example, membership to a given set. A property of these algorithms is that they operate on a discrete set of data, using unbounded (yet finite) resources. Physical experiments, on the other hand, operate on a real world, which can be seen as continuous. However, the physical experiment can also be seen as a sequence of instructions, departing from an initial set of data and materials, and reaching an experimental result. The idea that physical experimentation can be seen as algorithmic is nicely presented in [GH86], where the notion of measurable number is proposed in parallel with the notion of computable number. In this dissertation we intend to bring together computability theory and physical experiments. We may imagine a model of computation based on a Turing machine with the possibility of performing physical experiments during a computation. We call this model the analog-digital Turing machine; the digital component is given by the Turing machine; the analog component is given by the physical experiment. The thesis of analog computation preceded digital computation. The first analog computers were used to solve differential equations and provided a great help in gunfire control during World War II. However, digital computation emerged and improved greatly in the last half century, surpassing analog computation in present days. Despite this, analog computation is regaining interest. Several examples of recent results include the optical computer for factorization ([Bla07]), the optical computer of Woods, Naughton ([WN05]), the dynamic and hybrid systems of Koiran, Cosnard, Garzon ([KCG94]) and Bournez ([BC96]) and also the neural networks of Siegelmann and Sontag ([Sie99, Sie95, SS95]). Most notably, in the work of Siegelmann and Sontag an analogy to the Church-Turing thesis was proposed, stating that analog devices do not extend polynomial-time computation beyond the non-uniform limit of P/poly. We found that a good way to articulate the interaction between the Turing machine and the physical experiment is the theory of relative computation, i.e, computation with oracles. We can make an analogy between this theory and the activity of a scientist in a laboratory - the Turing machine is the scientist, following a sequence of instructions; the oracle is the physical experiment, aiding the scientist. In modelling the physical experiment as an oracle, we are in fact implying that this dissertation could be seen as a study of the classes of sets decidable by some particular families of oracles. We could in fact make this study abstracting completely from the concept of physical experiment. However, the physical experiment is useful, not only as a motivating example of the theory, but also as a help in the understanding of the proof and techniques used. In addition, most of the results obtained are valid for a general family of oracles, including but not limited to the physical experiment that we use as example. The oracles used for representing physical experiments possess certain features: they model certain binary relations; they possess a computational consultation cost; and they may be stochastic. The two latter features represent a shift from the usual definition of oracles. In this dissertation all the information 1

18 relevant to one particular oracle may be condensed in a real number; in this way, we are basically working with a family of analog-digital devices that is parametrized by one real value. We now present a summary of the development of the theory of analog-digital Turing machines. In [BT07], Beggs and Tucker present the Scatter Machine Experiment, an experiment in Newtonian kinematics that can measure a real number encoding the position of a triangular wedge. Later in [BCLT08, BCLT09], Costa suggested a new idea and introduced the concept of analog-digital Turing machine, coupling the Scatter Machine Experiment with a Turing machine. It was shown that these machine could decide sets in P/poly or BPP//log, depending on the precision considered. For the case of infinite precision they have thus obtained the same class as Siegelmann and Sontag did with their neural networks. In [BCT10b] a new type of experiment was studied, the Collider Machine Experiment. This experiment diverged from the previous experiment in a fundamental way. The time taken for an experiment is not constant, and increases with the number of desired digits of precision. Thus, the concept of time schedule was introduced to deal with the growing costs of the experiment. As a consequence, the lower bounds of decidable sets dropped from P/poly to P/log and BPP//log, depending on the precision considered. In further papers [BCT12b] new experiences were studied with the same results. The above experiments could be characterized as two-sided, in the sense that we could approach the unknown value either by above or below. For this reason the techniques used were essentialy the same. However, in [BCT10d] two new kinds of experiments came across, namely threshold experiments (exemplified by the Rutherford Experiment) and vanishing experiments (exemplified by the Brewster Angle Experiment). It was hinted that these experiments could boost the computational power of a Turing machine to P/log and BPP//log, but for these experiments the previous techniques were not applicable. The main contributions from this work are as follows. First, a general form of the techniques for proving lower bounds is presented. The general formalism can be applied to every type of experiment that was studied so far. Second, more robust upper bounds are proved for the threshold experiments, using a new technique based on a different choice of advice. The new technique generalizes for twosided experiment, for which the former techniques were only applicable for polynomial cost experiments (such as the Sharp Scatter Machine) and for a very specific case of exponential cost experiments (seen in [BCT12a]). Third, the case of vanishing experiments is analised and the respective protocols are defined with rigour, with an additional degree of (im)precision, the time tolerance. For the case of upper bounds yet another technique is used that differs from the previous types. This dissertation is organized as follows. In Chapter 1 we study two-sided oracles and present the main concepts that are used throughout the thesis. We consider the Smooth Scatter Machine as our canonical model of two-sided experiments and provide lower and upper bounds. In Chapter 2 we focus on threshold oracles. We introduce the Broken Balance Experiment as our canonical model and we also present the new technique for proving upper bounds. Chapter 3 is devoted to vanishing oracles. In this chapter the canonical model is the Vanishing Balance Experiment. We present time precision and study its implications in the algorithms of measurement. We also provide lower and upper bounds for this class of experiments. The work done in this dissertation is the answer to two open problems of the research project of my advisor José Félix Costa, namely to determine the upper bounds of computational power of Turing machines coupled with oracles arising from deterministic and stochastic measurement of physical quantities of (a) a threshold type and (b) a vanishing type. 2

19 Chapter 1 Two-sided Oracles Since our objective is to analyze the power gained using certain oracles, we should begin by studying the most natural type of these oracles. As we will see, this corresponds to two-sided experiments. In this chapter we will also provide the introduction to this theory of coupling Turing machines with physical experiments. The chapter will follow recent paper on the subject such as [BCLT08, BCT10b, BCT12a, BCT12b]. 1.1 Introdutory concepts Our main object of study will be what we can define as an analog-digital Turing machine, or AD machine. So we must attempt to characterize such types of machines, and then characterize the complexity classes decided by such machines. According to [BCT12a], there are three important components of an analog-digital Turing machine: analog-digital Turing machine = Turing machine + physical experiment + interface. Thus we should describe each component individually On Turing machines Here we will just state the properties that our Turing machines will satisfy, mostly following [BCT10b]. The Turing machines that we consider are equipped with several tapes: one input tape for input and several work tapes for performing calculations. The control unit of our machine also has at least three special states to begin and end the computation: these are called the initial state, the accepting state and the rejecting state, respectively. The above means that we will be using our Turing machines mostly for the purpose of deciding sets. Ocasionally, very rarely, we will use a Turing machine to compute some value; in those sporadic cases we will replace the two last states by an halting state and we will equip the machine with an extra output tape for returning the result of the computations. Our Turing machines will be either deterministic, that is, with only one transition function, or probabilistic with two transition functions. The Turing machines that we will use in AD machines have additional properties: they will have one query tape for the purpose of instructing the physical experiment, and a finite amount of states that are used for interacting with the physical experiment: one of these is called the query state, and the others refer to each possible outcome of the experiment. For the time being we consider three outcomes, and thus three additional states: the yes state, the no state and the timeout state. We shall call oracle 3

20 Turing machines to these machines, but often we may refer to them as simply Turing machines. Observe that there is a difference between what we call oracle Turing machine and the usual definition; in the usual definition an oracle Turing machine has only two additional states, the yes state and the no state, which represent the possible answers of a query to the oracle (which is a set). However, in our definition the number of additional states is arbitrary (but finite) and equals the number of possible outcomes On physical experiments In this work we will take a look at a lot of different physical experiments. There are many features that they have in common, namely: some initial conditions that can be tuned to some specific values; a physical process, depending on the initial conditions, which takes a (possibly infinite) amount of time; a finite set of possible results or outcomes. Thus we will say that a physical experiment is completely characterized by its set of initial conditions I, its set of outcomes R, its experimental time function t exp : I R and its outcome function r : I R. On a later section we will see examples of physical experiments On the interface The interface between the Turing machine (digital) and the physical experiment (analog) has two main components. First, we must describe the protocol, that is, the sequence of instructions that defines a physical experiment. The protocol should begin by reading a query word from the query tape, and it should end by resuming the computation of the Turing machine in a particular state. Second, we must state a time schedule, first mentioned in [BCT10b]. In most cases we will want some way to interrupt a physical experiment that has been going on for too much time. We introduce the concept of a time schedule, that is used to specify the time allowed for the experiment. Definition 1.1. A time schedule T is a time-constructible function T : N N. This condition can be weakened, that is, we could require only that T is computable and that T (n) n. The reason is that any computable function f can be majorized by some time-constructible function f ; see [BDG95]. 1.2 Examples of two-sided experiments In this section we will present our first model of physical experiment, the Scatter Machine Experiment (or SME for short), in its two variants (sharp and smooth). This should be useful to clarify the components introduced in the previous section, and to get an insight on the rest of the work. We will also present another example of a physical experiment, the Balance Scale Experiment The Sharp Scatter Machine Experiment This experiment is already explained in detail in [BT07] and [BCLT08]. The physical apparatus consists of a cannon for shooting particles, a barrier in the shape of a wedge and two collecting boxes, as in Figure 1.1. We can place the wedge at any position in the interval [0, 1], but we will assume that it is fixed for the duration of the experiment. The cannon can be used to find the position of the wedge up to some accuracy. The wedge has a triangular shape, and the sides are at 45 to the line of the cannon, so that the particle shot by the cannon is deflected perpendicular to its original direction. 4

21 RIGHT COLLECTING BOX x 1 cannon 1 5 m y 0 w 10 m/s z 0 limit of traverse of point of wedge limit of traverse of cannon cannon aims at dyadic z [0, 1] LEFT COLLECTING BOX 5 m Figure 1.1: Schematic depiction of the sharp scatter machine. To perform the experiment, we set the cannon to some position in [0, 1] and then shoot a particle with initial velocity 10ms 1. A different velocity will correspond to a different waiting time. Depending on the position of the wedge, y, and the position of the cannon, z, we have three possible behaviours: if z < y, then the particle hits the left side of the wedge and enters the left collecting box; if z > y, then the particle hits the right side of the wedge and enters the right collecting box; if z = y, then we assume that the particle can be deflected to any of the boxes or it can be deflected elsewhere and not enter either box. Other assumptions could be made about the behaviour, depending on how we would prefer to model the experiment, but they would be largely irrelevant to the complexity classes. In the cases that z y, we can see that the particle enters each box after at most 1s. Thus the experimental time is bounded by a constant. Let us identify the event particle is detected in the left collecting box with the outcome LEFT and the event particle is detected in the right collecting box with the outcome RIGHT. Definition 1.2 (Beggs et al., [BCLT08]). For y [0, 1], we denote by ShSM E(y) the sharp scatter machine experiment with wedge at position y, which is defined by the following properties: initial conditions I = [0, 1] and set of outcomes R = {LEFT, RIGHT}; experimental time function t exp defined on I {y} such that t exp (z) < 1 for all z I {y}; outcome function r defined on I {y} such that { r(z) = LEFT if z < y RIGHT if z > y. We also denote by ShSME the family of experiments ShSME = {ShSME(y) : y [0, 1]} The Smooth Scatter Machine Experiment The sharp SME made its first appearance in [BT07] as a machine that could be used as a form of hypercomputation. Later on, it was considered as a physical oracle in [BCLT08]. It was seen that 5

22 Turing machines combined with the sharp SME as oracle computed in polynomial time the class P/poly. However, following case studies have given rise to different complexity classes. One of these, the smooth SME (first seen in [BCT12b]), can be seen as a modification of the previous experiment, but its corresponding complexity class is quite different. The unique difference from the sharp SME to the smooth SME is that the wedge does not have a triangular shape. Instead, the sharp wedge is replaced by a smooth curve with vertex at the same point. See Figure 1.2 for more details. RIGHT COLLECTING BOX φ x 1 φ cannon z 1 5 m y 0 w V 10 m/s sample trajectory 0 limit of traverse of point of wedge limit of traverse of cannon cannon aims at dyadic z [0, 1] LEFT COLLECTING BOX 5 m Figure 1.2: Schematic depiction of the smooth scatter machine. We assume that the shape of the wedge is given by a map w : R R with the following properties: w is C n in ( 1, 1), for some n 2; w has a unique maximum at x = 0, and w(0) = 1; w(x) = 0 for all x ( 1, 1); and w (n) (0) 0. The wedge is shifted so that the position of the maximum is located at some unknown value y [0, 1] where 0 is the zero line of the cannon. To perform the experiment, the cannon is set to some position z [0, 1] and shoots a particle. The particle will collide with the wedge at the point with x coordinate x = z y, with the following behaviour: if x < 0, then the particle will be reflected and enters the left collecting box; if x > 0, then the particle will be reflected and enters the right collecting box; if x = 0, then the particle will be reflected in the direction it came from and thus will not enter any box. Observe that, as opposed to the sharp scatter, the time taken for the particle to enter some box, when z y, will increase to infinity as z approaches y. A majorization of this time can be found in the Appendix. For the moment, let us identify the event particle is detected in the left collecting box with the outcome LEFT and the event particle is detected in the right collecting box with the outcome RIGHT. Then we can proceed with the formalism of the smooth SME. Definition 1.3 (Beggs et al., [BCT12b]). For y [0, 1], we denote by SmSME(y) the smooth scatter machine experiment with wedge at position y, which is defined by the following properties, for some constants C, D and n: initial conditions I = [0, 1] and set of outcomes R = {LEFT, RIGHT}; experimental time function t exp defined on I {y} such that D z y n 1 < t C exp(z) < for all z I {y}; z y n 1 6

23 outcome function r defined on I {y} such that { r(z) = LEFT if z < y RIGHT if z > y. We also denote by SmSME the family of experiments SmSME = {SmSME(y) : y [0, 1]} The Balance Scale Experiment The balance scale experiment was mentioned for the first time in [BCT09]. It consists of a balance scale with two pans (see Figure 1.3). In the right pan we have some body with an unknown mass a. R h z O a Figure 1.3: Schematic depiction of the balance scale experiment. To measure a we place test masses z on the left pan of the balance: if z < a, then the right pan of the scale will move down; if z > a, then the left pan of the scale will move down; if z = a, then we assume that the scale will not move since it is in equilibrium. The balance experiments will be thorougly discussed in Chapters 2 and 3. For now we will just present the definition of the BSE, alerting the reader that a derivation of the experimental time (for z > a) can be found in the Appendix. Definition 1.4. For a [0, 1], we denote by BSE(a) the balance scale experiment with unknown mass a, which is defined by the following properties, for some constant τ: initial conditions I = [0, 1] and set of outcomes R = {LEFT, RIGHT}; experimental time function t exp defined on I {a} such that t exp (z) = τ z+a z a for all z I {a}; outcome function r defined on I {a} such that r(z) = { RIGHT if z < a LEFT if z > a. We also denote by BSE the family of experiments BSE = {BSE(a) : a [0, 1]}. 1.3 Characterization of protocols in terms of precision In this section we dwell further into the concept of protocol, and see that different assumptions on the type of precision can be described as different protocols. 7

24 From this section on we focus on the scatter machine experiment as our canonical model of twosided experiments. To use that experiment in a computation, we would like to set the position of the cannon, then shoot the cannon and find out which box (if any) did the particle went through. In the classical theory of computation with oracles, we have the concept of queries, which are possible words that can be asked to the oracle. In our case, the query word will correspond to a dyadic rational in [0, 1] that represents a possible initial condition of the experiment. Thus all protocols will attempt to perform the experiment with test position z, where z is the dyadic rational corresponding to the query word. However, we may allow some imprecision in the initial conditions; for instance, we could attempt to perform the experiment with initial condition z but a different z is used instead. This is our way to incorporate imprecision in the system. As such, there are three types of precision that we will study in these experiments: infinite precision: when z is read in the query tape, the cannon is set to position z; unbounded precision: when z is read in the query tape, the cannon is set to position z, where z is randomly and uniformly sampled in ( z 2 z, z + 2 z ) ; fixed precision ɛ, for some real valued ɛ > 0: when z is read in the query tape, the cannon is set to position z, where z is randomly and uniformly sampled in (z ɛ, z + ɛ); Let us look at the case of infinite precision. The experiment will basically consist of setting the cannon, shooting a particle, waiting some amount of time, and examine the outcome of the experiment. And so the experiment is abstracted by means of the procedure Shoot(IP ), which behaves as in Figure 1.4. PROTOCOL SHOOT(IP ) 1. Input dyadic rational z (possibly padded with 0s); 2. Set the cannon to the position z; 3. Shoot a particle; 4. Wait T ( z ) units of time; 5. If the particle was detected in the left box, Then Return LEFT, Else If the particle was detected in the right box, Then Return RIGHT, Else Return TIMEOUT. Figure 1.4: Procedure that describes the SME with infinite precision, for some unknown position of the wedge y and some time schedule T. PROTOCOL SHOOT(UP ) 1. Input dyadic rational z (possibly padded with 0s); ) 2. Set the cannon to the position z, where z (z 2 z, z + 2 z ; 3. Shoot a particle; 4. Wait T ( z ) units of time; 5. If the particle was detected in the left box, Then Return LEFT, Else If the particle was detected in the right box, Then Return RIGHT, Else Return TIMEOUT. Figure 1.5: Procedure that describes the SME with unbounded precision, for some unknown position of the wedge y and some time schedule T. The other types of precision can then be seen as just different protocols for the same experiment, which we will call Shoot(UP ) and Shoot(F P, ɛ) for the unbounded and fixed precision. Notice also that, 8

25 PROTOCOL SHOOT(F P, ɛ) 1. Input dyadic rational z (possibly padded with 0s); 2. Set the cannon to the position z, where z (z ɛ, z + ɛ); 3. Shoot a particle; 4. Wait T ( z ) units of time; 5. If the particle was detected in the left box, Then Return LEFT, Else If the particle was detected in the right box, Then Return RIGHT, Else Return TIMEOUT. Figure 1.6: Procedure that describes the SME with fixed precision ɛ, for some unknown position of the wedge y and some time schedule T. in the two latter cases, the answer to a query may be probabilistic instead of deterministic. Indeed, if z is close enough to the unknown position y, there may be different values of z corresponding to different answers, and so the same experiment may provide more than one possible outcome. There are many examples in the literatures of machines working with imprecision. For example, in [von56] a study is made of finite automata with faulty, probabilistic gates and how to control the errors. Also, [BK68] describes the main components of a hybrid computer, in particular the digital-analog converters that display some similarities with our types of precision. 1.4 Description and decidability of the AD machine The goal of this section is to combine all the concepts previously discussed in order to properly define the behaviour of an AD machine. In the general case, consider some physical experiment E, some oracle Turing machine M with at least as many outcome states as the possible outcomes of the experiment, some protocol P and some time schedule T. Then M E,T,P denotes the corresponding AD machine for that experiment. In the case of the smooth scatter, for example, the physical experiment is identified by the unknown position of the wedge, y, the oracle Turing machine M has outcome states left, right and timeout, and the protocol P is one of IP, UP, or F P (ɛ). Then the corresponding AD machine could be denoted by the expression M SmSME(y),T,P. However, since for the rest of this chapter we shall focus only on AD machines for the smooth SME, we may simplify the subscript in M SmSME(y),T,P and write only M y,t,p for an AD machine coupled with the smooth SME. The behaviour of the above machine is determined by its transition relation, which can be defined as follows. At any step of the computation, if the current state of the machine is different from the query state, the accepting state or the rejecting state, then the next configuration of the machine is determined by its transition function, as in the usual sense of deterministic Turing machines; if the current state is the query state, then the machine executes an instance of the experiment. It follows protocol P, using the query word in the query tape, z, as input and T as the time schedule. After some amount of time T ( z ), it resumes the computation on one of the states left, right or timeout, depending on the answer of the protocol; if the current state is the accepting (rejecting) state, then the computation is terminated and we say that the machine accepts (rejects) its input word. Finally, we can define the notion of decidability of a set by an AD machine coupled with the smooth scatter machine experiment. To do that, we must split the definition for the infinite precision case and the other two types of precision. Definition 1.5 (adapted from Beggs et al., [BCT10a, BCT12b]). Let M y,t,ip be an AD machine with unknown position y, time schedule T and infinite precision. We say that M y,t,ip halts for the input word 9

26 x if the respective computation reaches a halting state. We also say that M y,t,ip decides a set A if it halts for all input words and, for any input word w: if w A, then M y,t,ip accepts w; and if w A, then M y,t,ip rejects w. Finally, we say that a set A is decidable by an infinite precision smooth scatter AD machine in polynomial time if there is an oracle Turing machine M, an unknown position y and a time schedule T such that M y,t,ip decides A and runs in polynomial time. Definition 1.6 (adapted from Beggs et al., [BCT10a, BCT12b]). Let M y,t,up (resp. M y,t,f P (ɛ) ) be an AD machine for unknown position y, time schedule T and unbounded precision (resp. fixed precision ɛ). We say that M y,t,up (resp. M y,t,f P (ɛ) ) halts for the input word x if all computations reach a halting state. We also say that M y,t,up (resp. M y,t,f P (ɛ) ) decides a set A if it halts for all input words and there is some 0 < γ < 1/2 such that, for any input word w: if w A, then M a,t,up (resp. M a,t,f P (ɛ) ) accepts w with probability at least 1 γ; if w A, then M a,t,ip (resp. M a,t,f P (ɛ) ) rejects w with probability at least 1 γ. Finally, we say that a set A is decidable by an unbounded precision (resp. fixed precision ɛ) smooth scatter AD machine in polynomial time if there is an oracle Turing machine M, an unknown position y and a time schedule T such that M y,t,up (resp. M y,t,f P (ɛ) ) decides A and runs in polynomial time. 1.5 The role of measuring algorithms In this section we discuss the first and most obvious use of physical experiments in a computation: to measure a real number. As a byproduct we will present an algorithm for our first AD machine. All of the oracles that we consider in this work were first conceived as physical experiments of measurement; this means that the experiment was designed to find the unknown value of a physical quantity, such as the position of a wedge, the mass of a body, the threshold frequency for photoelectric emission of a material, the Brewster angle of a surface, etc. For a discussion on measurable quantities the reader is invited to consult [GH86]; the references [Hem52, Car66, Sup51] are relevant in studying theories of measurement. When examining the SmSME for the first time, the most obvious use of it is to measure the value of the unknown wedge position by means of a binary search procedure; initially send a particle from position 1/2 and, depending on the result, we can deduce that the unknown wedge position is in either [0, 1/2] or [1/2, 1], depending on the answer of RIGHT or LEFT. 1 By repeating the process, we could obtain consecutive approximations to the unknown wedge position y. We can formalize this idea for any family of experiments E. When we write E we are referring to a class of experiments parametrized by some physical quantity, for example E = SmSM E is the class of all experiments SmSME(y), y (0, 1). When we couple a family of experiments E with a protocol P we obtain the pair (E, P ) which we call setup from now on. In the following definition we adopt the terminology of oracle Turing machines with an output tape and one halting state. Definition 1.7. We say that setup (E, P ) permits measurements in time U if there is an oracle Turing machine M and a time schedule T such that, for any real number r (0, 1) there exists E E such that for all size n, M E,T,P halts for input word 1 n and the content of the output tape is a dyadic rational z such that z r < 2 n ; the number of steps of M E,T,P is bounded by a function in O(U). 1 Of course, this is not the full story; one has to deal with the answer of TIMEOUT as well. 10

27 Definition 1.8. We say that setup (E, P ) permits probabilistic measurements in time U if for every real number γ (0, 1/2) there is an oracle Turing machine M and a time schedule T such that, for any real number r (0, 1) there exists E E such that for all size n, every computation of M E,T,P for input word 1 n halts and, with probability of failure at most γ, the content of the output tape is a dyadic rational z such that z r < 2 n ; the number of steps of M E,T,P is bounded by a function in O(U). Thus, the goal of this section is to show that the setup (SmSME, IP ) permits measurements, and discover how much time (most of the cases polynomial or exponential) is required. We will answer this question shortly by presenting a measuring algorithm. We will use the notation z n, where z {0, 1} ω is an infinite word to indicate the prefix of size n of z. Furthermore, when z {0, 1} is a finite word we use z n to denote the prefix of size n of the word z0 ω. That is, for example, = 1010, = , and = 110. We shall use a time schedule T such that T (l) = C2 (n 1)l, where C and n are the constants related to the smooth SME of Definition In this way the procedure in Figure 1.7 can obtain approximations to the unknown mass. This is a modification to an algorithm previously presented in [BCT10b]. ALGORITHM BINARYSEARCH(IP ) 1. Input a natural number l number of places to the right of the left leading 0; 2. x 0 := 0; m := 0; x 1 := 1; 3. While x 1 x 0 > 2 l Do Begin x0 + x m := ; s := Shoot(IP ) (m l ); %Recall that this step takes T (l) units of time 3.3. If s = LEFT, Then x 0 := m; 3.4. If s = RIGHT, Then x 1 := m; 3.5. If s = TIMEOUT, Then x 0 := m; x 1 := m; 4. End While; 5. Output the dyadic rational denoted by x 0. Figure 1.7: Procedure to obtain an approximation of an unknown wedge position y of the scatter machine. We can see that in algorithm BinarySearch(IP ) the protocol is called in instruction 3.2 with position m l. We pad m with zeros to ensure that we wait the same amount of time for all experiments. In this way, we do not get the result of timeout too early. Observe also that the input l does not necessarily correspond to the precision of the output in terms of the unknown wedge position. Running the above algorithm for input l only guarantees that the result of the algorithm is a dyadic rational of size l. We will see that the distance between the output and the value of the unknown wedge position can be bounded depending on the choice of the time schedule. For the moment we shall state some nice properties of the above algorithm. Proposition 1.1. Let s be the result of Shoot(IP )(m l ), for an unknown wedge position y and time schedule T = λl.c2 (n 1)l. Then, 2 The reader should understand that the choice of this particular time schedule serves to simplify some of the following proofs. In fact, any exponential time schedule would suffice to produce good approximations, possibly with a polynomial slowdown. 11

28 1. If s = LEFT, then m < y; 2. If s = RIGHT, then m > y; 3. If s = TIMEOUT, then y m < 2 l. Proof: Cases 1 and 2 are obvious. For case 3, observe that we get a timeout whenever the experimental time t exp (m) exceeds the scheduled time T (l). This means that (using Definition 1.3) C m y n 1 > t exp(m) T (l) = C2 (n 1)l m y < 2 l. Proposition 1.2. For any unknown wedge position y and time schedule T = λl.c2 (n 1)l, 1. The time complexity of the algorithm BinarySearch(IP ) for input l is O(lT (l)); 2. The output of algorithm BinarySearch(IP ) for input l is a dyadic rational m such that y m < 2 l. Lemma 1.3. The setup (SmSM E, IP ) permits measurements in exponential time. Proof: This is a consequence of Proposition 1.2. We consider the oracle Turing machine that for input 1 l makes a call to BinarySearch(IP )(l) and the time schedule T = λl.c2 (n 1)l. For any real value r, we take SmSM E(r) as the intended experiment. By Proposition 1.2, the output of the computation is a dyadic rational m such that r m < 2 l. Since T (l) O(2 (n 1)l ), the number of steps of the AD machine is bounded by a function in O(l2 (n 1)l ) O(2 nl ). 1.6 Feasibility of the Physical Experiments Some readers may raise objections to the feasibility of the above experiments. One could argue that any computational power gained by coupling these physical experiments (for example, uncomputable power) is simply the result of the (un)computable character of the real number that denotes the wedge position, and that it would be impossible to place this wedge on any position in a finite amount of time. It could also be said that the measuring algorithm is itself infeasible, since the binary search procedure would require the ability to place the cannon at any dyadic position, regardless of the dyadic rational size. However, for query words with just a couple dozens of digits the precision required to do so will surpass the subatomic level, and thus it would be impossible to place the cannon with such accuracy. In this section we will attempt to provide an answer to these questions. First, we observe that this experiment is just a model of computation. We do not wish to imply that we should attempt to build AD machines to improve the computational power. Actually, what we can do is to obtain constraints to the classes of sets that we could compute with such machines. Regarding the fact that it is impossible to place the wedge on any real position in a finite amount of time, we will observe that for any halting computation only a finite amount of the digits of the wedge position are necessary to define the computation path, and so for input words bounded by some size n a similar machine with the wedge shifted by some small amount would accept and reject those words in the same way as the original machine did. Second, we observe that the computational power that we gain is also limited. We will find upper bounds for the classes of sets decided by AD machines in polynomial time, and we will see that we cannot get past the barrier of P/poly. So it makes sense to study this kind of machines since they can at least provide us some negative results concerning the computational power gained in polynomial time. 12

Complexity with costing and stochastic oracles Extended abstract

Complexity with costing and stochastic oracles Extended abstract Complexity with costing and stochastic oracles Extended abstract Diogo Miguel Ferreira Poças Instituto Superior Técnico - Universidade de Lisboa July 13, 2013 Abstract The purpose of this dissertation

More information

Theory of Two-sided Experiments A new insight on measurable numbers (Extended Abstract)

Theory of Two-sided Experiments A new insight on measurable numbers (Extended Abstract) Theory of Two-sided Experiments A new insight on measurable numbers (Exted Abstract) Tânia Filipa Nascimento Ambaram Instituto Superior Técnico - Universidde de Lisboa July, 2014 Abstract In this work

More information

An Analogue-digital Model of Computation: Turing Machines with Physical Oracles

An Analogue-digital Model of Computation: Turing Machines with Physical Oracles An Analogue-digital Model of Computation: Turing Machines with Physical Oracles Tânia Ambaram 1, Edwin Beggs 2, José Félix Costa 1, Diogo Poças 3, and John V Tucker 2 1 Department of Mathematics, Instituto

More information

Chapter 4 An Analogue-Digital Model of Computation: Turing Machines with Physical Oracles

Chapter 4 An Analogue-Digital Model of Computation: Turing Machines with Physical Oracles Chapter 4 An Analogue-Digital Model of Computation: Turing Machines with Physical Oracles Tânia Ambaram, Edwin Beggs, José Félix Costa, Diogo Poças and John V. Tucker Abstract We introduce an abstract

More information

The Power of Analogue-digital Machines

The Power of Analogue-digital Machines The Power of Analogue-digital Machines (Extended abstract) José Félix Costa 1 Department of Mathematics, Instituto Superior Técnico, Universidade de Lisboa, Lisboa, Portugal fgc@math.tecnico.ulisboa.pt

More information

Complexity Theory VU , SS The Polynomial Hierarchy. Reinhard Pichler

Complexity Theory VU , SS The Polynomial Hierarchy. Reinhard Pichler Complexity Theory Complexity Theory VU 181.142, SS 2018 6. The Polynomial Hierarchy Reinhard Pichler Institut für Informationssysteme Arbeitsbereich DBAI Technische Universität Wien 15 May, 2018 Reinhard

More information

Outline. Complexity Theory EXACT TSP. The Class DP. Definition. Problem EXACT TSP. Complexity of EXACT TSP. Proposition VU 181.

Outline. Complexity Theory EXACT TSP. The Class DP. Definition. Problem EXACT TSP. Complexity of EXACT TSP. Proposition VU 181. Complexity Theory Complexity Theory Outline Complexity Theory VU 181.142, SS 2018 6. The Polynomial Hierarchy Reinhard Pichler Institut für Informationssysteme Arbeitsbereich DBAI Technische Universität

More information

Computability Theory

Computability Theory Computability Theory Cristian S. Calude May 2012 Computability Theory 1 / 1 Bibliography M. Sipser. Introduction to the Theory of Computation, PWS 1997. (textbook) Computability Theory 2 / 1 Supplementary

More information

Computational Tasks and Models

Computational Tasks and Models 1 Computational Tasks and Models Overview: We assume that the reader is familiar with computing devices but may associate the notion of computation with specific incarnations of it. Our first goal is to

More information

Q = Set of states, IE661: Scheduling Theory (Fall 2003) Primer to Complexity Theory Satyaki Ghosh Dastidar

Q = Set of states, IE661: Scheduling Theory (Fall 2003) Primer to Complexity Theory Satyaki Ghosh Dastidar IE661: Scheduling Theory (Fall 2003) Primer to Complexity Theory Satyaki Ghosh Dastidar Turing Machine A Turing machine is an abstract representation of a computing device. It consists of a read/write

More information

Lecture 6: Oracle TMs, Diagonalization Limits, Space Complexity

Lecture 6: Oracle TMs, Diagonalization Limits, Space Complexity CSE 531: Computational Complexity I Winter 2016 Lecture 6: Oracle TMs, Diagonalization Limits, Space Complexity January 22, 2016 Lecturer: Paul Beame Scribe: Paul Beame Diagonalization enabled us to separate

More information

Turing Machines, diagonalization, the halting problem, reducibility

Turing Machines, diagonalization, the halting problem, reducibility Notes on Computer Theory Last updated: September, 015 Turing Machines, diagonalization, the halting problem, reducibility 1 Turing Machines A Turing machine is a state machine, similar to the ones we have

More information

1 Computational Problems

1 Computational Problems Stanford University CS254: Computational Complexity Handout 2 Luca Trevisan March 31, 2010 Last revised 4/29/2010 In this lecture we define NP, we state the P versus NP problem, we prove that its formulation

More information

UNIT-VIII COMPUTABILITY THEORY

UNIT-VIII COMPUTABILITY THEORY CONTEXT SENSITIVE LANGUAGE UNIT-VIII COMPUTABILITY THEORY A Context Sensitive Grammar is a 4-tuple, G = (N, Σ P, S) where: N Set of non terminal symbols Σ Set of terminal symbols S Start symbol of the

More information

Finite automata over continuous time

Finite automata over continuous time Universidade Técnica de Lisboa Instituto Superior Técnico Finite automata over continuous time Alexandre Paulo Lourenço Francisco Applied Mathematics and Computation Diploma Thesis Supervisor: Prof. José

More information

Notes for Lecture Notes 2

Notes for Lecture Notes 2 Stanford University CS254: Computational Complexity Notes 2 Luca Trevisan January 11, 2012 Notes for Lecture Notes 2 In this lecture we define NP, we state the P versus NP problem, we prove that its formulation

More information

CSE 4111/5111/6111 Computability Jeff Edmonds Assignment 3: Diagonalization & Halting Problem Due: One week after shown in slides

CSE 4111/5111/6111 Computability Jeff Edmonds Assignment 3: Diagonalization & Halting Problem Due: One week after shown in slides CSE 4111/5111/6111 Computability Jeff Edmonds Assignment 3: Diagonalization & Halting Problem Due: One week after shown in slides First Person: Second Person: Family Name: Family Name: Given Name: Given

More information

Cronfa - Swansea University Open Access Repository

Cronfa - Swansea University Open Access Repository Cronfa - Swansea University Open Access Repository This is an author produced version of a paper published in : The Review of Symbolic Logic Cronfa URL for this paper: http://cronfa.swan.ac.uk/record/cronfa28414

More information

Physical Oracles: The Turing Machine and the Wheatstone Bridge

Physical Oracles: The Turing Machine and the Wheatstone Bridge Edwin J Beggs José Félix Costa John V Tucker Physical Oracles: The Turing Machine and the Wheatstone Bridge Abstract. Earlier, we have studied computations possible by physical systems and by algorithms

More information

Randomized Complexity Classes; RP

Randomized Complexity Classes; RP Randomized Complexity Classes; RP Let N be a polynomial-time precise NTM that runs in time p(n) and has 2 nondeterministic choices at each step. N is a polynomial Monte Carlo Turing machine for a language

More information

Oracles and Advice as Measurements

Oracles and Advice as Measurements Oracles and Advice as Measurements Edwin Beggs 1, José Félix Costa 2,3, Bruno Loff 2,3, and John V Tucker 1 1 School of Physical Sciences Swansea University, Singleton Park, Swansea, SA2 8PP Wales, United

More information

Lecture 2 (Notes) 1. The book Computational Complexity: A Modern Approach by Sanjeev Arora and Boaz Barak;

Lecture 2 (Notes) 1. The book Computational Complexity: A Modern Approach by Sanjeev Arora and Boaz Barak; Topics in Theoretical Computer Science February 29, 2016 Lecturer: Ola Svensson Lecture 2 (Notes) Scribes: Ola Svensson Disclaimer: These notes were written for the lecturer only and may contain inconsistent

More information

Computational Complexity

Computational Complexity p. 1/24 Computational Complexity The most sharp distinction in the theory of computation is between computable and noncomputable functions; that is, between possible and impossible. From the example of

More information

U.C. Berkeley CS278: Computational Complexity Professor Luca Trevisan August 30, Notes for Lecture 1

U.C. Berkeley CS278: Computational Complexity Professor Luca Trevisan August 30, Notes for Lecture 1 U.C. Berkeley CS278: Computational Complexity Handout N1 Professor Luca Trevisan August 30, 2004 Notes for Lecture 1 This course assumes CS170, or equivalent, as a prerequisite. We will assume that the

More information

DRAFT. Diagonalization. Chapter 4

DRAFT. Diagonalization. Chapter 4 Chapter 4 Diagonalization..the relativized P =?NP question has a positive answer for some oracles and a negative answer for other oracles. We feel that this is further evidence of the difficulty of the

More information

6-1 Computational Complexity

6-1 Computational Complexity 6-1 Computational Complexity 6. Computational Complexity Computational models Turing Machines Time complexity Non-determinism, witnesses, and short proofs. Complexity classes: P, NP, conp Polynomial-time

More information

Appendix B for The Evolution of Strategic Sophistication (Intended for Online Publication)

Appendix B for The Evolution of Strategic Sophistication (Intended for Online Publication) Appendix B for The Evolution of Strategic Sophistication (Intended for Online Publication) Nikolaus Robalino and Arthur Robson Appendix B: Proof of Theorem 2 This appendix contains the proof of Theorem

More information

CISC 876: Kolmogorov Complexity

CISC 876: Kolmogorov Complexity March 27, 2007 Outline 1 Introduction 2 Definition Incompressibility and Randomness 3 Prefix Complexity Resource-Bounded K-Complexity 4 Incompressibility Method Gödel s Incompleteness Theorem 5 Outline

More information

1 From previous lectures

1 From previous lectures CS 810: Introduction to Complexity Theory 9/18/2003 Lecture 11: P/poly, Sparse Sets, and Mahaney s Theorem Instructor: Jin-Yi Cai Scribe: Aparna Das, Scott Diehl, Giordano Fusco 1 From previous lectures

More information

Ma/CS 117c Handout # 5 P vs. NP

Ma/CS 117c Handout # 5 P vs. NP Ma/CS 117c Handout # 5 P vs. NP We consider the possible relationships among the classes P, NP, and co-np. First we consider properties of the class of NP-complete problems, as opposed to those which are

More information

Apropos of an errata in ÜB 10 exercise 3

Apropos of an errata in ÜB 10 exercise 3 Apropos of an errata in ÜB 10 exercise 3 Komplexität von Algorithmen SS13 The last exercise of the last exercise sheet was incorrectly formulated and could not be properly solved. Since no one spotted

More information

AN INTRODUCTION TO COMPUTABILITY THEORY

AN INTRODUCTION TO COMPUTABILITY THEORY AN INTRODUCTION TO COMPUTABILITY THEORY CINDY CHUNG Abstract. This paper will give an introduction to the fundamentals of computability theory. Based on Robert Soare s textbook, The Art of Turing Computability:

More information

Time-bounded computations

Time-bounded computations Lecture 18 Time-bounded computations We now begin the final part of the course, which is on complexity theory. We ll have time to only scratch the surface complexity theory is a rich subject, and many

More information

Review of unsolvability

Review of unsolvability Review of unsolvability L L H To prove unsolvability: show a reduction. To prove solvability: show an algorithm. Unsolvable problems (main insight) Turing machine (algorithm) properties Pattern matching

More information

Lecture 3: Reductions and Completeness

Lecture 3: Reductions and Completeness CS 710: Complexity Theory 9/13/2011 Lecture 3: Reductions and Completeness Instructor: Dieter van Melkebeek Scribe: Brian Nixon Last lecture we introduced the notion of a universal Turing machine for deterministic

More information

2.6 Variations on Turing Machines

2.6 Variations on Turing Machines 2.6 Variations on Turing Machines Before we proceed further with our exposition of Turing Machines as language acceptors, we will consider variations on the basic definition of Slide 10 and discuss, somewhat

More information

Lecture 20: conp and Friends, Oracles in Complexity Theory

Lecture 20: conp and Friends, Oracles in Complexity Theory 6.045 Lecture 20: conp and Friends, Oracles in Complexity Theory 1 Definition: conp = { L L NP } What does a conp computation look like? In NP algorithms, we can use a guess instruction in pseudocode:

More information

WE FOCUS on the classical analog recurrent neural

WE FOCUS on the classical analog recurrent neural IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 43, NO. 4, JULY 1997 1175 Computational Power of Neural Networks: A Characterization in Terms of Kolmogorov Complexity José L. Balcázar, Ricard Gavaldà, and

More information

COMP/MATH 300 Topics for Spring 2017 June 5, Review and Regular Languages

COMP/MATH 300 Topics for Spring 2017 June 5, Review and Regular Languages COMP/MATH 300 Topics for Spring 2017 June 5, 2017 Review and Regular Languages Exam I I. Introductory and review information from Chapter 0 II. Problems and Languages A. Computable problems can be expressed

More information

Introduction to Turing Machines. Reading: Chapters 8 & 9

Introduction to Turing Machines. Reading: Chapters 8 & 9 Introduction to Turing Machines Reading: Chapters 8 & 9 1 Turing Machines (TM) Generalize the class of CFLs: Recursively Enumerable Languages Recursive Languages Context-Free Languages Regular Languages

More information

,

, Kolmogorov Complexity Carleton College, CS 254, Fall 2013, Prof. Joshua R. Davis based on Sipser, Introduction to the Theory of Computation 1. Introduction Kolmogorov complexity is a theory of lossless

More information

Undecidability COMS Ashley Montanaro 4 April Department of Computer Science, University of Bristol Bristol, UK

Undecidability COMS Ashley Montanaro 4 April Department of Computer Science, University of Bristol Bristol, UK COMS11700 Undecidability Department of Computer Science, University of Bristol Bristol, UK 4 April 2014 COMS11700: Undecidability Slide 1/29 Decidability We are particularly interested in Turing machines

More information

CSC 5170: Theory of Computational Complexity Lecture 5 The Chinese University of Hong Kong 8 February 2010

CSC 5170: Theory of Computational Complexity Lecture 5 The Chinese University of Hong Kong 8 February 2010 CSC 5170: Theory of Computational Complexity Lecture 5 The Chinese University of Hong Kong 8 February 2010 So far our notion of realistic computation has been completely deterministic: The Turing Machine

More information

Module 1. Probability

Module 1. Probability Module 1 Probability 1. Introduction In our daily life we come across many processes whose nature cannot be predicted in advance. Such processes are referred to as random processes. The only way to derive

More information

The purpose here is to classify computational problems according to their complexity. For that purpose we need first to agree on a computational

The purpose here is to classify computational problems according to their complexity. For that purpose we need first to agree on a computational 1 The purpose here is to classify computational problems according to their complexity. For that purpose we need first to agree on a computational model. We'll remind you what a Turing machine is --- you

More information

Halting and Equivalence of Program Schemes in Models of Arbitrary Theories

Halting and Equivalence of Program Schemes in Models of Arbitrary Theories Halting and Equivalence of Program Schemes in Models of Arbitrary Theories Dexter Kozen Cornell University, Ithaca, New York 14853-7501, USA, kozen@cs.cornell.edu, http://www.cs.cornell.edu/~kozen In Honor

More information

Theory of Computation

Theory of Computation Thomas Zeugmann Hokkaido University Laboratory for Algorithmics http://www-alg.ist.hokudai.ac.jp/ thomas/toc/ Lecture 13: Algorithmic Unsolvability The Halting Problem I In the last lecture we have shown

More information

ITCS:CCT09 : Computational Complexity Theory Apr 8, Lecture 7

ITCS:CCT09 : Computational Complexity Theory Apr 8, Lecture 7 ITCS:CCT09 : Computational Complexity Theory Apr 8, 2009 Lecturer: Jayalal Sarma M.N. Lecture 7 Scribe: Shiteng Chen In this lecture, we will discuss one of the basic concepts in complexity theory; namely

More information

Two Comments on Targeted Canonical Derandomizers

Two Comments on Targeted Canonical Derandomizers Two Comments on Targeted Canonical Derandomizers Oded Goldreich Department of Computer Science Weizmann Institute of Science Rehovot, Israel. oded.goldreich@weizmann.ac.il April 8, 2011 Abstract We revisit

More information

Lecture Examples of problems which have randomized algorithms

Lecture Examples of problems which have randomized algorithms 6.841 Advanced Complexity Theory March 9, 2009 Lecture 10 Lecturer: Madhu Sudan Scribe: Asilata Bapat Meeting to talk about final projects on Wednesday, 11 March 2009, from 5pm to 7pm. Location: TBA. Includes

More information

Languages, regular languages, finite automata

Languages, regular languages, finite automata Notes on Computer Theory Last updated: January, 2018 Languages, regular languages, finite automata Content largely taken from Richards [1] and Sipser [2] 1 Languages An alphabet is a finite set of characters,

More information

Turing Machines Part III

Turing Machines Part III Turing Machines Part III Announcements Problem Set 6 due now. Problem Set 7 out, due Monday, March 4. Play around with Turing machines, their powers, and their limits. Some problems require Wednesday's

More information

Theory of Computation (IX) Yijia Chen Fudan University

Theory of Computation (IX) Yijia Chen Fudan University Theory of Computation (IX) Yijia Chen Fudan University Review The Definition of Algorithm Polynomials and their roots A polynomial is a sum of terms, where each term is a product of certain variables and

More information

Reductions in Computability Theory

Reductions in Computability Theory Reductions in Computability Theory Prakash Panangaden 9 th November 2015 The concept of reduction is central to computability and complexity theory. The phrase P reduces to Q is often used in a confusing

More information

Lecture 26. Daniel Apon

Lecture 26. Daniel Apon Lecture 26 Daniel Apon 1 From IPPSPACE to NPPCP(log, 1): NEXP has multi-prover interactive protocols If you ve read the notes on the history of the PCP theorem referenced in Lecture 19 [3], you will already

More information

Computational Complexity of Bayesian Networks

Computational Complexity of Bayesian Networks Computational Complexity of Bayesian Networks UAI, 2015 Complexity theory Many computations on Bayesian networks are NP-hard Meaning (no more, no less) that we cannot hope for poly time algorithms that

More information

Quantum algorithms (CO 781, Winter 2008) Prof. Andrew Childs, University of Waterloo LECTURE 1: Quantum circuits and the abelian QFT

Quantum algorithms (CO 781, Winter 2008) Prof. Andrew Childs, University of Waterloo LECTURE 1: Quantum circuits and the abelian QFT Quantum algorithms (CO 78, Winter 008) Prof. Andrew Childs, University of Waterloo LECTURE : Quantum circuits and the abelian QFT This is a course on quantum algorithms. It is intended for graduate students

More information

Cryptographic Protocols Notes 2

Cryptographic Protocols Notes 2 ETH Zurich, Department of Computer Science SS 2018 Prof. Ueli Maurer Dr. Martin Hirt Chen-Da Liu Zhang Cryptographic Protocols Notes 2 Scribe: Sandro Coretti (modified by Chen-Da Liu Zhang) About the notes:

More information

The tape of M. Figure 3: Simulation of a Turing machine with doubly infinite tape

The tape of M. Figure 3: Simulation of a Turing machine with doubly infinite tape UG3 Computability and Intractability (2009-2010): Note 4 4. Bells and whistles. In defining a formal model of computation we inevitably make a number of essentially arbitrary design decisions. These decisions

More information

Undecidability. Andreas Klappenecker. [based on slides by Prof. Welch]

Undecidability. Andreas Klappenecker. [based on slides by Prof. Welch] Undecidability Andreas Klappenecker [based on slides by Prof. Welch] 1 Sources Theory of Computing, A Gentle Introduction, by E. Kinber and C. Smith, Prentice-Hall, 2001 Automata Theory, Languages and

More information

CS264: Beyond Worst-Case Analysis Lecture #18: Smoothed Complexity and Pseudopolynomial-Time Algorithms

CS264: Beyond Worst-Case Analysis Lecture #18: Smoothed Complexity and Pseudopolynomial-Time Algorithms CS264: Beyond Worst-Case Analysis Lecture #18: Smoothed Complexity and Pseudopolynomial-Time Algorithms Tim Roughgarden March 9, 2017 1 Preamble Our first lecture on smoothed analysis sought a better theoretical

More information

Theory of Computation

Theory of Computation Thomas Zeugmann Hokkaido University Laboratory for Algorithmics http://www-alg.ist.hokudai.ac.jp/ thomas/toc/ Lecture 12: Turing Machines Turing Machines I After having dealt with partial recursive functions,

More information

An Approach to Computational Complexity in Membrane Computing

An Approach to Computational Complexity in Membrane Computing An Approach to Computational Complexity in Membrane Computing Mario J. Pérez-Jiménez Research Group on Natural Computing, Department of Computer Science and Artificial Intelligence, University of Sevilla

More information

COMPUTATIONAL COMPLEXITY

COMPUTATIONAL COMPLEXITY COMPUTATIONAL COMPLEXITY A Modern Approach SANJEEV ARORA Princeton University BOAZ BARAK Princeton University {Щ CAMBRIDGE Щ0 UNIVERSITY PRESS Contents About this book Acknowledgments Introduction page

More information

an efficient procedure for the decision problem. We illustrate this phenomenon for the Satisfiability problem.

an efficient procedure for the decision problem. We illustrate this phenomenon for the Satisfiability problem. 1 More on NP In this set of lecture notes, we examine the class NP in more detail. We give a characterization of NP which justifies the guess and verify paradigm, and study the complexity of solving search

More information

The halting problem is decidable on a set of asymptotic probability one

The halting problem is decidable on a set of asymptotic probability one The halting problem is decidable on a set of asymptotic probability one Joel David Hamkins The City University of New York http://jdh.hamkins.org Alexei Miasnikov The City University of New York http://www.cs.gc.cuny.edu/

More information

ON THE STRUCTURE OF BOUNDED QUERIES TO ARBITRARY NP SETS

ON THE STRUCTURE OF BOUNDED QUERIES TO ARBITRARY NP SETS ON THE STRUCTURE OF BOUNDED QUERIES TO ARBITRARY NP SETS RICHARD CHANG Abstract. Kadin [6] showed that if the Polynomial Hierarchy (PH) has infinitely many levels, then for all k, P SAT[k] P SAT[k+1].

More information

On the Effectiveness of Symmetry Breaking

On the Effectiveness of Symmetry Breaking On the Effectiveness of Symmetry Breaking Russell Miller 1, Reed Solomon 2, and Rebecca M Steiner 3 1 Queens College and the Graduate Center of the City University of New York Flushing NY 11367 2 University

More information

Lecture 2: From Classical to Quantum Model of Computation

Lecture 2: From Classical to Quantum Model of Computation CS 880: Quantum Information Processing 9/7/10 Lecture : From Classical to Quantum Model of Computation Instructor: Dieter van Melkebeek Scribe: Tyson Williams Last class we introduced two models for deterministic

More information

Great Theoretical Ideas in Computer Science. Lecture 7: Introduction to Computational Complexity

Great Theoretical Ideas in Computer Science. Lecture 7: Introduction to Computational Complexity 15-251 Great Theoretical Ideas in Computer Science Lecture 7: Introduction to Computational Complexity September 20th, 2016 What have we done so far? What will we do next? What have we done so far? > Introduction

More information

Failure detectors Introduction CHAPTER

Failure detectors Introduction CHAPTER CHAPTER 15 Failure detectors 15.1 Introduction This chapter deals with the design of fault-tolerant distributed systems. It is widely known that the design and verification of fault-tolerent distributed

More information

CS151 Complexity Theory. Lecture 1 April 3, 2017

CS151 Complexity Theory. Lecture 1 April 3, 2017 CS151 Complexity Theory Lecture 1 April 3, 2017 Complexity Theory Classify problems according to the computational resources required running time storage space parallelism randomness rounds of interaction,

More information

About the relationship between formal logic and complexity classes

About the relationship between formal logic and complexity classes About the relationship between formal logic and complexity classes Working paper Comments welcome; my email: armandobcm@yahoo.com Armando B. Matos October 20, 2013 1 Introduction We analyze a particular

More information

THE SUPER-TURING COMPUTATIONAL POWER OF PLASTIC RECURRENT NEURAL NETWORKS

THE SUPER-TURING COMPUTATIONAL POWER OF PLASTIC RECURRENT NEURAL NETWORKS International Journal of Neural Systems, Vol. 24, No. 8 (2014) 1450029 (22 pages) c World Scientific Publishing Company DOI: 10.1142/S0129065714500294 THE SUPER-TURING COMPUTATIONAL POWER OF PLASTIC RECURRENT

More information

The Las-Vegas Processor Identity Problem (How and When to Be Unique)

The Las-Vegas Processor Identity Problem (How and When to Be Unique) The Las-Vegas Processor Identity Problem (How and When to Be Unique) Shay Kutten Department of Industrial Engineering The Technion kutten@ie.technion.ac.il Rafail Ostrovsky Bellcore rafail@bellcore.com

More information

Lecture Notes on Inductive Definitions

Lecture Notes on Inductive Definitions Lecture Notes on Inductive Definitions 15-312: Foundations of Programming Languages Frank Pfenning Lecture 2 September 2, 2004 These supplementary notes review the notion of an inductive definition and

More information

Lecture 22: Quantum computational complexity

Lecture 22: Quantum computational complexity CPSC 519/619: Quantum Computation John Watrous, University of Calgary Lecture 22: Quantum computational complexity April 11, 2006 This will be the last lecture of the course I hope you have enjoyed the

More information

Asymptotic redundancy and prolixity

Asymptotic redundancy and prolixity Asymptotic redundancy and prolixity Yuval Dagan, Yuval Filmus, and Shay Moran April 6, 2017 Abstract Gallager (1978) considered the worst-case redundancy of Huffman codes as the maximum probability tends

More information

δ-approximable Functions

δ-approximable Functions δ-approximable Functions Charles Meyssonnier 1, Paolo Boldi 2, and Sebastiano Vigna 2 1 École Normale Supérieure de Lyon, France 2 Dipartimento di Scienze dell Informazione, Università degli Studi di Milano,

More information

: On the P vs. BPP problem. 18/12/16 Lecture 10

: On the P vs. BPP problem. 18/12/16 Lecture 10 03684155: On the P vs. BPP problem. 18/12/16 Lecture 10 Natural proofs Amnon Ta-Shma and Dean Doron 1 Natural proofs The ultimate goal we have is separating classes (or proving they are equal if they are).

More information

Turing Machines and the Church-Turing Thesis

Turing Machines and the Church-Turing Thesis CSE2001, Fall 2006 1 Turing Machines and the Church-Turing Thesis Today our goal is to show that Turing Machines are powerful enough to model digital computers, and to see discuss some evidence for the

More information

Uncountable Automatic Classes and Learning

Uncountable Automatic Classes and Learning Uncountable Automatic Classes and Learning Sanjay Jain a,1, Qinglong Luo a, Pavel Semukhin b,2, Frank Stephan c,3 a Department of Computer Science, National University of Singapore, Singapore 117417, Republic

More information

Evidence that the Diffie-Hellman Problem is as Hard as Computing Discrete Logs

Evidence that the Diffie-Hellman Problem is as Hard as Computing Discrete Logs Evidence that the Diffie-Hellman Problem is as Hard as Computing Discrete Logs Jonah Brown-Cohen 1 Introduction The Diffie-Hellman protocol was one of the first methods discovered for two people, say Alice

More information

Notational conventions

Notational conventions CHAPTER 0 Notational conventions We now specify some of the notations and conventions used throughout this book. We make use of some notions from discrete mathematics such as strings, sets, functions,

More information

20.1 2SAT. CS125 Lecture 20 Fall 2016

20.1 2SAT. CS125 Lecture 20 Fall 2016 CS125 Lecture 20 Fall 2016 20.1 2SAT We show yet another possible way to solve the 2SAT problem. Recall that the input to 2SAT is a logical expression that is the conunction (AND) of a set of clauses,

More information

Computational Complexity: A Modern Approach. Draft of a book: Dated January 2007 Comments welcome!

Computational Complexity: A Modern Approach. Draft of a book: Dated January 2007 Comments welcome! i Computational Complexity: A Modern Approach Draft of a book: Dated January 2007 Comments welcome! Sanjeev Arora and Boaz Barak Princeton University complexitybook@gmail.com Not to be reproduced or distributed

More information

Limitations of Efficient Reducibility to the Kolmogorov Random Strings

Limitations of Efficient Reducibility to the Kolmogorov Random Strings Limitations of Efficient Reducibility to the Kolmogorov Random Strings John M. HITCHCOCK 1 Department of Computer Science, University of Wyoming Abstract. We show the following results for polynomial-time

More information

Lecture 26: Arthur-Merlin Games

Lecture 26: Arthur-Merlin Games CS 710: Complexity Theory 12/09/2011 Lecture 26: Arthur-Merlin Games Instructor: Dieter van Melkebeek Scribe: Chetan Rao and Aaron Gorenstein Last time we compared counting versus alternation and showed

More information

Turing Machines (TM) Deterministic Turing Machine (DTM) Nondeterministic Turing Machine (NDTM)

Turing Machines (TM) Deterministic Turing Machine (DTM) Nondeterministic Turing Machine (NDTM) Turing Machines (TM) Deterministic Turing Machine (DTM) Nondeterministic Turing Machine (NDTM) 1 Deterministic Turing Machine (DTM).. B B 0 1 1 0 0 B B.. Finite Control Two-way, infinite tape, broken into

More information

Doubly Indexed Infinite Series

Doubly Indexed Infinite Series The Islamic University of Gaza Deanery of Higher studies Faculty of Science Department of Mathematics Doubly Indexed Infinite Series Presented By Ahed Khaleel Abu ALees Supervisor Professor Eissa D. Habil

More information

Entropy. Probability and Computing. Presentation 22. Probability and Computing Presentation 22 Entropy 1/39

Entropy. Probability and Computing. Presentation 22. Probability and Computing Presentation 22 Entropy 1/39 Entropy Probability and Computing Presentation 22 Probability and Computing Presentation 22 Entropy 1/39 Introduction Why randomness and information are related? An event that is almost certain to occur

More information

Complexity Theory Part I

Complexity Theory Part I Complexity Theory Part I Outline for Today Recap from Last Time Reviewing Verifiers Nondeterministic Turing Machines What does nondeterminism mean in the context of TMs? And just how powerful are NTMs?

More information

CS264: Beyond Worst-Case Analysis Lecture #15: Smoothed Complexity and Pseudopolynomial-Time Algorithms

CS264: Beyond Worst-Case Analysis Lecture #15: Smoothed Complexity and Pseudopolynomial-Time Algorithms CS264: Beyond Worst-Case Analysis Lecture #15: Smoothed Complexity and Pseudopolynomial-Time Algorithms Tim Roughgarden November 5, 2014 1 Preamble Previous lectures on smoothed analysis sought a better

More information

Examining the accuracy of the normal approximation to the poisson random variable

Examining the accuracy of the normal approximation to the poisson random variable Eastern Michigan University DigitalCommons@EMU Master's Theses and Doctoral Dissertations Master's Theses, and Doctoral Dissertations, and Graduate Capstone Projects 2009 Examining the accuracy of the

More information

A An Overview of Complexity Theory for the Algorithm Designer

A An Overview of Complexity Theory for the Algorithm Designer A An Overview of Complexity Theory for the Algorithm Designer A.1 Certificates and the class NP A decision problem is one whose answer is either yes or no. Two examples are: SAT: Given a Boolean formula

More information

Notes on Complexity Theory Last updated: November, Lecture 10

Notes on Complexity Theory Last updated: November, Lecture 10 Notes on Complexity Theory Last updated: November, 2015 Lecture 10 Notes by Jonathan Katz, lightly edited by Dov Gordon. 1 Randomized Time Complexity 1.1 How Large is BPP? We know that P ZPP = RP corp

More information

Preface These notes were prepared on the occasion of giving a guest lecture in David Harel's class on Advanced Topics in Computability. David's reques

Preface These notes were prepared on the occasion of giving a guest lecture in David Harel's class on Advanced Topics in Computability. David's reques Two Lectures on Advanced Topics in Computability Oded Goldreich Department of Computer Science Weizmann Institute of Science Rehovot, Israel. oded@wisdom.weizmann.ac.il Spring 2002 Abstract This text consists

More information

Finite Automata Theory and Formal Languages TMV027/DIT321 LP4 2018

Finite Automata Theory and Formal Languages TMV027/DIT321 LP4 2018 Finite Automata Theory and Formal Languages TMV027/DIT321 LP4 2018 Lecture 15 Ana Bove May 17th 2018 Recap: Context-free Languages Chomsky hierarchy: Regular languages are also context-free; Pumping lemma

More information

Real-Time Software Transactional Memory: Contention Managers, Time Bounds, and Implementations

Real-Time Software Transactional Memory: Contention Managers, Time Bounds, and Implementations Real-Time Software Transactional Memory: Contention Managers, Time Bounds, and Implementations Mohammed El-Shambakey Dissertation Submitted to the Faculty of the Virginia Polytechnic Institute and State

More information

Generalized Lowness and Highness and Probabilistic Complexity Classes

Generalized Lowness and Highness and Probabilistic Complexity Classes Generalized Lowness and Highness and Probabilistic Complexity Classes Andrew Klapper University of Manitoba Abstract We introduce generalized notions of low and high complexity classes and study their

More information