Filters








1,453 Hits in 3.5 sec

A Coq library for internal verification of running-times

Jay McCarthy, Burke Fetscher, Max S. New, Daniel Feltey, Robert Bruce Findler
2018 Science of Computer Programming  
This paper presents a Coq library that lifts an abstract yet precise notion of running-time into the type of a function.  ...  Overview of Our Library The core of our library is a monad that, as part of its types, tracks the running time of functions.  ...  This work grew out of a PL seminar at Northwestern; thanks to Benjamin English, Michael Hueschen, Daniel Lieberman, Yuchen Liu, Kevin Schwarz, Zach Smith, and Lei Wang for their feedback on early versions  ... 
doi:10.1016/j.scico.2017.05.001 fatcat:e7xh6aj6g5cglfalyjg2uxiy2m

A Coq Library for Internal Verification of Running-Times [chapter]

Jay McCarthy, Burke Fetscher, Max New, Daniel Feltey, Robert Bruce Findler
2016 Lecture Notes in Computer Science  
This paper presents a Coq library that lifts an abstract yet precise notion of running-time into the type of a function. Our library is based on a monad that counts abstract steps.  ...  BigNum operations, and Okasaki's Braun Tree algorithms all have their expected running times.  ...  Thanks to reviewers of this paper, including previous versions. Thanks to Neil Toronto for his help with the properties of integer logarithms (in-  ... 
doi:10.1007/978-3-319-29604-3_10 fatcat:7d6o4dg25raprligwmm3vbmdci

Verification of Concurrent Programs Using the Coq Proof Assistant: A Case Study

Reynald Affeldt, Naoki Kobayashi, Akinori Yonezawa
2005 IPSJ Digital Courier  
The approach we take is to use an original library that provides a language for modeling, a logic, and lemmas for verification of concurrent programs.  ...  Second, we report on the verification of a property of the mail server.  ...  Acknowledgments This work is partially supported by a research project funded by Japanese Ministry of Education and Science's research program "e-Society."  ... 
doi:10.2197/ipsjdc.1.117 fatcat:wnr22n2hdfb23hpc6kbkdfqtpy

Towards verified cloud computing environments

Frederic Loulergue, Frederic Gava, Nikolai Kosmatov, Matthieu Lemerre
2012 2012 International Conference on High Performance Computing & Simulation (HPCS)  
In this paper we study a usual software stack of a cloud environment from the perspective of formal verification. This software stack ranges from applications to the hypervisor.  ...  As the usage of the cloud becomes pervasive in our lives, it is needed to ensure the reliability, safety and security of cloud environments.  ...  Second we need a run-time system: this system consists of a JVM but also of compiled versions of the supporting libraries such as MapReduce (section III).  ... 
doi:10.1109/hpcsim.2012.6266896 dblp:conf/ieeehpcs/LoulergueGKL12 fatcat:mijfmtaszvgdro3c763jr2tf3e

Coqoon

Alexander Faithfull, Jesper Bengtson, Enrico Tassi, Carst Tankink
2017 International Journal on Software Tools for Technology Transfer (STTT)  
Coqoon takes advantage of the latest features of Coq, including asynchronous and parallel processing of proofs, and-when used together with a third-party OCaml extension for Eclipse-can even be used to  ...  In this paper we present Coqoon, an IDE for Coq developments integrated into Eclipse.  ...  These classes can then run arbitrary code to resolve the identifier; for example, the handler for the Coq standard library finds it by running a coqtop process with the -where option.  ... 
doi:10.1007/s10009-017-0457-2 fatcat:ig6srnmtendodcmxhftvxpa3pi

Ready, set, verify! applying hs-to-coq to real-world Haskell code (experience report)

Joachim Breitner, Antal Spector-Zabusky, Yao Li, Christine Rizkallah, John Wiegley, Stephanie Weirich
2018 Proceedings of the ACM on Programming Languages  
We use hs-to-coq to translate significant portions of Haskell's containers library into Coq, and verify it against specifications that we derive from a variety of sources including type class laws, the  ...  code ś a form of shallow embedding ś which can be verified just like normal Coq definitions.  ...  Our hs-to-coq tool translates Haskell types, • We demonstrate that hs-to-coq is suitable for the verification of unmodified, real-world Haskell libraries.  ... 
doi:10.1145/3236784 dblp:journals/pacmpl/BreitnerSLRWW18 fatcat:y3m367mjffflxcrj2bru2rk554

Coqoon [chapter]

Alexander Faithfull, Jesper Bengtson, Enrico Tassi, Carst Tankink
2016 Lecture Notes in Computer Science  
Coqoon takes advantage of the latest features of Coq, including asynchronous and parallel processing of proofs, and-when used together with a third-party OCaml extension for Eclipse-can even be used to  ...  In this paper we present Coqoon, an IDE for Coq developments integrated into Eclipse.  ...  These classes can then run arbitrary code to resolve the identifier; for example, the handler for the Coq standard library finds it by running a coqtop process with the -where option.  ... 
doi:10.1007/978-3-662-49674-9_18 fatcat:dfv5r5iwjba2pkposp3ghd2gta

Ready, Set, Verify! Applying hs-to-coq to real-world Haskell code [article]

Joachim Breitner and Antal Spector-Zabusky and Yao Li and Christine Rizkallah and John Wiegley and Stephanie Weirich
2018 arXiv   pre-print
We use hs-to-coq to translate significant portions of Haskell's containers library into Coq, and verify it against specifications that we derive from a variety of sources including type class laws, the  ...  We also learn more about the theory of weight-balanced trees, extend hs-to-coq to handle partiality, and -- since we found no bugs -- attest to the superb quality of well-tested functional code.  ...  • We demonstrate that hs-to-coq is suitable for the verification of unmodified, real-world Haskell libraries.  ... 
arXiv:1803.06960v2 fatcat:bgigt7yjivcqrffegj3tllnl3m

A reflexive tactic for polynomial positivity using numerical solvers and floating-point computations

Érik Martin-Dorel, Pierre Roux
2017 Proceedings of the 6th ACM SIGPLAN Conference on Certified Programs and Proofs - CPP 2017  
We develop a reflexive tactic for the Coq proof assistant allowing one to automatically discharge polynomial positivity proofs.  ...  Hence the need for formal verification of such witnesses. State of the art methods rely on heuristic roundings to exact solutions in the rational field.  ...  Running time (elapsed real time, in s) for various tools on a set of benchmarks. "-" indicates either that a tool is not applicable or that it failed to produce a proof within the time limit (900 s). n  ... 
doi:10.1145/3018610.3018622 dblp:conf/cpp/Martin-DorelR17 fatcat:tuauz6kkzjdihbanfk4t2hrzse

FreeSpec: specifying, verifying, and executing impure computations in Coq

Thomas Letan, Yann Régis-Gianas
2020 Proceedings of the 9th ACM SIGPLAN International Conference on Certified Programs and Proofs  
Finally, we introduce Free-Spec.Exec, a plugin for Coq to seamlessly execute certified programs written with FreeSpec. • Theory of computation → Program verification.  ...  FreeSpec is a framework for the Coq theorem prover which allows for specifying and verifying complex systems as hierarchies of components verified both in isolation and in composition.  ...  A component exposes an interface, uses interfaces exposed by other components, and makes its internal state evolve each time it is executed.  ... 
doi:10.1145/3372885.3373812 dblp:conf/cpp/LetanR20 fatcat:vkpxwmfmu5byhleirudlqsdoda

Functors for Proofs and Programs [chapter]

Jean-Christophe Filliâtre, Pierre Letouzey
2004 Lecture Notes in Computer Science  
One of the verified implementation is the actual code for sets and maps from the Objective Caml standard library.  ...  Beyond these verification results, this article illustrates the use and benefits of modules and functors in a logical framework.  ...  We are grateful to Xavier Leroy for suggesting the verification of Ocaml's AVL trees and for having provided patches almost immediately.  ... 
doi:10.1007/978-3-540-24725-8_26 fatcat:3ijqcvdvzncqrjyytdoiynx7si

Dependencies in Formal Mathematics: Applications and Extraction for Coq and Mizar [article]

Jesse Alama, Lionel Mamane, Josef Urban
2012 arXiv   pre-print
The methods are used for dependency extraction from two large mathematical repositories: the Coq Repository at Nijmegen and the Mizar Mathematical Library.  ...  Two methods for extracting detailed formal dependencies from the Coq and Mizar system are presented and compared.  ...  formal wikis that we develop. 15 For example, the average number of items that need to be recompiled when a random item is changed has dropped about seven times for CoRN, and about five times for Mizar  ... 
arXiv:1109.3687v2 fatcat:ooige4ajvbg2reliscvnpnrw5e

MirrorShard: Proof by Computational Reflection with Verified Hints [article]

Gregory Malecha, Adam Chlipala, Thomas Braibant, Patrick Hulin, Edward Z. Yang
2013 arXiv   pre-print
We describe a method for building composable and extensible verification procedures within the Coq proof assistant.  ...  Unlike traditional methods that rely on run-time generation and checking of proofs, we use verified-correct procedures with Coq soundness proofs.  ...  logic [32] within the Bedrock [13] library for Coq.  ... 
arXiv:1305.6543v1 fatcat:nqynxdo6lbdy3l7aqpscixmjzy

Code Formal Verification of Operation System

Yu Zhang, Yunwei Dong, Huo Hong, Fan Zhang
2010 International Journal of Computer Network and Information Security  
Formal verification is the only known way to guarantee that a system is free of programming errors.  ...  We present a case study to the verification of real-world C systems code derived from an implementation of μC/OS -II in the end.  ...  ACKNOWLEDGMENT This paper is supported by the National Natural Science Foundation of China under Grant No.60736017. REFERENCES  ... 
doi:10.5815/ijcnis.2010.02.02 fatcat:2xx46lr5grh4tb4hpulujdxh3q

A Purely Functional Library for Modular Arithmetic and Its Application to Certifying Large Prime Numbers [chapter]

Benjamin Grégoire, Laurent Théry
2006 Lecture Notes in Computer Science  
In the first step, one writes a semi-decision procedure for the problem in the programming language of Coq.  ...  In this paper, we present a library of modular arithmetic that has been developed within the Coq proof assistant. The library proposes the usual operations that have all been proved correct.  ...  Acknowledgments We would like to thank the anonymous referees for their careful reading of the paper and specially the referee who suggested a simplification to our implementation of Karatsuba multiplication  ... 
doi:10.1007/11814771_36 fatcat:lpkyfw4axneidm4ycq72vhc7ea
« Previous Showing results 1 — 15 out of 1,453 results