PIPages
Labs

Juan Zhai

University of Massachusetts, MA·Computer Science·Early-career

AI tools now write, test and revise software code. Yet even the best of them struggle to answer a basic question: does the program do what it is supposed to do?

Fields

Computer Science

Engineering

Topics

formal specifications

software engineering

specification inference

Grants
1 known grant, through Jun 2031

What they work on

  1. Build a repository-level dataset linking natural-language documentation, formal behavioral specifications and code, with an automated pipeline for reproducible evaluation of specification accuracy.
  2. Develop methods that infer formal specifications from documentation and program structure, and carry them across code dependencies.
  3. Keep specifications aligned with code as software changes across versions, so behavioral rules stay accurate over time.
  4. Create specification-driven tools that use formal specifications as constraints to guide AI code generation and detect behavioral inconsistencies early.

More about the research

Answering that requires formal specifications, which are precise, machine-checkable descriptions of how code should behave. Such specifications are rare because they are hard to write and keep up to date. This project aims to make formal specifications practical and to put them at the center of software development, especially when AI systems generate code.

Why it matters

Reliable specifications could make AI-driven autonomous software systems safer and reduce costly software failures. Developers of critical software, such as healthcare and finance systems, could use them to catch behavioral errors before deployment. This could make digital systems more dependable and more trustworthy.

Known grants

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

CAREER: Formal Specifications as a Foundation for Aligned and Automated Software Engineering

NSF · Jul 2026 – Jun 2031

Closest labs

Tej Chajed

University of Wisconsin-Madison, WI·Computer Science·Early-career

Define specifications for data-format compatibility that require new code to correctly handle any data the previous software version might have produced.

Antonio Mastropaolo

William & Mary, VA·Computer Science

Test whether filtering low-quality training examples with task-specific software engineering metrics lowers the computational cost of training large language models for code while preserving their learning ability.

Claire Le Goues

Carnegie Mellon University, PA·Computer Science

Develop techniques to infer behavior models with physical attributes from robotic system code, APIs and configuration files, and check those models against component and system properties to detect faults that appear when parts are combined.

The school

University of Massachusetts: 28 labs on PI Pages, $282M a year on research, 337 research doctorates a year.

More about University of Massachusetts

Reach out

A start for your email. Fill in the brackets.