Notes on temperature programming: lines and scaled shapes Days 28, 29 and 30 of Comp Sci 480.

Slides:



Advertisements
Similar presentations
Walks, Paths and Circuits Walks, Paths and Circuits Sanjay Jain, Lecturer, School of Computing.
Advertisements

QuickSort Average Case Analysis An Incompressibility Approach Brendan Lucier August 2, 2005.
Proofs, Recursion and Analysis of Algorithms Mathematical Structures for Computer Science Chapter 2 Copyright © 2006 W.H. Freeman & Co.MSCS SlidesProofs,
Ch. 10: What is a number?. MAIN DEFINITION OF THE COURSE: A symmetry of an object (in the plane or space) means a rigid motion (of the plane or space)
Fall 2006Costas Busch - RPI1 Non-regular languages (Pumping Lemma)
Copyright © Cengage Learning. All rights reserved. CHAPTER 5 SEQUENCES, MATHEMATICAL INDUCTION, AND RECURSION SEQUENCES, MATHEMATICAL INDUCTION, AND RECURSION.
Section 7.4: Closures of Relations Let R be a relation on a set A. We have talked about 6 properties that a relation on a set may or may not possess: reflexive,
Quantum One: Lecture 3. Implications of Schrödinger's Wave Mechanics for Conservative Systems.
Copyright © Cengage Learning. All rights reserved.
Induction and recursion
Algebra Problems… Solutions Algebra Problems… Solutions © 2007 Herbert I. Gross Set 22 By Herbert I. Gross and Richard A. Medeiros next.
1 Discrete Structures & Algorithms Graphs and Trees: II EECE 320.
CS5371 Theory of Computation
Induction Sections 41. and 4.2 of Rosen Fall 2008 CSCE 235 Introduction to Discrete Structures Course web-page: cse.unl.edu/~cse235 Questions:
Induction Sections 4.1 and 4.2 of Rosen Fall 2010
Kavita Hatwal Fall Sequences and Induction.
Context Free Pumping Lemma Zeph Grunschlag. Agenda Context Free Pumping Motivation Theorem Proof Proving non-Context Freeness Examples on slides Examples.
4. The Postulates of Quantum Mechanics 4A. Revisiting Representations
Foundations of (Theoretical) Computer Science Chapter 1 Lecture Notes (Section 1.4: Nonregular Languages) David Martin With some.
Induction and recursion
Copyright © Cengage Learning. All rights reserved. CHAPTER 11 ANALYSIS OF ALGORITHM EFFICIENCY ANALYSIS OF ALGORITHM EFFICIENCY.
Called as the Interval Scheduling Problem. A simpler version of a class of scheduling problems. – Can add weights. – Can add multiple resources – Can ask.
Induction and recursion
The Forward-Backward Method The First Method To Prove If A, Then B.
Reading and Writing Mathematical Proofs
College Algebra Fifth Edition James Stewart Lothar Redlin Saleem Watson.
C&O 355 Mathematical Programming Fall 2010 Lecture 4 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A.
Section 1.8. Section Summary Proof by Cases Existence Proofs Constructive Nonconstructive Disproof by Counterexample Nonexistence Proofs Uniqueness Proofs.
Approximating the Minimum Degree Spanning Tree to within One from the Optimal Degree R 陳建霖 R 宋彥朋 B 楊鈞羽 R 郭慶徵 R
Mathematical Induction I Lecture 4: Sep 16. This Lecture Last time we have discussed different proof techniques. This time we will focus on probably the.
Notes for self-assembly of thin rectangles Days 19, 20 and 21 of Comp Sci 480.
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.
Notes on the optimal encoding scheme for self-assembly Days 10, 11 and 12 Of Comp Sci 480.
Copyright © Zeph Grunschlag, Induction Zeph Grunschlag.
Notes on local determinism Days 12, 13 and 14 of Comp Sci 480.
Naïve Set Theory. Basic Definitions Naïve set theory is the non-axiomatic treatment of set theory. In the axiomatic treatment, which we will only allude.
CompSci 102 Discrete Math for Computer Science March 1, 2012 Prof. Rodger Slides modified from Rosen.
(CSC 102) Lecture 23 Discrete Structures. Previous Lecture Summery  Sequences  Alternating Sequence  Summation Notation  Product Notation  Properties.
CS 103 Discrete Structures Lecture 13 Induction and Recursion (1)
CS 203: Introduction to Formal Languages and Automata
Fundamentals of Informatics Lecture 13 Reduction Bas Luttik.
Notes on randomized self- assembly Days 34, 35, 36 and 37 of Comp Sci 480.
Mathematical Induction 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.
Notes for temperature 1 self- assembly Days 15, 16, 17 and 18 of Comp Sci 480.
Notes on temperature programming: unique assembly verification Days 30 and 31 of Comp Sci 480.
Mathematical Induction
Copyright © Cengage Learning. All rights reserved. Sequences and Series.
CompSci 102 Discrete Math for Computer Science March 13, 2012 Prof. Rodger Slides modified from Rosen.
Great Theoretical Ideas in Computer Science for Some.
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 102 Introduction to Discrete Mathematics.
Equivalence with FA * Any Regex can be converted to FA and vice versa, because: * Regex and FA are equivalent in their descriptive power ** Regular language.
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.
1 Section 4.4 Inductive Proof What do we believe about nonempty subsets of N? Since  N, <  is well-founded, and in fact it is linear, it follows that.
Chapter 5 1. Chapter Summary  Mathematical Induction  Strong Induction  Recursive Definitions  Structural Induction  Recursive Algorithms.
Theory of Computational Complexity Probability and Computing Chapter Hikaru Inada Iwama and Ito lab M1.
Induction (chapter of the book and chapter of the notes)
Chapter 6 Differentiation.
Induction and recursion
CSE 311: Foundations of Computing
Summary of General Binary search tree
Chapter 5 Induction and Recursion
Depth Estimation via Sampling
Quantum One.
Brief Review of Proof Techniques
Induction and recursion
Lectures on Graph Algorithms: searching, testing and sorting
Notes on temperature programming
Induction Rosen 5 Lecture 8: Oct 29, 30.
Presentation transcript:

