Ph.D., Cornell University, 1982
(Curriculum Vitae)
Research Interests:
See also the home pages of
the Wisconsin Program-Slicing Project,
the Wisconsin Safety Analyzer Project, and
the CMU-UW Software Model Checking Project,
as well as
Citeseer
or DB&LP
Table of Contents
Disclaimer
This web page contains links to PostScript 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 Table of Contents]
Research Summary
The goal of my research is to create tools that support the
development of complex software systems.
The aim is to create tools that help programmers
develop correct, reliable, and secure software by providing
powerful operations for manipulating programs and analyzing their
properties.
I have carried out a great deal of work exploring how
program slicing
can serve as the basis for such program-manipulation operations.
The slice of a program with respect to a set of program elements
S is
a projection of the program that includes only program elements that
might affect (either directly or transitively) the values of the
variables used at members of S. Slicing allows one to find
semantically meaningful decompositions of programs, where the
decompositions consist of elements that are not textually contiguous.
Program slicing is a fundamental operation that can aid in solving
many software-engineering problems. For instance, it has applications
in program understanding, maintenance, debugging, testing,
differencing, specialization, reuse, and merging.
Projects that my co-workers and I carried out have been aimed at
-
improving the underlying technology for program slicing (and related
operations),
-
implementing program slicers,
-
developing methods for using slicing in software-engineering tools, and
-
building slicing-based program-manipulation tools.
(Click
here
for the home page of the Wisconsin Program-Slicing Project.)
We were also able to establish some interesting connections between
the work on interprocedural program slicing and
a number of other program-analysis problems, such as classical
interprocedural dataflow analysis.
In particular, we showed that a large class of program-analysis
problems can be solved by transforming them into instances of
a special kind of graph-reachability problem.
These graph-reachability problems can be solved in polynomial time
by algorithms similar to the one originally developed for
interprocedural slicing.
[The PowerPoint presentation prepared for the tutorial that I gave on
this material at PLDI '00 can be found
here.
(Because of the animations, you should run the presentation, rather
than just look at the slides in Powerpoint editing mode.)]
I have also been working on the problem of
shape analysis
of programs written in languages that permit destructive updating
of dynamically allocated storage.
Shape analysis discovers information
(in a conservative way) about the possible ``shapes''
of the dynamically allocated data structures to which a program's pointer
variables can point.
I am also interested in applying the techniques that we have
developed for shape analysis to the problem of verifying properties
of distributed systems.
[A PowerPoint presentation on some of this material can be found
here.
(Because of the animations, you should run the presentation, rather
than just look at the slides in Powerpoint editing mode.)]
[Back to the Table of Contents]
Recent Items of Note
Recent Papers
[Back to the Table of Contents]
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.
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.
[abstract;
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 Table of Contents]
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,
- the site for downloading an evaluation copy.
You should be aware that the most important current limitations of
CodeSurfer are as follows:
- Language: ANSI C
- Program length: < 100K SLOC
CodeSurfer is currently available for Sun SPARC Solaris, as well
as for Windows 95, 98, NT, and 2000.
[Back to the Table of Contents]
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 Table of Contents]
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 Table of Contents]
Alias Analysis, Pointer Analysis, and Shape Analysis
[Back to the Table of Contents]
Other Program-Analysis Problems
- ``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 Table of Contents]
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 Table of Contents]
Model Checking
[Back to the Table of Contents]
Computer Security
Ph.D. Dissertations
[Back to the Table of Contents]
Code Instrumentation
Ph.D. Dissertations
[Back to the Table of Contents]
Computational Differentiation and Computational Divided Differencing
[Back to the Table of Contents]
Language-Based Program-Development Environments
Ph.D. Dissertations
[Back to the Table of Contents]
Incremental Computing
Ph.D. Dissertations
[Back to the Table of Contents]
Attribute Grammars
Ph.D. Dissertations
[Back to the Table of Contents]
Miscellaneous
[Back to the Table of Contents]
List of Publications
Books
[Back to the Table of Contents]
Journal Publications
-
Alur, R., Benedikt, M., Etessami, K., Godefroid, P., Reps, T., and Yannakakis, M.,
Analysis of recursive state machines.
ACM Trans. on Program. Lang. and Syst., to appear.
-
Jha, S. and Reps, T.,
Model checking SPKI/SDSI.
To appear in Journal of Computer Security.
[abstract;
send mail to reps [at] cs [dot] wisc [dot] edu to request a copy of the paper.]
-
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.
-
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;
send mail to reps [at] cs [dot] wisc [dot] edu to request a copy of the paper.]
-
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;
paper]
-
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 Table of Contents]
Invited Papers
-
Reps, T., Sagiv, M., and Wilhelm, R.,
Static program analysis via 3-valued logic.
In Proc. Int. Conf. on Computer-Aided Verification, 2004.
[abstract;
PostScript;
PDF;
(c) Springer-Verlag]
-
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 Table of Contents]
Book Chapters
-
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 Table of Contents]
Reprinted in Collections
-
Horwitz, S., Reps, T., and Binkley, D.,
Interprocedural slicing using dependence graphs.
To appear 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.
[abstract;
retrospective (PS);
retrospective (PDF)]
Reprinted from 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.
-
Horwitz, S., Reps, T., and Binkley, D.,
Interprocedural slicing using dependence graphs.
In Software Change Impact Analysis,
S.A. Bohner and R.S. Arnold (eds.), IEEE Computer Society,
Los Alamitos, CA, 1996.
Reprinted from
ACM Transactions on Programming Languages and Systems 12, 1
(January 1990), 26-60.
[abstract;
paper]
-
Horwitz, S., Reps, T., and Binkley, D.,
Interprocedural slicing using dependence graphs.
In Software Merging and Slicing,
V. Berzins (ed.), IEEE Computer Society, Los Alamitos, CA, pp. 10-44.
Reprinted from
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.
In Software Merging and Slicing,
V. Berzins (ed.), IEEE Computer Society, Los Alamitos, CA, pp. 137-179.
Reprinted from
ACM Transactions on Programming Languages and Systems 11, 3 (July 1989),
345-387.
[abstract;
paper]
-
Ramalingam, G. and Reps, T.,
A theory of program modifications.
In Software Merging and Slicing,
V. Berzins (ed.), IEEE Computer Society, Los Alamitos, CA, 90-105.
Reprinted from
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.
-
Reps, T. and Teitelbaum, T.,
Language processing in program editors.
In Language Architectures and Programming Environments,
T. Ichikawa and H. Tsubotani (eds.),
The World Scientific Publishing Company, Singapore, 1992, pp. 146-169.
Reprinted from IEEE Computer 20, 11 (November 1987), 29-40.
-
Teitelbaum, T. and Reps, T.,
The Cornell Program Synthesizer: A syntax-directed programming environment.
In Interactive Programming Environments,
D. Barstow, E. Sandewall, and H. Shrobe (eds.), McGraw-Hill, 1984, pp. 97-116.
Reprinted from Communications of the ACM 24, 9 (September 1981), 563-573.
[abstract;
paper, via ACM Digital Library]
-
Teitelbaum, T., Reps, T., and Horwitz, S.,
The why and wherefore of the Cornell Program Synthesizer.
In Software Development Environments, A.I. Wasserman (ed.),
IEEE Computer Society, Washington, DC, 1981, 64-72.
Reprinted from 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.
[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).
-
Reps, T. and Teitelbaum, T.,
Language processing in program editors.
IEEE Computer 20, 11 (November 1987), 29-40.
[Back to the Table of Contents]
Conference Publications
-
Immerman, N., Rabinovich, A., Reps, T., Sagiv, M., and Yorsh, G.,
The boundary between decidability and undecidability for transitive closure logics.
To appear in Proc. Computer Science Logic, 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.
[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.
(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.
[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.
[abstract;
PostScript;
PDF;
(c) Springer-Verlag]
-
Reps, T., Sagiv, M., and Yorsh, G.,
Symbolic implementation of the best transformer.
In Proc. Verification, Model Checking, and Abstract Interpretation,
2004.
[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]
-
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;
PostScript;
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;
PostScript;
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 Table of Contents]
Software
-
Reps, T., Rosay, G., and Horwitz, S.,
The Wisconsin Program-Slicing Tool.
Release 1.0, August 1997.
(Click here
for license information.)
-
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., 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.
-
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.
[Back to the Table of Contents]
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 Table of Contents]
Pending Submissions
-
Reps, T., Schwoon, S., Jha, S., and Melski, D.,
Weighted pushdown systems and their application to interprocedural
dataflow analysis.
Dec. 2003.
Submitted for journal publication.
-
Yorsh, G., Reps, T., Sagiv, M., and Wilhelm, R.,
Logical characterizations of heap abstractions.
April 2004.
Submitted for journal publication.
-
Loginov, A., Reps, T, and Sagiv, M.,
Abstraction refinement for 3-valued-logic analysis.
TR-1504, Computer Sciences Department, University of Wisconsin,
Madison, WI, April 2004.
[abstract;
PostScript;
PDF]
Submitted for conference publication.
-
Yahav, E., Pnueli, A., Reps, T., and Sagiv, M.,
Automatic verification of temporal heap properties.
April 2004.
Submitted for conference publication.
[Back to the Table of Contents]
Other Publications and Reports
-
Bauer, J., Rinetzky, N., Reps, T., Sagiv, M., and Wilhelm, R.,
Semantic requirements for modular reasoning about heap-manipulating programs.
Oct. 2003.
-
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 Table of Contents]
Visitors, Post-Docs, and Students
Post-Doctoral Associates and Visitors
- 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 Senior Lecturer (tenured), 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
- Melski, D.
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]
- Xu, Z.
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]
- Siff, M.,
Techniques for software renovation.
Ph.D. dissertation and Tech. Rep. TR-1384,
Computer Sciences Department, University of Wisconsin,
Madison, WI, August 1998.
[abstract;
dissertation]
- Das, M.,
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]
-
Ramalingam, G.,
Bounded incremental computation.
Ph.D. dissertation and Tech. Rep. TR-1172,
Computer Sciences Department, University of Wisconsin, Madison, WI,
August 1993.
Dissertation published as:
Ramalingam, G., Bounded Incremental Computation,
Lecture Notes in Computer Science, Vol. 1089,
Springer-Verlag, New York, NY, 1996.
-
Binkley, D.,
Multi-procedure program integration.
Ph.D. dissertation and Tech. Rep. TR-1038,
Computer Sciences Department, University of Wisconsin,
Madison, WI, August 1991.
[dissertation]
-
Pfeiffer, P.,
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)]
-
Yang, W.,
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]
Current Students
[Back to the Table of Contents]