Termersetzungsysteme SS 2014 Übungsblatt 6 Abgabe der Lösungen: 4.06.2014 Aufgabe 1 Aussagenlogische Formeln (5 Punkte) Betrachten Sie das folgende TES hΣ, Ri über Σ = {> : 0 → 1, ⊥ : 0 → 1, ∧ : 2 → 1, ∨ : 2 → 1, ¬ : 1 → 1}: ¬> → ¬(x ∧ y) → >∧y → x∧>→ ⊥∧y → x∧⊥→ x∨y → ⊥ (¬y) ∨ (¬x) y x ⊥ ⊥ ¬(¬x ∧ ¬y) ¬⊥ → ¬(x ∨ y) → ⊥∨y → x∨⊥→ >∨y → x∨>→ ¬¬x → > (¬x) ∧ (¬y) y x > > x Beweisen Sie, dass hΣ, Ri konvergent (also (SN) und (CR)) ist. Aufgabe 2 1-Bit-Speicher (8 Punkte) Die folgende Spezifikation hΣ, Ei über Σ = {? : 2 → 1, !0 : 1 → 1, !1 : 1 → 1} formalisiert Berechnungen über einem 1-Bit-Speicher: x?x ≈ !0 (x?y) ≈ !1 (x?y) ≈ (!0 (x)?!1 (y)) ≈ !0 (!1 (x)) ≈ !1 (!0 (x)) ≈ x !0 (x) !1 (y) x?y !1 (x) !0 (x) 1. Erstellen Sie ein konvergentes TES (Σ, R), so dass ≈E = (↔R )∗ (Konvergenz muss bewiesen werden!) 2. Beweisen Sie, dass die Gleichungen !0 (!0 (x)?y) ≈ !0 (x), !1 (!0 (x)?!1 (y)) ≈ !1 (y), (x?y)?(z?v) ≈ x?v, (x† )† ≈ x aus E folgen, indem sie Normalformen beiden Seiten der Gleichungen berechnen und vergleichen. Dabei ist t† Abkürzung für !1 (x)?!0 (x). 3. Beweisen Sie, dass E ` !0 (x) ≈ !1 (x) nicht gilt. Hinweis: Konstruieren Sie die Ersetzungsregeln so, dass sie genau die folgenden Normalformen induzieren: x, x?z, !0 (x), !1 (x), !1 (x)?y, x?!1 (y), !1 (x)?!0 (y), wobei x, y, z ∈ Vars und x 6= z. TES, SS 2014 Aufgabe 3 2-Bit-Speicher (7 Punkte) Ein Tensorprodukt von zwei Spezifikationen hΣ1 , E1 i und hΣ2 , E2 i mit Σ1 ∩ Σ2 = ∅ ist eine Spezifikation hΣ1 , E1 i ⊗ hΣ2 , E2 i = hΣ1 ∪ Σ2 , E1 ⊗ E2 i, die folgende Gleichungen enthält: • alle Gleichungen von E1 ; • alle Gleichungen von E2 ; • sogenannte Tensorgesetze: für alle f : n → 1 ∈ Σ1 , g : m → 1 ∈ Σ2 , f (g(x11 , . . . , x1m ), . . . , g(xn1 , . . . , xnm )) ≈ g(f (x11 , . . . , xn1 ), . . . , f (x1m , . . . , xnm )) Für Σ1 ∩ Σ2 6= ∅ konstruieren wir hΣ̂2 , Ê2 i aus hΣ2 , E2 i durch disjunkte Umbenennung von Funktionssymbolen gemäß f 7→ fˆ, so dass Σ1 ∩ Σ̂2 = ∅; wir setzen dann hΣ1 , E1 i ⊗ hΣ2 , E2 i = hΣ1 ∪ Σ̂2 , E1 ⊗ Ê2 i. Die Idee des Tensorprodukts ist, die Spezifikationen so zu kombinieren, dass sie füreinander transparent sind. Z.B. die Spezifikation hΣ, Ei = h{o : 0 → 1, s : 1 → 1, + : 2 → 1}, {x + o ≈ x, x + s(y) ≈ s(x + y)}i beschreibt natürliche Zahlen. Jeder Grundterm über Σ ist zu einem Term der Form sn (o) äquivalent, und repräsentiert dann also die Zahl n. Der Tensorprodukt hΣ, Ei ⊗ hΣ, Ei spezifiziert dann Paare von Zahlen. Konkret besteht E ⊗ E aus den folgenden Gleichungen: x+o ≈x x + s(y) ≈ s(x + y) E Ê x+̂ô ≈ x x+̂ŝ(y) ≈ ŝ(x+̂y) Tensorgesetze o ≈ ô ô + ô ≈ ô s(ŝ(x)) ≈ ŝ(s(x)) ŝ(x) + ŝ(y) ≈ ŝ(x + y) s(ô) ≈ ô s(x+̂y) ≈ s(x)+̂s(y) (x+̂y) + (z +̂v) ≈ (x + z)+̂(y + v) Die Grundterme über Σ ∪ Σ̂ sind zu Termen der Form ŝn (sm (o)) äquivalent und repräsentieren also Paare hn, mi. 1. Bilden Sie den Tensorprodukt der Spezifikation aus Aufgabe 2 mit sich selbst. 2. Erstellen Sie ein konvergentes TES (Σ ∪ Σ̂, T ), so dass ≈E⊗E = (↔T )∗ . 3. Beweisen Sie, dass (Σ ∪ Σ̂, T ) (SN) ist. 4. Wie sehen die Normalformen unter T aus? Hinweis: Um (SN) zu beweisen, verwenden Sie eine rekursive Pfadordnung mit der Rangfolge (, Σ ∪ Σ̂) mit der Eigenschaft, dass f g für alle f ∈ Σ, g ∈ Σ̂. 2