Version française
Home     About     Download     Resources     Contact us    

This site is updated infrequently. For up-to-date information, please visit the new OCaml website at

Browse thread
New release of focalize, a development environment for high integrity programs.
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2010-05-07 (10:39)
From: weis@d...
Subject: New release of focalize, a development environment for high integrity programs.

It is my pleasure to announce the new and second release for FoCaLiZe (the
0.6.0 FoCaLiZe opus).

Apart from updating the external tools (Caml, Camlp5 and Coq) this release
introduces inductive proofs on the representation of species. Zenon made
impressive progress so as to be helpful in proving inductive properties for

Distributed with this version, we also have a nice tutorial for the language
and a set of additional examples.

The 0.6.0 release is available from at

Uncompress, extract, then read the INSTALL file in the newly created
directory focalize.0.6.0 and follow the simple instructions written there.

To join people and discussions write to
Implementors also listen to suggestions and compliments at mail adress


For the entire FoCaLiZe implementor group,

Pierre Weis.

Friday, May 7, 2010 10:39:26

What is it FoCaLiZe ?

FoCaLiZe is an integrated development environment to write high integrity
programs and systems. It provides a purely functional language to formally
express specifications, describe the design and code the algorithms.
Within the functional language, FoCaLiZe provides a logical framework to
express the properties of the code. A simple declarative language provides
the natural expression of proofs of properties them from within the program 
source code.

The FoCaLiZe compiler extracts statements and proof scripts from the source
file, to pass them to the Zenon proof generator to produce Coq proof terms
that are then formally verified.

The FoCaLiZe compiler also generates the code corresponding to the
program as an Objective Caml source file. This way, programs developped in
FoCaLiZe can be efficiently compiled to native code on a large variety of

Last but not least, FoCaLiZe automatically generates the documentation
corresponding to the development, a requirement for high evaluation

The FoCaLiZe system provides means for the developers to formally express
their specifications and to go step by step (in an incremental approach) to
design and implementation, while proving that their implementation
meets its specification or design requirements. The FoCaLiZe language offers
high level mechanisms such as inheritance, late binding, redefinition,
parametrization, etc. Confidence in proofs submitted by developers or
automatically generated ultimately relies on Coq formal proof verification. 

FoCaLiZe is a son of the previous Focal system. However, it is a completely
new implementation with vastly revised syntax and semantices, featuring a
rock-solid infrastructure and greatly improved capabilities.