What are you going to learn?
Content
Apply the properties of relations, functions, and sequences to complete operations on discrete structures such as sets, functions, relations, and sequences. Verify the correctness of an argument using propositional logic, predicate logic, and truth tables. Construct mathematical proofs using counter-examples, direct proofs, proof by contrapositive, proof by contradiction, case analysis, and mathematical induction. Evaluate Boolean functions and simplify expressions using the properties of Boolean algebra. Apply counting techniques and combinatorics to determine discrete probability. Model relationships using graphs and trees. Model using graphs, directed graphs and trees, basic concepts, properties and definitions. Combinations, permutations. Model computer systems using FSM.
Chapter 1. Logic
-
Statements and logical Connectives. Truth Tables
-
Predicates Logics and Quantifiers
-
Proof Techniques
-
Introduction. Notation
-
Operations
-
Denumerability
Chapter 2. Sets
Chapter 3. Relations and Functions
-
Binary Relations
-
Ordering
-
Functions
Chapter 4. Combinatorics
-
Counting Principles
-
Sampling and Selecting
-
Permutations and Combinations
Chapter 5. Graphs
-
Introduction
-
Graphs Terminology
-
Directed and Undirected Graphs
-
Trees
-
Digraphs and Connectivity Problems
Chapter 6. Boolean Algebra and Computer Logic
-
Introduction
-
Logic Circuits. Gates
-
Combinational Circuits
-
Karnaugh Maps
Chapter 7. Algebraic Structures
-
Definition
-
Smigroups, Monoids
-
Groups
-
Applications to Error Correcting Codes
Chapter 8. Finite State Machines (FSM)
-
Definition
-
State Tables and Graphs
-
FSM as Transducers and Recognizers
-
Discussion of Limitations of FSM
-
Introduction to Formal Languages
Bibliography
-
Gersting, J L. Mathematical Structures for Computers Science. 7th ed. W. H. Freeman and Company, 2014.
-
Rosen, K. Discrete Mathematics and its Applications. 7th. Ed. McGraw-Hill, 2007.