Reseña: Représentation coinductive des graphes

Se ha publicado una nueva tesis de razonamiento formalizado en Coq: Représentation coinductive des graphes.

Su autora es Celia Picard dirigida por Ralph Matthes.

La tesis se presentó el 15 de junio en la Universidad de Toulouse (Université Toulouse III Paul Sabatier).

Su resumen es

Contexte général

Ce travail s’inscrit à l’interface de l’Ingénierie Dirigée par les Modèles et de la théorie des types. Dans le contexte toulousain, fortement axé vers les systèmes embarqués et critiques, savoir certifier la représentation et la transformation des modèles est un enjeu majeur. La perspective visée ici est la transformation d’un modèle conforme à un métamodèle en un modèle conforme à un autre métamodèle en assurant certaines propriétés sur le modèle d’arrivée. Deux solutions sont possibles pour cela : vérifier les propriétés sur chaque modèle d’arrivée ou certifier que l’application de la transformation assure ces propriétés. Nous avons choisi cette seconde solution. Pour la certification, nous avons décidé dans un premier temps d’utiliser un prouveur interactif, le système Coq. La première étape consiste à représenter les métamodèles, la seconde à établir un langage permettant d’exprimer les propriétés à vérifier. Dans cette thèse, nous nous intéressons à la représentation et la manipulation de métamodèles sous forme de graphes.

La représentation des graphes

Nous avons décidé de représenter les graphes par des types coinductifs dont nous voulions explorer l’utilisation dans Coq. En effet, la représentation de la coindition dans les prouveurs basés sur la théorie des types est en progrès continuel. De plus, l’utilisation des types coinductifs permet de rendre succincte et élégante notre représentation des graphes et d’obtenir la navigabilité par construction. Nous avons dû contourner la condition de garde dont le but est d’assurer la validité des opérations effectuées sur les objets coinductifs. Son implantation dans Coq (compromis entre expressivité et maniabilité, résultat d’une longue évolution) est restrictive, et interdit parfois des définitions sémantiquement correctes. Une formalisation canonique des graphes dépasse ainsi l’expressivité directe de Coq. Nous avons donc proposé une solution respectant ces limitations, puis nous nous sommes intéressés à la définition d’une relation plus permissive sur les graphes. Celle-ci permet d’obtenir la même notion d’équivalence qu’avec une représentation classique (ensemble de nœuds/ensemble d’arêtes) tout en gardant les avantages de la coinduction. En effet, notre définition des graphes crée un ordre implicite (horizontal et vertical) entre les nœuds. Notre nouvelle relation permet de nous en affranchir. Nous montrons qu’elle est équivalente à une relation basée sur des observations finies des graphes. Ces résultats ont fait l’objet de publications et sont certifiés par des développements Coq. Toutefois, ces derniers ont été transcrits en langage mathématique et la lecture de cette thèse ne requiert pas de connaissance de Coq.

La formalización en Coq se encuentra aquí.

Reseña: Formal specification and verification of well-formedness in business process product lines

Se ha publicado un nuevo trabajo de razonamiento formalizado en PVS: Formal specification and verification of well-formedness in business process product lines.

Sus autores son Giselle Machado, Vander Alves y Rohit Gheyi.

El trabajo se presentará el 23 de septiembre en el LA-WASP 2012 (6th Latin-American Workshop on Aspect-Oriented Software Development).

Su resumen es

Quality assurance is a key challenge in product lines (PLs). Given the exponential growth of product variants as a function of the number of features, ensuring that all products meet given properties is a non-trivial issue. In particular, this holds for well-formedness in PLs. Although this has been explored at some levels of abstraction (e.g., implementation), this remains unexplored for business process PLs developed using a compositional approach. Accordingly, in this paper we report on-going work in formalizing Business Process Product Lines, including the definition of well-formedness rules, formal specification of transformations, and the proof that transformations preserve well-formedness without having to instantiate all variants. Formalization and proofs are provided in the Prototype Verification System, which has a formal specification language and a proof assistant.

El código de la formalización en PVS se encuentra aquí.

Reseña: Proving the impossibility of trisecting an angle and doubling the cube

Se ha publicado en The Archive of Formal Proofs un nuevo trabajo de razonamiento formalizado en Isabelle sobre geometría: Proving the impossibility of trisecting an angle and doubling the cube.

Sus autors son Ralph Romanos y Lawrence Paulson (de la Universidad de Cambridge).

Su resumen es

Squaring the circle, doubling the cube and trisecting an angle, using a compass and straightedge alone, are classic unsolved problems first posed by the ancient Greeks. All three problems were proved to be impossible in the 19th century. The following document presents the proof of the impossibility of solving the latter two problems using Isabelle/HOL, following a proof by Carrega. The proof uses elementary methods: no Galois theory or field extensions. The set of points constructible using a compass and straightedge is defined inductively. Radical expressions, which involve only square roots and arithmetic of rational numbers, are defined, and we find that all constructive points have radical coordinates. Finally, doubling the cube and trisecting certain angles requires solving certain cubic equations that can be proved to have no rational roots. The Isabelle proofs require a great many detailed calculations.

Reseña: Formalization of an efficient representation of Bernstein polynomials and applications to global optimization

Esta semana se ha publicado en el Journal of Automated Reasoning un nuevo artículo de razonamiento formalizado en PVS: Formalization of an efficient representation of Bernstein polynomials and applications to global optimization. Una versión previa se puede leer libremente aquí.

Los autores son César Muñoz y Anthony Narkawicz de NASA Langley Formal Methods.

Su resumen es

This paper presents a formalization in higher-order logic of an efficient representation of multivariate Bernstein polynomials. Using this representation, an algorithm for finding lower and upper bounds of the minimum and maximum values of a polynomial has been formalized and verified correct in the Prototype Verification System (PVS). The algorithm is used in the definition of proof strategies for formally and automatically solving polynomial global optimization problems.

Reseña: Coq, a proof assistant based on higher-order intuitionistic type theory

La semana pasada Jean-Pierre Jouannaud hizo una presentación sobre razonamiento automático en el Instituto de estudios avanzados de la Universidad de Tsinghua: Coq, a proof assistant based on higher-order intuitionistic type theory.

En la presentación se incluyen comentarios sobre objetivos y logros del razonamiento formalizado, los fundamentos teóricos de los demostradores, la correspondencia de Curry-Horward, el cálculo de construcciones de Coq y su adecuación.