Grundbegriffe der Informatik

Größe: px
Ab Seite anzeigen:

Download "Grundbegriffe der Informatik"

Transkript

1 Grundbegriffe der Informatik Einheit 5: Der Begriff des Algorithmus (erste grundlegende Aspekte) Thomas Worsch Universität Karlsruhe, Fakultät für Informatik November /34

2 Überblick Eine Zeitreise Algorithmusbegriff Lösen einer Sorte quadratischer Gleichungen Zum informellen Algorithmusbegriff Korrektheit des Algorithmus zur Lösung einer Sorte quadratischer Gleichungen Wie geht es weiter? Algorithmus zur Multiplikation nichtnegativer ganzer Zahlen Multiplikationalgorithmus mit einer Schleife Inhalt 2/34

3 Zeitreise bitte alle einsteigen Türen schließen anschnallen Sitzlehnen aufrecht stellen und so weiter und so fort Eine Zeitreise 3/34

4 Zeitreise bitte alle einsteigen Türen schließen anschnallen Sitzlehnen aufrecht stellen und so weiter und so fort Wie weit in die Vergangenheit kann man reisen und findet noch etwas, was mit Informatik zu tun hat? (jenseits von Zählen und Zahlen) Eine Zeitreise 3/34

5 ... da wären wir... Zeit: circa Ort: Bagdad, Haus der Weisheit wir treffen... Eine Zeitreise 4/34

6 ... da wären wir... Zeit: circa Ort: Bagdad, Haus der Weisheit wir treffen Muhammad ibn Mūsā al-khwārizmī geboren ca. 780 in Khiva (heute Usbekistan) oder Qutrubbull (heute Iran) gestorben ca. 850 Bildquelle: Eine Zeitreise 4/34

7 Zwei wichtige Schriften von al-khwārizmī (1) ca. 830 (?): Buch Titel: Al-Kitāb al-mukhtaṣar fī hīsāb al-ğabr wa l-muqābala oder Al-Kitāb al-mukhtaṣar fī ḥisāb al-jabr wa-l-muqābala. auf Deutsch: Das kurzgefasste Buch zum Rechnen durch Ergänzung und Ausgleich Aus al-ğabr bzw. al-jabr entstand später das Wort Algebra. Inhalt des Buches unter anderem: Lösen quadratischer Gleichungen mit einer Unbekannten. Eine Zeitreise 5/34

8 Zwei wichtige Schriften von al-khwa rizmı (2) I ca. 825 (??) I Titel vielleicht Kita b al-jam wa-l-tafrı q bi-h.isa b al-hind auf Deutsch: U ber das Rechnen mit indischen Ziffern. al-khwa rizı fu hrt u. a. die aus dem Indischen stammende Zahl Null in das arabische Zahlensystem ein... nur noch U bersetzungen, z. B. auf Lateinisch, 12. Jhdt. (?): I kein Titel bekannt, Vermutung: I I I I I I I Algoritmi de numero Indorum oder Algorismi de numero Indorum o. a. also ein Buch von Al-gorismi u ber die indischen Zahlen. Das i am Ende von Algorismi spa ter fa lschlicherweise als Pluralendung des Wortes Algorithmus angesehen. Eine Zeitreise 6/34

9 Lösen einer Sorte quadratischer Gleichungen nach al-khwārizmī (1) gegeben: quadratische Gleichung der Form x 2 + bx = c mit b > 0 und c > 0 Dann kann man laut al-khwārizmī die positive Lösung dieser Gleichung bestimmen, indem man nacheinander rechnet: h b/2 (1) q h 2 (2) s c + q (3) w s (4) x w h (5) Algorithmusbegriff Lösen einer Sorte quadratischer Gleichungen 7/34

10 Lösen einer Sorte quadratischer Gleichungen nach al-khwārizmī (2) Rechnung: wir schreiben hier Zuweisungen in der Form h b/2 (1) q h 2 (2) s c + q (3) w s (4) x w h (5) Variablenname arithmetischer Ausdruck Zuweisungen alle ausführbar, da rechts nur Eingaben b und c benutzt und Variablen, die schon einen Wert haben. keine Unglücke: s ist nie negativ. am Ende hat x immer einen Wert, der die quadratische Gleichung x 2 + bx = c erfüllt. Algorithmusbegriff Lösen einer Sorte quadratischer Gleichungen 8/34

11 Algorithmusbegriff informell Eigenschaften des eben gezeigten Algorithmus: Algorithmus besitzt endliche Beschreibung (ist also ein Wort über einem Alphabet). Beschreibung besteht aus elementaren Anweisungen; jede offensichtlich effektiv in einem Schritt ausführbar Determinismus: nächste elementare Anweisung stets eindeutig festgelegt, nur auf Grund von schon berechneten Ergebnissen und zuletzt ausgeführter elementare Anweisung Aus endlicher Eingabe wird endliche Ausgabe berechnet. Dabei werden endliche viele Schritte gemacht, d. h. nur endlich oft eine elementare Anweisung ausgeführt. Der Algorithmus funktioniert für beliebig große Eingaben. Die Nachvollziehbarkeit/Verständlichkeit des Algorithmus steht für jeden (mit der Materie vertrauten) außer Frage. Algorithmusbegriff Zum informellen Algorithmusbegriff 9/34

12 Diskussion des informellen Algorithmusbegriffs obige Forderungen sind plausibel aber informell: Was soll z. B. offensichtlich effektiv ausführbar heißen? Für harte Beweise benötigt man einen präziseren Algorithmusbegriff. Es hat sich herausgestellt, dass auch Verallgemeinerungen interessant des oben skizzierten Algorithmenbegriffes interessant sind. Dazu gehören zum Beispiel: randomisierte Algorithmen: Zufallsereignisse haben Einfluss auf die Fortsetzung eines Algorithmus Online-Algorithmen: die Eingaben stehen nicht alle zu Beginn zur Verfügung, sondern erst nach und nach, und nicht terminierende sondern unendlich lange laufende Algorithmen (z. B. Ampelsteuerung) usw.... Algorithmusbegriff Zum informellen Algorithmusbegriff 10/34

13 Beweis von al-khwārizmī x 2 b/4 Algorithmusbegriff Korrektheit des Algorithmus zur Lösung einer Sorte quadratischer Gl

14 Beweis von al-khwārizmī (b/4)x b/4 (b/4)x x 2 (b/4)x (b/4)x b/4 b/4 b/4 Algorithmusbegriff Korrektheit des Algorithmus zur Lösung einer Sorte quadratischer Gl

15 Beweis von al-khwārizmī b/4 x 2 b/4 b/4 x 2 + bx = c b/4 Algorithmusbegriff Korrektheit des Algorithmus zur Lösung einer Sorte quadratischer Gl

16 Beweis von al-khwārizmī b/4 x 2 b/4 b/4 b/4 x 2 + bx = c 4 b 2 /16 = b 2 /4 = q Algorithmusbegriff Korrektheit des Algorithmus zur Lösung einer Sorte quadratischer Gl

17 Beweis von al-khwārizmī b/4 x 2 b/4 b/4 x 2 + bx = c 4 b 2 /16 = b 2 /4 = q c + q = (b/4 + x + b/4) 2 c + q b/2 = x b/4 Algorithmusbegriff Korrektheit des Algorithmus zur Lösung einer Sorte quadratischer Gl

18 Beweis durch Nachrechnen / b > 0 c > 0 h b/2 / h = b/2 q h 2 / q = b 2 /4 s c + q / s = c + b 2 /4 w s / w = c + b 2 /4 x w h / x = c + b 2 /4 b/2 / x 2 + bx = ( c + b 2 /4 b/2) 2 + b( c + b 2 /4 b/2) / x 2 + bx = c + b 2 /4 b c + b 2 /4 + b 2 /4 + b c + b 2 /4 b 2 /2) / x 2 + bx = c Algorithmusbegriff Korrektheit des Algorithmus zur Lösung einer Sorte quadratischer Gl

