Discrete Mathematics

  • 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

  • Matrices, determinants
  • System of linear equations
  • Eigenvalues and eigenvectors
  • LU decomposition

Calculus

  • Limits, continuity and differentiability.
  • Maxima and minima. Mean value theorem.
  • Integration.

Probability

  • Random variables.
  • Uniform, normal, exponential, poisson and binomial distributions.
  • Mean, median, mode and standard deviation.
  • Conditional probability and Bayes theorem.

Digital Logic

  • Boolean algebra.
  • Combinational and sequential circuits. Minimization.
  • Number representations and computer arithmetic (fixed and floating point).

Computer Organization and Architecture

  • 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

  • Programming in C. Recursion.
  • Arrays, stacks, queues, linked lists, trees, binary search trees, binary heaps, graphs.

Algorithms

  • 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

  • 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

  • Lexical analysis, parsing, syntax-directed translation.
  • Runtime environments.
  • Intermediate code generation.

Operating System

  • Processes, threads, inter‐process communication, concurrency and synchronization.
  • Deadlock.
  • CPU scheduling.
  • Memory management and virtual memory.
  • File systems.

Databases

  • 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

  • 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.

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.