¨Ubungsaufgaben zur Vorlesung Einführung in die Theoretische

Werbung
Technische Universität Dresden
Institut für Theoretische Informatik
Dr. rer.nat.habil. M. Posegga
Dresden, den 16. 4. 2009
Übungsaufgaben zur Vorlesung
Einführung in die Theoretische Informatik
Teil I
1.
a) Man wiederhole das Peanosche Axiomensystem der Menge der natürlichen Zahlen
und das Prinzip der vollständigen Induktion aus dem Schulstoff bzw. der MathematikVorlesung.
b) Was versteht man unter einer induktiv definierten Menge (unter einem induktiven
(abstrakten) Datentyp)?
2. Die folgenden Mengen definiere man als induktive Datentypen:
- Menge der natürlichen Zahlen nat,
- Menge der Booleschen Wahrheitswerte bool,
- Menge der Listen oder Wörter über einem festen Alphabet elem list,
- Menge der binären Bäume (mit inneren Knoten aus einer Menge elem) elem bintree,
deren Knoten einen maximalen Verzweigungsgrad 2 besitzen,
- Menge der beliebig verzweigten Bäume (mit inneren Knoten aus einer Menge elem)
elem tree.
3. Durch Rekursion über dem induktiven Aufbau definiere man folgende Funktionen:
+, ∗ : nat, nat −→ nat
app : Elem list, Elem list −→ Elem list
∧, ∨, →: bool, bool −→ bool
¬ : bool −→ bool
merge : Elem list, Elem list −→ Elem list
=: nat, nat −→ bool
≤: nat, nat −→ bool
<: nat, nat −→ bool
length : Elem list −→ nat
blattliste : A B bintree −→ A list
wobei app die Aneinanderreihung zweier Listen, length die Länge einer Liste, merge eine
alternierende Vermischung zweier Listen, blattliste die Liste der Blätter eines Binärbaumes bedeuten sollen.
Man formuliere Eigenschaften dieser Funktionen.
4. Man beweise durch vollständige Induktion:
a) Für alle natürlichen Zahlen x, y gilt x + y = y + x.
b) Für alle Listen x, y gilt length(merge(x, y)) = length(x) + length(y).
c) Für alle natürlichen Zahlen x, y gilt (x < y) = (x ≤ y ∧ ¬(x = y)).
Herunterladen