PIPages
Labs

Xiaokang Qiu

Purdue University, IN·Computer Science·Early-career

Writing correct, efficient code is hard. Program synthesis, where a computer generates a program from a description of what the user wants, could make it easier, but today's synthesizers are usable mainly by experts.

Fields

Computer Science

Engineering

Topics

program synthesis

code generation

formal methods

Grants
2 known grants, through Sep 2027

What they work on

  1. Develop program synthesis algorithms that infer objective functions, library models and task decomposition themselves, so programmers need not hand-craft them, enabling scalable library-based synthesis.
  2. Integrate algorithmic synthesis into ordinary software development so that regular programmers, not only experts, can use synthesizers to generate code that meets their intent.
  3. Design P4Sketch, a sketch-based language extending the router programming language P4, in which network architects state high-level designs and custom, even indeterminate, optimization goals.
  4. Build a domain-specific synthesis algorithm that turns P4Sketch sketches into optimal P4 programs, coordinating a model generator for external functions with the code synthesizer, plus testing and verification tools.

More about the research

This work develops synthesis methods that ordinary programmers can use, and applies them to programming network devices.

Why it matters

Easier-to-use program synthesis could help regular programmers and people in other fields solve their programming problems without deep expertise. Simpler data plane programming could help network engineers in the networking and IT industry build tools for diagnosing performance problems and detecting cyberattacks with less effort and fewer errors.

Known grants

From NIH and NSF research grants. Labs often have other funding we can't see.

FMitF: Track I: Flexible Data Plane Programming

NSF · Oct 2023 – Sep 2027

CAREER: Democratizing Algorithmic Program Synthesis

NSF · Apr 2021 – Mar 2027

Closest labs

Milijana Surbatovich

University of Maryland, MD·Computer Science·Early-career

Develop the first formal model of an intermittence-safe operating system, with defined abstraction layers that separate tiers of trust and allow each component to be verified on its own.

Swarat Chaudhuri

University of Texas at Austin, TX·Computer Science

Develop foundation model programming, which writes scientific hypotheses as programs combining symbolic rules with neural modules and foundation models, to extract interpretable concepts from images and video.

Rastislav Bodik

University of Washington, WA·Computer Science

Build a foundation for interactive program synthesis as an extension of solver-aided programming, defining a small set of primitive queries from which interactive tasks such as computing alternative explanations of a synthesized program can be implemented.

The school

Purdue University: 43 labs on PI Pages, $932M a year on research, 833 research doctorates a year.

More about Purdue University

Reach out

A start for your email. Fill in the brackets.