Isabelle has been used to aid
formal methods for the specification, development and
verification of software and hardware systems. Isabelle has been used to formalize numerous theorems from
mathematics and
computer science, like
Gödel's completeness theorem, Gödel's theorem about the consistency of the
axiom of choice, the
prime number theorem, correctness of
security protocols, and properties of
programming language semantics. Many of the formal proofs are, as mentioned, maintained in the Archive of Formal Proofs, which contains (as of 2019) at least 500 articles with over 2 million lines of proof in total. • In 2009, the L4.verified project at
NICTA produced the first formal proof of functional correctness of a general-purpose operating system kernel: the seL4 (secure embedded
L4)
microkernel. The proof is constructed and checked in Isabelle/HOL and comprises over 200,000 lines of proof script to verify 7,500 lines of C. The verification covers code, design, and implementation, and the main theorem states that the C code correctly implements the formal specification of the kernel. The proof uncovered 144 bugs in an early version of the C code of the seL4 kernel, and about 150 issues in each of design and specification. • The definition of the programming language
Lightweight Java was proven
type-sound in Isabelle. ==Alternatives==