Zurück zur Übersicht

Begriff

Term Rewriting

Computer Science Logic S4
2 Quellen 0 Lernpfade 1 Backlink enriched

Warum wichtig?

Dieser Begriff ist ein Knoten im SengakujiWorks-Wissensnetz. Nutze Level 0 für die erste Einordnung, Level 1 für Praxis, Level 2 für technische Struktur und Level 3 für Grenzen, Fallstricke und Expertenkontext.

Was ist Rechnen? Turing sagt: "Zustände auf einem Band ändern." Church (Lambda Kalkül) sagt: "Funktionen anwenden." Term Rewriting sagt: "Suchen und Ersetzen." Du hast Regeln: add(zero, x) -> x add(succ(x), y) -> succ(add(x, y)) Du hast einen Term: add(succ(zero), succ(zero)). Du wendest Regeln an, bis es nicht mehr geht. Ergebnis: succ(succ(zero)) (Das ist 2). Fast jede funktionale Sprache (Haskell) ist im Kern ein Term Rewriting System.

Merksatz: Ein Berechnungsmodell, das auf der wiederholten Anwendung von Ersetzungsregeln auf symbolische Ausdrücke (Terme) basiert, bis eine Normalform erreicht ist.


Quick-Check

  1. Ist Lambda Kalkül Term Rewriting?
    Ja, eine spezielle Form mit nur einer Regel ($\beta$-Reduktion). Term Rewriting ist allgemeiner (beliebige Regeln).
  2. Normalform?
    Ein Term, auf den keine Regel mehr passt. Das "Ergebnis".
  3. Nicht-deterministisch?
    Oft ja. Es können mehrere Regeln passen. Konfluenz garantiert, dass es egal ist, welche wir nehmen.