Discrete Mathematics and Graph Theory course aims to provide students with
fundamental mathematical knowledge and analytical skills essential for computer
science and information technology.
The course equips students with core concepts of propositional and predicate
logic, relations, Boolean algebra, and graph theory, enabling them to analyze
problems logically and apply mathematical reasoning to algorithm design and
practical computing applications.
By completing this course, students gain a solid theoretical foundation for
advanced subjects such as data structures, algorithms, artificial intelligence,
and computer networks.
Course Contents
Part I: Discrete Mathematics
1. Logical Foundations
Propositional logic, predicate logic, logical inference, and methods of proof.
- Relations and Ordered Structures
Relations, equivalence relations, partial orders, Hasse diagrams, and lattices. - Boolean Algebra
Boolean algebra, Boolean functions, logic circuits, and Karnaugh map simplification.
Part II: Graph Theory
- Introduction to Graph Theory
Basic concepts of graphs, graph representations, and applications of graph theory in computing. - Graph Traversal and Search, Breadth-first
search (BFS), depth-first search (DFS), connectivity, and path-finding
algorithms.
- Trees and Spanning Trees
Properties of trees, minimum spanning trees, and algorithms such as Prim’s and Kruskal’s. - Shortest Path Problems
Shortest path models and algorithms including Dijkstra, Bellman–Ford, and Floyd–Warshall.
Course Learning Outcomes
Upon successful completion of this course, students will be able to:
- Identify and classify fundamental
problems in digital image processing and propose suitable solutions.
- Implement and evaluate algorithms
for basic digital image processing tasks.
- Analyze image processing problems
systematically from both theoretical and practical perspectives.
- Read and understand technical
documentation in English related to digital image processing.
- Formulate ideas, define
requirements, and model solutions for basic digital image processing
applications.
- Design, implement, and develop
software systems for digital image processing problems.
- Work effectively in teams during laboratory work and project-based assignments.