Filters








1,579 Hits in 4.9 sec

Certified Abstract Interpretation with Pretty-Big-Step Semantics

Martin Bodin, Thomas Jensen, Alan Schmitt
2015 Proceedings of the 2015 Conference on Certified Programs and Proofs - CPP '15  
This paper describes an investigation into developing certified abstract interpreters from big-step semantics using the Coq proof assistant.  ...  We base our approach on Schmidt's abstract interpretation principles for natural semantics, and use a pretty-big-step (PBS) semantics, a semantic format proposed by Charguéraud.  ...  Pretty-big-step Semantics Pretty-big-step semantics (PBS) is a flavor of big-step, or natural, operational semantics which directly relates terms to their results.  ... 
doi:10.1145/2676724.2693174 dblp:conf/cpp/BodinJS15 fatcat:wlmt7trhzvghvcdnxkbvlq5hqe

Pretty-big-step-semantics-based Certified Abstract Interpretation (Preliminary version)

Martin Bodin, Thomas Jensen, Alan Schmitt
2013 Electronic Proceedings in Theoretical Computer Science  
The technique is based on a particular kind of semantics called pretty-big-step semantics.  ...  We present a pretty-big-step semantics of a language with simple objects called O'While and specify a series of instrumentations of the semantics that explicitates the flows of values in a program.  ...  Pretty-Big-Step Operational Semantics As big-step semantics, pretty-big-step semantics directly relates terms to their results.  ... 
doi:10.4204/eptcs.129.23 fatcat:3kblo7natjgy7hunjohv6dji7a

A trusted mechanised JavaSript specification

Martin Bodin, Arthur Chargueraud, Daniele Filaretti, Philippa Gardner, Sergio Maffeis, Daiva Naudziuniene, Alan Schmitt, Gareth Smith
2014 Proceedings of the 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages - POPL '14  
We give a Coq proof that JSRef is correct with respect to JSCert and assess JSRef using test262, the ECMA conformance test suite.  ...  We present JSCert, a formalisation of the current ECMA standard in the Coq proof assistant, and JSRef, a reference interpreter for JavaScript extracted from Coq to OCaml.  ...  We would like to thank our interns Lorenz Breidenbach for help with testing and debugging, and Benjamin Farinier for his help in setting up the code coverage tool.  ... 
doi:10.1145/2535838.2535876 dblp:conf/popl/BodinCFGMNSS14 fatcat:gjwvma6drzginetbxw2opqcuhi

A Language Designer's Workbench

Eelco Visser, Guido Wachsmuth, Andrew Tolmach, Pierre Neron, Vlad Vergu, Augusto Passalaqua, Gabrieël Konat
2014 Proceedings of the 2014 ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming & Software - Onward! '14  
In this paper we present a proof-of-concept language designer's workbench that supports generation of IDEs, interpreters, and verification infrastructure from a single source.  ...  We thank the participants of the Summer School on Language Frameworks in Sinaia, Romania in July 2012 -in particular Grigore Rosu, Robby Findler, and Peter Mosses -for inspiring us to address dynamic semantics  ...  Bach Poulsen and Mosses [4] demonstrate the derivation of pretty-big-step semantics from small-step rules.  ... 
doi:10.1145/2661136.2661149 dblp:conf/oopsla/VisserWTNVPK14 fatcat:rpigqpa73zbd5byzmbbxdzytve

Formal certification of a compiler back-end or

Xavier Leroy
2006 Conference record of the 33rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages - POPL'06  
This paper reports on the development and formal certification (proof of semantic preservation) of a compiler from Cminor (a Clike imperative language) to PowerPC assembly code, using the Coq proof assistant  ...  Such a certified compiler is useful in the context of formal methods applied to the certification of critical software: the certification of the compiler guarantees that the safety properties proved on  ...  abstract interpretation of the semantics of RTL instructions over these abstract values.  ... 
doi:10.1145/1111037.1111042 dblp:conf/popl/Leroy06 fatcat:i3vmskkrb5avnb53wpuj3qsypy

Formal certification of a compiler back-end or

Xavier Leroy
2006 SIGPLAN notices  
This paper reports on the development and formal certification (proof of semantic preservation) of a compiler from Cminor (a Clike imperative language) to PowerPC assembly code, using the Coq proof assistant  ...  Such a certified compiler is useful in the context of formal methods applied to the certification of critical software: the certification of the compiler guarantees that the safety properties proved on  ...  abstract interpretation of the semantics of RTL instructions over these abstract values.  ... 
doi:10.1145/1111320.1111042 fatcat:nt2p2lwqezf6vn264jgnddfl2u

PhD Abstracts

GRAHAM HUTTON
2015 Journal of functional programming  
The abstracts are not reviewed.  ...  If a student or advisor would like to submit a dissertation abstract for publication in this series, please contact the editor for further details.  ...  small-step reduction semantics and abstract machines from big-step reduction strategies.  ... 
doi:10.1017/s0956796815000040 fatcat:g7yt23qxivevte45fkiqv6xwna

Modeling Asymptotic Complexity Using ACL2

