Helmichs Informatik-Lexikon

Algorithmische Abstraktion

Wenn man einen Algorithmus realisiert, ist es eigentlich im Prinzip völlig egal, wie er "intern" arbeitet. Wichtig ist, dass er genau das macht, was er machen soll.

Beispiel:

Sie wollen einen Algorithmus konstruieren, der die Quadratwurzel einer Zahl berechnet. Sie legen fest, dass die Eingabe des Algorithmus aus einer positiven ganzen Zahl besteht und dass die Ausgabe des Algorithmus die möglichst genaue Quadratwurzel dieser Zahl ist. Wenn beispielsweise die Zahl 17 in den Algorithmus eingegeben wird, soll die Zahl 4,1231 als Ergebnis geliefert werden. Sie machen aber keine Vorgaben, wie der Algorithmus dieses Ergebnis berechnen soll.

Sie haben lediglich die Spezifikation dieses Algorithmus festgelegt. Über die Konstruktion des Algorithmus haben Sie keine Aussagen gemacht.

Zwei Algorithmen sind äquivalent, wenn sie für die gleiche Eingabe die gleiche Ausgabe liefern.

Zum Abschluss ein Zitat aus dem recht alten Informatik-Schulbuch [1]:

"Zwei Algorithmen... sind äquivalent, wenn sie hinsichtlich der Eingabe-Ausgabe-Beziehung übereinstimmen. Sie haben dann die gleiche Wirkung... Dieses Absehen von den konstruktiven Einzelheiten heißt algorithmische Abstraktion".

Quellen:

  1. Rüdeger Baumann, "Informatik für die Sekundarstufe II, Band 2 - Höhere Datentypen, Automaten, Sprachen. Stuttgart 1993: