Programmierung 1 - Repetitorium
|
|
- Kora Diefenbach
- vor 7 Jahren
- Abrufe
Transkript
1 WS 2002/2003 Programmierung 1 - Repetitorium Andreas Augustin und Marc Wagner Homepage:
2 Donnerstag, den Kapitel 7 Korrektheit
3 7.1 Abstrakte Prozeduren Abstrakte Prozedur = Vorschrift, die zu jedem Wert eines vorgegebenen Argumentbereichs eine Berechnung definiert, die, wenn sie terminiert, ein eindeutig bestimmtes Ergebnis in einem vorgegebenen Ergebnisbereich liefert. Typzusicherung : sum : Z N Argumentbereich Ergebnisbereich definierende Gleichung : sum (x) = if x < 1 then 0 else sum (x-1) + x Für abstrakte Prozeduren gilt : - keine Speicherbeschränkung - keine Größenbeschränkung für Zahlen - keine undefinierte Operations- und Funktionsanwendungen
4 7.1 Abstrakte Prozeduren Abstrakte Prozeduren divergieren oder terminieren. Eine Prozedur p ist eine Prozedur X : Y, wenn X : Y die Typzusicherung von p ist. Sei p eine Prozedur X : Y. Ein Paar (x,y) X 2 heißt Rekursionspaar von p, wenn für die Bestimmung von p(x) gemäß der definierenden Gleichung von p die rekursive Bestimmung von p(y) erforderlich ist. Die Rekursionsrelation von p ist die Menge aller Rekursionspaare von p. Rekursionsrelation von sum ist { (n,n-1) n N + } Die Rekursionsrelation einer Prozedur X : Y ist immer eine binäre Relation auf X. Sei r eine binäre Relation. Eine unendliche Kette in r ist eine unendliche Folge x 0, x 1, x 2,..., für die gilt : n N : ( x n, x n+1 ) r
5 7.1 Abstrakte Prozeduren Wir sagen, dass r für x terminiert, wenn es keine unendliche Kette in r gibt, die mit x beginnt. Wir sagen, dass r terminiert, wenn es keine unendliche Kette in r gibt. Sei p eine Prozedur X : Y. Wir sagen, dass p auf x X terminiert, wenn die Rekursionsrelation von p für x terminiert. Die Menge aller x X, für die p terminiert, bezeichnen wir mit Dom p (domain) und nenne sie den Definitionsbereich von p. Wenn p für ein Argument x X terminiert, bezeichnen wir das eindeutig bestimmte Ergebnis mit p(x). Die Funktion { ( x, p(x) ) x Dom p } bezeichnen wir als Ergebnisfunktion der Prozedur p. Eine Prozedur ist linear-rekursiv gdw. alle Rekursionsbäume linear sind. Eine Prozedur ist binär-rekursiv gdw. alle Rekursionsbäume binär sind.
6 7.1 Abstrakte Prozeduren Beispiel : Fibonacci - Funktion fib : N N fib(n) = if n<2 then n else fib(n-1) + fib(n-2) Die Rekursionsrelation von fib ist { ( n, n i ) n N n 2 i {1,2} } Offensichtlich terminiert diese Relation, also auch fib. Rekursionsbaum für fib mit Argument 4 : fib 4 fib 3 fib 2 fib 2 fib 1 fib 1 fib 0 Jede Kante entspricht einem Rekursionspaar! fib 1 fib 0
7 7.2 Beweis durch Nachrechnen (1) sum Z N (2) x Z : sum(x) = if x<1 then 0 else sum(x-1) + x Behauptung : sum (2) = 3 Beweis : sum (2) = sum(1) + 2 = ( sum(0) + 1 ) + 2 = ( ) + 2 = 3 Behauptung : x Z : x < 1 sum(x) = 0 Beweis : Sei x Z und x < 1. Dann folgt sum(x) = 0 gem. Def. von sum. Beweistechniken für A B ( A Prämisse, B Konklusion ) 1. Beweise B unter Verwendung der Gültigkeit von A. 2. Beweise, dass A gilt. ( A B ) ( A v B )
8 7.2 Beweis durch Nachrechnen Behauptung : Beweis : x Z : sum(x) = if x<1 then 0 else x / 2 * (x+1) f 1 (x) = if x < 1 then 0 else x / 2 * (x+1) f 2 (x) = if x < 1 then 0 else f 2 (x-1) + x Sei x < 1. f 1 (x) = 0 = f 2 (x) klar nach Def. Sei x 1. f 1 (x) = x / 2 * (x+1) = x-1 / 2 * (x-1+1) + x = f 1 (x-1) + x (IA) = if x < 1 then 0 else f 2 (x-1) + x = f 2 (x)
9 7.3 Ordnungsrelation Infixschreibweise einer binären Relation r : x r y = ( x, y ) r Sei eine binäre Relation. x y x kleiner gleich y x y y x x größer gleich y x < y x y x y x kleiner y x Vorgänger von y x > y y < x x größer y x Nachfolger von y Eine binäre Relation heißt... - reflexiv, wenn Dom ( ) = Ran ( ) und x Dom ( ) : x x - transitiv, wenn für alle x,y,z Dom ( ) gilt : ( x y y z ) x z. - antisymmetrisch, wenn für alle x,y Dom (J) gilt : ( x J y y J x ) x = y. - partielle Ordnung, wenn sie reflexiv, transitiv und antisymmetrisch ist. - linear, wenn für alle x,y Dom (J) gilt : x y v y x - wohlfundiert, wenn > terminiert.
10 7.3 Ordnungsrelation Eine partielle Ordnung J heißt... - partielle Ordnung für eine Menge X, wenn Dom ( ) = X ist. - lineare Ordnung, wenn sie linear ist. - wohlfundierte Ordnung, wenn sie wohlfundiert ist. - Wohlordnung, wenn sie linear und wohlfundiert ist. natürliche Ordnung NO(x) = { (x,y) X 2 x y } strukturelle Ordnung SO(x) = { (x,y) X 2 x Teilobjekt von y } Inklusionsordnung IO(x) = { (y,z) y z und z x } Identität Id(x) = { (x,x) x X }
11 7.4 Terminierungsbeweise Sei X eine nach unten beschränkte Teilmenge der ganzen Zahlen. Dann ist NO(X) eine terminierende Relation. Sei X eine Menge. Dann ist SO(X) eine terminierende Relation. Jede Teilmenge einer terminierenden Relation ist eine terminierende Relation. Eine Funktion f bettet eine binäre Relation r in eine binäre Relation r ein, wenn gilt : 1. ( Dom r Ran r ) Dom f 2. (x,y) r : ( f x, f y ) r Jede Relation, die in eine terminierende Relation einbettbar ist, terminiert.
12 7.4 Terminierungsbeweise Eine Prozedur p heißt... - natürlich rekursiv, wenn es eine nach unten beschränkte Teilmenge X der ganzen Zahlen gibt, sodass die Rekursionsrelation von p in NO(X) eingebettet werden kann. - strukturell rekursiv, wenn es eine Menge X gibt, sodass die Rekursionsrelation von p in SO(X) eingebettet werden kann. Jede natürlich oder strukturell rekursive Prozedur terminiert.
13 7.4 Terminierungsbeweise Beispiel : Größe von Bäumen size : T(x) N size ( x, [ t 1,..., t n ] ) = 1 + size(t 1 ) size(t n ) ( T(X) = X x L (T(X)) ) Rekursionsrelation { ( ( x, [ t 1,..., t n ], t i ) ( x, [ t 1,..., t n ] ) T(X) n 1 i { 1,..., n } } Dies ist eine Teilmenge von SO(T(X)). size ist strukturell rekursiv und terminiert. Beispiel : Potenzen power : R x N R power (x,n) = if n=0 then 1 else power (x,n-1) * x Rekursionsrelation { ( (x,n), (x,n-1) ) x R n N + } wird von (x,n) R x N. n in NO(N) eingebettet. power ist natürlich rekursiv und terminiert.
14 7.5 Induktion Eine Relation ist genau dann wohlfundiert, wenn jede nichtleere Menge ein minimales Element für enthält. Wohlfundierte Induktion : Sei eine wohlfundierte Relation, X eine Menge und A X. Dann gilt A = X, wenn gilt : x X : ( y X : y < x y A ) x A Grundmenge : X Aussagemenge : A X Zielbehauptung : x X : x A bzw. X A Induktionsrelation : wohlfundierte Ordnung ( z.b. NO(X) ) Induktionsbehauptung : x X : ( y X : y < x y A ) x A Induktionsannahme für x X : y X : y < x y A : Beweis unter Verwendung der Induktionsannahme
15 7.5 Induktion Von der Wahl der richtigen Induktionsrelation hängt der Erfolg des Induktionsbeweises ab. Wenn die Grundmenge eine nach unten beschränkte Menge von Zahlen ist, ist die natürliche Ordnung die naheliegende Wahl. Man spricht dann von natürlicher Induktion. Wenn die Elemente der Grundmenge dagegen zusammengesetzte Objekte sind (z.b. Listen oder Bäume), bietet sich die strukturelle Ordnung an. Man spricht dann von struktureller Induktion.
16 7.5 Induktion Beispiel : Summenfunktion sum Z N sum (x) = if x < 1 then 0 else sum (x-1) + x Behauptung : n N : sum (n) = n / 2 * (n+1) Beweis mit natürlicher Induktion : Grundmenge : N Aussagemenge : A := { n N sum(n) = n / 2 * (n+1) } N Zielbehauptung : N A Induktionsrelation : NO(N) Sei n=0. sum(n) = 0 = n / 2 * (n+1) klar nach Definition Sei n>0. sum(n) = sum(n-1) + n Definition von sum = n-1 / 2 * (n-1+1) + n (IA) = n / 2 * (n+1)
17 7.6 Strukturelle Induktion über Listen L (X) = { ( ) } ( X x L (X) ) L (X) x L (X) : L (X) ys = ys ( x :: xr ys = x :: ( ys ) Länge _ L (X) N nil = 0 x :: xr = 1 + xr Reversion rev L (X) L (X) rev ( nil ) = nil rev ( x :: xr ) = rev ( xr [ x ] Sei X eine Menge und seien xs,ys,zs L (X). Dann gilt : 1. nil = xs 2. ys = xs + ys 3. rev ( xs ) = xs 4. rev ( ys ) = rev ( ys rev ( xs ) 5. rev ( rev ( xs ) ) = xs
18 7.6 Strukturelle Induktion über Listen Behauptung : Beweis : Sei X eine Menge und seien xs,ys,zs L (X) Dann gilt : ( ys zs = ( zs ) Seien ys,zs L (X). Wir beweisen xs L (X) : ( ys zs = ( zs ) durch strukturelle Induktion über xs L (X) Sei xs = nil. ( ys zs = zs = ( zs ) Sei xs = x :: xr. ( ys zs = ( x :: ( ys ) zs = x :: ( ( ys zs ) = x :: ( ( zs ) ) (IA) = ( zs )
19 7.7 Größenverhältnisse in Bäumen T(X) = X x L (T(X)) Größe s T(X) : N s ( x, [ t 1,..., t n ] ) = 1 + s ( t 1 ) s ( t n ) Tiefe d T(X) : N d ( x, [ t 1,..., t n ] ) = 1 + max { -1, d ( t 1 ),..., d ( t n ) } Breite b T(X) : N + b ( x, [ t 1,..., t n ] ) = if n=0 then 1 else b ( t 1 ) b ( t n ) Die inneren Knoten eines Baumes sind die Knoten, die keine Blätter sind.
20 7.7 Größenverhältnisse in Bäumen Behauptung : Für jeden balancierten Binärbaum t T (X) gilt : b ( t ) = 2 d ( t ) Beweis durch strukturelle Induktion : Sei t = ( x, [ ] ). b ( t ) = 1 = 2 d ( t ) nach Definition Sei t = ( x, [ t 1, t 2 ] ). b ( t ) = b ( t 1 ) + b ( t 2 ) Definition von b ( t ) = 2 d ( t1 ) + 2 d ( t2 ) (IA) = 2 * 2 d ( t1 ) t balanciert, also d ( t 1 ) = d ( t 2 ) = d ( t1 ) = max { d ( t1 ), d ( t2 ) } t balanciert, also d ( t 1 ) = d ( t 2 ) = 2 d ( t ) Definition von d ( t )
21 7.7 Größenverhältnisse in Bäumen Behauptung : Für jeden balancierten Binärbaum t T(X) gilt : s ( t ) = 2 d ( t ) Beweis durch strukturelle Induktion : Sei t = ( x, [ ] ). s ( t ) = 1 = 2 d ( t ) nach Definition Sei t = ( x, [ t 1, t 2 ] ). s ( t ) = 1 + s ( t 1 ) + s ( t 2 ) Definition von b ( t ) = d ( t1 ) d ( t2 ) (IA) = 2 * 2 d ( t1 ) t balanciert, also d ( t 1 ) = d ( t 2 ) = d ( t1 ) = max { d ( t1 ), d ( t2 ) } t balanciert, also d ( t 1 ) = d ( t 2 ) = 2 d ( t ) Definition von d ( t )
Strukturelle Rekursion und Induktion
Kapitel 2 Strukturelle Rekursion und Induktion Rekursion ist eine konstruktive Technik für die Beschreibung unendlicher Mengen (und damit insbesondere für die Beschreibung unendliche Funktionen). Induktion
MehrProgrammierung 1 - Repetitorium
WS 2002/2003 Programmierung 1 - Repetitorium Andreas Augustin und Marc Wagner Homepage: http://info1.marcwagner.info Dienstag, den 08.04.03 Kapitel 4 Laufzeit 4.1 Vorbemerkungen Im folgenden betrachten
Mehr6. Induktives Beweisen - Themenübersicht
6. Induktives Beweisen - Themenübersicht Ordnungsrelationen Partielle Ordnungen Quasiordnungen Totale Ordnungen Striktordnungen Ordnungen und Teilstrukturen Noethersche Induktion Anwendung: Terminierungsbeweise
MehrProgrammierung 1 (Wintersemester 2015/16) Lösungsblatt: Aufgaben für die Übungsgruppen: 8 (Kapitel 9)
Fachrichtung 6. Informatik Universität des Saarlandes Tutorenteam der Vorlesung Programmierung Programmierung (Wintersemester 5/6) Lösungsblatt: Aufgaben für die Übungsgruppen: 8 (Kapitel 9) Hinweis: Dieses
MehrKlausur Programmierung WS 2002/03
Klausur Programmierung WS 2002/03 Prof. Dr. Gert Smolka, Dipl. Inf. Thorsten Brunklaus 14. Dezember 2002 Leo Schlau 45 Vor- und Nachname Sitz-Nr. 4711 007 Matrikelnummer Code Bitte öffnen Sie das Klausurheft
MehrALP I Induktion und Rekursion
ALP I Induktion und Rekursion WS 2012/2013 Vollständige Induktion (Mafi I) Die Vollständige Induktion ist eine mathematische Beweistechnik, die auf die Menge der natürlichen Zahlen spezialisiert ist. Vorgehensweise:
MehrLogik für Informatiker
Vorlesung Logik für Informatiker 2. Induktion Bernhard Beckert Universität Koblenz-Landau Sommersemester 2006 Logik für Informatiker, SS 06 p.1 Induktion Zentrale Rolle Wesentliches Beweisprinzip in Mathematik
MehrIn diesem Kapitel wiederholen wir Begriffe und Notationen für grundlegende mathematische
Kapitel 1 Mathematische Objekte In diesem Kapitel wiederholen wir Begriffe und Notationen für grundlegende mathematische Objekte wie Tupel, Mengen, Relationen und Funktionen. Außerdem erklären wir die
MehrLogik für Informatiker
Logik für Informatiker 1. Grundlegende Beweisstrategien: Noethersche Induktion 23.04.2012 Viorica Sofronie-Stokkermans Universität Koblenz-Landau e-mail: sofronie@uni-koblenz.de 1 Letzte Vorlesung 1. Grundlegende
MehrMengen sind gedankliche Objekte, die wir durch die folgenden Axiome definieren:
Kapitel 6 Mengenlehre Eine wichtige Aufgabe der Informatik besteht in der Konstruktion präziser gedanklicher Modelle. Dabei kommen mathematische Datenstrukturen zum Einsatz, wie wir sie in diesem Kapitel
MehrFormale Methoden in der Informatik Wiederholung klassische Logik Konkrete Datentypen (algebraische Strukturen) Abstrakte Datentypen
Was bisher geschah Formale Methoden in der Informatik Wiederholung klassische Logik Konkrete Datentypen (algebraische Strukturen) Abstrakte Datentypen Syntax: Signatur Semantik: Axiome (FOL-Formeln, meist
MehrInhalt Kapitel 3: Induktion und Termination
Inhalt Kapitel 3: Induktion und Termination 1 Wohlfundierte Relationen Ackermannfunktion 2 Untere Schranke für Türme von Hanoi Weitere Beispiele 52 Wohlfundierte Relationen Wohlfundierte Relationen Definition
MehrLogik für Informatiker. 1. Grundlegende Beweisstrategien. Viorica Sofronie-Stokkermans Universität Koblenz-Landau
Logik für Informatiker 1. Grundlegende Beweisstrategien Viorica Sofronie-Stokkermans Universität Koblenz-Landau e-mail: sofronie@uni-koblenz.de 1 Mathematisches Beweisen Mathematische ussagen - haben oft
MehrOrdnungsrelationen auf Mengen. Beispiel einer Ordnungsrelation. Spezielle Elemente von Ordnungen. Spezielle Elemente von Ordnungen
Ordnungsrelationen auf Mengen! Eine (partielle) Ordnungsrelation oder kurz Ordnung O auf einer Menge M ist eine Relation, die reflexiv, antisymmetrisch und transitiv ist. Beispiel: M = { 1, 2, 3 }, O =
MehrOrdnungsrelationen auf Mengen
Ordnungsrelationen auf Mengen Eine (partielle) Ordnungsrelation oder kurz Ordnung O auf einer Menge M ist eine Relation, die reflexiv, antisymmetrisch und transitiv ist. Beispiel: M = { 1, 2, 3 }, O =
MehrKapitel 2. Induktion und Rekursion. 2.1 Induktion. Seien X und A Mengen und eine terminierende Relation. dass x X : x A gilt.
Kapitel 2 Induktion und Rekursion 2.1 Induktion Induktion ist eine wichtige technik. Leider wird Induktion oft so vermittelt, dass Anfänger zu dem Schluß kommen, Induktion wäre eine geheimnisvolle Angelegenheit.
Mehr1 Übersicht Induktion
Universität Koblenz-Landau FB 4 Informatik Prof. Dr. Viorica Sofronie-Stokkermans Dipl.-Inform. Markus Bender 0.11.01 (v1.3) 1 Übersicht Induktion 1.1 Allgemeines Unter einem induktiven Vorgehen versteht
MehrLösungen zu Kapitel 2
Lösungen zu Kapitel 2 Lösung zu Aufgabe 1: Wir zeigen die Behauptung durch vollständige Induktion über n. Die einzige Menge mit n = 0 Elementen ist die leere Menge. Sie besitzt nur sich selbst als Teilmenge,
MehrLösungen zum Aufgabenblatt Nr. 1: Konstruktion der reellen Zahlen
Lösungen zum Aufgabenblatt Nr. 1: Konstruktion der reellen Zahlen Aufgabe 1: Es sei D die Menge aller rationalen Dedekind-Mengen, also D := { M 2 Q M is Dedekind-Menge }. Auf der Menge D definieren wir
MehrLösung Probeklausur Informatik I
Lösung Probeklausur Informatik I 1 Lösung Aufgabe 1 (5 Punkte) Algorithmen und Programme Was ist der Unterschied zwischen einem Algorithmus und einem Programm? Ein Algorithmus ist eine Vorschrift zur Durchführung
MehrInformatik I. 9. Nachweis von Programmeigenschaften. Jan-Georg Smaus. Albert-Ludwigs-Universität Freiburg. 2. Dezember 2010
Informatik I 9. Nachweis von Programmeigenschaften Jan-Georg Smaus Albert-Ludwigs-Universität Freiburg 2. Dezember 2010 Jan-Georg Smaus (Universität Freiburg) Informatik I 2. Dezember 2010 1 / 30 Informatik
MehrKapitel 5. Fixpunktoperatoren
Kapitel 5 Fixpunktoperatoren Rekursion ist eine wichtige Definitionstechnik. Im Rahmen dieser Vorlesung haben wir bereits eine Vielzahl von rekursiven Definitionen gesehen. Dabei wurden überwiegend strukturelle
MehrDiskrete Strukturen Kapitel 5: Algebraische Strukturen (Gruppen)
WS 2015/16 Diskrete Strukturen Kapitel 5: Algebraische Strukturen (Gruppen) 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_15
MehrTeil 7: Rekursion; Imperative Programme
1 Teil 7: Rekursion; Imperative Programme Terminierend rekursive Funktionen Im Tutorial: Kap. 3.5 / 9.2 Definition mit recdef, Nachweis der Terminierung Beweise über rekursive Funktionen Imperative Programme
MehrInduktive Definitionen
Induktive Definitionen Induktive Definition: Konstruktive Methode zur Definition einer Menge M von Objekten aus Basisobjekten mittels (Erzeugungs-) Regeln Slide 1 Rekursion über den Aufbau: Konstruktive
MehrStand der Vorlesung Komplexität von Algorithmen (Kapitel 3)
Stand der Vorlesung Komplexität von Algorithmen (Kapitel 3) Technische Universität München Motivation: IT gestützte Steuerung, Überwachung, Fertigung, Produktion,. : erfordert effiziente Berechnungsvorschriften
MehrOrdnungsrelationen auf Mengen
Ordnungsrelationen auf Mengen Eine (partielle) Ordnungsrelation oder kurz Ordnung O auf einer Menge M ist eine Relation, die reflexiv, antisymmetrisch und transitiv ist. Beispiel: M = { 1, 2, 3 }, O =
MehrProgrammieren für Fortgeschrittene
Technische Universität Braunschweig Dr. Werner Struckmann Institut für Programmierung und Reaktive Systeme Wintersemester 2011/12 Programmieren für Fortgeschrittene Rekursive Spezifikationen Die folgende
MehrÜbungen zu Grundlagen der Theoretischen Informatik
Übungen zu Grundlagen der Theoretischen Informatik INSTITUT FÜR INFORMATIK UNIVERSITÄT KOBLENZ-LANDAU SS 2013 Lösungen 02 Aufgabe 1 Geben Sie einen regulären Ausdruck für die Sprache aller Wörter über
MehrSoftware Entwicklung 1
Software Entwicklung 1 Annette Bieniusa AG Softech FB Informatik TU Kaiserslautern Lernziele Rekursive Prozeduren zu charakterisieren. Terminierung von rekursiven Prozeduren mit Hilfe von geeigneten Abstiegsfunktionen
MehrDie Korrektheit von Mergesort
Die Korrektheit von Mergesort Christoph Lüth 11. November 2002 Definition von Mergesort Die Funktion Mergesort ist wie folgt definiert: msort :: [Int]-> [Int] msort xs length xs
Mehr( )= 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
MehrAbschnitt 3: Mathematische Grundlagen
Abschnitt 3: Mathematische Grundlagen 3. Mathematische Grundlagen 3.1 Mengen und Abbildungen 3.2 Induktion und Rekursion 3.3 Ausdrücke 3 Mathematische Grundlagen Einf. Progr. (WS 08/09) 102 Überblick 3.
MehrEine Relation R in einer Menge M ist eine Teilmenge von M x M. Statt (a,b) R schreibt man auch arb.
4. Relationen 4.1 Grundlegende Definitionen Relation R in einer Menge M: Beziehung zwischen je 2 Elementen von M. Beispiel
MehrAbschnitt 3: Mathematische Grundlagen
Abschnitt 3: Mathematische Grundlagen 3. Mathematische Grundlagen 3.1 3.2 Induktion und Rekursion 3.3 Boolsche Algebra Peer Kröger (LMU München) Einführung in die Programmierung WS 14/15 48 / 155 Überblick
Mehr4 Einige Grundstrukturen. Themen: Abbildungen und Relationen Gruppen Die natürlichen Zahlen Körper
4 Einige Grundstrukturen Themen: Abbildungen und Relationen Gruppen Die natürlichen Zahlen Körper Abbildungen Seien X und Y Mengen. Eine (einstellige) Abbildung f : X Y ordnet jedem x X genau ein Element
Mehr2. Algorithmische Methoden 2.1 Rekursion. 18. April 2017
2. Algorithmische Methoden 2.1 Rekursion 18. April 2017 Rekursiver Algorithmus Ein rekursiver Algorithmus löst ein Problem, indem er eine oder mehrere kleinere Instanzen des gleichen Problems löst. Beispiel
MehrRekursive Funktionen
Rekursive Funktionen Man kann eine Funktion f : A B durch einen Term definieren, der selbst Aufrufe von f enthält. Beispiel: fakultät = function(n)if n = 0 then 1 else n fakultät(n 1) Dies bezeichnet man
MehrKapitel 08: Rekursion und Terminierung Software Entwicklung 1
Kapitel 08: Rekursion und Terminierung Software Entwicklung 1 Annette Bieniusa, Mathias Weber, Peter Zeller Rekursion ist eine elegante Strategie zur Problemlösung, die es erlaubt eine Problemstellung
MehrKapitel 2. Mathematische Grundlagen. Skript zur Vorlesung Einführung in die Programmierung
LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS DATABASE Kapitel 2 Mathematische Grundlagen Skript zur Vorlesung Einführung in die Programmierung im Wintersemester 2012/13 Ludwig-Maximilians-Universität
MehrNatürliche Zahlen sind interessant
Natürliche Zahlen sind interessant N. N. Technische Universität München 16. September 2008 1 Interessante Zahlen Vorbemerkungen Der Zentrale Satz 2 Anwendungen Pädagogik Übersicht 1 Interessante Zahlen
Mehr6. Rekursive Funktionen und Induktion
6. Rekursive Funktionen und Induktion 6.1 Rekursive Funktionen Definition rekursiver Funktionen Terminierung 6.2 Beweisen durch Induktion 6.3 Fundierte Relationen Maschinelles Beweisen mit PVS 6 1 6.1
MehrKAPITEL 4. Posets Hasse Diagramm
KAPITEL 4 Posets Im Abschnitt über Relationen (1.4) wurde Eigenschaften von Relationen über einer einzigen Grundmenge X definiert. Mithilfe dieser Eigenschaften wurden z.b. Äquivalenzrelationen definiert.
MehrGrundlagen der Theoretischen Informatik
1 Grundlagen der Theoretischen Informatik Till Mossakowski Fakultät für Informatik Otto-von-Guericke Universität Magdeburg Wintersemester 2014/15 2 Notation für Wörter w a is die Anzahl der Vorkommen von
MehrBeweistechnik: Beweise in Bezug auf Mengen. Formale Methoden 2 LVA , Beweistechnik: Widerspruchsbeweise. Satz R (S T ) = (R S) (R T )
Formale Methoden 2 LVA 703019, 703020 (http://clinformatik.uibk.ac.at/teaching/ss06/fmii/) Georg Moser (VO) 1 Martin Korp (UE) 2 Friedrich Neurauter (UE) 3 Christian Vogt (UE) 4 1 georg.moser@uibk.ac.at
MehrVorkurs Mathematik für Informatiker
Vorkurs Mathematik für Informatiker 6. Ordnungsrelationen Thomas Huckle, Kilian Röhner Technische Universität München 9.10.2017 Graphen Graph besteht aus Knoten (Ecken) und Kanten (Verbindungen zwischen
MehrLineare Algebra 1. Detlev W. Hoffmann. WS 2013/14, TU Dortmund
Lineare Algebra 1 Detlev W. Hoffmann WS 2013/14, TU Dortmund 1 Mengen und Zahlen 1.1 Mengen und Abbildungen Eine Menge ist eine Zusammenfassung wohlunterscheidbarer Objekte unserer Anschauung/unseres Denkens/unserer
MehrFunktionale Programmierung Teil 2 Methodik: Spezifikation, Implementierung, Verifikation
Grundlagen der Programm- und Systementwicklung Funktionale Programmierung Teil 2 Methodik: Spezifikation, Implementierung, Verifikation Technische Universität München Institut für Informatik Software &
MehrModellbildung Modelle
Kapitel 2 Mengenlehre Informatiker bauen Systeme, die Dienste zur Verfügung stellen, die von Einzelpersonen, Firmen oder Institutionen gewünscht oder benötigt werden. Die Analyse der gewünschten Dienste
MehrAnalysis I - Notizen 1. Daniel Lenz Jena - Wintersemester 2016
Analysis I - Notizen 1 Daniel Lenz Jena - Wintersemester 2016 1 Es handelt sich nicht um ein Skriptum zur Vorlesung. Besten Dank an alle, die zu Verbesserungen früherer Notizen zur Analysis I beigetragen
Mehr5. Ordinalzahlen (Vorlesung 11)
EINFÜHRUNG IN DIE LOGIK UND MENGENLEHRE 29 5.. Grundlegende Eigenschaften. 5. Ordinalzahlen (Vorlesung ) Definition 5. (Wohlordnung). Eine lineare Ordnung < auf einer Menge a heißt Wohlordnung, wenn jede
MehrOrdnungsrelationen auf Mengen. Beispiel einer Ordnungsrelation. Spezielle Elemente von Ordnungen. Spezielle Elemente von Ordnungen
Ordnungsrelationen auf Mengen Eine (partielle) Ordnungsrelation oder kurz Ordnung O auf einer Menge M ist eine Relation, die reflexiv, antisymmetrisch und transitiv ist. Beispiel: M = { 1, 2, 3 }, O =
MehrRandomisierte Algorithmen
Randomisierte Algorithmen Randomisierte Algorithmen 5. Zwei spieltheoretische Aspekte Thomas Worsch Fakultät für Informatik Karlsruher Institut für Technologie Wintersemester 2015/2016 1 / 36 Überblick
MehrLösung: InfA - Übungsblatt 07
Lösung: InfA - Übungsblatt 07 Michele Ritschel & Marcel Schilling 23. Dezember 2008 Verwendete Abkürzungen: Beweis, vollständige Induktion, IA: Induktionsanfang/Induktionsanker, IS: Induktionsschritt/Induktionssprung,
MehrDiskrete Strukturen Kapitel 2: Grundlagen (Relationen)
WS 2016/17 Diskrete Strukturen Kapitel 2: Grundlagen (Relationen) 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_16
MehrEinführung in die Informatik 2
Einführung in die Informatik Strukturelle Induktion Sven Kosub AG Algorithmik/Theorie komplexer Systeme Universität Konstanz E 0 Sven.Kosub@uni-konstanz.de Sprechstunde: Freitag, 1:30-14:00 Uhr, o.n.v.
MehrWiederholung
Wiederholung Knotenfärbung von Graphen Chromatische Zahl χ(g) Beweis: Jeder planare Graph ist 5-färbbar Vierfarbensatz: Jeder planare Graph ist 4-färbbar. Kantenfärbung: χ (G) = (G) oder (G)+1 Matchings
MehrZahlen in Haskell Kapitel 3
Einführung in die Funktionale Programmiersprache Haskell Zahlen in Haskell Kapitel 3 FH Wedel IT-Seminar: WS 2003/04 Dozent: Prof. Dr. Schmidt Autor: Timo Wlecke (wi3309) Vortrag am: 04.11.2003 - Kapitel
MehrProgrammierung und Modellierung mit Haskell
Rekursion Terminierung Rekursionsarten Induktion Programmierung und Modellierung mit Haskell Rekursion, Terminierung, Induktion Martin Hofmann Steffen Jost LFE Theoretische Informatik, Institut für Informatik,
Mehr4 Elementare Mengentheorie
4 Elementare Mengentheorie 4 Elementare Mengentheorie 4.1 Mengen [ Partee 3-11, McCawley 135-140, Chierchia 529-531 ] Die Mengentheorie ist entwickelt worden, um eine asis für den ufbau der gesamten Mathematik
MehrInduktive Definitionen
Priv.-Doz. Dr.rer.nat.habil. Karl-Heinz Niggl Technische Universität Ilmenau Fakultät IA, Institut für Theoretische Informatik Fachgebiet Komplexitätstheorie und Effiziente Algorithmen J Induktive Definitionen
Mehr2 Mengen, Abbildungen und Relationen
Vorlesung WS 08 09 Analysis 1 Dr. Siegfried Echterhoff 2 Mengen, Abbildungen und Relationen Definition 2.1 (Mengen von Cantor, 1845 1918) Eine Menge M ist eine Zusammenfassung von wohlbestimmten und wohl
MehrZusammenfassung der letzten LVA. Diskrete Mathematik
Zusammenfassung Zusammenfassung der letzten LVA Diskrete Mathematik Christina Kohl Georg Moser Oleksandra Panasiuk Christian Sternagel Vincent van Oostrom (Beweisformen) Beweisformen sind etwa (i) deduktive
MehrInhalt Kapitel 2: Rekursion
Inhalt Kapitel 2: Rekursion 1 Beispiele und Definition 2 Partialität und Terminierung 3 Formen der Rekursion Endständige Rekursion 4 Einbettung 29 Beispiele und Definition Rekursion 30 Man kann eine Funktion
MehrProgrammieren in Haskell. Stefan Janssen. Strukturelle Rekursion. Universität Bielefeld AG Praktische Informatik. 10.
Universität Bielefeld AG Praktische Informatik 10. Dezember 2014 Wiederholung: Schema: f :: [σ] -> τ f [] = e 1 f (a : as) = e 2 where s = f as wobei e 1 und e 2 Ausdrücke vom Typ τ sind und e 2 die Variablen
MehrProgrammierung 1 (Wintersemester 2012/13) Lösungsblatt 10 (Kapitel 11)
Fachrichtung 6.2 Informatik Universität des Saarlandes Tutorenteam der Vorlesung Programmierung 1 Programmierung 1 (Wintersemester 2012/13) Lösungsblatt 10 (Kapitel 11) Hinweis: Dieses Übungsblatt enthält
MehrWS 2013/14. Diskrete Strukturen
WS 2013/14 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/ws13/14
MehrWS 2011/2012. Robert Giegerich Dezember 2013
WS 2011/2012 Robert 1 AG Praktische Informatik 11. Dezember 2013 1 robert@techfak.uni-bielefeld.de Vorschau Themen heute: Funktionen höherer Ordnung (Fortsetzung) künstliche Striktheit mehr zu fold für
MehrEinführung in die Mengenlehre
Einführung in die Mengenlehre D (Menge von Georg Cantor 845-98) Eine Menge ist eine Zusammenfassung bestimmter wohlunterschiedener Objekte unseres Denkens oder unserer Anschauung zu einem Ganzen wobei
MehrÜberblick. 3. Mathematische Grundlagen 3.1 Mengen und Abbildungen 3.2 Induktion und Rekursion 3.3 Boolsche Algebra
Überblick 3. Mathematische Grundlagen 3.1 Mengen und Abbildungen 3.2 3.3 Boolsche Algebra Peer Kröger (LMU München) Einführung in die Programmierung WS 14/15 72 / 179 Beweisprinzip der vollständigen Induktion
Mehr8. Einfache Fixpunkttheorie
8. Einfache Fixpunkttheorie Fragestellung: was unter einem (kleinsten) Fixpunkt zu verstehen ist t(x) = x y : D. t(y) = y x y wann ein Fixpunkt existiert monotone Funktionen über CPOs haben einen kleinsten
MehrSemantik von Programmiersprachen
Semantik von Programmiersprachen Markus Lohrey Universität Siegen Sommersemester 2015 Markus Lohrey (Universität Siegen) Semantik Sommersem. 2015 1 / 180 Literatur J. Loeckx, K. Sieber: The Foundations
MehrDiskrete Strukturen. Vorlesung 15: Arithmetik. 5. Februar 2019
1 Diskrete Strukturen Vorlesung 15: Arithmetik 5. Februar 2019 Nächste Termine Modul Diskrete Strukturen Hörsaalübung (Mo. 9:15) Vorlesung (Di. 17:15) 4.2. Tutorium (Klausurvorbereitung) 11.2. 12.2. 5.2.
MehrAbschnitt 3: Mathematische Grundlagen
Abschnitt 3: Mathematische Grundlagen 3. Mathematische Grundlagen 3.1 3.2 Boolsche Algebra 3.3 Induktion und Rekursion Peer Kröger (LMU München) Einführung in die Programmierung WS 16/17 46 / 708 Überblick
Mehr4. Funktionen und Relationen
Bestimmung der Umkehrfunktionen c) bei reellen Funktionen geometrisch durch Spiegelung des Funktionsgraphen an der Winkelhalbierenden y = x. y = x 3 y = x y = x y = (x+1)/2 y = x 1/3 y = 2x 1 Seite 27
MehrOrdinalzahlen. Sei (X, ) eine total geordnete Menge und a X. Dann
Ordinalzahlen Im Rahmen der Ordnungsrelationen wurden bisher die Begriffe Partialordnung und Totalordnung (lineare Ordnung) erwähnt. Ein weiterer wichtiger Ordnungsbegriff ist die Wohlordnung. Wohlgeordnete
MehrEinführung in die Semantik, 2./3. Sitzung Mengen / Relatione
Eigenschaften von Einführung in die Semantik, 2./3. Sitzung Mengen / / Göttingen 2. November 2006 Eigenschaften von Mengenlehre Eigenschaften von Eigenschaften von Das Konzept Menge Eine Menge ist eine
MehrGrundlagen der Programmierung 2. Operationale Semantik
Grundlagen der Programmierung 2 Operationale Semantik Prof. Dr. Manfred Schmidt-Schauÿ Künstliche Intelligenz und Softwaretechnologie 29. April 2009 Semantik von Programmiersprachen Semantik = Bedeutung
MehrTECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK
TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK WS 11/12 Einführung in die Informatik II Übungsblatt 2 Univ.-Prof. Dr. Andrey Rybalchenko, M.Sc. Ruslán Ledesma Garza 8.11.2011 Dieses Blatt behandelt
MehrTeil 4. Mengen und Relationen
Teil 4 Mengen und Relationen KAPITEL 10 Äquivalenzrelationen und Faktormengen 1. Äquivalenzrelationen Wir nennen eine Relation von A nach A auch eine Relation auf A. DEFINITION 10.1. SeiΡeine Relation
MehrFormale Grundlagen. Franz Binder. Institut für Algebra Johannes Kepler Universität Linz
Formale Grundlagen Franz Binder Institut für Algebra Johannes Kepler Universität Linz Vorlesung im 2009S http://www.algebra.uni-linz.ac.at/students/win/fg Inhalt Grundbegriffe Relationenprodukt Äquivalenzrelationen
MehrProgrammierung und Modellierung
Programmierung und Modellierung Martin Wirsing in Zusammenarbeit mit Moritz Hammer SS 2009 2 2. Rekursive Funktionen und Induktion 1. Dateien laden, Kommentare und Fallunterscheidungen 2. Rekursive Funktionen
MehrHausaufgaben. zur Vorlesung. Vollständige Induktion. 1. Beweist folgende Formeln (zu beweisen ist nur die Gleichheit mit dem. i=1 (4 + i)!
WS 015/1 Hausaufgaben zur Vorlesung Vollständige Induktion 1. Beweist folgende Formeln zu beweisen ist nur die Gleichheit mit dem! -Zeichen : a 5 + + 7 + 8 + + 4 + n n 4 + i! nn+9 b 1 + + 9 + + n 1 n 1
MehrEinführung in die Programmierung
Einführung in die Programmierung Teil 2: Mathematische Grundlagen Prof. Dr. Peer Kröger, Florian Richter, Michael Fromm Wintersemester 2018/2019 Übersicht 1. Mengen 2. Relationen und Abbildungen 3. Boolsche
Mehr4. ggt und kgv. Chr.Nelius: Zahlentheorie (SS 2007) 9
Chr.Nelius: Zahlentheorie (SS 2007) 9 4. ggt und kgv (4.1) DEF: Eine ganze Zahl g heißt größter gemeinsamer Teiler (ggt) zweier ganzer Zahlen a und b, wenn gilt: GGT 0 ) g 0 GGT 1 ) g a und g b GGT 2 )
MehrProgrammieren in C. Rekursive Funktionen. Prof. Dr. Nikolaus Wulff
Programmieren in C Rekursive Funktionen Prof. Dr. Nikolaus Wulff Rekursive Funktionen Jede C Funktion besitzt ihren eigenen lokalen Satz an Variablen. Dies bietet ganze neue Möglichkeiten Funktionen zu
Mehr2 Rationale und reelle Zahlen
2 reelle Es gibt Mathematik mit Grenzwert (Analysis) und Mathematik ohne Grenzwert (z.b Algebra). Grenzwerte existieren sicher nur dann, wenn der Zahlbereich vollständig ist, also keine Lücken aufweist
MehrBA-INF 011 Logik und Diskrete Strukturen WS 2013/14 Mögliche Klausuraufgaben Stand vom
Prof. Dr. Norbert Blum Elena Trunz Informatik V BA-INF 011 Logik und Diskrete Strukturen WS 2013/14 Mögliche Klausuraufgaben Stand vom 5.2.2014 Bitte beachten Sie, dass die tatsächlichen Klausuraufgaben
MehrEinführung in die Theoretische Informatik
Einführung in die Theoretische Informatik Johannes Köbler Institut für Informatik Humboldt-Universität zu Berlin WS 2013/14 Relationalstrukturen 59 Definition Sei A eine nichtleere Menge, R ist eine k-stellige
MehrKapitel 6. Programme mit Schleifen. Wir betrachten jetzt eine einfache imperative Programmiersprache IMP. IMP verfügt
Kapitel 6 Programme mit Schleifen Wir betrachten jetzt eine einfache imperative Programmiersprache IMP. IMP verfügt über zuweisbare Variablen, Konditionale und Schleifen, hat aber keine Prozeduren. IMP
MehrVollstä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
MehrKapitel 1. Mengen und Abbildungen. 1.1 Mengen
Kapitel 1 Mengen und Abbildungen 1.1 Mengen Die Objekte der modernen Mathematik sind die Mengen. Obwohl die Logik einen axiomatischen Zugang zur Mengenlehre bietet, wollen wir uns in dieser Vorlesung auf
MehrSemantik 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
MehrInduktion und Rekursion
Mathematische Beweistechniken Vorkurs Informatik SoSe13 10. April 013 Mathematische Beweistechniken Ziel Mathematische Beweistechniken Ziel beweise, dass eine Aussage A(n) für alle n N gilt. Beispiel Für
MehrLogik für Informatiker
Dr. Christian Săcărea Babeş Bolyai Universität, Cluj-Napoca Fachbereich Mathematik und Informatik Wintersemester 2017/2018 Lösungshinweise zur 1. Übung Logik für Informatiker Gruppenübungen: (G 1)Induktion
MehrLogik und Künstliche Intelligenz
Logik und Künstliche Intelligenz Kurze Zusammenfassung (Stand: 14. Januar 2010) Prof. Dr. V. Stahl Copyright 2007 by Volker Stahl. All rights reserved. V. Stahl Logik und Künstliche Intelligenz Zusammenfassung
Mehr4. Funktionen und Relationen
4. Funktionen und Relationen Nikolaus von Oresmes Richard Dedekind (1831-1916) René Descartes 1596-1650 Pierre de Fermat 1607/8-1665 Seite 1 Inhalt der Vorlesung Teil 4: Funktionen und Relationen 4.1 Funktionen:
Mehr