Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1007/978-3-642-39634-2_10guideproceedingsArticle/Chapter ViewAbstractPublication PagesConference Proceedingsacm-pubtype
Article

Data refinement in Isabelle/HOL

Published: 22 July 2013 Publication History

Abstract

The paper shows how the code generator of Isabelle/HOL supports data refinement, i.e., providing efficient code for operations on abstract types, e.g., sets or numbers. This allows all tools that employ code generation, e.g., Quickcheck or proof by evaluation, to compute with these abstract types. At the core is an extension of the code generator to deal with data type invariants. In order to automate the process of setting up specific data refinements, two packages for transferring definitions and theorems between types are exploited.

References

[1]
Bertot, Y., Castéran, P.: Interactive Theorem Proving and Program Development. Springer (2004).
[2]
Blanchette, J.C., Bulwahn, L., Nipkow, T.: Automatic Proof and Disproof in Isabelle/ HOL. In: Tinelli, C., Sofronie-Stokkermans, V. (eds.) FroCoS 2011. LNCS, vol. 6989, pp. 12-27. Springer, Heidelberg (2011).
[3]
Filliâtre, J.-C., Letouzey, P.: Functors for Proofs and Programs. In: Schmidt, D. (ed.) ESOP 2004. LNCS, vol. 2986, pp. 370-384. Springer, Heidelberg (2004).
[4]
Greve, D., Kaufmann, M., Manolios, P., Moore, J., Ray, S., Ruiz-Reina, J., Sumners, R., Vroon, D., Wilding, M.: Efficient execution in an automated reasoning environment. J. Functional Programming 18, 15-46 (2008).
[5]
Haftmann, F., Nipkow, T.: Code Generation via Higher-Order Rewrite Systems. In: Blume, M., Kobayashi, N., Vidal, G. (eds.) FLOPS 2010. LNCS, vol. 6009, pp. 103-117. Springer, Heidelberg (2010).
[6]
He, J., Hoare, C.A.R., Sanders, J.W.: Data refinement refined. In: Robinet, B., Wilhelm, R. (eds.) ESOP 1986. LNCS, vol. 213, pp. 187-196. Springer, Heidelberg (1986).
[7]
Hoare, C.A.R.: Proof of Correctness of Data Representations. Acta Informatica 1, 271-281 (1972).
[8]
Huffman, B., Kunčar, O.: Lifting and Transfer: A Modular Design for Quotients in Isabelle/HOL. Presented at the Isabelle Users Workshop at ITP 2012 (2012), http://www21.in.tum.de/~kuncar/huffman-kuncar-itp2012.pdf
[9]
Jones, C.B.: Software Development. A Rigourous Approach. Prentice Hall (1980).
[10]
Kaliszyk, C., Urban, C.: Quotients revisited for Isabelle/HOL. In: Chu, W.C., Wong, W.E., Palakal, M.J., Hung, C.-C. (eds.) Proc. of the 26th ACM Symposium on Applied Computing (SAC 2011), pp. 1639-1644. ACM (2011).
[11]
Kaufmann, M., Manolios, P., More, J.S.: Computer-Aided Reasoning: ACL2 Case Studies. Kluwer Academic Publishers (2000).
[12]
Lammich, P.: Automatic data refinement. In: Blazy, S., Paulin-Mohring, C., Pichardie, D. (eds.) ITP 2013. LNCS, vol. 7998, pp. 84-99. Springer, Heidelberg (2013).
[13]
Lochbihler, A.: Light-weight containers for Isabelle: efficient, extensible and nestable. In: Blazy, S., Paulin-Mohring, C., Pichardie, D. (eds.) ITP 2013. LNCS, vol. 7998, pp. 116-132. Springer, Heidelberg (2013).
[14]
Lochbihler, A., Bulwahn, L.: Animating the Formalised Semantics of a Java-like Language. In: van Eekelen, M., Geuvers, H., Schmaltz, J., Wiedijk, F. (eds.) ITP 2011. LNCS, vol. 6898, pp. 216-232. Springer, Heidelberg (2011).
[15]
Nipkow, T.: Non-Deterministic Data Types: Models and Implementations. Acta Informatica 22, 629-661 (1986).
[16]
Nipkow, T.: Are Homomorphisms Sufficient for Behavioural Implementations of Deterministic and Nondeterministic Data Types? In: Brandenburg, F.J., Vidal-Naquet, G., Wirsing, M. (eds.) STACS 1987. LNCS, vol. 247, pp. 260-271. Springer, Heidelberg (1987).
[17]
Nipkow, T., Paulson, L.C., Wenzel, M.T.: Isabelle/HOL. LNCS, vol. 2283. Springer, Heidelberg (2002).
[18]
Reif, W., Schellhorn, G., Stenzel, K.: Interactive Correctness Proofs for Software Modules Using KIV. In: COMPASS 1995: Proc. Tenth Annual Conf. Computer Assurance, pp. 151-162. IEEE (1995).
[19]
Traytel, D., Nipkow, T.: A Verified Decision Procedure for MSO on Words (2013), http://www.in.tum.de/~nipkow/pubs

