SLIDE 6 Basic Computability Theory Formal Languages
Problems as Formal Languages
Start with very high-level model of computation Assume a machine with input and output Formal notation for format:
◮ Σ = {σ1, . . . , σk} is a finite set of symbols ◮ w = (w1, . . . , wl) is a word over Σ: ∀i : wi ∈ Σ ⋆ Write also just w1w2 . . . wl ◮ l is the length of w, also denoted |w| ◮ ε is the empty word, i.e., |ε| = 0 ◮ Σk is the set of words of length k ◮ Σ∗ =
k≥0 Σk are all words over Σ
◮ A language is a set L ⊆ Σ∗ ◮ Let L1, L2 ⊆ Σ∗, language operations: ⋆ L1 ∪ L2 (union), L1 ∩ L2 (intersection), L1 − L2 (difference) ⋆ L := Σ∗ − L (complement) ⋆ L1L2 := {w | ∃w1 ∈ L1, w2 ∈ L2 : w = w1w2} (concatenation) Martin Stigge (Uppsala University, SE) Computational Complexity Course 13.7. - 17.7.2009 6 / 148