A copy of this work was available on the public web and has been preserved in the Wayback Machine. The capture dates from 2020; you can also visit the original URL.
The file type is application/pdf
.
Filters
Ready, Set, Verify! Applying hs-to-coq to real-world Haskell code
[article]
2018
arXiv
pre-print
Our work shows that it is feasible to verify mature, widely-used, highly optimized, and unmodified Haskell code. ...
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 demonstrate that hs-to-coq is suitable for the verification of unmodified, real-world Haskell libraries. ...
arXiv:1803.06960v2
fatcat:bgigt7yjivcqrffegj3tllnl3m
Ready, set, verify! applying hs-to-coq to real-world Haskell code (experience report)
2018
Proceedings of the ACM on Programming Languages
In this work, we use hs-to-coq to translate and verify the two finite set data structures from Haskell's containers package. 1 This codebase is not a toy. ...
Our work shows that it is feasible to verify mature, widely-used, highly optimized, and unmodified Haskell code. ...
Ready, Set, Verify! Applying hs-to-coq to Real-World Haskell Code 89:3 data Set a = Bin {-# UNPACK #-} !Size !a !(Set a) ! ...
doi:10.1145/3236784
dblp:journals/pacmpl/BreitnerSLRWW18
fatcat:y3m367mjffflxcrj2bru2rk554
A Multipurpose Formal RISC-V Specification
[article]
2021
arXiv
pre-print
We set out to identify the commonalities between projects and to represent the RISC-V specification as a program with holes that can be instantiated differently by different projects. ...
Our formalization of the RISC-V specification is written in Haskell and leverages existing tools rather than requiring new domain-specific tools, contrary to other approaches. ...
and systems to turn minimal experiments into more real-world projects. ...
arXiv:2104.00762v1
fatcat:4zqwz2b7yjedzch4wdoojqmoma
A Formal Analysis of the Mimblewimble Cryptocurrency Protocol
2021
Sensors
[Review 3]where simulations can be run This allows us to analyze the behavior of the protocol without having to implement it in a low level programming language. ...
We present and discuss those properties and outline the basis of a model-driven verification approach to address the certification of the correctness of the protocol implementations. ...
By applying the program extraction mechanism provided by Coq we would be able to derive a certified Haskell prototype of the protocol. ...
doi:10.3390/s21175951
pmid:34502842
pmcid:PMC8434605
fatcat:qr2o673tnfa2ndujtay6rsw2ya
Authors' Contact Details
[chapter]
2007
IFLA Publications Series
Sometimes there will be an opportunity to explain to the children how a particular problem applies to the real world, but often it will suffice for children to see the elegance of a solution, or appreciate ...
The key concept here is the mapping of controls to their results in the real world. ...
Secret codes.
Summary Encryption is the key to information security. ...
doi:10.1515/9783598440250.13
fatcat:ny57dig4ifejtinrxztoszyebu
AUTHOR'S CONTACT DETAILS
[chapter]
2008
IFLA Publications Series
Sometimes there will be an opportunity to explain to the children how a particular problem applies to the real world, but often it will suffice for children to see the elegance of a solution, or appreciate ...
The key concept here is the mapping of controls to their results in the real world. ...
Secret codes.
Summary Encryption is the key to information security. ...
doi:10.1515/9783598441257.13
fatcat:ggrwkqdhljc7ddcn7flsnrpbfm
LIPIcs, Volume 188, TYPES 2020, Complete Volume
[article]
2021
search process that, if not completed, does not fail to apply bottom-up an inference rule, so it may be an infinite object); (ii) two typed λ-calculi are developed for the effect, one being obtained by ...
Acknowledgements We thank Enrico Tassi for his help with Coq-Elpi. His comments and those of the anonymous reviewers on an early draft of this paper have also been very helpful. ...
ready to define the true construction of inductive types El : Code → U i . ...
doi:10.4230/lipics.types.2020
fatcat:qlbs2felejcvrfgqts3g7iyaqy
Certificates for Incremental Type Checking
2013
A type checking algorithm takes a program or a proof, represented as a syntactical object, and checks its validity with respect to a specification or a statement. ...
Coq. ...
the type world. ...
doi:10.6092/unibo/amsdottorato/5870
fatcat:ewdczk4eufeutmuokihe6uyoy4
Dagstuhl Reports, Volume 8, Issue 5, May 2018, Complete Issue
[article]
2019
Inter-Vehicular Communication Towards Cooperative Driving Jhala where a restricted computational model is shown to be sufficient to verify correctness assertions for several distributed problems. ...
I will discuss work on layering analysis for consensus, generalizations to other problems using topology [1], and iterated models together with recursive distributed algorithms [3, 4] . ...
Our work uses the hs-to-coq tool to translate the source code of GHC from Haskell into Gallina, the language of the Coq proof assistant, taking advantage of the similarity between the languages. ...
doi:10.4230/dagrep.8.5
fatcat:ox2bnkgkxvaptog2okwownej3m
LIPIcs, Volume 97, TYPES'16, Complete Volume
[article]
2018
Acknowledgements Thanks go to Sergei Soloviev for extremely helpful remarks on this work during his visit to Royal Holloway and the anonymous referees for their helpful comments. ...
Acknowledgements We would like to thank the referees for their invaluable suggestions and detailed comments. ...
Formally verifying the 1900 lines of the nucleus code is still a tall order to handle, and at present we have no plans to do it. ...
doi:10.4230/lipics.types.2016
fatcat:abicdkmgbzebpkjwhrunsgjjim
Engineering with logic: Rigorous test-oracle specification and validation for TCP/IP and the Sockets API
2019
This paper reports on work done in the \emph{Netsem} project to develop lightweight mathematically rigorous techniques that can be applied to such systems: to specify their behaviour precisely (but loosely ...
means for an implementation to be correct. ...
thousand real-world traces chosen to cover a wide range of their behaviour. ...
doi:10.17863/cam.34900
fatcat:uucsze7tcrdg5ohrbdxqlnr34y
Variations on a theme of Curry and Howard : the Curry-Howard isomorphism and the proofs-as-programs paradigm adapted to imperative and structured program synthesis
2017
Parts III and IV of this thesis are an applications of the protocol, and can be seen as a further argument for the separation of proofs from programs, to achieve a practical approaches to constructive ...
The idea of separating proofs is essential to the Curry-Howard protocol, identified by Crossley and the author in [PC01], and described in Part II of this thesis. ...
(V-E) on (2.55), setting v to /s£(extract| nt (a)), then apply (V-E), setting x u
to snd(extract| nt (a)), and then apply (=£-E) on the result, instantiating with (2.56):
1 2
: (2.55)
(V-E)
: ...
doi:10.4225/03/59c9fe4995db8
fatcat:xtbydkjgrrb2xh6n75nvery7ka