Thomas Reps

Registered user since Mon 13 Apr 2015

Name:Thomas Reps

Thomas W. Reps is the J. Barkley Rosser Professor & Rajiv and Ritu Batra Chair in the Computer Sciences Department of the University of Wisconsin, which he joined in 1985. Reps is the author or co-author of four books and more than one hundred seventy-five papers describing his research (see His work has concerned a wide variety of topics, including program slicing, dataflow analysis, pointer analysis, model checking, computer security, code instrumentation, language-based program-development environments, the use of program profiling in software testing, software renovation, incremental algorithms, and attribute grammars.

His collaboration with Professor Tim Teitelbaum at Cornell University from 1978 to 1985 led to the creation of two systems—the Cornell Program Synthesizer and the Synthesizer Generator—that explored how to build interactive programming tools that incorporate knowledge about the programming language being supported. The systems that they created were similar to modern program-development environments, such as Microsoft Visual Studio and Eclipse, but pre-dated them by more than two decades. Reps is President of GrammaTech, Inc., which he and Teitelbaum founded in 1988 to commercialize this work.

At Wisconsin, Professor Reps and collaborator Professor Susan Horwitz carried out many investigations of program slicing and its applications in software engineering. Reps’s most recent work concerns program analysis, computer security, and software model checking.

In 1996, Reps served as a consultant to DARPA to help them plan a project aimed at reducing the impact of the Year 2000 Problem on the U.S. Department of Defense. In 2003, he served on the F/A-22 Avionics Advisory Team, which provided advice to the U.S. Department of Defense about problems uncovered during integration testing of the plane’s avionics software.

Professor Reps received his Ph.D. in Computer Science from Cornell University in 1982. His Ph.D. dissertation won the 1983 ACM Doctoral Dissertation Award.

Reps’s 1988 paper on interprocedural slicing, with Susan Horwitz and his then-student David Binkley, was selected as one of the 50 most influential papers from the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), 1979-99. According to Google Scholar, the 1988 paper and the subsequent journal version have received over 1,780 citations.

His 2004 paper about analysis of assembly code, with his student Gogul Balakrishnan, received the ETAPS Best-Paper Award for 2004 from the European Association for Programming Languages and Systems (EAPLS). His 2008 paper about a system for generating static analyzers for machine instructions, with his student Junghee Lim, received the ETAPS Best-Paper Award for 2008 from EAPLS. In 2010, his 1984 paper “The Synthesizer Generator,” with Tim Teitelbaum, received an ACM SIGSOFT Retrospective Impact Paper Award. In 2011, his 1994 paper “Speeding up slicing,” with Susan Horwitz, Mooly Sagiv, and Genevieve Rosay, also received an ACM SIGSOFT Retrospective Impact Paper Award.

Four of his students, Gogul Balakrishnan, Akash Lal, Junghee Lim, and Aditya Thakur, have been recipients of the Outstanding Graduate Student Research Award given by the University of Wisconsin Computer Sciences Department. Akash Lal was also a co-recipient of the 2009 SIGPLAN Outstanding Doctoral Dissertation Award, and he was named as one of the 18 awardees selected for the 2011 India TR-35 list (top innovators under 35).

Reps has also been the recipient of an NSF Presidential Young Investigator Award (1986), a Packard Fellowship (1988), a Humboldt Research Award (2000), and a Guggenheim Fellowship (2000). He is also an ACM Fellow (2005). In 2013, Reps was elected a foreign member of Academia Europaea.

Reps has held visiting positions at the Institut National de Recherche en Informatique et en Automatique (INRIA) in Rocquencourt, France (1982-83), the University of Copenhagen, Denmark (1993-94), the Consiglio Nazionale delle Ricerche in Pisa, Italy (2000-2001), and the University Paris Diderot—Paris 7 (2007-2008).

Country:United States
Affiliation:University of Wisconsin-Madison
Research interests:program analysis; abstract interpretation; model checking; programming languages; computer security