19 Wie geht es weiter... in dieser Vorlesung und in anderen...? im dieser Vorlesung z. B.: Wie kann man sich allgemein von der Richtigkeit solcher Folgen von Rechnungen überzeugen? Ansätze für die Verifikation von Algorithmen Dafür braucht man aber einen präzisen Algorithmenbegriff, eine präzise Spezifikation von Verhalten eines Algorithmus Schlagwort Semantik eine präzise Spezifikation von was ist richtig präzise Methoden, um z. B. zu beweisen, dass das Verhalten eines Algorithmus der Spezifikation genügt. Dazu kommt in allen Fällen auch eine präzise Notation, die zumindest bei der Verarbeitung durch Rechner nötig ist. Algorithmusbegriff Wie geht es weiter? 13/34

20 Wie geht es weiter...? (2) Weitere Punkte, die wir aufgreifen und in verschiedenen Richtungen weiter vertiefen werden: Präzisierungen des Algorithmenbegriffes: Sie kennen inzwischen z. B. Grundzüge einer Programmiersprache. praktisch, wenn man tatsächlich Algorithmen so aufschreiben will, dass sie ein Rechner ausführen können soll. unpraktisch, wenn man z. B. beweisen will, dass ein bestimmtes Problem durch keinen Algorithmus gelöst werden kann. einfachere Modelle wie Registermaschinen oder Turingmaschinen Algorithmusbegriff Wie geht es weiter? 14/34

21 Wie geht es weiter...? (3) Weitere Punkte, die wir aufgreifen und in verschiedenen Richtungen weiter vertiefen werden: präzise Notationen für das richtige Verhalten Zusicherungen: logische Formeln, die Aussagen über (Zusammenhänge zwischen) Variablen machen präzise Methoden, um zu beweisen, dass ein Algorithmus das Richtige tut Schlagworte schwächste Vorbedingung, Schleifeninvarianten präzise Notationsmöglichkeiten, um Aufgaben dem Rechner übertragen zu können Wie legt man fest, was syntaktisch korrekt ist? Wie stellt man fest, ob etwas syntaktisch korrekt ist? Schlagwort formale Sprachen Algorithmusbegriff Wie geht es weiter? 15/34

22 Mathematisches Vorgeplänkel Definiere zwei binäre Operationen div und mod für x, y N 0 : x mod y der Rest der ganzzahligen Division von x durch y x div y das Ergebnis der ganzzahligen Division von x durch y. Daher gilt für x, y N 0 stets: x = y (x div y) + (x mod y) Algorithmusbegriff Algorithmus zur Multiplikation nichtnegativer ganzer Zahlen16/34

23 Algorithmus / Eingaben: a G 8, b N 0 / Algorithmusstelle i = 1 P 0 0 P 2 P 1 + x 1 Y 1 X 0 a X 2 X 1 div 2 Y 0 b Y 2 2 Y 1 x 0 X 0 mod 2 x 2 X 2 mod 2 / Algorithmusstelle i = 0 / Algorithmusstelle i = 2 P 1 P 0 + x 0 Y 0 P 3 P 2 + x 2 Y 2 X 1 X 0 div 2 X 3 X 2 div 2 Y 1 2 Y 0 Y 3 2 Y 2 x 1 X 1 mod 2 x 3 X 3 mod 2 / Algorithmusstelle i = 1 / Algorithmusstelle i = 3 Algorithmusbegriff Algorithmus zur Multiplikation nichtnegativer ganzer Zahlen17/34

24 Beispielrechnung Es sei a = 6 und b = 9 P i X i Y i x i i = i = i = i = Algorithmusbegriff Algorithmus zur Multiplikation nichtnegativer ganzer Zahlen18/34

25 Beispielrechnung Es sei a = 6 und b = 9 P i X i Y i x i i = i = i = i = Am Ende ist P 3 = 54 = a b Wollen beweisen: Das klappt immer! Algorithmusbegriff Algorithmus zur Multiplikation nichtnegativer ganzer Zahlen18/34

26 Annäherung an einen Korrektheitsbeweis P 3 wird mit Hilfe von P 2 ausgerechnet. Also sollte man auch etwas über P 2 wissen. und über P 1 auch, usw. Analog sollte man am besten etwas über alle X i und Y i wissen. Algorithmusbegriff Algorithmus zur Multiplikation nichtnegativer ganzer Zahlen19/34

27 Annäherung an einen Korrektheitsbeweis P 3 wird mit Hilfe von P 2 ausgerechnet. Also sollte man auch etwas über P 2 wissen. und über P 1 auch, usw. Analog sollte man am besten etwas über alle X i und Y i wissen. Angenommen, uns gelingt es, etwas Passendes hinzuschreiben, d. h. eine logische Formel, die eine Aussage A i über die interessierenden Werte P i, x i, X i und Y i macht. Was dann? Algorithmusbegriff Algorithmus zur Multiplikation nichtnegativer ganzer Zahlen19/34

28 Annäherung an einen Korrektheitsbeweis P 3 wird mit Hilfe von P 2 ausgerechnet. Also sollte man auch etwas über P 2 wissen. und über P 1 auch, usw. Analog sollte man am besten etwas über alle X i und Y i wissen. Angenommen, uns gelingt es, etwas Passendes hinzuschreiben, d. h. eine logische Formel, die eine Aussage A i über die interessierenden Werte P i, x i, X i und Y i macht. Was dann? vollständige Induktion Algorithmusbegriff Algorithmus zur Multiplikation nichtnegativer ganzer Zahlen19/34

29 Annäherung an einen Korrektheitsbeweis (2) Problem: Induktionsbeweise sind am Anfang schon schwer genug. Aber müssen wir auch erst noch Aussagen A i finden, die wir erstens beweisen können, und die uns zweitens zum gewünschten Ziel führt. Algorithmusbegriff Algorithmus zur Multiplikation nichtnegativer ganzer Zahlen20/34

30 Annäherung an einen Korrektheitsbeweis (2) Problem: Induktionsbeweise sind am Anfang schon schwer genug. Aber müssen wir auch erst noch Aussagen A i finden, die wir erstens beweisen können, und die uns zweitens zum gewünschten Ziel führt. Passende Aussagen zu finden ist nicht immer ganz einfach und Übung ist sehr(!) hilfreich. Hinweise durch Wertetabelle: P i X i Y i x i i = i = i = i = Algorithmusbegriff Algorithmus zur Multiplikation nichtnegativer ganzer Zahlen20/34

31 Annäherung an einen Korrektheitsbeweis (3) Herumspielen liefert, dass jedenfalls im Beispiel für jedes i G 4 die folgende Aussage wahr ist: i G 4 : X i Y i + P i = a b Das formen wir noch in eine Aussage für alle nichtnegativen ganzen Zahlen um: i N 0 : i < 4 = X i Y i + P i = a b Wir beweisen nun durch vollständige Induktion die Formel wobei A i die Aussage ist: i N 0 : A i i < 4 = X i Y i + P i = a b. Algorithmusbegriff Algorithmus zur Multiplikation nichtnegativer ganzer Zahlen21/34

32 Korrektheitsbeweis (1) Induktionsanfang i = 0: Aufgrund der Initialisierungen der Variablen ist klar: X 0 Y 0 + P 0 = ab + 0 = ab. Induktionsschritt i i + 1: Induktionsvoraussetzung: für ein beliebiges aber festes i gelte Induktionsschluss: zu zeigen: i < 4 = X i Y i + P i = a b i + 1 < 4 = X i+1 Y i+1 + P i+1 = a b Algorithmusbegriff Algorithmus zur Multiplikation nichtnegativer ganzer Zahlen22/34

