Publications
Book Articles
-
A Realistic Resource-Constrained Software Pipelining Algorithm.
A. Aiken and A. Nicolau.
In D. Gelernter et al., editors,
Advances in Languages and Compilers for Parallel Processing,
pages 274-290,
MIT Press, Cambridge, Massachusetts, 1991.
-
Fine-Grain Parallelization and the Wavefront Method.
A. Aiken and A. Nicolau.
In D. Gelernter et al., editors, Languages and Compilers for Parallel Computing,
pages 1-16,
MIT Press, Cambridge, Massachusetts,
1990.
Refereed Journal Articles
- A Capability Calculus for Concurrency and Determinism (extended version).
T. Terauchi and A. Aiken.
Transactions on Programming Languages and Systems,
to appear.
-
Witnessing Side Effects (Extended Version). T. Terauchi and A. Aiken.
Transactions on Programming Languages and Systems,
to appear.
-
Saturn: A Scalable Framework for Error Detection using Boolean Satisfiability.
Y. Xie and A. Aiken.
Transactions on Programming Languages and Systems,
to appear.
-
Flow-Insensitive Type Qualifiers.
J. Foster, J. Kodumal, R. Johnson, and A. Aiken.
Transactions on Programming Languages and Systems,
to appear.
-
A Direct Manipulation Environment for Programming Semantic Zoom Visualizations of Tabular Data.
A. Woodruff, C. Olston, A. Aiken, M. Chu, V. Ercegovac, M. Lin, M. Spalding, and M. Stonebraker,
Journal of Visual Languages and Computing,
12(5):551-571.
-
Detecting Races in Relay Ladder Logic Programs. (invited paper)
Z. Su, A. Aiken, and M. Fähndrich.
Software Tools for Technology Transfer,
3(2000):93-105.
-
Introduction to Set Constraint-Based Program Analysis.
A. Aiken.
Science of Computer Programming,
35(1999):79-111, 1999.
-
Optimal Representations of Polymorphic Types with Subtyping.
A. Aiken, E. Wimmers, J. Palsberg.
Higher-Order and Symbolic Computation,
12(3), October 1999.
-
Resource-Constrained Software Pipelining,
A. Aiken, A. Nicolau, and S. Novack.
IEEE Transactions on Distributed and Parallel Systems,
6(12):1248-1270, December 1995.
-
Decidability of Systems of Set Constraints with Negative Constraints.
A. Aiken, D. Kozen, and E. Wimmers.
Information and Computation,
122(1):30-44,October 1995.
-
Static Analysis Techniques for Predicting the Behavior of Active Database Rules.
A. Aiken, J. Widom, and J. M. Hellerstein.
ACM Transactions on Database Systems,
20(1):63-84, March 1995.
-
Safe-A Semantic Technique for Transforming Programs in the Presence of Errors.
A. Aiken, J. Williams, and E. Wimmers.
ACM Transactions on Programming Languages and Systems,
17(1):63-84, January 1995.
-
A Theory of Compaction-Based Parallelization.
A. Aiken.
Theoretical Computer Science,
73(2):121-154, June 1990.
-
Fine-Grain Compilation for Pipelined Machines.
A. Nicolau, K. Pingali, and A. Aiken.
Journal of Supercomputing,
2(3):279-295, November 1988.
-
A Development Environment for Horizontal Microcode (revised).
A. Aiken and A. Nicolau.
IEEE Transactions on Software Engineering,
14(5): 584-594, May 1988.
Refereed Conference and Workshop Articles
-
Sound, Complete and Scalable Path-Sensitive Analysis.
I. Dillig, T. Dillig, and A. Aiken.
Proceedings of the Conference on Programming Language Design and Implementation,
to appear, June 2008.
-
Verifying the Safety of User Pointer Dereferences.
S. Bugrara and A. Aiken.
Proceedings of the IEEE Symposium on Security and Privacy,
to appear, May 2008.
-
A Portable Runtime Interface For Multi-Level Memory Hierarchies.
M. Houston, J.-Y. Park, M. Ren, T. Knight, K. Fatahalian, A. Aiken, W. Dally, and P. Hanrahan.
Proceedings of the Symposium on Principles and Practice of Parallel Programming, pages 143-152, February 2008.
-
Measuring Empirical Computational Complexity.
S. Goldsmith, A. Aiken, and D. Wilkerson.
Proceedings of the Symposium on Foundations of Software Engineering, pages 395-404, September 2007.
-
An Overview of the Saturn Project.
A. Aiken, S. Bugrara, I. Dillig, T. Dillig, P. Hawkins and B. Hackett.
Proceedings of the Workshop on Program Analysis for Software Tools and Engineering, pages 43-48, June 2007.
-
Static Error Detection Using Semantic Inconsistency Inference.
I. Dillig, T. Dillig, and A. Aiken.
Proceedings of the Conference on Programming Language Design and Implementation, pages 435-446, June 2007.
-
Regularly Annotated Set Constraints.
J. Kodumal and A. Aiken.
Proceedings of the Conference on Programming Language Design and Implementation, pages 331-341, June 2007.
-
Compilation for Explicitly Managed Memory Hierarchies.
T. Knight, J. Park, M. Ren, M. Houston, M. Erez, K. Fatahalian, A. Aiken, W. Dally, P. Hanrahan.
Proceedings of the Symposium on Principles and Practice of Parallel Programming,
pages 226-236, March 2007.
- Conditional Must Not Aliasing for Static Race Detection.
M. Naik and A. Aiken.
Proceedings of the ACM SIGPLAN Symposium on Principles of Programming Languages,
pages 327-338,
January 2007.
-
How is Aliasing Used in Systems Software?
B. Hackett and A. Aiken.
In Proceedings of the International Symposium on Foundations of Software Engineering,
pages 69-80,
November 2006.
-
Sequoia: Programming the Memory Hierarchy.
K. Fatahalian, T. Knight, M. Houston, M. Erez, D. Horn, L. Leem, H. Park, M. Ren, A. Aiken, W. Dally and P. Hanrahan.
In Proceedings of Supercomputing 2006,
November 2006.
-
Automatic Generation of Peephole Superoptimizers.
S. Bansal and A. Aiken.
In Proceedings of the Conference on Architectural Support for Programming Languages and Operating Systems,
pages 394-403, October 2006.
-
A Capability Calculus for Concurrency and Determinism.
T. Terauchi and A. Aiken.
In Proceedings of the International Conference on Concurrency Theory,
pages 218-232, August 2006.
-
On Typability for Rank-2 Intersection Types with Polymorphic Recursion.
T. Terauchi and A. Aiken.
In Proceedings of the 21st Annual IEEE Symposium on Logic in Computer Science, pages 111-122, August 2006.
-
Statistical Debugging: Simultaneous Identification of Multiple Bugs.
A. Zheng M. Jordan, B. Liblit, M. Naik and A. Aiken.
In Proceedings of the International Conference on Machine Learning,
pages 1105-1112, June 2006.
-
Static Detection of Security Vulnerabilities in Scripting Languages. Y. Xie and A. Aiken. In Proceedings of the 15th USENIX Security Symposium, pages 179-192, July 2006.
-
Effective Static Race Detection for Java.
M. Naik, A. Aiken, and J. Whaley.
In Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation,
pages 308-319, June 2006.
-
Witnessing Side-Effects.
T. Terauchi and A. Aiken.
In Proceedings of the 10th ACM SIGPLAN International Conference on Functional Programming.
pages 105-115, September 2005.
-
Context- and Path-Sensitive Memory Leak Detection. (distinguished paper award)
Y. Xie and A. Aiken.
In Proceedings of the 5th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of
Software Engineering,
pages 115-125, September 2005.
-
Banshee: A Scalable Constraint-Based Analysis Toolkit.
J. Kodumal and A. Aiken.
In Proceedings of the 12th International Static Analysis Symposium,
pages 218-234, September 2005.
-
Secure Information Flow as a Safety Problem.
T. Terauchi and A. Aiken.
In Proceedings of the 12th International Static Analysis Symposium,
pages 352-367, September 2005.
-
Relational Queries Over Program Traces.
S. Goldsmith, R. O'Callahan, and A. Aiken.
In Proceedings of the 2005 Conference on Object-Oriented Programming, Systems, Languages and Applications,
pages 385-402, October 2005.
-
Saturn: A SAT-Based Tool for Bug Detection.
Y. Xie and A. Aiken.
In Proceedings of the 17th International Conference on Computer Aided Verification,
pages 139-143, July 2005.
-
Soundness and its Role in Bug Detection Systems (position paper).
Y. Xie, M. Naik, B. Hackett, and A. Aiken.
In Proceedings of the Workshop on the Evaluation of Software Defect Detection Tools, June 2005.
-
Scalable Statistical Bug Isolation.
B. Liblit, M. Naik, A. Zheng, A. Aiken and M. I. Jordan.
In Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation,
pages 15-26, June 2005.
-
Scalable Error Detection using Boolean Satisfiability.
Y. Xie and A. Aiken.
Proceedings of the ACM SIGPLAN Symposium on Principles of Programming Languages,
p. 351-363,
January 2005.
-
The Set Constraint/CFL Reachability Connection in Practice.
J. Kodumal and A. Aiken.
In Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation,
pages 207-218,
June 2004.
-
Public Deployment of Cooperative Bug Isolation.
B. Liblit, M. Naik, A. Zheng, A. Aiken, and M. I. Jordan.
In Proceedings of the Second International Workshop on Remote Analysis and Measurement of Software Systems (RAMSS),
pages 57-62,
May 2004.
-
Statistical Debugging of Sampled Programs.
A. Zheng, M. I. Jordan, B. Liblit, and A. Aiken.
Advances in Neural Information Processing Systems 16 (NIPS),
2004.
-
Type Systems for Distributed Data Sharing.
B. Liblit, A. Aiken, and K. Yelick.
Proceedings of the 2003 Static Analysis Symposium,
pages 273-294, June 2003.
-
Sampling User Executions for Bug Isolation.
B. Liblit, A. Aiken, A. Zheng, and M. I. Jordan.
In Proceedings of the First International Workshop on Remote Analysis and Measurement of Software Systems
(RAMSS),
pages 5-8, May 2003.
-
Bug Isolation via Remote Program Sampling.
B. Liblit, A. Aiken, A. Zheng, and M. I. Jordan.
In Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation,
pages 141-154, June 2003.
-
Checking and Inferring Local Non-Aliasing.
A. Aiken, J. Foster, J. Kodumal, and T. Terauchi.
Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation,
pages 129-140, June 2003.
-
Winnowing: Local Algorithms for Document Fingerprinting.
S. Schleimer, D. Wilkerson, and A. Aiken.
In Proceedings of the ACM SIGMOD International Conference on Management of Data,
pages 76-85, June 2003.
-
Flow-Sensitive Type Qualifiers.
J. Foster, T. Terauchi, and A. Aiken.
In Proceedings of the SIGPLAN Conference on Programming Language Design and Implementation,
pages 1-12, June 2002.
-
First-Order Theory of Subtyping Constraints.
Z. Su, A. Aiken, J. Niehren, T. Priesnitz, and R. Trienen.
In Proceedings of the ACM Symposium on Principles of Programming Languages,
pages 203-216, January 2002.
-
Language Support for Regions.
D. Gay and A. Aiken.
In Proceedings of the SIGPLAN Conference on Programming Language Design and Implementation,
pages 70-80, June 2001.
-
Entailment with Conditional Equality Constraints,
Z. Su and A. Aiken.
In Proceedings of the European Symposium on Programming,
pages 170-189, April 2001.
-
Polymorphic versus Monomorphic Flow-Insensitive Points-to Analysis for C.
J. Foster, M. Fähndrich, and A. Aiken.
In Proceedings of the 2000 Static Analysis Symposium,
pages 175-198, June 2000.
-
A First Step Towards Automated Detection of Buffer Overrun Vulnerabilities.
D. Wagner, J. Foster, E. Brewer, and A. Aiken.
In Proceedings of the 2000 Network and Distributed Systems Security Conference,
pages 3-17, February 2000.
-
Type Systems for Distributed Data Structures.
B. Liblit and A. Aiken.
Proceedings of the ACM Symposium on Principles of Programming Languages,
pages 199-213, January 2000.
-
Projection Merging: Reducing Redundancies in Inclusion Constraint Graphs.
M. Fähndrich, Z. Su, and A. Aiken.
In Proceedings of the ACM Symposium on Principles of Programming Languages,
pages 81-95, January 2000.
-
A Theory of Type Qualifiers.
J. Foster, M. Fähndrich, and A. Aiken.
In Proceedings of the SIGPLAN Conference on Programming Language Design and Implementation,
pages 192-203, Atlanta, Georgia, June 1999.
-
Partial Online Cycle Elimination in Inclusion Constraint Graphs.
M. Fähndrich, J. Foster, Z. Su, and A. Aiken.
In Proceedings of the SIGPLAN Conference on Programming Language Design and Implementation,
pages 85-96, June 1998.
-
Memory Management with Explicit Regions.
D. Gay and A. Aiken.
In Proceedings of the SIGPLAN Conference on Programming Language Design and Implementation,
pages 313-323, June 1998.
-
Detecting Races in Relay Ladder Logic Programs. (best paper award)
A. Aiken, M. Fähndrich, and Z. Su.
In Proceedings of the 1st International Conference on Tools and Algorithms for the Construction and Analysis of Systems,
pages 184-200, April 1998.
-
A Toolkit for Constructing Type- and Constraint-Based Program Analyses (invited paper).
A. Aiken, M. Fähndrich, J. Foster, and Z. Su.
In Proceedings of the 2nd International Workshop on Types in Compilation,
LNCS #1473, pages 76-96, March 1998.
-
Titanium: A High-Performance Java Dialect.
K. Yelick, L. Semenzato, G. Pike, C. Miyamoto, B. Liblit, A. Krishnamurthy, P. Hilfinger, S. Graham, D. Gay, P. Colella, and A. Aiken.
In Proceedings of the 1998 ACM Workshop on Java for High Performance Computing,,
pages 1-13, February, 1998.
-
Attack Resistant Trust Metrics for Public Key Certification.
R. Levien and A. Aiken.
In Proceedings of the 7th USENIX Security Symposium,
pages 229-241, January, 1998.
-
Barrier Inference.
D. Gay and A. Aiken.
In Proceedings of the Twenty-Fifth Annual ACM Sigplan Symposium on Principles of Programming Languages,
pages 342-354, January, 1998.
-
Program Analysis Using Mixed Term and Set Constraints.
M. Fähndrich and A. Aiken.
In Proceedings of the 4th International Static Analysis Symposium,
pages 114-126, September, 1997.
-
Optimal Representations of Polymorphic Types with Subtyping (Extended Abstract).
A. Aiken, E. Wimmers, and J. Palsberg.
Theoretical Aspects of Computer Software (TACS),
September, 1997.
-
Refined Type Inference for ML.
M. Fähndrich and A. Aiken.
In Proceedings of the 1st Workshop on Types in Compilation,
June 1997.
-
Making Set-Constraint Program Analyses Scale.
M. Fähndrich and A. Aiken.
The CP'96 Workshop on Set Constraints, August, 1996.
Available as UC Berkeley Computer Science Technical Report UCB//CSD-96-917.
-
Tioga-2: A Direct Manipulation Database Visualization Environment.
A. Aiken, J. Chen, M. Stonebraker, and A. Woodruff.
Proceedings of the 12th International Conference on Data Engineering,
pages 208-217, February, 1996.
-
The Tioga-2 Database Visualization Environment.
A. Aiken, J. Chen, M. Lin, M. Spalding, M. Stonebraker, and A. Woodruff.
In Wierse, Grinstein and Lang (Eds.), Database Issues for DataVisualization,
IEEE Visualization '95 Workshop,
October 1995 (LNCS v. 1183).
-
Dynamic Typing vs. Subtype Inference.
A. Aiken and M. Fähndrich.
In Proceedings of the Eighth Conference on Functional Programming and Computer Architecture,
pages 182-191, June 1995.
-
Better Static Memory Management: Improvements to Region-Based Analysis of Higher-Order Languages.
A. Aiken, M. Fähndrich, and R. Levien.
In Proceedings of the SIGPLAN Conference on Programming Language Design and Implementation,
pages 174-185, June 1995.
Also available as Berkeley CS Report CSD-95-866. <
/li>
-
Navigation and Coordination Primitives for Multidimensional Browsers.
A. Woodruff, A. Su, M. Stonebraker, C. Paxson, J. Chen, A. Aiken, P. Wisnovsky, and C. Taylor.
In Stefano Spaccapietra and Ramesh Jain (Eds.), Visual Database Systems 3: Visual Information Management (Proceedings of the 3rd IFIP 2.6 Working Conference on Visual Database Systems),
pages 360-371, March 1995, Chapman & Hall.
-
Zooming and Tunneling in Tioga: Supporting Navigation in Multidimensional Space.
A. Woodruff, P. Wisnovsky, C. Taylor, M. Stonebraker, C. Paxson, J. Chen, and A. Aiken.
In Proceedings of the IEEE Symposium on Visual Languages,
pages 191-193, October 1994.
-
Directional Type Checking of Logic Programs.
A. Aiken and T. K. Lakshman.
In Proceedings of the 1st International Static Analysis Symposium,
pages 43-64, September 1994.
-
Using the Run-Time Sizes of Data Structures to Guide Parallel Thread Creation.
L. Huelsbergen, J. Larus, and A. Aiken.
In Proceedings of the 1994 Symposium on Lisp and Functional Programming,
pages 79-90, June 1994.
-
Set Constraints: Results, Applications, and Future Directions.
A. Aiken.
In Proceedings of the Second Workshop on the Principles and Practice of Constraint
Programming,
pages 326-335, May 1994.
-
Soft Typing with Conditional Types.
A. Aiken, E. Wimmers, and T.K. Lakshman.
In Proceedings of the Twenty-First Annual ACM Symposium on Principles of Programming Languages,
pages 163-173, January 1994.
-
The Complexity of Set Constraints.
A. Aiken, D. Kozen, M. Vardi, and E. Wimmers.
In Proceedings of Computer Science Logic 1993,
pages 1-17, September 1993.
-
Type Inclusion Constraints and Type Inference.
A. Aiken and E. Wimmers.
In Proceedings of the Seventh ACM Conference on Functional Programming and Computer Architecture,
pages 31-41, June 1993.
-
Solving Systems of Set Constraints.
A. Aiken and E. Wimmers.
In Proceedings of the Seventh Annual IEEE Symposium on Logic in Computer Science,
pages 329-340, June 1992.
-
Behavior of Database Production Rules: Termination, Confluence, and Observable Determinism.
A. Aiken, J. Widom, and J. M. Hellerstein.
In Proceedings of the ACM SIGMOD International Conference on Management of Data,
pages 59-68, June 1992.
-
Implementing Regular Tree Expressions.
A. Aiken and B. Murphy.
In Proceedings of the Fifth ACM Conference on Functional Programming and Computer Architecture, Lecture Notes in Computer Science 523,
pages 427-447, August 1991.
-
Static Type Inference in a Dynamically Typed Language.
A. Aiken and B. Murphy.
In Proceedings of the Eighteenth Annual ACM Symposium on Principles of Programming Languages,
pages 279-290, January 1991.
-
Program Transformation in the Presence of Errors.
A. Aiken, J. Williams, and E. Wimmers.
In Proceedings of the Seventeenth Annual ACM Symposium on Principles of Programming Languages,
pages 210-217, January 1990.
-
Optimal Loop Parallelization.
A. Aiken and A. Nicolau.
In Proceedings of the SIGPLAN Conference on Programming Language Design and Implementation,
pages 308-317, June 1988.
-
Perfect Pipelining: A New Loop Parallelization Technique.
A. Aiken and A. Nicolau.
In Proceedings of the 1988 European Symposium on Programming, Lecture Notes in Computer Science 300,
pages 221-235, March 1988.
-
A Development Environment for Horizontal Microcode.
A. Aiken and A. Nicolau.
In Proceedings of the Nineteenth Annual Workshop on Microprogramming,
pages 23-31, October 1986.
Unrefereed Publications
-
Cool: A Portable Project for Teaching Compiler Construction.
A. Aiken.
ACM Sigplan Notices
31(7), pages 19-26, July 1996.
Technical Reports Not Published Elsewhere
-
Chord: A Static Analysis Framework for Java.
M. Naik and A. Aiken.
Stanford University Computer Science Technical Report, February 2008.
-
The Saturn Program Analysis System.
A. Aiken, S. Bugrara, I. Dillig, T. Dillig, B. Hackett, and P. Hawkins.
Stanford University Computer Science Technical Report, December 2006.
-
Building a Better Backtrace: Techniques for Postmortem Program Analysis.
B. Liblit and A. Aiken.
UC Berkeley Computer Science Technical Report CSD-02-1203, October 2002.
-
Tracking Down Exceptions in Standard ML Programs.
M. Fähndrich, J. Foster, A. Aiken, and J. Cu.
UC Berkeley Computer Science Technical Report CSD-98-996, February 1998.
-
FL Language Manual: Parts 1 and 2.
J. Backus, J. Williams, E. Wimmers, P. Lucas, and A. Aiken.
IBM Research Report RJ 7100, IBM Almaden Research Center,
San Jose, California, October 1989.
-
The FL Project: The Design of a Functional Language.
A. Aiken, J. Williams, and E. Wimmers.
September, 1993.
-
Compaction-Based Parallelization (Ph.D. thesis).
A. Aiken.
Technical Report 88-922, Computer Science Department, Cornell University, August 1988.