What is a trace ? An unbounded sequence of trace events of the form (t, a t, S t ) t: timestamp. Time of the event a t : kind of event S t the actual state
TRACES: key events 1982 first encounter at first ICLP, Marseille 1985 Relating LP and Attribute Grammars (JLP) 1988 lauching PLILP conference serie at Orléans 1993 Grammatical View of LP (MIT Press) 1997 Launching DiSCiPl Esprit Project in Paris 2000 CP analysis tools (Springer) 2007 Meeting at Dresden and Munich … traces
TRACES are like this… (1984) ICLP Uppsala (1982) ICLP Marseille (WS 1983)
TRACES are like this… (2000) (1993) (1988) PLILP
Our story starts for me at Bonas in 1980 (a seminar center located in an old castle restored by Jean-Claude Simon in 1972) International Workshop on Program Construction A.Biermann, G.Guiho, Y.Kodratoff eds, 1980 (1923-2000)
A strong debate ?…. Thesis: « Prolog is purely declarative, since one has just to write axioms in FOL (just Horn clauses)… It works like an executable specification language, and there is nothing to prove about it» Surprise: …. « Which kind of miracle is this …. !?!! » Hervé Gallaire Michel Sintzoff
If Prolog is the Answer, what is the Question? or What it Takes to Support AI Programming Paradigms Daniel G. Bobrow, 1985 IEEE Transactions on Software Engineering V11 I11
For me (at this moment) the answer was clear: LP can be used as formal specification language, but to use this paradigm and to take all benefits from the « logical view », a specific methodology has to be invented
1975 Coming back from Brazil, starting to work on AG 1982 First « Séminaire de Programmation en Logique », Perroz-Guirrec 1983 Logical Attribute Grammars. IFIP Congress Paris 1985 Détection d'erreurs en programmation en logique with G. Ferrand, SPLT 1987 Formal Specification of Standard Prolog, with GRichard and C.Moss, SPLT 1988 Proofs of Partial Correctness for Attribute Grammars with Applications to Recursive Procedures and LP, with B.Courcelle, Inf &Control 1988 Attribute Grammars: Definitions, Systems, and Bibliography (LNCS) 1988 First PLILP, Orléans 1989 Methodological View of LP with Negation, with G. Ferrand 1991 NSTO Programs, with G. Ferrand and M. Téguia, ISLP, San Diego 1992 Proof Method of Partial Correctness and Weak Completeness for Normal LP, with G. Ferrand, JICSLP, Washington, JLP 1993 1992 An Operational Formal Definition of Prolog: A specification Method and Its Application, with G. Ferrand, New Generation Computing 1993 Proof Methods of Declarative Properties of Definite Programs, TCS Traces with Gérard
1975 1982 First ICLP, Marseille, Pierre and Jans first encounter 1983 Modeling Data Dependencies in LP by Attribute Schemata, Perroz-Guirrec 1985 Relating Logic Programs and Attribute Grammars, JLP 1985 1987 1988 First PLILP, Orléans, with B. Lorho 1988 A Grammatical View of Logic Programming, PLILP 1989 (Lauching WAGA) 1990 Second PLILP, Linköping 1991 1992 1993 A Grammatical View of Logic Programming, The MIT Press 1996 Jan spends one sabbatical year at INRIA 1996 Une méthode de preuve pour programmes concurrents avec contraintes sous forme clausale, with Pascal Chambre, JFPLC 2000 Analysis and Visualization Tools for Constraint Programming, Springer Traces with Jan (common actions and publications)
To summarize 1974: Great discovery: use of Definite Clauses for Programming. Write axioms P on relations p and make constructive proofs of p(t) P |= t p(t) and the Robinsons resolution constructs the witness t Our approach focused on this property, trying to keep logic programming practice logical. It was based on these two ideas: the interest of LP lies in the possibility to treat separatly declarative semantics (logic) and operational semantics (control) negation without explicit specification of falsity (non constructive, 3-valued WF semantics)
To summarize Our work was on foundations (relationships with AG), methodology (how to keep logic in LP), non constructive negation (WFS) Present route: AG? Prolog is operational, negation is constructive….
What do we (I) learn from these traces? Main stream publications with GF and JM We never published all three together One sequence, almost with G. Ferrand on methodology for LP based on correctness/completeness proofs first for DCP then for NLP formulated in the framework of LP and based on well-founded models Another sequence, almost with Jan Maluszynski on methodology too, but based on relationships with AG, showing how many aspects of LP (dependencies, proofs, NSTO) could be grounded in AG.
I tried to figure out why? Was Orléans (100 km south from Rocquencourt) too far from Linkoeping? The sole very differences: Publications: « papers » with Gérard, « books » with Jan … Foundations: « Trees » with Gérard, « AG » with Jan Then (after 2000) Jan: « proofs» Pierre: « traces »
TRACES: 18 years, after … Pierre 2000 Book on CP analysis tools (Springer) 2000-2004 OADimPPaC French RNTL Project: Generic traces for CP solvers analysis Jan 2000 Book on CP analysis tools (Springer) 2004-2008 Rewerse Esprit Project Reasoning on the Web with Rules and Semantics
« Leave traces, not proofs, only traces give dreams » René Char Poet (1907-1988)
Some personal thanks To the department, Direction and managment, for the multiple invitations to stay and the very inspiring atmosphere…
Some personal thanks Günter Riedewald and family Bernard Lohro (1975) Wlodzimierz Drabent (Attribute Grammars)
Logic Programming H. Gallaire (2004), J. Cohen, A. Robinson, K. Furukawa (1996) A. Colmerauer (2000) Some personal thanks
JFPLC 97, Orléans, Ferrand Gérard with A.Robinson Some personal thanks John Lloyd WS 83 ICLP 84, Alan Robinson Jan Komorowski (TF 95)
Roger Scowen Chris Moss Pascal Chambre Sophie Renault Arnaud Lallouet Alexandre Tessier Michel Tégia Bruno Dumant Michel Bergère AbdelAli Ed-Dbali Roberto and Mariza Bigohna (work on HyperPro) Michel Van Caneghem 1983 LP and specif
Some very personal thanks To my children (1987) Knuth, invited at WAGA (1989) (about inherited attribute example): « Insanity is hereditary, you get it from your kids »
Some very special thanks thanks Jan and Malgosza !