33 Korrektheitsbeweis (2) Induktionsvoraussetzung: i < 4 = X i Y i + P i = a b Induktionsschluss: Zeige: i + 1 < 4 = X i+1 Y i+1 + P i+1 = a b. Wenn i + 1 < 4, dann auch i < 4 und nach Ind.vor. gilt: X i Y i + P i = a b. Wir rechnen nun: X i+1 Y i+1 + P i+1 = (X i div 2) 2Y i + P i + x i Y i = (X i div 2) 2Y i + P i + (X i mod 2)Y i = (2(X i div 2) + (X i mod 2))Y i + P i = X i Y i + P i = ab. erste beiden Gleichheiten wegen der Zuweisungen im Algorithmus, vierte wegen Gleichung aus mathematischem Vorgeplänkel, die letzte nach Induktionsvoraussetzung. Algorithmusbegriff Algorithmus zur Multiplikation nichtnegativer ganzer Zahlen23/34

34 Korrektheitsbeweis (3): das fehlende Puzzlestück Wissen wir nun, dass am Ende des Algorithmus P = ab ist? Nein: bisher nur bewiesen, dass: P 3 + X 3 Y 3 = ab Wertetabelle zeigt, dass im Beispiel aber X 3 = 0. Beweisen wir, dass auch das für alle Eingaben a G 8 und b N 0 gilt. Wie? Beobachtung: Die X i werden der Reihe nach immer kleiner. Und zwar immer um mindestens die Hälfte, denn X i div 2 X i /2. Mit anderen Worten: X 0 a X 1 X 0 /2 a/2 X 2 X 1 /2 a/4 Wie man die Pünktchen weg bekommt wissen wir schon: vollständige Induktion. Algorithmusbegriff Algorithmus zur Multiplikation nichtnegativer ganzer Zahlen24/34

35 Korrektheitsbeweis (4): das fehlende Puzzlestück Die Induktion ist so einfach ist, dass wir ihn hier schon nicht mehr im Detail durchführen müssen. Ergebnis i N 0 : i < 4 = X i a/2 i. Insbesondere ist also X 2 a/4. Nach Voraussetzung ist a < 8 folglich X 2 < 8/4 = 2. Da X 2 eine ganze Zahl ist, ist X 2 1. Und daher ist das zuletzt berechnete X 3 = X 2 div 2 = 0. Algorithmusbegriff Algorithmus zur Multiplikation nichtnegativer ganzer Zahlen25/34

36 Der Algorithmus, anders aufgeschrieben Die Indizes sind gar nicht wichtig: / Eingaben: a G 8, b N 0 / Algorithmusstelle i = 1 P 0 P P + x Y X a X X div 2 Y b Y 2 Y x X mod 2 x X mod 2 / Algorithmusstelle i = 0 / Algorithmusstelle i = 2 P P + x Y P P + x Y X X div 2 X X div 2 Y 2 Y Y 2 Y x X mod 2 x X mod 2 / Algorithmusstelle i = 1 / Algorithmusstelle i = 3 Algorithmusbegriff Multiplikationalgorithmus mit einer Schleife 26/34

37 for-schleifen dreimal exakt der gleiche Algorithmustext das kürzen wir ab: for Schleifenvariable Startwert to Endwert do od sogenannter Schleifenrumpf, der aus mehreren Anweisungen bestehen darf Bedeutung: Schleifenrumpf wird nacheinander für jeden Wert der Schleifenvariable durchlaufen als erstes für den Startwert Bei jedem weiteren Durchlauf wird die Schleifenvariable um 1 erhöht. Der letzte Durchlauf findet für den Endwert statt. Falls Endwert < Anfangswert, wird der Schleifenrumpf überhaupt nicht durchlaufen. Algorithmusbegriff Multiplikationalgorithmus mit einer Schleife 27/34

38 Multiplikationalgorithmus mit for-schleife / Eingaben: a G 8, b N 0 X a Y b P 0 x X mod 2 for i 0 to 2 do / Algorithmusstelle i P P + x Y X X div 2 Y 2 Y x X mod 2 / Algorithmusstelle i + 1 od / Ergebnis: P = a b Algorithmusbegriff Multiplikationalgorithmus mit einer Schleife 28/34

39 Bedeutung des Induktionsbeweises für die Schleifenschreibweise Entfernen der Indizes aus den Aussagen A i P i + X i Y i = ab liefert Alle sehen gleich aus! P + XY = ab A i war Aussage darüber, was an Algorithmusstelle i gilt. Das bedeutet nun: nach i Schleifendurchläufen bzw. vor dem i + 1-ten Schleifendurchlauf. Bewiesen: Aus der Gültigkeit von A i folgt die von A i+1. Wir haben also gezeigt: Wenn die Aussage P + XY = ab vor dem einmaligen Durchlaufen des Schleifenrumpfes gilt, dann gilt sie auch hinterher wieder. Diese Aussage ist eine sogenannte Schleifeninvariante. Algorithmusbegriff Multiplikationalgorithmus mit einer Schleife 29/34

40 Schleifeninvariante Der Induktionsanfang war nichts anderes als der Nachweis, dass die Schleifeninvariante vor dem ersten Betreten der Schleife stets gilt. Der Induktionsschritt war der Nachweis, dass die Wahrheit der Schleifeninvariante bei jedem Durchlauf erhalten bleibt. Algorithmusbegriff Multiplikationalgorithmus mit einer Schleife 30/34

41 Schleifeninvariante Der Induktionsanfang war nichts anderes als der Nachweis, dass die Schleifeninvariante vor dem ersten Betreten der Schleife stets gilt. Der Induktionsschritt war der Nachweis, dass die Wahrheit der Schleifeninvariante bei jedem Durchlauf erhalten bleibt. Also: Wenn die Schleife jemals zu einem Ende kommt und etwas anderes ist bei einer for-schleife wie eben beschrieben gar nicht möglich, dann gilt die Schleifeninvariante auch zum Schluss. Algorithmusbegriff Multiplikationalgorithmus mit einer Schleife 30/34

42 Verallgemeinerung des Algorithmus für beliebig große Eingaben a Wir wollen, dass der Algorithmus er für alle a N 0 funktioniert. Wo wurde die Bedingung a < 8 verwendet? nur an einer Stelle: beim Nachweis, dass X 3 = 0 ist. Für z. B. a = 4711 ist man natürlich nach drei Schleifendurchläufen noch nicht bei X = 0. Dafür muss man öfter den Wert X halbieren. Es ist also eine größere Anzahl n von Schleifendurchläufen notwendig. Wieviele? Man betrachte noch einmal Ungleichung X i a/2 i Man ist fertig, wenn vor dem letzten Durchlauf gilt: X n 1 1. Algorithmusbegriff Multiplikationalgorithmus mit einer Schleife 31/34

43 Verallgemeinerung des Algorithmus für beliebig große Eingaben a (2) X n 1 1 gilt, wenn also also also a/2 n 1 1 a 2 n 1 n 1 log 2 a n 1 + log 2 a Algorithmusbegriff Multiplikationalgorithmus mit einer Schleife 32/34

44 Verallgemeinerung des Algorithmus für beliebig große Eingaben a (3) / Eingaben: a N 0, b N 0 X a Y b P 0 x X mod 2 n 1 + log 2 a for i 0 to n 1 do P P + x Y X X div 2 Y 2 Y x X mod 2 od / Ergebnis: P = a b Algorithmusbegriff Multiplikationalgorithmus mit einer Schleife 33/34

45 Zusammenfassung Wir haben den informellen Algorithmusbegriff kennengelernt, eine Reihe von Andeutungen von Fortsetzungen der Vorlesung und des Studiums gesehen, u. a. vollständige Induktion benutzt, um Korrektheit eines Algorithmus zu beweisen, den Begriff der Schleifeninvariante kennengelernt. Algorithmusbegriff Multiplikationalgorithmus mit einer Schleife 34/34

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Kapitel 14: Der Begriff des Algorithmus (einige grundlegende Aspekte) Thomas Worsch KIT, Institut für Theoretische Informatik Wintersemester 2015/2016 GBI Grundbegriffe der

Mehr

Schleifeninvarianten. Dezimal zu Binär

Schleifeninvarianten. Dezimal zu Binär Schleifeninvarianten Mit vollstandiger Induktion lasst sich auch die Korrektheit von Algorithmen nachweisen. Will man die Werte verfolgen, die die Variablen beim Ablauf eines Algorithmus annehmen, dann

