Course Materials for Students

Notes and slides I prepare for the courses I assist at Concordia University. Everything here is free to view and download. If a file you are looking for is missing, or you spot an error in one, please let me know.

These are supplementary materials written to support the tutorials and labs. They do not replace your instructor's lecture notes, the course textbook, or anything posted on Moodle, and the official course outline always takes precedence.

COMP 339Combinatorics

Tutorial Instructor Fall 2024, Fall 2025, Fall 2026

Tutorial notes covering counting, recurrences, generating functions, and graph-theoretic combinatorics.

  • Induction and Strong Induction Lecture NotesPDF

    Ordinary and strong induction: how to write the proof, how many base cases you need, and the common mistakes.

  • Tutorial 1 Counting NotesPDF

    Rules of sum and product, permutations, combinations, arrangements with repeated objects, complements, the gap method, and combinatorial arguments.

  • Tutorial 2 Counting Induction NotesPDF

    Routes on a road map, identical versus labelled containers, “at least” conditions, stars and bars, and proofs by induction (divisibility, inequalities, sums).

  • Tutorial 3 Assignment 1 NotesPDF

    Assignment 1, Q1 to 7: books on shelves, round tables, card hands, strings with a fixed composition, the multinomial theorem, binomial sums, and slack variables.

  • Tutorial 4 Assignment 1 NotesPDF

    Assignment 1, Q8 to 14: positive integer solutions, systems of equations, induction for merge sort and the triangle inequality, Fibonacci identities, ascents, and palindromes.

  • Tutorial 5 Assignment 2 NotesPDF

    Assignment 2, Q1 to 7: inclusion–exclusion with upper bounds, “exactly m” and “at least m”, glued letters, derangements, generating functions, and compositions of an integer.

  • Tutorial 6 Assignment 2 NotesPDF

    Assignment 2, Q8 to 14: generating functions for weighted equations and partitions, exponential generating functions, solving recurrences, and combinatorial proofs.

  • Graph Theory 1 Lecture NotesPDF

    Graph theory basics (Sections 11.1 to 11.3): directed and undirected graphs, trails, paths and cycles, connectivity, subgraphs and complements, graph isomorphism, and vertex degree.

  • Tutorial 7 Graph Theory Notes 1PDF

    The Handshaking Theorem, complete and regular graphs, Eulerian trails and Euler’s theorem, a lower bound on the edges of a connected graph, bipartite and planar graphs (K5 and K3,3), and forcing a triangle.

SOEN 363Data Systems for Software Engineers

Tutorial Instructor, POD, and Marker Winter 2025, Fall 2025, Winter 2026, Fall 2026

Tutorial slides on relational design, query languages, indexing, transactions, and NoSQL data systems.

  • Tutorial: ER Diagrams with draw.ioPDF

    Getting started with draw.io: the interface, the course’s ER notation in draw.io, building and styling a diagram step by step, exporting, common mistakes, and a hands-on exercise.

© Parsa Kamalipour. Except where otherwise noted, the course materials on this page are licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License (CC BY-NC-SA 4.0). You may share and adapt them for non-commercial purposes, provided you credit the author, link to the licence, indicate if changes were made, and release any adaptations under the same licence. Uploading them to paid note-sharing or homework-help sites is a commercial use and is not permitted. Problems quoted from textbooks, assignments, or other sources remain the property of their copyright holders and are not covered by this licence. Suggested credit: “[Title], Parsa Kamalipour, CC BY-NC-SA 4.0, parsakp.com/teaching/materials/”.

Back to teaching