Skip to content

mihrub/Discrete-Mathematics

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CSE 2102 — Discrete Mathematics Sessional

Hi, I'm Mihrub Aziz Bhuiyan. This repository contains all of my lab solutions for the Discrete Mathematics Sessional (CSE 2102) course at Rajshahi University of Engineering & Technology (RUET), Department of Computer Science & Engineering.

These labs were conducted under the lab manual prepared by Md. Azmain Yakin Srizon, Assistant Professor, Department of CSE, Rajshahi University of Engineering & Technology (RUET).


📌 About This Repository

This repo contains solutions to all 14 lab experiments from the course lab manual, implemented in Python. The labs cover a wide range of discrete mathematical concepts — from logic and set theory to graph algorithms.


📂 Topics Covered

  • Propositional logic, truth tables, and logical equivalences
  • Predicates, quantifiers, and rules of inference
  • Set operations and bit string representation
  • Functions — injective, surjective, bijective, and composition
  • Sequences, recurrence relations, and summations
  • Counting principles, permutations, and combinations
  • Number theory, GCD, LCM, and modular arithmetic
  • Solving linear congruences using the Extended Euclidean Algorithm
  • Mathematical induction and recursion
  • Graph representation — adjacency matrix and adjacency list
  • Graph traversal — BFS and DFS
  • Planar graphs and graph coloring
  • Integrated revision problems combining multiple concepts

🎯 Purpose

  • To keep all my discrete math lab work organized in one place
  • To practice translating mathematical concepts into working code
  • To build a solid foundation in discrete mathematics for future CS courses

🧠 Learning Note

This course helped me connect abstract mathematics to real programming logic. Implementing things like the Euclidean algorithm, graph traversal, and greedy coloring from scratch gave me a much deeper understanding than just solving them on paper.


🛠️ Language & Libraries

  • Language: Python 3
  • Libraries: networkx, matplotlib , numpy
  • Standard library modules used: itertools, math, collections

⚙️ Installation & Setup

Make sure you have Python 3 installed. Then clone the repository and install the required libraries:

git clone https://github.com/mihrub/Discrete-Mathematics.git
cd Discrete-Mathematics
pip install -r requirements.txt

Then run any lab solution:

python "Graph Models and Representation/adjacency_list.py"

📚 References

  • Kenneth H. Rosen, Discrete Mathematics and Its Applications
  • Eric Lehman, F. Thomson Leighton, and Albert R. Meyer, Mathematics for Computer Science
  • Ronald L. Graham, Donald E. Knuth, and Oren Patashnik, Concrete Mathematics: A Foundation for Computer Science

About

Lab solutions for CSE 2102 Discrete Mathematics Sessional at RUET — covering logic, set theory, number theory, recursion, and graph algorithms in Python.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors