This talk will recount my 25-year journey developing Context-Free-Language Ordered Binary Decision Diagrams (CFLOBDDs), a data structure for representing information in a highly compressed fashion. The work uses ideas from symbolic model checking, path profiling, and quantum simulation – what could these topics possibly have in common?
CFLOBDDs are essentially plug-compatible with Binary Decision Diagrams (BDDs), and hence useful for representing certain classes of functions, relations, matrices, graphs, etc. in a highly compressed fashion. CFLOBDDs share many of the good properties of BDDs, but – in the best case – the CFLOBDD for a function can be exponentially smaller than any BDD for that function. Compared with the size of the decision tree for a function, a CFLOBDD – again, in the best case – can give a double-exponential reduction in size.
CFLOBDDs have the potential to permit applications to (i) execute much faster, and (ii) handle much larger problem instances than has been possible heretofore. However, CFLOBDDs have certain additional overheads compared with BDDs, so they are only better than BDDs for representing very large relations. The successful application area we found is quantum simulation, where the matrices that need to be represented are huge.
Where does path profiling fit into the story? Come to the talk and find out!
Joint work with Meghana Sistla (UT-Austin) and Swarat Chaudhuri (UT-Austin and Google Deepmind).
| Slides (CFLOBDDs-ASE-Keynote-2025.pdf) | 17.35MiB |
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 two hundred twenty-five papers describing his research (see http://pages.cs.wisc.edu/~reps/). 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.
Five of his students, Gogul Balakrishnan, Akash Lal, Junghee Lim, Aditya Thakur, and Venkatesh Srinivasan, 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 received the ACM SIGPLAN Programming Languages Achievement Award for 2017.
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).
Mon 17 NovDisplayed time zone: Seoul change
09:30 - 10:30 | |||
09:30 60mKeynote | We Will Publish No Algorithm Before Its Time Keynote Thomas Reps University of Wisconsin-Madison File Attached | ||
