See this document in CiteSeerX!

The Design and Implementation of a Certifying Compiler (1998)  (Make Corrections)  (137 citations)
George C. Necula, Peter Lee
Proceedings of the 1998 ACM SIGPLAN Conference on Prgramming Language Design and Implementation (PLDI)



  Home/Search   Context   Related

Links:   ACM   DBLP

 
View or download:
cmu.edu/~necula/pldi98.ps.gz
berkeley.edu/home/necula...pldi98.ps.gz
cmu.edu/afs/cs/proje...neculapldi98.ps
Cached:  PS.gz  PS  PDF   Image  Update  Help

From:  cs.sfu.ca/people/GradStudents/... (more)
From:  berkeley.edu/home/necula...papers
(Enter author homepages)

Rate this article: (best)
  Comment on this article  
(Enter summary)

Abstract: This paper presents the design and implementation of a compiler that translates programs written in a type-safe subset of the C programming language into highly optimized DEC Alpha assembly language programs, and a certifier that automatically checks the type safety and memory safety of any assembly language program produced by the compiler. The result of the certifier is either a formal proof of type safety or a counterexample pointing to a potential violation of the type system by the... (Update)

Cited by:   More
A Note On Side-Channels Resulting From - Dynamic Compilation Page (2006)   (Correct)
Dependent Types in Practical Programming (Extended Abstract) - Xi, Pfenning (1999)   (Correct)
Typed Memory Management via Static Capabilities - David Walker Carnegie (2000)   (Correct)

Similar documents (at the sentence level):
8.7%:   Compiling with Proofs - Necula (1998)   (Correct)

Active bibliography (related documents):   More   All
0.3:   Validation of Code-Improving Transformations for Embedded.. - van Engelen, Whalley, Yuan   (Correct)
0.3:   Automatic Validation of Code-Improving Transformations - van Engelen, Whalley, Yuan (2000)   (Correct)
0.2:   Mechanical Verification of Compiler Correctness - Stringer-Calvert (1998)   (Correct)

Similar documents based on text:   More   All
0.4:   Checking and Certifying Computational Results - Bright (1994)   (Correct)
0.4:   Deriving Specialized Program Analyses for.. - Ramalingam.. (2002)   (Correct)
0.3:   A Certifying Compiler for Java - Colby, Lee, Necula, Blau, Plesko.. (2000)   (Correct)

Related documents from co-citation:   More   All
58:   Proof-carrying code - Necula - 1997
33:   to typed assembly language (context) - Morrisett, Walker et al. - 1998
31:   Safe Kernel Extensions Without Run-Time Checking - Necula, Lee - 1996

BibTeX entry:   (Update)

Necula, G. and P. Lee (1998, June). The design and implementation of a certifying compiler. In ACM SIGPLAN '98 Conference on Programming Language Design and Implementation, pp. 333--344. ACM press. http://citeseer.ist.psu.edu/necula98design.html   More

@inproceedings{ necula98design,
    author = "G. C. Necula and P. Lee",
    title = "The Design and Implementation of a Certifying Compiler",
    booktitle = "Proceedings of the 1998 {ACM} {SIGPLAN} Conference on Prgramming Language Design and Implementation ({PLDI})",
    pages = "333--344",
    year = "1998",
    url = "citeseer.ist.psu.edu/necula98design.html" }
Citations (may not include all citations):
566   Proof-carrying code - Necula - 1997  ACM   DBLP
434   A framework for defining logics - Harper, Honsell et al. - 1993  ACM   DBLP
392   A Computational Logic (context) - Boyer, Moore - 1979
295   PVS: A prototype verification system (context) - Owre, Rushby et al. - 1992  DBLP
264   Safe kernel extensions without run-time checking - Necula, Lee - 1996  ACM   DBLP
210   TIL: A type-directed optimizing compiler for ML - Tarditi, Morrisett et al. - 1996  DBLP
201   to typed assembly language (context) - Morrisett, Walker et al. - 1998
154   Simplification by cooperating decision procedures (context) - Nelson, Oppen - 1979  ACM   DBLP
77   The Java language specification (context) - Microsystems - 1995
56   An overview of the Extended Static Checking system - Detlefs - 1996
53   Deciding linear inequalities by computing loop residues (context) - Shostak - 1981  ACM   DBLP
45   HOL: A machine oriented formulation of higher-order logic - Gordon - 1985
45   The Java Virtual Machine specification (context) - Microsystems - 1995
33   More on advice on structuring compilers and proving them cor.. (context) - Thatcher, Wagner et al. - 1980  ACM   DBLP
29   A mechanically verified language implementation - Moore - 1989  ACM   DBLP
28   A mechanically verified code generator - Young - 1989  ACM   DBLP
27   Advice on structuring compilers and proving them correct (context) - Morris - 1973  ACM   DBLP
20   VLISP: a verified implementation of Scheme - Guttman, Ramsdell et al. - 1995  ACM   DBLP
15   Efficient representation and validation of logical proofs - Necula, Lee - 1997
14   Stanford pascal verifier user manual (context) - Luckham - 1979
13   The VLISP verified PreScheme compiler - Oliva, Ramsdell et al. - 1995  ACM   DBLP
11   A provably correct embedded verifier for the certification o.. - Cimatti - 1997  ACM   DBLP
11   Using domain algebras to prove the correctness of a compiler (context) - Dybjer - 1986
9   Towards a mathematical theory of computation (context) - McCarthy - 1963



The graph only includes citing articles where the year of publication is known.


Documents on the same site (http://www.cs.sfu.ca/people/GradStudents/pwfong/personal/Security/):   More
Going Beyond the Sandbox: An Overview of the New.. - Gong, Mueller.. (1997)   (Correct)
Sumatra: A Language for Resource-aware Mobile Programs - Acharya (1997)   (Correct)
Signing, Sealing, and Guarding Java Objects - Gong, Schemers (1998)   (Correct)

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC