Mukund Raghothaman

University of Southern California
Country flagUnited States

Research Interests

Explore related searches

Contact this professor

Get a free first email built on one of their papers, ready for you to edit and send yourself.

Articles (7)

Year:

2025

The traditional formulation of the program synthesis problem is to find a program that meets a logical correctness specification. When synthesis is successful, there is a guarantee that the implementation satisfies the specification. Unfortunately, synthesis engines are typically monolithic algorithms, and obscure the correspondence between the specification, implementation and user intent. In contrast, humans often include comments in their code to guide future developers towards the purpose and design of different parts of the codebase. In this paper, we introduce subspecifications as a mechanism to augment the synthesized implementation with explanatory notes of this form. In this model, the user may ask for explanations of different parts of the implementation; the subspecification generated in response is a logical formula that describes the constraints induced on that subexpression by the global specification and surrounding implementation. We develop algorithms to construct and verify subspecifications and investigate their theoretical properties. We perform an experimental evaluation of the subspecification generation procedure, and measure its effectiveness and running time. Finally, we conduct a user study to determine whether subspecifications are useful: we find that subspecifications greatly aid in understanding the global specification, in identifying alternative implementations, and in debugging faulty implementations.

Year:

2023

Year:

2023

Year:

2023

Year:

2021

Year:

2020

Year:

2020

Collaborators (2)

Caleb Stanford

Assistant professor

University of California, Davis

UNITED STATES
View details

David Zhao

University of Sydney

AUSTRALIA
View details
ApplyKite TwinLearns as you apply

Make your next move.

Prepare your application

Review drafts before you send them.