Isabelle/DOF: Design and Implementation

  • Achim D. BruckerEmail author
  • Burkhart Wolff
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11724)


DOF is a novel framework for defining ontologies and enforcing them during document development and document evolution. A major goal of DOF is the integrated development of formal certification documents (e. g., for Common Criteria or CENELEC 50128) that require consistency across both formal and informal arguments.

To support a consistent development of formal and informal parts of a document, we provide Isabelle/DOF, an implementation of DOF on top of Isabelle/HOL. Isabelle/DOF is integrated into Isabelle’s IDE, which allows for smooth ontology development as well as immediate ontological feedback during the editing of a document.

In this paper, we give an in-depth presentation of the design concepts of DOF’s Ontology Definition Language (ODL) and key aspects of the technology of its implementation. Isabelle/DOF is the first ontology language supporting machine-checked links between the formal and informal parts in an LCF-style interactive theorem proving environment.

Sufficiently annotated, large documents can easily be developed collaboratively, while ensuring their consistency, and the impact of changes (in the formal and the semi-formal content) is tracked automatically.


Ontology Formal document development Certification DOF Isabelle/DOF 



This work has been partially supported by IRT SystemX, Paris-Saclay, France, and therefore granted with public funds of the Program “Investissements d’Avenir”.


  1. 1.
  2. 2.
    The neon toolkit (2018).
  3. 3.
  4. 4.
    Owlgred (2018).
  5. 5.
  6. 6.
    Archive of formal proofs (2019).
  7. 7.
    Ibm engineering requirements management doors family (2019).
  8. 8.
    Jupyter (2019).
  9. 9.
    Abrial, J.-R.: Steam-boiler control specification problem. In: Abrial, J.-R., Börger, E., Langmaack, H. (eds.) Formal Methods for Industrial Applications. LNCS, vol. 1165, pp. 500–509. Springer, Heidelberg (1996). Scholar
  10. 10.
    Barras, B., et al.: Pervasive parallelism in highly-trustable interactive theorem proving systems. In: Carette, J., Aspinall, D., Lange, C., Sojka, P., Windsteiger, W. (eds.) CICM 2013. LNCS (LNAI), vol. 7961, pp. 359–363. Springer, Heidelberg (2013). Scholar
  11. 11.
    Blanchette, J.C., Haslbeck, M., Matichuk, D., Nipkow, T.: Mining the archive of formal proofs. In: Kerber, M., Carette, J., Kaliszyk, C., Rabe, F., Sorge, V. (eds.) CICM 2015. LNCS (LNAI), vol. 9150, pp. 3–17. Springer, Cham (2015). Scholar
  12. 12.
    Brucker, A.D., Ait-Sadoune, I., Crisafulli, P., Wolff, B.: Using the isabelle ontology framework. In: Rabe, F., Farmer, W.M., Passmore, G.O., Youssef, A. (eds.) CICM 2018. LNCS (LNAI), vol. 11006, pp. 23–38. Springer, Cham (2018). Scholar
  13. 13.
    Brucker, A.D., Brügger, L., Wolff, B.: Formal network models and their application to firewall policies. Archive of Formal Proofs (2017).
  14. 14.
    Brucker, A.D., Herzberg, M.: The Core DOM. Archive of Formal Proofs (2018).
  15. 15.
    Brucker, A.D., Tuong, F., Wolff, B.: Featherweight OCL: a proposal for a machine-checked formal semantics for OCL 2.5. Archive of Formal Proofs (2014).
  16. 16.
    BS EN 50128:2011: Bs en 50128:2011: Railway applications - communication, signalling and processing systems - software for railway control and protecting systems. Standard, Britisch Standards Institute (BSI) (2014)Google Scholar
  17. 17.
    Common Criteria: Common criteria for information technology security evaluation (version 3.1), Part 3: Security assurance components (2006)Google Scholar
  18. 18.
    Faithfull, A., Bengtson, J., Tassi, E., Tankink, C.: Coqoon - an IDE for interactiveproof development in coq. STTT 20(2), 125–137 (2018). Scholar
  19. 19.
    Groza, T., Handschuh, S., Möller, K., Decker, S.: SALT - semantically annotated LaTeX for scientific publications. In: Franconi, E., Kifer, M., May, W. (eds.) ESWC 2007. LNCS, vol. 4519, pp. 518–532. Springer, Heidelberg (2007). Scholar
  20. 20.
    Hou, Z., Sanan, D., Tiu, A., Liu, Y.: A formal model for the SPARCv8 ISA and a proof of non-interference for the LEON3 processor. Archive of Formal Proofs (2016).
  21. 21.
    Hupel, L., Zhang, Y.: CakeML. Archive of Formal Proofs (2018).
  22. 22.
    Klein, G., et al.: Comprehensive formal verification of an OS microkernel. ACM Trans. Comput. Syst. 32(1), 2:1–2:70 (2014). Scholar
  23. 23.
    Nipkow, T.: Functional automata. Archive of Formal Proofs (2004). Formal proof development
  24. 24.
    Nipkow, T.: Splay tree. Archive of Formal Proofs (2014). Formal proof development
  25. 25.
    Nipkow, T., Wenzel, M., Paulson, L.C. (eds.): Isabelle/HOL. LNCS, vol. 2283. Springer, Heidelberg (2002). Scholar
  26. 26.
    Sprenger, C., Somaini, I.: Developing security protocols by refinement. Archive of Formal Proofs (2017). Formal proof development
  27. 27.
    Verbeek, F., et al.: Formal specification of a generic separation kernel. Archive of Formal Proofs (2014). Formal proof development
  28. 28.
    Wenzel, M.: Asynchronous user interaction and tool integration in Isabelle/PIDE. In: Klein, G., Gamboa, R. (eds.) ITP 2014. LNCS, vol. 8558, pp. 515–530. Springer, Cham (2014). Scholar
  29. 29.
    Wenzel, M.: System description: Isabelle/jEdit in 2014. In: Proceedings Eleventh Workshop on User Interfaces for Theorem Provers, UITP 2014, Vienna, Austria, 17th July 2014, pp. 84–94 (2014). Scholar
  30. 30.
    Wenzel, M.: The Isabelle/Isar Reference Manual (2017). Part of the Isabelle distributionGoogle Scholar

Copyright information

© Springer Nature Switzerland AG 2019

Authors and Affiliations

  1. 1.Department of Computer ScienceUniversity of ExeterExeterUK
  2. 2.LRI, CNRS, Université Paris-SaclayParisFrance

Personalised recommendations