22.08.2013 Aufrufe

Grundlagen der Informatik I “Programmierung”

Grundlagen der Informatik I “Programmierung”

Grundlagen der Informatik I “Programmierung”

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Kette von ∨ bzw. ∧ Operationen realisiert werden kann. Erst wenn Bereich Mengen enhält, die nicht mehr<br />

endlich sind, erhalten die beiden Operatoren eine, über die Aussagenlogik hinausgehende Bedeutung. Man<br />

mache sich jedoch klar, daß obige, konstruktive Semantikbeschreibung bei unendlichen Bereichen nicht immer<br />

terminiert. D.h. im Fall des All-Operators wird die Berechnung <strong>der</strong> Semantik genau dann nicht abbrechen,<br />

wenn <strong>der</strong> Bereich unendlich ist und das Prädikat für alle Belegungen wahr liefert.<br />

In <strong>der</strong> Aussagenlogik galt das Prinzip, daß wir eine Variable mit einem Wert belegen dürfen, solange wir<br />

alle Vorkommen dieser Variablen konsistent ersetzen. In <strong>der</strong> Prädikatenlogik gilt dieses nun nicht mehr.<br />

Das Prädikat A ⇒ (∃x : 1..15 . A) hat völlig unterschiedliche Bedeutungen, abhängig davon, ob x in A<br />

vorkommt. Falls x in A nicht vorkommt, dann ist dieses Prädikat immer wahr, unabhängig von <strong>der</strong> sonstigen<br />

Struktur von A (es kann dann auf das Axiom A ⇒ A <strong>der</strong> Aussagenlogik zurückgeführt werden). Sei A jedoch<br />

x > 17, dann spielt die Belegung von x in A eine entscheidende Rolle, es gilt nämlich für die Belegung von<br />

x mit 13 (state = [ ..., x ↦→ 13] ) , daß 13 > 17 ⇒ (∃x : 1..15 . x > 17) mit unserer Semantik wahr liefert,<br />

während wir für die Belegung von x mit 18 falsch erhalten. Wie man deutlich sieht, wird das x in dem<br />

’zweiten’ A unseres Prädikates durch den Quantor gebunden, es ist also lediglich lokal ’bekannt’. Damit wird<br />

die Belegung für x in unserem Prädikat nicht für das x in dem zweiten A, das ’lokale’ x wirksam. Falls A<br />

an<strong>der</strong>erseits die Form ∃x : Bereich . B hat, dann ergibt sich die Bedeutung des Gesamtprädikates wie<strong>der</strong>um<br />

unabhängig von einer Belegung von x, wir haben wie<strong>der</strong>um eine Tautologie. Genauer gesagt bedeutet dies,<br />

daß wir zwei unterschiedliche Prädikate haben, abhängig von dem Vorkommen von x in A. Derartige lokale<br />

Vorkommen haben wir natürlich auch bei Funktionssymbolen wie n i=1 , n<br />

i=1 , n i=1 und ähnlichen an<strong>der</strong>en.<br />

Auch hier ist i nur ein lokaler Parameter.<br />

Die obige Semantikfunktion realisiert also die Vorstellung, daß Variable, die durch einen Quantor o<strong>der</strong> ein<br />

Funktionssymbol ’gebunden’ werden, an<strong>der</strong>s zu behandeln sind, als ’freie’ Variable.<br />

Sei x eine Variable und A ein Prädikat, dann wird x als gebunden bezeichnet, falls es in einem Unterausdruck<br />

von A <strong>der</strong> Form ∃x : Bereich . A bzw. ∀x : Bereich . A auftritt, sonst bezeichnen wir das Vorkommen als<br />

frei. Entsprechendes gilt auch für die Bezeichner, mit denen Bereiche bei Funktionssymbolen beschrieben<br />

werden (also z.B. i bei 100 i=1). Damit ist auch klar, daß x in x > 17 ⇒ (∃x : 1..15 . x > 17) sowohl frei als auch<br />

gebunden vorkommt. Da in obiger Definition nicht ganz klar ist, was ein Unterausdruck ist, hier eine inhaltlich<br />

identische, aber präzisere Definition.<br />

Definition 2.2.1 (Freies und gebundenes Vorkommen von Variablen)<br />

Seien x eine Variable, A und B Prädikate, f ein Funktions Symbol, p ein Prädikat Symbol und t1, ..., tn Terme.<br />

Das freie Auftreten von x in einem Ausdruck ist durch die folgenden Bedingungen definiert.<br />

• jedes Vorkommen von x in einer Atomaraussage ist frei<br />

• x ist frei in f(x1, ..., xn), wenn f entwe<strong>der</strong> ein Funktionssymbol ohne Bereichsangabe ist, o<strong>der</strong> x in <strong>der</strong><br />

Bereichbeschreibung nicht entsprechend verwendet wird 7<br />

• x ist frei in f(t1, ..., tn), falls x in mindestens einem ti frei ist<br />

• x ist frei in p(t1, ..., tn) o<strong>der</strong> t1 = t2, falls x in mindestens einem ti frei ist<br />

• x ist frei in ¬ A, wenn x in A frei ist<br />

• x ist frei in A op B, wenn x in A o<strong>der</strong> in B frei ist (op aus ∧, ∨, ⇒ , ⇔ )<br />

• x ist frei in ∃y : Bereich . A bzw. ∀y : Bereich . A, wenn x in A frei vorkommt und x verschieden y ist<br />

Px1,...,xn zeigt an, daß P ein Prädikat mit den freien Variablen x1, ..., xn ist.<br />

Das gebundene Auftreten von x in einem Ausdruck ist durch die folgenden Bedingungen definiert.<br />

• kein Vorkommen von x in einer Atomaraussage ist gebunden<br />

• x ist gebunden in f(x1, ..., xn), wenn f ein Funktionssymbol mit Bereichsangabe ist und x in <strong>der</strong> Bereichbeschreibung<br />

entsprechend verwendet wird<br />

• x ist gebunden in f(t1, ..., tn), falls x in mindestens einem ti gebunden ist<br />

ist in diesem Sinne ein Funktionssymbol mit Bereichsangabe, und i ist gebunden, während n frei ist.<br />

7 n<br />

i=1

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!