Ravneet Singh Bhatia

Graduate student

Systems + theory overview

I’m Ravneet, a graduate student in computer science interested in building practical systems that make complex ideas easier to understand. My work sits at the intersection of compilers, programming language theory, systems, data visualization, linguistics, and multi-agent systems. I’m especially drawn to projects where theoretical foundations become usable tools, whether that means improving compiler workflows, designing clearer program representations, or visualizing the behavior of complex systems.

GPU e-graphs thesis

My thesis explores how e-graph-based programming languages can be implemented efficiently on GPUs using CUDA. E-graphs are powerful data structures used in program optimization, symbolic reasoning, and equality saturation, but their performance can be limited by the cost of maintaining and searching large equivalence classes. This project investigates how GPU parallelism can accelerate core e-graph operations, making equality saturation more scalable for complex programs.

Research assistant work

As a research assistant, I work on visualizing complex type-checking data structures, turning abstract compiler internals into representations that are easier to inspect and reason about. That work connects programming language theory, compiler implementation, and visual explanation, with a focus on making dense systems legible without flattening their technical detail.

Rizz-V + systems tools

Outside of coursework and research, I build systems-oriented tools such as Rizz-V, a Rust-based RISC-V-inspired emulator and visualization workflow that parses assembly, executes programs step by step, generates traces, performs control-flow analysis, and exposes results through both CLI and browser-based interfaces. Across my projects, I aim to combine rigorous technical foundations with clear interfaces that help people understand, debug, and explore complex computational behavior.