COURSE OBJECTIVES:
To extend student’s logical and mathematical maturity and ability to deal with abstraction.
To introduce most of the basic terminologies used in computer science courses and
application of ideas to solve practical problems.
To understand the basic concepts of combinatorics and graph theory.
To familiarize the applications of algebraic structures.
To understand the concepts and significance of lattices and boolean algebra which are
widely used in computer science and engineering.
UNIT I LOGIC AND PROOFS
Propositional logic – Propositional equivalences – Predicates and quantifiers – Nested quantifiers –
Rules of inference – Introduction to proofs – Proof methods and strategy.
UNIT II COMBINATORICS
Mathematical induction – Strong induction and well ordering – The basics of counting – The
pigeonhole principle – Permutations and combinations – Recurrence relations – Solving linear
recurrence relations – Generating functions – Inclusion and exclusion principle and its applications.
UNIT III GRAPHS
Graphs and graph models – Graph terminology and special types of graphs – Matrix representation
of graphs and graph isomorphism – Connectivity – Euler and Hamilton paths.
UNIT IV ALGEBRAIC STRUCTURES
Algebraic systems – Semi groups and monoids – Groups – Subgroups – Homomorphism’s – Normal
subgroup and cosets – Lagrange’s theorem – Definitions and examples of Rings and Fields.
UNIT V LATTICES AND BOOLEAN ALGEBRA
Partial ordering – Posets – Lattices as posets – Properties of lattices – Lattices as algebraic systems
– Sub lattices – Direct product and homomorphism – Some special lattices – Boolean algebra – Sub
Boolean Algebra – Boolean Homomorphism.