POPL 2023 Author of Single-Source-Single-Target Interleaved-Dyck Reachability via Integer Linear Programming within the POPL-track
Author of Unrealizability Logic within the POPL-track
SPLASH 2022 Author of Synthesizing Abstract Transformers within the OOPSLA-track
POPL 2022 Author of Program Analysis via Graph Reachability: Past, Present, and Future [Part A] within the TutorialFest-track
SAS 2021 Committee Member in Program Committee within the SAS-track
SPLASH 2021 Committee Member in External Review Committee within the OOPSLA-track
PLDI 2021 Author of Sound Probabilistic Inference via Guide Types within the PLDI-track
Author of Central Moment Analysis for Cost Accumulators in Probabilistic Programs within the PLDI-track
Committee Member in Program Committee within the PLDI-track
PLMW@PLDI 2021 Speaker of Tips on Writing a Research Paper within the PLMW@PLDI 2021-track
ICSE 2021 Author of Shipwright: A Human-in-the-Loop System for Dockerfile Repair within the AE - Artifact Evaluation-track
Author of Shipwright: A Human-in-the-Loop System for Dockerfile Repair within the Technical Track-track
POPL 2021 Author of On the Complexity of Bidirected Interleaved Dyck-Reachability within the POPL-track
Committee Member in Selection Committee within the Student Research Competition-track
Author of Semantics-Guided Synthesis within the POPL-track
ICSE 2020 Author of Learning from, Understanding, and Supporting DevOps Artifacts for Docker within the Technical Papers-track
MSR 2020 Author of A Dataset of Dockerfiles within the Data Showcase-track
PLDI 2020 Author of Templates and Recurrences: Better Together within the PLDI Research Papers-track
Author of Exact and Approximate Methods for Proving Unrealizability of Syntax-Guided Synthesis Problems within the PLDI Research Papers-track
Author of Fast Graph Simplification for Interleaved Dyck-Reachability within the PLDI Research Papers-track
ETAPS 2019 Speaker of A tale of two MURIs: Authorization Meets Model Checking within the Mentoring Workshop-track
Author of The Dilemma of Shape Analysis within the Mooly Fest-track
Speaker in Speakers within the Mentoring Workshop-track
POPL 2019 Author of Refinement of Path Expressions for Static Analysis within the Research Papers-track
Author of Closed Forms for Numerical Loops within the Research Papers-track
ESEC/FSE 2018 Author of Code Vectors: Understanding Programs Through Embedded Abstracted Symbolic Traces within the Research Papers-track
PLDI 2018 Author of PMAF: An Algebraic Framework for Static Analysis of Probabilistic Programs within the PLDI Research Papers-track
POPL 2018 Author of Introduction to Algebraic Program analysis. within the TutorialFest-track
Author of Non-Linear Reasoning For Invariant Synthesis within the Artifact Evaluation-track
Author of Non-Linear Reasoning For Invariant Synthesis within the Research Papers-track
PEPM 2018 Committee Member in Programme Committee within the PEPM 2018-track
SPLASH 2017 Author of Model-Assisted Machine-Code Synthesis within the OOPSLA-track
PLDI 2017 Author of Compositional Recurrence Analysis Revisited within the PLDI Research Papers-track
POPL 2017 Author of Component-Based Synthesis for Complex APIs within the POPL-track
VMCAI 2017 Author of Sound Bit-Precise Numerical Domains within the VMCAI-track
Committee Member in Steering Committee
SPLASH 2016 Author of Speeding Up Machine-Code Synthesis within the OOPSLA-track
Author of An Improved Algorithm for Slicing Machine Code within the OOPSLA-track
POPL 2016 Author of Newtonian Program Analysis via Tensor Product within the Research Papers-track
VMCAI Author of Automating Abstract Interpretation within the VMCAI-track
Committee Member in Steering Committee
SPLASH 2015 Author of Partial Evaluation of Machine Code within the OOPSLA-track
WODA 2015 Author of Recovering Execution Data from Incomplete Observations within the WODA-track
PLDI 2015 Author of Synthesis of Machine Code from Semantics within the Research Papers-track