Erzeugung von Pseudozufallszahlen mit Computern

Größe: px
Ab Seite anzeigen:

Download "Erzeugung von Pseudozufallszahlen mit Computern"

Transkript

1 Erzeugung von Pseudozufallszahlen mit Computern Basisgeneratoren und deren Einfluss auf die Qualität der Ergebnisse Lorenz Hauswald IKTP, TU Dresden 7 Dezember / 26

2 Gliederung Grundlagen 1 Grundlagen Anforderungen Modulare Arithmetik Computer-Arithmetik / 26

3 Anforderungen Grundlagen Anforderungen Modulare Arithmetik Computer-Arithmetik Anforderungen hohe Anzahl nicht vorhersagbar genau bekannte Verteilung { 1 : 0 < x < 1 f (x) = 0 : sonst } =: U(0, 1) Zufälligkeit Jede regelmäßige Struktur kann sich negativ auf den Ausgang eines Monte-Carlo-Experiments auswirken! 3 / 26

4 Warum Pseudozufallszahlen Anforderungen Modulare Arithmetik Computer-Arithmetik Generatoren echter Zufallszahlen basieren auf physikalischen Prozessen, zb thermisches Rauschen in Halbleitern, Radioaktivität, Luftturbulenzen in Laufwerken Alterung, zb von Geiger-Müller-Zählrohren basieren auf Algorithmen Verteilung meist genauer bekannt, zeitlich konstant höhere Anzahl, Eigenschaften besser manipulierbar mit bekannten Ausgangsbedingungen reproduzierbar 4 / 26

5 Warum Pseudozufallszahlen Anforderungen Modulare Arithmetik Computer-Arithmetik Generatoren echter Zufallszahlen basieren auf physikalischen Prozessen, zb thermisches Rauschen in Halbleitern, Radioaktivität, Luftturbulenzen in Laufwerken Alterung, zb von Geiger-Müller-Zählrohren basieren auf Algorithmen Verteilung meist genauer bekannt, zeitlich konstant höhere Anzahl, Eigenschaften besser manipulierbar mit bekannten Ausgangsbedingungen reproduzierbar 4 / 26

