Fırat University · Software Engineering · YMT211
Discrete
Mathematics
The language computers think in. Logic, proofs, sets, counting and graphs: the ideas under every program you will ever write, learned on the board and then run in Python every single week.
- When
- Monday
08:15–12:00 - Where
- B101 / YM LAB 2
- Who
- Assoc. Prof. Ferhat Uçar
try it ↓ edit the formula, the truth table updates live
~ not · & and · | or · ^ xor · -> implies · <-> iff · variables p q r s …
python ›
Fall 2026 · 15 Mondays
One semester, six ideas
Each Monday is one lecture and one lab. Click any week to open its notes, reading and lab.
- 01 · weeks 1–3 p → q
Propositional Logic
Propositions, connectives and truth tables: the same Boolean logic your CPU, your if-statements and every search engine run on.
- 02 · weeks 4–5 ∀x ∃y
Predicate Logic and Quantifiers
Variables, predicates, ∀ and ∃. Precise specifications for programs and queries, from SQL WHERE clauses to API contracts.
- 03 · weeks 6–8 ∴
Reasoning and Proof
Rules of inference and proof techniques. How to be certain, and how verified software and theorem provers make machines certain too.
- 04 · weeks 9–11 A ∩ B
Sets, Relations and Functions
The data types of mathematics: sets, relations, functions, sequences, and the surprising sizes of infinity.
- 05 · weeks 12–13 n → n+1
Induction, Recursion and Counting
Prove things for every n, reason about recursive code, and count possibilities without listing them.
- 06 · weeks 14–15 G = (V, E)
Graphs and Trees
Networks, maps, schedules and file systems. Model the connected world and color it without conflicts.
Why this course
You already use discrete math. This term you learn to see it.
-
if (user && !banned)
Every condition in your code
is propositional logic. Simplify it wrong and you ship a security bug.
-
SELECT … WHERE ∀ ∃
Every database query
is predicate logic over sets. JOINs are Cartesian products with a filter.
-
seL4 · CompCert · Lean
Verified software
uses machine-checked proofs so aircraft, phones and compilers cannot fail silently.
-
hash(x) mod n
Hash tables and caches
are functions, relations and the pigeonhole principle doing the heavy lifting.
-
O(n log n)
Algorithm analysis
is sequences, sums, recurrences and induction. Growth rates decide what scales.
-
G = (V, E)
Maps, social networks, compilers
are graphs. Google Maps finds paths; register allocators color graphs.
How a Monday works
Board first, then code
Every class has two parts. The lab is designed so you can start on your own: the steps are on the lab page, the tests check your work, the instructor joins you in the lab.
- ∴
Part 1
Lecture
New ideas on the board, worked examples, quick checks. Bring paper: you will write truth tables and proofs by hand.
- >_
Part 2
Lab
Accept the week’s lab on Classroom 50, open it in Codespaces (VS Code in your browser) and turn the lecture into Python. Tests tell you instantly how you are doing.
- ✓
After class
Submit and reflect
Finish the lab, git push, read your autograded score on GitHub. Skim next week’s reading.
Announcements
All →-
October 16, 2026 · pinned
Week 5: nested quantifiers, and Lab 4 -
October 11, 2026
Week 4: predicates and quantifiers, and Lab 3 -
October 4, 2026
Week 3: equivalences, circuits, and Lab 2 on Classroom 50
Contact & channels
Channels
-
WhatsApp channel
Quick announcements and reminders land here first. Everyone is expected to join.
-
Instagram · @dr.ferhatucar
Short, useful posts on AI, software and what we do in class.
-
Public work calendar
My weekly schedule: classes, meetings and when I am available.
-
Office hours booking
Questions, your project or advice: pick a time that suits you.
Labs
All labs →- L1 Truth-Table Engine Week 2 · Mon, Sep 28 · due Fri, Oct 2 · 23:59 · open now
- L2 Gates, Adders and Knights & Knaves Week 3 · Mon, Oct 5 · due Fri, Oct 9 · 23:59 · open now
- L3 Quantifiers over Real Data Week 4 · Mon, Oct 12 · due Fri, Oct 16 · 23:59 · open now
Grading