This is an open archive from my time (and my friends’ times)
as Waterloo and Laurier CS/BBA and MATH/BBA students.
If you find it useful and want me to endure more pain,
consider sending me a ~~coffee~~ bubble tea.
Minus Stripe/PayPal’s 30¢ transaction fee, of course.

## About

All contributors to this archive are students.
**Nothing here is official. There are no guarantees that content is remotely close to correct.**
Frankly, it’s more likely that it’s not.
Please let me know if you find a mistake though!
Or, in the spirit of open source, make a pull request fixing it.

Everything here is published under information and belief that it is permitted by relevant faculty; please contact me if anything is not and I will take it down.

### Contribution, Sharing, and Re-Use

**If you would like to add your own work to the site, please make a
pull request.**
If you’re not familiar with Git,
contact me and I’m happy to help.

Anything that helps future students (lecture/textbook notes, exercises, etc.) is acceptable, provided that you are happy to release it freely.

Unless otherwise specified, all content here is licensed under a
Creative Commons Attribution ShareAlike 4.0 International License
(CC-BY-SA 4.0).
**This means you can do whatever you want with it,
provided you (1) give credit and (2) also release your work openly.
Non-free study resources behind hard paywalls suck.
Learning is painful and agonizing enough as it is.**

If you want to use my `agony`

document class for \(\LaTeX\),
feel free to download it and look through the macros.
The reference sheets on this site use an adapted config for MathJax.
The `agony`

class is documented here.

### Table of Contents

- Lazaridis School of Business and Economics
- Business
- BU 111 (F20, F22) Introduction to the Business Environment
- BU 121 (W21) Functional Areas of the Organization
- BU 121 (W24) Critical Thinking and Communication Skills
- BU 288 (F21) Organizational Behaviour
- BU 231 (S22) Business Law
- BU 352 (F22) Introduction to Marketing
- BU 354 (F22) Human Resources Management
- BU 387 (F23) Intermediate Accounting I
- BU 398 (S23) Organizational Behaviour II

- Economics

- Business
- Waterloo Faculty of Mathematics
- Computer Science
- CS 135 (F20) Designing Functional Programs
- CS 136 (W24) Elementary Algorithm Design and Data Abstraction
- CS 245 (F21) Logic and Computation
- CS 246 (S23, W24) Object-Oriented Software Development
- CS 330 (F23) Management Information Systems
- CS 341 (S23) Algorithms
- CS 350 (S23) Operating Systems
- CS 480/680 (W24) Introduction to Machine Learning
- CS 886 (W24) Advanced Topics in Artificial Intelligence

- Math
- Pure Math
- Combinatorics and Optimization

- Computer Science
- Mistakes
- Contact

## Lazaridis School of Business and Economics

### Business

#### BU 111 (F20, F22) Introduction to the Business Environment

Imaad’s flashcards for PEST factors and strategic expansion.

Complete notes for the F22 midterm and final by Sophia.

#### BU 121 (W21) Functional Areas of the Organization

BU 121 has since been completely redesigned. These materials are no longer in any way representative of the course content.

Flashcard sets by Imaad for the whole course.

Study materials by Ace were also published before each assessment.

#### BU 121 (W24) Critical Thinking and Communication Skills

Notes from the entire course, including readings, by Chloe and Stella.

Final exam flashcards by Yash and Karthik.

#### BU 288 (F21) Organizational Behaviour

Another flashcard set for the two midterms and final exam.

#### BU 231 (S22) Business Law

Yet more Quizlet cards by Imaad for the midterm.

A review casebook using real life fact patterns is available here.

For post-midterm content, Imaad made a summary in flowchart format.

#### BU 352 (F22) Introduction to Marketing

Flashcard set by Imaad.

#### BU 354 (F22) Human Resources Management

Flashcard set by Imaad.

#### BU 387 (F23) Intermediate Accounting I

Chapter notes by Imaad.

#### BU 398 (S23) Organizational Behaviour II

RemNote flashcards which also serve as lecture notes.

### Economics

#### EC 120 (F20, F23) Introduction to Microeconomics

No “practice”, but figured this is a nice place to host my cheat sheets. They are created on Figma, and the source files are available here.

If you just want the sheets, you can get them all at my Ko-Fi shop (which is, as always, pay-what-you-want). They remain on this GitHub repository too.

More recent (F23) notes by Benny.

#### EC 140 (W21, W24) Introduction to Macroeconomics

I hastily put together an equation sheet after lecture on the 4th.

Cheat sheets are being provided on my pay-what-you-want store. Set the price based on your marginal propensity to consume cheat sheets.

Versioning is semantic: anything that is wrong/serious bumps the major version, aesthetic changes bump the minor version.

