Ihr BafH hat sich wieder etwas Nettes einfallen lassen, um die Abgabe der Übungszettel durch die Studierenden spannender zu gestalten. Er hat drei Briefkästen aufgestellt, in die jede Woche die Übungszettel der Veranstaltungen »Logik«, »Programmieren« und »Betriebssysteme« eingeworfen werden müssen. Als kleiner Anreiz, die Zettel in den richtigen Kasten zu werfen, werden Zettel, die in einen falschen Briefkasten geworfen werden, automatisch als durchgefallen gewertet. Damit den Studierenden nicht langweilig wird, wechselt auch noch jede Woche, welcher Kasten für welche Veranstaltung zuständig ist. Die Hinweise, die Sie am Tag der Abgabe auf den Briefkästen finden, lauten:
Erster Kasten: »In diesen Kasten keine Logikzettel werfen!« Zweiter Kasten: »In diesen Kasten dürfen nur dann Logikzettel geworfen werden, wenn die Programmierenzettel in den dritten Kasten geworfen werden.« Dritter Kasten: »Hier keine Programmierenzettel!«
Wohin nun mit Ihren Zetteln? Mit etwas Nachdenken werden Sie feststellen, dass die Hinweise des BafH nicht unbedingt hilfreicht sind, da es mehrere Möglichkeiten gibt, die Anweisungen zu befolgen. Was bedeutet dies vom »logischen« Standpunkt?
Mit den Ideen aus dem vorherigen Kapitel, in dem es um die Syntax ging, ist es nicht sonderlich schwierig, die Hinweise in eine große aussagenlogische Formel zu verwandeln. Es gibt dann neun Aussagen, nämlich »Logikzettel kommen in den ersten Kasten«, »Logikzetteln kommen in den zweiten Kasten«, »Logikzetteln kommen in den dritten Kasten«, »Programmierenzettel kommen in den ersten Kasten« und so weiter. Diese neun Aussagen, repräsentiert durch neun Variablen a_1 bis a_9, können wir dann in einer großen Formel verknüpfen. Sie beginnt mit \neg a_1 \land ..., da ja die Logikzettel nicht in den ersten Kasten dürfen. Nennen wir die Formel doch phi, dies ist ein ganz hübscher Buchstabe, an den Sie sich hoffentlich schon ein wenig gewöhnt haben.
Ist die Formel phi wahr oder falsch? Dies ist eine Frage nach der Bedeutung der Formel, also eine Frage nach der Semantik. Nun, steckt man die Logikblätter in den zweiten Kasten, die Programmierenblätter in den ersten Kasten und die Betriebssystemeblätter in den dritten Kasten, so sind alle Hinweise »eingehalten« worden und die Formel »wird wahr«. Steckt man aber die Logikblätter in den dritten Kasten, die Programmierenblätter in den zweiten und die Betriebssystemeblätter in den ersten, so werden sie auch eingehalten. Steckt man schließlich die Logikblätter in den ersten, die anderen irgendwo hin, so werden die Hinweise nicht eingehalten. Es gibt also verschiedene Arten, die Forderungen der Hinweise zu »erfüllen«, aber nicht jede Art ist »korrekt«.
Ist die Formel nun wahr oder falsch? Diese Frage kann man »so pauschal« nicht beantworten, denn Formeln sind in der Regel nicht »immer falsch« oder »immer wahr«, sondern nur unter bestimmten Bedingungen. Die Wahrheit von Formeln ist relativ und hängt von den Umständen ab.
In diesem Kapitel über Semantik geht es darum, diese Beobachtungen etwas formaler zu fassen. Dies bedeutet eigentlich nur, dass Sie ab sofort wenig intuitive Bezeichnungen benutzen müssen. An Stelle von »Zuordnungen von Zetteln zu Kästen« benutzen Sie bitte ab sofort »Variablenbelegungen beta«. Statt »Zuordnungen, unter denen alle Forderungen der Hinweise erfüllt sind« heißt es richtig selbstverständlich »Modell«. Die »Hinweistexte, bei denen man gar nichts richtig machen kann« nennen wir vornehm »Kontradiktionen«. Schließlich heißen Hinweistexte wie »in diesen Kasten nur dann Logikzettel werfen, wenn sie hier hineingeworfen werden«, die einem gar nicht weiterhelfen, da sie immer stimmen, »Tautologien«.