A copy of this work was available on the public web and has been preserved in the Wayback Machine. The capture dates from 2017; you can also visit the original URL.
The file type is application/pdf
.
Filters
Mechanized Semantics for Compiler Verification
[chapter]
2012
Lecture Notes in Computer Science
The formal verification of compilers and related programming tools depends crucially on the availability of appropriate mechanized semantics for the source, intermediate and target languages. ...
In this invited talk, I review various forms of operational semantics and their mechanization, based on my experience with the formal verification of the CompCert C compiler. ...
exposing the need for new approaches and mechanizations. ...
doi:10.1007/978-3-642-35182-2_27
fatcat:l5xttazukbg3zkniaxu5dqysme
Mechanized Semantics for Compiler Verification
[chapter]
2012
Lecture Notes in Computer Science
The formal verification of compilers and related programming tools depends crucially on the availability of appropriate mechanized semantics for the source, intermediate and target languages. ...
In this invited talk, I review various forms of operational semantics and their mechanization, based on my experience with the formal verification of the CompCert C compiler. ...
exposing the need for new approaches and mechanizations. ...
doi:10.1007/978-3-642-35308-6_2
fatcat:fkgmhcapq5cn7bteieddyqql7i
Verified squared
2011
SIGPLAN notices
The formal verification of programs have progressed tremendously in the last decade. ...
Principled but once academic approaches such as Hoare logic and abstract interpretation finally gave birth to quality verification tools, operating over source code (and not just idealized models thereof ...
An obvious alternative is compiler verification: apply mechanized program proof to the compiler itself and prove semantic preservation (the generated code behaves as prescribed by the semantics of the ...
doi:10.1145/1925844.1926387
fatcat:igdwry5xznbexench47525hjcm
Verified squared
2011
Proceedings of the 38th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages - POPL '11
The formal verification of programs have progressed tremendously in the last decade. ...
Principled but once academic approaches such as Hoare logic and abstract interpretation finally gave birth to quality verification tools, operating over source code (and not just idealized models thereof ...
An obvious alternative is compiler verification: apply mechanized program proof to the compiler itself and prove semantic preservation (the generated code behaves as prescribed by the semantics of the ...
doi:10.1145/1926385.1926387
dblp:conf/popl/Leroy11
fatcat:3vpikqg2fbgnpkd4lxfwqskv24
Formal Proofs of Code Generation and Verification Tools
[chapter]
2014
Lecture Notes in Computer Science
A radical solution to these two risks is the deductive verification of compilers and verification tools themselves. ...
Formal verification of compilers, static analyzers, and related tools provides a radical, mathematically-grounded answer to ...
For compilers and code generators, the high-level correctness statement is semantic preservation: every execution of the generated code matches one of the executions of the source code allowed by the semantics ...
doi:10.1007/978-3-319-10431-7_1
fatcat:qbj2jm72gfdy5crez3seavzys4
Modular Verification for Computer Security
2016
2016 IEEE 29th Computer Security Foundations Symposium (CSF)
Several recent projects have demonstrated that formal, deductive functional-correctness verification is now possible for kernels, crypto, and compilers. ...
But the protection mechanisms themselves must then be verified not just for safety but for functional correctness. ...
Government is authorized to reproduce and distribute reprints for Governmental purposes notwithstanding any copyright notation thereon. ...
doi:10.1109/csf.2016.8
dblp:conf/csfw/Appel16
fatcat:7667qxql2ne5dapggwi76wrryq
Provably correct compiler development and implementation
[chapter]
1992
Lecture Notes in Computer Science
The first covers semantical correctness of the code to be generated, whereas the second concerns correctness of the compiler program with respect to the specification. ...
The compiler construction framework presented aims at minimizing the amount of handcoding during implementation and at reusing specification correctness arguments for proving the implementation correct ...
But in absence of verified compilers and interpreters, the execution mechanism for CIL may not agree with the formal semantics and thus, executing the compiler on the CIL execution mechanism may yield ...
doi:10.1007/3-540-55984-1_14
fatcat:2uxcim2kjbb6tjbqz4jfqeuaqu
Cross-Platform Verification Framework for Embedded Systems
[chapter]
2007
Lecture Notes in Computer Science
Additionally, formal verification can be applied for checking requirements resulting from the specification using the same model generation mechanism that is used for test data generation. ...
We perform structural tests on industrial code patterns using a wide-spread industrial compiler. ...
The model generation mechanism that is used for test data generation can be also used for formal verification. ...
doi:10.1007/978-3-540-75664-4_14
fatcat:a4umw2o7qzhbroufabwsxoxg6q
What Level of Mathematical Reasoning can Computer Science Demand of a Software Implementer?
2005
Electronical Notes in Theoretical Computer Science
One very complex cooperational task has been construction of a so called initial correct compiler for a realistic high level programming (and compiler writing) language correctly implemented and executed ...
The article starts out from the observation that software engineering splits in two large activity areas: Software specification with its verification and software implementation with its verification. ...
and so for low level compiler implementation verification: hand. ...
doi:10.1016/j.entcs.2005.05.007
fatcat:margqazqdfcd7os3credbsruhi
Secure Compilation (Dagstuhl Seminar 18201)
2018
Dagstuhl Reports
, and on designing security mechanisms. ...
This seminar strived to take a broad and inclusive view of secure compilation and to provide a forum for discussion on the topic. ...
CCC gives us insight on what is required for modular verification of multi-pass compilers. ...
doi:10.4230/dagrep.8.5.1
dblp:journals/dagstuhl-reports/Ahmed0HP18
fatcat:tis2hemo4je7ni3wr5z6cza3iu
A semantics driven temporal verification system
[chapter]
1988
Lecture Notes in Computer Science
It can be applied, in particular, to the verification of temporal properties of concurrent and reactive systems. ...
SMG transforms programs written in user-definable languages to suitable finite state models, thus enabling fast verification of temporal properties of the input program. ...
This strategy of mixed compilation and interpretation will be extended for handling other common semantic entities, however the user will be given some ability to modify or override the built in mechanisms ...
doi:10.1007/3-540-19027-9_2
fatcat:okuk3f5cnzamtf7out7kqp25li
Keynote II: Formally verifying a compiler: Why? How? How far?
2011
International Symposium on Code Generation and Optimization (CGO 2011)
By applying formal methods (program proof) to the compiler itself, compiler verification proves, with mathematical certainty, that the generated executable code behaves exactly as prescribed by the semantics ...
Why indulge in compiler verification? ...
doi:10.1109/cgo.2011.5764668
dblp:conf/cgo/Leroy11
fatcat:74rux5mgmjc5xpvfz7s4qvfj5i
Formal verification of an optimizing compiler
2007
2007 5th IEEE/ACM International Conference on Formal Methods and Models for Codesign (MEMOCODE 2007)
This is "software-proof codesign" (as opposed to proving an existing compiler). The proof of semantic preservation is mechanized using the Coq proof assistant. ...
Formally verified using Coq The correctness proof (semantic preservation) for the compiler is entirely machine-checked, using the Coq proof assistant. ...
The only downside is a slight inefficiency in the extracted Caml code for bind: let bind f g = fun s -> match f s with | Error -> Error | OK a s' -> match g a s' with (* useless match *) | Error -> Error ...
doi:10.1109/memcod.2007.371254
dblp:conf/memocode/Leroy07
fatcat:uooegjfmdve5bkrd46pfq3kjsy
A Language for Building Verified Software Components
[chapter]
2013
Lecture Notes in Computer Science
The language must include mechanisms for writing reusable components that are amenable to verification, and consequently must also include an open-ended mechanism for adding arbitrarily sophisticated mathematical ...
To be trusted, such verification must go beyond extensive testing and arguments of correctness, and must come with mechanized proofs. ...
We wish to thank our research groups for their contributions over the decades to the ideas discussed here. ...
doi:10.1007/978-3-642-38977-1_23
fatcat:e6ugd3hhujdpxc67tsqc77ekou
KupC: A Formal Tool for Modeling and Verifying Dynamic Updating of C Programs
[chapter]
2019
Lecture Notes in Computer Science
We formalize a patch-based dynamic updating mechanism in K based on the formal executable operational semantics of C. ...
To our knowledge, KupC is the first formal tool for code-level verification of dynamic software updating. ...
These rules are seamlessly compiled by K together with the rules defined for the operational semantics of C [2] . ...
doi:10.1007/978-3-030-16722-6_17
fatcat:p2ak6hl3vbgqlirijxfq7axkta
« Previous
Showing results 1 — 15 out of 23,779 results