- Test 1 Cheat Sheet (v2, Feb 12 @ 8:20pm)
- Test 2 Cheat Sheet (v2.0, Mar 19 @ 5:09pm)
- Exam Cheat Sheet (v0.1, Apr 20 @ 6:49pm)

Some more recent (W24) notes by Benny.

## Waterloo Faculty of Mathematics

### Computer Science

#### CS 135 (F20) Designing Functional Programs

I don’t implement the full design recipe in exercises, for obvious reasons (I’m lazy):

- Module 11 Exercises
- Module 12 Exercises
- Module 13 Exercises
- Module 14 Exercises
- Module 15 Exercises
- Module 16 Exercises

#### CS 136 (W24) Elementary Algorithm Design and Data Abstraction

Examples and explanations for how pointers in C work

Course notes, from sessions 6 through 11, by Stella and Chloe.

More course notes by Benny

Mock final, and mock final solutions, by Tommy and Benny.

#### CS 245 (F21) Logic and Computation

My own version of the reference sheet is a bit more compact.

#### CS 246 (S23, W24) Object-Oriented Software Development

Lecture notes from S23 by Ananya are available.

Detailed lecture notes from W24 by Benny, Tommy, and Yifei.

#### CS 330 (F23) Management Information Systems

RemNote flashcards/lecture notes by Imaad. This should honestly be in the BU section.

#### CS 341 (S23) Algorithms

My lecture notes are available, taken live during lecture.

#### CS 350 (S23) Operating Systems

Lecture notes for the first few lectures, before I gave up on going to class.

#### CS 480/680 (W24) Introduction to Machine Learning

Lecture notes, updated after each lecture.

#### CS 886 (W24) Advanced Topics in Artificial Intelligence

On the topic of “diffusion models for generation, inference and optimization”.
Seminar notes
from my audit of the course have been moved to the `etudes`

repository.
I am *very* not qualified to understand what’s going on,
so these are really just a personal, public commitment to trying to learn.

### Math

#### MATH 135 (F20) Algebra for Honours Mathematics

Extra Practice files have been collated and reformatted as one big PDF. Older files can be found in the Git history.

- Extra Practice 1
- Extra Practice 2
- Extra Practice 3
- Extra Practice 4 (missing C02)
- Extra Practice 5
- Extra Practice 6 (missing C03, C05, C06. RP09 by sooshi)
- Extra Practice 7 (missing C01)
- Extra Practice 8
- Extra Practice 9
- Extra Practice 10 (missing C02. RP10 by sooshi)
- Extra Practice 11 (missing C01)
- Fall 2018 Midterm
- Fall 2019 Midterm
- Winter 2020 Midterm
- Winter 2020 Final

#### MATH 136 (W21) Linear Algebra I for Honours Mathematics

A collection of theorems can be found here and practice problems here.

#### MATH 146 (W89) Linear Algebra I (Advanced)

I found an old copy of my father’s *Linear Algebra, 2nd edition* by Hoffman and Kunze
from when he was at Waterloo (and had the guts to take 14x courses).
My solutions so far
are in the `etudes`

repository.

#### MATH 137 (F20) Calculus I for Honours Mathematics

- Practice Assignment 1
- Practice Assignment 2
- Practice Assignment 3
- Practice Assignment 4
- Practice Assignment 5
- Practice Assignment MT
- Practice Assignment 6
- Practice Assignment 7
- Practice Assignment 8
- Practice Assignment 9
- Practice Assignment 10
- Practice Assignment FE
- Practice Midterm 1
- Practice Final F2019

#### MATH 138 (W21) Calculus II for Honours Mathematics

A collection of theorems can be found here.

Jimmy has notes for series and Taylor series.

#### MATH 239 (F22) Introduction to Combinatorics

My lecture notes (incomplete and somewhat experimental) are available. You might be interested in the source if you want to use TIKZ for graph theory.

There are also exercise solutions for the course notes (using the Part I F20 and Part II S18 course notes). Progress:

- Ch. 1 (Basic Principles)
- Ch. 2 (Generating Series) (missing 2.8, 2.13(b)-(c), 2.16-21)
- Ch. 3 (Binary Strings) (missing 3.13(b), 3.14(d))
- Ch. 4 (Recurrence Relations) (missing 4.10-12)
- Ch. 4 (Graph Theory Intro.) (missing 4.4.9-10, 4.4.12, 4.5, 4.6.2-3, 4.6.10)
- Ch. 5 (Trees) (missing 5.3.2, 5.4, 5.5)
- Ch. 6 (Codes) (not covered)
- Ch. 7 (Planar Graphs) (missing 7.4, 7.6.1, 7.6.7-13, 7.8)
- Ch. 8 (Matchings) (missing 8.2.7-17, 8.3, 8.6, 8.8)

