Personal Projects

01

Computational Analysis of the Bateman-Horn Conjecture for Primes of the Form n2 + 1

View project on GitHub

Using standard sieve methods, we were able to rapidly compute the prime counting function for primes of the form n2 + 1 up to 260≈1018; further computations take more than 1hr to compute. The program has three parameters: a starting value and a common ratio, and a boolean that toggles a detailed view of the computational results. The algorithm itself uses a residue filter mod 4 and a set of small primes to sieve out unwanted numbers. The primality test used is the Miller-Rabin with bases (2,3,5,7,11,13) for 64-bit, giving fast and exact primality tests for long inputs. Only even n's are considered, and the counting is maintained via a cumulative count across calls to avoid recomputation. The code can be modified to analyze various relations stemming from the Bateman-Horn Conjecture: for instance, we analyzed the ratio of the prime counting function for two upper bounds with a common ratio, finding that the ratio approaches the square root of the common ratio, a finding that is supported by the conjecture. Read More

02

Replicating Lamport's Distributed Mutual Exclusion Algorithm in DistAlgo

View project on GitHub

This project is a replication of research by Liu et al. (2024). Unlike traditional implementations that use polling-based code with manual message handling and state management, DistAlgo enables incremental computation to atuomatically optimize the condition evaluation, only re-checking when relevant messages arrive rather than continuously polling across all conditions, resulting in much better performance while maintaining accuracy, as described by Liu et al. Many thanks to Dr. Liu for answering my questions and for the resources to help in understanding her work in incrementalization for efficiency improvement. Read More

03

Multiplayer Voting Game for Distributed Systems in DistAlgo

View project on GitHub

An algorithm for distributed systems based on the voting elimination game mechanic of Among Us, created using the incrementalization framework for efficient distributed computation developed by Liu et al. (2024). The system showcases how incremental techniques can optimize distributed gaming scenarios by avoiding unnecessary recomputation and maintaining efficient state management across multiple processes. Read More

Other Projects

01

Learning Enrichment Engine

02

Peer Tutor Website