Proving LF correctness in the Coq Proof Assistant

Formalising logic reasoning on a computer can be achieved using so-called proof assistants. Among them, the LF logical framework allows to describe logics and prove properties within these logics as well as meta-properties about these logics. So far, the reliability of such formal proofs has only been ensured by a informal meta-proof which states that derived formal proofs really belong to the consequence relation of the encoded logic.

A project such as Sec whose aim is to provide a reliable platform for execution of untrusted pieces of code uses the type checker of LF to ensure programs comply with some given security requirements. As a consequence, the reliability of the whole system depends on the reliability of the type checking algorithm of LF. That is the reason why we require a high level of confidence regarding its correctness.

One way of achieving such a level of confidence consists in formalising and proving the correctness of this algorithm within another proof assistant. We propose to use the Coq proof system, which is based on a much more powerful type-theoretic framework (the Calculus of Inductive Constructions) than LF to carry out such a proof.

Expectations

References

Last modified : Mon Feb 16 2004

Valid HTML 4.01!