Discrete Mathematics[edit]
- Propositional and first order logic.
- Sets, relations, functions, partial orders and lattices. Groups.
- Graphs: connectivity, matching, coloring.
- Combinatorics: counting, recurrence relations, generating functions.
Linear Algebra[edit]
- Matrices, determinants
- System of linear equations
- Eigenvalues and eigenvectors
- LU decomposition
Calculus[edit]
- Limits, continuity and differentiability.
- Maxima and minima. Mean value theorem.
- Integration.
Probability[edit]
- Random variables.
- Uniform, normal, exponential, poisson and binomial distributions.
- Mean, median, mode and standard deviation.
- Conditional probability and Bayes theorem.
Digital Logic[edit]
- Boolean algebra.
- Combinational and sequential circuits. Minimization.
- Number representations and computer arithmetic (fixed and floating point).
Computer Organization and Architecture[edit]
- Machine instructions and addressing modes.
- ALU, data‐path and control unit.
- Instruction pipelining.
- Memory hierarchy: cache, main memory and secondary storage;
- I/O interface (interrupt and DMA mode).
Programming and Data Structures[edit]
- Programming in C. Recursion.
- Arrays, stacks, queues, linked lists, trees, binary search trees, binary heaps, graphs.
Algorithms[edit]
- Searching, sorting, hashing.
- Asymptotic worst case time and space complexity.
- Algorithm design techniques: greedy, dynamic programming and divide‐and‐conquer.
- Graph search, minimum spanning trees, shortest paths.
Theory of Computation[edit]
- Regular expressions and finite automata.
- Context-free grammars and push-down automata.
- Regular and contex-free languages, pumping lemma.
- Turing machines and undecidability.
Compiler Design[edit]
- Lexical analysis, parsing, syntax-directed translation.
- Runtime environments.
- Intermediate code generation.
Operating System[edit]
- Processes, threads, inter‐process communication, concurrency and synchronization.
- Deadlock.
- CPU scheduling.
- Memory management and virtual memory.
- File systems.
Databases[edit]
- ER‐model. Relational model:
- relational algebra, tuple calculus, SQL.
- Integrity constraints,
- normal forms.
- File organization, indexing (e.g., B and B+ trees).
- Transactions and concurrency control.
Computer Networks[edit]
- Concept of layering. LAN technologies (Ethernet).
- Flow and error control techniques,
- switching.
- IPv4/IPv6,
- routers and routing algorithms (distance vector, link state).
- TCP/UDP and sockets, congestion control.
- Application layer protocols (DNS, SMTP, POP, FTP, HTTP).
- Basics of Wi-Fi.
- Network security: authentication, basics of public key and private key cryptography, digital signatures and certificates, firewalls.