Research Internship of level Master-2: |
Feature Trees have been used in various areas of computer science like artificial intelligence, computational linguistics, knowledge representation [Kel93], and also as a general model of data for logic programming languages [ST94]. These trees, and their pertaining description languages, allow for descriptions of trees that are finer grained than standard term languages, and that are designed for situations in which one has to deal with incomplete information about trees. One distinguishing treat of feature trees and their description languages is that they allow to denote a specific subtree of a tree via an access path from the root of tree.
Many problems related to the analysis of feature tree descriptions can be expressed in terms of first-order formulas. There has been a number of works investigating decidability questions of various first-order theories of feature trees, like the works on decidability of the first-order theories FT [BS95], CFT [Bac95], or a generalization which is parameterized by a theory of edge labelings [Tre97]. A further generalization that models edge labelings as first-class values has an undecidable first-order theory [Tre93].
All these works have been concerned with first-order logics of description languages of feature trees, that is their focus was on static aspects of feature trees. The topic of the work we propose here is to investigate algorithmic properties of a theory of feature trees with updates. Updates are local modifications of feature trees, they allow to modify a subtree of a given tree at a given address. The purpose of a theory of feature trees with updates would be to describe the semantics of complex modifications of a tree. Our main application here consists in feature trees as an abstraction of the state of a UNIX-like file system, and to use a logics of feature trees in order to formalize the effect of a process that manipulates a file system (for instance a shell script using UNIX commands like mkdir, ln, rm, …). The question is whether the first-order theory of feature trees with updates is decidable.
The long-term goal of this line of research, and a possible subject of a PhD thesis, is to develop methods and automatic tools for the specification and verification of programs that manipulate persistent and complex hierarchical data, like a UNIX file systems. A decision algorithm for the first-order theory of feature trees with updates would constitute only a first step in this direction.
Methods for deciding first-order theories (in particular quantifier elimination), as taught in the module démonstration automatique of MPRI.
| Laboratoire Preuves, Programmes et Systèmes (PPS) |
| Université Paris Diderot |
| Paris, France |
This document was translated from LATEX by HEVEA.