Notes on temperature programming: lines and scaled shapes Days 28, 29 and 30 of Comp Sci 480

A question In 2006, Kao and Schweller asked if there exists a universal tile set (constant size) that can be programmed, via a carefully chosen sequence of temperatures, to build a 1xN line Maybe build a kxN rectangle first, and then melt away all but the bottom row? Seems plausible…

Basic idea… 1 S τ = ‹ τ 0 ›

Basic idea… 10 S τ = ‹ τ 0, τ 1 ›

Basic idea… 101 S τ = ‹ τ 0, τ 1, τ 2 ›

Basic idea… 1010 S τ = ‹ τ 0, τ 1, τ 2, τ 3 ›

Basic idea… S τ = ‹ τ 0, τ 1, τ 2, τ 3, τ 4 ›

Basic idea… S τ = ‹ τ 0, τ 1, τ 2, τ 3, τ 4, τ 5 ›

Basic idea… S τ = ‹ τ 0, τ 1, τ 2, τ 3, τ 4, τ 5, τ 6 ›

Basic idea… S τ = ‹ τ 0, τ 1, τ 2, τ 3, τ 4, τ 5, τ 6, τ 7 ›

Basic idea… S τ = ‹ τ 0, τ 1, τ 2, τ 3, τ 4, τ 5, τ 6, τ 7, τ 8 › This doesn’t work! Let’s see why…

Lines Fact: N tile types are required to build a 1xN line in the temperature programming model, no matter how many temperature changes are allowed Same tile complexity as in the aTAM We will now prove this –In doing so, some details will be omitted…

Proof by contradiction Proof sketch… Assume that there is a tile set T, such that, for any N, there is a temperature sequence τ = ‹ τ i › in which a 1xN line is uniquely produced Let N = |T| + 1 Assume a 1xN line uniquely assembles in the sequence: τ = ‹ τ 0, τ 1,..., τ m-1 ›

Two observations S N tiles Observation 1: Each internal glue must be ≥ τ m-1, … …otherwise the final line would not be stable (and would fall apart) Observation 2: All external glues must be < τ m-1, … …otherwise stuff could attach during the final temperature phase and the resulting final structure would not be a line Suppose this is what’s leftover after the final temperature phase completes…

Cases There are two cases that we will consider In each case, we will derive a contradiction…

Case 1 What if T assembles the line WITHOUT ever placing a tile outside of the 1xN line? τ = ‹ τ 0 › S

Case 1 What if T assembles the line WITHOUT ever placing a tile outside of the 1xN line? τ = ‹ τ 0, τ 1 › S

Case 1 What if T assembles the line WITHOUT ever placing a tile outside of the 1xN line? τ = ‹ τ 0, τ 1, …, › S

Case 1 What if T assembles the line WITHOUT ever placing a tile outside of the 1xN line? τ = ‹ τ 0, τ 1, …, τ m-1 › S

Case 1 What if T assembles the line WITHOUT ever placing a tile outside of the 1xN line? τ = ‹ τ 0, τ 1, …, τ m-1 › S Pigeonhole principle says ≥ one tile type must be repeated…

