Reference:
Isabelle advantages over Coq:
From Benjamin Pierce
Coq = Gallina + Tactics
Core of the Coq: Gallina, a functional programming language;
Heart of Gallina: typed lambda calculus. - Similar to ML programs. - typed lambda calculus - with dependent types, - also with polymorphic types in the style of ML and Haskell, - also with a built-in inductive definition facility, - So called “The Calculus of Inductive Constructions”.
features (“strage twists from traditional func langs”)
Doing proof in Coq is “constructing lambda terms of appropriate type”:
If you could revise
the fundmental principles of
computer system design
to improve security...
... what would you change?