T–79.1001 Autumn 2007 Introduction to Theoretical 79.1001 Autumn 2007 Introduction to...

Post on 27-Mar-2018

218 views 4 download

Transcript of T–79.1001 Autumn 2007 Introduction to Theoretical 79.1001 Autumn 2007 Introduction to...

T–79.1001 Autumn 2007Introduction to Theoretical Computer Science TTutorial 7, 1 to 6 NovemberProblems

Homework problems:

1. Show, using the pumping lemma for regular languages, that the language consistingof even-length palindromes,

{wwR | w ∈ {a, b}∗}is not regular.

2. Convert the following grammar into Chomsky normal form:

S → AB | cA → T | aA

B → TT | εT → bS

3. Determine, using the CYK algorithm (“dynamic programming method”, Sipser p.241, Lewis & Papadimitriou p. 155), whether the strings abba, bbaa and bbaab aregenerated by the grammar

S → AB | BA | a | bA → BA | aB → AB | b

In the positive cases, give also the respective parse trees.

Demonstration problems:

4. Pattern expressions are a generalisation of regular expression used e.g. in some textediting tools of UN*X-type operating systems. In addition to the usual regular ex-pression constructs, a pattern expression may contain string variables, inducing theconstraint that any two appearances of the same variable must correspond to thesame substring. Thus e.g. aXb∗Xa and aX(a ∪ b)∗Y X(a ∪ b)∗Y a are pattern ex-pressions over the alphabet {a, b}. The first one of these describes the language{awbnwa | w ∈ {a, b}∗, n ≥ 0}. Prove that pattern expressions are a proper general-isation of regular expressions, i.e. that pattern expressions can be used to describe alsosome nonregular languages.

5. Prove that the language {w ∈ {a, b}∗ | w contains equally many a’s and b’s} is notregular, and design a context-free grammar generating it.

6. Design an algorithm for testing whether a given a context-free grammar G =(V, Σ, P, S), generates a nonempty language, i.e. whether any terminal string x ∈ Σ∗

can be derived from the start symbol S.