European Commission logo
français français
CORDIS - Résultats de la recherche de l’UE
Contenu archivé le 2024-04-16

Logical Frameworks: Design, Implementation and Experiment


There has been a steady increase recently in research towards systems that can provide assistance with reasoning about a variety of problems. Examples of such systems include operational semantics, lambda calculi, and verification systems for the development of hardware and software.
Such systems must provide a user-friendly, problem-specific environment for the development of formal proofs because they must be usable by programmers and hardware designers who are not experts in logic. A key objective of the research is to understand the relationships among these systems.
The overall aim of the LF Action was to design a proof development environment that is logic-independent, accepting a specification of the logic to be used and yielding a proof development environment for that logic.
Research on logical systems for formal reasoning as programming systems was undertaken. Various formal systems relevant to computer science were designed, investigated and implemented. The formal systems are all centred around typed lambda calculi. The results should provide the software writer with programming environments that facilitate certification of software.
The task of implementing a proof development environment for a given logic is at first sight discouraging, and there is considerable duplication between implementations of different logics. The task can be eased, however, by developing a unifying theory of formal systems.
The "logical framework" is just such a unifying theory: it provides a concise notation and calculus for specifying logics, and will eliminate, to a large extent, the redundancy between implementations, so that systems for a variety of logics can be rapidly prototyped.
The participants experimented with various systems as frameworks in which to conduct formal proofs, including AUTOMATH-related type theories with variants of Church's higher-order logic, and a general system of operational semantics. The experience gainedin such endeavours is among the principal results of the collaboration.
Collaboration among the participants is enhanced by adopting one programming language in which most prototype software is written. This is ML, a functional programming language oriented toward symbolic computation.
It appears, on present evidence, that a basic component of a unifying framework is some form of typed lambda calculus. Furthermore, a common feature of implementations is their ability to provide the user with proof-search procedures. The progress made during the first year of the Action is fully reported in the proceedings of the First Workshop on Logical Frameworks, held at Antibes, France in May 1990 and which has now appeared as a book (see below).
The second workshop, held in May 1991 in Edinburgh, was noticeable for the high number of system implementations that were demonstrated. Major implementation efforts comprise LEGO at University of Edinburgh (Calculus of Extended Constructions), Isabelle at University of Cambridge, Coq at INRIA-Rocquencourt (Calculus of Inductive Constructions), and ALF at Gteborg University (Martin-Lf's framework). These four systems permit interactive developments of proofs with machine assistance. Coq contains a program extractor towards ML. The Paris VII group implemented an executable functional specification language PROPRE. The Sophia-Antipolis group uses CENTAUR to develop a generic interface to theorem provers.
In addition to scientific publications, the expected result is a demonstration of the feasibility and usefulness of "developing certified software-in-the-large".


Data not available

Appel à propositions

Data not available

Régime de financement

Data not available


Institut National de Recherches en Informatique et en Automatique (INRIA)
Contribution de l’UE
Aucune donnée
Domaine de Voluceau Rocquencourt
78153 Le Chesnay

Voir sur la carte

Coût total
Aucune donnée

Participants (7)