CS1800 2026 Fall – Project
Northeastern University
The project in CS1800 requires you to pick a domain of your interest and showcase how concepts from Discrete Mathematics play a role in that domain. There are no restrictions on the domain you can pick, but you must show how at least two different concepts from CS1800 can help understand and analyze the domain you chose. See below for details about choosing the problem domain.
The project have to be done in groups of 3 students.
1. Key Dates
| Deliverable/Milestone | Deadline | Course Grade Weight |
|---|---|---|
| Proposal | Sunday, November 1 | 2% |
| on gradescope | ||
| Meeting | November 16 – 20 | 4% |
| 10 mins. with TAs/instructors | ||
| signup information on Campuswire | ||
| Presentation | December 7 – 11 | 12% |
| in lectures and recitations | ||
| signup information on Campuswire | ||
| Report | Saturday, December 12 | 4% |
| on gradescope | ||
| Total: 22% |
1.1. Proposal
Finalize your group, pick a domain and submit a preliminary proposal on how you will connect the domain to concepts from CS1800. At this stage, you do not need to have actually analyzed the connections but must have a plan for doing so.
Deliverable: You will submit a 100–300 word proposal on gradescope. One submission/group. Gradescope will allow selecting groups when submitting. You will also provide a proposed work plan describing which member of the group is responsible for which aspect of the proposed project.
Proposal Example: We will look at binary addition. The concepts from CS1800 will be circuits and combinatorics. Circuits will explain how addition actually works. Combinatorics will be used to count number of gates and wires required and hence understand how efficient binary addition is when using different gates as building blocks. We will consider the AND, OR, NOT gate version of addition as well as version allowing for XOR gates. We will also consider a NAND gate based version. In each version, we will consider how the number of gates and connections grows as the number of bits being added grows. Utilizing this, we will estimate efficiency of the circuit assuming fewer gates and wires is more efficient.
1.2. Meeting
Meet with the TAs or instructors for a 10 minute discussion during OH and/or recitation to discuss progress with the project. This will allow you to get some guidance in case you are stuck and will allow us to ensure adequate breadth and depth of the project. There is nothing to deliver in this stage, but your progress (or lack of) will determine the 4% grade for this component.
Use this opportunity to polish your work and get guidance towards a better presentation. Errors made at this stage will not detract from your grade as long as it is not a very unreasonable error (for example, if you attempted something that was described in class as impossible).
1.3. Presentation
The primary component for the project is a 10 minute group presentation. Every member has to contribute and speak during the presentation. There is no specific format required, it could be on the board or using slides.
You will describe and define the domain of your work and the concepts from CS1800 being utilized in your analysis. Then present the analysis showcasing the relationship between/application of Discrete Mathematics concepts to your project domain.
1.4. Report
Deliverable: Submit a 2 page PDF summarizing the work you have done. This must include:
- Team members
- Domain
- Concepts focused on
- Analysis of how concepts are relevant in the domain.
- Breakdown of work among group members. Who did what?
2. Project Domain
You can pick any domain as long as there is something to understand or analyze in that domain using concepts from Discrete Mathematics. Your analysis must utilize at least two of the following broad topics covered in CS1800.
- Circuits and Gates
- Logic; predicates and quantifiers
- Number Representations
- Sets
- Combinatorics
- Probability; Expectations and Bayes Rule
- Sequences and Summations
- Mathematical Induction
- Graph Theory
Picking two concepts that are very closely related or are applicable in very similar ways in your domain is not allowed. For example, you cannot say binary addition in computers needs both logic and circuits since the connection to both is essentially the same. Some topic pairs are very closely related and their use may seem very similar; we will allow that as long as the analysis is sufficiently advanced and complex.
You are also allowed to pick a sufficiently advanced follow-up to a topic directly covered in class. An example would be the diagonlization proof that cardinality of natural numbers is different from that of the real numbers.