Cited By

View all
  • (2024)UTC Time, Formally VerifiedProceedings of the 13th ACM SIGPLAN International Conference on Certified Programs and Proofs10.1145/3636501.3636958(2-13)Online publication date: 9-Jan-2024
  • (2022)Traits: Correctness-by-Construction for FreeFormal Techniques for Distributed Objects, Components, and Systems10.1007/978-3-031-08679-3_9(131-150)Online publication date: 13-Jun-2022
  • (2021)A Verified Decision Procedure for Orders in Isabelle/HOLAutomated Technology for Verification and Analysis10.1007/978-3-030-88885-5_9(127-143)Online publication date: 18-Oct-2021
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image Guide Proceedings
ITP'13: Proceedings of the 4th international conference on Interactive Theorem Proving
July 2013
497 pages
ISBN:9783642396335
  • Editors:
  • Sandrine Blazy,
  • Christine Paulin-Mohring,
  • David Pichardie

Sponsors

  • REGIONB: Region Bretagne
  • University of Rennes 1: University of Rennes 1
  • INRIA: Institut Natl de Recherche en Info et en Automatique
  • SISC: SISCom Bretagne
  • RENNESM: Rennes Metropole

Publisher

Springer-Verlag

Berlin, Heidelberg

Publication History

Published: 22 July 2013

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 12 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2024)UTC Time, Formally VerifiedProceedings of the 13th ACM SIGPLAN International Conference on Certified Programs and Proofs10.1145/3636501.3636958(2-13)Online publication date: 9-Jan-2024
  • (2022)Traits: Correctness-by-Construction for FreeFormal Techniques for Distributed Objects, Components, and Systems10.1007/978-3-031-08679-3_9(131-150)Online publication date: 13-Jun-2022
  • (2021)A Verified Decision Procedure for Orders in Isabelle/HOLAutomated Technology for Verification and Analysis10.1007/978-3-030-88885-5_9(127-143)Online publication date: 18-Oct-2021
  • (2019)Automatic Refinement to Efficient Data StructuresJournal of Automated Reasoning10.1007/s10817-018-9461-963:1(53-94)Online publication date: 1-Jun-2019
  • (2018)Equivalences for free: univalent parametricity for effective transportProceedings of the ACM on Programming Languages10.1145/32367872:ICFP(1-29)Online publication date: 30-Jul-2018
  • (2018)A Verified ODE Solver and the Lorenz AttractorJournal of Automated Reasoning10.1007/s10817-017-9448-y61:1-4(73-111)Online publication date: 1-Jun-2018
  • (2016)A Formally Verified Checker of the Safe Distance Traffic Rules for Autonomous VehiclesProceedings of the 8th International Symposium on NASA Formal Methods - Volume 969010.1007/978-3-319-40648-0_14(175-190)Online publication date: 7-Jun-2016
  • (2014)Formally Verified Computation of Enclosures of Solutions of Ordinary Differential EquationsProceedings of the 6th International Symposium on NASA Formal Methods - Volume 843010.1007/978-3-319-06200-6_9(113-127)Online publication date: 29-Apr-2014
  • (2013)Verified decision procedures for MSO on words based on derivatives of regular expressionsACM SIGPLAN Notices10.1145/2544174.250061248:9(3-12)Online publication date: 25-Sep-2013
  • (2013)Verified decision procedures for MSO on words based on derivatives of regular expressionsProceedings of the 18th ACM SIGPLAN international conference on Functional programming10.1145/2500365.2500612(3-12)Online publication date: 25-Sep-2013
  • Show More Cited By

View Options

View options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media