Вы находитесь на странице: 1из 6

DOC/LP/01/28.02.

02

LESSON PLAN
LP- CP 7201
Sub Code & Name : CP7201 THEORETICAL FOUNDATIONS OF
COMPUTER SCIENCE
Unit: I

Branch: M.E. (CSN)

Semester: II

LP Rev. No: 00
Date: 18-01-2014
Page

1 of 6

Unit syllabus:
Credit 4
UNIT I

FOUNDATIONS

12

Sets relations equivalence relations partial orders functions recursive functions


sequences induction principle structural induction recursive algorithms counting
pigeonhole principle permutations and combinations recurrence relations
Objective: This unit gives an introduction to sets, relations and functions, to conduct proofs using
induction and pigeonhole principle, to apply counting, permutations, combinations, and
recurrence relations.
Sess
ion
No

Time

Ref, Page
No

50 m

6(111-132),
912-14)
6(463-480)
6(481-498)

Foundations-Sets, Set operations Union and Intersection,


Computer representation of sets.
Relations properties, applications.
Relations Representations of relations, Closures of
relations
Equivalence relations Equivalence classes and Partitions
Partial orders Lexicographic Order, Hasse Diagrams
Partial orders - Lattices, Topological sorting
Functions Surjections, Injections, bijections.
Inverse functions.
Sequences
Recursive functions, Recursive algorithms

Induction principle, Structural Induction

50 m

10
11
12

Counting pigeonhole principle, examples


Counting - Permutations and Combinations, examples
Recurrence relations

50 m
50 m
50 m

1
2
3
4
5
6
7

Topics to be covered

50 m
50 m
50 m
50 m
50 m
50 m
50 m

6(499-509)
6(510-517)
6(518-524)
6(133-145,
150-153),
9(39-44)
6(294-302,
311-320)
6(264-274,
303-308)
6(335-354)
6(355-360)
6(393-400)

Teaching
Method
BB
BB
BB
BB
BB
BB
BB
BB
BB
BB
BB
BB

DOC/LP/01/28.02.02

LESSON PLAN

LP- CP 7201
LP Rev. No: 00

Sub Code & Name : CP 7201 THEORETICAL FOUNDATIONS OF


COMPUTER SCIENCE
Unit: II

UNIT II

Branch: M.E. (CSN)

Semester: II

Date: 18-01-2014
Page 2 of 6

LOGIC AND LOGIC PROGRAMMING

12

Propositional logic syntax interpretations and models deduction theorems normal forms
inference rules SAT solvers Davis Putnam procedure binary decision diagrams predicate
logic syntax proof theory semantics of predicate logic Normal form unification
inferences in first-order logic logic programming definite programs SLD resolution
normal programs SLDNF resolution introduction to Prolog
Objective: This unit gives an in-depth knowledge in Propositional logic, First-order logic and
logic programming.
Sess
ion
No

Topics to be covered

Time

Ref, Page
No
8(1-5),
2(7-20)
8(2-28),
8(53-68)

13

Propositional logic syntax, interpretations and models

50 m

14

Deduction theorems.
Normal forms Semantic equivalence, satisfiability and
validity
Normal Forms- Conjunctive normal forms and validity, Horn
clauses and satisfiability
Inference rules
SAT solvers A linear solver, A cubic solver
SAT solvers - Davis Putnam procedure
Propositional logic - binary decision diagrams
predicate logic syntax
- proof theory (natural deduction rules,
Quantifier equivalences)
Semantics of predicate logic Models, Semantic entailment,
semantics of equality
Normal form, Unification

50 m

Inferences in first-order logic


Logic programming SLD resolution, normal programs,
definite programs, SLDNF resolution
Introduction to Prolog
CAT I

50 m
50 m

15
16
17
18
19
20
21
22
23
24

Teaching
Method
BB
BB

50 m

8(53-68),
6(63-70)

BB

50 m
50 m
50 m
50 m

8(68-78)
2(111-115)
2(95-108)
8(93-122)

BB
BB
BB
BB

50 m

8(122-130)

BB

