How does the computer generate observations from various distributions specified after input analysis?

Size: px
Start display at page:

Download "How does the computer generate observations from various distributions specified after input analysis?"

Transcription

1 1

2 How does the computer generate observations from various distributions specified after input analysis? There are two main components to the generation of observations from probability distributions. 1. Random number generation.. Random variate generation.

3 Random number generation The generation of U(0,1) random variates (observations from Uniform (0,1) distribution). This serves as the foundation for the generation of observations from other distributions, which is called random variate generation. Random Number Generator is the term used to describe the procedure and parameters used to generate the U(0,1) observations. 3

4 Since the stream of random numbers generated is reproducible, random number generation procedures are also referred to as pseudo random number generators. The stream or seuence of numbers produced by a generator should pass statistical tests for randomness. An outside observer should not be able to tell the difference (statistically) between a stream of pseudo random numbers and an actual random number stream. 4

5 A pseudorandom process appears random, but isn t Pseudorandom seuences exhibit statistical randomness but generated by a deterministic process Pseudorandom seuences are easier to produce than a genuine random seuences Pseudorandom seuences can reproduce exactly the same numbers useful for testing and fixing software. 5

6 Random number generators typically compute the next number in the seuence from the previous number The first number in a seuence is called the seed to get a new seuence, supply a new seed (current machine time is useful) to repeat a seuence, repeat the seed 6

7 Desirable Attributes: Uniformity Independence Efficiency Replicability Long Cycle Length 7

8 Each random number R t is an independent sample drawn from a continuous uniform distribution between 0 and 1 1, 0 x 1 pdf: f(x) = 0, otherwise 8