### Pure Math

#### PMATH 348 (S23) Fields and Galois Theory

Lecture notes by Imaad. They were originally written in Obsidian (which uses a different Markdown parser), so they look a little funny after spamming regexes to try and make it GFM-friendly.

#### PMATH 370 (W24) Chaos and Fractals

Lecture notes, updated after each lecture.

### Combinatorics and Optimization

#### CO 250 (S22) Introduction to Optimization

Lecture notes originally written in Obsidian and ported to LaTeX. The original Obsidian file is here

#### CO 485/685 (F22) Mathematics of Public-Key Cryptography

More lecture notes with the caveat that (1) I am not actually enrolled in the course and just sit in it for fun and (2) I am missing two levels of prerequisites and do not fully understand the content.

#### CO 487 (W24) Applied Cryptography

Lecture notes until I stopped going.

## Mistakes

Because it’s motivating or something, here’s a list of all of my mistakes. Hopefully it makes you feel better about yours. Thanks to everyone on the list who’ve helped me make this resource better for everyone :)

*Errata corrige*

**MATH135/EP04/RP04**Messed up basic arithmetic (Roy)**MATH135/EP03/RP09**Rewrote completely incomprehensible proof (Gabriel)**MATH135/EP03/RP05**Proved a*there exists*statement by exhausting the domain (Angela)**MATH135/EP06/RP05**Got the divides relation backwards for an incoherent proof (Quan)**MATH135/EP11/RP03(a)**Forgot the quadratic formula for a moment (Caitlin)**MATH135/EP08/RP05**Totally forgot a question entirely (Javin)**MATH135/EP11/RP01**Obviously, 2 + 1 = -1 (sooshi)**MATH135/EP10/RP15(b)**Overcomplicated proof when it follows almost immediately from the previous question (sooshi)**ECON120/Final**(v1.0) Deadweight loss of monopoly is between MC and demand, not price and demand (Jimmy Zhan)**ECON120/Final**(v1.1) Wrong colour on tarriff supply and demand curves**ECON140/Test 1**(v1.1) NX curve description under AE curve section, simple multiplier given as A/Y not Y/A (Trisha)**MATH137/PA01/Q01(2)**-4 - 2 = -2 (hyk)**MATH135/EP01/RP02**Replace tuple notation with standard quantifiers**MATH135/EP02/WE01**Duplicated truth table**MATH135/EP01/RP02**Questions changed**MATH135/MT2020W/Q02**Question copied wrong**MATH135/MT2018F/Q05**Negated implication wrong (#7)**MATH135/EP08/RP09**Applied CRT without checking pairwise coprimeness**MATH135/EP06/RP01(b)**Mistyped number (joseph)**MATH135/EP06/RP03**Flipped the divisor \(d\) and the dividends \(x\) and \(y\) (joseph)**MATH135/EP08/RP01**Fixed a substitution typo; the remainder should be 8, not 3 (Yuqiao)**MATH135/EP06/RP09**Flipped the directional arrows of the proof (Vivek)**MATH135/EP08/RPWE2**Should be \(4(-4) \equiv 5 \pmod{21}\) (Dan)**MATH135/EP08/RP04**Can reduce \(x^{26}\) to \(x^2\) with CFlT – makes the table less fat (Dan)**MATH135/FE2021W/Q03**Can’t apply FlT, since 10 is not prime (Dan)**MATH135/FE2021W/Q08**7 - 1 = 8 (Dan)**MATH135/FE2021W/Q010**Found counterexample (part a) and RHS is not the set of integers (part b) (Dan)**MATH135/EP04/RP01(b)**Another 0 = 1 typo (Evelina)**MATH135/EP06/RP06**Factoring typo (Prasana, #18)**MATH135/EP01/WE1(b)**28 + 3 = 25 (Imran, #20)**MATH135/EP11/RP03(e)**…another factoring typo (Linda, #24)**MATH135/EP10/RP12**Wrong expansion of \((\cos\theta + i\sin\theta)^4\) (Jessica and Evelina)**MATH135/EP10/RP15**Backwards divisibility notation (Linda, #25)**MATH135/EP11/RP03**Did not fully factor quadratic (Jessica & Evelina, #26)**MATH135/EP10/WE04**2 × 1 = 1 (Christina, #27)**MATH135/EP09/RP01**Flipped digits in final answer (various, #28)**MATH135/EP10/RP01**Lost a negative (various, #29)**MATH135/FE2020W/Q07**Rooted modulus instead of squaring (Max)

## Contact

Did you find a mistake?
Reach out by opening a discussion on GitHub
or by one of email,
Facebook,
Instagram,
and Discord (`@retrocraft`

).