6 Anforderungen Modulare Arithmetik Computer-Arithmetik Arithmetische Zufallszahlengeneratoren Satz von Weyl y 0 ]0, 1[ y 0 R\Q : (u k ) ]0, 1[ : u k = ky 0 ky 0 = ky 0 mod 1 u k hat die asymptotische Gleichverteilungseigenschaft Gleichverteilung Modulo 1 Die relative Anzahl an Folgengliedern in einem Intervall konvergiert gegen die Länge des Intervalls 5 / 26

7 Modulare Arithmetik Anforderungen Modulare Arithmetik Computer-Arithmetik Äquivalenz Modulo m a b mod m (m N, a, b R) Eigenschaften: symmetrisch: a b mod m b a mod m reflexiv: a a mod m a transitiv: a b mod m b c mod m a c mod m 6 / 26

8 Modulare Arithmetik Anforderungen Modulare Arithmetik Computer-Arithmetik Reduktion Modulo m Finde 0 a < m für gegebenes b, so dass a b mod m Existiert a, heißt es Residuum von b mod m a = b b m m Modulo-Operator in Programmiersprachen a = b % m a = b mod m Achtung, % und mod sind meist Operatoren für den Rest der ganzzahligen Division C++ : fmod(b,m) mit b,m float, double oder long double 7 / 26

9 Computer-Arithmetik Anforderungen Modulare Arithmetik Computer-Arithmetik Numerische Datentypen Ganzzahlen n I NbzwZ int ( bis 32767) uint (0 bis 65535) Fließkommazahlen r F R r = m b e m: Mantisse, b: Basis, e: Exponent Bits Wertebereich Genauigkeit float 32 1, , Stellen double 64 5, , Stellen long double 80 1, , Stellen 8 / 26

10 Fließkommazahlen Grundlagen Anforderungen Modulare Arithmetik Computer-Arithmetik Eigenschaften in (0,1) r = 0, d 1 d 2 d p b e r min = b e min p r max = 1 b p Anzahl darstellbarer Zahlen ist endlich ungleichmäßige Verteilung über (0,1) 9 / 26

11 Anforderungen Modulare Arithmetik Computer-Arithmetik Verteilung darstellbarer Zahlen in (0,1) Anzahl darstellbarer Zahlen / 26

12 Lineare Kongruenzgeneratoren Einfacher linearer Kongruenzgenerator (Lehmer 1949) Beispiel m = 17, a = 9, x 0 = 7 12,6,3,10,5,11,14,7 p = 8 oft genutzte Moduli Mersenne-Primzahlen x i (ax i-1 + c) mod m 0 x i < m max Periode p = m c = 0 x 0 0 (p max = m 1) Skalierung auf (0,1): u i = x i m 11 / 26

13 Struktur Grundlagen x i 3x i-1 mod / 26

14 Struktur Grundlagen x i 12x i-1 mod / 26

15 Mischen der Ausgabe Permutation von Unterfolgen durch anderen, meist einfacheren Generator mögliche Erhöhung der Periode und Brechung der Gitterstruktur auch Selbstmischung möglich (zb Bays-Durham-Algorithmus) 14 / 26

16 Mischen der Ausgabe x i 3x i-1 mod 31, gemischt 15 / 26

17 Erzeugung von Unterfolgen nichtüberlappende Blöcke Startwert der nächsten Unterfolge in Abhängigkeit der Länge der Blöcke und Startwert des vorangegangenen Blocks x i+1 (ax i + c) mod m x i+k (a k x i + c) mod m 2 Startwert: x k-1 bx 0 mod m mit b a k mod m Überspringen von Elementen ( Leapfrogging ) Folge: x s, x s+k, x s+2k, x i+1 bx i mod m 16 / 26

18 Erzeugung von Unterfolgen Lehmer-Baum binärer Baum mit Lehmer-Kongruenzgeneratoren (a L x i-1 + c L ) mod m x (L) i x (R) i (a R x i-1 + c R ) mod m x 0 L R L R L R L R L R L R L R 17 / 26

19 Weitere lineare Kongruenzgeneratoren Mehrfache Rekursion x i (a 1 x i a k x i-k ) mod m k: Ordnung des Generators p max = m k 1 Verzögerter Fibonacci x i (x i-j + x i-k ) mod m 18 / 26

20 Matrixkongruenzgeneratoren Definition x i (Ax i-1 + c) mod m x i, c I d A I d d Anwendungsbereiche Erzeugung paralleler Ströme von Pseudozufallszahlen Induktion einer Korrelationsstruktur in den Zufallsvektoren 19 / 26

21 Nichtlineare Kongruenzgeneratoren Allgemein x i f (x i-1,, x i-k ) mod m Inversiver Kongruenzgenerator x i ( ax i-1 + c) mod m 1 x x mod m Blum-Blum-Shub-Generator (1986) x i xi-1 2 mod { m 0 : x i gerade Bitfolge b i = 1 : x i ungerade unvorhersagbar in polynomieller Zeit 20 / 26

22 Rückgekoppeltes Schieberegister Feedback Shift Register Generator (Transworthe 1965) b i (a 1 b i a p b i-p ) mod 2 Vertauschung der Bits (Bit Twisting) x i = x i-p Ax i-p+q A mn 0, 1 21 / 26

23 Rückgekoppeltes Schieberegister Feedback Shift Register Generator (Transworthe 1965) b i (a 1 b i-1 a p b i-p ) mod 2 b i = (b i-p b i-p+q ) R(p q,p) - Generator oft in Physik genutzt: R(103,250) Vertauschung der Bits (Bit Twisting) x i = x i-p Ax i-p+q A mn 0, 1 21 / 26

24 Andere Quellen gleichverteilter Zufallszahlen andere Quellen Ziffern irrationaler Zahlen, zb π, e, 2 (normal in Basis 10) chaotische Systeme zelluläre Automaten Internetdienste, zb QRNG (HU Berlin) 22 / 26

25 23 / 26

26 Qualität von Pseudozufallszahlen Eigenschaften Relative Häufigkeit Welcher Anteil der Zahlen ist in (00,01],, (09,10)? allg: Ist f i = n i N nahe genug an π i? Chi-Squared-Test n (f i π i ) 2 π i Kolmogorov-Smirnov-Test max f i π i Unabhängigkeit Autokorrelation mit Verzögerung! = 0 (notwendig, nicht hinreichend) Länge von Folgen aufeinanderfolgender wachsender bzw fallender Zahlen: Runs-Test 24 / 26

27 Qualität von Pseudozufallszahlen Eigenschaften Gitterstruktur Abstände der Hyperebenen: Spektraltest Länge des Minkowski-reduzierten Basisvektors Sanchez, Luiz ( 25 / 26

28 Quellen Grundlagen Literatur Gentle, James (2003): Random Number Generation and Monte Carlo Methods Knuth, Donald (1981): The Art of Computer Programming Volume 2 Seminumerical Algorithms Viega, John: Practical Random Number Generation in Software 26 / 26

Pollards Rho-Methode zur Faktorisierung

Pollards Rho-Methode zur Faktorisierung C A R L V O N O S S I E T Z K Y Pollards Rho-Methode zur Faktorisierung Abschlusspräsentation Bachelorarbeit Janosch Döcker Carl von Ossietzky Universität Oldenburg Department für Informatik Abteilung

Mehr

Zufallszahlenerzeugung

Zufallszahlenerzeugung Zufallszahlenerzeugung Anwendunsgebiete: z.b.: - Computerspiele - Kryptographie - Monte-Carlo-Methoden - Simulation Melanie Kaspar, Prof. Dr. B. Grabowski 1 Wie erzeuge ich Zufallszahlen, die sich so verhalten,

Mehr

7 Zufallszahlen, Simulation

7 Zufallszahlen, Simulation 7 Zufallszahlen, Simulation Es ist nützlich, Folgen von i.i.d. R[0, 1]-verteilten Zufallszahlen auf einem Rechner erzeugen zu können vgl. Simulation, Monte-Carlo-Verfahren). Letztere sind i.a. keine echten

Mehr

Informationssicherheit III

Informationssicherheit III Zufall im Rechner Präsentation im Rahmen der Lehrveranstaltung Informationssicherheit III WS 2001/2002 Jochen Rondorf 17.01.2002 Zufall im Rechner WS 2001/02 1 Agenda Arten von Zufall Anwendungsgebiete

Mehr

Einführung (1) In der Praxis finden Sie viele Anwendungsfelder für Zufallszahlen. Beispiele

Einführung (1) In der Praxis finden Sie viele Anwendungsfelder für Zufallszahlen. Beispiele 11. Zufallszahlen 1 Einführung (1) In der Praxis finden Sie viele Anwendungsfelder für Zufallszahlen. Beispiele sind 1. Computersimulationen 2. Optimierungsprobleme und 3. Hochdimensionale Integrale. Problemstellung:

Mehr

1. Grundbegri e der Stochastik

1. Grundbegri e der Stochastik . Grundbegri e der Stochastik Raum der Ereignisse. Die einelementigen Teilmengen f!g heißen auch Elementarereignisse. Das Ereignis A tritt ein, wenn ein! A eintritt. A ist ein geeignetes System von Teilmengen

Mehr

15 Grundlagen der Simulation

15 Grundlagen der Simulation 15 Grundlagen der Simulation 15.1 Einführung Komplexe Problemstellungen, die einer analytischen Behandlung nur sehr schwer oder gar nicht zugänglich sind Lösung von diskreten (oder analytischen) Optimierungsaufgaben,

Mehr

Zufallszahlen. Diskrete Simulation. Zufallszahlengeneratoren - Zufallszahlen

Zufallszahlen. Diskrete Simulation. Zufallszahlengeneratoren - Zufallszahlen Zufallszahlen Zufallszahlengeneratoren Transformation von Zufallszahlen Test von Zufallszahlengeneratoren Otto-von-Guericke-Universität Magdeburg Thomas Schulze Zufallszahlengeneratoren - Zufallszahlen

Mehr

Prinzipien zur Erzeugung von Zufallszahlen in der Informatik

Prinzipien zur Erzeugung von Zufallszahlen in der Informatik ien zur Erzeugung von Zufallszahlen in der Informatik Vortragender: Dipl.-Inform. Thomas Hinze 1. Motivation 2. Grundlegende Begriffe und Zusammenhänge 3. Klassifikation der ien 4. ien zur Erzeugung echter

Mehr

Pseudozufallsgeneratoren

Pseudozufallsgeneratoren Pseudozufallsgeneratoren In welchen kryptographischen Verfahren werden keine Zufallszahlen benötigt? Wie generiert man Zufallszahlen in einer deterministischen Maschine wie dem Computer? Wenn man eine

Mehr

Zufallszahlen erzeugen

Zufallszahlen erzeugen Informationsblatt fÿr die Lehrkraft Zufallszahlen erzeugen Informationsblatt fÿr die Lehrkraft Thema: Schultyp: Vorkenntnisse: Bearbeitungsdauer: Zufallszahlen erzeugen - Methode der linearen Kongruenz

Mehr

Zufallszahlen in AntBrain

Zufallszahlen in AntBrain Zufallszahlen SEP 291 Zufallszahlen in AntBrain Spezifikation, Teil II: Zum Beispiel könnte ein Objekt vom Typ Match die Spielfelder nach jeweils 1000 Spielrunden speichern; bei einer Anfrage nach den

Mehr

Lineare Kongruenzgeneratoren und Quicksort

Lineare Kongruenzgeneratoren und Quicksort Seminar Perlen der theoretischen Informatik Dozenten: Prof. Johannes Köbler und Olaf Beyersdorff Lineare Kongruenzgeneratoren und Quicksort Ausarbeitung zum Vortrag Mia Viktoria Meyer 12. November 2002

Mehr

Simulation von Zufallsvariablen und Punktprozessen

Simulation von Zufallsvariablen und Punktprozessen Simulation von Zufallsvariablen und Punktprozessen 09.11.2009 Inhaltsverzeichnis 1 Einleitung 2 Pseudozufallszahlen 3 Punktprozesse Zufallszahlen Definition (Duden): Eine Zufallszahl ist eine Zahl, die

Mehr

1 Zufallszahlen jede Zahl gleichen Wahrscheinlichkeit Zufallszahlenfolge unabhängiger, identisch ver- teilter

1 Zufallszahlen jede Zahl gleichen Wahrscheinlichkeit Zufallszahlenfolge unabhängiger, identisch ver- teilter Zufallszahlen Zufallszahlen werden für viele Anwendungen im Computer benötigt. Hauptanwendungsgebiete sind die Simulation und die Statistik. Besonders bei der Programmierung von Spielen werden Zufallszahlen

Mehr

UE Algorithmen und Datenstrukturen 1 UE Praktische Informatik 1. Übung 8. Zufallszahlen Generatoren Anwendungen

UE Algorithmen und Datenstrukturen 1 UE Praktische Informatik 1. Übung 8. Zufallszahlen Generatoren Anwendungen UE Algorithmen und Datenstrukturen 1 UE Praktische Informatik 1 Übung 8 Zufallszahlen Generatoren Anwendungen Institut für Pervasive Computing Johannes Kepler Universität Linz Altenberger Straße 69, A-4040

Mehr

IT-Security. Teil 15: Zufall

IT-Security. Teil 15: Zufall IT-Security Teil 15: Zufall 09.05.17 1 Literatur [15-1] http://de.wikipedia.org/wiki/kryptographisch_sicherer_zufallszahlen generator [15-2] https://gnupg.org/documentation/manuals/gcrypt/fips-prng- Description.html

Mehr

Pseudo-Zufallsgeneratoren basierend auf dem DLP

Pseudo-Zufallsgeneratoren basierend auf dem DLP Seminar Codes und Kryptografie SS 2004 Struktur des Vortrags Struktur des Vortrags Ziel Motivation 1 Einleitung Ziel Motivation 2 Grundlegende Definitionen Zufallsgeneratoren 3 Generator Sicherheit 4 Generator

Mehr

Computergestütztes wissenschaftliches Rechnen SoSe 2004

Computergestütztes wissenschaftliches Rechnen SoSe 2004 Computergestütztes wissenschaftliches Rechnen SoSe 2004 Alexander K. Hartmann, Universität Göttingen 28. April 2004 2.4 Numerik 2.4.1 Zahlendarstellung Analogrechner (Rechenschieber, Op-Amp): Zahlen entsprechen

Mehr

Erzeugung von Pseudozufallszahlen

Erzeugung von Pseudozufallszahlen Erzeugung von Pseudozufallszahlen Proseminar Kryptografie und Datensicherheit Sommersemester 2009 Mario Frank Übersicht 1. Allgemeines 2. Anwendungen von PRBG 3. (k,l)-bit Generatoren 4. Unterscheidbarkeit

Mehr

7 Zufallszahlen. 7.1 Bedeutung

7 Zufallszahlen. 7.1 Bedeutung 7 Zufallszahlen 7.1 Bedeutung 7.2 Lehmer-Generatoren für Zufallszahlen 7.2.1 Aufbau 7.2.2 Kombination von Generatoren 7.2.3 Berechnung von (as) mod m 7.2.4 Empfehlung von Park und Miller 7.2.5 Empfehlungen

Mehr

Statistik, Datenanalyse und Simulation

Statistik, Datenanalyse und Simulation Dr. Michael O. Distler distler@kph.uni-mainz.de Mainz, 16. November 2009 2. Monte Carlo-Methoden 2.1 Zufallszahlen - Warum? 2.2 Zahlendarstellung im Rechner 2.3 Generatoren 2.3.1 Linear kongruente Generatoren

Mehr

Wahrscheinlichkeitsrechnung und Statistik

Wahrscheinlichkeitsrechnung und Statistik 6. Vorlesung - 2018 Diskrete ZG eine diskrete ZG X wird vollständig durch ihre Wahrscheinlichkeitsverteilung beschrieben ( ) x1 x X 2... x i... = p 1 p 2... p i... P(X (a, b]) = und die Verteilungsfunktion

Mehr

Namen und Bezeichner. Ein Programm braucht einen Namen. Bezeichner: Ein Name für "Objekte" im Programm.

Namen und Bezeichner. Ein Programm braucht einen Namen. Bezeichner: Ein Name für Objekte im Programm. Namen und Bezeichner, Variablen, Zuweisungen, Konstanten, Datentypen, Operationen,Auswertung von Ausdrücken, Konversion, Kontrollfluss: if..then, while, do.. while, for, Klassen und statische Methoden

Mehr

Physische Datenstrukturen

Physische Datenstrukturen Elementare Datentypen Strukturierte Datentypen Zeiger Seite 1 Einfache Datentypen Datentyp char Verwendung: ASCII-Zeichen Wertebereich: alle darstellbaren Zeichen, 8 bit lange Ganzzahlen im Intervall -128

Mehr

Anhang 1: Lamellare Strukturen in Systemen mit Bolaamphiphilen

Anhang 1: Lamellare Strukturen in Systemen mit Bolaamphiphilen Anhang 1: Lamellare Strukturen in Systemen mit Bolaamphiphilen Charakteristische Konfigurationen von Systemen aus 1848 6-segmentigen Bolaamphiphilen (10 Vol%) im Bereich stabiler Schichtphasen. Dunkle

Mehr

Einführung in die Simulation. Dr. Christoph Laroque Wintersemester 11/12. Dresden,

Einführung in die Simulation. Dr. Christoph Laroque Wintersemester 11/12. Dresden, Fakultät Informatik, Institut für Angewandte Informatik, Professur Modellierung und Simulation Einführung in die Simulation Dr. Christoph Laroque Wintersemester 11/12 Dresden, 11.10.2011 01.11.2011 Einführung

Mehr

Programmiertechnik II

Programmiertechnik II Zufallszahlen Motivation Simulation Frisörbeispiel Stichprobenauswahl Telefonumfragen Numerische Algorithmen naives Beispiel: Berechnung von Pi Automatisiertes Testen Beispiel aus Übungsaufgabe "Faire"

Mehr

Nr. 4: Pseudo-Zufallszahlengeneratoren

Nr. 4: Pseudo-Zufallszahlengeneratoren Proseminar: Finanzmathematische Modelle und Simulationen Martin Dieckmann WS 09/0 Nr. 4: Pseudo-Zufallszahlengeneratoren Begriff Pseudo-Zufallszahl Zufallszahlen im Rechner entstehen letztlich immer durch

Mehr

Wertebereich und Genauigkeit der Zahlendarstellung

Wertebereich und Genauigkeit der Zahlendarstellung Wertebereich und Genauigkeit der Zahlendarstellung Sowohl F als auch C kennen bei ganzen und Floating Point-Zahlen Datentypen verschiedener Genauigkeit. Bei ganzen Zahlen, die stets exakt dargestellt werden

Mehr

Prinzipien zur Erzeugung von Zufallszahlen in der Informatik

Prinzipien zur Erzeugung von Zufallszahlen in der Informatik Prinzipien zur Erzeugung von Zufallszahlen in der Informatik Probevorlesung im Habilitationsverfahren an der Friedrich-Schiller-Universität Jena Brandenburgische Technische Universität Cottbus Institut

Mehr

Kapitel 5: Daten und Operationen

Kapitel 5: Daten und Operationen Kapitel 5: Daten und Operationen Felix Freiling Lehrstuhl für Praktische Informatik 1 Universität Mannheim Vorlesung Praktische Informatik I im Herbstsemester 2007 Folien nach einer Vorlage von H.-Peter

Mehr

Das Verfahren in Hardware

Das Verfahren in Hardware Das Verfahren in Hardware Links Shift 8 Bit Multiplikand Demonstration mit 1001 * 0110 = 110110 2.Links Shift 8 Bit ALU Rechts Shift 4 Bit Multiplikator 3.Rechts Shift 8 Bit Produkt 1. Produkt = Produkt

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 21 Einstieg in die Informatik mit Java Einfache Ausdrücke Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 21 1 Überblick 2 Arithmetische Operatoren 3 Inkrement und Dekrementoperatoren

Mehr

Statistics, Data Analysis, and Simulation SS 2017

Statistics, Data Analysis, and Simulation SS 2017 Mainz, 11. Mai 2017 Statistics, Data Analysis, and Simulation SS 2017 08.128.730 Statistik, Datenanalyse und Simulation Dr. Michael O. Distler Dr. Michael O. Distler

Mehr

Gleichverteilung auf dem Kreis

Gleichverteilung auf dem Kreis Gleichverteilung auf dem Kreis Teilnehmer: Thoralf Dietrich Duc Son Le Markus Penner Alexander Schirmer Tim Venzke Gruppenleiter: Elke Warmuth Heinrich-Hertz-Oberschule, Berlin Immanuel-Kant-Oberschule,

Mehr

Euklidische Algorithmus, Restklassenringe (Z m,, )

Euklidische Algorithmus, Restklassenringe (Z m,, ) Euklidische Algorithmus, Restklassenringe (Z m,, ) Manfred Gruber http://www.cs.hm.edu/~gruber SS 2008, KW 14 Gröÿter gemeinsamer Teiler Denition 1. [Teiler] Eine Zahl m N ist Teiler von n Z, wenn der

Mehr

Wahrscheinlichkeitsverteilungen und ihre Implementierung in Root. Eric Volkmann

Wahrscheinlichkeitsverteilungen und ihre Implementierung in Root. Eric Volkmann Wahrscheinlichkeitsverteilungen und ihre Implementierung in Root Eric Volkmann Inhalt Mathematische Definition Random Number Generators Wichtige Verteilungen Anwendungsbeispiel: Monte-Carlo Simulation

Mehr

Modellbildung und Simulation

Modellbildung und Simulation Modellbildung und Simulation 6. Vorlesung Wintersemester 2007/2008 Klaus Kasper Value at Risk (VaR) Gaußdichte Gaußdichte der Normalverteilung: f ( x) = 1 2π σ x e 2 2 x ( x µ ) / 2σ x Gaußdichte der Standardnormalverteilung:

Mehr

4. Zahlendarstellungen

4. Zahlendarstellungen 121 4. Zahlendarstellungen Wertebereich der Typen int, float und double Gemischte Ausdrücke und Konversionen; Löcher im Wertebereich; Fliesskommazahlensysteme; IEEE Standard; Grenzen der Fliesskommaarithmetik;

Mehr

3. Datentypen, Ausdrücke und Operatoren

3. Datentypen, Ausdrücke und Operatoren 3. Datentypen, Ausdrücke und Operatoren Programm muß i.a. Daten zwischenspeichern Speicherplatz muß bereitgestellt werden, der ansprechbar, reserviert ist Ablegen & Wiederfinden in höheren Programmiersprachen

Mehr

Hallo Welt für Fortgeschrittene

Hallo Welt für Fortgeschrittene Hallo Welt für Fortgeschrittene Zahlentheorie, Arithmetik und Algebra II Benjamin Fischer Informatik 2 Programmiersysteme Martensstraße 3 91058 Erlangen Gliederung Lineare Rekursion BigInteger Chinesischer

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen 2.1 Einfache Datentypen in C W. Tasin, M.Sc. Fakultät 04 tasin@hm.edu Allgemeines (1) Einfache (od. primitive) Datentypen legen fest, wie die Information kodiert im Speicher

Mehr

Kapitel 4. Programmierkurs. Datentypen. Arten von Datentypen. Wiederholung Kapitel 4. Birgit Engels, Anna Schulze WS 07/08

Kapitel 4. Programmierkurs. Datentypen. Arten von Datentypen. Wiederholung Kapitel 4. Birgit Engels, Anna Schulze WS 07/08 Kapitel 4 Programmierkurs Birgit Engels, Anna Schulze Wiederholung Kapitel 4 ZAIK Universität zu Köln WS 07/08 1 / 23 2 Datentypen Arten von Datentypen Bei der Deklaration einer Variablen(=Behälter für

Mehr

Multiplikation. Grundlagen der Rechnerarchitektur Logik und Arithmetik 79

Multiplikation. Grundlagen der Rechnerarchitektur Logik und Arithmetik 79 Multiplikation Grundlagen der Rechnerarchitektur Logik und Arithmetik 79 Multiplikation nach der Schulmethode Gegeben seien die Binärzahlen A und B. Was ist a * b? Beispiel: Multiplikand A: 1 1 0 1 0 Multiplikator

Mehr

Dezimalzahlen. Analysis 1

Dezimalzahlen. Analysis 1 Dezimalzahlen Definition. Eine endliche Dezimalzahl besteht aus - einem Vorzeichen +,, oder 0 - einer natürlichen Zahl d 0 - einer endlichen Folge von Ziffern d 1,...,d l von 0 bis 9. Die Länge l kann

Mehr

Kryptographische Zufallszahlen. Schieberegister, Output-Feedback

Kryptographische Zufallszahlen. Schieberegister, Output-Feedback Kryptographische Zufallszahlen Schieberegister, Output-Feedback Stromchiffren Bei Stromchiffren wird die Eingabe zeichenweise bzw. blockweise mit einer parallel dazu erzeugten Schlüsselfolge meist mit

Mehr

Statistics, Data Analysis, and Simulation SS 2015

Statistics, Data Analysis, and Simulation SS 2015 Mainz, May 12, 2015 Statistics, Data Analysis, and Simulation SS 2015 08.128.730 Statistik, Datenanalyse und Simulation Dr. Michael O. Distler Dr. Michael O. Distler

Mehr

4: Algebraische Strukturen / Gruppen

4: Algebraische Strukturen / Gruppen Stefan Lucks Diskrete Strukturen (WS 2009/10) 120 4: Algebraische Strukturen / Gruppen Definition 46 Sei G eine nichtleere Menge. Eine Funktion : G G G bezeichnen wir als Verknüpfung auf G. Das Paar (G,

Mehr

Control Beispiel. Control wird als kombinatorische Schaltung realisiert. Hierzu die Wahrheitstabelle: Control

Control Beispiel. Control wird als kombinatorische Schaltung realisiert. Hierzu die Wahrheitstabelle: Control Control Beispiel Store R1 4 Bit Register R1 SUB 4 Bit Register R2 Store R2 R2 Bit 0 Control wird als kombinatorische Schaltung realisiert. Hierzu die Wahrheitstabelle: Eingabe R2 Bit 0 Zero 0 0 Ausgabe

Mehr

Kapitel 4. Programmierkurs. Datentypen. Arten von Datentypen. Datentypen und Operatoren Ganzzahlige Numerische Datentypen Logischer Datentyp

Kapitel 4. Programmierkurs. Datentypen. Arten von Datentypen. Datentypen und Operatoren Ganzzahlige Numerische Datentypen Logischer Datentyp Kapitel 4 Programmierkurs Birgit Engels, Anna Schulze Datentypen und Operatoren Ganzzahlige Numerische Datentypen Logischer Datentyp ZAIK Universität zu Köln WS 07/08 1 / 6 Datentypen Arten von Datentypen

Mehr

Computergestützte Mathematik zur Linearen Algebra

Computergestützte Mathematik zur Linearen Algebra Computergestützte Mathematik zur Linearen Algebra Pivotwahl und Gleitkommaarithmetik Achim Schädle 3. und 20. Dezember 208 Achim Schaedle (HHU) CompLinA 3. und 20. Dezember 208 Instabilitäten bei Gauß-Elimination

Mehr

Informatik I (D-MAVT)

Informatik I (D-MAVT) Informatik I (D-MAVT) Übungsstunde 2 simon.mayer@inf.ethz.ch Distributed Systems Group, ETH Zürich Ablauf Besprechung der Vorlesung Vorbesprechung Übung 2 Variablen + Scopes Zahlensysteme Bits&Bytes Datentypen

Mehr

(eindimensionaler) Paritätscode: Codes (8a)

(eindimensionaler) Paritätscode: Codes (8a) (eindimensionaler) Paritätscode: Codes (8a) Cyclic Redundancy Check (CRC) view data bits, D, as a binary number choose r+ bit pattern (generator), G goal: choose r CRC bits, R, such that exactly

Mehr

2: Restklassen 2.1: Modulare Arithmetik

2: Restklassen 2.1: Modulare Arithmetik 2: Restklassen 2.1: Modulare Arithmetik Uhr: Stunden mod 24, Minuten mod 60, Sekunden mod 60,... Rechnerarithmetik: mod 2 w, w {8, 16, 32, 64} Prüfziffern mod 10 oder mod 11... 71 S. Lucks Diskr Strukt.

Mehr

Ralf Kirsch Uwe Schmitt. Programmieren inc. Eine mathematikorientierte Einführung. Mit 24 Abbildungen und 13 Tabellen. Springer

Ralf Kirsch Uwe Schmitt. Programmieren inc. Eine mathematikorientierte Einführung. Mit 24 Abbildungen und 13 Tabellen. Springer Ralf Kirsch Uwe Schmitt Programmieren inc Eine mathematikorientierte Einführung Mit 24 Abbildungen und 13 Tabellen Springer Inhaltsverzeichnis Eine Einleitung in Frage und Antwort V 1 Vorbereitungen 1

Mehr

Variablen. CoMa-Übung VIII TU Berlin. CoMa-Übung VIII (TU Berlin) Variablen / 15

Variablen. CoMa-Übung VIII TU Berlin. CoMa-Übung VIII (TU Berlin) Variablen / 15 Variablen CoMa-Übung VIII TU Berlin 4.12.2013 CoMa-Übung VIII (TU Berlin) Variablen 4.12.2013 1 / 15 Themen der Übung 1 Typanpassungen 2 Operatoren 3 Variablen-Gültigkeit CoMa-Übung VIII (TU Berlin) Variablen

Mehr

Wahrscheinlichkeitsrechnung und Statistik

Wahrscheinlichkeitsrechnung und Statistik 8. Vorlesung Pseudozufallszahlen sind, wie der Name schon sagt, keine echten Zufallszahlen, sondern werden durch Generatoren erzeugt. Als Pseudozufallszahlen bezeichnet man Zahlenfolgen die durch einen

Mehr

5.9 Permutationsgruppen. Sei nun π S n. Es existiert folgende naive Darstellung: Kürzer schreibt man auch

5.9 Permutationsgruppen. Sei nun π S n. Es existiert folgende naive Darstellung: Kürzer schreibt man auch 5.9 Permutationsgruppen Definition 103 Eine Permutation ist eine bijektive Abbildung einer endlichen Menge auf sich selbst; o. B. d. A. sei dies die Menge U := {1, 2,..., n}. S n (Symmetrische Gruppe für

Mehr

Unterstützte Datentypen

Unterstützte Datentypen Unterstützte Datentypen Die folgende Tabelle zeigt die unterstützten Datentypen für die Triggervariable: Speicherbedarf und Format der Zahl 1-Byte 8-Bit-Ganzzahlen 16-Bit-Ganzzahlen 32-Bit-Ganzzahlen 64-Bit-Ganzzahlen

Mehr

Zahlentheorie I. Christoph Egger. 18. Juni Christoph Egger Zahlentheorie I 18. Juni / 32

Zahlentheorie I. Christoph Egger. 18. Juni Christoph Egger Zahlentheorie I 18. Juni / 32 Zahlentheorie I Christoph Egger 18. Juni 2010 Christoph Egger Zahlentheorie I 18. Juni 2010 1 / 32 Übersicht 1 Modulare Arithmetik Addition & Subtraktion Multiplikation schnelles Potenzieren 2 Teiler Definition

Mehr

Statistics, Data Analysis, and Simulation SS 2017

Statistics, Data Analysis, and Simulation SS 2017 Mainz, 8. Mai 2017 Statistics, Data Analysis, and Simulation SS 2017 08.128.730 Statistik, Datenanalyse und Simulation Dr. Michael O. Distler Dr. Michael O. Distler

Mehr

Lösung Aufgabe 2. Es muss ein Weg gefunden werden, die Länge des längsten Laufs identischer Ziffern zu identifizieren:

Lösung Aufgabe 2. Es muss ein Weg gefunden werden, die Länge des längsten Laufs identischer Ziffern zu identifizieren: Lösung Aufgabe 2 Es muss ein Weg gefunden werden, die Länge des längsten Laufs identischer Ziffern zu identifizieren: maxlaenge

Mehr

3/4/2009. Schalter: Ein vs. Aus Lochkarten: Loch vs. Kein Loch Boolean/Wahrheitswerte: true vs. false

3/4/2009. Schalter: Ein vs. Aus Lochkarten: Loch vs. Kein Loch Boolean/Wahrheitswerte: true vs. false Ablauf Informatik I (D-MAVT) Übungsstunde 2, 4.3.2009 simonmayer@student.ethz.ch ETH Zürich Besprechung/Vertiefung der Vorlesung [26.2.2009] Vorbesprechung Übung 2 Variablen + Scopes Zahlensysteme Bits&Bytes

Mehr

Gleitkommaarithmetik. Erhöhen der Genauigkeit. Grundlagen der Rechnerarchitektur Logik und Arithmetik 124

Gleitkommaarithmetik. Erhöhen der Genauigkeit. Grundlagen der Rechnerarchitektur Logik und Arithmetik 124 Gleitkommaarithmetik Erhöhen der Genauigkeit Grundlagen der Rechnerarchitektur Logik und Arithmetik 124 Guard Bit, Round Bit und Sticky Bit Bei der Darstellung der Addition und Multiplikation haben wir

Mehr

Zufallszahlen Mathematik zum Nachbilden von Zufälligkeit SommerUni 2013 Bergische Universität Wuppertal Autor: Prof. Dr.

Zufallszahlen Mathematik zum Nachbilden von Zufälligkeit SommerUni 2013 Bergische Universität Wuppertal Autor: Prof. Dr. Zufallszahlen Mathematik zum Nachbilden von Zufälligkeit SommerUni 23 Bergische Universität Wuppertal Autor: Prof. Dr. Roland Pulch Aufgabe: Konstruiere Zufallszahlen aus der Menge {,, 2, 3, 4, 5, 6, 7,

Mehr

Wertebereiche, Overflow und Underflow

Wertebereiche, Overflow und Underflow Wertebereiche, Overflow und Underflow s exponent fraction 1 Bit 8 Bits 23 Bits Kleinste darstellbare nicht negative Zahl annähernd 2,0 * 10 38 Größte darstellbare Zahl annähernd 2,0 * 10 38 Was, wenn die

Mehr

1 Organisatorisches. 2 Schleifeninvarianten. 3 Widerspruchsbeweise. 4 Zahlendarstellung in Rechnern. 5 Typanpassungen.

1 Organisatorisches. 2 Schleifeninvarianten. 3 Widerspruchsbeweise. 4 Zahlendarstellung in Rechnern. 5 Typanpassungen. Themen der Übung Schleifeninvarianten, Zahlendarstellung und Typanpassungen CoMa-Übung V TU Berlin 1 Organisatorisches 2 Schleifeninvarianten 3 Widerspruchsbeweise 4 Zahlendarstellung in Rechnern 5 Typanpassungen

Mehr

Numerisches Programmieren, Übungen

Numerisches Programmieren, Übungen Technische Universität München SoSe 017 Institut für Informatik Prof Dr Thomas Huckle Michael Obersteiner, Michael Rippl Numerisches Programmieren, Übungen Musterlösung 1 Übungsblatt: Zahlendarstellung,

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Einheit 17: Relationen Thomas Worsch Karlsruher Institut für Technologie, Fakultät für Informatik Wintersemester 2013/2014 1/61 Anmerkung Änderung im Wintersemester 2013/2014:

Mehr

In beiden Fällen auf Datenauthentizität und -integrität extra achten.

In beiden Fällen auf Datenauthentizität und -integrität extra achten. Stromchiffren Verschlüsseln eines Stroms von Daten m i (Bits/Bytes) mithilfe eines Schlüsselstroms k i in die Chiffretexte c i. Idee: Im One-Time Pad den zufälligen Schlüssel durch eine pseudo-zufällige

Mehr

Algorithmen & Programmierung. Reelle Zahlen in C (1) Darstellung reeller Zahlen

Algorithmen & Programmierung. Reelle Zahlen in C (1) Darstellung reeller Zahlen Algorithmen & Programmierung Reelle Zahlen in C (1) Darstellung reeller Zahlen Reelle Zahlen in C Datentyp für reelle Zahlen Eine Möglichkeit, Berechnungen mit reellen Zahlen in C durchzuführen, ist die

Mehr

Relationen und DAGs, starker Zusammenhang

Relationen und DAGs, starker Zusammenhang Relationen und DAGs, starker Zusammenhang Anmerkung: Sei D = (V, E). Dann ist A V V eine Relation auf V. Sei andererseits R S S eine Relation auf S. Dann definiert D = (S, R) einen DAG. D.h. DAGs sind

Mehr

Programmieren in Python

Programmieren in Python Ausgaben und Zahlen Programmieren in Python 2. Ausgaben und Zahlen Malte Helmert Albert-Ludwigs-Universität Freiburg In dieser Lektion geht es darum, ein erstes Gefühl für Python zu bekommen. Wir beschränken

Mehr

o feste Anzahl Vorkommastellen (z.b. 7) o feste Anzahl Nachkommastellen (z.b. 3) o Nachteil 1: o feste Anzahl signifikanter Stellen (10)

o feste Anzahl Vorkommastellen (z.b. 7) o feste Anzahl Nachkommastellen (z.b. 3) o Nachteil 1: o feste Anzahl signifikanter Stellen (10) Richtig Rechnen Typen float und double; systeme, Löcher im Wertebereich, IEEE Standard, Fliesskomma-Richtlinien // Program: fahrenheit.cpp // Convert temperatures from Celsius to Fahrenheit. std::cout

Mehr

WH: Arithmetik: Floating Point

WH: Arithmetik: Floating Point WH: Arithmetik: Floating Point Elmar Langetepe University of Bonn Robuste Implementierungen Floating Point Arithmetik Bonn 06 1 Real RAM Robuste Implementierungen Floating Point Arithmetik Bonn 06 2 Real

Mehr

Motivation. Benötigtes Schulwissen. Wirtschaftswissenschaftliches Zentrum 6 Universität Basel. Statistik

Motivation. Benötigtes Schulwissen. Wirtschaftswissenschaftliches Zentrum 6 Universität Basel. Statistik Wirtschaftswissenschaftliches Zentrum 6 Universität Basel Statistik Dr. Thomas Zehrt Wahrscheinlichkeitsräume Motivation Das Hauptanliegen der Stochastik liegt darin, Modelle zur (mathematischen Beschreibung

Mehr

JAVA - Zufallszahlen

JAVA - Zufallszahlen Übungen Informatik I JAVA - http://www.fbi-lkt.fh-karlsruhe.de/lab/info01/tutorial Übungen Informatik 1 1 5. JAVA werden beim Programmieren erstaunlich oft gebraucht: Simulationen Spiele Aufbau von Testszenarien...

Mehr

Zufälle gibt s, oder gibt s die nicht? Martin Köhler Science Café Hamburg, 25. Juni 2014

Zufälle gibt s, oder gibt s die nicht? Martin Köhler Science Café Hamburg, 25. Juni 2014 Zufälle gibt s, oder gibt s die nicht? Martin Köhler Science Café Hamburg, 25. Juni 2014 Grundfrage und Gliederung Gibt es einen echten Zufall, oder wissen wir einfach nicht genug für eine exakte Vorhersage?

Mehr

1.4 Die maximale Periode

1.4 Die maximale Periode 1.4 Die maximale Periode Wann hat ein linearer Kongruenzgenerator zum Modul m die maximal mögliche Periode m? Für einen multiplikativen Generator ist das nicht möglich, weil man vom Folgenglied 0 nie mehr

Mehr

Satz 94 Sei b N 0 und p N eine Primzahl. Dann gilt:

Satz 94 Sei b N 0 und p N eine Primzahl. Dann gilt: 5.6 Satz von Fermat Satz 94 Sei b N 0 und p N eine Primzahl. Dann gilt: b p b mod p, (falls b 0 mod p : b p 1 1 mod p) (gemeint ist: die Gleichung b p = b gilt modulo p) Diskrete Strukturen 5.6 Satz von

Mehr

Kombinatorik. Dr. Lucia Draque Penso. Universität Ulm. Dr. Lucia Draque Penso (Universität Ulm) Kombinatorik 1 / 19

Kombinatorik. Dr. Lucia Draque Penso. Universität Ulm. Dr. Lucia Draque Penso (Universität Ulm) Kombinatorik 1 / 19 Kombinatorik Dr. Lucia Draque Penso Universität Ulm Dr. Lucia Draque Penso (Universität Ulm) Kombinatorik 1 / 19 Fünfzehnte Vorlesung Dr. Lucia Draque Penso (Universität Ulm) Kombinatorik 2 / 19 Definition

Mehr

3. Operatoren und Ausdrücke

3. Operatoren und Ausdrücke 3. Operatoren und Ausdrücke Ausdruck (expression): Verarbeitungsvorschrift zur Ermittlung eines Wertes besteht aus Operanden und Operatoren wichtigste Ausdrücke: arithmetische und logische (Boole'sche)

Mehr

Algorithmen und Datenstrukturen 05

Algorithmen und Datenstrukturen 05 25. November 2011 1 Besprechung Blatt 4 Fragen 2 O-Kalkül Allgemein Wichtige Formeln Beispiele 3 Überläufe und Bitweise Operationen Erkennen von Variablenüberläufen Bitweise Operationen 4 Vorbereitung

Mehr

Stochastik für Informatik

Stochastik für Informatik Stochastik für Informatik Von Universitätsprofessor Dr. Peter Naeve Statistik und Informatik Fakultät für Wirtschaftswissenschaften Universität Bielefeld R. Oldenbourg Verlag München Wien Inhaltsverzeichnis

Mehr

4. Zahlendarstellungen

4. Zahlendarstellungen Bin are Zahlendarstellungen Binäre Darstellung ("Bits" aus {0, 1) 4. Zahlendarstellungen bn bn 1... b1 b0 entspricht der Zahl bn 2n + + b1 2 + b0 Wertebereich der Typen int, float und double Gemischte

Mehr

Grundlagen der Monte-Carlo-Simulation

Grundlagen der Monte-Carlo-Simulation Grundlagen der Monte-Carlo-Simulation Prof. Dr. V. Schmidt und S. Luck j 8. November 2007 page 2 Contents Motivation Erzeugung von SPZZ Software Transformation von SPZZ page 3 Motivation Motivation fur

Mehr

Probabilistische Algorithmen Zufallszahlen - Monte Carlo - Genetische Programmierung

Probabilistische Algorithmen Zufallszahlen - Monte Carlo - Genetische Programmierung Probabilistische Algorithmen Zufallszahlen - Monte Carlo - Genetische Programmierung 25. Mai 2009 Inhaltsverzeichnis Pseudozufallszahlen Kongruenzmethode Monte-Carlo-Algorithmen Bsp Primzahltest Genetische

Mehr

Einheit Datentypen in der Programmiersprache C Schwerpunkt: Elementare (arithmetische) Datentypen

Einheit Datentypen in der Programmiersprache C Schwerpunkt: Elementare (arithmetische) Datentypen Einheit Datentypen in der Programmiersprache C Schwerpunkt: Elementare (arithmetische) Datentypen Kurs C/C++ Programmierung, WS 2008/2009 Dipl.Inform. R. Spurk Arbeitsgruppe Programmierung FR 6.2 Informatik

Mehr

Einführung in die Informatik I

Einführung in die Informatik I Einführung in die Informatik I Das Rechnen in Zahlensystemen zur Basis b=2, 8, 10 und 16 Prof. Dr. Nikolaus Wulff Zahlensysteme Neben dem üblichen dezimalen Zahlensystem zur Basis 10 sind in der Informatik

Mehr

Die umgekehrte Richtung

Die umgekehrte Richtung Die umgekehrte Richtung Satz 95 Sei n N, n 2. Dann gilt: b n 1 1 mod n für alle b Z n \ {0} = n ist prim. Beweis: [durch Widerspruch] Annahme: r n für ein r N, r > 1. Dann also r n 1 1 (r mod n) n 1 1

Mehr

N Bit Darstellung von Gleitkommazahlen

N Bit Darstellung von Gleitkommazahlen N Bit Darstellung von Gleitkommazahlen Normalisierte, wissenschaftliche Darstellung zur Basis 2. Beispiel: Allgemein: Sign and Magnitude Darstellung für beispielsweise 32 Bits: (s=0 für + und s=1 für )

Mehr

Lösung der Zusatzaufgabe

Lösung der Zusatzaufgabe Lösung der Zusatzaufgabe Erweitern Sie lnkng() um einen Parameter, so dass dass die Anzahl der zurückzugebenden Parameter wählbar ist. Lösung: lnkng

Mehr

Bemerkung: der goldene Schnitt ϕ ist die positive Lösung der Gleichung: x 2 = 1 + x

Bemerkung: der goldene Schnitt ϕ ist die positive Lösung der Gleichung: x 2 = 1 + x Rekursive Definition der Fibonacci-Zahlen Erste Werte f 0 = 0, f 1 = 1, f n = f n 1 + f n 2 (n 2) n 0 1 2 3 4 5 6 7 8 9 10... 25... f n 0 1 1 2 3 5 8 13 21 34 55... 75025... Exakte Formel (de Moivre, 1718)

Mehr