Mehr

Kapitel 1. Grundlegendes

Kapitel 1. Grundlegendes Kapitel 1 Grundlegendes Abschnitt 1.4 Vollständige Induktion Charakterisierung der natürlichen Zahlen Die Menge N 0 = {0, 1, 2, 3,...} der natürlichen Zahlen läßt sich wie folgt charakterisieren: 1. 0

Mehr

Vorkurs Mathematik und Informatik Mengen, natürliche Zahlen, Induktion

Vorkurs Mathematik und Informatik Mengen, natürliche Zahlen, Induktion Vorkurs Mathematik und Informatik Mengen, natürliche Zahlen, Induktion Saskia Klaus 07.10.016 1 Motivation In den ersten beiden Vorträgen des Vorkurses haben wir gesehen, wie man aus schon bekannten Wahrheiten

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Einheit 4: Wörter (und vollständige Induktion) Thomas Worsch Universität Karlsruhe, Fakultät für Informatik Oktober 2008 1/29 Überblick Wörter Wörter Das leere Wort Mehr zu

Mehr

3 Vom Zählen zur Induktion

3 Vom Zählen zur Induktion 7 3 Vom Zählen zur Induktion 3.1 Natürliche Zahlen und Induktions-Prinzip Seit unserer Kindheit kennen wir die Zahlen 1,, 3, 4, usw. Diese Zahlen gebrauchen wir zum Zählen, und sie sind uns so vertraut,

Mehr

Ideen und Konzepte der Informatik. Programme und Algorithmen Kurt Mehlhorn

Ideen und Konzepte der Informatik. Programme und Algorithmen Kurt Mehlhorn Ideen und Konzepte der Informatik Programme und Algorithmen Kurt Mehlhorn 26. Oktober 2015 Programme und Algorithmen Programmiersprache = Kunstsprache mit genau definierter Syntax (was ist ein zulässiger

Mehr

Übung zur Vorlesung Berechenbarkeit und Komplexität

Übung zur Vorlesung Berechenbarkeit und Komplexität RWTH Aachen Lehrgebiet Theoretische Informatik Reidl Ries Rossmanith Sanchez Tönnis WS 2012/13 Übungsblatt 7 26.11.2012 Übung zur Vorlesung Berechenbarkeit und Komplexität Aufgabe T15 Entwickeln Sie ein

Mehr

Ideen und Konzepte der Informatik. Programme und Algorithmen Kurt Mehlhorn

Ideen und Konzepte der Informatik. Programme und Algorithmen Kurt Mehlhorn Ideen und Konzepte der Informatik Programme und Algorithmen Kurt Mehlhorn November 2016 Algorithmen und Programme Algorithmus = Schritt-für-Schritt Vorschrift zur Lösung eines Problems. Formuliert man

Mehr

Übung zu Grundbegriffe der Informatik. Simon Wacker. 15. November 2013

Übung zu Grundbegriffe der Informatik. Simon Wacker. 15. November 2013 Übung zu Grundbegriffe der Informatik Simon Wacker 15. November 2013 Vollständige Induktion über die Wortlänge Es sei B ein Alphabet. Dann ist B = n N 0 B n. Für jedes Wort w B sei A w eine Aussage, die

Mehr

Grundlagen: Algorithmen und Datenstrukturen

Grundlagen: Algorithmen und Datenstrukturen Technische Universität München Fakultät für Informatik Lehrstuhl für Effiziente Algorithmen Dr. Hanjo Täubig Tobias Lieber Sommersemester 2011 Übungsblatt 1 16. September 2011 Grundlagen: Algorithmen und

Mehr

{P} S {Q} {P} S {Q} {P} S {Q} Inhalt. Hoare-Kalkül. Hoare-Kalkül. Hoare-Tripel. Hoare-Tripel. Hoare-Tripel

{P} S {Q} {P} S {Q} {P} S {Q} Inhalt. Hoare-Kalkül. Hoare-Kalkül. Hoare-Tripel. Hoare-Tripel. Hoare-Tripel Inhalt Hoare-Kalkül Formale Verifizierung Hoare-Kalkül while-sprache Terminierung Partielle / totale Korrektheit 4.0 Hoare-Kalkül entwickelt von C.A.R. (Tony) Hoare (britischer Informatiker), 1969 formales

Mehr

2. Algorithmenbegriff

2. Algorithmenbegriff 2. Algorithmenbegriff Keine Algorithmen: Anleitungen, Kochrezepte, Wegbeschreibungen,... Algorithmus: Berechnungsvorschrift, die angibt, wie durch Ausführung bestimmter Elementaroperationen aus Eingabegrößen

Mehr

C. A. R. Hoare. An Axiomatic Basis for Computer Programming. Nicolas Schelp. Proseminar Assertions SS 2007

C. A. R. Hoare. An Axiomatic Basis for Computer Programming. Nicolas Schelp. Proseminar Assertions SS 2007 C. A. R. Hoare An Axiomatic Basis for Computer Programming Nicolas Schelp Proseminar Assertions SS 2007 Inhalt Motivation Kurze Biographie Der Hoare-Kalkül Axiome und Inferenzregeln des Hoare-Kalküls Die

Mehr

8. Musterlösung zu Mathematik für Informatiker II, SS 2004

8. Musterlösung zu Mathematik für Informatiker II, SS 2004 8. Musterlösung zu Mathematik für Informatiker II, SS 2004 MARTIN LOTZ &MICHAEL NÜSKEN Aufgabe 8.1 (Polynomdivision). (8 Punkte) Dividiere a mit Rest durch b für (i) a = x 7 5x 6 +3x 2 +1, b = x 2 +1in

Mehr

G R U N D B E G R I F F E D E R I N F O R M AT I K. thomas worsch

G R U N D B E G R I F F E D E R I N F O R M AT I K. thomas worsch G R U N D B E G R I F F E D E R I N F O R M AT I K thomas worsch 2008/2009 I N H A LT S V E R Z E I C H N I S 1 Prolog 1 1.1 Aufbau der Vorlesung und Ziele 1 1.2 Quellen 2 2 Signale, Nachrichten, Informationen,

Mehr

Theoretische Informatik SS 03 Übung 3

Theoretische Informatik SS 03 Übung 3 Theoretische Informatik SS 03 Übung 3 Aufgabe 1 a) Sind die folgenden Funktionen f : partiell oder total: f(x, y) = x + y f(x, y) = x y f(x, y) = x y f(x, y) = x DIV y? Hierbei ist x DIV y = x y der ganzzahlige

Mehr

Vollständige Induktion

Vollständige Induktion Angenommen, wir wollen zeigen, dass eine Aussage P(n) für alle n N wahr ist. Anders ausgedrückt: Es gilt n N : P(n) Hierzu können wir die Technik der vollständigen Induktion verwenden. Wir zeigen, dass

Mehr

1 Das Prinzip der vollständigen Induktion

1 Das Prinzip der vollständigen Induktion 1 1 Das Prinzip der vollständigen Induktion 1.1 Etwas Logik Wir nennen eine Formel oder einen Satz der Alltagssprache eine Aussage, wenn sie wahr oder falsch sein kann. Die Formeln 2 = 3, 2 4, 5 5 sind

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Einheit 6: formale Sprachen Thomas Worsch Karlsruher Institut für Technologie, Fakultät für Informatik Wintersemester 2009/2010 1/18 Überblick Formale Sprachen Formale Sprachen

Mehr

Vorlesung. Vollständige Induktion 1

Vorlesung. Vollständige Induktion 1 WS 015/16 Vorlesung Vollständige Induktion 1 1 Einführung Bei der vollständigen Induktion handelt es sich um ein wichtiges mathematisches Beweisverfahren, mit dem man Aussagen, die für alle natürlichen

Mehr

GTI. Hannes Diener. 18. Juni. ENC B-0123,