William D. Young
2022 Electronic Proceedings in Theoretical Computer Science  
We describe work using ACL2 to prove complexity properties of programs implemented in a simple imperative programming language embedding via an operational semantics in ACL2.  ...  The theory of asymptotic complexity provides an approach to characterizing the behavior of programs in terms of bounds on the number of computational steps executed or use of computational resources.  ...  We prove functional properties of our programs using the interpreter semantics in the standard way. The interpreter also keeps a count of computational steps as execution proceeds.  ... 
doi:10.4204/eptcs.359.9 fatcat:yxxp73zkbbff7dsdfpurpcf34i

Modular development of certified program verifiers with a proof assistant

Adam Chlipala
2006 Proceedings of the eleventh ACM SIGPLAN international conference on Functional programming - ICFP '06  
The tool's soundness theorem is expressed in terms of the bit-level semantics of x86 programs, so its correctness depends on very few assumptions.  ...  The approach is based on developing a library of reusable functors for transforming a verifier at one level of abstraction into a verifier at a lower level.  ...  SAL semantics defines the behavior of this Simplified Assembly Language. • Reduction enables multiple steps of abstraction: model checking an abstraction of an abstraction of a system suffices to verify  ... 
doi:10.1145/1159803.1159825 dblp:conf/icfp/Chlipala06 fatcat:pw65cef4ejefzeilgmuy4zodji

Modular development of certified program verifiers with a proof assistant

Adam Chlipala
2006 SIGPLAN notices  
The tool's soundness theorem is expressed in terms of the bit-level semantics of x86 programs, so its correctness depends on very few assumptions.  ...  The approach is based on developing a library of reusable functors for transforming a verifier at one level of abstraction into a verifier at a lower level.  ...  SAL semantics defines the behavior of this Simplified Assembly Language. • Reduction enables multiple steps of abstraction: model checking an abstraction of an abstraction of a system suffices to verify  ... 
doi:10.1145/1160074.1159825 fatcat:dzyiwqk2k5ffdoonteiyplkhoi

Modular development of certified program verifiers with a proof assistant,

ADAM CHLIPALA
2008 Journal of functional programming  
The tool's soundness theorem is expressed in terms of the bit-level semantics of x86 programs, so its correctness depends on very few assumptions.  ...  The approach is based on developing a library of reusable functors for transforming a verifier at one level of abstraction into a verifier at a lower level.  ...  SAL semantics defines the behavior of this Simplified Assembly Language. • Reduction enables multiple steps of abstraction: model checking an abstraction of an abstraction of a system suffices to verify  ... 
doi:10.1017/s0956796808006904 fatcat:6hcdcm4yjfbtvfcypfy3okn6ye

Skeletal semantics and their interpretations

Martin Bodin, Philippa Gardner, Thomas Jensen, Alan Schmitt
2019 Proceedings of the ACM on Programming Languages (PACMPL)  
We explore four generic interpretations: a simple well-formedness interpretation; a concrete interpretation; an abstract interpretation; and a constraint generator for flow-sensitive analysis.  ...  However, none of this work provides a systematic way of developing concrete and abstract semantics, connected together by a general consistency result.  ...  Their rule format is based on a non-standard style of operational semantics, called pretty-big-step operational semantics [Charguéraud 2013 ], which cuts up standard big-step rules into many fine-grained  ... 
doi:10.1145/3290357 fatcat:owj2oge6gnbhlc6wyjoagyzgqi

Certified Compilation of Financial Contracts

Danil Annenkov, Martin Elsman
2018 Proceedings of the 20th International Symposium on Principles and Practice of Declarative Programming - PPDP '18  
We present an extension to a certified financial contract management system that allows for templated declarative financial contracts and for integration with financial stochastic models through verified  ...  The full contract-management system, including the payoff-language compilation, is verified in the Coq proof assistant and certified Haskell code is extracted from our Coq development along with Futhark  ...  the "current time". • ILsem semantic function for payoff expressions, which can be used as an interpreter.  ... 
doi:10.1145/3236950.3236955 dblp:conf/ppdp/AnnenkovE18 fatcat:es2uglxpizcqncktsorywyxkca

Gillian, part i: a multi-language platform for symbolic execution

José Fragoso Santos, Petar Maksimović, Sacha-Élie Ayoun, Philippa Gardner
2020 Proceedings of the 41st ACM SIGPLAN Conference on Programming Language Design and Implementation  
CCS Concepts: · Theory of computation → Program analysis; Program semantics; · Software and its engineering → Formal language definitions.  ...  We prove a parametric soundness result, introducing restriction on abstract states, which generalises path conditions used in classical symbolic execution.  ...  Fragoso Santos was partially supported by national funds through Fundação para a Ciência e a Tecnologia (FCT), with reference UIDB/50021/2020 (INESC-ID multi-annual funding).  ... 
doi:10.1145/3385412.3386014 dblp:conf/pldi/SantosMAG20 fatcat:6sm3bdduivh4tet5uzaqtgrgqi

A Certified Multi-prover Verification Condition Generator [chapter]

Paolo Herms, Claude Marché, Benjamin Monate
2012 Lecture Notes in Computer Science  
We present a certified implementation of a verification condition generator.  ...  An originality is its genericity with respect to the logical context, which allows us to produce proof obligations for a large class of theorem provers.  ...  Operational Semantics The operational semantics is defined in big-step style following the approach of Leroy and Grall [20] .  ... 
doi:10.1007/978-3-642-27705-4_2 fatcat:uipw5cbfjra57dpq3u5e4jzqpe
« Previous Showing results 1 — 15 out of 1,579 results