50 m

2(167-180,
189-194)
2
2(205-215)

BB

5(566-580)

BB

50 m
3 hrs

BB
BB

DOC/LP/01/28.02.02

LESSON PLAN
LP- CP 7201
LP Rev. No: 00

Sub Code & Name : CP 7201 THEORETICAL FOUNDATIONS OF


COMPUTER SCIENCE
Unit: III

Branch: M.E. (CSN)

Date: 18-01-2014
Page 3 of 6

Semester: II

UNIT III LAMBDA CALCULUS AND FUNCTIONAL PROGRAMMING

12

Lambda notation for functions syntax curried functions parametric polymorphism lambda
reduction alpha reduction beta reduction beta abstraction extensionality theorem delta
reduction reduction strategies normal forms Church-Rosser Theorems pure lambda
calculus constants arithmetic conditionals Iteration recursion introduction to functional
programming
Objective: To apply lambda calculus and to introduce functional programming.
Sess
ion
Topics to be covered
No
25 Lambda notation for functions syntax, curried
functions, parametric polymorphism
26 Semantics of Lambda expressions
Lambda reduction: Alpha reduction, Beta reduction,
Beta abstraction
27 Lambda reduction: Extensibility theorem, delta
reduction
28 Reduction Strategies: Normal forms, Church-Rosser
Theorems I and II
29 Churchs thesis, Correlation with parameter passing
30 Constants in the Pure Lambda Calculus
31 Arithmetic - conditionals
32 Iterations
33 Recursion: Conditional expressions, Paradoxical
combinatory, Fixed point identity
34 Introduction to functional programming: Names and
values, Executions order, Repetition in
imperative and functional languages.
35 Data structures in functional languages, Functions as
values, the origins of functional languages.
36 Exercises

Time

Teaching
Method

50 m

Ref, Page
No
5(140145)

50 m

5(145-149)

BB

50 m

5(149-150)

BB

50 m

5(151-153)

BB

50 m
50 m
50 m
50 m
50 m

BB
BB
BB
BB
BB

50 m

5(154-156)
5(156,157)
4(50, 78-82)
4(65-81)
5(388-392),
4(65-81)
4(1-11)

50 m

4(1-11)

BB

50 m

BB

BB

BB

DOC/LP/01/28.02.02

LESSON PLAN
LP- CP 7201
LP Rev. No: 00
Sub Code & Name : CP 7201 THEORETICAL FOUNDATIONS OF
COMPUTER SCIENCE
Unit: IV

UNIT IV

Branch: M.E. (CSN)

Semester: II

GRAPH STRUCTURES

Date: 18-01-2014
Page 4 of 6

12

Tree Structures Graph structures graph representations regular graph structures random
graphs Connectivity Cycles Graph Coloring Cliques, Vertex Covers, Independent sets Spanning Trees network flows matching

Objective: To apply sequential structures, tree structures, and graph structures.


Sess
ion
No
37
38
39
40
41
42
43
44
45
46
47
48

Topics to be covered

Time

Ref, Page No

Teaching
Method

Tree structures, trees as models, properties of trees,


applications of trees
Graph structures graph representations
- Regular graph structures and random graphs
Connectivity Paths, connectedness in undirected and
directed graphs, Paths and Isomorphism
Cycles, Euler and Hamilton Paths
Graph coloring Introduction, Four color theorem,
Applications of graph coloring
Cliques, Vertex covers, Exercises

50 m

6(627-649)

50 m

6(533-564),
9(178-183)
6(565-576)

BB

BB
BB

Independent sets, Exercises in graphs


Spanning trees Introduction, DFS
Spanning trees BFS, Backtracking applications
Minimum spanning tree
Network flows Flows and cuts, Max-flow min-cut theorem
Matching
CAT II

50 m
50 m
50 m
50 m
50 m
50 m
3 hrs

6(545, 577-584)
6(610-616),
9(187-190)
6(622),
9(211-216,224)
6(624)
6(668-670)
6(670-673)
6(673-678)
9(225-238)
9(216-220)

50 m
50 m
50 m
50 m