Case 1 What if T assembles the line WITHOUT ever placing a tile outside of the 1xN line? τ = ‹ τ 0, τ 1, …, τ m-1 › BS Pigeonhole principle says ≥ one tile type must be repeated… this one AA

Case 1 What if T assembles the line WITHOUT ever placing a tile outside of the 1xN line? τ = ‹ τ 0, τ 1, …, τ m-1 › What if τ A-X ≤ τ m-1 ? Then, by Observation 1, the A-B∙∙∙A segment could be repeated indefinitely during the stage in which X binds to A… Must have: τ A-X > τ m-1 AXBSA

Case 1 What if T assembles the line WITHOUT ever placing a tile outside of the 1xN line? τ = ‹ τ 0, τ 1, …, τ m-1 › If τ A-X > τ m-1, then the A-B∙∙∙A segment can still be repeated indefinitely (slightly more complicated argument, so… details omitted) AXBSA

Case 1 What if T assembles the line WITHOUT ever placing a tile outside of the 1xN line? τ = ‹ τ 0, τ 1, …, τ m-1 › No matter what, Case 1 yields a contradiction. Conclusion: every assembly sequence in T must place a tile outside the 1xN line at some point. On to case 2… AXBSA

Case 2 SA T must place some tile outside of the 1xN line at some point… Y Suppose during temperature phase τ i, T places the first tile outside of the line… What is the strength with which Y binds (not necessarily to A)? What if ≥ τ m-1 … ? … then Observation 2 says that it could be added back during the final temperature phase (some details omitted) τ = ‹ τ 0, τ 1, …, τ i, …›

Case 2 SA T must place some tile outside of the 1xN line at some point… Y Suppose during temperature phase τ i, T places the first tile outside of the line… What is the strength with which Y binds (not necessarily to A)? Must be: < τ m-1 … …AND the line is “capped” temporarily before this point – otherwise the whole line would fill in when Y binds because Observation 1 says that all internal bonds are at least τ m-1 τ = ‹ τ 0, τ 1, …, τ i, …›

Case 2 SA T must place some tile outside of the 1xN line at some point… Y τ = ‹ τ 0, τ 1, …, τ i, …› When placing the cap tile, nothing should stop us from just putting the tile that would normally go after A…

Case 2 SA T must place some tile outside of the 1xN line at some point… Y τ = ‹ τ 0, τ 1, …, τ i, …› When placing the cap tile, nothing should stop us from just putting the tile that would normally go after A… B

Case 2 SA T must place some tile outside of the 1xN line at some point… Y τ = ‹ τ 0, τ 1, …, τ i, τ i +1, …› But then, when we place Y, say at temperature phase τ i+1 < τ i, we are at temperature < τ m-1 … B

Case 2 SA T must place some tile outside of the 1xN line at some point… Y But then, when we place Y, say at temperature phase τ i+1 < τ i, we are at temperature < τ m-1 … … so the rest of the line can fill in at this stage and in doing so, the A-B∙∙∙A segment could be repeated indefinitely (there’s nothing stopping it and the temperature is < τ m-1 ) A B τ = ‹ τ 0, τ 1, …, τ i, τ i +1, … τ m-1 ›

Proof summary Fact: T must place some tile outside the line at some point Look at the first tile that gets placed outside the line –If it can bind too weakly, the whole line could just fill in before it binds –If it can bind too strongly, then it could be added back in the final temperature phase

Conclusion There is no such thing as a universal (constant size) tile set that can uniquely build 1xN lines for any N Corollary: there is no tile set T that can be programmed via a carefully chosen sequence of temperature changes to uniquely build ANY shape

Scaled shapes There is no universal tile set that can be programmed via temperature changes to build an arbitrary shape There IS a universal (constant size) tile set that can be programmed via temperature changes to build an arbitrary shape scaled up by a constant scale factor Will use the modified bit-flip gadgets Some definitions first…

Scaling a shape If X is a finite shape and c is some natural number, then the c-scaling of X, written as X c is exactly the shape obtained by replacing each point in X with a cxc block of points 3-scaling… X X3X3

Hamiltonian paths Let X be a finite shape A Hamiltonian path in X is a sequence of locations in X, (x 0,y 0 ), (x 1,y 1 ), …, (x |X|-1, y |X|-1 ), satisfying the following properties: –[uniqueness] (x i,y i ) ≠ (x j,y j ) assuming i ≠ j –[adjacency] |x i – x j | + |y i – y j | = 1 Definition: if X is a finite shape with a Hamiltonian path, we will say that X is a Hamiltonian shape.

Example Hamiltonian path

Another example... Does this shape have a Hamiltonian path?

