Formalizing the LLVM intermediate representation for verified program transformations

J Zhao, S Nagarakatte, MMK Martin… - Proceedings of the 39th …, 2012 - dl.acm.org
This paper presents Vellvm (verified LLVM), a framework for reasoning about programs
expressed in LLVM's intermediate representation and transformations that operate on it …

QED at large: A survey of engineering of formally verified software

T Ringer, K Palmskog, I Sergey… - … and Trends® in …, 2019 - nowpublishers.com
Abstract Development of formal proofs of correctness of programs can increase actual and
perceived reliability and facilitate better understanding of program specifications and their …

Refinement types for secure implementations

J Bengtson, K Bhargavan, C Fournet… - ACM Transactions on …, 2011 - dl.acm.org
We present the design and implementation of a typechecker for verifying security properties
of the source code of cryptographic protocols and access control mechanisms. The …

Parametric higher-order abstract syntax for mechanized semantics

A Chlipala - Proceedings of the 13th ACM SIGPLAN international …, 2008 - dl.acm.org
We present parametric higher-order abstract syntax (PHOAS), a new approach to
formalizing the syntax of programming languages in computer proof assistants based on …

The locally nameless representation

A Charguéraud - Journal of automated reasoning, 2012 - Springer
This paper provides an introduction to the locally nameless approach to the representation
of syntax with variable binding, focusing in particular on the use of this technique in formal …

Ott: Effective tool support for the working semanticist

P Sewell, FZ Nardelli, S Owens, G Peskine… - Journal of functional …, 2010 - cambridge.org
Semantic definitions of full-scale programming languages are rarely given, despite the many
potential benefits. Partly this is because the available metalanguages for expressing …

Nominal techniques in Isabelle/HOL

C Urban - Journal of Automated Reasoning, 2008 - Springer
This paper describes a formalisation of the lambda-calculus in a HOL-based theorem prover
using nominal techniques. Central to the formalisation is an inductive set that is bijective with …

Effects, capabilities, and boxes: from scope-based reasoning to type-based reasoning and back

JI Brachthäuser, P Schuster, E Lee… - Proceedings of the …, 2022 - dl.acm.org
Reasoning about the use of external resources is an important aspect of many practical
applications. Effect systems enable tracking such information in types, but at the cost of …

A verified compiler for an impure functional language

A Chlipala - ACM Sigplan Notices, 2010 - dl.acm.org
We present a verified compiler to an idealized assembly language from a small, untyped
functional language with mutable references and exceptions. The compiler is programmed …

Q# as a quantum algorithmic language

K Singhal, K Hietala, S Marshall, R Rand - arXiv preprint arXiv:2206.03532, 2022 - arxiv.org
Q# is a standalone domain-specific programming language from Microsoft for writing and
running quantum programs. Like most industrial languages, it was designed without a formal …