20.01.2015 Aufrufe

Skript (Fassung vom 4.4.2011) - Lehr- und Forschungsgebiet ...

Skript (Fassung vom 4.4.2011) - Lehr- und Forschungsgebiet ...

Skript (Fassung vom 4.4.2011) - Lehr- und Forschungsgebiet ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Definition 3.1.1 (Substitution <strong>und</strong> Matching) Eine Abbildung σ : V → T(Σ,V)<br />

heißt Substitution gdw. σ(x) ≠ x nur für endlich viele x ∈ V gilt. SUB(Σ,V) bezeichnet<br />

die Menge aller Substitutionen über Σ <strong>und</strong> V <strong>und</strong> id ∈ SUB(Σ,V) ist die identische<br />

Substitution (d.h., id(x) = x für alle Variablen x ∈ V).<br />

DOM(σ) = {x ∈ V |σ(x) ≠ x} heißt der Domain von σ. Da DOM(σ) endlich ist, ist<br />

die Substitution σ als die endliche Menge von Paaren {x/σ(x)|x ∈ DOM(σ)} darstellbar.<br />

Die Substitution σ ist eine Gr<strong>und</strong>substitution gdw. σ(x) ∈ T(Σ) für alle x ∈ DOM(σ).<br />

Substitutionen werden homomorph zu Abbildungen σ : T (Σ,V) → T(Σ,V) erweitert,<br />

d.h. σ(f(t 1 ,...,t n )) = f(σ(t 1 ),...,σ(t n )).<br />

Für zwei Terme s,t sagen wir, dass der Term s den Term t matcht, falls es eine Substitution<br />

σ gibt mit σ(s) = t. Die Substitution σ heißt dann ein Matcher von s <strong>und</strong> t.<br />

Für x ∗ = x 1 ...x n ∈ V ∗ mit x i ≠ x j für i ≠ j <strong>und</strong> t ∗ = t 1 ...t n ∈ T (Σ,V) ∗ schreiben wir<br />

oft {x ∗ /t ∗ } als Kurzschreibweise für die Substitution {x 1 /t 1 ,...,x n /t n }. Weiterhin schreibt<br />

man Substitutionen auch oft hinter den Term, auf den sie angewendet werden, d.h., tσ<br />

steht für σ(t).<br />

Beispiel 3.1.2 Wir betrachten wieder die Signatur von Bsp. 2.1.2. Ein Beispiel für eine<br />

Substitution ist σ = {x/plus(x,y),y/O,z/succ(z)}. Man erhält dann<br />

σ(plus(x,y)) = plus(x,y)σ = plus(plus(x,y),O).<br />

Der Term plus(x,y) matcht daher den Term plus(plus(x,y),O) <strong>und</strong> die Substitution σ ist<br />

ein Matcher.<br />

Ist eine Gleichung s ≡ t in einer Algebra A gültig, so gilt dies auch für jede Instanz<br />

sσ ≡ tσ der Gleichung. Die Gleichung gilt also unabhängig davon, welche Elemente des<br />

Trägers den Variablen zugewiesen werden. Die Variablen in s <strong>und</strong> t sind daher implizit<br />

allquantifiziert. Damit bleibt die Gültigkeit einer Gleichung erhalten, wenn Variablen durch<br />

beliebige Terme ersetzt werden. Ebenso verhält es sich mit der Relation ≡ E , d.h., ≡ E ist<br />

abgeschlossen oder stabil unter Substitutionen.<br />

Definition 3.1.3 (Stabilität) Eine Relation → über Termen (d.h., →⊆ T (Σ,V)×T (Σ,<br />

V) heißt stabil oder abgeschlossen unter Substitutionen, wenn für alle Terme t 1 ,t 2 <strong>und</strong> alle<br />

Substitutionen σ aus t 1 → t 2 folgt, dass auch t 1 σ → t 2 σ gilt.<br />

DasfolgendeLemma beschreibt dieobengenanntenZusammenhänge zwischen demsyntaktischen<br />

Begriff “Substitution” <strong>und</strong> dem semantischen Begriff “Variablenbelegung”. Zum<br />

Beweis verwenden wir eine strukturelle Induktion über Terme. Diesist möglich aufgr<strong>und</strong>der<br />

induktiven Definition von Termen (Def. 2.1.3). Wenn man eine Aussage ϕ(t) für alle Terme<br />

t ∈ T(Σ,V) zeigen will, so kann man wie folgt vorgehen: Im Induktionsanfang zeigt man,<br />

dass die Aussage für alle Variablen gilt (d.h. ϕ(x) muss für alle x ∈ V bewiesen werden)<br />

<strong>und</strong> dass die Aussage auch für alle Konstanten gilt (d.h. ϕ(c) muss für alle c ∈ Σ 0 gelten).<br />

Im Induktionsschluss muss man beweisen, dass die Aussage für alle Terme der Gestalt<br />

f(t 1 ,...,t n ) (für alle Funktionssymbole f ∈ Σ n mit n > 0 <strong>und</strong> alle t 1 ,...,t n ∈ T(Σ,V))

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!