Temperature programming scaled shapes There is a tile set T such that, for any finite Hamiltonian shape X, T uniquely assembles X 11 via some temperature sequence ‹ τ j › 0≤j<m with m = O(|X|) The tile set does not depend on X The temperature sequence DOES depend on X Only works for Hamiltonian shapes

Modified bit-flip gadgets Have a bunch of bit-flip square gadgets –11x11 Encode 4 signals –11: Stop –00: Keep going in same direction –01: Turn left (relative to current orientation) –10: Turn right (relative to current orientation) Use two bit-flip gadgets in sequence and just keep track of the 2-bit sequence Use filler tiles to fill in the rest of the 11x11 square Lots of tedious details that will be omitted…

A 1 0A 0 1A 1 1 A 0 0 Bit-flip squares (high-level) Create rotated versions of each of these squares for every possible direction of input (from the north, south, east or west)

Bit-flip squares in action S 0 0A 0 0A 0 1 A 00 A 01 A 0 0 A 1 0 A 11

Limitation of bit-flip squares Not every shape has a Hamiltonian path… How do we uniquely build (a scaled version of) this shape using bit-flip squares? After all, our GOAL was to have a universal tile set that could be (temperature) programmed to build a scaled version of ANY shape!!!

Fact If X is a finite shape, then X 2 is Hamiltonian, i.e., X 2 has a Hamiltonian path (we’ll prove this later) Not Hamiltonian… Hamiltonian! X X2X2

Double the scale factor WE KNOW: There is a tile set T such that, for any finite Hamiltonian shape X, T uniquely assembles X 11 via some temperature sequence ‹ τ j › 0≤j<m with m = O(|X|) –Apply the previous statement with X 2 Mission accomplished: T (the bit-flip squares) can be temperature programmed to uniquely build a scaled up version of any shape (scale factor is 22 no matter what the shape is – Hamiltonian or not)

Proof of previous fact We should prove this: If X is a finite shape, then X 2 is Hamiltonian, i.e., X 2 has a “nice” Hamiltonian path What is a “nice” Hamiltonian path… ?

A “nice” Hamiltonian path X is a finite shape A Hamiltonian path is “nice” if… –For all adjacent points (x i,y i ), (x j,y j ) along the perimeter of X 2 that belong to the same 2x2 block, they must be consecutive along the path The adjacent points must have the same perimeter-facing sides (assuming points are represented as squares) –The first and last points in the path are allowed to violate this condition Examples… A “nice” path Not “nice”* *Does not imply that this shape is not nicely Hamiltonian, because you can probably think of a nice Hamiltonian path for this particular shape! X X2X2 X X2X2

Proof by induction We will prove that, for every finite shape X, X 2 has a nice Hamiltonian path Proof by induction on |X|

Base case: |X| = 1 If |X| = 1, then X 2 looks like this… X 2 is clearly nicely Hamiltonian –Remember, the first and last points in the path don’t count when determining “niceness” of the Hamiltonian path

Induction case Assume (inductive hypothesis): If |X| = k, then X 2 is (nicely) Hamiltonian –I.e., X 2 has a nice Hamiltonian path Prove: For a shape X with |X| = k + 1, X 2 is nicely Hamiltonian

Apply induction hypothesis X has k + 1 points, i.e., |X| = k + 1 Let X' = X - (x,y), where (x,y) is some point along the perimeter of X –X' is X with the point (x,y) deleted Assume X’ is still a shape –That is, removing (x,y) from X does not disconnect X Note: |X'| = |X - (x,y)| = |X| - 1 = k –Can apply the induction hypothesis because |X'| = k Induction hypothesis: X' 2 has a nice Hamiltonian path

An example X, with k + 1 pointsX' with k points

An example X, with k + 1 pointsX' with k points This point is also along the perimeter

Some cases Look at the Hamiltonian path in X' 2 in the points surrounding the 2x2 block for the point (x,y) that got deleted from X… …Since (x,y) was deleted from the perimeter of X, these are the only cases to consider (and symmetric variations thereof)… Missing 2x2 block for (x,y) Missing 2x2 block for (x,y) Missing 2x2 block for (x,y) Missing 2x2 block for (x,y)

Add the 2x2 block for (x,y) back to X' 2 Missing 2x2 block for (x,y)

Now modify the nice Hamiltonian path to include the newly added 2x2 block The nice path is still nice after the modification There are some other (special) cases to consider, but we now know that X 2 has a nice Hamiltonian path… …induction case satisfied!

Put it all together…

S 0 0A 0 0A 0 1 A 00 A 01 A 0 0 A 0 1 A 11 A 10 A 0 1 A 00 A 01 A 1 0 A 00 A 00 A 00