Academic interests:
- formal methods and mathematical logic,
- higher-order logic and dependent type theory,
- separation logic,
- dynamic logic,
- operational, denotational, axiomatic semantics of programming languages;
- weakest precondition / strongest postcondition calculi,
- program correctness (Hoare’s logic and Reynolds’ logic),
- interactive, automated and distributed theorem proving,
- formal foundations of object-oriented programming languages,
- formal models of novel Internet protocols and operating system APIs,
- real-world Java and Rust software verification.
Other interests: foundations of mathematics, proof theory, set theory, computability, cluster and grid computing, operating systems, computer networking, Java and Java virtual machines, reverse engineering, cyber security, distributed and concurrent algorithms, formal languages also beyond context-free grammars, Web technologies, accessibility, interoperability and extensibility, formal methods in graphical user interfaces (GUIs) and electronic design automation (EDA), and—in general—anything related to computer hacking.
Supporter of Open Science and Open Education.
In 2024, Hans-Dieter A. Hiep finished a Ph.D. program in Computer Science at Leiden University, Leiden Institute of Advanced Computer Science (LIACS) and Centrum Wiskunde & Informatica (CWI). In 2018, he finished a Master program in Computer Science joint-degree at the Vrije Universiteit and Universiteit van Amsterdam (VU/UvA), specialising in foundations of computing and concurrency. In 2016, he finished a Bachelor program in Computer Science also at the Vrije Universiteit.
1 Personal details
- Full name
- Hans-Dieter Anton Hiep
- Birth date and place
- 21 March 1991, Hoorn, North-Holland, the Netherlands
- Work e-mail address
- h.a.hiep at acm dot org
- Personal e-mail address
- hdh at drheap dot nl
- Fingerprint
- CDB1 EE57 CE1E 483A 3AD3 8F2C 056F F4CC C2A9 1ED2
2 Teaching
- Concepts of Programming Languages
- Lecturer, Leiden University, 2021, 2022, 2023 (see on-line lectures)
- Program Correctness
- Lecturer, Leiden University, 2020, 2021, 2022, 2023, 2024 (see on-line lectures)
- Interactive Theorem Prover Project 2
- Project supervision, LUdev, Leiden University, 2022
- Interactive Theorem Prover Project 1
- Project supervision, LUdev, Leiden University, 2021
- Distributed Algorithms Visualization Tool
- Project supervision, Individual Systems Project, Vrije Universiteit Amsterdam, 2020
- Program Correctness
- Teaching assistant, Leiden University, 2019
- Concurrency & Multi-threading
- Student assistant, Vrije Universiteit Amsterdam, 2017, 2018
- Equational programming
- Student assistant, Vrije Universiteit Amsterdam, 2017
- Logic & sets
- Student assistant, Vrije Universiteit Amsterdam, 2013
- Logic & modelling
- Student assistant, Vrije Universiteit Amsterdam, 2013
3 Thesis supervision
3.1 PhD students
- Jinting Bian
- Daily supervisor, Reasoning About Object-oriented Programs: From Classes to Interfaces, Leiden University (LIACS), Leiden, 2024
3.2 Master students
- Olaf Maathuis
- Collaborator, Verifying OpenJDK’s LinkedList using KeY, Open Universiteit (OU), Heerlen, 2020
3.3 Bachelor students
- Daniel Roos
- Daily supervisor, Visualisation of Distributed Algorithms Executions: Improving the DaViz Tool, Vrije Universiteit (VU), Amsterdam, 2022
- Oualid Azzeggarh
- Daily supervisor, A Concurrent Visual Programming Language, Leiden University (LIACS), Leiden, 2023
- Andy Tatman
-
Daily supervisor, Formal Specification and Analysis of OpenJDK’s BitSet Class, Leiden University (LIACS), Leiden, 2023
Note - Zahir Bingen
- Daily supervisor, Verification of Combinational and Sequential Circuits in LEAN3, Leiden University (LIACS), Leiden, 2023
Internships
- Lazlo de Wijs
- Daily supervisor, Betrokkenheid in een flipped classroom: het vergroten van betrokkenheid bij het kijken van asynchrone online hoorcolleges, Hogeschool van Amsterdam (HvA), Amsterdam, 2022
4 Research projects
- Verified Reowolf
-
Principal investigator, funded by NGI ASSURE (est. €50k budget)
We research and develop a mathematical formalism, using the state-of-the-art theorem prover Coq, for the verification of properties of protocols specified in Protocol Description Language (PDL) that identify precisely under what conditions important properties, such as network integrity and service availability, remain to hold or when they break.
- Reowolf 2
-
Principal investigator, funded by NGI POINTER (est. €200k budget)
Reowolf replaces the decades-old BSD-style socket for Internet communication: offering an innovative, programmable and interoperable connector API at the system-level to support the separation of concerns between privacy and performance optimization.
- Reowolf
-
Principal investigator, funded by NGI ZERO (est. €50k budget)
The Reowolf project aims to provide connectors as a generalization of BSD-sockets for multi-party communication over the Internet.
5 Publications
Published articles / reports:
- History-Based Reasoning About Behavioral Subtyping, Jinting Bian, Hans-Dieter Hiep, Frank de Boer (conference: ICTAC2024)
Analysis and formal specification of OpenJDK’s BitSet: Proof files, Andy Tatman, Hans-Dieter Hiep, Stijn de Gouw (journal: SCP)
Footprint Logic for Object-Oriented Components (extended paper), Frank de Boer, Stijn de Gouw, Hans-Dieter Hiep, Jinting Bian (journal: FAC)
Formal Specification and Analysis of OpenJDK’s BitSet Class, Andy Tatman, Hans-Dieter Hiep, Stijn de Gouw (conference: iFM2023)
The Logic of Separation Logic: Models and Proofs, Frank de Boer, Hans-Dieter Hiep, Stijn de Gouw (conference: TABLEAUX2023)
Dynamic Separation Logic, Frank de Boer, Hans-Dieter Hiep, Stijn de Gouw (conference: MFPS2023)
Integrating ADTs in KeY and their application to History-Based Reasoning about Collection, Jinting Bian, Hans-Dieter Hiep, Frank de Boer, Stijn de Gouw (journal: FMSD)
Footprint Logic for Object-Oriented Components, Frank de Boer, Stijn de Gouw, Hans-Dieter Hiep, Jinting Bian (conference: FACS2022)
Verifying OpenJDK’s LinkedList using KeY (extended paper), Hans-Dieter Hiep, Olaf Maathuis, Jinting Bian, Frank de Boer, Stijn de Gouw (journal: STTT)
Integrating ADTs in KeY and their application to History-Based Reasoning, Jinting Bian, Hans-Dieter Hiep, Frank de Boer, Stijn de Gouw (conference: FM2021)
Completeness and Complexity of Reasoning about Call-by-Value in Hoare Logic, Frank de Boer, Hans-Dieter Hiep (journal: TOPLAS)
A Tutorial on Verifying LinkedList Using KeY, Hans-Dieter Hiep, Jinting Bian, Frank de Boer, Stijn de Gouw (chapter in Deductive Software Verification: Future Perspectives)
History-Based Specification and Verification of Java Collections in KeY, Hans-Dieter Hiep, Jinting Bian, Frank de Boer, Stijn de Gouw (conference: iFM2020)
History-based specification and verification of Java collections in KeY (keynote), Frank de Boer, Hans-Dieter Hiep (workshop: FTfJP2020)
Reowolf: Synchronous Multi-party Communication over the Internet, Christopher Esterhuyse; Hans-Dieter Hiep (conference: FACS2019)
Verifying OpenJDK’s LinkedList using KeY, Hans-Dieter Hiep, Olaf Maathuis, Jinting Bian, Frank de Boer, Stijn de Gouw (conference: TACAS2020)
Reowolf 1.0: Project Documentation, Christopher Esterhuyse, Hans-Dieter Hiep, Technical Report, CWI
Axiomatic Characterization of Trace Reachability for Concurrent Objects, Frank de Boer, Hans-Dieter Hiep (conference: iFM2019)
See also this ORCiD page for a list of publications.
Unpublished manuscripts:
- TMP: Time Modulation Protocol, Dalia Papuc, Benjamin Lion, Hans-Dieter Hiep (preprint)
- Compositional Linearizations of Transactional Behavior, Kasper Dokter, Benjamin Lion, Hans-Dieter Hiep
- Reowolf: Executable, Compositional, Synchronous Protocol Specifications, Christopher Esterhuyse, Benjamin Lion, Hans-Dieter Hiep, Farhad Arbab (preprint)
6 Talks / conferences / workshops
2025
- Attended CATRIN Workhop, Waag Futurelab, Amsterdam, The Netherlands
Is Separation Logic complete?, Leiden Institute of Advanced Computer Science (LIACS), Theory Group, Leiden, The Netherlands
- Attended Heyting Day 2025, Royal Netherlands Academy of Arts and Sciences (KNAW), Amsterdam, The Netherlands
- Attended FOSDEM 2025, Vrije Universiteit Brussels, Brussels, Belgium
2024
Is Separation Logic complete?, TU Darmstadt, Software Engineering group, Darmstadt, Germany
New Foundations for Separation Logic, Open University, virtual
New Foundations for Separation Logic, Big Specification: Specification, Proof, and Testing at Scale, Cambridge, United Kingdom (YouTube)
New Foundations for Separation Logic (Tech Talk), Amazon Web Services, Automated Reasoning Group, virtual
2023
New Foundations for Separation Logic, Karlsruhe Institute for Technology, Application-oriented Formal Verification group, Karlsruhe, Germany
New Foundations for Separation Logic, RWTH Aachen, Software Modeling and Verification group, Aachen, Germany
New Foundations for Separation Logic, IPA Fall Days, Zeewolde, The Netherlands
The Logic of Separation Logic: Models and Proofs, 32nd International Conference on Automated Reasoning with Analytic Tableaux and Related Methods (TABLEAUX 2023), Prague, Czech Republic
Dynamic Separation Logic, KeY Symposium 2023, Bergen, Norway
Dynamic Separation Logic, 39th Conference on Mathematical Foundations of Programming Semantics, Bloomington, Indiana, USA
Separation Logic in the Light of Substitutions, Universiteit Twente, Formal Methods and Tools group, Enschede, The Netherlands
Separation Logic in the Light of Substitutions, Radboud University, Software Science Seminar, Nijmegen, The Netherlands
Separation Logic in the Light of Substitutions, University of Groningen, Fundamental Computing group, Groningen, The Netherlands (tweet)
2022
A Theory of Substitutions for Separation Logic, Leiden Institute of Advanced Computer Science (LIACS), Theory Group, Leiden, The Netherlands
A Theory of Substitutions for Separation Logic, New challenges in programming language semantics, Lorentz Center, Leiden, The Netherlands
Footprint Logic for Object-Oriented Components, 18th International Conference on Formal Aspects of Component Software, virtual
TMP: Time Modulation Protocol, HotRFC Lightning Talks at IETF-115, London, United Kingdom (slides)
Logic in Computer Science: A Short Introduction to Program Correctness, Dutch Association for Logic and Philosophy of the Exact Sciences (VvL) and Dutch Research School of Philosophy (OZWS), Utrecht, The Netherlands
Completeness and Complexity of Reasoning about Call-by-Value in Hoare Logic, Leiden Institute of Advanced Computer Science (LIACS), Theory Group, Leiden, The Netherlands
2021
Reasoning about call-by-value recursive procedures in Hoare logic, Amsterdam Coordination Group (ACG), Amsterdam, The Netherlands
Reasoning about ADTs in KeY, The KeYnote Series, virtual
History-based Specification and Verification of Java Collections in KeY (extended talk), University of Twente, Formal Methods and Tools Group, virtual
2020
History-based Specification and Verification of Java Collections in KeY (invited presentation), Formal Techniques for Java-like Programs (FTfJP), European Conference on Object-Oriented Programming (ECOOP), virtual
History-based Specification and Verification of Java Collections in KeY, 16th International Conference on integrated Formal Methods (iFM2020), virtual (back-up video)
History-based Specification and Verification of Java Collections in KeY, Amsterdam Coordination Group (ACG), Amsterdam, The Netherlands
2019
Verifying OpenJDK’s LinkedList using KeY, KeY Symposium 2019, Manigod, France
Axiomatic Characterization of Trace Reachability for Concurrent Objects, 15th International Conference on integrated Formal Methods (iFM2019), Bergen, Norway
Axiomatic Characterization of Trace Reachability for Concurrent Objects (preliminary version), Third International Workshop on the ABS Modeling Language and Tools, Amsterdam, The Netherlands
Verifying OpenJDK’s LinkedList using KeY, IPA Fall Days, Wageningen, The Netherlands
Verifying OpenJDK’s LinkedList using KeY, University of Twente, Formal Methods and Tools Group, Enschede, The Netherlands
- Attended Lean Together 2019, Amsterdam, The Netherlands
- Attended TeReSe 2019, Amsterdam, The Netherlands
2018
Short Pitch: Formal Languages versus Formal Protocols, Dutch National Symposium Software Engineering (SEN), Amsterdam, The Netherlands
Yet Another Reo Semantics: Reasoning about Speculative Execution, Amsterdam Coordination Group (ACG), Amsterdam, The Netherlands
Partially Commutative Monoids and Computational Content of Classical Logic, Amsterdam Coordination Group (ACG), Amsterdam, The Netherlands
- Participated in 1st International HacKeYthon 2018, Karlsruhe, Germany
2017
- Attended 9th International School on Rewriting (ISR2017), Eindhoven, The Netherlands
7 Professional committees / activities
Journal reviewing:
- 1x Reviewer for International Journal on Software and Systems Modeling (SoSyM)
- 1x Reviewer for Science of Computer Programming (SCP)
Conference reviewing:
- Reviewer (FM 2024)
- Reviewer (IJCAR 2024)
- Reviewer (FASE 2024)
- Reviewer (AOL 2023)
- Reviewer (FASE 2022)
- Reviewer (SEFM 2021)
Software artifact reviewing:
- Member of Artifact Evaluation Committee (OOPSLA 2024)
- Member of Artifact Evaluation Committee (ICFP 2023)
- Member of Artifact Evaluation Committee (POPL 2023)
- Member of Artifact Evaluation Committee (TACAS 2021)
Additional activities:
- Publicity Chair (ICTAC 2024)
- Scenario Writer (ISIDOOR 4)
- Co-chair Education Committee Bachelor Computer Science (Leiden University 2022–2023)
- Technical Advisor (Aanvulling Toetskingskader Digitaliseringswetgeving, Afdeling Advisering, Raad van State, 2021)
- Member of Organising Committee (SEFM 2020)
- Member of Website Taskforce (CONCUR 2019)
8 Professional memberships
- Association for Automated Reasoning (AAR)
- Formal Methods Europe (FME)
- Dutch Association for Logic and Philosophy of the Exact Sciences (VvL)
- VEReniging Software Engineering Nederland (VERSEN)
- ACademic Cyber Security Society (ACCSS)
- Usable Formal Methods Research Group (UFMRG) of the Internet Research Task Force (IRTF)
- Association for Computing Machinery (ACM)
- The Proof Society
- Stichting Tegen Hackbare Verkiezingen (secretary of the board: October 2023 — present)
9 Awards
- The 2023 G. Rozenberg Research Award by the Leiden Institute of Advanced Computer Science (LIACS)
- Google 1337 US$ prize: bug bounty for discovering issue in LinkedList
10 In the media
- Programming problem patched: Leiden PhD candidate discovers breakthrough in software security, Leiden University, May 27th, 2024
- Google beloont Nederlandse ontdekkers van gevaarlijke Java-bug, AGconnect, July 13th, 2023 (Dutch)
- Google award for discovering bug in Java library, CWI, July 6th, 2023
- New research project makes the internet even better, Leiden University, April 20th, 2022
- CWI works on Next Generation Internet, CWI, September 14th, 2020
- Grant for CWI to improve Next Generation Internet, CWI, July 25th, 2019
11 Employment / professional experience
- January 2025 – present
- Technology assessor / project manager, NLnet, Amsterdam, The Netherlands
- July 2024 – December 2024
- Applied scientist, Amazon Web Services (AWS), Automated Reasoning Group, Cambridge, United Kingdom
- November 2023 – June 2024
- Postdoctoral researcher, Leiden University, Leiden Institute of Advanced Computer Science (LIACS), Theory group, Leiden, The Netherlands
- November 2020 – October 2023
- Doctoral researcher, Leiden University, Leiden Institute of Advanced Computer Science (LIACS), Theory group, Leiden, The Netherlands
- November 2018 – October 2020
- Doctoral researcher, Centrum Wiskunde & Informatica, Computer Security group, Amsterdam, The Netherlands
- December 2017 – October 2018
- Internship, Centrum Wiskunde & Informatica, Formal Methods group, Amsterdam, The Netherlands
- 2017
- Internship, Stichting Bèma, Amsterdam, The Netherlands
- 2017
- IT consultant, Custommate B.V., Werkendam, The Netherlands
- 2016–2017
- Programmer, Inktweb B.V., Alkmaar, The Netherlands
- 2016
- IT consultant, Total Medical Solutions B.V., Dordrecht, The Netherlands
- 2015–2018
- IT recruiter, Gong Reflections B.V., Amsterdam, The Netherlands
- 2015–2017
- Co-founder, HyperReuts, Amstelveen, The Netherlands
- 2014
- Programmer, Social Shop B.V., Amsterdam, The Netherlands
- 2013–2015
- Co-founder, AEXIZ, Hilversum, The Netherlands
- 2013
- Collaborator, WEEVR, Amsterdam, The Netherlands
- 2012
- Programmer, Social Shop B.V., Amsterdam, The Netherlands
- 2011–2012
- Co-founder, J.P.H. Media, Alkmaar, The Netherlands
- 2010
- Programmer, Cillix B.V., Leiden, The Netherlands
- 2008–2009
- Programmer, Admicom, Hoorn, The Netherlands
12 Education / qualifications
- November 2024
- University Teaching Qualification (UTQ) / Basiskwalificatie Onderwijs (BKO), Leiden University
- November 2018 – May 2024
- Doctor of Philosophy (PhD) degree in Computer Science, Leiden University, Factulty of Science, Leiden Institute of Advanced Computer Science (LIACS)
Thesis: New Foundations for Separation Logic
Promotor: prof.dr. Frank S. de Boer
Co-promotores: dr. Stijn de Gouw, dr. Alfons Laarman
Graduated: cum laude
- September 2016 – October 2018
- Joint UvA-VU Master of Science (MSc) degree in Computer Science, University of Amsterdam (UvA) and Vrije Universiteit Amsterdam (VU), Faculty of Science, Department of Computer Science
Track: Foundations of Computing and Concurrency
Thesis: A Reo Semantics for Reasoning about Speculative Execution
Thesis supervisors: dr. Jasmin Blanchette, prof.dr. Farhad Arbab
Graduated: cum laude
- September 2012 – August 2016
- Bachelor of Science (BSc) degree in Computer Science, Vrije Universiteit Amsterdam (VU), Faculty of Science, Department of Computer Science
Minor: Deep Programming
Thesis: Alternative Connectives for Classical Propositional Logic
Thesis supervisors: dr. Femke van Raamsdonk, dr. Clemens Grabmayer
Graduated: cum laude
- September 2011 – August 2012
-
Bachelor Econometrics and Operations Research, University of Amsterdam (UvA), Faculty of Economics and Business, Amsterdam School of Economics
Not graduated - September 2010 – August 2011
-
Double bachelor Computer Science & Mathematics, Leiden University, Factulty of Science, Leiden Institute of Advanced Computer Science (LIACS)
Not graduated - 2003 – 2010
- Voorbereidend wetenschappelijk onderwijs (VWO), Rooms-Katholieke Scholengemeenschap Tabor, Werenfridus, Hoorn