190 likes | 360 Views
Turing Machine Resisting Isolated Bursts of Faults. Ilir Capuni and Peter Gacs Boston University. Introduction. A fault : a violation of the transition function Change the state, the tape symbol and move the head arbitrarily. …. 0. 0. 1. 1. 0. …. …. 0. 0. 0. 1. 0. …. step i.
E N D
Turing Machine Resisting Isolated Bursts of Faults IlirCapuni and Peter Gacs Boston University
Introduction • A fault: a violation of the transition function • Change the state, the tape symbol and move the head arbitrarily … 0 0 1 1 0 … … 0 0 0 1 0 … step i q q q’ … 0 0 1 1 0 … step i+1 q’ ‘Regular’ transition A faulty transition
The main question • Is there a Turing machine that can carry out its computation despite faults (violations of the transition function) that occur independently of each other with small probability?
Reduced goal: resistance to isolated bursts of faults 0 1 0 1 0 … 0 0 1 1 0 0 … q
Our result illustrated Given: 1) Machine with the alphabet and state set … 0 0 0 0 1 0 1 1 0 0 0 0 … q 2) The size of the bursts We construct: 3) Block code (E, D) of block-sizeQ 1) IntegersV, Q, C, all depending linearly on 2) Machine with the alphabet and state set that does not contain a halting state … a3 a1 a2 a3 b1 b2 b3 a1 a2 a3 b1 b2 b3 a1 a2 a3 …
Such that … 0 0 0 0 1 0 1 0 0 0 0 … 0 q0 1 0 … M2 … 0 0 0 0 1 1 0 1 0 0 0 0 … q5 T-1 … 0 0 0 0 1 0 1 1 0 0 0 0 … qf T Burst are separated by at least V fault- free steps qf The result … 0 … p0 1 … M1 … a a a a b b b … p5 t-Q No faults for Q steps … a a a a b b b b a a a a … pt t, t>CT … … q’
Sketch of the construction Colonies Info 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 State _ _ _ _ _ q q q q q _ _ _ _ _ … … Addr 0 1 2 3 4 0 1 2 3 4 0 1 2 2 3 4 … 0 0 1 1 0 … Sweep 2 2 2 2 2 g g g g g L L L L L Drift 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 q Other fields Head Mode = Normal Addr = 0 Sweep = 2 Other fields
Burst -tolerant Tur(n)ing machine 1 q 0 Info 0 0 0 0 0 1 1 1 1 1 1 1 1 1 L State _ _ _ _ _ q q q q _ _ _ _ _ 1 … … Addr • Information:there is an error-correcting code and global repetitions to handle computation errors • Simulation:There is a structure that could be restored locally using a “recovery procedure” that does not restore lost information 0 1 2 3 4 1 2 3 4 0 1 2 3 4 Sweep L L L L g g g g g L L L L L Drift 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Other fields Head Mode = Normal Addr = 0 Sweep = 1 Other fields Computation phase Transferring phase Two lines of defense
Islands and stains • Intervals of cells whose structure is altered by faults will be called islands • The cells where Info and State are altered by faults will be called stains
An example Recovery procedure Simulation resumes, but a stain can remain until the next decoding-encoding takes placeover this colony
Localization with zigging Alarm is called Sweep - 1 Sweep + 1 Sweep + 2 Sweep - 1 Extensive damage Damage localized with zigging
Recovery procedure • Opens a constant size recovery interval around the cell where the Alarm is called • In several sweeps it computes majority of Address, Sweep, and Drift fields, and computes the values that need to be filled in the ‘damaged’ area • Then it leaves the head close to the front of the sweep
Disturbing the recovery • The burst can leave the machine in some arbitrary state • The recovery procedure can itself be also disturbed by a burst • Our recovery procedure handles provably all these cases Bad news Good news
Proofs • Certain proofs are long and require detailed case analysis
Extensions 0 1 a 1 0 b 1 0 a 0 1 a 1 0 Prog a Info a a b b b a b a b a a b a b a State _ _ _ _ _ b a b a b _ _ _ _ _ … Addr 0 1 2 3 4 0 1 2 3 4 0 1 2 2 3 4 Sweep 2 2 2 2 2 g g g g g L L L L L Drift 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Other fields • Coding: Store the program and the state of M2 on the tape of M1 and make M1 act as a Universal Turing machine • The slowdown of the machine now becomes quadratic on the burst size Head Mode = Normal Addr = 0 Sweep = 2 Other fields … … 0 0 1 1 0 … q
Toward resistance to probabilistic noise • Our noise model was combinatorial • How to deal with low-probability noise combinatorially? • Level 1: Consider first noise that has low frequency: Bursts are b1 long but V1 steps apart from each other • Level 2: Then allow violations of the previous occurring with low frequency: Occur in at most b2 steps separated by at least V2 steps from each other • And so on… We are left with a noise set that is “sparse”
From the Tur(n)ing machine to a Turing machine that can withstand probabilistic noise • We use the previous construction as a building block • Some serious additional challenges must be handled to maintain the hierarchy of simulations …
0 1 a 1 0 1 a 1 0 0 1 a 1 0 Prog 0 Info a a b b b a b a b a a b a b a State _ _ _ _ _ a a b b b _ _ _ _ _ … … Addr 0 1 2 3 4 0 1 2 3 4 0 1 2 2 3 4 … 0 0 1 1 0 … Sweep 2 2 2 2 2 g g g g g L L L L L Drift 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 q Other fields Head Mode = Normal Addr = 0 Sweep = 2 Other fields 0 1 a 1 0 1 a 1 0 0 1 a 1 0 Prog 0 1 a 1 0 1 a 1 0 0 1 a 1 0 Prog 0 0 Info Info a a b b b a b a b a a b a b a a a b b b 1 b 0 b a a b a b a State State _ _ _ _ _ a a c b b _ _ _ _ _ _ _ _ _ _ a 1 c b b _ _ _ _ _ … … … … Addr Addr 0 1 2 3 4 0 1 2 3 4 0 1 2 2 3 4 0 1 2 3 4 0 1 2 3 4 0 1 2 2 3 4 Sweep Sweep 2 2 2 2 2 g g g g g 2 2 2 2 2 g g g g g L L L L L L L L L L Drift Drift 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Other fields Other fields Head Head Mode = Normal Mode = Normal Addr = 0 Addr = 0 Sweep = 2 Sweep = 2 Other fields Other fields
Why do we care? • It is a natural simple question • Just as with cellular automata, it is surprising that the solutions seem to require so much complexity • So far, this is the simplest universal machine that can resist isolated bursts of faults … Q u e s t i o n s ? T h a n k _ y o u ! q P q’ q’’ q q q q f f f l k k k k k k k k