BB

BB

BB
BB
BB
BB
BB
BB
BB

DOC/LP/01/28.02.02

LESSON PLAN
LP- CP 7201
LP Rev. No: 00
Sub Code & Name : CP 7201 THEORETICAL FOUNDATIONS OF
COMPUTER SCIENCE
Unit: V

Branch: M.E. (CSN)

Semester: II

Date: 18-01-2014
Page 5 of 6

UNIT V STATE MACHINES

12

Languages and Grammars Finite State Machines State machines and languages Turing
Machines Computational Complexity computability Decidability Church's Thesis
Objective: To explain computational models, computability, and complexity.
Sess
ion
No
49

Topics to be covered
Languages and Grammars:

Time

Ref, Page
No

50 m

6(729-736)

Phrase-Structure Grammars, Types of phrase structure


grammars.
50

Languages and Grammars:

Teaching
Method
BB

50 m

6(729-736)

BB

50 m
50 m

6(740-745)
6(748-757)

BB
BB

50 m

6(741-764)

BB

6(765-768)
6(771-781),
10(93-120)
6(771-781)
6(771-781)
6(771-781),
10(169-193)
6(771-781),
10(127-165)
6(771-781)

BB
BB

Derivation Trees, Backus-Naur Form


51
52
53

Finite State Machines: FSM with outputs - Introduction


Finite State Machines: FSM with no outputs, Finite state
automata, Non deterministic finite state
automata.
State Machines and Languages:

Language recognition Introduction, Regular Sets,


Kleenes Theorem
54
55

Regular Sets and Regular Grammar


Turing Machines - Computing functions with Turing machines

50 m
50 m

56
57
58

Turing Machines Different types of Turing machines


Churchs Thesis
Computational Complexity

50 m
50 m
50 m

59

Computability: The Diagonalization method, The Reduction


method, Rices theorem
Decidability
CAT III

50 m

60

50 m

BB
BB
BB
BB
BB

DOC/LP/01/28.02.02

LESSON PLAN
LP- CP 7201
Sub Code & Name : CP 7201 THEORETICAL FOUNDATIONS OF
COMPUTER SCIENCE
Unit: -

Branch: M.E. (CSN)

Semester: II

LP Rev. No: 00
Date: 18-01-2014
Page

6 of 6

Course Delivery Plan:


Week
Units

I II I II
1

I II

I II

I II I II
2

7
I II

I II I II
3

10

11

12

13

14

I II

I II
4

I II

I II

I II I II
5

REFERENCES:
1. Uwe Schoning, Logic for Computer Scientists, Birkhauser, 2008.
2. M. Ben-Ari, Mathematical logic for computer science, Second Edition, Springer, 2003.
3. John Harrison, Handbook of Practical Logic and Automated Reasoning, Cambridge
University Press, 2009.
4. Greg Michaelson, An introduction to functional programming through lambda calculus,
Dover Publications, 2011.
5. Kenneth Slonneger and Barry Kurtz, Formal syntax and semantics of programming
languages, Addison Wesley, 1995.
6. Kenneth H. Rosen, Discrete Mathematics and its applications, Seventh Edition, Tata
McGraw Hill, 2011.
7. Sriram Pemmaraju and Steven Skiena, Computational Discrete Mathematics,
Cambridge University Press, 2003.
8. M. Huth and M. Ryan, Logic in Computer Science Modeling and Reasoning about
systems, Second Edition, Cambridge University Press, 2004.
9. Norman L. Biggs, Discrete Mathematics, Second Edition, Oxford University Press,
2002.
10. Juraj Hromkovic, Theoretical Computer Science, Springer, 1998.
11. J. E. Hopcroft, Rajeev Motwani, and J. D. Ullman, Introduction to Automata Theory,
Languages, and Computation, Third Edition, Pearson, 2008.
Prepared by

Approved by

Signature
Name
Date

Ms. N. Revathi
Asst. Prof./IT
18-01-2014

Dr. D. Balasubramanian
HoD/IT
18-01-2014

15

Вам также может понравиться