About
Purpose of this website
The content of this website is not intended to replace the official script (opens in a new tab) in any way. Instead, we aim to provide supplementary ideas, tips, and resources to enhance the conventional methods of studying for this course. Our goal is to offer an additional perspective.
We encourage students to use this content alongside the official script. Whether you are looking for clarification on specific concepts or seeking new study strategies, this supplementary material is designed to support your learning journey.
The original website was created by teaching assistants for the 2024 edition of the course of Discrete Mathematics.
- Tobias Steinbrecher tsteinbreche@ethz.ch
- Yannick Funke yfunke@ethz.ch
- Max Obreiter mobreiter@ethz.ch
- Philipp Barski pbarski@ethz.ch
It is now being maintained by teaching assistants for the 2025 edition of the course.
- Hatim Abdel Ghaffar habdel@ethz.ch
- Leo Chen chenleo@ethz.ch
- Hannah Oss hanoss@ethz.ch
- Leo Schmidt-Traub leoschmidt@ethz.ch
- Shivram Shambus dm@shivi.io
- Emil Straschil estraschil@ethz.ch
Contributing
We encourage anyone who finds a mistake or is motivated to share useful explanations/problems to contribute to the website :).
Contributors
Setup
To contribute, you can either press the Edit this page on Github button on any page and then follow the steps on Github or you can directly do the following:
- Fork the repository on github
- Make your changes locally by cloning your forked repo
- To run locally use
npm run dev - To test production use
npm run build && npm run start
- To run locally use
- Open a pull request (for example by contribute button on the github page of your fork)
Writing Problems
To write a problem, you can use the <Problem/> component in an .mdx file as follows:
<Problem
title="Sample Math Problem"
difficulty={3}
relevance={4}
source="Example Source"
link="https://example.com"
>
<div label="question">
What is the value of $x$ in the equation $x^2 + 4x - 5 = 0$?
</div>
<div label="hint">
Try factoring the equation into two binomials.
</div>
<div label="answer">
The value of $x$ is either $-5$ or $1$.
</div>
<div label="takeaway">
Factoring quadratic equations can simplify the process of finding solutions.
</div>
</Problem>Glasklar ProblemDifficulty: 3/5Relevance: đđđđSource:Â Example Source
What is the value of in the equation ?
Props
title
- Type:
string(required) - Description: The title of the problem, displayed prominently at the top of the component.
difficulty
- Type:
number(optional) - Description: Represents the difficulty level of the problem. Accepts an integer from
1to6(currently it won'):- 1 (Easy)
- 2 (Fairly Easy)
- 3 (Moderate)
- 4 (Hard)
- 5 (Very Hard)
- 6 đ (Hmmm?)
relevance
- Type:
number(optional) - Description: Represents the relevance or importance of the problem. Accepts a number, displayed as repeated
đemoji to visually convey the relevance level for the course. Use a scale of 0-4. The number 0 will render asđĒŠ, meant for fun but not really relevant exercises :).
source
- Type:
string(optional) - Description: The source of the problem, such as a textbook, website, or other reference material. Displays next to the problem if provided.
link
- Type:
string(optional) - Description: URL link for the problem source. If
linkis provided along withsource, the source will be displayed as a clickable link in a custom color.
Children
The possible types for labels are question, answer, hint, and takeaway.
The order of the elements you pass as children to the component matters only within the same label type. For example, the first hint will be labeled as Hint 1, the second as Hint 2, and so on. However, the overall order of the labels will always follow the sequence: question, hint, answer, takeaway. This ensures a consistent structure for the problem presentation.
Additionally, you can have multiple questions, answers, hints or takeaways. The numbering will apply only when there are multiple elements of the same type, such as multiple questions or multiple hints.