GTI. Hannes Diener. 18. Juni. ENC B-0123, GTI Hannes Diener ENC B-0123, diener@math.uni-siegen.de 18. Juni 1 / 32 Als Literatur zu diesem Thema empfiehlt sich das Buch Theoretische Informatik kurzgefasst von Uwe Schöning (mittlerweile in der 5.

Mehr

Einführung in die Theoretische Informatik

Einführung in die Theoretische Informatik Technische Universität München Fakultät für Informatik Prof. Tobias Nipkow, Ph.D. Sascha Böhme, Lars Noschinski Sommersemester 2011 Lösungsblatt 9 25. Juli 2011 Einführung in die Theoretische Informatik

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Einheit 6: formale Sprachen Thomas Worsch Universität Karlsruhe, Fakultät für Informatik November 2008 1/14 Überblick Formale Sprachen Formale Sprachen Produkt formaler Sprachen

Mehr

Serie 4 2 = 10. ) ist). Dann gilt für alle n n 0

Serie 4 2 = 10. ) ist). Dann gilt für alle n n 0 Serie 4. Aufgabe 336 Punkte) Gegeben seien zwei reelle Zahlenfolgen durch a n : 0 n, n N b n : n n, n N Bestimmen Sie die Grenzwerte a bzw. b der Folgen a n ) n N bzw. b n ) n N. Geben Sie jeweils zu gegebenem

Mehr

Vorkurs: Mathematik für Informatiker

Vorkurs: Mathematik für Informatiker Vorkurs: Mathematik für Informatiker Teil 3 Wintersemester 2016/17 Steven Köhler mathe@stevenkoehler.de mathe.stevenkoehler.de 2 c 2016 Steven Köhler Wintersemester 2016/17 Inhaltsverzeichnis Teil 1 Teil

Mehr

Kapitel III Ringe und Körper

Kapitel III Ringe und Körper Kapitel III Ringe und Körper 1. Definitionen und Beispiele Definition 117 Eine Algebra A = S,,, 0, 1 mit zwei zweistelligen Operatoren und heißt ein Ring, falls R1. S,, 0 eine abelsche Gruppe mit neutralem

Mehr

Informatik I Tutorium WS 07/08

Informatik I Tutorium WS 07/08 Informatik I Tutorium WS 07/08 Vorlesung: Prof. Dr. F. Bellosa Übungsleitung: Dipl.-Inform. A. Merkel Tutorium: 12 Tutor: Jens Kehne Tutorium 6: Dienstag, 04. Dezember 2007 Agenda des heutigen Tutoriums

Mehr

Vorlesung Diskrete Strukturen Die natürlichen Zahlen

Vorlesung Diskrete Strukturen Die natürlichen Zahlen Vorlesung Diskrete Strukturen Die natürlichen Zahlen Bernhard Ganter WS 2009/10 Alles ist Zahl? Wenn in der modernen Mathematik alles auf Mengen aufgebaut ist, woher kommen dann die Zahlen? Sind Zahlen

Mehr

1 Zahlentheorie. 1.1 Kongruenzen

1 Zahlentheorie. 1.1 Kongruenzen 3 Zahlentheorie. Kongruenzen Der letzte Abschnitt zeigte, daß es sinnvoll ist, mit großen Zahlen möglichst einfach rechnen zu können. Oft kommt es nicht darauf, an eine Zahl im Detail zu kennen, sondern

Mehr

WS 05/06 mod Verifikation

WS 05/06 mod Verifikation 3.3 Verifikation WS 05/06 mod 351 Verifikation ist der Beweis der Korrektheit eines Algorithmus relativ zu seiner Spezifikation. Die Aussagen gelten für alle Ausführungen des Algorithmus. Sie werden statisch

Mehr

Überblick. 1 Vorbemerkungen. 2 Algorithmen. 3 Eigenschaften von Algorithmen. 4 Historischer Überblick. Einführung

Überblick. 1 Vorbemerkungen. 2 Algorithmen. 3 Eigenschaften von Algorithmen. 4 Historischer Überblick. Einführung Teil I Einführung Überblick 1 Vorbemerkungen 2 Algorithmen 3 4 Historischer Überblick Prof. G. Stumme Algorithmen & Datenstrukturen Sommersemester 2009 1 1 Vorbemerkungen Was ist Informatik? Informatik

Mehr

THEORETISCHE INFORMATIK UND LOGIK

THEORETISCHE INFORMATIK UND LOGIK THEORETISCHE INFORMATIK UND LOGIK 3. Vorlesung: WHILE und LOOP Markus Krötzsch Lehrstuhl Wissensbasierte Systeme TU Dresden, 12. April 2017 Was bisher geschah... Grundbegriffe, die wir verstehen und erklären

Mehr

mathe plus Aussagenlogik Seite 1

mathe plus Aussagenlogik Seite 1 mathe plus Aussagenlogik Seite 1 1 Aussagenlogik 1.1 Grundbegriffe Def 1 Aussage Eine Aussage ist ein beschriebener Sachverhalt, dem eindeutig einer der Wahrheitswerte entweder wahr oder falsch zugeordnet

Mehr

Dank. Theoretische Informatik II. Teil II. Registermaschinen. Vorlesung

Dank. Theoretische Informatik II. Teil II. Registermaschinen. Vorlesung Dank Vorlesung Theoretische Informatik II Bernhard Beckert Institut für Informatik Diese Vorlesungsmaterialien basieren zum Teil auf den Folien zu den Vorlesungen von Katrin Erk (gehalten an der Universität

Mehr

Kapitel 1.5 und 1.6. Ein adäquater Kalkül der Aussagenlogik

Kapitel 1.5 und 1.6. Ein adäquater Kalkül der Aussagenlogik Kapitel 1.5 und 1.6 Ein adäquater Kalkül der Aussagenlogik Teil 1: Kalküle und Beweisbarkeit und die Korrektheit des Shoenfield-Kalküls Mathematische Logik (WS 2010/11) Kapitel 1.5 und 1.6: Kalküle 1 /

Mehr

4.3 Verifikation von Aussagen über Algorithmen

4.3 Verifikation von Aussagen über Algorithmen 4.3 Verifikation von Aussagen über Algorithmen Hoaresche Logik: Kalkül zum Beweisen von Aussagen über Algorithmen und Programme, Programm-Verifikation, [C.A.R. Hoare, 1969]. Mod - 4.51 Statische Aussagen

Mehr

Vollständige Induktion

Vollständige Induktion Vollständige Induktion F. Lemmermeyer. Januar 04 Aussagen, die für alle natürlichen Zahlen gelten, kann man oft mit vollständiger Induktion beweisen. Das Vorgehen ist dabei folgendes:. Man zeigt, dass

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Einheit 18: Logik Thomas Worsch Universität Karlsruhe, Fakultät für Informatik Wintersemester 2008/2009 1/35 Überblick Formeln in Prädikatenlogik erster Stufe Theorien und

Mehr

Dezimaldarstellung ganzer Zahlen (Division mit Rest) 1 Division mit Rest in der Hochschule

Dezimaldarstellung ganzer Zahlen (Division mit Rest) 1 Division mit Rest in der Hochschule Berufsfeldbezogenes Fachseminar - Zahlentheorie Lisa Laudan Prof. Dr. Jürg Kramer Wintersemester 2014/2015 Dezimaldarstellung ganzer Zahlen (Division mit Rest) 1 Division mit Rest in der Hochschule 1.1

Mehr

Theoretische Informatik SS 03 Übung 5

Theoretische Informatik SS 03 Übung 5 Theoretische Informatik SS 03 Übung 5 Aufgabe 1 Im Buch von Schöning ist auf S. 106-108 beschrieben, wie eine Turing-Maschine durch ein GOTO-Programm simuliert werden kann. Zeigen Sie, wie dabei die Anweisungen

Mehr

Zahlenmengen. Bemerkung. R Menge aller Dezimalbrüche: reelle Zahlen, C = {a + i b : a, b R} mit i 2 = 1 komplexe Zahlen.

Zahlenmengen. Bemerkung. R Menge aller Dezimalbrüche: reelle Zahlen, C = {a + i b : a, b R} mit i 2 = 1 komplexe Zahlen. Zahlenmengen N = {0, 1,, 3,...} natürliche Zahlen, Z = {...,, 1, 0, 1,,...} ganze Zahlen, Q = {p/q : p Z, q N \ {0}} rationale Zahlen, R Menge aller Dezimalbrüche: reelle Zahlen, C = {a + i b : a, b R}

Mehr

Algorithmus. Was ist ein Algorithmus? Ibn Musa Al-Chwarismi persischer Mathematikers 9. Jahrhundert Buch: Regeln der Wiedereinsetzung und Reduktion.

Algorithmus. Was ist ein Algorithmus? Ibn Musa Al-Chwarismi persischer Mathematikers 9. Jahrhundert Buch: Regeln der Wiedereinsetzung und Reduktion. Algorithmus Was ist ein Algorithmus? Ibn Musa Al-Chwarismi persischer Mathematikers 9. Jahrhundert Buch: Regeln der Wiedereinsetzung und Reduktion. Hier einige informelle Erklärungen zum Algorithmus P

Mehr

THEORETISCHE INFORMATIK UND LOGIK

THEORETISCHE INFORMATIK UND LOGIK Was bisher geschah... Grundbegriffe, die wir verstehen und erklären können: DTM, NTM, Entscheider, Aufzähler, berechenbar/entscheidbar, semi-entscheidbar, unentscheidbar, Church-Turing-These THEORETISCHE

Mehr

WS 2009/10. Diskrete Strukturen

WS 2009/10. Diskrete Strukturen WS 2009/10 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws0910

Mehr

Themen: Kubische Gleichungen, Ungleichungen, Induktion

Themen: Kubische Gleichungen, Ungleichungen, Induktion Lo sungen zu U bungsblatt Mathematik fu r Ingenieure Maschinenbauer und Sicherheitstechniker), 1. Semester, bei Prof. Dr. G. Herbort im WiSe1/14 Dipl.-Math. T. Pawlaschyk, 05.11.1 Themen: Kubische Gleichungen,

