D'Math University | Computing & Interdisciplinary Mathematics
BSc Discrete Mathematics
The mathematics of counting, structure, and logic — combinatorics, graph theory, formal languages, and algorithms — forms the rigorous backbone of modern computer science. This programme provides that foundation in depth.
Programme Overview
What You Will Study
Discrete Mathematics is the mathematical study of objects that take distinct, separated values — graphs, networks, sets, strings, and logical structures. This programme develops the combinatorial and algorithmic thinking that underlies all of theoretical computer science.
- Combinatorics: counting, generating functions, Ramsey theory, probabilistic method
- Graph Theory: connectivity, colouring, flows, planarity, extremal graph theory
- Logic & Proof: propositional and first-order logic, proof systems, model theory
- Algorithms: complexity theory, algorithmic graph theory, coding and cryptography
Programme Highlights
Graduates are prized by technology companies, cybersecurity firms, and research organisations for their unusual combination of mathematical rigour and computational thinking — the rarest and most valuable skill set in the technology sector.
- CS Crossover: elective modules in programming, data structures, and algorithms
- Industry Projects: applied combinatorics and optimisation projects with partner firms
- Research Pathway: strong preparation for MSc/PhD in discrete maths or theoretical CS
- Problem-Solving Culture: weekly problem sessions and mathematical competitions
Click any course to view its objective and learning outcomes.
DSM 101 Logic & Set Theory +
Objective
To establish the foundational language and reasoning of discrete mathematics.
Learning Outcomes
- Apply propositional and predicate logic to verify arguments.
- Manipulate sets, functions and relations rigorously.
- Use formal proof techniques including induction.
- Distinguish countable and uncountable infinities.
- Translate verbal statements into symbolic form.
AND OR NOT XOR -> <->
DSM 102 Combinatorics +
Objective
To count, generate and analyse discrete configurations.
Learning Outcomes
- Apply permutations, combinations and inclusion-exclusion.
- Solve recurrence relations using generating functions.
- Use the Pigeonhole Principle in proofs.
- Apply Polya counting to problems with symmetry.
- Identify combinatorial identities and prove them bijectively.
DSM 103 Graph Theory +
Objective
To model relationships using graphs and analyse their structural properties.
Learning Outcomes
- Compute connectivity, distances and centrality measures.
- Apply algorithms for shortest paths and minimum spanning trees.
- Identify Eulerian and Hamiltonian properties.
- Use graph colouring to model scheduling problems.
- Verify planarity and apply Kuratowski's theorem.
DSM 104 Number Theory +
Objective
To investigate the integers and their multiplicative structure.
Learning Outcomes
- Apply the Euclidean algorithm and modular arithmetic.
- Prove and apply Fermat's little theorem and Euler's theorem.
- Solve linear and quadratic congruences.
- Identify and use the Chinese Remainder Theorem.
- Implement number-theoretic algorithms.
DSM 201 Discrete Probability +
Objective
To analyse random discrete phenomena using probabilistic methods.
Learning Outcomes
- Compute probabilities of events on finite and countable spaces.
- Use generating functions to study random variables.
- Apply Markov's and Chebyshev's inequalities.
- Analyse random graphs and Markov chains.
- Use the probabilistic method in combinatorics.
DSM 202 Algorithms & Data Structures +
Objective
To design and analyse algorithms operating on discrete data.
Learning Outcomes
- Apply Big-O notation to analyse running time.
- Implement classical sorting and searching algorithms.
- Use stacks, queues, trees, hash tables and graphs.
- Apply dynamic programming and greedy strategies.
- Compare algorithm performance experimentally and theoretically.
DSM 203 Coding Theory +
Objective
To detect and correct errors in transmitted information.
Learning Outcomes
- Encode and decode using Hamming and Reed-Solomon codes.
- Compute minimum distance and error-correcting capability.
- Construct linear codes from generator matrices.
- Compare cyclic and convolutional codes.
- Apply coding bounds to channel capacity.
DSM 204 Cryptography Foundations +
Objective
To introduce mathematical principles of secure communication.
Learning Outcomes
- Apply substitution and stream ciphers.
- Use modular arithmetic in RSA and Diffie-Hellman.
- Analyse the security of small-scale cryptosystems.
- Implement basic cryptographic protocols.
- Discuss attacks and defences in classical schemes.
DSM 301 Game Theory +
Objective
To analyse strategic interaction among rational decision-makers.
Learning Outcomes
- Compute pure and mixed Nash equilibria.
- Apply backward induction in extensive games.
- Identify dominant strategies and equilibrium refinements.
- Use cooperative game concepts including the core.
- Apply game theory to economics and CS contexts.
DSM 302 Boolean Algebras & Lattices +
Objective
To study algebraic structures fundamental to logic and circuit design.
Learning Outcomes
- Verify Boolean identities and minimise expressions.
- Apply Karnaugh maps to circuit simplification.
- Identify lattice structures and their properties.
- Use distributive and modular lattices in proofs.
- Connect Boolean algebra to propositional logic.
DSM 303 Computational Complexity +
Objective
To classify problems by the resources required to solve them.
Learning Outcomes
- Distinguish P, NP, NP-Hard and NP-Complete.
- Apply polynomial reductions between problems.
- Analyse space and time hierarchy theorems.
- Use approximation algorithms for hard problems.
- Discuss randomised and parameterised complexity.
DSM 304 Discrete Mathematics Project +
Objective
To consolidate the programme through an extended discrete mathematics investigation.
Learning Outcomes
- Identify a problem combining theory and application.
- Survey relevant literature and prior results.
- Construct original proofs or computational experiments.
- Write a substantial mathematical report.
- Present findings to peers and supervisors.
Core Modules
Combinatorics & Counting
Binomial coefficients, inclusion-exclusion, generating functions, Burnside's lemma, and probabilistic combinatorics.
Graph Theory
Paths, cycles, trees, matchings, colourings, planar graphs, Ramsey theory, and network flows.
Mathematical Logic & Proof
Propositional and predicate logic, proof strategies, soundness and completeness, and Gödel's incompleteness theorems.
Algorithms & Complexity
Algorithm design paradigms, complexity classes, NP-completeness, approximation algorithms, and hardness of approximation.
Number Theory
Divisibility, primes, modular arithmetic, quadratic reciprocity, and applications to cryptography and coding theory.
Automata & Formal Languages
Finite automata, regular expressions, context-free grammars, pushdown automata, and the Chomsky hierarchy.
Coding Theory
Error-correcting codes, linear codes, Hamming distance, Reed-Solomon codes, and algebraic geometry codes.
Cryptography
Classical and modern cryptosystems, public-key cryptography, RSA, discrete logarithm, and post-quantum considerations.
Discrete Optimisation
Integer programming, branch and bound, network optimisation, and applications in scheduling and logistics.
Computational Combinatorics
Algorithmic enumeration, combinatorial algorithms, computer-aided proofs, and the four-colour theorem as a case study.
Career Outcomes
Algorithm Engineer
Design and implement efficient algorithms for search, optimisation, and data processing at technology companies and research labs.
Cryptographer
Design cryptographic protocols and security systems, applying number theory and algebra to protect digital communications.
Software Engineer
Build reliable, efficient software systems with the mathematical rigour to reason about correctness and performance.
Network Analyst
Model, analyse, and optimise communication networks, social networks, and logistics systems using graph-theoretic methods.
Research Scientist
Investigate open problems in combinatorics, graph theory, and theoretical computer science at universities and research institutes.
Cybersecurity Specialist
Apply discrete mathematical tools to threat analysis, intrusion detection, and the design of secure computing systems.
Where Our Graduates Go & Top Global Universities
Why D'Math University — Our 4-Step Approach
Proof as Practice
From Week 1, rigorous proof is the primary mode of mathematical communication — building the logical precision that defines elite mathematical thinking.
Algorithmic Thinking
Every combinatorial structure is studied alongside its algorithmic properties — how to find, count, and optimise it efficiently.
CS Integration
Elective modules and joint projects with computer science ensure graduates can operate confidently in both mathematical and technical environments.
Competition Mathematics
Weekly problem sessions and participation in mathematical olympiads sharpen the problem-solving instincts that industry prizes.
Applications open year-round — develop the mathematical foundations of modern computing.