TU Ilmenau, Fakultät IA Institut für Theoretische Informatik FG Komplexitätstheorie und Effiziente Algorithmen Univ.-Prof. Dr. Martin Dietzfelbinger http://www.tu-ilmenau.de/fakia/AKALG WS09.html Ausgewählte Kapitel der Komplexitätstheorie/Algorithmik“ ” Übungsblatt 2, WS 2009/10 Besprechung am 12.11.2009 (mit Möglichkeit zum Vorrechnen) Aufgabe 1 (Basen) Man zeige, dass jede der Funktionenmengen F1 = {∧, ∨, ¬}, F2 = {∨, ¬}, F3 = {∧, ¬}, F4 = {NAND}, F5 = {NOR} eine vollständige Basis“ für die Menge der Booleschen Funktionen ist, d. h. dass für jedes n ” jede Funktion f ∈ Bn einen Schaltkreis besitzt, in der nur Funktionen aus Fi als Operationen vorkommen. (Hinweis: Wir wissen schon, dass F1 = {∧, ∨, ¬} eine vollständige Basis ist. Nun genügt es zu zeigen, dass jede Funktion in F1 durch die Funktionen in Fi ausgedrückt werden kann, i = 2, . . . , 5.) Ist {XOR} vollständig? Ist {∧, ∨} vollständig? (Wir werden diskutieren, wann genau eine Menge {f1 , . . . , fs } von Booelschen Funktionen eine vollständige Basis darstellt.) Aufgabe 2 (Komplexität von Entscheidungsfragen) Analysieren Sie die Komplexität, bezüglich der in der Vorlesung betrachteten Eingabeformate für Boolesche Funktionen, für die folgenden beiden Probleme: (a) DISJUNKTHEIT: {(f, g) ∈ Bn × Bn | f · g ≡ 0}. (b) STRIKTE DOMINANZ: {(f, g) ∈ Bn × Bn | f < g}. Dabei bedeutet f < g, dass f ≤ g und f 6= g gilt. Aufgabe 3 (Primimplikanten) (a) Zeigen Sie (vollständig formal): Wenn p ein vereinfachtes Polynom ist, das kein Monom enthält oder genau ein Monom enthält oder ausschließlich Monome der Länge 1 enthält, dann besteht p aus allen seinen Primimplikanten. (b) Ermitteln Sie die Menge aller Primimplikanten der durch die folgende Formel ϕ gegebenen Funktion: n = m2 und ϕ = (X1 ∨ · · · ∨ Xm ) ∧ (Xm+1 ∨ · · · ∨ X2m ) ∧ · · · ∧ (Xm(m−1)+1 ∨ · · · ∨ Xm2 ). Aufgabe 4 (Primimplikanten) Wenden Sie den Algorithmus Baum-Methode“ an, um alle Primimplikanten der Funktion zu ” finden, die durch folgendes Polynom gegeben ist: p = X̄1 X2 X̄4 + X1 X̄2 X3 + X1 X2 X3 X̄4 + X̄2 X3 X4 + X̄1 X2 X̄3 + X2 X3 X4 . 2 Ausgewählte Kapitel der Komplexitätstheorie/Algorithmik“ ” Aufgabe 5 Übungsblatt 2, WS 2009/10 (Primimplikanten des Überlaufbits) Ermitteln Sie die Menge PI(f ) der Primimplikanten der Funktion f ∈ B2n , die das Überlaufbit bei der Additon zweier n-stelliger Zahlen angibt: 1, falls (an−1 · · · a0 )2 + (bn−1 · · · b0 )2 ≥ 2n , f (an−1 , . . . , a0 , bn−1 , . . . , b0 ) = 0, sonst. Benutzen Sie Variable Xn−1 , . . . , X0 , Yn−1 , . . . , Y0 . – Ist das Polynom, das aus allen Primimplikanten besteht, ein Minimalpolynom für f ? Aufgabe 6 (Ringsummenexpansion) Ermitteln Sie die Ringsummenexpansion für die Schwellwertfunktion“ (engl.: threshold functi” on) P _ 1, falls 1≤i≤n ai ≥ 2, ai aj = THn2 (a1 , . . . , an ) = 0, sonst. 1≤i<j≤n Hinweise: Es gilt Xi = (1 ⊕ Xi ) und die Formel _ f= ma = a∈f −1 (1) M ma . a∈f −1 (1) Daraus kann man im Prinzip durch Ausmultiplizieren die RSE von f erhalten. Betrachten Sie nun zunächst n = 4. Verallgemeinern Sie dann auf beliebige n. Zusatzfrage: Wie könnte die Ringsummenexpansion der allgemeinen Schwellwertfunktion THnk , 1 ≤ k ≤ n, aussehen, die durch P 1, falls n 1≤i≤n ai ≥ k, THk (a1 , . . . , an ) = 0, sonst, definiert ist?