Читать книгу Algorithmen und Datenstrukturen - Gunter Saake - Страница 73
Beispiel 3.5 Undefinierte Ergebnisse
ОглавлениеEine Funktion muss nicht für alle Eingaben definiert sein:
f(x) = if x = 0 then 0 else f(x − 1) fi
Wir betrachten einige Auswertungen:
f(0) | 0 | |
f(1) | f(0) 0 | |
f(x) | 0 für alle x ≥ 0 | |
f(−1) | f(−2) … Auswertung terminiert nicht! |
Eine nicht terminierende Berechnung führt als Vereinbarung zum Ergebnis ⊥ für undefiniert. Also gilt
Die Funktion f hat somit nur für positive Zahlen ein definiertes Ergebnis.
Partielle Funktionen
Eine (möglicherweise) für einige Eingabewertekombinationen undefinierte Funktion heißt partielle Funktion.
Im folgenden Abschnitt werden wir einige Aspekte applikativer Algorithmen anhand einfacher Beispiele erläutern und damit gleichzeitig die bereits vorgestellten Konzepte an konkreten Beispielen verdeutlichen.