9 9 1/1 4 1/ 3 1/ ) (1/ 3] / [ )] ( [ ) ( 1/ ] / [ ) ( x R E dx x R V x xdx R E x 0f(x) 1 PDF:

10 One early method the midsuare method (von Neumann and Metropolis 1940) Start with a four digit positive integer Z 0. Suare Z 0 to get an integer with up to eight digits (append zeros if less than eight). Take the middle four digits as the next four digit integer Z 1. Place a decimal point to the left of Z 1 to form the first U(0,1) observation. Repeat 10

11 MidSuare Example: X 0 = 718 (seed) X 0 = ==> R 1 = X 0 = (5811) = ==> R = etc. 11

12 Note: Cannot choose a seed that guarantees that the seuence will not degenerate and will have a long period. Also, zeros, once they appear, are carried in subseuent numbers. Ex1: X 0 = 5197 (seed) = ==> R 1 = = ==> R = Ex: X 0 = 4500 (seed) = ==> R 1 = = ==> R = X 0 X 1 X 0 X 1 1

13 The prior method does not work well. Degenerates to zero. What are good methods? Linear Congruential Generators (LCGs). Composite generators. Tausworthe generators. 13

14 Linear Congruential Generators (LCGs). A LCG generates a seuence of integers Z 1, Z, Z 3, using the following recursive formula, Z i ( az 1 i c) mod mod m is short for modulo m or the remainder when divided by m. m 14

15 Since the mod m operation is used, all Z i s will be between 0 and m-1. To get the U(0,1) random observations each Z i generated is divided by m. U 1 Z1 m Z m, U, So are the U i s really U(0,1) random observations? 15

16 Let m=63, a=, c=4 and Z 0 =19. Generate the first five U(0,1) observations. 16

17 i *Z i Z i U i i *Z i Z i U i i *Z i Z i U i i *Z i Z i U i

18 What will happen after the 63 rd number is generated? m, a, and c are the parameters of the random number generator. There can be an infinite number of different implementations of a LCG. The values used for m, a, and c determine whether the generator is good or bad. 18

19 The example LCG demonstrates cycling in the prior table. Since m=63, it can generate at most 63 numbers before it repeats the same seuence. This small random number generator has full period since it generates all possible (m=63) numbers before cycling. A long period (full if possible) is desirable since more observations can be generated before cycling. No gaps. 19

20 The example generator has full period but bad statistical properties (next slide). A good random number generator will have values for m, a, and c such that full or close to full period is obtained, as well as good statistical properties. Crystal Ball m = 31 1 a = c = 0 Period = 31 0

21 Theorem (Hull and Dobell 196) The LCG Z i = (az i-1 + c) mod m has full period if and only if the following three conditions hold. 1. The only positive integer that exactly divides both m and c is 1.. If is a prime number that divides m, then divides a If 4 divides m, then 4 divides a-1. The parameters of the LCG dictate the period length of the LCG as well as other properties of the numbers generated. 1

22 A generator that has the maximum possible period is called a full-period generator. Lower autocorrelations between successive numbers are preferable. Both generators have the same full period, but the first one has a correlation of 0.5 between x n-1 and x n, whereas the second one has a negligible correlation of less than -18.

23 Types of LCGs When c = 0, the LCG is called a multiplicative generator. When c 0, the LCG is called a mixed generator. Most LCGs implemented are multiplicative Can t have full period. How is m selected. A large period is desired m= 31 (based on a 3 bit word size). With m= 31 it has been proven that the period can be at most 9 (5% of the values are cycled and gaps may be present). 3

24 Multiplicative LCG: c=0 x i ax i1 mod m Two types: m k m k 4

25 Example: Using the multiplicative congruential method, find the period of the generator for a = 13, m = 6, and X 0 = 1,, 3, and 4. The solution is given in next slide. When the seed is 1 and 3, the seuence has period 16. However, a period of length eight is achieved when the seed is and a period of length four occurs when the seed is 4. 5

26 Period Determination Using Various seeds i X i X i X i X i

27 Maximum possible period k- Period achieved if multiplier a is of the form 8i± 3, and the initial seed is an odd integer One-fourth the maximum possible may not be too small Low order bits of random numbers obtained using multiplicative LCG's with m= k have a cyclic pattern. 7

28 8

29 9

30 When the modulus m is a prime number and a >1, the maximum period is m-1, no matter whether c=0 or not. The maximum period m-1 is obtained if and only if a is a primitive element modulo m. If m is prime then a is a primitive element modulo m (or primitive root of m) if and only if a n mod m 1 for n=1,, 3,,m-. Recommended. (Prime moduli are best in terms of seuence randomness.) 30

31 Example: x 3x i i1 mod31 Starting with a seed of x 0 =1: 1, 3, 9, 7, 19, 6, 16, 17, 0, 9, 5, 13, 8, 4, 10, 30, 8,, 4, 1, 5, 15, 14, 11,, 6, 18, 3, 7, 1, 1, The period is 30 3 is a primitive root of 31 With a multiplier of a = 5: 1, 5, 5, 1, The period is only 3 5 is not a primitive root of 31 Primitive roots of 31= 3,????????. 31

32 LCGs are a special case of the form Z i = g(z i-1, Z i-,...) (mod m), U i = Z i /m, for some function g Examples: g(z i-1 ) = az i-1 + c LCG g(z i-1, Z i-,..., Z i- ) = a 1 Z i-1 + a Z i a Z i- multiple recursive generator g(z i-1 ) = a'z i-1 + az i-1 + c uadratic CG g(z i-1, Z i- ) = Z i-1 + Z i- Fibonacci (bad) 3

33 Composite Generators Combine two (or more) individual generators in some way. Differencing LCGs Z 1i and Z i from LCGs with different moduli Let Z i = (Z 1i Z i ) (mod m); U i = Z i / m Very good statistical properties Very portable (micros, different languages) Wichmann/Hill Use three LCGs to get U 1i, U i, and U 3i seuences Let U i = fractional part of U 1i + U i + U 3i Long period, good statistics, portability 33

34 Originated in cryptography Can achieve very long periods Theoretical appeal: for properly chosen parameters, can prove that over a cycle, mean 1/ (as for true U(0,1)) Variance 1/1 (as for true U(0,1)) Autocorrelation 0 (as for true IID seuence) Define a seuence of binary digits B 1,B,..., by b i c jbi j mod 1 where c j = 0 or 1. j 34

35 Looks a bit like a generalization of LCG s. Let D = delay operator such that Db(n)=b(n+1) or Since in mod arithmetic subtraction is euivalent to addition, the preceding euation is euivalent to 35 mod ) ( ) ( ) ( ) ( i b c i b D c i b D c i D b mod c D c D c D mod c D c D c D mod c D c D c D

36 The polynomial on the left-hand side of this euation is called a characteristic polynomial and is traditionally written using x in place of D x c 1 1x cx c0 The period of a Tausworthe generator depends upon the characteristic polynomial. In particular, the period is the smallest positive integer n for which x n - 1 is divisible by the characteristic polynomial. The maximum possible period with a polynomial of order is - 1. The polynomials that give this period are called primitive polynomials. 36

37 Example: Consider the following polynomial: x 7 + x Using the D operator in place of x, we get or n or using the XOR operator or 7 D b( n) Substituting n-7 for n, we get b b n b b 3 D b( n) b( n) 7 b n 3 b n 0 0 mod 7 bn 3 bn 0 n n 7 bn 3 bn n n b n4 bn7 n mod 0,1,, 0,1,, 7,8,9, 37

38 Starting with b 0 = b 1 =... = b 6 = 1, we get the following bit seuence: b b b b b b b b b b b b b b b

39 The complete seuence is: Period = 17 or 7-1 bits The polynomial x 7 +x 3 +1 is a primitive polynomial. 39

40 A Tausworthe seuence can be easily generated in hardware using Linear-Feedback Shift Registers (LFSRs). For example, the polynomial x 5 + x results in the generator b n = b n- b n-5. This can be implemented using the LFSR shown in the Figure presented next slide. The circuit consists of six registers, each holding one bit. On every clock cycle, each register s content is shifted out, and the new content is determined by the input to the register. 40

41 Linear Feedback Shift Register: x 5 +x 3 +1 b n = b n- b n-5 This can be easily implemented using shift registers: 41

42 Generating U(0,1): Divide the seuence into successive groups of s bits and use the first l bits of each group as a binary fraction: x n = 0.b sn b sn+1 b sn+ b sn+3...b sn+l-1 Here, s is a constant greater than or eual to l and is relatively prime to -1. s l x n and x j for n j have no bits in common. Relative prime-ness guarantees a full period -1 for x n. 4

43 Example: b n = b n-4 b n-7 The period 7-1=17 l=8, s=8: x 0 = = x 1 = = x = = x 3 = = x 4 = = x 5 = =

44 List of Primitive Trinomials x + x + 1 x 3 + x + 1 x 4 + x + 1 x 5 + x + 1 x 6 + x + 1 x 7 + x + 1 x 7 + x x 9 + x x 10 + x x 11 + x + 1 x 15 + x + 1 x 15 + x x 15 + x x 17 + x x 17 + x x 17 + x x 18 + x x 0 + x x 1 + x + 1 x + x + 1 x 3 + x x 3 + x x 5 + x x 5 + x x 8 + x x 8 + x x 8 + x x 9 + x + 1 x 31 + x x 31 + x x 31 + x x 31 + x If x + x r + 1 is listed, then x + x -r +1 is also primitive. 44

45 Homework: Generate random numbers using the primitive polynomial x 5 +x +1. (use l=4) Generate the same seuence using LFSR. 45

How does the computer generate observations from various distributions specified after input analysis?

How does the computer generate observations from various distributions specified after input analysis? 1 How does the computer generate observations from various distributions specified after input analysis? There are two main components to the generation of observations from probability distributions.

More information

Independent Events. Two events are independent if knowing that one occurs does not change the probability of the other occurring

Independent Events. Two events are independent if knowing that one occurs does not change the probability of the other occurring Independent Events Two events are independent if knowing that one occurs does not change the probability of the other occurring Conditional probability is denoted P(A B), which is defined to be: P(A and

More information

CPSC 531: Random Numbers. Jonathan Hudson Department of Computer Science University of Calgary

CPSC 531: Random Numbers. Jonathan Hudson Department of Computer Science University of Calgary CPSC 531: Random Numbers Jonathan Hudson Department of Computer Science University of Calgary http://www.ucalgary.ca/~hudsonj/531f17 Introduction In simulations, we generate random values for variables

More information

B. Maddah ENMG 622 Simulation 11/11/08

B. Maddah ENMG 622 Simulation 11/11/08 B. Maddah ENMG 622 Simulation 11/11/08 Random-Number Generators (Chapter 7, Law) Overview All stochastic simulations need to generate IID uniformly distributed on (0,1), U(0,1), random numbers. 1 f X (

More information

2008 Winton. Review of Statistical Terminology

2008 Winton. Review of Statistical Terminology 1 Review of Statistical Terminology 2 Formal Terminology An experiment is a process whose outcome is not known with certainty The experiment s sample space S is the set of all possible outcomes. A random

More information

Review of Statistical Terminology

Review of Statistical Terminology Review of Statistical Terminology An experiment is a process whose outcome is not known with certainty. The experiment s sample space S is the set of all possible outcomes. A random variable is a function

More information

Uniform random numbers generators

Uniform random numbers generators Uniform random numbers generators Lecturer: Dmitri A. Moltchanov E-mail: moltchan@cs.tut.fi http://www.cs.tut.fi/kurssit/tlt-2707/ OUTLINE: The need for random numbers; Basic steps in generation; Uniformly

More information

CSCE 564, Fall 2001 Notes 6 Page 1 13 Random Numbers The great metaphysical truth in the generation of random numbers is this: If you want a function

CSCE 564, Fall 2001 Notes 6 Page 1 13 Random Numbers The great metaphysical truth in the generation of random numbers is this: If you want a function CSCE 564, Fall 2001 Notes 6 Page 1 13 Random Numbers The great metaphysical truth in the generation of random numbers is this: If you want a function that is reasonably random in behavior, then take any

More information

Uniform Random Number Generators

Uniform Random Number Generators JHU 553.633/433: Monte Carlo Methods J. C. Spall 25 September 2017 CHAPTER 2 RANDOM NUMBER GENERATION Motivation and criteria for generators Linear generators (e.g., linear congruential generators) Multiple

More information

Slides 3: Random Numbers

Slides 3: Random Numbers Slides 3: Random Numbers We previously considered a few examples of simulating real processes. In order to mimic real randomness of events such as arrival times we considered the use of random numbers

More information

Generating Uniform Random Numbers

Generating Uniform Random Numbers 1 / 43 Generating Uniform Random Numbers Christos Alexopoulos and Dave Goldsman Georgia Institute of Technology, Atlanta, GA, USA March 1, 2016 2 / 43 Outline 1 Introduction 2 Some Generators We Won t

More information

EECS150 - Digital Design Lecture 21 - Design Blocks

EECS150 - Digital Design Lecture 21 - Design Blocks EECS150 - Digital Design Lecture 21 - Design Blocks April 3, 2012 John Wawrzynek Spring 2012 EECS150 - Lec21-db3 Page 1 Fixed Shifters / Rotators fixed shifters hardwire the shift amount into the circuit.

More information

Pseudo-Random Numbers Generators. Anne GILLE-GENEST. March 1, Premia Introduction Definitions Good generators...

Pseudo-Random Numbers Generators. Anne GILLE-GENEST. March 1, Premia Introduction Definitions Good generators... 14 pages 1 Pseudo-Random Numbers Generators Anne GILLE-GENEST March 1, 2012 Contents Premia 14 1 Introduction 2 1.1 Definitions............................. 2 1.2 Good generators..........................

More information

Fault Tolerance & Reliability CDA Chapter 2 Cyclic Polynomial Codes

Fault Tolerance & Reliability CDA Chapter 2 Cyclic Polynomial Codes Fault Tolerance & Reliability CDA 5140 Chapter 2 Cyclic Polynomial Codes - cylic code: special type of parity check code such that every cyclic shift of codeword is a codeword - for example, if (c n-1,

More information

Generating Uniform Random Numbers

Generating Uniform Random Numbers 1 / 41 Generating Uniform Random Numbers Christos Alexopoulos and Dave Goldsman Georgia Institute of Technology, Atlanta, GA, USA 10/13/16 2 / 41 Outline 1 Introduction 2 Some Lousy Generators We Won t

More information

Systems Simulation Chapter 7: Random-Number Generation

Systems Simulation Chapter 7: Random-Number Generation Systems Simulation Chapter 7: Random-Number Generation Fatih Cavdur fatihcavdur@uludag.edu.tr April 22, 2014 Introduction Introduction Random Numbers (RNs) are a necessary basic ingredient in the simulation

More information

Algorithms and Networking for Computer Games

Algorithms and Networking for Computer Games Algorithms and Networking for Computer Games Chapter 2: Random Numbers http://www.wiley.com/go/smed What are random numbers good for (according to D.E. Knuth) simulation sampling numerical analysis computer

More information

Cryptography Lecture 3. Pseudorandom generators LFSRs

Cryptography Lecture 3. Pseudorandom generators LFSRs Cryptography Lecture 3 Pseudorandom generators LFSRs Remember One Time Pad is ideal With OTP you need the same transmission capacity via an already secure channel for the key as you can then secure via

More information

Stream Ciphers. Çetin Kaya Koç Winter / 20

Stream Ciphers. Çetin Kaya Koç   Winter / 20 Çetin Kaya Koç http://koclab.cs.ucsb.edu Winter 2016 1 / 20 Linear Congruential Generators A linear congruential generator produces a sequence of integers x i for i = 1,2,... starting with the given initial

More information

Finite Fields. SOLUTIONS Network Coding - Prof. Frank H.P. Fitzek

Finite Fields. SOLUTIONS Network Coding - Prof. Frank H.P. Fitzek Finite Fields In practice most finite field applications e.g. cryptography and error correcting codes utilizes a specific type of finite fields, namely the binary extension fields. The following exercises

More information

Generating Uniform Random Numbers

Generating Uniform Random Numbers 1 / 44 Generating Uniform Random Numbers Christos Alexopoulos and Dave Goldsman Georgia Institute of Technology, Atlanta, GA, USA 10/29/17 2 / 44 Outline 1 Introduction 2 Some Lousy Generators We Won t

More information

Linear Feedback Shift Registers (LFSRs) 4-bit LFSR

Linear Feedback Shift Registers (LFSRs) 4-bit LFSR Linear Feedback Shift Registers (LFSRs) These are n-bit counters exhibiting pseudo-random behavior. Built from simple shift-registers with a small number of xor gates. Used for: random number generation

More information

UNIT 5:Random number generation And Variation Generation

UNIT 5:Random number generation And Variation Generation UNIT 5:Random number generation And Variation Generation RANDOM-NUMBER GENERATION Random numbers are a necessary basic ingredient in the simulation of almost all discrete systems. Most computer languages

More information

EECS Components and Design Techniques for Digital Systems. Lec 26 CRCs, LFSRs (and a little power)

EECS Components and Design Techniques for Digital Systems. Lec 26 CRCs, LFSRs (and a little power) EECS 150 - Components and esign Techniques for igital Systems Lec 26 CRCs, LFSRs (and a little power) avid Culler Electrical Engineering and Computer Sciences University of California, Berkeley http://www.eecs.berkeley.edu/~culler

More information

Topics in Computer Mathematics

Topics in Computer Mathematics Random Number Generation (Uniform random numbers) Introduction We frequently need some way to generate numbers that are random (by some criteria), especially in computer science. Simulations of natural

More information

EECS150 - Digital Design Lecture 26 Error Correction Codes, Linear Feedback Shift Registers (LFSRs)

EECS150 - Digital Design Lecture 26 Error Correction Codes, Linear Feedback Shift Registers (LFSRs) EECS150 - igital esign Lecture 26 Error Correction Codes, Linear Feedback Shift Registers (LFSRs) Nov 21, 2002 John Wawrzynek Fall 2002 EECS150 Lec26-ECC Page 1 Outline Error detection using parity Hamming

More information

Pseudo-Random Generators

Pseudo-Random Generators Pseudo-Random Generators Why do we need random numbers? Simulation Sampling Numerical analysis Computer programming (e.g. randomized algorithm) Elementary and critical element in many cryptographic protocols

More information

Generating Random Variables

Generating Random Variables Generating Random Variables These slides are created by Dr. Yih Huang of George Mason University. Students registered in Dr. Huang's courses at GMU can make a single machine-readable copy and print a single

More information

Pseudo-Random Generators

Pseudo-Random Generators Pseudo-Random Generators Topics Why do we need random numbers? Truly random and Pseudo-random numbers. Definition of pseudo-random-generator What do we expect from pseudorandomness? Testing for pseudo-randomness.

More information

Topics. Pseudo-Random Generators. Pseudo-Random Numbers. Truly Random Numbers

Topics. Pseudo-Random Generators. Pseudo-Random Numbers. Truly Random Numbers Topics Pseudo-Random Generators Why do we need random numbers? Truly random and Pseudo-random numbers. Definition of pseudo-random-generator What do we expect from pseudorandomness? Testing for pseudo-randomness.

More information

MATH 2112/CSCI 2112, Discrete Structures I Winter 2007 Toby Kenney Homework Sheet 5 Hints & Model Solutions

MATH 2112/CSCI 2112, Discrete Structures I Winter 2007 Toby Kenney Homework Sheet 5 Hints & Model Solutions MATH 11/CSCI 11, Discrete Structures I Winter 007 Toby Kenney Homework Sheet 5 Hints & Model Solutions Sheet 4 5 Define the repeat of a positive integer as the number obtained by writing it twice in a

More information

Statistics, Data Analysis, and Simulation SS 2013

Statistics, Data Analysis, and Simulation SS 2013 Mainz, May 2, 2013 Statistics, Data Analysis, and Simulation SS 2013 08.128.730 Statistik, Datenanalyse und Simulation Dr. Michael O. Distler 2. Random Numbers 2.1 Why random numbers:

More information

Clock Arithmetic. 1. If it is 9 o clock and you get out of school in 4 hours, when do you get out of school?

Clock Arithmetic. 1. If it is 9 o clock and you get out of school in 4 hours, when do you get out of school? Clock Arithmetic We are going to learn all about clock addition and the relationship to remainders when you divide numbers. 1 Standard Clock Addition 1. If it is 9 o clock and you get out of school in

More information

Outline. EECS Components and Design Techniques for Digital Systems. Lec 18 Error Coding. In the real world. Our beautiful digital world.

Outline. EECS Components and Design Techniques for Digital Systems. Lec 18 Error Coding. In the real world. Our beautiful digital world. Outline EECS 150 - Components and esign Techniques for igital Systems Lec 18 Error Coding Errors and error models Parity and Hamming Codes (SECE) Errors in Communications LFSRs Cyclic Redundancy Check

More information

A Repetition Test for Pseudo-Random Number Generators

A Repetition Test for Pseudo-Random Number Generators Monte Carlo Methods and Appl., Vol. 12, No. 5-6, pp. 385 393 (2006) c VSP 2006 A Repetition Test for Pseudo-Random Number Generators Manuel Gil, Gaston H. Gonnet, Wesley P. Petersen SAM, Mathematik, ETHZ,

More information

Random Number Generators

Random Number Generators 1/18 Random Number Generators Professor Karl Sigman Columbia University Department of IEOR New York City USA 2/18 Introduction Your computer generates" numbers U 1, U 2, U 3,... that are considered independent

More information

Random Number Generation. CS1538: Introduction to simulations

Random Number Generation. CS1538: Introduction to simulations Random Number Generation CS1538: Introduction to simulations Random Numbers Stochastic simulations require random data True random data cannot come from an algorithm We must obtain it from some process

More information

Chapter 9 Mathematics of Cryptography Part III: Primes and Related Congruence Equations

Chapter 9 Mathematics of Cryptography Part III: Primes and Related Congruence Equations Chapter 9 Mathematics of Cryptography Part III: Primes and Related Congruence Equations Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 9.1 Chapter 9 Objectives

More information

Continuing discussion of CRC s, especially looking at two-bit errors

Continuing discussion of CRC s, especially looking at two-bit errors Continuing discussion of CRC s, especially looking at two-bit errors The definition of primitive binary polynomials Brute force checking for primitivity A theorem giving a better test for primitivity Fast

More information

Maximum Length Linear Feedback Shift Registers

Maximum Length Linear Feedback Shift Registers Maximum Length Linear Feedback Shift Registers (c) Peter Fischer Institute for Computer Engineering (ZITI) Heidelberg University, Germany email address: peterfischer@zitiuni-heidelbergde February 23, 2018

More information

Chapter 7 Random Numbers

Chapter 7 Random Numbers Chapter 7 Random Numbers February 15, 2010 7 In the following random numbers and random sequences are treated as two manifestations of the same thing. A series of random numbers strung together is considered

More information

MATH Dr. Halimah Alshehri Dr. Halimah Alshehri

MATH Dr. Halimah Alshehri Dr. Halimah Alshehri MATH 1101 haalshehri@ksu.edu.sa 1 Introduction To Number Systems First Section: Binary System Second Section: Octal Number System Third Section: Hexadecimal System 2 Binary System 3 Binary System The binary

More information

Classification of Finite Fields

Classification of Finite Fields Classification of Finite Fields In these notes we use the properties of the polynomial x pd x to classify finite fields. The importance of this polynomial is explained by the following basic proposition.

More information

Chapter 4: Monte Carlo Methods. Paisan Nakmahachalasint

Chapter 4: Monte Carlo Methods. Paisan Nakmahachalasint Chapter 4: Monte Carlo Methods Paisan Nakmahachalasint Introduction Monte Carlo Methods are a class of computational algorithms that rely on repeated random sampling to compute their results. Monte Carlo

More information

Chapter 4 Mathematics of Cryptography

Chapter 4 Mathematics of Cryptography Chapter 4 Mathematics of Cryptography Part II: Algebraic Structures Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 4.1 Chapter 4 Objectives To review the concept

More information

Mathematical Foundations of Cryptography

Mathematical Foundations of Cryptography Mathematical Foundations of Cryptography Cryptography is based on mathematics In this chapter we study finite fields, the basis of the Advanced Encryption Standard (AES) and elliptical curve cryptography

More information

Information redundancy

Information redundancy Information redundancy Information redundancy add information to date to tolerate faults error detecting codes error correcting codes data applications communication memory p. 2 - Design of Fault Tolerant

More information

PSEUDORANDOM BINARY SEQUENCES GENERATOR

PSEUDORANDOM BINARY SEQUENCES GENERATOR PSEUDORANDOM BINARY SEQUENCES GENERATOR 1. Theoretical considerations White noise is defined as a random process with power spectral density that is constant in an infinite frequency band. Quasi-white

More information

3 The fundamentals: Algorithms, the integers, and matrices

3 The fundamentals: Algorithms, the integers, and matrices 3 The fundamentals: Algorithms, the integers, and matrices 3.4 The integers and division This section introduces the basics of number theory number theory is the part of mathematics involving integers

More information

CSE 20 DISCRETE MATH. Winter

CSE 20 DISCRETE MATH. Winter CSE 20 DISCRETE MATH Winter 2017 http://cseweb.ucsd.edu/classes/wi17/cse20-ab/ Today's learning goals Determine whether a relation is an equivalence relation by determining whether it is Reflexive Symmetric

More information

B.N.Bandodkar College of Science, Thane. Random-Number Generation. Mrs M.J.Gholba

B.N.Bandodkar College of Science, Thane. Random-Number Generation. Mrs M.J.Gholba B.N.Bandodkar College of Science, Thane Random-Number Generation Mrs M.J.Gholba Properties of Random Numbers A sequence of random numbers, R, R,., must have two important statistical properties, uniformity

More information

1 Introduction. 2 Calculation of the output signal

1 Introduction. 2 Calculation of the output signal (c) Peter Fischer, 2006-2013 Institute for Computer Engineering (ZITI), Heidelberg University, Germany email address: peter.fischer@ziti.uni-heidelberg.de In this text I will show how the period of the

More information

Sources of randomness

Sources of randomness Random Number Generator Chapter 7 In simulations, we generate random values for variables with a specified distribution Ex., model service times using the exponential distribution Generation of random

More information

EECS150 - Digital Design Lecture 23 - FFs revisited, FIFOs, ECCs, LSFRs. Cross-coupled NOR gates

EECS150 - Digital Design Lecture 23 - FFs revisited, FIFOs, ECCs, LSFRs. Cross-coupled NOR gates EECS150 - Digital Design Lecture 23 - FFs revisited, FIFOs, ECCs, LSFRs April 16, 2009 John Wawrzynek Spring 2009 EECS150 - Lec24-blocks Page 1 Cross-coupled NOR gates remember, If both R=0 & S=0, then

More information

Uniform Random Binary Floating Point Number Generation

Uniform Random Binary Floating Point Number Generation Uniform Random Binary Floating Point Number Generation Prof. Dr. Thomas Morgenstern, Phone: ++49.3943-659-337, Fax: ++49.3943-659-399, tmorgenstern@hs-harz.de, Hochschule Harz, Friedrichstr. 57-59, 38855

More information

cse 311: foundations of computing Fall 2015 Lecture 11: Modular arithmetic and applications

cse 311: foundations of computing Fall 2015 Lecture 11: Modular arithmetic and applications cse 311: foundations of computing Fall 2015 Lecture 11: Modular arithmetic and applications arithmetic mod 7 a + 7 b = (a + b) mod 7 a 7 b = (a b) mod 7 5 6 0 1 2 4 3 + 0 1 2 3 4 5 6 0 0 1 2 3 4 5 6 1

More information

Number Theory. CSS322: Security and Cryptography. Sirindhorn International Institute of Technology Thammasat University CSS322. Number Theory.

Number Theory. CSS322: Security and Cryptography. Sirindhorn International Institute of Technology Thammasat University CSS322. Number Theory. CSS322: Security and Cryptography Sirindhorn International Institute of Technology Thammasat University Prepared by Steven Gordon on 29 December 2011 CSS322Y11S2L06, Steve/Courses/2011/S2/CSS322/Lectures/number.tex,

More information

Section 2.1: Lehmer Random Number Generators: Introduction

Section 2.1: Lehmer Random Number Generators: Introduction Section 21: Lehmer Random Number Generators: Introduction Discrete-Event Simulation: A First Course c 2006 Pearson Ed, Inc 0-13-142917-5 Discrete-Event Simulation: A First Course Section 21: Lehmer Random

More information

Frequency Domain Finite Field Arithmetic for Elliptic Curve Cryptography

Frequency Domain Finite Field Arithmetic for Elliptic Curve Cryptography Frequency Domain Finite Field Arithmetic for Elliptic Curve Cryptography Selçuk Baktır, Berk Sunar {selcuk,sunar}@wpi.edu Department of Electrical & Computer Engineering Worcester Polytechnic Institute

More information

4 Number Theory and Cryptography

4 Number Theory and Cryptography 4 Number Theory and Cryptography 4.1 Divisibility and Modular Arithmetic This section introduces the basics of number theory number theory is the part of mathematics involving integers and their properties.

More information

COMPUTER ARITHMETIC. 13/05/2010 cryptography - math background pp. 1 / 162

COMPUTER ARITHMETIC. 13/05/2010 cryptography - math background pp. 1 / 162 COMPUTER ARITHMETIC 13/05/2010 cryptography - math background pp. 1 / 162 RECALL OF COMPUTER ARITHMETIC computers implement some types of arithmetic for instance, addition, subtratction, multiplication

More information

cse 311: foundations of computing Fall 2015 Lecture 12: Primes, GCD, applications

cse 311: foundations of computing Fall 2015 Lecture 12: Primes, GCD, applications cse 311: foundations of computing Fall 2015 Lecture 12: Primes, GCD, applications n-bit unsigned integer representation Represent integer x as sum of powers of 2: If x = n 1 i=0 b i 2 i where each b i

More information

Q 2.0.2: If it s 5:30pm now, what time will it be in 4753 hours? Q 2.0.3: Today is Wednesday. What day of the week will it be in one year from today?

Q 2.0.2: If it s 5:30pm now, what time will it be in 4753 hours? Q 2.0.3: Today is Wednesday. What day of the week will it be in one year from today? 2 Mod math Modular arithmetic is the math you do when you talk about time on a clock. For example, if it s 9 o clock right now, then it ll be 1 o clock in 4 hours. Clearly, 9 + 4 1 in general. But on a

More information

EECS150 - Digital Design Lecture 27 - misc2

EECS150 - Digital Design Lecture 27 - misc2 EECS150 - Digital Design Lecture 27 - misc2 May 1, 2002 John Wawrzynek Spring 2002 EECS150 - Lec27-misc2 Page 1 Outline Linear Feedback Shift Registers Theory and practice Simple hardware division algorithms

More information

A field F is a set of numbers that includes the two numbers 0 and 1 and satisfies the properties:

A field F is a set of numbers that includes the two numbers 0 and 1 and satisfies the properties: Byte multiplication 1 Field arithmetic A field F is a set of numbers that includes the two numbers 0 and 1 and satisfies the properties: F is an abelian group under addition, meaning - F is closed under

More information

Lehmer Random Number Generators: Introduction

Lehmer Random Number Generators: Introduction Lehmer Random Number Generators: Introduction Revised version of the slides based on the book Discrete-Event Simulation: a first course LL Leemis & SK Park Section(s) 21, 22 c 2006 Pearson Ed, Inc 0-13-142917-5

More information

NUMBERS AND CODES CHAPTER Numbers

NUMBERS AND CODES CHAPTER Numbers CHAPTER 2 NUMBERS AND CODES 2.1 Numbers When a number such as 101 is given, it is impossible to determine its numerical value. Some may say it is five. Others may say it is one hundred and one. Could it

More information

Random number generation

Random number generation CE 391F April 4, 2013 ANNOUNCEMENTS Homework 3 due today Homework 4 coming... Announcements Webinar announcement Femke van Wageningen-Kessels from TU Delft will be giving a webinar titled Traffic Flow

More information

Elliptic Curves I. The first three sections introduce and explain the properties of elliptic curves.

Elliptic Curves I. The first three sections introduce and explain the properties of elliptic curves. Elliptic Curves I 1.0 Introduction The first three sections introduce and explain the properties of elliptic curves. A background understanding of abstract algebra is required, much of which can be found

More information

Topic Contents. Factoring Methods. Unit 3: Factoring Methods. Finding the square root of a number

Topic Contents. Factoring Methods. Unit 3: Factoring Methods. Finding the square root of a number Topic Contents Factoring Methods Unit 3 The smallest divisor of an integer The GCD of two numbers Generating prime numbers Computing prime factors of an integer Generating pseudo random numbers Raising

More information

Random Number Generation. Stephen Booth David Henty

Random Number Generation. Stephen Booth David Henty Random Number Generation Stephen Booth David Henty Introduction Random numbers are frequently used in many types of computer simulation Frequently as part of a sampling process: Generate a representative

More information

Q 1 Find the square root of 729. 6. Squares and Square Roots Q 2 Fill in the blank using the given pattern. 7 2 = 49 67 2 = 4489 667 2 = 444889 6667 2 = Q 3 Without adding find the sum of 1 + 3 + 5 + 7

More information

CSE 20: Discrete Mathematics

CSE 20: Discrete Mathematics Spring 2018 Summary So far: Today: Logic and proofs Divisibility, modular arithmetics Number Systems More logic definitions and proofs Reading: All of Chap. 1 + Chap 4.1, 4.2. Divisibility P = 5 divides

More information

Random number generators and random processes. Statistics and probability intro. Peg board example. Peg board example. Notes. Eugeniy E.

Random number generators and random processes. Statistics and probability intro. Peg board example. Peg board example. Notes. Eugeniy E. Random number generators and random processes Eugeniy E. Mikhailov The College of William & Mary Lecture 11 Eugeniy Mikhailov (W&M) Practical Computing Lecture 11 1 / 11 Statistics and probability intro

More information

CHAPTER 3. Congruences. Congruence: definitions and properties

CHAPTER 3. Congruences. Congruence: definitions and properties CHAPTER 3 Congruences Part V of PJE Congruence: definitions and properties Definition. (PJE definition 19.1.1) Let m > 0 be an integer. Integers a and b are congruent modulo m if m divides a b. We write

More information

( ) ( ) Monte Carlo Methods Interested in. E f X = f x d x. Examples:

( ) ( ) Monte Carlo Methods Interested in. E f X = f x d x. Examples: Monte Carlo Methods Interested in Examples: µ E f X = f x d x Type I error rate of a hypothesis test Mean width of a confidence interval procedure Evaluating a likelihood Finding posterior mean and variance

More information

Random number generators

Random number generators s generators Comp Sci 1570 Introduction to Outline s 1 2 s generator s The of a sequence of s or symbols that cannot be reasonably predicted better than by a random chance, usually through a random- generator

More information

Random numbers and generators

Random numbers and generators Chapter 2 Random numbers and generators Random numbers can be generated experimentally, like throwing dice or from radioactive decay measurements. In numerical calculations one needs, however, huge set

More information

Wednesday, February 21. Today we will begin Course Notes Chapter 5 (Number Theory).

Wednesday, February 21. Today we will begin Course Notes Chapter 5 (Number Theory). Wednesday, February 21 Today we will begin Course Notes Chapter 5 (Number Theory). 1 Return to Chapter 5 In discussing Methods of Proof (Chapter 3, Section 2) we introduced the divisibility relation from

More information

Math 131 notes. Jason Riedy. 6 October, Linear Diophantine equations : Likely delayed 6

Math 131 notes. Jason Riedy. 6 October, Linear Diophantine equations : Likely delayed 6 Math 131 notes Jason Riedy 6 October, 2008 Contents 1 Modular arithmetic 2 2 Divisibility rules 3 3 Greatest common divisor 4 4 Least common multiple 4 5 Euclidean GCD algorithm 5 6 Linear Diophantine

More information

Chapter 4 Finite Fields

Chapter 4 Finite Fields Chapter 4 Finite Fields Introduction will now introduce finite fields of increasing importance in cryptography AES, Elliptic Curve, IDEA, Public Key concern operations on numbers what constitutes a number

More information

Math 109 HW 9 Solutions

Math 109 HW 9 Solutions Math 109 HW 9 Solutions Problems IV 18. Solve the linear diophantine equation 6m + 10n + 15p = 1 Solution: Let y = 10n + 15p. Since (10, 15) is 5, we must have that y = 5x for some integer x, and (as we

More information

Cyclic codes: overview

Cyclic codes: overview Cyclic codes: overview EE 387, Notes 14, Handout #22 A linear block code is cyclic if the cyclic shift of a codeword is a codeword. Cyclic codes have many advantages. Elegant algebraic descriptions: c(x)

More information

Chapter 6. BCH Codes

Chapter 6. BCH Codes Chapter 6 BCH Codes Description of the Codes Decoding of the BCH Codes Outline Implementation of Galois Field Arithmetic Implementation of Error Correction Nonbinary BCH Codes and Reed-Solomon Codes Weight

More information

GF(2 m ) arithmetic: summary

GF(2 m ) arithmetic: summary GF(2 m ) arithmetic: summary EE 387, Notes 18, Handout #32 Addition/subtraction: bitwise XOR (m gates/ops) Multiplication: bit serial (shift and add) bit parallel (combinational) subfield representation

More information

Applied Cryptography and Computer Security CSE 664 Spring 2018

Applied Cryptography and Computer Security CSE 664 Spring 2018 Applied Cryptography and Computer Security Lecture 12: Introduction to Number Theory II Department of Computer Science and Engineering University at Buffalo 1 Lecture Outline This time we ll finish the

More information

Subquadratic space complexity multiplier for a class of binary fields using Toeplitz matrix approach

Subquadratic space complexity multiplier for a class of binary fields using Toeplitz matrix approach Subquadratic space complexity multiplier for a class of binary fields using Toeplitz matrix approach M A Hasan 1 and C Negre 2 1 ECE Department and CACR, University of Waterloo, Ontario, Canada 2 Team

More information

Lecture Notes. Advanced Discrete Structures COT S

Lecture Notes. Advanced Discrete Structures COT S Lecture Notes Advanced Discrete Structures COT 4115.001 S15 2015-01-13 Recap Divisibility Prime Number Theorem Euclid s Lemma Fundamental Theorem of Arithmetic Euclidean Algorithm Basic Notions - Section

More information

Adam Blank Spring 2017 CSE 311. Foundations of Computing I. * All slides are a combined effort between previous instructors of the course

Adam Blank Spring 2017 CSE 311. Foundations of Computing I. * All slides are a combined effort between previous instructors of the course Adam Blank Spring 2017 CSE 311 Foundations of Computing I * All slides are a combined effort between previous instructors of the course HW 3 De-Brief HW 3 De-Brief PROOFS! HW 3 De-Brief Proofs This is

More information

Stochastic Simulation of Communication Networks

Stochastic Simulation of Communication Networks Stochastic Simulation of Communication Networks Part 2 Amanpreet Singh (aps) Dr.-Ing Umar Toseef (umr) (@comnets.uni-bremen.de) Prof. Dr. C. Görg www.comnets.uni-bremen.de VSIM 2-1 Table of Contents 1

More information

Pseudo-random Number Generation. Qiuliang Tang

Pseudo-random Number Generation. Qiuliang Tang Pseudo-random Number Generation Qiuliang Tang Random Numbers in Cryptography The keystream in the one-time pad The secret key in the DES encryption The prime numbers p, q in the RSA encryption The private

More information

On the Primitivity of some Trinomials over Finite Fields

On the Primitivity of some Trinomials over Finite Fields On the Primitivity of some Trinomials over Finite Fields LI Yujuan & WANG Huaifu & ZHAO Jinhua Science and Technology on Information Assurance Laboratory, Beijing, 100072, P.R. China email: liyj@amss.ac.cn,

More information

MATH 115, SUMMER 2012 LECTURE 4 THURSDAY, JUNE 21ST

MATH 115, SUMMER 2012 LECTURE 4 THURSDAY, JUNE 21ST MATH 115, SUMMER 2012 LECTURE 4 THURSDAY, JUNE 21ST JAMES MCIVOR Today we enter Chapter 2, which is the heart of this subject. Before starting, recall that last time we saw the integers have unique factorization

More information

The New Largest Known Prime is 2 p 1 With p = Who Cares? Sam Wagstaff Computer Sciences and Mathematics.

The New Largest Known Prime is 2 p 1 With p = Who Cares? Sam Wagstaff Computer Sciences and Mathematics. The New Largest Known Prime is 2 p 1 With p = 74207281. Who Cares? Sam Wagstaff Computer Sciences and Mathematics November 10, 2016 Earlier in 2016, Cooper, Woltman, Kurowski, Blosser and GIMPS found this

More information

CSE 20 DISCRETE MATH. Fall

CSE 20 DISCRETE MATH. Fall CSE 20 DISCRETE MATH Fall 2017 http://cseweb.ucsd.edu/classes/fa17/cse20-ab/ Today's learning goals Determine whether a relation is an equivalence relation by determining whether it is Reflexive Symmetric

More information

cse 311: foundations of computing Spring 2015 Lecture 12: Primes, GCD, applications

cse 311: foundations of computing Spring 2015 Lecture 12: Primes, GCD, applications cse 311: foundations of computing Spring 2015 Lecture 12: Primes, GCD, applications casting out 3s Theorem: A positive integer n is divisible by 3 if and only if the sum of its decimal digits is divisible

More information

Chinese Remainder Theorem

Chinese Remainder Theorem Chinese Remainder Theorem Theorem Let R be a Euclidean domain with m 1, m 2,..., m k R. If gcd(m i, m j ) = 1 for 1 i < j k then m = m 1 m 2 m k = lcm(m 1, m 2,..., m k ) and R/m = R/m 1 R/m 2 R/m k ;

More information

ECEN 5022 Cryptography

ECEN 5022 Cryptography Elementary Algebra and Number Theory University of Colorado Spring 2008 Divisibility, Primes Definition. N denotes the set {1, 2, 3,...} of natural numbers and Z denotes the set of integers {..., 2, 1,

More information

Algebra for error control codes

Algebra for error control codes Algebra for error control codes EE 387, Notes 5, Handout #7 EE 387 concentrates on block codes that are linear: Codewords components are linear combinations of message symbols. g 11 g 12 g 1n g 21 g 22

More information

Assume that the follow string of bits constitutes one of the segments we which to transmit.

Assume that the follow string of bits constitutes one of the segments we which to transmit. Cyclic Redundancy Checks( CRC) Cyclic Redundancy Checks fall into a class of codes called Algebraic Codes; more specifically, CRC codes are Polynomial Codes. These are error-detecting codes, not error-correcting

More information