Prerequisite: CSU 201 Discrete Computational Structures
-
Module I (10 Hours)
Divisibility theory, primes and their distribution, theory of congruences, Fermat’s theorem,Wilson’s theorem, number theoretic functions, Euler's theorem, Congruences in one unknown, Chinese remainder theorem, congruences of higher degree.
Module II (10 Hours)
Primitive roots and indices, numbers in special form, Fermat’s last theorem, primality testing, Finite fields, polynomial arithmetic, quadratic residues, zero knowledge protocols, elliptic curve arithmetic, recent developments in number theory.
Module III (11 Hours)
Introduction to secure computing, classifying cryptosystems, classical cryptosystems, DES, block cipher modes of operation, triple DES, AES, key distribution
Module IV (11 Hours)
RSA cryptosystem, Diffie-Hellman, elliptic curve cryptosystem, data integrity and authentication, MD5 message digest algorithm, secure hash algorithm, digital signatures, digital signature standard.
References:
1. Niven I., Zuckerman H.S. and Montgomery H. L., An Introduction to the Theory of Numbers, 5/e, John Wiley and Sons, 2004.
2. Stallings W., Cryptography and Network Security: Principles and Practice, 4/e, Pearson Education Asia, 2006.
3. Mano W., Modern Cryptography: Theory & Practice, Pearson Education, 2004.
4.D. A. Burton, Elementary Number Theory, 6/e, Tata McGraw Hill, 2007.
5. Delfs H. and Knebel H., Introduction to Cryptography: Principles and Applications, Springer, 2002
CSU 303 COMPILER CONSTRUCTION
Pre-requisites: CSU 203 Data Structures and Algorithms
CSU 211 Formal Languages and Automata
-
Module I (6 Hours)
Introduction to Programming language translation. Lexical analysis: Specification and recognition of tokens.
Module II (12 Hours)
Syntax analysis: Top-down parsing-Recursive descent and Predictive Parsers. Bottom-up Parsing- LR (0), SLR, and LR (1) Parsers.
Module III (16 Hours)
Semantic analysis: Type expression, type systems, type checking, and symbol tables.
Intermediate code generation: Intermediate languages. Intermediate representation-Three address code and quadruples. Syntax-directed translation of declarations, assignments statements, conditional constructs, and loops constructs.
Module IV (8 Hours)
Runtime Environments: Storage Organization, activation records. Introduction to machine code generations and code optimizations.
References:
1. Aho A.V., Sethi R, and Ullman J.D. Compilers: Principles, Techniques, and Tools. Addison-Wesley, 1986.
2. Appel A.W, and Palsberg J. Modern Compiler Implementation in Java. Cambridge University Press, 2002.
CSU 304 COMPUTER NETWORKS
Pre-requisite: CSU 203 Data Structures and Algorithms / CSU 230 Program Design
-
Module I (10 Hours)
Computer Networks and Internet, the network edge, the network core, network access, delay and loss, protocol layers and services, Application layer protocols, socket programming, content distribution.
Module II (10 Hours)
Transport layer services, UDP and TCP, congestion control, Network layer services, routing, IP, routing in Internet, router, IPV6, multicast routing, mobility.
Module III (10 Hours)
Link layer services, error detection and correction, multiple access protocols, ARP, Ethernet, hubs, bridges, switches, wireless links, PPP, ATM.
Module IV (12 Hours)
Multimedia networking, streaming stored audio and video, real-time protocols, security, Cryptography, authentication, integrity, key distribution, network management.
References:
-
J. F. Kurose and K . W. Ross, Computer Networking: A Top-Down Approach Featuring Internet, 3/e, Pearson Education, 2005.
-
Peterson L.L. & Davie B.S., Computer Networks, A systems approach, 3/E, Harcourt Asia, 2003.
-
Andrew S. Tanenbaum, Computer Networks, 3/E, PHI, 1996.
-
IEEE/ACM Trans on Networking
CSU 305 THEORY OF COMPUTATION
Pre-requisite: CSU 211 Formal Languages and Automata
-
Module I (8 Hours)
Undecidability: Recursive and Recursively enumerable sets, Undecidability, Rice theorems.
Module II (16 Hours)
Complexity: P, NP, PSPACE and Log space. Reductions and Completeness. Hierarchy theorems, Probabilistic classes, BPP, EXP time and space complexity classes.
Module III (8 Hours)
Logic: Propositional logic, compactness, decidability, Resolution.
Module IV (10 Hours)
Undecidability in first order predicate calculus, Resolution. Gödel’s incompleteness theorem
Text Books:
1. M. Sipser, Introduction to the Theory of Computation, Thomson, 2001.
2. C. H. Papadimitriou., Computational Complexity, Addison Wesley, 1994.
References:
-
C. H. Papadimitriou, H. Lewis., Elements of Theory of Computation, Prentice Hall, 1981.
-
J. E. Hopcroft and J. D. Ullman, Introduction to Automata Theory, Languages and Computation, Narosa, 1989.
-
J. C. Martin, Introduction to Languages and the Theory of Computation, Mc Graw Hill, 2002.
-
M. R. Garey and D. S. Johnson. Computers & Intractability, W. H. Freeman & Co., San Farnisco, 1979.
CSU 391 NETWORKS LAB
Pre-requisite: Knowledge of Computer Networking concepts
-
Dostları ilə paylaş: |