Keyboard shortcuts

Press ← or β†’ to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Course Overview

πŸ“‹ Basic Information

  • Course: Discrete Mathematics
  • Semesters: Fall 2025 – Spring 2026
  • Prerequisites: High school mathematics
  • Language: Russian (lectures), English (materials)
  • Instructor: Konstantin Chukharev

🎯 What You’ll Learn

By the end of this course, you will be able to:

🍁 Fall Semester:

  • Work confidently with sets, operations, and cardinality
  • Understand and apply binary relations (equivalence, order, functions)
  • Design and analyze Boolean expressions and digital circuits
  • Construct formal proofs using natural deduction

🌱 Spring Semester:

  • Analyze graphs and trees using various algorithms
  • Solve network flow problems
  • Design and analyze finite automata and regular languages
  • Apply combinatorial principles and generating functions

πŸ“š Course Structure

Two-semester course covering 8 β€œmodules”:

🍁 Fall Semester:

  • Set Theory (Weeks 1–2, 6) Sets, operations, cardinality, axioms

  • Binary Relations (Weeks 3–7) Equivalence, order, functions, lattices

  • Boolean Algebra (Weeks 8–10) Logic gates, circuits, minimization

  • Formal Logic (Weeks 11–16) Propositional and predicate logic, proofs

🌱 Spring Semester:

  • Graph Theory (Weeks 1–4) Graphs, trees, paths, cycles, algorithms

  • Flow Networks (Week 5) Max flow, min cut, applications

  • Automata Theory (Weeks 6–10) Finite automata, regular languages, NFAs

  • Combinatorics (Weeks 11–16) Counting principles, generating functions, recurrences

πŸ“Š Assessment Overview

In each semester, you will complete:

ComponentCountPoints EachTotal
Homework41040
Tests4520
Theoretical Minimums21020
Final Exam12020
Total100

⚠️ Important: You must complete all homework and pass all Theoretical Minimums to receive a passing grade, regardless of total points.

πŸŽ“ Key Success Factors

  • Attend all lectures - Material builds cumulatively
  • Start homework early - Give yourself time to think and iterate
  • Form study groups - Explain concepts to each other
  • Practice regularly - Mathematical skill develops through repetition
  • Ask questions - Use mentors and Telegram group actively