Category:
Software Engineering / Algorithms
Client:
Northeastern CS1800
Discrete Math Projects – Logic, Algorithms, and Combinatorics in Practice
Vision
These projects were designed to connect discrete mathematics theory with hands-on algorithm development. Spanning satisfiability, combinatorics, game theory, and data structure implementation, the projects reinforce critical thinking, mathematical modeling, and computational problem solving.
Approach
ValidDates (Combinatorics & Recursion)
Implemented a recursive and mathematical model to count valid "date" pairings between unique individuals, each with exclusivity constraints. The solution combined brute-force search with optimized recurrence relations and cycle enumeration to reduce computational complexity.SquareGame (Game Theory & Nim Strategy)
Developed a competitive two-player game based on the principles of Nim. Implemented optimal computer strategy using XOR-sum logic to guarantee winning outcomes under ideal conditions, with randomized game board generation and human-interactive gameplay.2-CNF Satisfiability
Created an algorithm to verify the satisfiability of 2-CNF Boolean expressions using implication graphs and strongly connected components, mimicking the foundation of SAT solvers.SkipList Data Structure
Built a probabilistic alternative to balanced trees with average-case O(log n) operations for search, insert, and delete. Simulated skip levels and random promotions to ensure realistic performance behavior.
Challenges
Translating theoretical mathematical concepts into efficient and testable code.
Managing deep recursive logic for exhaustive search and backtracking.
Ensuring correctness under all game and edge conditions in probabilistic and combinatorial models.
Conclusion
These projects demonstrated the real-world applicability of discrete mathematics in software development. They highlight proficiency in recursion, logical reasoning, probabilistic design, and algorithm analysis—skills foundational to computer science and critical for building optimized systems.