|
Contact Information:
E-mail: reps at cs.wisc.edu
Telephone: (608) 262-2091
Secretary: (608) 262-6616
Department: (608) 262-1204
Fax: (608) 262-9777
Finger information
Some Maps:
Campus Map |
Campus-to-Capitol Map |
City Map
Ph.D., Cornell University, 1982
(CV,
Biography,
Research Summary,
Past Research)
Research Interests:
See also
CiteseerX,
Citeseer,
Google Scholar,
Microsoft Libra,
Microsoft Libra's SE&PL; Authors,
and
DB&LP;.
Projects:
Recent Items of Note
Recent Papers
[Back to the top]
Miscellaneous
The paper
-
Horwitz, S., Reps, T., and Binkley, D.,
Interprocedural slicing using dependence graphs.
In Proceedings of the ACM SIGPLAN 88 Conference on Programming
Language Design and Implementation, (Atlanta, GA, June 22-24, 1988),
ACM SIGPLAN Notices 23, 7 (July 1988), pp. 35-46.
[abstract]
was selected for inclusion in a special SIGPLAN collection of the
50 most influential papers from the SIGPLAN Conference on Programming
Language Design and Implementation from 1979 to 1999:
-
Horwitz, S., Reps, T., and Binkley, D.,
Interprocedural slicing using dependence graphs.
20 Years of the ACM SIGPLAN Conference on Programming Language Design
and Implementation (1979 - 1999): A Selection, K.S. McKinley, ed.,
ACM SIGPLAN Notices 39, 4 (April 2004), 232-243.
A retrospective on the paper was published as
-
Horwitz, S., Reps, T., and Binkley, D.,
Retrospective: Interprocedural slicing using dependence graphs.
20 Years of the ACM SIGPLAN Conference on Programming Language Design
and Implementation (1979 - 1999): A Selection, K.S. McKinley, ed.,
ACM SIGPLAN Notices 39, 4 (April 2004), 229-231.
[retrospective (PS);
retrospective (PDF)]
An extended version of the PLDI 88 paper later appeared as the following
journal paper:
-
Horwitz, S., Reps, T., and Binkley, D.,
Interprocedural slicing using dependence graphs.
ACM Transactions on Programming Languages and Systems 12, 1
(January 1990), 26-60.
[abstract;
paper]
[Back to the top]
Availability of Program-Slicing Tools
The Wisconsin Program-Slicing Tool
The The Wisconsin Program-Slicing Tool
is a software system that supports operations on C programs, including
backward slicing, forward slicing, and chopping
[TOPLAS90, FSE94,
FSE95b],
which can help the user gain an understanding of what a program does
and how it works.
The Wisconsin Program-Slicing Tool consists of a package for building
and manipulating control-flow graphs and program dependence graphs, as
well as a front-end that parses C programs and translates them to the
internal representations used for slicing.
Although the Wisconsin Program-Slicing Tool
was distributed from 1996-2000 for not-for-profit
research purposes under license from the University of Wisconsin,
it is no longer being distributed.
However, there is a commercial tool available, named
CodeSurfer, that is derived from the
Wisconsin implementation and is available from
GrammaTech, Inc.
GrammaTech has improved on the Wisconsin implementation considerably
(both in terms of speed and space efficiency).
GrammaTech also provides CodeSurfer to academic researchers on very
favorable terms.
CodeSurfer
The Wisconsin program-slicing technology is now available in a
commercial product, the
CodeSurfertm
tool available from GrammaTech, Inc.
CodeSurfer builds a dependence-graph program representation
and provides a GUI for exploring this web.
The dependence graph includes forward and backward links between each
assignment statement and possible uses of the values stored by that
assignment.
Pointer analysis is used so that indirect loads and stores through
pointers are taken into account, as well as indirect function calls.
Dataflow analysis is used so that links between unrelated
assignments and uses are excluded.
Operations that highlight forward and backward slices show the impact
of a given statement on the rest of the program (forward slicing), and
the impact of the rest of a program on a given statement (backward
slicing) [TOPLAS90, FSE94].
Operations that highlight paths between
nodes in the dependence graph (chops) show ways in which the
program points are interdependent (or independent)
[FSE95b].
CodeSurfer's scripting language, which provides access to the
dependence-graph program representation and the Tk widget set, is used
for extensibility and for batch applications.
Full information about CodeSurfer is available
here, where you can find
- full documentation,
- whitepapers,
- pricing information,
- information about use by academic researchers.
You should be aware that the most important current limitations of
CodeSurfer are as follows:
- Language: C (full support), C++ (alpha support)
- Program length: < 200K SLOC
CodeSurfer is currently available for
Windows NT, Windows 2000, Windows XP, Linux, and Solaris (2.5.1 or later).
[Back to the top]
Categorized Index to Publications
Program Slicing, Differencing, Merging, etc.
Overview
The Wisconsin Program-Slicing Tool
CodeSurfer System
Slicing
Chopping
Differencing
Merging
Algebra of slices (and applications to program merging)
Semantics and slicing
Other applications of slicing
Implemented integration system (for a small Pascal subset)
Miscellaneous
Ph.D. Dissertations
[Back to the top]
Interprocedural Dataflow Analysis
Demand IDFA via bottom-up logic programming and the magic-sets transformation
Exhaustive and Demand IDFA via graph reachability
IDFA using more than graph reachability
PTIME completeness of IDFA
[Back to the top]
Alias Analysis, Pointer Analysis, and Shape Analysis
- ``A relational approach to interprocedural shape analysis''
(also ``A relational approach to interprocedural shape analysis'', SAS 2004)
- ``Refinement-based program verification via three-valued-logic analysis''
- ``Automated verification of the Deutsch-Schorr-Waite tree-traversal algorithm''
- ``Recency-abstraction for heap-allocated storage''
- ``Automatic verification of strongly dynamic software systems''
- ``A relational abstraction for functions''
- ``Simulating reachability using first-order logic with applications to verification of linked data structures''
- ``Abstraction refinement via inductive learning''
- ``On the utility of canonical abstraction''
- ``Numeric analysis of array operations''
- ``A semantics for procedure local heaps and its abstractions''
- ``Static program analysis via 3-valued logic''
- ``Verification via structure simulation''
- ``Symbolically computing most-precise abstract operations for shape analysis''
- ``Verifying temporal heap properties specified via evolution logic''
- ``Finite differencing of logical formulas for static analysis''
- ``Parametric shape analysis via 3-valued logic''
- ``Putting static analysis to work for verification: A case study''
- ``Shape analysis'', CC 2000
- ``Pointer analysis for programs with structures and casting''
- ``A decidable logic for describing linked data structures''
- ``Program analysis via graph reachability'', IST
(also ``Program analysis via graph reachability'', TR-1386, and
``Program analysis via graph reachability'', ILPS 97)
- ``Program specialization via program slicing''
- ``Solving shape-analysis problems in languages with destructive updating'', TOPLAS
(also ``Solving shape-analysis problems in languages with destructive updating'', POPL 1996, and
``Solving shape-analysis problems in languages with destructive updating'', TR-1276)
- ``Shape analysis as a generalized path problem''
- ``Dependence-based representations for programs with reference variables''
- ``Dependence analysis for pointer variables''
Ph.D. Dissertations
[Back to the top]
Other Program-Analysis Problems
- ``Extracting output formats from executables''
- ``Lookahead widening''
- ``Numeric domains with summarized dimensions''
- ``Symbolic implementation of the best transformer''
- ``The interprocedural express-lane transformation''
- ``Interprocedural path profiling and
the interprocedural express-lane transformation'', Melski thesis
- ``Typestate checking of machine code''
- ``Safety-checking of machine code'', Xu thesis
- ``Safety checking of machine code'', PLDI 00
- ``Putting static analysis to work for verification: A case study''
- ``Physical type checking for C'', PASTE 99
(also ``Physical type checking for C'', BL0113590-990302-04)
- ``Coping with type casts in C'', FSE 99
(also ``Coping with type casts in C'', BL0113590-990202-03)
- ``Interprocedural path profiling'', CC 99
(also ``Interprocedural path profiling'', TR-1382)
- ``Techniques for software renovation''
- ``Program analysis via graph reachability'', IST
(also ``Program analysis via graph reachability'', TR-1386, and
``Program analysis via graph reachability'', ILPS 97)
- ``Interconvertibility of a class of set constraints and context-free language reachability'', TCS
(also ``Interconvertibility of set constraints and context-free language reachability'', PEPM 97)
- ``Identifying modules via concept analysis'', TSE
(also ``Identifying modules via concept analysis'', ICSM 97)
- ``The use of program profiling for software maintenance
with applications to the Year 2000 Problem''
(also ``The use of program profiling in software testing'')
- ``Method of troubleshooting data-dependent anomalies in computer programs''
- ``BTA termination using CFL-reachability''
- ``Program generalization for software reuse: From C to C++''
- ``Semantic foundations of binding-time analysis for imperative programs''
Ph.D. Dissertations
[Back to the top]
Path Problems
Context-Free-Language Reachability
- ``Model checking of unrestricted hierarchical state machines''
- ``Program analysis via graph reachability'', IST
(also ``Program analysis via graph reachability'', TR-1386, and
``Program analysis via graph reachability'', ILPS 97)
- ``Interconvertibility of a class of set constraints and context-free language reachability'', TCS
(also ``Interconvertibility of set constraints and context-free language reachability'', PEPM 97)
- ``Undecidability of context-sensitive data-dependence analysis''
- ``Speeding up slicing''
- ``Interprocedural slicing of computer programs using dependence graphs''
- ``Interprocedural slicing using dependence graphs'', TOPLAS 1990
(also ``Interprocedural slicing using dependence graphs'', PLDI 1988)
- ``Demand interprocedural dataflow analysis'', TR-1283
(also ``Demand interprocedural dataflow analysis'', FSE 1995)
- ``Precise interprocedural dataflow analysis via graph reachability''
- ``Interprocedural dataflow analysis via graph reachability''
- ``On the sequential nature of interprocedural program-analysis problems''
- ``Shape analysis as a generalized path problem''
Other Path Problems
Ph.D. Dissertations
[Back to the top]
Model Checking
[Back to the top]
Computer Security
Ph.D. Dissertations
[Back to the top]
Code Instrumentation
Ph.D. Dissertations
[Back to the top]
Computational Differentiation and Computational Divided Differencing
[Back to the top]
Language-Based Program-Development Environments
Ph.D. Dissertations
[Back to the top]
Incremental Computing
Ph.D. Dissertations
[Back to the top]
Attribute Grammars
Ph.D. Dissertations
[Back to the top]
Miscellaneous
[Back to the top]
Disclaimer
This web page contains links to PostScript and PDF files of articles that may
be covered by copyright. You may browse the articles at your
convenience (in the same spirit that you read a journal article or an
article from a conference proceedings in a public library).
Retrieving, copying, or distributing these files may violate copyright
law.
Please note that the definitive versions of these papers are the
published versions. The PostScript versions are provided
here as a courtesy, and, in some cases, there may be differences
between the PostScript provided here and the published version.
We believe that all of the differences are either formatting differences or
copy-editing changes. If you cite these papers, please cite the
published version rather than giving a URL.
[Back to the top]
List of Publications
See also
CiteseerX,
Citeseer,
Google Scholar,
Microsoft Libra,
Microsoft Libra's SE&PL; Authors,
and
DB&LP;.
Books
[Back to the top]
Journal Publications
-
Yorsh, G., Reps, T., Sagiv, M., and Wilhelm, R.,
Logical characterizations of heap abstractions.
In ACM Transactions on Computational Logic 8, 1 (Jan. 2007).
[abstract;
PostScript;
PDF.]
-
Yahav, E., Reps, T., Sagiv, M., and Wilhelm, R.,
Verifying temporal heap properties specified via evolution logic.
Logic Journal of the IGPL 14, 5 (Oct. 2006), 755-784.
[abstract;
PDF.]
-
Reps, T., Schwoon, S., Jha, S., and Melski, D.,
Weighted pushdown systems and their application to interprocedural
dataflow analysis.
Science of Computer Programming 58, 1-2 (Oct. 2005), 206-263.
[abstract;
PostScript;
PDF.]
-
Alur, R., Benedikt, M., Etessami, K., Godefroid, P., Reps, T., and Yannakakis, M.,
Analysis of recursive state machines.
In ACM Trans. on Program. Lang. and Syst. 27, 4 (2005), 786-818.
[abstract;
PDF (via ACM Digital Library).]
-
Jha, S. and Reps, T.,
Model checking SPKI/SDSI.
In Journal of Computer Security 12, 3-4 (2004), 317-353.
[abstract;
PDF]
-
Anderson, P., Reps, T., and Teitelbaum, T.,
Design and implementation of a fine-grained software inspection tool.
In IEEE Trans. on Software Engineering 29, 8 (Aug. 2003), 721-733.
[abstract;
paper, via IEEE Explore.]
-
Reps, T.W. and Rall, L.B.,
Computational divided differencing and divided-difference arithmetics.
In Higher-Order and Symbolic Computation 16, 1-2 (2003), 93-149.
[abstract;
tech. report version: PostScript,
PDF;
talk: Powerpoint]
-
Clarke, E.M., Fujita, M., Rajan, P.S., Reps, T., Shankar, S., and
Teitelbaum, T.,
Program slicing for VHDL.
In Software Tools for Technology Transfer 4, 1 (Oct. 2002),
125-137.
[abstract;
paper]
-
Sagiv, M., Reps, T., and Wilhelm, R.,
Parametric shape analysis via 3-valued logic.
In ACM Transactions on Programming Languages and Systems 24, 3 (2002), 217-298.
[abstract;
PostScript;
PDF;
talk: Powerpoint]
-
Reps, T.,
Undecidability of context-sensitive data-dependence analysis.
In ACM Transactions on Programming Languages and Systems 22, 1
(Jan. 2000), pp. 162-186.
[abstract;
PostScript;
PDF]
-
Melski, D. and Reps, T.,
Interconvertibility of a class of set constraints and context-free language reachability.
In Theoretical Computer Science 248, 1-2 (Nov. 2000), pp. 29-98.
[abstract;
PostScript;
PDF]
-
Siff, M. and Reps, T.,
Identifying modules via concept analysis.
In IEEE Transactions on Software Engineering 25, 6 (Nov./Dec. 1999),
pp. 749-768.
[abstract;
paper, via IEEE Explore.]
-
Reps, T.,
Program analysis via graph reachability.
Information and Software Technology 40, 11-12
(November/December 1998), pp. 701-726.
[abstract;
tech. report version of the paper:
PostScript;
PDF;
talk: Powerpoint]
-
Reps, T.,
``Maximal-munch'' tokenization in linear time.
ACM Transactions on Programming Languages and Systems 20, 2
(March 1998), pp. 259-273.
[abstract;
PostScript;
PDF]
-
Sagiv, M., Reps, T., and Wilhelm, R.,
Solving shape-analysis problems in languages with destructive updating.
ACM Transactions on Programming Languages and Systems 20,
1 (January 1998), pp. 1-50.
[abstract;
PostScript;
PDF]
-
Sagiv, M., Reps, T., and Horwitz, S.,
Precise interprocedural dataflow analysis with applications to
constant propagation.
Theoretical Computer Science 167 (1996), 131-170.
[abstract;
PDF]
-
Reps, T.,
On the sequential nature of interprocedural program-analysis problems.
Acta Informatica 33 (1996), 739-757.
[abstract;
paper]
-
Ramalingam, G. and Reps, T.,
An incremental algorithm for a generalization of the shortest-path problem.
Journal of Algorithms 21, (1996), 267-305.
[abstract;
paper]
-
Ramalingam, G. and Reps, T.,
On the computational complexity of dynamic graph problems.
Theoretical Computer Science A 158 (May 1996), 233-277.
[abstract;
paper]
-
Binkley, D., Horwitz, S., and Reps, T.,
Program integration for languages with procedure calls.
ACM Transactions on Software Engineering and Methodology 4, 1
(January 1995), pp. 3-35.
[abstract;
paper]
-
Ramalingam, G. and Reps, T.,
On competitive on-line algorithms for the dynamic priority-ordering problem.
Information Processing Letters 51 (1994), 155-161.
[abstract;
paper]
-
Yang, W., Horwitz, S., and Reps, T.,
A program integration algorithm that accommodates semantics-preserving
transformations.
ACM Transactions on Software Engineering and Methodology 1, 3
(July 1992), 310-354.
[abstract]
-
Reps, T.,
Algebraic properties of program integration.
Science of Computer Programming 17 (1991), 139-215.
[abstract;
paper]
-
Horwitz, S. and Reps, T.,
Efficient comparison of program slices.
Acta Informatica 28 (1991), 713-732.
[abstract]
-
Horwitz, S., Reps, T., and Binkley, D.,
Interprocedural slicing using dependence graphs.
ACM Transactions on Programming Languages and Systems 12, 1
(January 1990), 26-60.
[abstract;
paper]
-
Horwitz, S., Prins, J., and Reps, T.,
Integrating non-interfering versions of programs.
ACM Transactions on Programming Languages and Systems 11, 3 (July 1989),
345-387.
[abstract;
paper]
-
Reps, T.
Incremental evaluation for attribute grammars
with unrestricted movement between tree modifications.
Acta Informatica 25 (1988), 155-178.
[abstract]
-
Reps, T. and Demers, A.,
Sublinear-space evaluation algorithms for attribute grammars.
ACM Transactions on Programming Languages and Systems 9, 3 (July 1987),
408-440.
[abstract;
paper, via ACM Digital Library]
-
Reps, T., Teitelbaum, T., and Demers, A.,
Incremental context-dependent analysis for language-based editors.
ACM Transactions on Programming Languages and Systems 5, 3 (July 1983),
449-477.
[abstract;
paper, via ACM Digital Library]
-
Teitelbaum, T. and Reps, T.,
The Cornell Program Synthesizer: A syntax-directed programming environment.
Communications of the ACM 24, 9 (September 1981), 563-573.
[abstract;
paper, via ACM Digital Library]
[Back to the top]
Invited Papers
-
Reps, T. and Balakrishnan, G.,
Improved memory-access analysis for x86 executables.
(Paper accompanying ``unifying'' invited talk at ETAPS 2008.)
In Proc. Int. Conf. on Compiler Construction, April 2008.
[abstract;
PDF;
(c) Springer-Verlag]
-
Reps, T., Lal, A., and Kidd, N.,
Program analysis using weighted pushdown systems.
In Proc. 27th Conf. on Foundations of Software
Technology and Theoretical Computer Science (FSTTCS), (New Delhi,
India, Dec. 12-14, 2007).
[abstract;
PDF;
(c) Springer-Verlag.]
-
Balakrishnan, G., and Reps, T.,
DIVINE: DIscovering Variables IN Executables.
In Proc. VMCAI, (Nice, France, Jan. 14-16, 2007).
[abstract;
PDF;
(c) Springer-Verlag.]
-
Jha, S., Schwoon, S., Wang, H., and Reps, T.,
Weighted pushdown systems and trust-management systems.
In Proc. TACAS,
(Vienna, Austria, Mar. 25 - Apr. 2, 2006),
Springer-Verlag, New York, NY, 2006.
[abstract;
PDF;
(c) Springer-Verlag.]
-
Reps, T., Balakrishnan, G., and Lim, J.
Intermediate-representation recovery from low-level code.
In Proc. Workshop on Partial Evaluation and Program Manipulation (PEPM),
(Charleston, SC, Jan. 9-10, 2006).
[abstract;
PostScript;
PDF]
-
Reps, T., Balakrishnan, G., Lim, J., and Teitelbaum, T.,
A next-generation platform for analyzing executables.
In Proc. 3rd Asian Symposium on Programming Languages and Systems,
(Tsukuba, Japan, Nov. 3-5, 2005), Springer-Verlag, New York, NY, 2005.
[abstract;
PostScript;
PDF;
(c) Springer-Verlag.]
-
Reps, T., Sagiv, M., and Wilhelm, R.,
Static program analysis via 3-valued logic.
In Proc. Int. Conf. on Computer-Aided Verification,
Springer-Verlag, New York, NY, 2004, 15-30.
[abstract;
PostScript;
PDF;
(c) Springer-Verlag;
talk: Powerpoint.]
-
Rall, L.B. and Reps, T.W.,
Algorithmic differencing.
In Perspectives on Enclosure Methods,
U. Kulisch, R. Lohner, and A. Faciush (eds.), Springer-Verlag,
Vienna, 2001, 133-147. (Invited paper presented at SCAN 2000:
9th GAMM-IMACS Int. Symp. on Sci. Comput., Comp. Arith., and
Validated Numerics, (Karlsruhe, Ger., Sept. 19-22, 2000).)
[abstract]
-
Wilhelm, R., Sagiv, M., and Reps, T.,
Shape analysis.
In Proc. of CC 2000:
9th Int. Conf. on Compiler Construction,
(Berlin, Ger., Mar. 27 - Apr. 2, 2000).
[abstract;
PostScript;
PDF;
(c) Springer-Verlag]
-
Reps, T.,
Program analysis via graph reachability.
In Proc. of ILPS '97: International Logic Programming
Symposium, (Port Jefferson, NY, Oct. 12-16, 1997),
J. Maluszynski (ed.), The M.I.T. Press, Cambridge, MA, 1997, pp. 5-19.
[abstract;
paper,
(c) Springer-Verlag]
-
Reps, T.,
The use of program profiling in software testing.
In Proc. of Informatik '97 (Aachen, Germany, Sept. 24-27, 1997),
M. Jarke, K. Pasedach, and K. Pohl (eds.),
Springer-Verlag, Berlin, Ger., 1997, pp. 4-16.
[abstract;
paper,
(c) Springer-Verlag]
-
Horwitz, S. and Reps, T.,
The use of program dependence graphs in software engineering.
In Proceedings of the Fourteenth International Conference
on Software Engineering, (May 11-15, 1992, Melbourne, Australia),
ACM, New York, NY, 1992, pp. 392-411.
[abstract;
paper]
-
Reps, T. and Horwitz, S.,
Semantics-based program integration.
In Proceedings of the Second European Symposium on Programming,
(Nancy, France, March 21-25, 1988), Lecture Notes in Computer Science,
Vol. 300, H. Ganzinger (ed.), Springer-Verlag, New York, NY, 1988, pp. 1-20.
[Back to the top]
Book Chapters
-
Reps, T., Sagiv, M., and Wilhelm, R.,
Shape analysis and applications.
Chapter 12 in The Compiler Design Handbook:
Optimizations and Machine Code Generation,
2nd Edition, CRC Press, 2007.
-
Clarke, E., Kroening, D., and Reps, T.,
Static analysis to enhance the power of model
checking for concurrent software.
In Department of Defense Sponsored Information Security Research:
New Methods for Protecting Against Cyber Threats,
Wiley, 2007, 349-360.
-
Balakrishnan, G., Christodorescu, M., Ganapathy, V.,
Giffin, J.T., Rubin, S., Wang, H., Jha, S., Miller, B.P., and Reps, T.,
Analysis of COTS for Security Vulnerability Remediation
In Department of Defense Sponsored Information Security Research:
New Methods for Protecting Against Cyber Threats,
Wiley, 2007, 375-380.
-
Sagiv, M., Reps, T.W., Wilhelm, R., and Yahav, E.,
On the utility of canonical abstraction.
In Engineering Theories of Software Intensive Systems,
M. Broy, J. Gruenbauer, T. Hoare, and D. Harel (eds.),
Kluwer Academic Publishers, Dordrecht, The Netherlands, 2005, 215-253.
-
Reps, T., Sagiv, M., and Wilhelm, R.,
Shape analysis and applications.
In The Compiler Design Handbook:
Optimizations and Machine Code Generation,
CRC Press, 2002, 175-217.
-
Reps, T.,
Demand interprocedural program analysis using logic databases.
In Applications of Logic Databases,
R. Ramakrishnan (ed.), Kluwer Academic Publishers, Boston, MA, 1994,
pp. 163-196.
[abstract;
paper]
[Back to the top]
Reprinted in Collections
[Back to the top]
Edited Books
[Back to the Table of Contents]
Magazine Articles
-
Anderson, P., Reps, T., Teitelbaum, T., and Zarins, M.,
Tool support for fine-grained software inspection.
IEEE Software 20(4): 42-50 (2003).
[abstract;
paper, via IEEE Explore.]
-
Reps, T. and Teitelbaum, T.,
Language processing in program editors.
IEEE Computer 20, 11 (November 1987), 29-40.
[Back to the top]
Conference Publications
-
Lal, A. and Reps, T.,
Reducing concurrent analysis under a context bound to sequential analysis.
To appear in Proc. Computer-Aided Verification (CAV), 2008.
[abstract;
PDF;
(c) Springer-Verlag]
-
Lal, A. and Reps, T.,
Solving multiple dataflow queries.
To appear in Proc. Static Analysis Symposium (SAS), July 2008.
[abstract;
PDF;
(c) Springer-Verlag]
-
Kidd, N., Lal, A. and Reps, T.,
Language strength reduction.
To appear in Proc. Static Analysis Symposium (SAS), July 2008.
[abstract;
PDF;
(c) Springer-Verlag]
-
Lim, J. and Reps, T.,
A system for generating static analyzers for machine instructions.
In Proc. Int. Conf. on Compiler Construction (CC), April 2008.
(Awarded the EAPLS Best Paper Award at ETAPS 2008.)
[abstract;
PDF;
talk: Powerpoint (12 MB);
(c) Springer-Verlag]
-
Balakrishnan, G. and Reps, T.,
Analyzing stripped device-driver executables.
In Proc. TACAS, Springer-Verlag, New York, NY, April 2008.
[abstract;
PDF;
talk: Powerpoint;
(c) Springer-Verlag]
-
Lal, A., Touili, T., Kidd, N., and Reps, T.,
Interprocedural analysis of concurrent programs under a context bound.
In Proc. TACAS, Springer-Verlag, New York, NY, April 2008.
[abstract;
PDF;
(c) Springer-Verlag]
-
Lal, A., Kidd, N., Reps, T., and Touili, T.,
Abstract error projection.
In Proc. Static Analysis Symposium, 2007.
[abstract;
PDF;
(c) Springer-Verlag]
-
Gopan, D. and Reps, T.,
Guided static analysis.
In Proc. Static Analysis Symposium, 2007.
[abstract;
PDF;
(c) Springer-Verlag]
-
Lev-Ami, T., Weidenbach, C., Reps, T., and Sagiv, M.,
Labelled clauses.
In Proc. Conference on Automated Deduction, 2007.
[abstract;
PDF;
(c) Springer-Verlag]
-
Gopan, D. and Reps, T.,
Low-level library analysis and summarization.
In Proc. Computer-Aided Verification, 2007.
[abstract;
PDF;
(c) Springer-Verlag]
-
Amit, D., Rinetzky, N., Reps, T., Sagiv, M., and Yahav, E.,
Comparison under abstraction for verifying linearizability.
In Proc. Computer-Aided Verification, 2007.
[abstract;
PDF;
(c) Springer-Verlag]
-
Bogudlov, I., Lev-Ami, T., Reps, T, and Sagiv, M.,
Revamping TVLA: Making parametric shape analysis competitive (tool paper).
In Proc. Computer-Aided Verification, 2007.
[abstract;
PDF;
(c) Springer-Verlag]
-
Loginov, A., Reps, T., and Sagiv, M.,
Refinement-based verification for possibly-cyclic lists.
In Program Analysis and Compilation, Theory and Practice:
Essays Dedicated to Reinhard Wilhelm, Springer-Verlag, 2007.
[abstract;
PDF;
(c) Springer-Verlag]
-
Balakrishnan, G., Reps, T., Melski, D., and Teitelbaum, T.,
WYSINWYX: What You See Is Not What You eXecute.
In Verified Software: Theories, Tools, Experiments,
Springer-Verlag, 2007.
[abstract;
PostScript;
PDF;
(c) Springer-Verlag]
-
Dor, N., Field, J., Gopan, D., Lev-Ami, T., Loginov, A., Manevich,
R., Ramalingam, G., Reps, T., Rinetzky, N., Sagiv, M., Wilhelm,
R., Yahav, E., and Yorsh, G.,
Automatic verification of strongly dynamic software systems.
In Verified Software: Theories, Tools, Experiments,
Springer-Verlag, 2007.
[abstract;
PostScript;
PDF;
(c) Springer-Verlag]
-
Lev-Ami, T., Sagiv, M., Immerman, N., and Reps, T.,
Shape analysis of uniform change.
In Proc. VMCAI, (Nice, France, Jan. 14-16, 2007).
[abstract;
PDF;
(c) Springer-Verlag]
-
Lim, J., Reps, T., and Liblit, B.,
Extracting output formats from executables.
In Proc. IEEE Working Conference on Reverse Engineering,
(Benevento, Italy, Oct. 23-27, 2006).
[abstract;
PDF;
talk: Powerpoint]
-
Wang, H., Jha, S., Reps, T., Schwoon, S., and Stubblebine, S.,
Reducing the dependence of SPKI/SDSI on PKI.
In European Symposium on Research in Computer Security (ESORICS), 2006.
[abstract;
PDF;
(c) Springer-Verlag]
-
Loginov, A., Reps, T., and Sagiv, M.,
Automated verification of the Deutsch-Schorr-Waite tree-traversal algorithm.
In Static Analysis Symposium, 2006.
[abstract;
PDF;
(c) Springer-Verlag]
-
Balakrishnan, G. and Reps, T.,
Recency-abstraction for heap-allocated storage.
In Static Analysis Symposium, 2006.
[abstract;
PDF;
(c) Springer-Verlag]
-
Lal, A. and Reps, T.,
Improving pushdown system model checking.
In Computer-Aided Verification, 2006.
[abstract;
PDF;
(c) Springer-Verlag]
-
Gopan, D. and Reps, T.,
Lookahead widening.
In Computer-Aided Verification, 2006.
[abstract;
PDF;
(c) Springer-Verlag]
-
Chaki, S., Clarke, E., Kidd, N., Reps, T., and Touili, T.,
Verifying concurrent message-passing C programs with recursive calls.
In Proc. TACAS, Springer-Verlag, New York, NY, 2006.
[abstract;
PostScript;
PDF;
(c) Springer-Verlag;
talk: Powerpoint]
-
Jeannet, B., Gopan, D., and Reps, T.,
A relational abstraction for functions.
In Proc. 12th Int. Static Analysis Symp., 2005.
[abstract;
PostScript;
PDF;
(c) Springer-Verlag]
-
Lev-Ami, T., Immerman, N., Reps, T., Sagiv, M., Srivastava, S., and Yorsh, G.,
Simulating reachability using first-order logic
with applications to verification of linked data structures.
In Proc. Conf. on Automated Deduction, 2005.
[abstract;
PostScript;
PDF;
(c) Springer-Verlag;
talk: Powerpoint.]
-
Balakrishnan, G., Reps, T., Kidd, N., Lal, A., Lim, J.,
Melski, D., Gruian, R., Yong, S., Chen, C.-H., and Teitelbaum, T.,
Model checking x86 executables with CodeSurfer/x86 and WPDS++,
(tool-demonstration paper).
In Proc. Computer-Aided Verification, 2005.
[abstract;
PostScript;
PDF;
(c) Springer-Verlag]
-
Lal, A., Balakrishnan, G., and Reps, T.,
Extended weighted pushdown systems.
In Proc. Computer-Aided Verification, 2005.
[abstract;
PostScript;
PDF;
(c) Springer-Verlag]
-
Loginov, A., Reps, T, and Sagiv, M.,
Abstraction refinement via inductive learning.
In Proc. Computer-Aided Verification, 2005.
[abstract;
PostScript;
PDF;
(c) Springer-Verlag]
-
Ganapathy, V., Seshia, S.A., Jha, S., Reps, T.W., and Bryant, R.E.,
Automatic discovery of API-level exploits.
In Proc. Int. Conf. on Software Engineering,
(St. Louis, Missouri, May 15-21, 2005).
[abstract;
PostScript;
PDF]
-
Balakrishnan, G., Gruian, R., Reps, T., and Teitelbaum, T.,
CodeSurfer/x86 -- A platform for analyzing x86 executables,
(tool demonstration paper).
In Proc. Int. Conf. on Compiler Construction, April 2005.
[abstract;
PostScript;
PDF;
(c) Springer-Verlag]
-
Jeannet, B., Gopan, D., and Reps, T.,
A relational abstraction for functions.
In Int. Workshop on Numerical and Symbolic Abstract Domains,
Jan. 2005.
[abstract;
PostScript;
PDF]
-
Yorsh, G., Skidanov, A., Reps, T., and Sagiv, M.,
Assume/guarantee reasoning for heap-manipulating programs.
In Proc. 1st Int. Workshop on
Abstract Interpretation of Object-Oriented Languages,
Electronic Notes in Theoretical Computer Science 131, 24 (May 2005), 125-138.
[abstract;
PostScript;
PDF]
-
Gopan, D., Reps, T., and Sagiv, M.,
Numeric analysis of array operations.
In Conference Record of the Thirty-Second ACM Symposium
on Principles of Programming Languages, (Long Beach, CA, Jan. 12-14, 2005), 338-350.
[abstract;
PostScript;
PDF]
-
Rinetzky, N., Bauer, J., Reps, T., Sagiv, M., and Wilhelm, R.,
A semantics for procedure local heaps and its abstractions.
In Conference Record of the Thirty-Second ACM Symposium
on Principles of Programming Languages, (Long Beach, CA, Jan. 12-14, 2005), 296-309.
[abstract;
PDF]
-
Immerman, N., Rabinovich, A., Reps, T., Sagiv, M., and Yorsh, G.,
The boundary between decidability and undecidability for transitive closure logics.
In Proc. Computer Science Logic,
Lecture Notes in Computer Science,
Springer-Verlag, New York, NY, 2004.
[abstract]
-
Jeannet, B., Loginov, A., Reps, T., and Sagiv, M.,
A relational approach to interprocedural shape analysis.
In Proc. 11th Int. Static Analysis Symp.,
Lecture Notes in Computer Science,
Springer-Verlag, New York, NY, 2004.
[abstract;
PostScript;
PDF;
(c) Springer-Verlag]
-
Immerman, N., Rabinovich, A., Reps, T., Sagiv, M., and Yorsh, G.,
Verification via structure simulation.
In Proc. Int. Conf. on Computer-Aided Verification, 2004, 281-294.
[abstract;
PostScript;
PDF;
(c) Springer-Verlag]
-
Balakrishnan, G. and Reps, T.,
Analyzing memory accesses in x86 executables.
In Proc. Int. Conf. on Compiler Construction,
Springer-Verlag, New York, NY, 2004, 5-23.
(Awarded the EAPLS Best Paper Award at ETAPS 2004.)
[abstract;
PostScript;
PDF;
(c) Springer-Verlag;
talk: Powerpoint]
-
Yorsh, G., Reps, T., and Sagiv, M.,
Symbolically computing most-precise abstract operations for shape analysis.
In Proc. TACAS, Springer-Verlag, New York, NY, 2004, 530-545.
[abstract;
PostScript;
PDF;
(c) Springer-Verlag]
-
Gopan, D., DiMaio, F., Dor, N., Reps, T., and Sagiv, M.,
Numeric domains with summarized dimensions.
In Proc. TACAS, Springer-Verlag, New York, NY, 2004, 512-529.
[abstract;
PostScript;
PDF;
(c) Springer-Verlag]
-
Reps, T., Sagiv, M., and Yorsh, G.,
Symbolic implementation of the best transformer.
In Proc. VMCAI, 2004, 252-266.
[abstract;
PostScript;
PDF;
(c) Springer-Verlag]
-
T. Reps, S. Schwoon, and S. Jha,
Weighted pushdown systems and their application to
interprocedural dataflow analysis.
In Proc. 10th Int. Static Analysis Symp.,
(June 11-13, 2003, San Diego, CA),
Lecture Notes in Computer Science, Vol. 2694,
Springer-Verlag, New York, NY, 2003, pp. 189-213.
[abstract;
PostScript;
PDF;
(c) Springer-Verlag;
talk: Powerpoint]
-
S. Schwoon, S. Jha, T. Reps, and S. Stubblebine,
On generalized authorization problems.
In Proc. 16th IEEE Computer Security
Foundations Workshop, (June 30 - July 2, 2003, Asilomar, Pacific Grove, CA),
pp. 202-218.
[abstract;
PostScript,
PDF;
talk: Powerpoint.]
-
Reps, T., Sagiv, M., and Loginov, A.,
Finite differencing of logical formulas for static analysis.
In Proc. European Symp. on Programming,
Lecture Notes in Computer Science, Vol. 2618,
Springer-Verlag, New York, NY, 2003, pp. 380-398.
[abstract;
PostScript;
PDF;
(c) Springer-Verlag]
-
Yahav, E., Reps, T., Sagiv, M., and Wilhelm, R.
Verifying temporal heap properties specified via
evolution logic.
In Proc. European Symp. on Programming,
Lecture Notes in Computer Science, Vol. 2618,
Springer-Verlag, New York, NY, 2003, pp. 204-222.
[abstract;
PostScript;
PDF;
(c) Springer-Verlag]
-
Melski, D and Reps, T.,
The interprocedural express-lane transformation.
In Proc. Int. Conf. on Compiler Construction,
Lecture Notes in Computer Science, Vol. 2622,
Springer-Verlag, New York, NY, 2003, pp. 200-216.
[abstract;
PostScript;
PDF;
(c) Springer-Verlag]
-
Reps, T., Loginov, A., and Sagiv, M.,
Semantic minimization of 3-valued propositional formulae.
In Proc. IEEE Symp. on Logic in Computer Science,
(Copenhagen, Denmark, July 22-25, 2002), pp. 40-54.
[abstract;
PostScript;
PDF;
talk: Powerpoint.]
-
Jha, S. and Reps, T.,
Analysis of SPKI/SDSI certificates using model checking.
In Proc. 15th IEEE Computer Security
Foundations Workshop, (Cape Breton, Nova Scotia, June 24-26, 2002),
pp. 129-146.
[abstract;
PostScript;
PDF]
-
Benedikt, M., Godefroid, P., and Reps, T.,
Model checking of unrestricted hierarchical state machines.
In Proc. of ICALP 2001, Twenty-Eighth Int. Colloq.
on Automata, Languages, and Programming,
(Crete, Greece, July 8-12, 2001),
Lecture Notes in Computer Science, Vol. 2076,
Springer-Verlag, New York, NY, 2001, pp. 652-666.
[abstract;
PostScript;
PDF;
(c) Springer-Verlag]
-
Loginov, A., Yong, S.H., Horwitz, S., and Reps, T.,
Debugging via run-time type checking.
In Proc. of FASE 2001: Fundamental Approaches to Softw. Eng.,
(Genoa, Italy, April 2-6, 2001).
[abstract;
PostScript;
PDF;
(c) Springer-Verlag]
-
Xu, Z., Reps, T., and Miller, B.,
Typestate checking of machine code.
In Proc. of ESOP 2001: European Symp. on Programming,
(Genoa, Italy, April 2-6, 2001).
[abstract;
PostScript;
PDF;
(c) Springer-Verlag]
-
Lev-Ami, T., Reps, T., Sagiv, M., and Wilhelm, R.,
Putting static analysis to work for verification: A case study.
In ISSTA 2000: Proc. of the Int. Symp. on Software Testing and Analysis,
(Portland, OR, Aug. 21-25, 2000).
[abstract;
PostScript;
PDF]
-
Xu, Z., Miller, B., and Reps, T.,
Safety checking of machine code.
In SIGPLAN '00: Proceedings of the ACM Conference on
Programming Language Design and Implementation,
(Vancouver B.C., Canada, June 18-21, 2000), pp. 70-82.
[abstract;
paper]
-
Chandra, S. and Reps, T.,
Physical type checking for C.
In Proc. of PASTE '99:
SIGPLAN-SIGSOFT Workshop on Program Analysis for
Software Tools and Engineering,
(Toulouse, France, Sept. 6, 1999).
ACM SIGSOFT Software Engineering Notes 24, 5 (Sept. 1999), pp. 66-75.
[abstract;
PostScript;
PDF]
-
Siff, M., Chandra, S., Ball, T., Kunchithapadam, K., and Reps, T.,
Coping with type casts in C.
In Proceedings of ESEC/FSE '99:
Seventh European Software Engineering
Conference and Seventh ACM SIGSOFT Symposium on the Foundations of
Software Engineering, (Toulouse, France, Sept. 6-10, 1999), pp. 180-198.
[abstract;
PostScript;
PDF]
-
Clarke, E.M., Fujita, M., Rajan, P.S., Reps, T., Shankar, S., and
Teitelbaum, T.,
Program slicing of hardware description languages.
In Proc. of Charme '99,
(Bad Herrenalb, Ger., Sept. 27-29, 1999).
[abstract;
PostScript;
PDF]
-
Yong, S.H., Horwitz, S., and Reps, T.,
Pointer analysis for programs with structures and casting.
In SIGPLAN '99: Proceedings of the ACM Conference on
Programming Language Design and Implementation,
(Atlanta, GA, May 1-4, 1999),
ACM SIGPLAN Notices 34, 5 (May 1999), pp. 91-103.
[abstract;
PostScript;
PDF]
-
Melski, D. and Reps, T.,
Interprocedural path profiling.
In Proc. of CC '99:
8th Int. Conf. on Compiler Construction,
(Amsterdam, The Netherlands, Mar. 22-26, 1999),
Lecture Notes in Computer Science, Vol. 1575,
S. Jaehnichen (ed.), Springer-Verlag, New York, NY, 1999, pp. 47-62.
[abstract;
PostScript;
PDF;
(c) Springer-Verlag]
-
Benedikt, M., Reps, T., and Sagiv, M.,
A decidable logic for describing linked data structures.
In Proc. of ESOP '99: European Symposium on
Programming, (Amsterdam, The Netherlands, Mar. 22-26, 1999),
Lecture Notes in Computer Science, Vol. 1576,
S.D. Swierstra (ed.),
Springer-Verlag, New York, NY, 1999, pp. 2-19.
[abstract;
PostScript;
PDF;
(c) Springer-Verlag]
-
Sagiv, M., Reps, T., and Wilhelm, R.,
Parametric shape analysis via 3-valued logic.
In Conference Record of the Twenty-Sixth ACM Symposium
on Principles of Programming Languages,
(San Antonio, TX, Jan. 20-22, 1999), ACM, New York, NY, 1999, pp. 105-118.
[abstract;
PostScript;
PDF]
-
Siff, M. and Reps, T.,
Identifying modules via concept analysis.
In ICSM '97: IEEE International Conference on Software
Maintenance, (Oct. 1-3, 1997, Bari, Italy),
M.J. Harrold and G. Visaggio (eds.),
IEEE Computer Society, Washington, DC, 1997, pp. 170-179.
[abstract;
PostScript;
PDF]
-
Reps, T., Ball, T., Das, M., and Larus, J.,
The use of program profiling for software maintenance
with applications to the Year 2000 Problem.
In Proceedings of ESEC/FSE '97:
Sixth European Software Engineering
Conference and Fifth ACM SIGSOFT Symposium on the Foundations of
Software Engineering, (Zurich, Switzerland, Sept. 22-25, 1997),
Lecture Notes in Computer Science, Vol. 1301,
M. Jazayeri and H. Schauer (eds.),
Springer-Verlag, New York, NY, 1997, pp. 432-449.
[abstract;
paper,
(c) Springer-Verlag]
-
Melski, D. and Reps, T.,
Interconvertibility of set constraints and context-free language reachability.
In PEPM '97: Proceedings of the ACM SIGPLAN Symposium on
Partial Evaluation and Semantics-Based Program Manipulation,
(Amsterdam, The Netherlands, June 12-13, 1997),
ACM, New York, NY, 1997, pp. 74-89.
[abstract;
paper]
-
Siff, M. and Reps, T.,
Program generalization for software reuse: From C to C++.
In SIGSOFT 96: Proceedings of the Fourth ACM SIGSOFT
Symposium on the Foundations of Software Engineering,
(San Francisco, CA, October 16-18, 1996),
ACM, New York, NY, 1996, pp. 135-146.
[abstract;
paper]
-
Reps, T. and Turnidge, T.,
Program specialization via program slicing.
In Proceedings of the Dagstuhl Seminar on Partial Evaluation,
(Schloss Dagstuhl, Wadern, Germany, Feb. 12-16, 1996),
Lecture Notes in Computer Science, Vol. 1110,
O. Danvy, R. Glueck, and P. Thiemann (eds.),
Springer-Verlag, New York, NY, 1996, pp. 409-429.
[abstract;
paper,
(c) Springer-Verlag]
-
Sagiv, M., Reps, T., and Wilhelm, R.,
Solving shape-analysis problems in languages with destructive updating.
In Conference Record of the Twenty-Third ACM Symposium
on Principles of Programming Languages,
(St. Petersburg, FL, Jan. 22-24, 1996), ACM, New York, NY, 1996, pp. 16-31.
[abstract;
paper]
-
Horwitz, S., Reps, T., and Sagiv, M.,
Demand interprocedural dataflow analysis.
In SIGSOFT '95: Proceedings of the Third ACM SIGSOFT
Symposium on the Foundations of Software Engineering,
(Washington, DC, October 10-13, 1995),
ACM SIGSOFT Software Engineering Notes 20, 4 (1995), pp. 104-115.
[abstract;
paper]
-
Reps, T. and Rosay, G.,
Precise interprocedural chopping.
In SIGSOFT '95: Proceedings of the Third ACM SIGSOFT
Symposium on the Foundations of Software Engineering,
(Washington, DC, October 10-13, 1995),
ACM SIGSOFT Software Engineering Notes 20, 4 (1995), pp. 41-52.
[abstract;
paper]
-
Das, M., Reps, T., and Van Hentenryck, P.
Semantic foundations of binding-time analysis for imperative programs.
In PEPM '95: Proceedings of the ACM SIGPLAN Symposium on
Partial Evaluation and Semantics-Based Program Manipulation,
(La Jolla, California, June 21-23, 1995),
ACM, New York, NY, 1995, pp. 100-110.
[abstract;
paper]
-
Reps, T.,
Shape analysis as a generalized path problem.
In PEPM '95: Proceedings of the ACM SIGPLAN Symposium on
Partial Evaluation and Semantics-Based Program Manipulation,
(La Jolla, California, June 21-23, 1995),
ACM, New York, NY, 1995, pp. 1-11.
[abstract;
PostScript;
PDF]
-
Sagiv, M., Reps, T., and Horwitz, S.,
Precise interprocedural dataflow analysis with applications to
constant propagation.
In Proceedings of FASE '95: Colloquium on Formal
Approaches in Software Engineering, (Aarhus, Denmark, May 22-26, 1995),
Lecture Notes in Computer Science, Vol. 915,
P.D. Mosses, M. Nielsen, and M.I. Schwartzbach (eds.), Springer-Verlag,
New York, NY, 1995, pp. 651-665.
[abstract;
paper,
(c) Springer-Verlag]
-
Reps, T., Horwitz, S., and Sagiv, M.,
Precise interprocedural dataflow analysis via graph reachability.
In Conference Record of the Twenty-Second ACM Symposium
on Principles of Programming Languages,
(San Francisco, CA, Jan. 23-25, 1995), pp. 49-61.
[abstract;
PDF]
-
Reps, T., Horwitz, S., Sagiv, M., and Rosay, G.,
Speeding up slicing.
In SIGSOFT '94: Proceedings of the Second ACM SIGSOFT Symposium on
the Foundations of Software Engineering,
(New Orleans, LA, December 7-9, 1994),
ACM SIGSOFT Software Engineering Notes 19, 5 (December 1994), pp. 11-20.
[abstract;
PDF]
-
Reps, T.,
Solving demand versions of interprocedural analysis problems.
In Proceedings of the Fifth International Conference on Compiler
Construction, (Edinburgh, Scotland, April 7-9, 1994),
Lecture Notes in Computer Science, Vol. 786, P. Fritzson (ed.),
Springer-Verlag, New York, NY, 1994, pp. 389-403.
[abstract;
paper,
(c) Springer-Verlag]
-
Ramalingam, G. and Reps, T.,
An incremental algorithm for maintaining the dominator tree of a reducible
flowgraph.
In Conference Record of the Twenty-First ACM Symposium
on Principles of Programming Languages, (Portland, OR, Jan. 16-19, 1994),
pp. 287-296.
[abstract;
PostScript;
PDF]
-
Reps, T.,
Scan grammars: Parallel attribute evaluation via data-parallelism.
In Proceedings of the Fifth ACM Symposium on Parallel Algorithms and
Architectures, (Velen, Germany, June 30 - July 2, 1993).
[abstract;
PostScript;
PDF]
-
Ramalingam, G. and Reps, T.,
Modification algebras.
In Proceedings of the Second International Conference on
Algebraic Methodology and Software Technology (AMAST),
(Iowa City, Iowa, May 22-24, 1991).
-
Ramalingam, G. and Reps, T.,
A theory of program modifications.
In Proceedings of the Colloquium on Combining Paradigms
for Software Development, (Brighton, UK, April 8-12, 1991),
Lecture Notes in Computer Science, Vol. 494,
S. Abramsky and T.S.E. Maibaum (eds.),
Springer-Verlag, New York, NY, 1991, pp. 137-152.
-
Yang, W., Horwitz, S., and Reps, T.,
A program integration algorithm that accommodates semantics-preserving transformations.
In SIGSOFT '90: Proceedings of the Fourth ACM SIGSOFT Symposium
on Software Development Environments, (Irvine, CA, December 3-5, 1990),
ACM Software Engineering Notes 15, 6 (December 1990), pp. 133-143.
-
Reps, T.,
Algebraic properties of program integration.
In Proceedings of the 3nd European Symposium on Programming
(Copenhagen, Denmark, May 15-18, 1990),
Lecture Notes in Computer Science, Vol. 432, N. Jones (ed.),
Springer-Verlag, New York, NY, 1990, pp. 326-340.
-
Reps, T. and Bricker, T.,
Illustrating interference in interfering versions of programs.
In Proceedings of the Second International Workshop on Software
Configuration Management, (Princeton, NJ, October 24-27, 1989),
ACM Software Engineering Notes 17, 7 (November 1989), pp. 46-55.
-
Horwitz, S., Pfeiffer, P., and Reps, T.,
Dependence analysis for pointer variables.
In Proceedings of the ACM SIGPLAN 89 Conference on Programming Language
Design and Implementation, (Portland, OR, June 21-23, 1989),
ACM SIGPLAN Notices 24, 7 (July 1989), pp. 28-40.
-
Reps, T. and Yang, W.,
The semantics of program slicing and program integration.
In Proceedings of the Colloquium on Current Issues
in Programming Languages, (Barcelona, Spain, March 13-17, 1989),
Lecture Notes in Computer Science, Vol. 352,
J. Diaz and F. Orejas (eds.), Springer-Verlag, New York, NY, 1989,
pp. 360-374.
-
Horwitz, S., Reps, T., and Binkley, D.,
Interprocedural slicing using dependence graphs.
In Proceedings of the ACM SIGPLAN 88 Conference on Programming
Language Design and Implementation, (Atlanta, GA, June 22-24, 1988),
ACM SIGPLAN Notices 23, 7 (July 1988), pp. 35-46.
[abstract;
retrospective (PS);
retrospective (PDF)]
-
Reps, T., Horwitz, S., and Prins, J.,
Support for integrating program variants in an environment for
programming in the large.
In Proceedings of the International Workshop on Software Version
and Configuration Control, (Grassau, W. Germany, Jan. 27-29, 1988),
Berichte des German Chapter of the ACM, Vol. 30, J.F.H. Winkler (ed.),
B.G. Teubner, Stuttgart, W. Germany, 1988, pp. 197-216.
-
Horwitz, S., Prins, J., and Reps, T.,
Integrating non-interfering versions of programs.
In Conference Record of the Fifteenth ACM Symposium on Principles of
Programming Languages, (San Diego, CA, January 13-15, 1988),
ACM, New York, NY, 1988, pp. 133-145.
-
Horwitz, S., Prins, J., and Reps, T.,
On the adequacy of program dependence graphs for representing programs.
In Conference Record of the Fifteenth ACM Symposium on Principles of
Programming Languages, (San Diego, CA, January 13-15, 1988),
ACM, New York, NY, 1988, pp. 146-157.
[abstract;
paper]
-
Reps, T., Marceau, C., and Teitelbaum, T.,
Remote attribute updating for language-based editors.
In Conference Record of the Thirteenth ACM Symposium on Principles of
Programming Languages, (St. Petersburg, FL, January 13-15, 1986),
ACM, New York, NY, 1986, pp. 1-13.
-
Reps, T. and Teitelbaum, T.,
The Synthesizer Generator.
In Proceedings of the ACM SIGSOFT/SIGPLAN Software Engineering
Symposium on Practical Software Development Environments,
(Pittsburgh, PA, April 23-25, 1984),
ACM SIGPLAN Notices 19, 5 (May 1984), pp. 42-48.
[abstract]
-
Reps, T. and Alpern, B.,
Interactive proof checking.
In Conference Record of the Eleventh ACM Symposium on
Principles of Programming Languages,
(Salt Lake City, Utah, January 15-18, 1984),
ACM, New York, NY, 1984, pp. 36-45.
[abstract]
-
Reps, T.,
Static-semantic analysis in language-based editors.
In Digest of Papers of the IEEE Spring CompCon 83,
(San Francisco, CA, March 1-3, 1983),
IEEE Computer Society, Washington, DC, 1983, pp. 411-414.
-
Reps, T.,
Optimal-time incremental semantic analysis for syntax-directed editors.
In Conference Record of the Ninth ACM Symposium on Principles
of Programming Languages, (Albuquerque, NM, January 25-27, 1982),
ACM, New York, NY, 1982, pp. 169-176.
[abstract]
-
Teitelbaum, T., Reps, T., and Horwitz, S.,
The why and wherefore of the Cornell Program Synthesizer.
In Proceedings of the ACM SIGPLAN/SIGOA Symposium on Text Manipulation,
(Portland, OR, June 8-10, 1981),
ACM SIGPLAN Notices 16, 6 (June 1981), pp. 8-16.
-
Demers, A., Reps, T., and Teitelbaum, T.,
Incremental evaluation for attribute grammars with application to
syntax-directed editors.
In Conference Record of the Eighth ACM Symposium on Principles
of Programming Languages, (Williamsburg, VA, January 26-28, 1981),
ACM, New York, NY, 1981, pp. 105-116.
[abstract]
[Back to the top]
Patents
-
Reps, T., Horwitz, S., and Binkley, D.,
Interprocedural slicing of computer programs using dependence graphs.
U.S. Patent Number 5,161,216, issued November 3, 1992.
[Back to the top]
Pending Submissions
[Back to the top]
Other Publications and Reports
-
Lev-Ami, T., Sagiv, M., Reps, T., and Gulwani, S.,
Backward analysis for inferring quantified preconditions.
Tech. Rep. TR-2007-12-01,
Tel Aviv University,
Dec. 2007.
[PDF]
-
Kidd, N., Moore, K., Wood, D., and Reps, T.,
Towards the analysis of transactional software.
TR-1624, Computer Sciences Department, University of Wisconsin,
Madison, WI, October 2007.
[abstract;
PDF]
-
Kidd, N., Reps, T., Dolby, J., and Vaziri, M.,
Static detection of atomic-set serializability violations.
TR-1623, Computer Sciences Department, University of Wisconsin,
Madison, WI, October 2007.
[abstract;
PDF]
-
Kidd, N., Lal, A., and Reps, T.,
Advanced queries for property checking.
TR-1621, Computer Sciences Department, University of Wisconsin,
Madison, WI, October 2007.
[abstract;
PDF]
-
Reps, T., Sagiv, M., and Bauer, J.,
An Appreciation of the Work of Reinhard Wilhelm.
In Program Analysis and Compilation, Theory and Practice:
Essays Dedicated to Reinhard Wilhelm,
Lecture Notes in Computer Science, Vol. 4444, Springer-Verlag, 2007.
-
Lal, A., Touili, T., Kidd, N., and Reps, T.,
Weighted pushdown systems and weighted transducers.
TR-1581, Computer Sciences Department, University of Wisconsin,
Madison, WI, Oct. 2006.
[abstract;
PDF]
-
Balakrishnan, G., Reps, T., Kidd, N., Lal, A., Lim, J.,
Melski, D., Gruian, R., Yong, S., Chen, C.-H., and Teitelbaum, T.,
Model checking x86 executables with CodeSurfer/x86 and WPDS++.
In Proc. Workshop on the Evaluation of Software Defect Detection Tools,
June 2005.
-
Yahav, E., Pnueli, A., Reps, T., and Sagiv, M.,
Automatic verification of temporal heap properties.
April 2004.
-
Yahav, E., Reps, T., and Sagiv, M.,
LTL model checking for systems with unbounded number of dynamically created threads and objects.
TR-1424, Computer Sciences Department, University of Wisconsin,
Madison, WI, March 2001.
[abstract;
PostScript;
PDF]
-
Chandra, S. and Reps, T.,
Physical type checking for C.
Bell Labs. Tech. Rep. BL0113590-990302-04,
Lucent Technologies, Inc., Naperville, IL, Mar. 1999.
[abstract;
PostScript;
PDF]
-
Siff, M., Chandra, S., Ball, T., Kunchithapadam, K., and Reps, T.,
Coping with type casts in C.
Bell Labs. Tech. Rep. BL0113590-990202-03,
Lucent Technologies, Inc., Naperville, IL, Feb. 1999.
[abstract;
PostScript;
PDF]
-
Clarke, E.M., Fujita, M., Rajan, P.S., Reps, T., Shankar, S., and
Teitelbaum, T.,
Program slicing for design automation: An automatic technique for
speeding-up hardware design, simulation, testing, and verification.
Unpublished report, October 1998.
[abstract;
paper]
-
Melski, D. and Reps, T.,
Interprocedural path profiling.
TR-1382, Computer Sciences Department, University of Wisconsin,
Madison, WI, September 1998.
[abstract;
PostScript;
PDF]
-
Reps, T.,
Program analysis via graph reachability.
TR-1386, Computer Sciences Department, University of Wisconsin,
Madison, WI, August 1998.
[abstract;
PostScript;
PDF;
talk: Powerpoint]
-
Mueller, H., Reps, T., and Snelting, G. (eds.),
Program comprehension and software reengineering.
Dagstuhl Seminar Report,
International Conference and Research Center for Computer Science (IBFI),
Schloss Dagstuhl, Wadern, Germany, 1998.
dag9810.ps
-
The Wisconsin Program-Slicing Tool 1.0, Reference Manual.
Computer Sciences Department, University of Wisconsin-Madison,
August 1997.
slicing-manual.ps
-
Das, M. and Reps, T.
BTA termination using CFL-reachability.
TR-1329, Computer Sciences Department,
University of Wisconsin, Madison, WI, November 1996.
-
Horwitz, S., Reps, T., and Sagiv, M.,
Demand interprocedural dataflow analysis.
TR-1283, Computer Sciences Department, University of Wisconsin,
Madison, WI, August 1995.
tr1283r.ps
-
Reps, T., Sagiv, M., and Wilhelm, R.,
Solving shape-analysis problems in languages with destructive updating.
TR-1276, Computer Sciences Department,
University of Wisconsin, Madison, WI, July 1995.
tr1276.ps
-
van Leeuwen, J., Mehlhorn, K., and Reps, T. (eds.),
Incremental computation and dynamic algorithms.
Dagstuhl Seminar Report 88,
International Conference and Research Center for Computer Science (IBFI),
Schloss Dagstuhl, Wadern, Germany, 1994.
dagstuhl.sr88.ps
-
Reps, T., Sagiv, M., and Horwitz S.,
Interprocedural dataflow analysis via graph reachability.
TR 94-14, Datalogisk Institut, University of Copenhagen,
Copenhagen, Denmark, April 1994.
diku-tr94-14.ps
-
Reps, T.,
The Wisconsin Program-Integration System Reference Manual: Release 2.0.
Computer Sciences Department, University of Wisconsin-Madison,
July 1993.
manual.2.0.ps
-
Ramalingam, G. and Reps, T.,
A categorized bibliography on incremental computation.
In Conference Record of the Twentieth ACM Symposium
on Principles of Programming Languages, (Charleston, SC, Jan. 11-13, 1993),
ACM, New York, NY, 1993, pp. 502-510.
(Tutorial paper.)
-
Reps, T.,
Incremental computation.
Unpublished tutorial notes, 1993.
(Presented at the Twentieth ACM Symposium on Principles of Programming Languages, (Charleston, SC, Jan. 11-13, 1993).)
-
Klint, P., Reps, T., and Snelting, G. (eds.),
Programming environments.
Dagstuhl Seminar Report 34,
International Conference and Research Center for Computer Science (IBFI),
Schloss Dagstuhl, Wadern, Germany, 1992.
-
Binkley, D., Horwitz, S., and Reps, T.,
Identifying semantic differences in programs with procedures (Extended
abstract).
Computer Sciences Department, University of Wisconsin-Madison,
September 1991.
-
Ramalingam, G. and Reps, T.,
New programs from old.
TR-1057, Computer Sciences Department, University of
Wisconsin-Madison, November 1991.
[paper;
latest version]
-
Ball, T., Horwitz, S., and Reps, T.,
Correctness of an algorithm for reconstituting a program from a dependence graph.
TR-947, Computer Sciences Department, University of Wisconsin-Madison,
July 1990.
-
Ramalingam, G. and Reps, T.,
Semantics of program representation graphs.
TR-900, Computer Sciences Department, University of Wisconsin-Madison,
December 1989.
[paper]
-
Binkley, D., Horwitz, S., and Reps, T.,
The multi-procedure equivalence theorem.
TR-890, Computer Sciences Department, University of Wisconsin-Madison,
November 1989.
[paper]
-
Reps, T.
Demonstration of a prototype tool for program integration.
TR-819, Computer Sciences Department, University of Wisconsin-Madison,
January 1989.
[paper]
[Back to the top]
Software
-
Teitelbaum, T., Reps, T., et al.,
The Cornell Program Synthesizer.
Version 1, June 1979;
Version 1.02, September 1980;
Version 1.03, September 1981.
Licensed to approximately 110 sites.
-
Reps, T., Teitelbaum, T., et al.,
The Synthesizer Generator.
Release 1.0, December 1985;
Release 2.0, July 1987;
Release 3.0, April 1989.
Licensed to approximately 325 sites.
-
Reps, T., Bricker, T., Rosay, G., et al.,
The Wisconsin Program-Integration System.
Release 0.5, April 1990;
Release 1.0, April 1992.
Release 2.0, July 1993.
Licensed to 9 sites.
-
Reps, T., Rosay, G., and Horwitz, S.,
The Wisconsin Program-Slicing Tool.
Release 1.0, August 1997.
-
Kidd, N., Reps, T., Melski, D., and Lal, A.,
WPDS++: A C++ Library for Weighted Pushdown Systems, 2004.
(Download software from here.)
-
Kidd, N., Lal, A., and Reps, T.,
WALi: The Weighted Automaton Library, December 2007.
(Download software from here.)
[Back to the top]
Visitors, Post-Docs, and Students
Visitors and Post-Doctoral Associates
- Neil Immerman (U. Mass.), 2004-05.
- Bertrand Jeannet (IRISA), Mar. - June, 2003.
- Stefan Schwoon (Univ. of Stuttgart), Feb. - Mar., 2003.
- David Melski, 2002.
(Currently with GrammaTech, Inc., Ithaca, NY.)
- Mooly Sagiv, 1994-95.
(Currently Associate Professor, School of Computer Science,
Tel-Aviv University, Israel.)
- Robert Paige (NYU),
1990-91.
- Jiazhen Cai (NYU), 1990-91.
- Wuu Yang,
1990-91.
(Currently Professor, Department of Computer and Information
Science, National Chiao-Tung University, Taiwan.)
- Jan Prins , 1986-87.
(Currently Professor, Department of Computer Science,
University of North Carolina, Chapel Hill.)
Former Students
- Gogul Balakrishnan,
WYSINWYX: What You See Is Not What You eXecute.
Ph.D. dissertation and Tech. Rep. TR-1603, Computer Sciences
Department, University of Wisconsin, Madison, WI, August 2007.
[abstract;
PDF]
(CiteseerX,
Citeseer,
Google Scholar,
Microsoft Libra,
DB&LP;
)
- Denis Gopan,
Numeric program analysis techniques with
applications to array analysis and library summarization.
Ph.D. dissertation and Tech. Rep. TR-1602, Computer Sciences
Department, University of Wisconsin, Madison, WI, August 2007.
[abstract;
PDF]
(CiteseerX,
Citeseer,
Google Scholar,
Microsoft Libra,
DB&LP;
)
- Alexey Loginov,
Refinement-based program verification via three-valued-logic
analysis. Ph.D. dissertation and Tech. Rep. TR-1574,
Computer Sciences Department, University of Wisconsin,
Madison, WI, August 2006.
[abstract;
PDF]
(CiteseerX,
Citeseer,
Google Scholar,
Microsoft Libra,
DB&LP;
)
- David Melski,
Interprocedural path profiling and
the interprocedural express-lane transformation.
Ph.D. dissertation and Tech. Rep. TR-1435,
Computer Sciences Department, University of Wisconsin,
Madison, WI, February 2002.
[abstract;
PostScript;
PDF]
(CiteseerX,
Citeseer,
Google Scholar,
Microsoft Libra,
DB&LP;
)
- Zhichen Xu,
Safety-checking of machine code.
Ph.D. dissertation,
Computer Sciences Department, University of Wisconsin,
Madison, WI, December 2000.
(Supervised jointly with B. Miller.)
[abstract;
PostScript;
PDF]
(CiteseerX,
Citeseer,
Google Scholar,
Microsoft Libra,
DB&LP;
)
- Michael Siff,
Techniques for software renovation.
Ph.D. dissertation and Tech. Rep. TR-1384,
Computer Sciences Department, University of Wisconsin,
Madison, WI, August 1998.
[abstract;
dissertation]
(CiteseerX,
Citeseer,
Google Scholar,
Microsoft Libra,
DB&LP;
)
- Manuvir Das,
Partial evaluation using dependence graphs.
Ph.D. dissertation and Tech. Rep. TR-1362,
Computer Sciences Department, University of Wisconsin,
Madison, WI, February 1998.
[abstract;
dissertation]
(CiteseerX,
Citeseer,
Google Scholar,
Microsoft Libra,
DB&LP;
)
-
G. Ramalingam,
Bounded incremental computation.
Ph.D. dissertation and Tech. Rep. TR-1172,
Computer Sciences Department, University of Wisconsin, Madison, WI,
August 1993.
(CiteseerX,
Citeseer,
Google Scholar,
Microsoft Libra,
DB&LP;
)
Dissertation published as:
Ramalingam, G., Bounded Incremental Computation,
Lecture Notes in Computer Science, Vol. 1089,
Springer-Verlag, New York, NY, 1996.
-
David Binkley,
Multi-procedure program integration.
Ph.D. dissertation and Tech. Rep. TR-1038,
Computer Sciences Department, University of Wisconsin,
Madison, WI, August 1991.
[dissertation]
(CiteseerX,
Citeseer,
Google Scholar,
Microsoft Libra,
DB&LP;
)
-
Phil Pfeiffer
Dependence-based representations for programs with reference variables.
Ph.D. dissertation and Tech. Rep. TR-1037,
Computer Sciences Department, University of Wisconsin,
Madison, WI, August 1991.
[dissertation (7.2 MB)]
(CiteseerX,
Citeseer,
Google Scholar,
Microsoft Libra,
DB&LP;
)
-
Wuu Yang,
A new algorithm for semantics-based program
integration.
Ph.D. dissertation and Tech. Rep. TR-962, Computer Sciences Department,
University of Wisconsin, Madison, WI, August 1990.
(Supervised jointly with S. Horwitz.)
[dissertation]
(CiteseerX,
Citeseer,
Google Scholar,
Microsoft Libra,
DB&LP;
)
Current Students
[Back to the top]
|