### Applied Discrete Mathematics and Cryptography

#### Monte Carlo Methods and Pseudorandom Numbers

Monte Carlo methods are a broad class of algorithms using random sampling to obtain numerical results. An example is the approximation of a (higher-dimensional) integral by the average function value over a set of randomly chosen points. In the computational practice of Monte Carlo methods, the required random numbers and random points are actually generated by the computer in a deterministic subroutine. In this case of deterministic generation, we speak of pseudorandom numbers. The quality of pseudorandom numbers depends on their applications. For example, we need different numbers for numerical integration than for cryptographic applications. For the first application uniform distribution is the most desirable feature whereas for the latter we need unpredictable sequences of numbers.
For an introduction to this area see [1, Chapters 4 and 5]. Contemporary expository treatments of Monte Carlo methods can be found in the books of Dick and Pillichshammer [2], Leobacher and Pillichshammer [3], and Niederreiter [4].

[1] H. Niederreiter, A. Winterhof, Applied Number Theory. Springer (2015).
[2] J. Dick and F. Pillichshammer, Digital Nets and Sequences: Discrepancy Theory and Quasi-Monte Carlo Integration, Cambridge University Press, Cambridge, 2010.
[3] G. Leobacher and F. Pillichshammer, Introduction to Quasi-Monte Carlo Integration and Applications, Birkhhäuser and Springer International, Heidelberg, 2014.
[4] H. Niederreiter, Random Number Generation and Quasi-Monte Carlo Methods, SIAM, Philadelphia, 1992.
^ top

#### Cryptology

Cryptology in the modern sense is the theory of data security and data integrity. Cryptology as a practical craft can be traced back several thousand years as it was already used in one form or other in the ancient civilizations of Egypt, Mesopotamia, China, Greece, and Rome.
A systematic account of the history of cryptology up to 1967 is given in the book of Kahn [1]. The more recent treatment by Singh [2] offers very stimulating reading. For a first course see [3, Chapter 2]. A milestone is the Handbook of Applied Cryptography edited by Menezes, van Oorschot, and Vanstone [4] which may be regarded as the encyclopedia of cryptography.

[1] D. Kahn, The Codebreakers, Macmillan Publishing Company, New York, 1967.
[2] S. Singh, The Code Book, Doubleday, New York, 1999.
[3] H. Niederreiter, A. Winterhof, Applied Number Theory. Springer (2015).
[4] A.J. Menezes, P.C. van Oorschot, and S.A. Vanstone, Handbook of Applied Cryptography, CRC Press, Boca Raton, FL, 1997.
^ top

#### Finite Fields

The theory of finite fields is not related to agriculture as the name may suggest, but an area of abstract algebra which is about as important as group theory and even much more important in view of applications such as cryptography, coding theory, and wireless communication.
For an introduction to the theory of finite fields see [1]. The Handbook of Finite Fields [2] gives a complete account of the state-of- the-art theoretical and applied topics in finite fields.

[1] R. Lidl and H. Niederreiter, Introduction to Finite Fields and Their Applications, revised ed., Cambridge University Press, Cambridge, 1994.
[2] G.L. Mullen and D. Panario (eds.), Handbook of Finite Fields, CRC Press, Boca Raton, FL, 2013.
^ top

#### Applied Algebra and Number Theory

Number theory is the theory of integers and related mathematical structures and was called the Queen of Mathematics by Carl-Friedrich Gauss. It has always been considered a very beautiful field of mathematics. While only very few real-life applications were known in the past, today number theory can be found in everyday life: in supermarket bar code scanners, in GPS systems, in online banking, etc.
Modern algebra deals with abstract structures such as groups, rings, fields, modules, vector spaces, etc. Algebra is very beautiful as well and its application areas intersect highly with those of number theory. We mention only coding theory and cryptography.
For introductions to Applied Algebra and Applied Number Theory we refer to [1,2].

[1] R. Lidl, G. Pilz, Applied Abstract Algebra, Springer 1998.
[2] H. Niederreiter, A. Winterhof, Applied Number Theory. Springer (2015).
^ top

#### Coding Theory

Life is a comedy of errors, at least in the opinion of William Shakespeare, but you can make a concentrated effort to reduce the number of errors that you commit and thus increase the quality of your life. There is probably no panacea for all human errors and mishaps, but in the setting of communication technology, number theory and finite fields can help to prevent errors and ensure the quality of communication.
In simple terms, a coding scheme is an algorithm and/or a device for detecting and correcting transmission errors that occur in noisy channels. For a first course see for example [1, Chapter 3]. Milestones in the expository literature on coding theory are the book of MacWilliams and Sloane [2] and the Handbook of Coding Theory edited by Pless and Huffman [3].

[1] H. Niederreiter, A. Winterhof, Applied Number Theory. Springer (2015).
[2] F.J. MacWilliams and N.J.A. Sloane, The Theory of Error-Correcting Codes, North-Holland, Amsterdam, 1977.
[3] V.S. Pless and W.C. Huffman (eds.), Handbook of Coding Theory, Elsevier, Amsterdam, 1998.
^ top