Mehr

Handout zu Beweistechniken

Handout zu Beweistechniken Handout zu Beweistechniken erstellt vom Lernzentrum Informatik auf Basis von [Kre13],[Bün] Inhaltsverzeichnis 1 Was ist ein Beweis? 2 2 Was ist Vorraussetzung, was ist Behauptung? 2 3 Beweisarten 3 3.1

Mehr

2. Grundlagen. Beschreibung von Algorithmen durch Pseudocode. Korrektheit von Algorithmen durch Invarianten.

2. Grundlagen. Beschreibung von Algorithmen durch Pseudocode. Korrektheit von Algorithmen durch Invarianten. 2. Grundlagen Beschreibung von Algorithmen durch Pseudocode. Korrektheit von Algorithmen durch Invarianten. Laufzeitverhalten beschreiben durch O-Notation. 1 Beispiel Minimum-Suche Eingabe bei Minimum

Mehr

Studienmaterial Einführung in das Rechnen mit Resten

Studienmaterial Einführung in das Rechnen mit Resten Studienmaterial Einführung in das Rechnen mit Resten H.-G. Gräbe, Institut für Informatik, http://www.informatik.uni-leipzig.de/~graebe 12. April 2000 Die folgenden Ausführungen sind aus Arbeitsmaterialien

Mehr

Verifizierende Testverfahren

Verifizierende Testverfahren Spezifikation Um einen Algorithmus zu schreiben, muss das zu lösende Problem genau beschrieben sein. Eine Spezifikation ist Verifizierende Testverfahren vollständig, wenn alle Anforderungen/alle relevanten

Mehr

2.4 Schleifen. Schleifen unterscheiden sich hinsichtlich des Zeitpunktes der Prüfung der Abbruchbedingung:

2.4 Schleifen. Schleifen unterscheiden sich hinsichtlich des Zeitpunktes der Prüfung der Abbruchbedingung: 2.4 Schleifen Schleifen beschreiben die Wiederholung einer Anweisung bzw. eines Blocks von Anweisungen (dem Schleifenrumpf) bis eine bestimmte Bedingung (die Abbruchbedingung) eintritt. Schleifen unterscheiden

Mehr

Einführung in die Informatik Algorithms

Einführung in die Informatik Algorithms Einführung in die Informatik Algorithms Vom Problem zum Algorithmus und zum Programm Wolfram Burgard Cyrill Stachniss 1.1 Motivation und Einleitung In der Informatik sucht man im Normalfall nach Verfahren

Mehr

Diskrete Strukturen Kapitel 2: Grundlagen (Beweise)

Diskrete Strukturen Kapitel 2: Grundlagen (Beweise) WS 2014/15 Diskrete Strukturen Kapitel 2: Grundlagen (Beweise) Hans-Joachim Bungartz Lehrstuhl für wissenschaftliches Rechnen Fakultät für Informatik Technische Universität München http://www5.in.tum.de/wiki/index.php/diskrete_strukturen_-_winter_14

Mehr

Grundkurs Mathematik I

Grundkurs Mathematik I Prof. Dr. H. Brenner Osnabrück WS 2016/2017 Grundkurs Mathematik I Vorlesung 14 Kunst gibt nicht das Sichtbare wieder, sondern Kunst macht sichtbar Paul Klee Division mit Rest Jede natürliche Zahl lässt

Mehr

Frage 8.3. Wozu dienen Beweise im Rahmen einer mathematischen (Lehramts-)Ausbildung?

Frage 8.3. Wozu dienen Beweise im Rahmen einer mathematischen (Lehramts-)Ausbildung? 8 Grundsätzliches zu Beweisen Frage 8.3. Wozu dienen Beweise im Rahmen einer mathematischen (Lehramts-)Ausbildung? ˆ Mathematik besteht nicht (nur) aus dem Anwenden auswendig gelernter Schemata. Stattdessen

Mehr

Algorithmen und Datenstrukturen (ESE) Entwurf, Analyse und Umsetzung von Algorithmen (IEMS) WS 2014 / Vorlesung 2, Donnerstag 30.

Algorithmen und Datenstrukturen (ESE) Entwurf, Analyse und Umsetzung von Algorithmen (IEMS) WS 2014 / Vorlesung 2, Donnerstag 30. Algorithmen und Datenstrukturen (ESE) Entwurf, Analyse und Umsetzung von Algorithmen (IEMS) WS 2014 / 2015 Vorlesung 2, Donnerstag 30. Oktober 2014 (Laufzeitanalyse MinSort / HeapSort, Induktion) Junior-Prof.

Mehr

Partielle Korrektheit von Programmen. Beispiele an der Tafel

Partielle Korrektheit von Programmen. Beispiele an der Tafel Partielle Korrektheit von Programmen Beispiele an der Tafel ALP II: Margarita Esponda, 12. Vorlesung, 24.5.2012 36 Beispiel: Partielle Korrektheit von Programmen Nehmen wir an, wir möchten beweisen, dass

Mehr

1 Einführung: Algorithmen. Algorithmen und Datenstrukturen WS 2012/13. Pro f. Dr. Sán do r Fe k e te

1 Einführung: Algorithmen. Algorithmen und Datenstrukturen WS 2012/13. Pro f. Dr. Sán do r Fe k e te 1 Einführung: Algorithmen Algorithmen und Datenstrukturen WS 2012/13 Pro f. Dr. Sán do r Fe k e te Literatur 1.1 Was ist ein Algorithmus? Ein Algorithmus ist eine aus endlich vielen Schritten bestehende

Mehr

Vollständige Induktion

Vollständige Induktion 30. September 008 Gliederung 1 3 4 Gliederung 1 3 4 Gliederung 1 3 4 Gliederung 1 3 4 Die Peano Axiome für die Menge der Natürlichen Zahlen N I. 0 ist eine natürliche Zahl, d.h. 0 N. II. Jede natürliche

Mehr

Zahlen und elementares Rechnen

Zahlen und elementares Rechnen und elementares Rechnen Christian Serpé Universität Münster 7. September 2011 Christian Serpé (Universität Münster) und elementares Rechnen 7. September 2011 1 / 51 Gliederung 1 2 Elementares Rechnen 3

