Research
My research lies at the intersection of software engineering, programming systems, and AI. My current interests include agentic software engineering, testing agentic AI systems, and quantum software engineering. My research is funded by NSF, Cisco, UCR Senate, and SoCal OASIS.
Ongoing Research Directions
-
Long-Horizon Agentic Software Engineering: Evolution and Maintainability
We evaluate and improve the ability of AI coding agents to evolve, maintain, and repair software over extended development cycles, so that they preserve existing functionality, keep quality high, and produce maintainable code as requirements and codebases change. The goal is to move beyond one-shot code generation toward reliable, long-horizon software engineering, where correctness, regression prevention, and maintainability hold across successive changes.
Representative papers -
AI-Assisted Testing for Stateful and History-Dependent Software
We develop AI-assisted techniques for testing complex software whose behavior depends on execution history, internal state, and sequences of interactions. The work covers state-aware testing together with intelligent test generation, fault localization, mutation testing, and automated debugging, with the aim of improving the effectiveness and reliability of software testing.
Representative papers- SemLoc: Semantic Spectra for Fault Localization (FSE 2026, IVR) [project page]
- Argus: A Guided and Traceable Mutation Testing Engine (FSE 2026, Demonstrations) [code]
- Calico: Automated Knowledge Calibration and Diagnosis for Elevating AI Mastery in Code Tasks (ISSTA 2024) [slides] [video] [tool]
- DoTA: Intelligent Debugging via Delta of Thought Agents (ACM SIGOPS 2026)
- When Fuzzing Becomes Agentic: Semantic State Exploration in the Wild (ASA-Fuzz) (ICLR 2026 Workshop)
- Efficient Test Generation for Dynamic Behaviors Leveraging Token-Level Input Commonalities (SynToken) (FSE 2025)
- Generating Highly Structured Test Inputs Leveraging Constraint-Guided Graph Refinement (GRAphRef) (ICSME 2025)
- Testing AI Systems Leveraging Graph Perturbation (FSE 2024, Poster)
- Augmenting Greybox Fuzzing with Generative AI
-
Robust AI Compilers and Heterogeneous Systems
We develop systematic testing, debugging, and analysis techniques for AI compilation and deployment systems. The work investigates correctness failures arising from multi-layer compilation, compiler-platform interactions, model transformations, and heterogeneous hardware backends.
Representative papers and projects- DuoReduce: Bug Isolation for Multi-Layer Extensible Compilation (FSE 2025)
- Finding Compiler-Platform Interaction Bugs in Deep Learning Pipelines via Cross-Layer Constraints (XCheck) (preprint)
- Tensor Algebraic Property Skeletons: Amplifying Property-Based Testing for AI Compilers (ProPilot) (preprint)
-
Quantum Software Engineering: Testing and Reliability
We develop testing and analysis techniques for the reliability of quantum software stacks, including quantum programs, compilers, intermediate representations, and execution frameworks. The goal is to identify realistic software faults, improve testing coverage, and build fault models and benchmarks that better reflect real-world quantum software failures.
Representative papers
Concluded Research Projects
-
Testing Large-Scale Data Analytics Systems
We develop automated testing and performance analysis for data-intensive systems, improving test generation and evaluating the correctness and performance of large-scale data analytics frameworks. The project covers framework-aware fuzzing and automated performance benchmark generation.
Representative papers- BigFuzz: Efficient Fuzz Testing for Data Analytics using Framework Abstraction (ASE 2021) [slides] [video] [tool]
- Efficient Fuzz Testing for Apache Spark Using Framework Abstraction (ICSE 2021, Demonstrations)
- PerfGen: Automated Performance Benchmark Generation for Big Data Analytics (FSE Companion 2026)
-
Software Testing for Heterogeneous Computing
We develop software engineering techniques for heterogeneous computing, including platform-dependent bug detection, code transformation, automated test generation, and program repair.
Representative papers- HeteroRefactor: Refactoring for Heterogeneous Computing with FPGA (ICSE 2020) [slides] [video] [tool]
- HeteroFuzz: Fuzz Testing to Detect Platform Dependent Divergence (FSE 2021)
- HeteroGen: Transpiling C to Heterogeneous HLS Code with Automated Test Generation and Program Repair (ASPLOS 2022)
- Leveraging Hardware Probes and Optimizations for Accelerating Fuzz Testing of Heterogeneous Applications (FSE 2023)
-
Approximate Computing and Quality Assurance
We developed quality-aware optimization techniques and reliability frameworks for approximate computing, balancing computational efficiency with acceptable output quality.
Representative papers- ApproxIt: A Quality Management Framework of Approximate Computing for Iterative Methods (TCAD 2020)
- ApproxQA: A Unified Quality Assurance Framework for Approximate Computing (DATE 2017)
- ApproxLUT: A Novel Approximate Lookup Table-Based Accelerator (ICCAD 2017)
- Lookup Table Allocation for Approximate Computing with Memory Under Quality Constraints (DATE 2018)
- On Effective and Efficient Quality Management for Approximate Computing (ISLPED 2016)
- On Resilient Task Allocation and Scheduling with Uncertain Quality Checkers (ASP-DAC 2017)
- ApproxMap: On Task Allocation and Scheduling for Resilient Applications (ASP-DAC 2016)
- ApproxMA: Approximate Memory Access for Dynamic Precision Scaling (GLSVLSI 2015, Invited)
- ApproxEigen: An Approximate Computing Technique for Large-Scale Eigen-Decomposition (ICCAD 2015)
- ApproxANN: An Approximate Computing Framework for Artificial Neural Network (DATE 2015)
- ApproxIt: An Approximate Computing Framework for Iterative Methods (DAC 2014)
-
Other Projects
Earlier work on sketch-based user interfaces for augmented reality and on hardware-oriented behavioral synthesis.
Representative papers- ARSketch: Sketch-Based User Interface for Augmented Reality Glasses (ACM Multimedia 2020)
- On hybrid memory allocation for FPGA behavioral synthesis (FPGA 2014, Poster)