11.07.2015 Views

Curriculum Vitæ of Alain Colmerauer - Colmerauer, Alain - Free

Curriculum Vitæ of Alain Colmerauer - Colmerauer, Alain - Free

Curriculum Vitæ of Alain Colmerauer - Colmerauer, Alain - Free

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

distinct integers or the set sort 2m <strong>of</strong> 2m-tuples <strong>of</strong> the form(x 1 , . . . , x 2m ) where the m-tuple (x m+1 , . . . , x 2m ) is obtainedby sorting the m-tuple (x 1 , . . . , x m ) in non decreasing order,etc.Solving such a constraint (1) consists, not only <strong>of</strong> decidingwhether it admits at least one solution, but also incomputing, in the sense <strong>of</strong> inclusion, the smallest intervalsX i which can be substituted for the intervals A i withoutchanging the set <strong>of</strong> solution <strong>of</strong> (1). This is the sameas computing the smallest Cartesian product <strong>of</strong> intervalsX 1 × · · · × X n which contains the set r n ∩ A 1 × · · · × A n <strong>of</strong>n-tuples.The objective is to find good global constraints which canbe solved in polynomial time. With my mathematician colleagueNoëlle Bleuzen-Guernalec we have developed an algorithmfor solving the sort constraint in O(n log n) time[12]. For example with n = 2 × 5, this algorithm narrowsthe sequence <strong>of</strong> intervals (A 1 , . . . , A n ) <strong>of</strong> constraint (1) asfollows:( )[0, 13], [6, 10], [10, 11], [4, 16], [4, 6],[1, 3], [5, 10], [6, 9], [11, 17], [10, 15]( ⇓)[1, 3], [6, 9], [11, 11], [11, 15], [5, 6],[1, 3], [5, 6], [6, 9], [11, 11], [11, 15]I succeeded to solve this constraint, in reasonable time,with 2n equals up to 10 000 000.From this algorithm we have inferred a way to solve alsothe dif n constraint in O(n log n) [53].Approximation spaces While I was writing my PhDcourse, I felt the necessity to understand the concept <strong>of</strong> constraintssolving by intervals narrowing. Thus I have introduced“approximation spaces” and “good” n-ary relationin order to surrond its topological aspects. I have shownthat r is a good n-ary relation if and only if each binaryrelation one can extract from r (by fixing n − 2 variablesto constant) is a good binary relation. I have presented myfirst results in three invited lectures [36]. One was the InternationalConference on Logic Programming, on the island<strong>of</strong> Cyprus, where I was surprised to get a special edition <strong>of</strong>the revue Theory and Practice <strong>of</strong> Logic programming, in honorto my 60th birthday [13].2000–2004 Complete first-order theoriesFull first order constraints on trees In many programminglanguages the notion <strong>of</strong> composite data is defined forrepresenting various complex objects, like sequences, sequences<strong>of</strong> sequences, vectors, matrices etc. Essentially acomposed datum is, either a simple datum like a number oran identifier, or a finite sequence <strong>of</strong> pointers to other compositedata. Thus a composed datum can be considered asbeing a tree whose end nodes are labelled by simple dataand whose intermediate nodes are labelled by identifiers.It is thus important to be able to solve general constraintsin the theory <strong>of</strong> trees. By general constraints, we understandnon restricted first order formulae, that is formulae whichare constructed with the quantifiers ∃, ∀, the logical constantstrue, false the connectors ¬, ∧, ∨, the relation = andterms made from variables and constructors.Starting from the solving algorithms <strong>of</strong> Prolog II, Bich-Han Dao-Thi, one <strong>of</strong> my PhD students, has developed analgorithm which simplifies a first order formula p in a formulawhich is equivalent in the theory <strong>of</strong> infinite trees. Thissimplified formula is either the logical constant true or theconstant false or a formula, true for some values <strong>of</strong> the freevariables and false for some other values.Thi Bich Hanh has conceived an algorithm expressed in11 rewrite rules which ran on examples <strong>of</strong> constraints with100 alternat quantifications ∃, ∀, ∃, ∀, . . . This work endedwith a PhD end <strong>of</strong> 2000 [106] and an article [14].We plan to study the complexity <strong>of</strong> this algorithm accordingto the different forms <strong>of</strong> the formula p. It is known thatin the worst case this complexity is expressed by an iteratedembedding <strong>of</strong> exponential functions, with a depth dependinglinearly on the size <strong>of</strong> p.Full first-order constraints mixing trees and additive orderedrational numbers Later, with Khalil Djelloul in theframe <strong>of</strong> a thesis, we have combined the trees and theordered additive rational numbers, in a complete theory[108].Complete first-order theories I have started to establisha catalogue from the complete first-order theories whichare the most interesting for computer science. I have presentedthis catalogue in two invited lectures, [34, 35]. Ihave also organized a workshop intitled ”Solving firstorderconstraints in various structures” in the “Centre Internationaldes Rencontres de Mathmatiques” at Marseille.Three themes were involved : first-order constraints resolutionalgorithms, axiomatisation in the first-order <strong>of</strong> interestingstructurs, expressiveness power and complexity <strong>of</strong>the resolution <strong>of</strong> first-order constraints. Volker Weispfenning,University Passau, Andrei Voronkov, The University<strong>of</strong> Manchester Hoon Hong, North Carolina State University,Jean-Pierre Jouannaud, University Paris-sud, wereamong the participants.2004–2006 Complexity <strong>of</strong> universal programsEvery year I ask my second year students to program a universalTuring. For this purpose I give them special s<strong>of</strong>tware.In fact they do not program a complete machine – itwould be too long – they rewrite one or two modules <strong>of</strong> acomplete machine which I have beforehand tested and documented.My first machine was very slow and it was notconceivable to let it run on itself. As years passed, I conceivedfaster and faster machines and now they can run onthemselves.Starting from this work I defined and studied the complexity<strong>of</strong> universal programs. The obtained results werepresented in two invited conférences and also in the ”Colloqueannuel de l’Institut Universitaire de France” in March2003 [38, 39, 28].Developped s<strong>of</strong>twares- Parser and synthetiser <strong>of</strong> languages defined by W-grammars;- The Q-systems;- Prolog I (with Ph. Roussel);4

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!