Mehr

Übung Algorithmen und Datenstrukturen

Übung Algorithmen und Datenstrukturen Übung Algorithmen und Datenstrukturen Sommersemester 2016 Patrick Schäfer, Humboldt-Universität zu Berlin Organisation Vorlesung: Montag 11 13 Uhr Marius Kloft RUD 26, 0 115 Mittwoch 11 13 Uhr Marius Kloft

Mehr

Zusammenfassung. Definition. 1 (x i ) 1 i n Sequenz von Registern x i, die natürliche Zahlen beinhalten. 2 P ein Programm. Befehle: 1 x i := x i + 1

Zusammenfassung. Definition. 1 (x i ) 1 i n Sequenz von Registern x i, die natürliche Zahlen beinhalten. 2 P ein Programm. Befehle: 1 x i := x i + 1 Zusammenfassung Zusammenfassung der letzten LVA Einführung in die Theoretische Informatik Christina Kohl Alexander Maringele Georg Moser Michael Schaper Manuel Schneckenreither Eine Registermaschine (RM)

Mehr

Grundlagen der Mathematik

Grundlagen der Mathematik Universität Hamburg Winter 2016/17 Fachbereich Mathematik Janko Latschev Lösungsskizzen 8 Grundlagen der Mathematik Präsenzaufgaben (P13) Primfaktorzerlegungen Die Primfaktorzerlegungen lauten: a) 66 =

Mehr

Kapitel 1 Einleitung. Definition: Algorithmus nach M. Broy: aus: Informatik: Eine grundlegende Einführung, Band 1, Springer-Verlag, Berlin

Kapitel 1 Einleitung. Definition: Algorithmus nach M. Broy: aus: Informatik: Eine grundlegende Einführung, Band 1, Springer-Verlag, Berlin Kapitel 1 Einleitung 1.1. Begriff des Algorithmus Eine der ältesten Beschreibungstechniken für Abläufe: Benannt nach dem Mathematiker Al-Khwarizmi (ca. 780...840), der am Hof der Kalifen von Bagdad wirkte.

Mehr

Vollständige Induktion

