Notes on local determinism Days 12, 13 and 14 of Comp Sci 480.

Slides:



Advertisements
Similar presentations
PROOF BY CONTRADICTION
Advertisements

Lecture 19. Reduction: More Undecidable problems
CS 461 – Nov. 9 Chomsky hierarchy of language classes –Review –Let’s find a language outside the TM world! –Hints: languages and TM are countable, but.
Justification-based TMSs (JTMS) JTMS utilizes 3 types of nodes, where each node is associated with an assertion: 1.Premises. Their justifications (provided.
Proofs, Recursion and Analysis of Algorithms Mathematical Structures for Computer Science Chapter 2 Copyright © 2006 W.H. Freeman & Co.MSCS SlidesProofs,
1 The Limits of Computation Intractable and Non-computable functions.
Outline. Theorem For the two processor network, Bit C(Leader) = Bit C(MaxF) = 2[log 2 ((M + 2)/3.5)] and Bit C t (Leader) = Bit C t (MaxF) = 2[log 2 ((M.
Induction and recursion
Infinite Horizon Problems
1 Introduction to Computability Theory Lecture3: Regular Expressions Prof. Amos Israeli.
1 Introduction to Computability Theory Lecture12: Reductions Prof. Amos Israeli.
1 Introduction to Computability Theory Lecture4: Regular Expressions Prof. Amos Israeli.
1 Introduction to Computability Theory Lecture11: Variants of Turing Machines Prof. Amos Israeli.
Introduction to Computability Theory
1 Introduction to Computability Theory Lecture7: PushDown Automata (Part 1) Prof. Amos Israeli.
1 Introduction to Computability Theory Lecture4: Non Regular Languages Prof. Amos Israeli.
1 Introduction to Computability Theory Lecture13: Mapping Reductions Prof. Amos Israeli.
CS5371 Theory of Computation
CPSC 411, Fall 2008: Set 12 1 CPSC 411 Design and Analysis of Algorithms Set 12: Undecidability Prof. Jennifer Welch Fall 2008.
1 Undecidability Andreas Klappenecker [based on slides by Prof. Welch]
Courtesy Costas Busch - RPI1 NPDAs Accept Context-Free Languages.
Deciding Primality is in P M. Agrawal, N. Kayal, N. Saxena Slides by Adi Akavia.
1 Lecture 7 Halting Problem –Fundamental program behavior problem –A specific unsolvable problem –Diagonalization technique revisited Proof more complex.
1 Introduction to Computability Theory Lecture4: Non Regular Languages Prof. Amos Israeli.
1 Lecture 7 Halting Problem –Fundamental program behavior problem –A specific unsolvable problem –Diagonalization technique revisited Proof more complex.
DNA Self-Assembly The complexity of self-assembled shapes.
1 Lecture 7 Topics –Problems about program behavior At least problem input is a program/algorithm –Halting Problem Fundamental problem about program behavior.
CS5371 Theory of Computation Lecture 4: Automata Theory II (DFA = NFA, Regular Language)
Programming Language Semantics Denotational Semantics Chapter 5 Part III Based on a lecture by Martin Abadi.
Halting Problem. Background - Halting Problem Common error: Program goes into an infinite loop. Wouldn’t it be nice to have a tool that would warn us.
Induction and recursion
Induction and recursion
Multiple Integrals 12. Double Integrals over General Regions 12.3.
4.2 - The Mean Value Theorem
Copyright © Cengage Learning. All rights reserved Double Integrals over General Regions.
Database Systems Normal Forms. Decomposition Suppose we have a relation R[U] with a schema U={A 1,…,A n } – A decomposition of U is a set of schemas.
College Algebra Fifth Edition James Stewart Lothar Redlin Saleem Watson.
Section 1.8. Section Summary Proof by Cases Existence Proofs Constructive Nonconstructive Disproof by Counterexample Nonexistence Proofs Uniqueness Proofs.
The Integers. The Division Algorithms A high-school question: Compute 58/17. We can write 58 as 58 = 3 (17) + 7 This forms illustrates the answer: “3.
Methods of Proof Lecture 3: Sep 9. This Lecture Now we have learnt the basics in logic. We are going to apply the logical rules in proving mathematical.
Notes for self-assembly of thin rectangles Days 19, 20 and 21 of Comp Sci 480.
1 Markov Decision Processes Infinite Horizon Problems Alan Fern * * Based in part on slides by Craig Boutilier and Daniel Weld.
Notes on assembly verification in the aTAM Days 22, 24 and 25 of Comp Sci 480.
Notes on the two-handed assembly model (2HAM) Days 38 and 39 of Comp Sci 480.
Mathematical Induction
Notes on the optimal encoding scheme for self-assembly Days 10, 11 and 12 Of Comp Sci 480.
Time Complexity of Algorithms (Asymptotic Notations)
CompSci 102 Discrete Math for Computer Science March 1, 2012 Prof. Rodger Slides modified from Rosen.
Halting Problem and TSP Wednesday, Week 8. Background - Halting Problem Common error: Program goes into an infinite loop. Wouldn’t it be nice to have.
Notes on temperature programming: lines and scaled shapes Days 28, 29 and 30 of Comp Sci 480.
CS 203: Introduction to Formal Languages and Automata
Recognising Languages We will tackle the problem of defining languages by considering how we could recognise them. Problem: Is there a method of recognising.
Notes on randomized self- assembly Days 34, 35, 36 and 37 of Comp Sci 480.
Notes for temperature 1 self- assembly Days 15, 16, 17 and 18 of Comp Sci 480.
Joint Moments and Joint Characteristic Functions.
Notes on temperature programming: unique assembly verification Days 30 and 31 of Comp Sci 480.
Mathematical Induction
Copyright © Zeph Grunschlag, Induction Zeph Grunschlag.
Copyright © Cengage Learning. All rights reserved. Sequences and Series.
Fundamentals of Informatics Lecture 12 The Halting Problem Bas Luttik.
Chapter 5. Section 5.1 Climbing an Infinite Ladder Suppose we have an infinite ladder: 1.We can reach the first rung of the ladder. 2.If we can reach.
CompSci Today’s Topics Computer Science Noncomputability Upcoming Special Topic: Enabled by Computer -- Decoding the Human Genome Reading Great.
Sect. 4.5: Cayley-Klein Parameters 3 independent quantities are needed to specify a rigid body orientation. Most often, we choose them to be the Euler.
Lecture #5 Advanced Computation Theory Finite Automata.
NPDAs Accept Context-Free Languages
Induction and recursion
Strict Self-Assembly of Discrete Sierpinski Triangles
Halting Problem.
CS21 Decidability and Tractability
Presentation transcript:

Notes on local determinism Days 12, 13 and 14 of Comp Sci 480

Motivation When does a tile set work correctly? Can you prove this? It would be nice to have a set of sufficient conditions, say X, Y, Z, etc., such that, if your tile set satisfied conditions X, Y, Z, etc., then the tile set is correct

Correctness What does it mean for a tile set to be “correct”? The tile set should uniquely produce something –The sequence of tile additions might be different each time (or there might be a large finite number of such sequences) –But the end result is always the same

First attempt What if a tile set is very strongly deterministic, in the following sense… –sequence of tile additions is unique Such a tile set always does the same thing It definitely uniquely produces some assembly “Unique assembly sequence” is a very strong sufficient condition Perhaps we can relax this condition…

Second attempt What if a tile set has the property that every tile binds “deterministically” E.g., if tile A binds to tile B (on some side) and at some location, then no other tile type can bind to B on the same side Does this tile set always do the same thing? No!

5 4 Counter example S 1 A B CDC D D A B A B Every tile binds “deterministically”, but the tile system does not uniquely produce the loop A B A B A B A B B C B C DC ?? DC Temperature τ = 1

Local determinism A special property of a particular assembly sequence (i.e., sequence of tile additions) for a tile set Key fact: if a tile set has a locally deterministic assembly sequence, then EVERY assembly sequence for that same tile set is locally deterministic –Proven by Soloveichik and Winfree (2004) Local determinism of an assembly sequence (for an assembly) guarantees the unique production of that assembly

Some notation From here on out, assume a = (a 0,a 1,…) is an assembly sequence that leads to a final (not necessarily terminal) assembly A. Sides of tiles are denoted as d, with possible values North, South, East and West. For a tile type t, –str t (d) is the strength of the glue on side d of tile type t –label t (d) is the label of the glue on side d of tile type t

Input, output and terminal sides Let (x,y) be an arbitrary point at which a tile is placed in assembly A. IN a (x,y) = { the set of sides, on which the tile placed at position (x,y), in a, initially binds } –This is the set of input sides for the tile A(x,y) in assembly sequence a. OUT a (x,y) = { the set of sides that other tiles use to initially bind to the tile placed at position (x,y) in a } –This is the set of “propagating output” sides for the tile A(x,y) in assembly sequence a. TERM a (x,y) = { North, South, East, West } - IN a (x,y) - OUT a (x,y) –Sides of the tile A(x,y) that are neither input nor output sides.

A B X IN/OUT/TERM Example #1 S 1 A Temperature τ = 2 B C A B X X 2 D XC D 1 2 Note that, IN, OUT and TERM sides are properties of an assembly sequence – NOT the tiles themselves… A B X B CC D 1 2 X 2 D X X 2 D XC DB C1 2 IN = { North, South, West } OUT = { } TERM = { East }

IN/OUT/TERM Example #2 S 1 A Temperature τ = 2 B C A B X X 2 D XC D 1 2 A B X B CC D 1 2 X 2 D X A B X X 2 D XC DB C IN = { South, West } OUT = { North } TERM = { East }

Local determinism definition Let a = (a 0, a 1, …) be an assembly sequence in a tile set T, which leads to a final structure called A, For every point (x,y) that receives a tile in A, let t = A(x,y) We say that a is locally deterministic if the following conditions are true: –For all d IN a (x,y), Σ d str t (d) = τ When a new tile binds, it binds “just barely” –If t’ T, with t ≠ t’, then for all d IN a (x,y) U TERM a (x,y) with label t’ (d) = label t (d), Σ d str t’ (d) < τ Nothing can grow from non-propagating sides except “as desired”. –The final assembly A is terminal We say that a tile set T is locally deterministic if there exists a locally deterministic assembly sequence in it.

Local determinism example S 1 A Temperature τ = 2 B C A B X 2 D XC D 1 2 A B B C B C C D C D X 2 D X X 2 D X A B

Local determinism example S 1 A Temperature τ = 2 B C A B X 2 D XC D 1 2 A B B C1 2 C D X 2 D X Final assembly is terminal Every tile binds (initially) with exactly strength 2 Need to verify deterministic binding via IN and TERM sides… …All good! ???

Local determinism example? S 1 A Temperature τ = 2 B C X 2 D XC D 1 2 B C B C C D C D X 2 D X X 2 D X A B A B X A B A B X A B A B X Final assembly is terminal Every tile binds deterministically via IN and TERM sides This tile type initially binds with strength 3 > 2… … NOT locally deterministic

3 2 Local determinism example? S 1 A B C It’s clear that this tile set produces one and only assembly – is it locally deterministic? A B B B A B B B B C 3 4 Temperature τ = 1 ?? 4 C 4 C C B C A B B B

Is this tile set locally deterministic? Temperature τ = 1 NO! Some tiles will bind with > strength 1

Local determinism theorem Theorem (Soloveichik and Winfree, 2004). If there exists a locally deterministic assembly sequence a of T, then T uniquely produces an assembly. Just exhibit one locally deterministic assembly sequence of T. Reminder (key fact): if one assembly sequence is locally deterministic, then they ALL are (for a given tile set).

Not locally deterministic Prove or disprove: if a tile set is not locally deterministic, then it does not uniquely produce an assembly Disprove: the previous “loop” example is a good example of a tile set that is NOT locally deterministic but uniquely builds an assembly

Example Prove/disprove: if one assembly sequence of a tile set is NOT locally deterministic, then the tile set is not locally deterministic Prove: –Proof by contradiction, so assume that there is a tile set that is locally deterministic but has one assembly sequence that is not locally deterministic –If the tile set is locally deterministic, then we know every assembly sequence is locally deterministic –This contradicts our assumption that one assembly sequence is not locally deterministic –Done

Example If a tile set has exactly two assembly sequences and one is locally deterministic, prove that the other is locally deterministic as well. DO NOT use that “key fact”, which says that if one assembly sequence is locally deterministic, then they all are. This is a good (fun) homework problem!

Example Recall: an assembly sequence a is locally deterministic if the following conditions are true: –For all d IN a (x,y), Σ d str t (d) = τ –If t’ T, with t ≠ t’, then for all d IN a (x,y) U TERM a (x,y) with label t’ (d) = label t (d), Σ d str t (d) < τ –The final assembly A is terminal What if we change the second condition to this: –If t’ T, with t ≠ t’, then for all d IN a (x,y) with label t’ (d) = label t (d), Σ d str t (d) < τ Deleted the “U TERM a (x,y)” part –Call this modified version of local determinism LD1 (the original is LD0) –Does the local determinism theorem still hold for LD1? That is, if a tile set has a locally deterministic assembly sequence, for LD1, does it uniquely produce an assembly? Prove or disprove! –DISPROVE!!

Disproof of previous claim S 1 A Temperature τ = 2 B C Y 2 XC D 1 2 B C B C C D C DA B A B X A B A B X X 2 D X 2 D X 2 D A B A B X

Disproof of previous claim S 1 A Temperature τ = 2 B C Y 2 XC D 1 2 B C1 2 A B A B X Remove X and its immediate OUT-neighbors (there aren’t any) No other tile type can bind via just IN sides of X… …can another tile type bind in place of X in some other assembly sequence? YES! X 2 D X 2 D A B A B X X 2 D Y 2 X Y 2 XC D “LD1 does not imply LD0”

Local determinism summary All (most?) of our tile sets we have seen thus far are locally deterministic Local determinism: sufficient conditions for unique assembly –NOT necessary conditions, i.e., a tile set can uniquely produce an assembly and not be locally deterministic

The power of non-determinism in self-assembly…

Finite shapes Does it help to purposely use non- determinism in the design of tile sets? That is, is there a shape, say X, that can be uniquely assembled with c tile types non-deterministically… –but any deterministic tile set that uniquely builds the shape X must use > c unique tile types??? Answer: YES! –Bryans, et. al., prove this in 2013

Infinite shapes What about infinite shapes? –Here, tile complexity doesn’t matter (can’t be a function of the size of the shape) Is there an infinite shape X that can be uniquely assembled using a non- deterministic tile set… –but not by any deterministic tile set??? Answer: YES! –Bryans, et. al., proved this in 2013