You are on page 1of 5

University POLITEHNICA of Bucharest Faculty of Engineering in Foreign Languages

SUBJECT DATASHEET

IDENTIFICATION DATA Discipline: Discrete Mathematics Lecturer: Prof.dr.mat Mircea OLTEANU Type: fundamental knowledge Lectures length: 28 hours Applications length: 14 hours seminar Individual study hours: 36 hours Number of credit points: 3 Semester: 1 Package: Compulsory

Course description The subject is an introduction to discrete mathematical techniques for solving problems in the field of computing and electrical engineering. The course contains basic principles from areas such as sets, relations and functions, dynamical systems, logic, proof methods, recursion, Boolean algebras (fundamental to the design of computer logic circuits and for understanding data representation in programming languages), Deterministic and non Deterministic Finite Automata. Prerequisite(s) & Corequisite(s): As a course of the first semester, it is supposed the students be able to apply the usual elementary notions such as sets, sets of numbers, functions (generalities) ; all these are covered in the college. SPECIFIC COMPETENCIES (within the competence range of the academic training programme) Knowledge of the mathematical basis and of theoretical computer science for understanding and designing information systems Textbook(s) and web materials:

M. Arbib, J. Kfoury, R.N. Moll A basis for theoretical computer science, Springer Verlag, 1981. W.S. Brainerd, I.H. Landweber Theory of computation, Wiley Int., 1974 Lewis, Harry R, C. Papadimitriou Elements of the theory of computation, Prentice Hall, Eng. Cliffs, N.J. 1981. H-O Peitgen H. Jurgens, D. Saupe Chaos and Fractals-new frontiers of science Springer Verlag, 1992. S. Rudeanu "Fundamentals of Boolean functions and equations", North-Holland, London, New York, 1974. Yu. A Schreider Equality, Resemblance and Order, Mir Publisher, 1974 W.A. Wulf, Mary Shaw, P.N. Hilfinger, I. Flon Fundamental Structures of Computer Science, Addison Wesley, 1981 O. Stanasila , E. Bistriceanu: Matematica Discreta, Matrix Rom , 1996. M. Olteanu Lectures on Boolean Functions and Equations, Ed Printech, 2000. M. Olteanu An Introduction to Relations, Graphs and Finite Automata, Ed. Printech 2004 Course objectives : The course is intended to train students to think algorithmically and to develop essential skills in computer science and electrical engineering. Prepare students for further studies in programming, databases, system hardware and software applications, the analysis of networks and internet. After completing the course, students should be able to: apply the basic properties of set theory, relations and functions; apply the basic notions of graph theory and trees to data structures; understand the principles of Boolean logic, apply the canonical forms of Boolean functions to digital logic circuits, solve Boolean equations and inequalities; use the ideas of mathematical induction to recursively defined structures; determine the language accepted by a finite automaton; apply the equivalence of deterministic and nondeterministic finite automata to design a deterministic finite automaton that accepts an initial (given) language. Topics covered: Contents 1. Sets, Relations and Functions (8 h) Basic operations with sets Relations (reflexivity, symmetry, antisymmetry, transitivity)

2. 3.

Functions Cardinality, countable sets Induction and recursion. Elementary notions on discrete dynamical systems ( orbits, periodic points, the logistic map f(x)= x(1-x) ). Boolean Algebras (6 h) Boolean Calculus (definitions, principle of duality, order, De Morgan laws, finite Boolean Algebras) Boolean Functions (canonical forms, simple Boolean functions, the range of a Boolean function) Boolean Equations and Inequalities (the equations in one and several unknowns, consistency conditions, the method of successive eliminations) Graph Theory (6 h) Directed graphs (equivalence of digraphs, paths, Hamiltonian path, minimal path, the adjacent matrix) Undirected graphs ( cycles, connected components, the cyclomatic number).

4.

Alphabets, Languages , Finite Automata and Turing Machines(8 h) Alphabets and Languages (definitions, operations with strings, operations with languages: concatenation, Kleene star, regular expressions) Deterministic and non deterministic Finite Automata (definitions, the graph representation, deterministic and nondeterministic evolutions, the accepted language, equivalent automata) The equivalence between deterministic and nondeterministic finite automata (the algorithm which associates to each nondeterministic finite automaton an equivalent deterministic finite automaton, applications to the design of deterministic finite automata) Turing Machines: definitions, elementary properties and examples.

Seminar: 14h The main goal of the seminary is to help the students to understand and to apply the notions and results covered by the course lectures. The seminary lessons will closely follow the course, completing each lecture with examples. Each course lecture will contain solved exercises and homework. In the seminary, we first discuss the solved exercises of the previous course lecture and then solve the homework. The number of hours of seminaries for each chapter:

Ch1: 4h, Ch2: 3h, Ch3: 3h, Ch4:4h. Cap1: 4ore, Cap2: 3 hours, Cap3: 3 hours, Cap4: 4 hours. Project: The students are encouraged to prepare projects which are closely related to the main themes of the course. Each project is rewarded by 1 point added to the final mark. Each project should contain theoretical backgrounds and should be completed by a computer application. Below there are several themes; the list is open to other students propositions. 1. Discrete dynamical systems; fractals 2. Boolean Functions and Equations 3. Algorithms on graphs. 4. The design of deterministic finite automata. Grading: Partial examination (3 points) + Homeworks and Seminary activities (3 points) + Final examination (4 points) = 10 points. The projects are not necessary to graduate, but each is rewarded by 1 point added to the final mark. To graduate: minimum 5 points. Professional significance:This course provides a broad survey of many of the mathematical tools necessary for further study in computer science and electrical engineering, centering on basic concepts of mathematics such as sets, relations, logic, algorithms and proofs. After completing the course, students should be able to: Demonstrate ability to think critically and algorithmically. Formulate and solve certain problems in terms of discrete states and/or discrete time. Represent problems in Computer Science and Electrical Engineering by abstract mathematical structures to analyze and solve them easily. Apply the basic properties of set theory, relations, functions and discrete dynamical systems. Apply the basic notions of graph theory and trees to data structures. Use the ideas of mathematical induction to recursively defined structures. Determine the language accepted by a finite automaton. Apply the equivalence of deterministic and nondeterministic finite automata to design a deterministic finite automaton that accepts an initial (given) language. TENURED PROFESSOR

CHAIR

Prof.dr.mat Mircea OLTEANU

You might also like