Vollständige Induktion 30. September 008 Gliederung 1 3 4 Die Peano Axiome für die Menge der Natürlichen Zahlen N I. 0 ist eine natürliche Zahl, d.h. 0 N. II. Jede natürliche Zahl hat genau einen Nachfolger d.h. n : (n N! n

Mehr

Induktive Beweise und rekursive Definitionen

Induktive Beweise und rekursive Definitionen Induktive Beweise und rekursive Definitionen Vorlesung Logik in der Informatik, HU Berlin 1. Übungsstunde Beweis durch vollständige Induktion über N Aufgabe 1 Zeige, dass für alle n N gilt: n 2 i = 2 n+1

Mehr

Kostenmodell. Daniel Graf, Tobias Pröger. 22. September 2016 (aktualisierte Fassung 5 vom 9. Oktober 2016)

Kostenmodell. Daniel Graf, Tobias Pröger. 22. September 2016 (aktualisierte Fassung 5 vom 9. Oktober 2016) Kostenmodell Daniel Graf, Tobias Pröger 22. September 2016 (aktualisierte Fassung 5 vom 9. Oktober 2016) Erklärung: Diese Mitschrift ist als Ergänzung zur Vorlesung gedacht. Wir erheben keinen Anspruch

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Wintersemester 2013/14 1. Vorlesung Kapitel 1: Sortieren Prof. Dr. Alexander Wolff Lehrstuhl für Informatik I Das Problem Eingabe Gegeben: eine Folge A = a 1, a 2,..., a

Mehr

Syntax. 1 Jedes A AS AL ist eine (atomare) Formel. 2 Ist F eine Formel, so ist auch F eine Formel. 3 Sind F und G Formeln, so sind auch

Syntax. 1 Jedes A AS AL ist eine (atomare) Formel. 2 Ist F eine Formel, so ist auch F eine Formel. 3 Sind F und G Formeln, so sind auch Formale der Informatik 1 Kapitel 15 Folgerbarkeit, Äquivalenzen und Normalformen Frank Heitmann heitmann@informatik.uni-hamburg.de 8. Juni 2015 Syntax Definition (Syntax der Aussagenlogik) Mit AS AL sei

Mehr

Einführung in die Logik

Einführung in die Logik Einführung in die Logik Klaus Madlener und Roland Meyer 24. April 2013 Inhaltsverzeichnis 1 Aussagenlogik 1 1.1 Syntax................................. 1 1.2 Semantik............................... 3 1.3

Mehr

Allgemeines Halteproblem Hilberts 10. Problem

Allgemeines Halteproblem Hilberts 10. Problem Allgemeines Halteproblem Hilberts 10. Problem Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen November 2011 Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit

Mehr

Angewandte Mathematik und Programmierung

Angewandte Mathematik und Programmierung Angewandte Mathematik und Programmierung Einführung in das Konzept der objektorientierten Anwendungen zu mathematischen Rechnens WS 2013/14 Inhalt Übungserklärung* Beweis durch Vollständige Induktion 2

Mehr

6. Vorlesung. Rechnen mit Matrizen.

6. Vorlesung. Rechnen mit Matrizen. 6. Vorlesung. Rechnen mit Matrizen. In dieser Vorlesung betrachten wir lineare Gleichungs System. Wir betrachten lineare Gleichungs Systeme wieder von zwei Gesichtspunkten her: dem angewandten Gesichtspunkt

Mehr

Inhalt. 1. Einführung in die Informatik. 2. Algorithmen Definition, Eigenschaften, Entwurf Darstellung von Algorithmen Beispiele.

Inhalt. 1. Einführung in die Informatik. 2. Algorithmen Definition, Eigenschaften, Entwurf Darstellung von Algorithmen Beispiele. 1. Einführung in die Informatik Inhalt 2. Algorithmen Definition, Eigenschaften, Entwurf Darstellung von Algorithmen Beispiele Peter Sobe 1 Einführende Beispiele 2. Algorithmen Täglich werden Verarbeitungsvorschriften

Mehr

Einführung in die Informatik Algorithms II

Einführung in die Informatik Algorithms II Einführung in die Informatik Algorithms II Eigenschaften von Algorithmen Wolfram Burgard Cyrill Stachniss 14.1 Was können Computer berechnen? In Kapitel 1 haben wir gesagt, dass Programme die Umsetzung

Mehr

Grundlagen der Mathematik

Grundlagen der Mathematik Universität Hamburg Winter 016/17 Fachbereich Mathematik Janko Latschev Lösungsskizzen 6 Grundlagen der Mathematik Präsenzaufgaben (P9) Die Ordnung der natürlichen Zahlen I Wir hatten in der Vorlesung

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Wintersemester 2012/13 1. Vorlesung Kapitel 1: Sortieren Prof. Dr. Alexander Wolff Lehrstuhl für Informatik I Das Problem Eingabe Gegeben: eine Folge A = a 1, a 2,..., a

Mehr

Berechenbarkeit und Komplexität Vorlesung 11

Berechenbarkeit und Komplexität Vorlesung 11 Berechenbarkeit und Komplexität Vorlesung 11 Prof. Dr. Wolfgang Thomas Lehrstuhl Informatik 7 RWTH Aachen 7. Dezember 2014 Wolfgang Thomas, Informatik 7 () Vorlesung Berechenbarkeit und Komplexität 7.

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Einheit 15: Reguläre Ausdrücke und rechtslineare Grammatiken Thomas Worsch Karlsruher Institut für Technologie, Fakultät für Informatik Wintersemester 2010/2011 1/47 Was kann

Mehr

TECHNISCHE UNIVERSITÄT MÜNCHEN

TECHNISCHE UNIVERSITÄT MÜNCHEN TECHNISCHE UNIVERSITÄT MÜNCHEN Zentrum Mathematik PROF. DR.DR. JÜRGEN RICHTER-GEBERT, VANESSA KRUMMECK, MICHAEL PRÄHOFER Höhere Mathematik für Informatiker II (Sommersemester 2004) Lösungen zu Aufgabenblatt

Mehr

Analysis für Informatiker

Analysis für Informatiker Analysis für Informatiker Wintersemester 2017/2018 Carsten.Schneider@risc.jku.at 1 Bemerkung: Dies ist kein Skript, welches den gesamten Inhalt der Vorlesung abdeckt. Es soll den Studierenden aber während

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Kapitel 16: Erste Algorithmen in Graphen Thomas Worsch KIT, Institut für Theoretische Informatik Wintersemester 2015/2016 GBI Grundbegriffe der Informatik KIT, Institut für

Mehr

2. Symmetrische Gruppen

2. Symmetrische Gruppen 14 Andreas Gathmann 2 Symmetrische Gruppen Im letzten Kapitel haben wir Gruppen eingeführt und ihre elementaren Eigenschaften untersucht Wir wollen nun eine neue wichtige Klasse von Beispielen von Gruppen

Mehr

Informatik. Teil 1 Wintersemester 2011/2012. Prof. Dr.-Ing. habil. Peter Sobe Fachkultät Informatik / Mathematik

Informatik. Teil 1 Wintersemester 2011/2012. Prof. Dr.-Ing. habil. Peter Sobe Fachkultät Informatik / Mathematik Informatik Teil 1 Wintersemester 2011/2012 Prof. Dr.-Ing. habil. Peter Sobe Fachkultät Informatik / Mathematik Dieser Foliensatz wurde z.t. von Herrn Prof. Grossmann übernommen Inhalt 1. Algorithmen -

Mehr

Informatik I - Programmierung Globalübung Hoare-Kalkül. Thomas Weiler. Fachgruppe Informatik RWTH Aachen. T. Weiler, RWTH Aachen - 1 -

Informatik I - Programmierung Globalübung Hoare-Kalkül. Thomas Weiler. Fachgruppe Informatik RWTH Aachen. T. Weiler, RWTH Aachen - 1 - Informatik I - Programmierung Globalübung 11.11.2003 Hoare-Kalkül Thomas Weiler Fachgruppe Informatik RWTH Aachen T. Weiler, RWTH Aachen - 1 - Ariane 5 Die Ariane 5 ist das jüngste Modell der Trägerrakete

Mehr

Elementare Beweismethoden

Elementare Beweismethoden Elementare Beweismethoden Christian Hensel 404015 Inhaltsverzeichnis Vortrag zum Thema Elementare Beweismethoden im Rahmen des Proseminars Mathematisches Problemlösen 1 Einführung und wichtige Begriffe

Mehr

6 F O R M A L E S P R A C H E N. 6.1 formale sprachen

6 F O R M A L E S P R A C H E N. 6.1 formale sprachen 6.1 formale sprachen 6 F O R M A L E S P R A C H E N Eine natürliche Sprache umfasst mehrere Aspekte, z. B. Aussprache und Stil, also z. B. Wortwahl und Satzbau. Dafür ist es auch notwendig zu wissen,

Mehr

Theorie der Informatik

Theorie der Informatik Theorie der Informatik 2. Beweistechniken Malte Helmert Gabriele Röger Universität Basel 18. Februar 2015 Beweis Beweis Ein Beweis leitet die Korrektheit einer mathematischen Aussage aus einer Menge von

Mehr

LOOP-Programme: Syntaktische Komponenten

LOOP-Programme: Syntaktische Komponenten LOOP-Programme: Syntaktische Komponenten LOOP-Programme bestehen aus folgenden Zeichen (syntaktischen Komponenten): Variablen: x 0 x 1 x 2... Konstanten: 0 1 2... Operationssymbole: + Trennsymbole: ; :=

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Einheit 3: Alphabete, Abbildungen, Aussagenlogik Thomas Worsch Karlsruher Institut für Technologie, Fakultät für Informatik Wintersemester 2010/2011 1/32 Überblick Alphabete

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik FH Wedel Prof. Dr. Sebastian Iwanowski GTI33 Folie 1 Grundlagen der Theoretischen Informatik Sebastian Iwanowski FH Wedel Kap. 3: Verifikationstechniken Teil 3: FH Wedel Prof. Dr. Sebastian Iwanowski GTI33

Mehr

( )= c+t(n-1) n>1. Stand der Vorlesung Komplexität von Algorithmen (Kapitel 3)

( )= c+t(n-1) n>1. Stand der Vorlesung Komplexität von Algorithmen (Kapitel 3) Stand der Vorlesung Komplexität von Algorithmen (Kapitel 3) Motivation: IT gestützte Steuerung, Überwachung, Fertigung, Produktion,. : erfordert effiziente Berechnungsvorschriften Ziel: Methoden kennen

Mehr

Unvollständigkeit der Arithmetik

Unvollständigkeit der Arithmetik Unvollständigkeit der Arithmetik Slide 1 Unvollständigkeit der Arithmetik Hans U. Simon (RUB) Email: simon@lmi.rub.de Homepage: http://www.ruhr-uni-bochum.de/lmi Unvollständigkeit der Arithmetik Slide

Mehr

Einführung in die Informatik Turing Machines

Einführung in die Informatik Turing Machines Einführung in die Informatik Turing Machines Eine abstrakte Maschine zur Präzisierung des Algorithmenbegriffs Wolfram Burgard 1 Motivation und Einleitung Bisher haben wir verschiedene Programmiersprachen

Mehr

Grundbegriffe der Informatik Musterlösung zu Aufgabenblatt 1

Grundbegriffe der Informatik Musterlösung zu Aufgabenblatt 1 Grundbegriffe der Informatik Musterlösung zu Aufgabenblatt 1 Aufgabe 1.1 ( Punkte) Schreiben Sie die Definitionen von Injektivität und Surjektivität einer Funktion als prädikatenlogische Formeln auf. Lösung

Mehr

5. Übungsblatt zu Algorithmen I im SoSe 2016

5. Übungsblatt zu Algorithmen I im SoSe 2016 Karlsruher Institut für Technologie Institut für Theoretische Informatik Prof. Dr. Dennis Hofheinz Lukas Barth, Lisa Kohl 5. Übungsblatt zu Algorithmen I im SoSe 2016 https://crypto.iti.kit.edu/index.php?id=algo-sose16

Mehr

Analytische Lösung algebraischer Gleichungen dritten und vierten Grades

Analytische Lösung algebraischer Gleichungen dritten und vierten Grades Analytische Lösung algebraischer Gleichungen dritten und vierten Grades Inhaltsverzeichnis 1 Einführung 1 2 Gleichungen dritten Grades 3 3 Gleichungen vierten Grades 7 1 Einführung In diesem Skript werden

Mehr

Algorithmenbegriff: Berechenbarkeit. Algorithmenanalyse. (Berechnung der Komplexität)

Algorithmenbegriff: Berechenbarkeit. Algorithmenanalyse. (Berechnung der Komplexität) Über-/Rückblick Algorithmenbegriff: Berechenbarkeit Turing-Maschine RAM µ-rekursive Funktionen Zeit Platz Komplexität Algorithmentechniken Algorithmenanalyse (Berechnung der Komplexität) Rekursion Iteration

Mehr

Semantik von Programmiersprachen SS 2017

Semantik von Programmiersprachen SS 2017 Lehrstuhl für Programmierparadigmen Denis Lohner Sebastian Ullrich denis.lohner@kit.edu sebastian.ullrich@kit.edu Semantik von Programmiersprachen SS 2017 http://pp.ipd.kit.edu/lehre/ss2017/semantik Lösungen

Mehr

Vollständige Induktion. Analysis I. Guofang Wang. Universität Freiburg

Vollständige Induktion. Analysis I. Guofang Wang. Universität Freiburg Universität Freiburg 26.10.2011 Vollständige Induktion Wir unterbrechen jetzt die Diskussion der Axiome der reellen Zahlen, um das Beweisverfahren der vollständigen Induktion kennenzulernen. Wir setzen

Mehr