Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "Notes on temperature programming: lines and scaled shapes Days 28, 29 and 30 of Comp Sci 480."— Presentation transcript:

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

2 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…

3 Basic idea… 1 S τ = ‹ τ 0 ›

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

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

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

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

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

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

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

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

12 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…

13 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 ›

14 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…

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

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

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

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

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

20 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…

21 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

22 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

23 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

24 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

25 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, …›

26 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, …›

27 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…

28 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

29 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

30 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 ›

31 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

32 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

33 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…

34 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

35 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.

36 Example Hamiltonian path

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

38 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

39 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…

40 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)

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

42 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!!!

43 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

44 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)

45 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… ?

46 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

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

48 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

49 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

50 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

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

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

53 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)

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

55 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!

56 Put it all together…

57 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


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

Similar presentations


Ads by Google