# Homework Assignments

From Introduction to the Theory of Computation by Michael Sipser, PWS Publishing unless otherwise noted.

### Homework 1, due Tuesday 02/08

1. 1.4 (e, h & l)
2. 1.5 (b, c)
3. 1.10
4. For any language L, subset of Sigma*, define HALF(L) as follows:
HALF(L) = { x in Sigma* | there exists y in Sigma*, |x| = |y| and xy is in L }.
Show that if L is regular, then HALF(L) must also be regular.

### Homework 2, due Tuesday 02/15

1. 1.23 (b, c & d)
2. 1.30
3. 1.41
4. Describe an algorithm that, given a DFA M, determines whether L(M) contains an infinite number of strings. Argue that your algorithm is correct.

### Homework 3, due Tuesday 02/22

1. Let A and B be subsets Sigma*. Define TwoWay(A,B) as follows:
TwoWay(A,B) = { x in Sigma* | x is in A and xR is in B }
where xR denotes the reversal of x. Show that if A and B are regular, then TwoWay(A,B) must also be regular.

3. 2.18 (b, c & d)
4. 2.26

1. 3.10
2. 3.12
3. 3.16

1. 4.18
2. 5.10
3. 5.14 & 5.15
4. 5.20

### Homework 6, due Tuesday 04/05

1. A set is cofinite if it is the complement of a finite set. Let
COF = { < M > | M is a TM and L(M) is cofinite}
FIN = { < M > | M is a TM and L(M) is finite}
Prove that FIN ≤m COF. That is FIN reduces to COF via a many-one reduction (a.k.a. a "mapping" reduction).
2. Prove directly that ATMm-reduces to FIN and the complement of ATMm-reduces to FIN.
3. 6.5
4. 6.15

### Homework 7, due Tuesday 04/19

1. 9.3
2. 9.20. Note: the definition of pad(A, f(n)) should be
pad (A, f(n)) = { pad(s, f(n)) | where n is the length of s and s is in A }.
3. 9.21

1. 7.21
2. 7.27
3. 7.28
4. 7.29

### Homework 9, due Tuesday 05/03

1. 7.23
2. Show that Dominating Set (DOM) defined below is NP-complete.
DOM = { (G,k) | G = (V,E) is an undirected graph and there exists V' subset of V such that |V'| ≤ k and for each vertex u in V - V' there exists a v in V' such that (u,v) in E }
3. 8.8
4. 8.20

### Homework 10, due Tuesday 05/17

1. 10.7
2. 10.11
3. 10.13 Hint: Think closure under polynomial-time many-one reductions.
4. 10.14 Hint: Show that an NPSAT machine only needs to make one query to the SAT oracle. to Spring 2005 CMSC 651 Homepage