5. Spezifikation und Verifikation von Programmen. Hier: Spezifikation einfacher Programme
|
|
- Manfred Schulze
- vor 8 Jahren
- Abrufe
Transkript
1 5. Spezifikation und Verifikation von Programmen Programmentwicklung: genaue Kenntnis der gewünschten Leistungen offensichtlich unabdingbar In größeren Systemen: Anforderungsdefinition legt fest: - Funktionalität (was soll Programm leisten?) - technische Randbedingungen (Plattform? Antwortzeitverhalten? - organisatorische Vorgaben (wer benutzt System? Vorkenntnisse?) Softwaretechnik Hier: Spezifikation einfacher Programme hs / fub - alp2-5 1 Spezifikation... beschreibt das sichtbare Verhalten eines Programm von außen, im Detail soll hohes Sprachniveau haben - eindeutig, präzise - kein Interpretationsspielraum - keine Redundanz Formale Sprache ermöglicht Korrektheitsbeweise Umgangssprache bei entsprechender Disziplin möglich Beispiel: Suche einen Wert x in dem Feld a - was wird als Wert erwartet? -... und wenn x nicht in a? - wenn x mehrfachl in a enthalten ist? - enthält a mindestens ein Element? - sind alle a[i], 0 <= i <= a.length - 1 definiert? Korrektheit: nur sinnvolle Frage, wenn Spezifikation formal hs / fub - alp
2 Beispiel: Suchproblem oft in prädikatenlogischer Sprache Signatur, hier als Methoden Signatur (Java) Spezifikation.: int search ( int [] a, int x) a Feld der Länge k > 0, a[i] definiert für 0 <= i < k Wert j erfüllt: meist implizit angenommen ( 0 <= j < k : a[j] == x ( i: 0 <= i < j ) a[i]!= x ) mindestens ein Feldelement und überall definiert Programmcode als Spezifikation? ( j = k ( i: 0 <= i < k ) a[i]!= x ) wenn x nicht in a pos :: Eq b => [b] -> b -> Int pos alist x = pos' alist x 0 where pos' [] x s = length alist pos' (y:xs) x s = if (x==y) then s else pos' xs x (s+1) erstes Vorkommen von x hier etwas unübersichtlich, modellierende Spezifikation in funktionaler Sprache aber oft nützlich hs / fub - alp2-5 3 Entwicklung und Vereinfachung des Algorithmus search (int a[int], int x) {int i = 0; while (nicht gefunden und nicht letztes Element) i++; return i; } Spezifikation unübersichtlich - besonders das Prädikat für j: P (j) Q(j) Vereinfachung? Kombination von Bedingungen fehleranfällig verfeinern, Konjunktion entspricht unhandlicher Spezifikation Gesuchtes Element wird immer gefunden! wie das? Vorauss.: Feld hat ein weiteres, zunächst undefiniertes Feldelement: a.length = k+1, a[k] == undef Setze: a[k] = x; search (int a[int], int x) {int i = 0; a[a.length-1]= x; while (a[i]!= x) i++; return i; } a[k] heißt Wächter (sentinel) Beachte: entspricht NICHT ursprünglicher Spezifikation hs / fub - alp
3 Spezifikation imperativer Algorithmen Imperativer Algorithmus: Variablen definieren Zustandsraum Z Algorithmus A: Abbildung des Zustandsraum in sich P = true alle Zustände x,y int erlaubt Z P S { y = y + x; x = -x + y; x = x * x } Q = (y = Y + X x = Y*Y x >= 0 ) Q Z Prädikat P definiert die Voraussetzung für Anwendung von S Q definiert den Effekt der Anweisung(en) S Falls ein Wert berechnet wird, auch den spezifizieren (P,Q) charakterisiert Abbildung S: Z -> Z Wirkung (Effekt) auf Zustandsraum hs / fub - alp2-5 5 Voraussetzungen und Effekte Terminologie: Voraussetzungen P, Vorbedingungen, preconditions Effekte Q, Nachbedingungen, postconditions (P,Q) heißt Zusicherung (assertion) aber wie beweist man das? // {P} S {Q} bedeutet: wenn P vor Ausführung von S gilt und S terminiert, dann gilt Q hat den Wert Sprache für P, Q: prädikatenlogische Formeln, elementare Prädikate ( =, >, < usw. ) x=x für eine Variable x: x hat Wert X x : Wert von Variable x vor Ausführung von S weitere Prädikate, wenn nötig (sortiert(a),...) Beispiel: gegeben Feld a[i], i<= 0 < n und a=a. Dann spezifiziert Q den Effekt eines Sortieralgorithmus: Q : perm(a.a) ( i: 0<=i< n-1 : a[i] <= a[i+1] a ist Permutation von A...und wie spezifiziert man perm?? und jetzt gilt: sortiert(a) hs / fub - alp
4 Starke und schwache Voraussetzungen Z P Wünschenswert: möglichst schwache Voraussetzungen - sollen für viele Zustände zutreffen möglichst starke Effekte Q - Zielzustände sollen möglichst genau charakterisiert werden S(x) R(x) Schwächste Voraussetzung wäre true: jeder Zustand erlaubt Z S R (P, Q) stärker als (P,Q ) genau dann wenn Ordnungsrelation auf Spezifikationen. Partiell! P P Q Q (d.h. P stärker als P und Q stärker als Q ) Schreibweise: (P, Q ) (P, Q ) hs / fub - alp2-5 7 Eigenschaften von Spezifikationen true: false: von jedem Zustand z erfüllt nicht erfüllbar (P, P): ohne Wirkung ( bzgl P!) (false, Q): nicht anwendbar - es gibt keinen Zustand, der die Voraussetzung erfüllt (true, Q): Effekt erfüllt Q ohne Voraussetzung (P, true): was beliebt ist erlaubt: Effekt spielt keine Rolle (P, false): terminiert nicht, da es keine Anweisung und keinen gültigen Zustand gibt, der die Spezifikation erfüllt Jedes Programm erfüllt diese Spezifikation Wie kann man {P} S { Q} zeigen, das heißt Anweisung(en) S erfüllt/en Spezifikation (P,Q)? x++ erfüllt Spezifikation (x>0, x>0) hs / fub - alp
5 Verifikation Formale Semantik der Anweisungen als Voraussetzung Axiomatische Definition der Bedeutung einiger imperativer Anweisungen: {P} ; {P} Axiom der leeren Anweisung: bewirkt nichts {P(e)} x=e {P(x)} Warum nicht anders herum? Beispiel: { prim(7) } x=7; {prim(x)} aber nicht umgekehrt! Also: alles, was für e gilt, gilt nach Ausfürhung der Anweisung für x Zuweisungsaxiom: Wenn vor der Zuweisung P für den Term e gilt, dann nach der Zuweisung P mit e ersetzt durch x. Umgekehrt: P(e) ist die schwächste Vorbedingung, so dass nach der Zuweisung P(x) gilt. hs / fub - alp2-5 9 Weitere Ableitungsregeln {P} S {Q} {P } T {Q } Q P {P} S;T {Q } Ableitungsregel : Prämisse Konsequenz Sequenz: Wenn die Nachbedingung der Anweisung S stärker ist, als die Voraussetzung von T, gilt für S;T die Voraussetzung P und die Nachbedingung Q {P B } S1 {Q} {P B} S2 {Q} {P} if B S1; else S2; {Q} Alternative: Die Auswertung von B darf keine Seiteneffekte haben. Geeignetes Q ist oft: B Q1 B Q2 hs / fub - alp
6 Iterationsregel {Inv B} S {Inv} {Inv} while (B) S; end {Inv B} Auch hier darf die Auswertung von B keine Variablen verändern (keine Seiteneffekte!). while (B) S; end statt Java-Notation: while (B) {S;} Diese Klammern haben eine andere Bedeutung! Abweisende Schleife: problematisch ist die gleichzeitige Forderung nach möglichst starker Nachbedingung und möglichst schwacher Voraussetzung - denn in n+1-ter Iteration ist die Vorbedingung die Nachbedingung der n-ten Iteration. hs / fub - alp Korrektheit Korrektheit eines imperativen Programms S bezüglich Spezifikation (P,Q): - für jede Eingabe, die P erfüllt, erfüllt die Ausgabe von S das Prädikat Q - und: S terminiert Algorithmus terminiert nur dann nicht, wenn Iteration (oder Rekursion) nicht abbricht. Deshalb für jede Schleife Termination prüfen: ganze Zahlen Gesucht Funktion term : Zustandsraum -> Z mit den Eigenschaften: {Inv B} while (B) S; end {term(z) < term(z)} und {Inv B} term(z) > C Streng monoton fallend, nach unten beschränkt hs / fub - alp
7 Verifikation Prinzipielles Vorgehen bei der Verifikation eines Programms S bezüglich Spezifikation (P,Q): - annotiere jede Anweisung S i von S mit geeigneten Voraussetzungen und Nachbedingungen (als Kommentar) {P} S 1 {P 1 } S 2...{P n-1 } S n {Q} - Beweise schrittweise unter Anwendung der Hoare-Axiome, dass aus P Q folgt, wenn S ausgeführt wurde. Vorwärtsbeweis (P -> P1 ->... -> Q) oft unhandlicher als rückschreitende Beweisführung: finde zu vorgegebener Nachbedingung eine möglichst schwache Voraussetzung ( weakest precondition ) Besser als Verifikation eines fertigen Programms: Programmentwicklung unter Beachtung von Voraussetzung / Konsequenz für Anweisungen / Programmstücke. ---> später hs / fub - alp Beispiel: Verifikation der ganzzahligen Division {x>0 y >0} q = 0; r = x; while (r >= y) r = r-y; statt {...}- Block.! q = q+1; end; {x = q*y+r 0 <= r < y } auch x >= 0 möglich? {x>0 y >0} {x>0 y >0 0=0} q = 0; {x>0 y >0 q=0} {x=x x>0 y >0 q=0} r = x; {x=r x>0 y >0 q=0} Invariante Inv: im Gegensatz zu anderen Formeln nicht herleitbar {x=r x > 0 y > 0 q=0} {x=q*y+r r >= 0} while (r >= y) {x=q*y+r r >= 0 r >= y {x=(q+1)*y + r-y r-y>=0} r = r-y; {x=(q+1)*y + r r>=0} q = q+1; {x=q*y + r r>=0} end; {x=q*y + r r>=0 r < y} {x= q*y+r 0 <= r < y } brauchen wir Voraussetzung y>0? hs / fub - alp
8 Termination der ganzzahligen Division Terminationsfunktion: t(z) = r Hier wird y>0 benötigt Zeige: r streng monoton fallend und beschränkt Erweitere Invariante : Inv = Inv y > 0 {x=q*y+r r >= 0 y > 0} B: r >= 0 Dann gilt: { Inv B r-y < R } S {Inv r < R} R: vorheriger Wert von r Inv B => r >= y y > 0 => r > 0 hs / fub - alp Schwächste Vorbedingung Nützlich bei rückschreitender Verifikation (oft einfacher als vorwärtsgerichtete Verifikation, weil zielgerichtet) : Gegeben die Nachbedingung (Konsequenz) Q, gesucht die schwächste Voraussetzung wp = weakest precondition P = wp (S, Q) so dass S Zustand, der P erfüllt, in Zustand überführt, der Q erfüllt. Semantikdefinition äquivalent zu Ableitungsregeln: wp (;, Q) = Q leere Anweisung wp (x=e;, Q(x)) = Q(e) Zuweisung wp(s1;s2;, Q) = wp(s1;, wp(s2;, Q)) Sequenz wp( if (B) S1; else S2;, Q) = (B => wp ( S1;,Q)) B => wp ( S1;,Q) ) Alternative hs / fub - alp
9 Iterative Programme Schleifen : rückschreitende Verifikation wenig geeignet stattdessen geeignete Invariante finden wie findet man Invarianten? true ist immer eine Invariante, aber selten hilfreich Konstruktion von Schleifen 1. Nachbedingung Q festlegen ( was ist das Ziel? ) 2. Invariante INV finden 3. Voraussetzung P festlegen und initialisieren, damit INV gilt 4. Bedingung B festlegen 5. Invariante beweisen: INV gilt auch nach Schleifendurchlauf 6. Zeigen: INV B => Q Wenn das nicht gelingt, bessere Invariante suchen, weiter bei 2. hs / fub - alp Wie findet man Invarianten? Heuristiken... A. Konjunktiven Term entfernen Q = Q1 Q2 Beispiel: Suche von Wert x in Feld a, a.length = n, x wird gefunden. Nachbedingung Q: 0 <= i < n ( j: 0<=j< i : a[j]!= x) a[i]=x naheliegend: a[i] = x entfernen, Rest ist Invariante Damit auch B gefunden: Nach Verlassen soll INV a[i] = x gelten, also B = a[i]!= x B. Konstante durch Variable ersetzen Beispiel: Summe der Feldelemente von a mit a.length = n Nachbedingung: Q s = Σ a[i] : 0 <= i < n ersetze Konstante n durch Variable j : INV s = Σ a[i] : 0 <= i < j Damit INV B => Q : B = j >= n oder B = j < n auch die Konstante 0 hätte durch Variable ersetzt werden können! hs / fub - alp
10 ... wie findet man Invarianten? C. Variablenbereich festlegen Beispiel: lineare Suche in Feld a, a.length = n, gesuchter Wert kommt vor Eine Möglichkeit (s.o., i und j sind Variablen im Programm) INV; 0 <= i < n ( j: 0<=j< i : a[j]!= x) Alternative: sei k der gesuchte Index a[k]=x beachte: k ist ein Wert, keine Variable. Der Wert von k soll nach Durchlaufen der Schleife in der Variablen j stehen. für k gilt also: 0 <= k ( j: 0<=j < k : a[j]!= x) a[k] = x Damit: j nimmt die Werte 0 <= j <= k an Das ist die Invariante! Schranke: k -j Invariante herstellen: j= 0; {0 <= j <=k a[j]!=x} while ( a[j]!= x) j++; {0 <= j <=k a[j]=x} Schranke fällt streng monoton,... nachprüfen. hs / fub - alp wie findet man Invarianten? D. Teile und herrsche / Rekursive Invarianten Beispiel: Quersumme von N qs 0 = 0 qs n = qs (n div 10) + n mod 10 Nachbedingung s = qs(n) n = N INV : qs(n) = s + qs(n) 0 <= n <= N while ( n > 0 ) { s=s+n mod 10; n = n div 10;} Java-Blockklammern Beweis der Invariante Eigenschaft der Quersumme {qs(n) = s + n mod 10 + qs (n div 10) 0 <= n div 10 <= N } => INV s = s + n mod 10; {qs(n) = s + qs(n div 10) 0 <= n div 10 <= N } Zuweisungsaxiom n= n div 10; {qs(n) = s + qs(n) 0 <= n <= N } INV hs / fub - alp
11 Schrittweise Programmentwicklung Nutzen der Verifikationsmethodik: Zur Konstruktion von Programmen Dokumentation des Codes und sich von der Richtigkeit überzeugen Systematisches Durchdenken der Bedingungen und Formulieren in anderer Sprache als Programmiersprache hilft Fehler erkennen. (aber nicht alle...was ist z.b. mit Rundungsfehlern der Gleitkommaarithmetik? Beispiel für systematische Programmentwicklung Anforderungsdefinition: Gegeben eine Liste von Tagekursen einer Aktie für n0 Tage. Gesucht: der maximale Spekulationsgewinn, das ist die größte Differenz von zwei Aktienkursen, wobei der Verkaufstag größer als der Tag des Kaufs ist. Spezifikation: (P,Q) mit mindestens 2 Tage P : a.length = n0, 0 <= i < n0 a[i] = A[i] (alle Werte definiert) n0 > 1 // a ist Feld der Größe n0) Q : g = max( a[j] - a[i]) 0 <= i < j < n0 0 <= i < j < n0 hs / fub - alp Fallstudie Programmentwicklung Invariante bestimmen: Methode B: Konstante durch Variable ersetzen, n0 durch Variable n 2 <= n <= n INV : g = max a[j] -a[i], 0 <= i < j < n 2 <= n <= n0 also g enthält immer den maximalen Kursgewinn der ersten n Tage Bedingung : folgt aus INV n = n0 => Q, also n!= n0 Invariante herstellen: g = a[1] -a[0] Erste Teillösung: {n0 >= 2} g = a[1] - a[0]; n = 2; {INV] while (n!=n0) // {INV n! n0} {bestimme max der Differenz für 0 <= i < j <= n und erhöhe n um 1} {INV} hs / fub - alp
12 ... Fallstudie Programmentwicklung Schleifenrumpf konstruieren: Zerlegen in {Inv n!= n0} berücksichtige n {INV n+1 } n = n+1; {INV} // Invariante, bei der n durch n+1 ersetzt Betrachte INV n+1 : g = max a[j] -a[i], 0 <= i < j < n+1 2 <= n+1 <= n also: g = max (a[j] -a[i]), 0 <= i < j < n+1 = max2 (max (a[j] - a[i]), 0 <= i < j < n, max ( a[n] - a[i], 0 <= i < n) ) = max2 ( max..., a[n] - min a[i], 0<= i < n) ) Verschiedene max-funktionen! Minimum der a [i] merken, 0 <= i <n und zwar in Variable mina Damit : g = max (g, a[n] - mina) --> weitere Invariante: INV = mina = min a[i], 0 <= i < n Erweiterte Invariante: INV ges = INV INV hs / fub - alp Fallstudie Herstellen von INV : mina = min (a[0], a[1]) Herstellen von INV beim Übergang n -> n+1: mina = min a[i], 0 <= i < n+1 also: mina = min (mina, a[n]) Teile zusammenfügen: { n >= 2...} n = 2; mina = a[1] - a[0]; g = a[1] - a[0]; {g = max ( a[j] - a[i] 0 <= i < j < n 2 < n < n0 mina = min a [i], 0 <= i < n } while ( n!=n0) // {INV n!= n0} { g = max ( g, a[n] - mina); mina = min (mina, a[n]); Beachte: lineares Programm n = n+1; {...} Block, keine Zusicherung } {Q : g = max a[j] - a[i], 0 <= i < j < n0 } hs / fub - alp
13 Zusammenfassung Spezifikation und Verifikation Semantikbeschreibung dient u.a zur Definition einer Programmiersprache (hier: axiomatisch) Grundlage zur Implementierung von Übersetzer / Interpretierer Programmbeschreibung was tut das Programm? Beschreibung mit Hilfe der semantischen Sprachdefinition entsprechend dem Programmaufbau (als syntaktisch korrekt vorausgesetzt) Programmspezifikation was soll das Programm tun? Präzisierung der Anforderungsdefinition Programmverifikation tut das Programm, was es soll? Nachweis der Verträglichkeit von Spezifikation und Programm(beschreibung) hs / fub - alp Verifizieren oder Testen? Programmfehler: Programm tut nicht das, was es soll oder tut etwas, was es nicht soll Es gibt praktische keine (sehr großen) fehlerfreien Programme häufig völlig unabhängige Entwicklung (Betriebssystem, Anwendungsprogramm ), Probleme im Zusammenwirken der Teile! Für manche Programme ist formale Verifikation ein Qualitätsmerkmal (Zertifizierung von Programmen nach formaler Verifikation, Bsp.: Steuerprogramme in Verkehrsleitsystemen) Begleitende Verifikation vermindert Fehler und unterstützt die Konstruktion von Algorithmen. Ohne Spezifkation keine Verifikation meist aufwendig. Verifikationsprogramme wünschenswert Tests beweisen (ggf.) die Anwesenheit von Fehlern, nie die Abwesenheit (wenn unendlich viele mögliche Eingaben) hs / fub - alp
14 Anmerkungen zum Testen Klassifikation: Schnittstellentest (blackbox-test) Ein- / Ausgaberlation auf Konformität zur Spezifikation prüfen Programmabhängiger Test (whitebox-test) Überprüfung möglichst großer Teile aller Pfade durch das Programm Möglichst große Überdeckung (des Programmcodes) wünschenswert Systematische Auswahl von Testfällen: Schnittstellentest Hauptproblem: kombinatorische Explosion der Testfälle, deshalb Vollständigkeit meist illusorisch. pro spezifizierter Bedingung mindestens ein Testfall Randbereiche (ggf. von beiden Seiten) prüfen, Maximal-, Minmalwerte Genügende Anzahl von Normallfällen jeweils gegen Sollwerte vergleichen! Überdeckungstest erwünscht, aber kaum machbar: Wegüberdeckung: jeden Weg einmal durchlaufen Abschwächung: jede Anweisung einmal durchlaufen (Anweisungsüberdeckung) stärker : zweigüberdeckend: jeden Zweig mindestens einmal durchlaufen hs / fub - alp
Problem: Gegeben Spezifikation (P,Q) und Implementierung S Gesucht formaler (automatisierbarer?) Beweis, dass S (P,Q) erfüllt.
Formale Verifikation von Algorithmen 1.3 Verifikation Problem: Gegeben Spezifikation (P,Q) und Implementierung S Gesucht formaler (automatisierbarer?) Beweis, dass S (P,Q) erfüllt. Bisher nicht möglich
MehrPrimzahlen und RSA-Verschlüsselung
Primzahlen und RSA-Verschlüsselung Michael Fütterer und Jonathan Zachhuber 1 Einiges zu Primzahlen Ein paar Definitionen: Wir bezeichnen mit Z die Menge der positiven und negativen ganzen Zahlen, also
MehrGrundlagen der Programmierung (Vorlesung 14)
Grundlagen der Programmierung (Vorlesung 14) Ralf Möller, FH-Wedel Vorige Vorlesung Verifikation von Anweisungen und Anweisungsfolgen Schleifen Inhalt dieser Vorlesung Funktionen und Prozeduren Lernziele
Mehr7 Rechnen mit Polynomen
7 Rechnen mit Polynomen Zu Polynomfunktionen Satz. Zwei Polynomfunktionen und f : R R, x a n x n + a n 1 x n 1 + a 1 x + a 0 g : R R, x b n x n + b n 1 x n 1 + b 1 x + b 0 sind genau dann gleich, wenn
MehrLineargleichungssysteme: Additions-/ Subtraktionsverfahren
Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als
MehrErwin Grüner 09.02.2006
FB Psychologie Uni Marburg 09.02.2006 Themenübersicht Folgende Befehle stehen in R zur Verfügung: {}: Anweisungsblock if: Bedingte Anweisung switch: Fallunterscheidung repeat-schleife while-schleife for-schleife
MehrEinfache Ausdrücke Datentypen Rekursive funktionale Sprache Franz Wotawa Institut für Softwaretechnologie wotawa@ist.tugraz.at
Inhalt SWP Funktionale Programme (2. Teil) Einfache Ausdrücke Datentypen Rekursive funktionale Sprache Franz Wotawa Institut für Softwaretechnologie wotawa@ist.tugraz.at Interpreter für funktionale Sprache
MehrInformationsblatt Induktionsbeweis
Sommer 015 Informationsblatt Induktionsbeweis 31. März 015 Motivation Die vollständige Induktion ist ein wichtiges Beweisverfahren in der Informatik. Sie wird häufig dazu gebraucht, um mathematische Formeln
MehrDas Briefträgerproblem
Das Briefträgerproblem Paul Tabatabai 30. Dezember 2011 Inhaltsverzeichnis 1 Problemstellung und Modellierung 2 1.1 Problem................................ 2 1.2 Modellierung.............................
MehrJava-Programmierung mit NetBeans
Java-Programmierung mit NetBeans Steuerstrukturen Dr. Henry Herper Otto-von-Guericke-Universität Magdeburg - WS 2012/13 Steuerstrukturen Steuerstrukturen Verzweigungen Alternativen abweisende nichtabweisende
Mehr50. Mathematik-Olympiade 2. Stufe (Regionalrunde) Klasse 11 13. 501322 Lösung 10 Punkte
50. Mathematik-Olympiade. Stufe (Regionalrunde) Klasse 3 Lösungen c 00 Aufgabenausschuss des Mathematik-Olympiaden e.v. www.mathematik-olympiaden.de. Alle Rechte vorbehalten. 503 Lösung 0 Punkte Es seien
Mehr6.2 Scan-Konvertierung (Scan Conversion)
6.2 Scan-Konvertierung (Scan Conversion) Scan-Konvertierung ist die Rasterung von einfachen Objekten (Geraden, Kreisen, Kurven). Als Ausgabemedium dient meist der Bildschirm, der aus einem Pixelraster
MehrOECD Programme for International Student Assessment PISA 2000. Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland
OECD Programme for International Student Assessment Deutschland PISA 2000 Lösungen der Beispielaufgaben aus dem Mathematiktest Beispielaufgaben PISA-Hauptstudie 2000 Seite 3 UNIT ÄPFEL Beispielaufgaben
Mehr1 Mathematische Grundlagen
Mathematische Grundlagen - 1-1 Mathematische Grundlagen Der Begriff der Menge ist einer der grundlegenden Begriffe in der Mathematik. Mengen dienen dazu, Dinge oder Objekte zu einer Einheit zusammenzufassen.
MehrIm Jahr t = 0 hat eine Stadt 10.000 Einwohner. Nach 15 Jahren hat sich die Einwohnerzahl verdoppelt. z(t) = at + b
Aufgabe 1: Im Jahr t = 0 hat eine Stadt 10.000 Einwohner. Nach 15 Jahren hat sich die Einwohnerzahl verdoppelt. (a) Nehmen Sie lineares Wachstum gemäß z(t) = at + b an, wobei z die Einwohnerzahl ist und
MehrGrundlagen der Theoretischen Informatik, SoSe 2008
1. Aufgabenblatt zur Vorlesung Grundlagen der Theoretischen Informatik, SoSe 2008 (Dr. Frank Hoffmann) Lösung von Manuel Jain und Benjamin Bortfeldt Aufgabe 2 Zustandsdiagramme (6 Punkte, wird korrigiert)
Mehr1 Vom Problem zum Programm
Hintergrundinformationen zur Vorlesung GRUNDLAGEN DER INFORMATIK I Studiengang Elektrotechnik WS 02/03 AG Betriebssysteme FB3 Kirsten Berkenkötter 1 Vom Problem zum Programm Aufgabenstellung analysieren
MehrProbleme beim Arbeiten mit Variablen, Termen und Gleichungen
Probleme beim Arbeiten mit Variablen, Termen und Gleichungen Tage des Unterrichts in Mathematik, Naturwissenschaften und Technik Rostock 2010 Prof. Dr. Hans-Dieter Sill, Universität Rostock, http://www.math.uni-rostock.de/~sill/
MehrBeweisbar sichere Verschlüsselung
Beweisbar sichere Verschlüsselung ITS-Wahlpflichtvorlesung Dr. Bodo Möller Ruhr-Universität Bochum Horst-Görtz-Institut für IT-Sicherheit Lehrstuhl für Kommunikationssicherheit bmoeller@crypto.rub.de 6
MehrGrundbegriffe der Informatik
Grundbegriffe der Informatik Einheit 15: Reguläre Ausdrücke und rechtslineare Grammatiken Thomas Worsch Universität Karlsruhe, Fakultät für Informatik Wintersemester 2008/2009 1/25 Was kann man mit endlichen
MehrWhitebox-Tests: Allgemeines
-Tests: Allgemeines Andere Bezeichnungen Logic driven, Strukturelles Der Tester entwickelt Testfälle aus einer Betrachtung der Ablauflogik des Programms unter Berücksichtigung der Spezifikation Intuitiv
MehrAlgorithmentheorie. 13 - Maximale Flüsse
Algorithmentheorie 3 - Maximale Flüsse Prof. Dr. S. Albers Prof. Dr. Th. Ottmann . Maximale Flüsse in Netzwerken 5 3 4 7 s 0 5 9 5 9 4 3 4 5 0 3 5 5 t 8 8 Netzwerke und Flüsse N = (V,E,c) gerichtetes Netzwerk
MehrWürfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.
040304 Übung 9a Analysis, Abschnitt 4, Folie 8 Die Wahrscheinlichkeit, dass bei n - maliger Durchführung eines Zufallexperiments ein Ereignis A ( mit Wahrscheinlichkeit p p ( A ) ) für eine beliebige Anzahl
MehrEinführung in die Programmierung
: Inhalt Einführung in die Programmierung Wintersemester 2008/09 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund - mit / ohne Parameter - mit / ohne Rückgabewerte
MehrSemantik von Formeln und Sequenzen
Semantik von Formeln und Sequenzen 33 Grundidee der Verwendung von Logik im Software Entwurf Syntax: Menge von Formeln = Axiome Ax K ist beweisbar Formel ϕ beschreiben Korrektkeit Vollständigkeit beschreibt
MehrEinführung in die Algebra
Prof. Dr. H. Brenner Osnabrück SS 2009 Einführung in die Algebra Vorlesung 13 Einheiten Definition 13.1. Ein Element u in einem Ring R heißt Einheit, wenn es ein Element v R gibt mit uv = vu = 1. DasElementv
MehrVBA-Programmierung: Zusammenfassung
VBA-Programmierung: Zusammenfassung Programmiersprachen (Definition, Einordnung VBA) Softwareentwicklung-Phasen: 1. Spezifikation 2. Entwurf 3. Implementierung Datentypen (einfach, zusammengesetzt) Programmablaufsteuerung
MehrDiana Lange. Generative Gestaltung Operatoren
Diana Lange Generative Gestaltung Operatoren Begriffserklärung Verknüpfungsvorschrift im Rahmen logischer Kalküle. Quelle: google Operatoren sind Zeichen, die mit einer bestimmten Bedeutung versehen sind.
MehrProgrammierkurs Java
Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE16-Rekursion (Stand 09.12.2011) Aufgabe 1: Implementieren Sie in Java ein Programm, das solange einzelne Zeichen vom Terminal einliest, bis ein #-Zeichen
MehrÜbung Theoretische Grundlagen
Übung Theoretische Grundlagen Berechenbarkeit/Entscheidbarkeit Nico Döttling November 26, 2009 INSTITUT FÜR KRYPTOGRAPHIE UND SICHERHEIT KIT University of the State of Baden-Wuerttemberg and National Laboratory
MehrMathematischer Vorbereitungskurs für Ökonomen
Mathematischer Vorbereitungskurs für Ökonomen Dr. Thomas Zehrt Wirtschaftswissenschaftliches Zentrum Universität Basel Gleichungen Inhalt: 1. Grundlegendes 2. Lineare Gleichungen 3. Gleichungen mit Brüchen
MehrSEP 114. Design by Contract
Design by Contract SEP 114 Design by Contract Teile das zu entwickelnde Programm in kleine Einheiten (Klassen, Methoden), die unabhängig voneinander entwickelt und überprüft werden können. Einheiten mit
Mehr1 topologisches Sortieren
Wolfgang Hönig / Andreas Ecke WS 09/0 topologisches Sortieren. Überblick. Solange noch Knoten vorhanden: a) Suche Knoten v, zu dem keine Kante führt (Falls nicht vorhanden keine topologische Sortierung
MehrÜbersicht Programmablaufsteuerung
Übersicht Programmablaufsteuerung Konditionale Verzweigung: if - else switch-anweisung Schleifenkonstrukte: while, do - while for Schleife Sprung-Anweisungen: break, continue, goto, return Anweisungen
Mehr2. Vorlesung. Slide 40
2. Vorlesung Slide 40 Knobelaufgabe Was tut dieses Programm? Informell Formal Wie stellt man dies sicher? knobel(a,b) { Wenn a = 0 dann return b sonst { solange b 0 wenn a > b dann { a := a - b sonst b
MehrEinführung in. Logische Schaltungen
Einführung in Logische Schaltungen 1/7 Inhaltsverzeichnis 1. Einführung 1. Was sind logische Schaltungen 2. Grundlegende Elemente 3. Weitere Elemente 4. Beispiel einer logischen Schaltung 2. Notation von
MehrBevor lineare Gleichungen gelöst werden, ein paar wichtige Begriffe, die im Zusammenhang von linearen Gleichungen oft auftauchen.
R. Brinkmann http://brinkmann-du.de Seite 1 13.0.010 Lineare Gleichungen Werden zwei Terme durch ein Gleichheitszeichen miteinander verbunden, so entsteht eine Gleichung. Enthält die Gleichung die Variable
MehrGrundlagen Theoretischer Informatik I SoSe 2011 in Trier. Henning Fernau Universität Trier fernau@uni-trier.de
Grundlagen Theoretischer Informatik I SoSe 2011 in Trier Henning Fernau Universität Trier fernau@uni-trier.de 1 Grundlagen Theoretischer Informatik I Gesamtübersicht Organisatorisches; Einführung Logik
MehrDie Gleichung A x = a hat für A 0 die eindeutig bestimmte Lösung. Für A=0 und a 0 existiert keine Lösung.
Lineare Gleichungen mit einer Unbekannten Die Grundform der linearen Gleichung mit einer Unbekannten x lautet A x = a Dabei sind A, a reelle Zahlen. Die Gleichung lösen heißt, alle reellen Zahlen anzugeben,
MehrAGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom 21.10.2013b
AGROPLUS Buchhaltung Daten-Server und Sicherheitskopie Version vom 21.10.2013b 3a) Der Daten-Server Modus und der Tresor Der Daten-Server ist eine Betriebsart welche dem Nutzer eine grosse Flexibilität
MehrGrundlagen der höheren Mathematik Einige Hinweise zum Lösen von Gleichungen
Grundlagen der höheren Mathematik Einige Hinweise zum Lösen von Gleichungen 1. Quadratische Gleichungen Quadratische Gleichungen lassen sich immer auf die sog. normierte Form x 2 + px + = 0 bringen, in
MehrEinfache Varianzanalyse für abhängige
Einfache Varianzanalyse für abhängige Stichproben Wie beim t-test gibt es auch bei der VA eine Alternative für abhängige Stichproben. Anmerkung: Was man unter abhängigen Stichproben versteht und wie diese
MehrAbituraufgabe zur Stochastik, Hessen 2009, Grundkurs (TR)
Abituraufgabe zur Stochastik, Hessen 2009, Grundkurs (TR) Eine Firma stellt USB-Sticks her. Sie werden in der Fabrik ungeprüft in Packungen zu je 20 Stück verpackt und an Händler ausgeliefert. 1 Ein Händler
MehrCAQ Software für Ihr Qualitätsmanagement. Ablauf für die Erfassung der Fehler in der Fertigung
Ablauf für die Erfassung der Fehler in der Fertigung Voraussetzung ist die Zuordnung der Erzeugnisse zu Produktgruppen. Wie das funktioniert ist der Anleitung Neue Produktgruppe anlegen und mit Erzeugnissen
MehrGrundlagen der Künstlichen Intelligenz
Grundlagen der Künstlichen Intelligenz 27. Aussagenlogik: Logisches Schliessen und Resolution Malte Helmert Universität Basel 28. April 2014 Aussagenlogik: Überblick Kapitelüberblick Aussagenlogik: 26.
MehrSysteme 1. Kapitel 6. Nebenläufigkeit und wechselseitiger Ausschluss
Systeme 1 Kapitel 6 Nebenläufigkeit und wechselseitiger Ausschluss Threads Die Adressräume verschiedener Prozesse sind getrennt und geschützt gegen den Zugriff anderer Prozesse. Threads sind leichtgewichtige
Mehr8. Quadratische Reste. Reziprozitätsgesetz
O Forster: Prizahlen 8 Quadratische Reste Rezirozitätsgesetz 81 Definition Sei eine natürliche Zahl 2 Eine ganze Zahl a heißt uadratischer Rest odulo (Abkürzung QR, falls die Kongruenz x 2 a od eine Lösung
MehrAbschnitt: Algorithmendesign und Laufzeitanalyse
Abschnitt: Algorithmendesign und Laufzeitanalyse Definition Divide-and-Conquer Paradigma Divide-and-Conquer Algorithmen verwenden die Strategien 1 Divide: Teile das Problem rekursiv in Subproblem gleicher
MehrProgrammieren I. Kapitel 7. Sortieren und Suchen
Programmieren I Kapitel 7. Sortieren und Suchen Kapitel 7: Sortieren und Suchen Ziel: Varianten der häufigsten Anwendung kennenlernen Ordnung Suchen lineares Suchen Binärsuche oder Bisektionssuche Sortieren
MehrRepetitionsaufgaben: Lineare Gleichungen
Kantonale Fachschaft Mathematik Repetitionsaufgaben: Lineare Gleichungen Zusammengestellt von Hannes Ernst, KSR Lernziele: - Lineare Gleichungen von Hand auflösen können. - Lineare Gleichungen mit Parametern
MehrKapiteltests zum Leitprogramm Binäre Suchbäume
Kapiteltests zum Leitprogramm Binäre Suchbäume Björn Steffen Timur Erdag überarbeitet von Christina Class Binäre Suchbäume Kapiteltests für das ETH-Leitprogramm Adressaten und Institutionen Das Leitprogramm
MehrJava Kurs für Anfänger Einheit 5 Methoden
Java Kurs für Anfänger Einheit 5 Methoden Ludwig-Maximilians-Universität München (Institut für Informatik: Programmierung und Softwaretechnik von Prof.Wirsing) 22. Juni 2009 Inhaltsverzeichnis Methoden
MehrAnlegen eines Speicherbereichs mit DB, DW eleganter in Kombination mit EQU, Timer-Interrupt
Anlegen eines Speicherbereichs mit DB, DW eleganter in Kombination mit EQU, Timer-Interrupt AMPEL-Steuerung(en) Die Beschreibung und Programmierung der Ampel (vor allem Ampel_5) können sehr kompliziert
MehrMatrizennorm. Definition 1. Sei A M r,s (R). Dann heißt A := sup die Matrixnorm. Wir wissen zunächst nicht, ob A eine reelle Zahl ist.
Matrizennorm Es seien r,s N Mit M r,s (R bezeichnen wir die Menge der reellen r s- Matrizen (also der linearen Abbildungen R s R r, und setze M s (R := M s,s (R (also die Menge der linearen Abbildungen
Mehr4.9 Deterministische Kellerautomaten Wir haben bereits definiert: Ein PDA heißt deterministisch (DPDA), falls
4.9 Deterministische Kellerautomaten Wir haben bereits definiert: Ein PDA heißt deterministisch (DPDA), falls δ(q, a, Z) + δ(q, ɛ, Z) 1 (q, a, Z) Q Σ. Die von einem DPDA, der mit leerem Keller akzeptiert,
MehrEinführung in die Programmierung
Technische Universität München WS 2003/2004 Institut für Informatik Prof. Dr. Christoph Zenger Testklausur Einführung in die Programmierung Probeklausur Java (Lösungsvorschlag) 1 Die Klasse ArrayList In
MehrMediator 9 - Lernprogramm
Mediator 9 - Lernprogramm Ein Lernprogramm mit Mediator erstellen Mediator 9 bietet viele Möglichkeiten, CBT-Module (Computer Based Training = Computerunterstütztes Lernen) zu erstellen, z. B. Drag & Drop
Mehra n + 2 1 auf Konvergenz. Berechnen der ersten paar Folgenglieder liefert:
Beispiel: Wir untersuchen die rekursiv definierte Folge a 0 + auf Konvergenz. Berechnen der ersten paar Folgenglieder liefert: ( ) (,, 7, 5,...) Wir können also vermuten, dass die Folge monoton fallend
MehrClient-Server-Beziehungen
Client-Server-Beziehungen Server bietet Dienste an, Client nutzt Dienste Objekt ist gleichzeitig Client und Server Vertrag zwischen Client und Server: Client erfüllt Vorbedingungen eines Dienstes Server
Mehr4. AUSSAGENLOGIK: SYNTAX. Der Unterschied zwischen Objektsprache und Metasprache lässt sich folgendermaßen charakterisieren:
4. AUSSAGENLOGIK: SYNTAX 4.1 Objektsprache und Metasprache 4.2 Gebrauch und Erwähnung 4.3 Metavariablen: Verallgemeinerndes Sprechen über Ausdrücke von AL 4.4 Die Sprache der Aussagenlogik 4.5 Terminologie
Mehr1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage:
Zählen und Zahlbereiche Übungsblatt 1 1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage: Für alle m, n N gilt m + n = n + m. in den Satz umschreiben:
MehrMusterlösungen zur Linearen Algebra II Blatt 5
Musterlösungen zur Linearen Algebra II Blatt 5 Aufgabe. Man betrachte die Matrix A := über dem Körper R und über dem Körper F und bestimme jeweils die Jordan- Normalform. Beweis. Das charakteristische
MehrWS 2008/09. Diskrete Strukturen
WS 2008/09 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/ws0809
MehrLineare Funktionen. 1 Proportionale Funktionen 3 1.1 Definition... 3 1.2 Eigenschaften... 3. 2 Steigungsdreieck 3
Lineare Funktionen Inhaltsverzeichnis 1 Proportionale Funktionen 3 1.1 Definition............................... 3 1.2 Eigenschaften............................. 3 2 Steigungsdreieck 3 3 Lineare Funktionen
MehrProgrammieren in C. Felder, Schleifen und Fließkommaarithmetik. Prof. Dr. Nikolaus Wulff
Programmieren in C Felder, Schleifen und Fließkommaarithmetik Prof. Dr. Nikolaus Wulff Addition von Zahlen 1 2 3 4 5 #include int main() { int x,y,z,sum; x = 1; y = 2; z = 4; sum = x + y + z;
MehrFunktionale Programmierung. Funktionale Programmierung: Vorlesungsüberblick. Eigenschaften rein funktionaler Programmierung
Funktionale Programmierung 1 Funktionale Programmierung: Vorlesungsüberblick 1. Funktionale Programmierung Prinzipien funktionaler Programmierung Funktionale Programmierung in prozeduralen Sprachen Rekursive
MehrInhalt. 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 Darstellung von Algorithmen Aus den Einführungsbeispielen und
MehrFormale Systeme, WS 2012/2013 Lösungen zu Übungsblatt 4
Karlsruher Institut für Technologie Institut für Theoretische Informatik Prof. Dr. Peter H. Schmitt David Farago, Christoph Scheben, Mattias Ulbrich Formale Systeme, WS 2012/2013 Lösungen zu Übungsblatt
MehrPROSEMINAR ONLINE ALGORITHMEN
PROSEMINAR ONLINE ALGORITHMEN im Wintersemester 2000/2001 Prof. Dr. Rolf Klein, Dr. Elmar Langetepe, Dipl. Inform. Thomas Kamphans (Betreuer) Vortrag vom 15.11.2000 von Jan Schmitt Thema : Finden eines
MehrÜbersicht. Datenstrukturen und Algorithmen Vorlesung 5: Rekursionsgleichungen (K4) Übersicht. Binäre Suche. Joost-Pieter Katoen. 20.
Übersicht Datenstrukturen und Algorithmen Vorlesung 5: (K4) Joost-Pieter Katoen Lehrstuhl für Informatik 2 Software Modeling and Verification Group http://www-i2.informatik.rwth-aachen.de/i2/dsal12/ 20.
MehrErstellen einer Collage. Zuerst ein leeres Dokument erzeugen, auf dem alle anderen Bilder zusammengefügt werden sollen (über [Datei] > [Neu])
3.7 Erstellen einer Collage Zuerst ein leeres Dokument erzeugen, auf dem alle anderen Bilder zusammengefügt werden sollen (über [Datei] > [Neu]) Dann Größe des Dokuments festlegen beispielsweise A4 (weitere
MehrErweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen:
VBA Programmierung mit Excel Schleifen 1/6 Erweiterung der Aufgabe Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: Es müssen also 11 (B L) x 35 = 385 Zellen berücksichtigt
MehrCharakteristikum des Gutachtenstils: Es wird mit einer Frage begonnen, sodann werden die Voraussetzungen Schritt für Schritt aufgezeigt und erörtert.
Der Gutachtenstil: Charakteristikum des Gutachtenstils: Es wird mit einer Frage begonnen, sodann werden die Voraussetzungen Schritt für Schritt aufgezeigt und erörtert. Das Ergebnis steht am Schluß. Charakteristikum
MehrSatz. Für jede Herbrand-Struktur A für F und alle t D(F ) gilt offensichtlich
Herbrand-Strukturen und Herbrand-Modelle Sei F eine Aussage in Skolemform. Dann heißt jede zu F passende Struktur A =(U A, I A )eineherbrand-struktur für F, falls folgendes gilt: 1 U A = D(F ), 2 für jedes
MehrGleichungen und Ungleichungen
Gleichungen Ungleichungen. Lineare Gleichungen Sei die Gleichung ax = b gegeben, wobei x die Unbekannte ist a, b reelle Zahlen sind. Diese Gleichung hat als Lösung die einzige reelle Zahl x = b, falls
MehrRepetitionsaufgaben Wurzelgleichungen
Repetitionsaufgaben Wurzelgleichungen Inhaltsverzeichnis A) Vorbemerkungen B) Lernziele C) Theorie mit Aufgaben D) Aufgaben mit Musterlösungen 4 A) Vorbemerkungen Bitte beachten Sie: Bei Wurzelgleichungen
MehrGrundlagen der Videotechnik. Redundanz
Grundlagen der Videotechnik Redundanz Redundanz beruht auf: - statistischen Abhängigkeiten im Signal, - Information, die vorher schon gesendet wurde - generell eine Art Gedächtnis im Signal Beispiel: Ein
MehrInformatik I WS 07/08 Tutorium 24
Info I Tutorium 24 Informatik I WS 07/08 Tutorium 24 3.2.07 astian Molkenthin E-Mail: infotut@sunshine2k.de Web: http://infotut.sunshine2k.de Organisatorisches / Review is zum 2.2 müssen alle Praxisaufgaben
MehrWie löst man Mathematikaufgaben?
Wie löst man Mathematikaufgaben? Manfred Dobrowolski Universität Würzburg Wie löst man Mathematikaufgaben? 1 Das Schubfachprinzip 2 Das Invarianzprinzip 3 Das Extremalprinzip Das Schubfachprinzip Verteilt
MehrZeichen bei Zahlen entschlüsseln
Zeichen bei Zahlen entschlüsseln In diesem Kapitel... Verwendung des Zahlenstrahls Absolut richtige Bestimmung von absoluten Werten Operationen bei Zahlen mit Vorzeichen: Addieren, Subtrahieren, Multiplizieren
MehrAbiturprüfung Mathematik 2008 (Baden-Württemberg) Berufliche Gymnasien ohne TG Analysis, Aufgabe 1
Abiturprüfung Mathematik (Baden-Württemberg) Berufliche Gymnasien ohne TG Analysis, Aufgabe Für jedes t f t () + t R ist die Funktion f t gegeben durch = mit R. Das Schaubild von f t heißt K t.. (6 Punkte)
MehrLernmaterial für die Fernuni Hagen effizient und prüfungsnah
Lernmaterial für die Fernuni Hagen effizient und prüfungsnah www.schema-f-hagen.de Sie erhalten hier einen Einblick in die Dokumente Aufgaben und Lösungen sowie Erläuterungen Beim Kauf erhalten Sie zudem
MehrAlgorithmen und Datenstrukturen
Algorithmen und Datenstrukturen Dipl. Inform. Andreas Wilkens 1 Organisatorisches Freitag, 05. Mai 2006: keine Vorlesung! aber Praktikum von 08.00 11.30 Uhr (Gruppen E, F, G, H; Vortestat für Prototyp)
MehrSoftwareentwicklungsprozess im Praktikum. 23. April 2015
Softwareentwicklungsprozess im Praktikum 23. April 2015 Agile Softwareentwicklung Eine agile Methodik stellt die beteiligten Menschen in den Mittelpunkt und versucht die Kommunikation und Zusammenarbeit
MehrVerkehrsteilnehmer. Beispiel: Wir betrachten die Modellierung von Handlungskomponenten wie Verkehrsteilnehmern und Straßen.
7.6 Bedingte Rechte Manchmal sind Rechte nur unter bestimmten Voraussetzungen gültig. Diese Situation beschreiben wir -wie sonst auch üblich- mit bedingten Rechten. Beispiel: Wir betrachten die Modellierung
MehrGrundlagen der Künstlichen Intelligenz
Grundlagen der Künstlichen Intelligenz 22. Constraint-Satisfaction-Probleme: Kantenkonsistenz Malte Helmert Universität Basel 14. April 2014 Constraint-Satisfaction-Probleme: Überblick Kapitelüberblick
MehrFunktionale Programmierung mit Haskell
Funktionale Programmierung mit Haskell Dr. Michael Savorić Hohenstaufen-Gymnasium (HSG) Kaiserslautern Version 20120622 Überblick Wichtige Eigenschaften Einführungsbeispiele Listenerzeugung und Beispiel
MehrProgrammiersprachen und Übersetzer
Programmiersprachen und Übersetzer Sommersemester 2010 19. April 2010 Theoretische Grundlagen Problem Wie kann man eine unendliche Menge von (syntaktisch) korrekten Programmen definieren? Lösung Wie auch
MehrLösungsmethoden gewöhnlicher Differentialgleichungen (Dgl.)
Lösungsmethoden gewöhnlicher Dierentialgleichungen Dgl) Allgemeine und partikuläre Lösung einer gewöhnlichen Dierentialgleichung Eine Dierentialgleichung ist eine Gleichung! Zum Unterschied von den gewöhnlichen
MehrLehrer: Einschreibemethoden
Lehrer: Einschreibemethoden Einschreibemethoden Für die Einschreibung in Ihren Kurs gibt es unterschiedliche Methoden. Sie können die Schüler über die Liste eingeschriebene Nutzer Ihrem Kurs zuweisen oder
MehrSkript und Aufgabensammlung Terme und Gleichungen Mathefritz Verlag Jörg Christmann Nur zum Privaten Gebrauch! Alle Rechte vorbehalten!
Mathefritz 5 Terme und Gleichungen Meine Mathe-Seite im Internet kostenlose Matheaufgaben, Skripte, Mathebücher Lernspiele, Lerntipps, Quiz und noch viel mehr http:// www.mathefritz.de Seite 1 Copyright
MehrSoftwarelösungen: Versuch 4
Softwarelösungen: Versuch 4 Nichtstun in Schleife wird ersetzt durch zeitweilige Zurücknahme der Anforderung, um es anderen Prozessen zu erlauben, die Ressource zu belegen: /* Prozess 0 */ wiederhole flag[0]
MehrLineare Differentialgleichungen erster Ordnung erkennen
Lineare Differentialgleichungen erster Ordnung In diesem Kapitel... Erkennen, wie Differentialgleichungen erster Ordnung aussehen en für Differentialgleichungen erster Ordnung und ohne -Terme finden Die
MehrGleichungen Lösen. Ein graphischer Blick auf Gleichungen
Gleichungen Lösen Was bedeutet es, eine Gleichung zu lösen? Was ist überhaupt eine Gleichung? Eine Gleichung ist, grundsätzlich eine Aussage über zwei mathematische Terme, dass sie gleich sind. Ein Term
MehrProfessionelle Seminare im Bereich MS-Office
Der Name BEREICH.VERSCHIEBEN() ist etwas unglücklich gewählt. Man kann mit der Funktion Bereiche zwar verschieben, man kann Bereiche aber auch verkleinern oder vergrößern. Besser wäre es, die Funktion
MehrDIFFERENTIALGLEICHUNGEN
DIFFERENTIALGLEICHUNGEN GRUNDBEGRIFFE Differentialgleichung Eine Gleichung, in der Ableitungen einer unbekannten Funktion y = y(x) bis zur n-ten Ordnung auftreten, heisst gewöhnliche Differentialgleichung
MehrErfahrungen mit Hartz IV- Empfängern
Erfahrungen mit Hartz IV- Empfängern Ausgewählte Ergebnisse einer Befragung von Unternehmen aus den Branchen Gastronomie, Pflege und Handwerk Pressegespräch der Bundesagentur für Arbeit am 12. November
Mehr3.2 Binäre Suche. Usr/local/www/ifi/fk/menschen/schmid/folien/infovk.ppt 1
3.2 Binäre Suche Beispiel 6.5.1: Intervallschachtelung (oder binäre Suche) (Hier ist n die Anzahl der Elemente im Feld!) Ein Feld A: array (1..n) of Integer sei gegeben. Das Feld sei sortiert, d.h.: A(i)
MehrDie Komplexitätsklassen P und NP
Die Komplexitätsklassen P und NP Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen 3. Dezember 2009 Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und
MehrMathematik für Studierende der Biologie und des Lehramtes Chemie Wintersemester 2013/14. Auswahl vorausgesetzter Vorkenntnisse
UNIVERSITÄT DES SAARLANDES FACHRICHTUNG 6.1 MATHEMATIK Dipl.-Math. Kevin Everard Mathematik für Studierende der Biologie und des Lehramtes Chemie Wintersemester 2013/14 Auswahl vorausgesetzter Vorkenntnisse
Mehr