Une approche générique de la réécriture

de preuve effective peut être appliqué. ... Technique et sciences informatiques. ... rationnelle peut être appliquée à une plus large classe de logiques et ...
286KB taille 2 téléchargements 194 vues
RECHERCHE

Une approche générique de la réécriture Marc Aiguier — Diane Bahrami (*)Université d’Évry Val d’Essonne, LaMI, CNRS UMR 8042, 523, Place des Terrasses de l’Agora, 91000 Évry, France {aiguier,bahrami}@lami.univ-evry.fr

RÉSUMÉ. Dans cet article, nous étudions la réécriture en tant que système de preuve opérationnel de façon générique (c’est-à-dire indépendamment de la logique sous-jacente). Dans ce but, nous proposons des conditions simples qui permettent de caractériser les logiques où ce type de preuve effective peut être appliqué. Ces conditions sont fondées sur une propriété définie sur les arbres de preuve, que nous appelons semi-commutation. Nous montrons alors comment axiomatiser les notions usuelles de terminaison, confluence et confluence locale au sein de ce méta-formalisme. Cela nous permet de retrouver les résultats fondamentaux de Church-Rosser et Newman et de proposer une méthode de complétion de Knuth et Bendix générique. ABSTRACT. In this paper we study rewriting as an operational proof system in a generic (i.e. logic-independent) way. To do this, we propose simple conditions which allow to characterise logics were this kind of effective proof can be applied. This conditions are based on a proof tree property, that we call semi-commutation. We then show how to define the standard notion of termination, confluence and local confluencec in this meta-formalism. It allows us to obtain the fundamental results of Church-Rosser and Newman and to propose a generic Knuth and Bendix completion method. MOTS-CLÉS : réécriture abstraite, logicalité, propriété de Church-Rosser, lemme de Newman, système de Knuth et Bendix, complétion de Knuth et Bendix

: abstract rewriting, logicality, Church-Rosser property, Diamond lemma, Knuth&Bendix system, Knuth&Bendix completion

KEY WORDS

Technique et sciences informatiques.

2

Technique et sciences informatiques.

1. Introduction 1.1. Motivation L’automatisation du raisonnement est utile dans plusieurs domaines scientifiques, aussi bien pour prouver des théorèmes en mathématiques ou établir des propriétés physiques que pour prototyper ou montrer la correction de logiciels. Automatiser le raisonnement revient à trouver un algorithme qui reçoit en entrée un ensemble d’hypothèses, un ensemble de règles de démonstration et une propriété (le tout écrit selon des règles bien précises), et qui est capable de dire si cette dernière est une conséquence des hypothèses selon les règles de démonstrations données au départ. Dans le cadre de la logique équationnelle, on parle alors de problème du mot. Malheureusement, Turing et Church ont démontré que ce problème était semidécidable. Il a donc fallu trouver des méthodes pour le résoudre partiellement dans le cadre général. La réécriture est une de ces méthodes. La réécriture est une technique de preuve automatique permettant de donner une solution au problème du mot dans certaines structures algébriques au travers de systèmes de réécriture de termes convergents (c’est-à-dire nœthériens et confluents). Les structures algébriques étudiées ont principalement été les congruences. Depuis les années soixante-dix, il existe une procédure de semi-décision qui permet de construire de façon incrémentale, à partir de n’importe quel ensemble d’équations, de tels systèmes convergents et équivalents à l’ensemble d’équations de départ (c’est-à-dire dont la puissance de preuve de théorèmes est identique). Récemment, plusieurs travaux ont proposé une généralisation de la réécriture à d’autres structures algébriques que les congruences. Ils découlent de résultats établis par J. Levy et J. Agustí [18, 19] qui furent les premiers à appliquer la réécriture à des pré-ordres. Ces derniers ont défini la notion de bi-système de réécriture : deux relations de réécriture obtenues par intersection d’un pré-ordre avec un ordre de réduction (c’est-à-dire une congruence bien fondée sur les termes) et avec son inverse, donnant ainsi pour chacune des relations le sens de la réécriture à appliquer. À partir de ces travaux pionniers, deux généralisations furent proposées. Dans [26, 28], G. Struth étudie la réécriture de termes dans le cadre de relations non symétriques quelconques et l’applique à la théorie des treillis complets distributifs [27]. M. Schorlemmer, dans [22, 23], définit une extension de la logique des prédicats du premier ordre réduite à des relations binaires dans laquelle il est possible de spécifier des généralisations de la loi Leibniz (transitivité, typage, etc.) par composition de relations binaires et inclusion d’ensembles, et étudie la réécriture des termes au sein de cette logique. Dans cet article, nous montrons que la réécriture en tant que technique de preuve opérationnelle peut être appliquée à une plus large classe de logiques et structures algébriques. Dans ce but, nous étendons aux aspects opérationnels nos premiers résultats établis dans [1] où nous avons étudié, indépendamment de la logique sous-jacente, la réécriture en tant que système déductif (les aspects opérationnels n’étaient pas considérés). Ainsi, nous caractérisons les notions de terminaison et de déterminisme de la réduction (représenté par la confluence dans le cadre des relations transitives) et nous

Une axiomatisation de la réécriture

3

définissons une méthode de complétion à la Knuth-Bendix dans ce cadre générique.

1.2. Comparaison avec les travaux existant La méthode que nous proposons dans cet article est différente des deux approches [26, 23] présentées ci-dessus. Elle est plus générale dans le sens où comme nous venons de le dire elle ne réduit pas l’étude de la réécriture à des relations binaires fermées par transitivité ou de façon plus générale par composition de relations binaires [23], mais à n’importe quelle fermeture (par exemple la règle du modus-ponens dans le cadre de la logique conditionnelle). De plus, ces relations binaires pourront être contraintes par d’autres relations n-aires (par exemple, le prédicat de définissabilité dans le cadre de la logique équationnelle partielle). Enfin, l’approche suivie dans cet article vise à donner une description de la réécriture indépendante de la logique sous-jacente. En ce sens, elle diffère des travaux ci-dessus où l’approche consiste à définir une logique englobant les logiques usuelles et à étudier la réécriture au sein de cette logique plus universelle. Ainsi, le but du travail développé dans cet article est de fournir à chaque concepteur de logiques une méthodologie permettant de définir et d’appliquer (quand cela est possible) la réécriture comme système de preuve opérationnel. L’intérêt est d’éviter aux auteurs de telles logiques de développer de nombreux résultats formels qui ne sont souvent que des adaptations de résultats bien connus à leur nouveau formalisme, tout en conservant les avantages de ce dernier (en clarté et en concision par exemple). Ce type d’approche «méta» a déjà été largement appliqué aux aspects sémantiques des logiques [7, 15, 11, 21] et à l’inférence de théorèmes [20, 12]. Mais ça n’est pas le cas pour les aspects opérationnels des logiques (qui se caractérisent essentiellement par la réfutation causale dans le cadre du calcul de la résolution pour les théories de Horn et par la réécriture de termes pour les théories équationnelles). En effet, à notre connaissance, il n’y a eu aucun travail généralisant la réfutation causale et les travaux cités en début de paragraphe sont les seuls qui généralisent la réécriture de termes à des relation binaires transitives mais pas nécessairement symétriques [6, 26, 23]. Seules certaines propriétés sémantiques des théories de Horn ont eu une caractérisation générique dans le cadre d’une restriction des institutions dans [29].

1.3. Composition de l’article L’article s’organise de la façon suivante : dans la section 2, nous rappelons les notations et définitions à propos des systèmes formels, de la déduction de théorèmes et des arbres de preuve. En section 3, nous rappelons les définitions de base des systèmes formels à prédicats ainsi que le concept de semi-commutation sur lequel se fonde notre approche générique, telles qu’ils sont donnés dans [1]. La section 4 est dédiée à la définition des systèmes de réécriture dans ce cadre générique. C’est ici que nous axiomatisons les notions de dérivations, de terminaison des systèmes, d’effluences

4

Technique et sciences informatiques.

(c’est-à-dire de preuves non déterministes), de preuves par réécriture, et que nous établissons des conditions suffisantes permettant d’obtenir une généralisation de la propriété de Church-Rosser et du lemme de Newman à ce niveau d’abstraction. En section 5, nous spécifions une procédure de Knuth-Bendix abstraite et prouvons sa correction. Enfin, en section 6, nous appliquons la méthodologie développée dans cet article pour étudier la réécriture et définir une procédure de complétion correcte au sein de la logique conditionnelle positive avec fonctions partielles.

2. Préliminaires et notations Un système formel S défini sur alphabet est la donnée d’un ensemble F   , et d’un ensemble fini de relations n-aires sur F . On le note S = (F; R). Les éléments de F sont appelés formules et les relations de R sont appelées règles d’inférence. Une règle munie d’une arité n est donc un ensemble de n-uplets ('1 ; : : : ; 'n) de mots appartenant à F . Chaque séquence ('1 ; : : : ; 'n) appartenant à une règle r de R est appelée instance de cette règle. Les formules '1; : : : ; 'n 1 sont les prémisses de r ' :::' et 'n est sa conclusion. On note une telle instance r 1 'nn 1 . Une déduction dans S à partir d’un ensemble d’hypothèses  F est une séquence finie de formules de F ( 1 ; : : : ; m ) telle que pour chaque i (1  i  m), soit i est une formule de , soit il existe une instance '1 :::'in 1 d’une règle r dans S satisfaisant : pour chaque 1  j  n 1 il existe 1  k  i 1 tel que 'j = k . Un théorème d’un ensemble de formules est toute formule ' telle qu’il existe une déduction dans S à partir de dont ' est la dernière formule. On le note ` '. Un arbre de preuve  dans un système formel S est un arbre fini dont les noeuds et les feuilles sont étiquetés par des formules de F de la façon suivante : si un noeud est étiqueté par 'n et ses fils sont étiquetés (de la gauche vers la droite) par '1 ; : : : ; 'n 1, n 1 . Un arbre de alors il existe une instance d’une règle r dans S de la forme '1 :::' 'n preuve  de racine ' est dénoté  : '. On note L() le multi-ensemble 1 des feuilles de . Trivialement, pour tout énoncé ` ', il existe un arbre de preuve  : ' dont les feuilles sont choisies parmi les conclusions d’instances de règle r d’arité 1 (c’està-dire que r est de la forme ) ou bien parmi les formules de . On utilise la numérotation standard pour faire référence aux positions des noeuds des arbres : les mots sur N. Une position dénote alors le chemin menant de la racine au sous-arbre se trouvant à cette position. Ce sous-arbre est dénoté par j! . Étant donnée une position ! 2 N dans un arbre de preuve , [0℄! dénote l’arbre de preuve obtenu à partir de  en ayant remplacé le sous-arbre j! par 0 . Bien entendu, j! et 0 ont même racine. Quand j! est une feuille, nous utilisons l’expression  ' 0 pour [0 ℄! . Cette opération s’appelle la composition de  et 0 à la position !. Deux arbres de preuve  et 0 sont équivalents pour un ensemble de formules si et seulement si  et 0 sont deux arbres de preuve de ` '.

1. Un multi-ensemble est une extension élémentaire de la notion d’ensemble oú l’on accepte l’apparition multiple d’un même élément. Formellement, un multi-ensemble M sur un ensemble A se définit par une application M : A ! . Les opérations usuelles sur les ensembles s’étendent de manière naturelle.

N

Une axiomatisation de la réécriture

5

3. Systèmes formels à prédicats Dans cette section, nous rappelons notre axiomatisation de la réécriture en tant que système déductif telle qu’elle est présentée dans [1]. La relation de réécriture que nous définissons s’appelle usuellement la relation de convertibilité. Elle traduit une réécriture où aucun ordre de réduction n’est imposé. Elle est le fondement logique de la réécriture utilisée comme système de preuve automatique. L’approche que nous avons suivie pour définir ce type de réécriture est d’utiliser le système formel sous-jacent à la logique traitée. Ceci vient d’une observation vérifiée par toutes les logiques où cette technique de preuve automatique a été définie et appliquée : la relation  de convertibilité $ définit à chaque fois une stratégie qui sélectionne des arbres de preuves munis d’une structure particulière. Intuitivement, ces arbres, que nous appellerons arbres de réécriture, dénotent la fermeture des relations de réécriture de base. Ainsi, les arbres de preuve qui caractérisent les réécritures de base se situent toujours au-dessus des arbres de preuve qui spécifient les fermetures de ces relations (en considérant que les feuilles sont au sommet et la racine en bas de l’arbre). Par exemple, dans le cadre de la logique équationnelle mono-sorte, la relation de convertibilité associée à un ensemble quelconque d’équations est obtenue en fermant par contexte et par substitution, puis simplement par transitivité. La correction de cette nouvelle méthode de preuve par rapport au raisonnement équationnel usuel provient du fait que les règles de remplacement et de substitution remontent sur la transitivité et donc tout arbre de preuve peut être transformé en un arbre de réécriture équivalent (c’està-dire qui possède la même conclusion). Notre méthode sera alors fondée sur une généralisation de cette propriété que nous appellerons semi-commutation. À partir de cette propriété de semi-commutation, nous produirons deux ensembles disjoints, U p et Down, qui partitionnent les règles d’inférence de telle sorte que toutes les règles de U p semi-commuteront avec les règles de Down mais l’inverse ne sera pas vrai. Donc, les règles de U p caractériseront les étapes de réécriture élémentaires, et celles de Down seront utilisées pour composer les étapes de réécriture entre elles.

3.1. Définition de base La réécriture peut s’appliquer à chaque fois que l’on cherche des méthodes pour raisonner de façon automatique avec des relations binaires (équations [3], inclusions [18, 19], de façon plus générale relations transitives mais non symétriques [6, 26, 23], le problème de l’appartenance dans un idéal d’anneaux de polynômes [9], etc.). Ces relations peuvent être contraintes par d’autres relations n-aires (le prédicat de définissabilité dans les algèbres partielles, etc.). Enfin, elles sont définies sur des éléments homogènes mais qui peuvent être de natures différentes selon le formalisme sousjacent (par exemple de simples mots, des termes, des graphes, etc.). Tout ceci nous amène alors à donner au système formel sous-jacent à toute logique où la réécriture sera étudiée, la forme générale suivante :

6

Technique et sciences informatiques.

Définition 3.1 (Système formel à prédicats) Un système formel à prédicats est un triplet SP = (T; P; R) tel que T est un ensemble, P est un ensemble de relations d’arité n sur T , et (F; R) est un système formel où F est l’ensemble des formules défini de la façon suivante : F = fp(t1 ; : : : ; tn) j p 2 P ^ (t1 ; : : : ; tn) 2 pg. Exemple 3.2 Donnons le système formel à prédicats pour la logique équationnelle mono-sorte. Tout d’abord, rappelons les définitions élémentaires de cette logique. Une signature  est un ensemble de noms de fonction, chacun muni d’une arité n 2 N. Étant donnée une signature , l’ensemble des termes avec variables dans un ensemble V , noté T (V ), est l’ensemble des termes standards librement engendrés à partir de V . Une -équation est un couple (t; t0) où t et t0 sont des éléments de T (V ). Une telle équation est notée t = t0 . Une substitution est une application  : V ! T (V ). Son extension canonique aux termes de T (V ) est notée ℄ : T (V ) ! T (V ). Elle est définie par : f (t1 ; : : : ; tn) 7! f (℄ (t1 ); : : : ; ℄ (t1 )). Étant donnée une signature , nous pouvons lui associer le système formel à prédicats suivant : — T = T (V )), — P est l’ensemble de toutes les -équations. P est donc le singleton f=g où = est la relation binaire sur T définie par : ==def T  T , — R est l’ensemble des relations d’inférence définies à partir des schémas de règle suivants :

t=t0 Transitivité t=t0 t0=t00 t0=t t=t00 ti =t0i  Remplacement f (t ;::: ;t ;::: ;t )=f (t ;::: ;t0 ;::: ;t ) f n 2  n 1 i n 1 i 0 t = t  Substitution ℄ (t)=℄ (t0 ) où  : V ! T (V ) est une substitution.  Réflexivité t=t

Symétrie

3.2. Prédicats appropriés pour la réécriture Dans un système formel à prédicats, un prédicat p sera dit approprié pour la réécriture si p est binaire et à chaque fois que nous avons ` p(t; t0), il existe une déduction dont l’arbre de preuve sous-jacent possède la structure particulière d’être un arbre de réécriture. Cette notion d’arbre de réécriture repose sur la propriété que possèdent certaines instances de règles d’inférences de semi-commuter par rapport à d’autres instances. Toutes ces notions seront définies ici. Notation 3.3 Notons  = (1; : : : ; k ; ') où k  0, l’arbre de preuve dont la der;'k et tel que pour tout 1  i  k,  : ' est le nière règle d’inférence est '1 ;::: i ' sous-arbre de  à la position i. Notation 3.4 Soit S un ensemble d’arbres de preuve. Notons S ℄ la fermeture de S par l’opération de composition d’arbres.

Une axiomatisation de la réécriture

7

Définition 3.5 (Arbre structuré) Soit SP = (T; P; R) un système formel à prédicats. Soit E  P un sous-ensemble de prédicats binaires. Soient U pE = (U pp )p2E et DownE = (Downp )p2E deux familles d’ensembles non vides d’instances de règles d’inférence telles que pour tout p 2 E , U pp et Downp partitionnent l’ensemble des ;'n instances '1p;::: (t;t0) avec n  0. Notons P rUpE >DownE le plus petit ensemble (au sens de l’inclusion) défini inductivement de la façon suivante : — U p℄ [ DownE 2 P rUpE >DownE n — Soient 'p1(:::' t;t0) 2 Downp et (i : 'i )1in une séquence de n arbres de preuve telle que pour tout 'i = p0 (u; v) avec p0 2 E , i 2 P rUpE >DownE . Alors, (i : '1; : : : ; n : 'n; ') 2 P rUpE >DownE Définition 3.6 (Semi-commutation) Avec les notations et conditions de la définition 3.5, U pE semi-commute avec DownE si et seulement si pour tout arbre de preuve : '1 :::'n 0 1 : : : i p(t;t0) : : : m

i

p0(u; v)

où i 2 Downp et i0 2 U pp0 , il existe un arbre équivalent  2 P rUpE >DownE par rapport à L(). Quand la propriété de semi-commutation est satisfaite, les arbres de preuve de P rUpE >DownE sont appelés arbres de réécriture. La recherche des ensembles U pE et DownE est un problème ad-hoc à la logique sous-jacente. De plus, les couples d’ensembles (U pE ; DownE ) satisfaisant les conditions de la définition 3.6 peuvent être multiples. Par exemple, dans le cadre de la logique équationnelle mono-sorte dont le système formel à prédicats est présenté dans l’exemple 3.2, on peut considérer comme candidats tous les couples définis de la façon suivante : U pf=g contient toutes les instances des règles d’inférence excepté une t =t t =t instance quelconque de la règle de transitivité, disons 1 t2=t2 3 . Il est très fa1 3 cile de démontrer que toute instance des règles de symétrie, remplacement et substitution semi-commute avec cette instance (en fait, on verra dans l’exemple 3.8, que ces instances semi-commutent avec toutes les instances de la règle de transitit1=t2 t2=t3 t3 =t4 t1=t3 se transforme en : vité). Enfin, tout arbre de preuve de la forme : t1=t4 t2=t3 t3=t4 t1 =t2 t2=t4 qui appartient à U p℄f=g . Dans ce cas, U pf=g semi-commmute t1 =t4 avec Downf=g = f t1=tt12=tt23=t3 g. Maintenant, pour beaucoup de logiques (en tout cas, toutes celles utilisées en informatique et en mathématiques) la relation d’inférence ` est générée à partir de schémas de règle d’inférence, c’est-à-dire une unique forme caractérisant une infinité d’instances. Pour ces logiques, une stratégie consiste alors à faire appartenir au même ensemble U pE ou DownE toutes les instances d’un même schéma de règle. C’est bien entendu la stratégie qui a été suivie pour toutes les logiques où la réécriture a été étudiée.

8

Technique et sciences informatiques.

L’avantage de cette stratégie est qu’elle profite pleinement de ces formes génériques simples dont le nombre est usuellement fini. Ceci permet entre autres d’étudier de façon simple la propriété de semi-commutation. En effet, sans cette caractéristique, le nombre d’instances d’une règle d’inférence est habituellement infini, et ainsi, la vérification de la propriété de semi-commutation peut devenir difficile voire impossible. Il suffit alors de tester la propriété de semi-commutation entre les schémas de règle pris deux à deux et de mettre dans DownE toutes les instances des schémas de règle qui ne vérifient pas cette dernière sur au moins un des autres schémas (voir l’exemple 3.8). Par souci de simplicité, nous n’avons pas modélisé cette stratégie dans notre métacadre. La raison est qu’elle demande au préalable de formaliser la notion de schéma de règle. Or, cette formalisation s’avère être une tâche difficile et fastidieuse, ce qui d’un point de vue pédagogique engendrerait une difficulté supplémentaire dans la présentation de la méta-caractérisation. Cela aurait été de peu d’intérêt pour une stratégie si naturelle. La difficulté de cette formalisation réside principalement dans l’hétérogénéité de l’interprétation des objets manipulés. En effet, parmi les méta-variables manipulées à l’intérieur des schémas de règle, certaines sont interprétées comme des termes, des formules ou encore des objets mathématiques plus complexes (par exemple, des applications dénotant des substitutions). De plus, ces dernières peuvent être contraintes sur leur forme ou d’autres critères (par exemple que toutes les variables soient substituées par des termes définis ou encore des conditions de portées sur les variables dans le cadre de la logique du premier ordre). À notre connaissance, il n’existe pas de travaux sur une formalisation générale des schémas de règle. Seuls quelques travaux ont été effectués pour certaines familles de logiques simples (logique propositionnelle [24], logique du premier ordre [25]) et dans le cadre restreint de calcul à la Hilbert. La propriété de semi-commutation définit des règles de transformation d’arbres de preuve. Quand l’application de ces dernières termine, elles permettent alors de transformer tout arbre de preuve en un arbre de réécriture. Définition 3.7 (Approprié pour la réécriture) Soit SP = (T; P; R) un système formel à prédicats. Un sous-ensemble E  P de prédicats binaires est approprié pour la réécriture si et seulement s’il existe deux familles d’ensembles d’instances de règles U pE et DownE satisfaisant à toutes les conditions de la définition 3.5 et aux deux conditions suivantes : 1. U pE semi-commute avec DownE et 2. les règles de transformations d’arbres de preuve résultant de cette propriété de semi-commutation terminent. Cette définition amène aux commentaires suivants : — Dans les logiques où ce type de déduction a été défini, les tautologies sont simplement reconnues sur leur structure syntaxique. Par exemple, dans le cadre de la

Une axiomatisation de la réécriture

9

logique équationnelle, une tautologie est nécessairement de la forme t = t. Comme autre exemple, dans le cadre de la logique équationnelle conditionnelle, les tautologies sont toutes les formules de la forme ) t = t ou bien 1 ^ t = t0 ^ 2 ) t = t0 où

1 et 2 sont des conjonctions d’équations. Pour toutes ces logiques, il n’est alors pas utile de considérer dans les ensembles U p et Down les arbres de preuves dénotant de telles tautologies. Elles ne seront prises en compte que comme fermeture de la relation de convertibilité ou de réécriture. — La terminaison d’un ensemble de règles de transformation est un problème indécidable souvent difficile à démontrer 2 . Cependant, dans [1], nous présentons une famille de systèmes formels à prédicats pour lesquels la terminaison est toujours assurée. Ces derniers sont ceux où la propriété de semi-commutation résulte en un ensemble de règles de transformation d’arbres de preuve vérifiant certaines conditions. Ces conditions sont une généralisation d’une propriété usuellement vérifiée par l’ensemble des logiques sur lesquelles la réécriture a été étudiée. Elles traduisent le fait que la semi-commutation consiste à distribuer certaines instances de règles sur d’autres. Par exemple, dans le cadre de la logique équationnelle, la règle de substitution remonte sur la règle de transitivité. En effet, nous avons la transformation suivante: t=t0 t0=t00 t=t0 t0=t00 Subst Trans 00 (t)=(t0 ) Subst (t0)=(t00 ) t = t Subst Trans

(t)=(t00)

(t)=(t00)

Cette transformation consiste bien à “distribuer”la règle de substitution sur les prémisses de la règle de transitivité. Les autres règles de la logique équationnelle satisfont la même propriété de se distribuer sur la règle de transitivité (voit l’exemple 3.8 ci-dessous). Exemple 3.8 Pour le système formel à prédicats développé dans l’exemple 3.2, nous appliquons donc la stratégie qui consiste à partitionner les schémas de règle euxmêmes. Montrons alors que toute instance des règles de symétrie, remplacement et substitution se distribue sur toutes les instances de la règle de transitivité : Trans. Remp.

ti =t

0

t

0

ti =t0 i

=t0i

0 0 t =t i f (t1 ;::: ;t0 ;::: ;tn )=f (t1 ;::: ;t0 ;::: ;tn ) i 0 f (t1 ;::: ;ti ;::: ;tn )=f (t1 ;::: ;t ;::: ;tn ) i 0

ti =t f (t1 ;::: ;ti ;::: ;tn )=f (t1 ;::: ;t0 ;::: ;tn )

Remp. Trans. Trans. Sym.

0 i

f (t1 ;::: ;ti ;::: ;tn )=f (t1 ;::: ;t ;::: ;tn )

0

t=t

t

0

=t00

t=t00

t00 =t

Sym. Trans.

t

0

=t00

t00 =t0 00

t

Remp.

Sym. =t

0 t=t t0 =t

(pour la règle de substitution se référer aux commentaires ci-dessus) En suivant le même principe de preuve, il est très facile de voir que l’inverse n’est par vrai en général. On pose donc U pf=g comme l’ensemble contenant toutes les instances de symétrie, remplacement et substitution, et Downf=g comme l’ensemble contenant toutes les instances de la règle de transitivité.

2. Pour s’en convaincre, il suffit de voir la plupart des conjectures en théorie des nombres dont l’énoncé traduit souvent un problème de terminaison.

10

Technique et sciences informatiques.

À partir de ces définitions, nous avons montré dans [1], le résultat suivant, connu sous le nom de logicalité: Théorème 3.9 (Logicalité généralisée) Pour tout système formel à prédicats muni d’un ensemble approprié pour la réécriture, on a :

p

` p(u; v) () u $ p v

où p 2 E et $ est la clôture des formules de la forme p(t; t0) 2 par les arbres de réécriture de P rUpE >DownE (voir [1] pour les définitions exactes et la preuve complète de ce résultat). Ce résultat est donc une généralisation du résultat de logicalité démontré par G. Birkhoff dans le cadre de la logique équationnelle mono-sorte et de toutes ses extensions algébriques simples ( [30], [31]). Il établit un résultat de complétude entre la preuve formelle et la réécriture utilisée comme un mécanisme de déduction (les aspects opérationnels sont ignorés).

4. Systèmes de réécriture 4.1. Définitions de base L’idée centrale de la réécriture est d’orienter les prédicats binaires dans l’espoir d’obtenir au final une procédure de décision compatible avec les prédicats d’origine (c’est-à-dire possédant le même pouvoir de preuve). L’orientation d’un prédicat binaire p définit deux relations binaires !p et p , appelées relations de réécriture. Dans le cas où un prédicat binaire p est transitif, la relation !p associée sera alors un ordre. Si p est symétrique, une seule relation de réécriture suffit. En effet, quand p est symétrique, nous avons p = (!p) 1 . Dans le cadre générique présenté dans cet article, les prédicats binaires ne sont munis d’aucune propriété particulière (par exemple, on ne sait rien de leur symétrie ou de leur transitivité). Ils peuvent être contraints par d’autres formules définies sur des prédicats quelconques (comme le prédicat unaire de définissabilité dans le cadre de la logique avec fonctions partielles - voir la section 6). Les systèmes de réécriture sont alors définis dans notre cadre de la façon suivante : Définition 4.1 (Système de réécriture) Soit SP = (T; P; R) un système formel à prédicats muni d’un ensemble E  P approprié pour la réécriture. Un SP -système de réécriture est un triplet R = (; !; ) où  est un ensemble de formules p(t1 ; : : : ; tn) tel que p62E , et ! et sont deux familles indexées par E de relations binaires sur T satisfaisant : 8p 2 E; !p [ p  p. La condition imposée sur les relations de réécriture signifie simplement que les deux relations !p et p sont compatibles avec la définition syntaxique du prédicat

Une axiomatisation de la réécriture

11

p donnée dans SP (par exemple, la compatibilité avec les sortes dans le cadre des logiques multi-sortes).

Afin de respecter la structure des arbres de réécriture, les étapes de réécriture seront obtenues, pour chaque prédicat p 2 E , en fermant chacune des deux relations de réécriture !p et p par les arbres de U p℄E . Une dérivation sera donc obtenue en fermant toutes les étapes de réécriture selon les instances de DownE . L’approche naturelle serait alors d’orienter la conclusion d’une instance de règle de DownE dans une direction donnée à la condition que toutes ses prémisses à réécrire (c’est-à-dire celles dont le prédicat appartient à E ) soient orientées dans cette même direction. C’est le cas, dans le cadre de la logique équationnelle simple, pour la transitivité. Cependant, ceci n’est pas toujours vérifié, comme nous le verrons pour le modus ponens de la logique équationnelle conditionnelle développée dans la section 6 de cet article : l’orientation de la deuxième prémisse du modus ponens n’a aucune influence sur l’orientation de la conclusion. Il faut donc mettre en évidence, pour chaque arbre de DownE , les feuilles dont l’orientation a de l’importance. Nous les regroupons dans le multi-ensemble FRL() dont la définition est la suivante : Définition 4.2 (Feuilles de réécriture fixées) Pour chaque instance  de DownE , définissons le multi-ensemble RL() = fp(u; v) j p(u; v) 2 L() ^ p 2 E g. Le multi-ensemble des feuilles de réécriture fixées pour , noté FRL(), est un sous multi-ensemble de RL(). Cependant, cela n’est encore pas suffisant. En effet, pour certains systèmes formels à prédicats, il est préférable de retirer de l’ensemble U pE certaines instances de règles qui par leur présence engendrent nécessairement une non-terminaison des relations de réécriture sous-jacentes. C’est le cas des instances de la relation de symétrie dans le cadre de la logique équationnelle. Une caractérisation générale de ces instances est la suivante : Définition 4.3 (Schéma de bouclage simple) Soit SP = (T; P; R) un système formel à prédicats muni d’un ensemble E  P approprié pour la réécriture. Un schéma de bouclage simple est la donnée de n instances distinctes de U pE , 1 : p1(u1 ; v1); : : : ; RL(i ) n : pn (un; vn) telles que : fp1(u1 ; v1); : : : ; pn(un; vn )g  1in

[

Fait 4.4 Étant donné un arbre de réécriture  : p(u; v) quelconque défini uniquement à partir d’un sous-ensemble des n instances d’un schéma de bouclage simple, il existe un arbre de réécriture défini aussi uniquement à partir des n instances du schéma de bouclage simple et dont  est un sous-arbre direct. Exemple 4.5 Dans le cadre de la logique équationnelle simple, les couples d’insu =v v =u tances ( v=u ; u=v ) sont les seuls schémas de bouclage simple.

Notation 4.6 (Retrait des schémas de bouclage simple) Soit SP un système formel à prédicats muni d’un ensemble E de prédicats approprié pour la réécriture. Notons U p! E le sous-ensemble de U pE obtenu en retirant toutes les instances apparaissant dans un schéma de bouclage simple.

12

Technique et sciences informatiques.

Exemple 4.7 Selon l’exemple 4.5, nous définissons U pf=g par : ! U pf=g = U pf=g n f uv==uv j u; v 2 T (V )g

!

Définition 4.8 (Étape de réécriture) Soit R = (; !; ) un système de réécriture. Notons =  [ fp(u; v) j p 2 E ^ (u !p v _ u p v)g. Pour chaque prédicat p 2 E , la relation !pR T  T (resp. pR T  T ) est le plus petit ensemble (au sens de l’inclusion) défini inductivement de la façon suivante : 1. !p!pR (resp. p pR ) 2. pour tout arbre de preuve  : p(t; t0 ) 2 U p℄p tel que :

!

0 (a) pour tout p0 (u; v) 2 RL(), on a u !pR v (resp. u (b) pour tout ' 2 L() n RL(), on a ` ' on a t !pR t0 (resp. t pR t0 ).

p0 v) R

Notons !R= (!pR)p2E et R= ( pR)p2E . Un élément de !R [ R est appelé une étape de réécriture. Enfin, notons $R= f$pRgp2E la famille de relations binaires sur T où pour chaque p 2 E , $pR est la fermeture de !pR [ pR par les arbres de U p℄p selon les points 2.(a) et 2.(b) ci-dessus en remplaçant «!pR (resp. p0 p0 R )» par $R.

p

R)» par

! 0 $pR et «!pR (resp.

Remarque : La relation $R contient entre autres pour toutes les instances de U pE ! les conflits d’orientation parmi les feuilles à réécrire, c’est-à-dire les cas où au moins deux feuilles de réécriture d’une instance ne sont pas orientées dans le même sens. Bien entendu, pour espérer obtenir un système qui termine il faut, pour tout arbre ` ' soit décidable. Ce problème se rencontre régulièrement dans les extensions de la réécriture de termes. Par exemple, dans le cadre de la réécriture modulo un ensemble d’équations E , réécrire une classe [s℄E nécessite d’énumérer toutes les classes E -équivalentes à s afin de trouver un terme qui se réduit via la relation de réécriture. Ceci demande alors que toutes les classes d’équivalence soient finies.

 2 U p! E , et toute formule ' 2 L() nRL(), que l’énoncé

Définition 4.9 (Fermeture des étapes de réécriture) Avec les notations des définip tions 4.8 et 4.2, on note !R la fermeture de la relation !pR par l’ensemble d’insp tances Downp . Elle se définit comme suit : t !R t0 si et seulement si il existe un arbre de preuve  : p(t; t0) 2 Downp tel que :

 p0

1. pour tout p0 (u; v) 2 FRL(), on a u !R v,

 p0

2. pour tout p0 (u; v) 2 RL() n FRL(), on a soit u !R v, soit u 3. pour tout ' 2 L() n RL(), on a ` '

 p0 v , R

Une axiomatisation de la réécriture

p



p



13

p

On définit R de la même façon. On note !R = (!R )p2E et R= ( R)p2E .  p Enfin, notons $R = ($R )p2E la famille indexée par E des relations binaires sur T p où pour chaque p 2 E , $R est la fermeture de $R par les arbres de Downp , c’estp à-dire que t $R t0 si et seulement s’il existe un arbre de preuve  : p(t; t0) 2 Downp tel que :

 p0

— 8p0(u; v) 2 RL(); u $R v — 8' 2 L() n RL(); ` '.

p

p

p

Remarque : De la définition 4.9, on constate aisément que !R [ R $R.  De plus, de la même façon que pour la relation $R, $R contient aussi les conflits d’orientation parmi ses feuilles à réécrire fixées. La définition 4.9 amène aux commentaires suivants : — Ici aussi, la terminaison des systèmes de réécriture requière pour tout arbre  de ` ' soient décidables. — Comme nous l’avons expliqué précédemment, les tautologies sont habituellement reconnues directement par leur structure syntaxique. Dans ce cas, nous ne prenons pas en compte, dans P rUpE >DownE , les arbres dont la conclusion est une tautologie. La fermeture des étapes de réécriture se décompose alors en deux fermetures. La première concerne la fermeture par les arbres de DownE telle qu’elle est définie dans la définition 4.9. La seconde définit alors la fermeture par les tautologies. Cette dernière fermeture se définirait dans notre cadre générique de la façon suivante : p p !0 = 0 = f(u; v) j ; ` p(u; v)g.

DownE et tout ' 2 L n RL() que les énoncés de la forme

Dans le cas où la relation à réécrire est transitive, une dérivation est uniquement définie par une séquence d’étapes de réécriture. Il ne sert à rien de connaître les instances de la règles de transitivité qui permettent, à partir d’une telle séquence, d’aboutir à l’équation finale. Cela vient du fait que l’ordre d’application de la règle de transitivité n’a pas d’influence sur le résultat obtenu : t1=t2 t2=t3 t1 =t2 t2=tt32=tt43=t4 t3 =t4 t1 =t3 . t1 =t4 t1 =t4 De par l’abstraction de notre approche, il ne nous est pas possible de représenter les dérivations de nos systèmes de réécriture sous forme de séquences d’étapes de réécriture. En effet, la fermeture d’un ensemble d’étapes de réécriture par les instances de DownE n’est pas déterministe à priori. À partir des mêmes feuilles, il se peut que deux suites d’applications d’instances différentes mènent à deux conclusions différentes ou que seule l’une des deux mène à une conclusion (et que pour l’autre on ne puisse plus appliquer aucune instance de DownE alors que l’arbre n’est pas encore complet).

14

Technique et sciences informatiques.

Ceci aboutit naturellement à dénoter les dérivations par des arbres dont les feuilles sont des étapes de réécriture (c’est-à-dire, des éléments de !R [ R ) et les noeuds  des fermetures d’étapes de réécriture (c’est-à-dire des éléments de $R). Notation 4.10 L’expression u

 R v signifie que l’on a soit u ! R v soit u  R v.

Définition 4.11 (Dérivations) Avec les notations de la définition 4.9, une dérivation



est un arbre  dont les noeuds sont étiquetés par des éléments de R et les feuilles par des éléments de R . Elle se définit de la façon suivante : l’arbre 



1 : u1

 R1 v1 : : :pn : un  Rn vn  u R v p

p

est une dérivation si et seulement si :

1: 2:

pour tout 1  i  n, i est une dérivation ; m il existe une instance 0 = p1(::: u;v) 2 Downp telle que : — RL() = fp1(u1 ; v1); : : : ; pn(un; vn )g — 81  i  n; i 2 L() n RL() ) ` i

  v ,u ! 3: 81  i 6= j  n; pi (ui ; vi); pj (uj ; vj ) 2 FRL() ) (ui ! R i j R vj ). Dans ce cas, la réécriture associée à p(u; v) dans  respecte ce sens. p On fait référence à cette dérivation par  : u R v



Définition 4.12 (Preuves) Avec les notations de la définition 4.11, une preuve est définie comme une dérivation en remplaçant tion 3.

 R par $ R et en supprimant la condi-

Une dérivation (resp. une preuve) est donc tout arbre résultant de la définition induc-





tive de R (resp. $R ) à partir des étapes de réécriture élémentaires dans lequel on a retiré tout ce qui ne concernait pas un prédicat à réécrire.

4.2. Relation de réduction et terminaison Bien entendu, un système de réécriture termine si aucune de ses dérivations n’est extensible à l’infini. Ici, l’extension d’une dérivation porte naturellement sur les arbres. On pourrait être tenté de la définir sur la simple notion de sous-arbre, et donc dire qu’un système termine si il ne possède pas de dérivation extensible à l’infini. Cependant, ceci est trop fort. En effet, prenons le simple cadre de la logique équationnelle où une dérivation est extensible aussi bien sur le terme le plus à gauche que sur celui le plus à droite. Mais, seules les extensions effectuées sur les termes les plus à droite des dérivations déterminent la terminaison des systèmes de réécriture. Dans le cadre générique développé ici, il n’est pas possible de caractériser l’équivalent de ces notions

Une axiomatisation de la réécriture

15

de terme le plus à gauche et de terme le plus à droite propres aux relations transitives. La seule chose que l’on puisse dire est que la relation d’extensibilité associée aux systèmes de réécriture est contenue dans la relation de sous-arbres. On obtient alors la définition suivante : Définition 4.13 (Relation d’extensibilité) Soit R un système de réécriture. Une relation d’extensibilité pour R est une relation binaire )R définie sur les dérivations telle que :  )R 0 =) 9! 2 N; j0! = . Définition 4.14 (Terminaison) Soit R un système de réécriture muni d’une relation d’extensibilité )R. On dira que R termine par rapport à )R si et seulement )R est nœthérienne. Prouver la terminaison d’un système de réécriture peut demander de regarder un ensemble infini d’extensions pour chacune des dérivations possibles du système. Un moyen de répondre à ce problème est d’utiliser une relation plus simple à définir possédant naturellement la propriété de terminaison recherchée (par exemple, tous les ordres de réductions usuels dans le cadre des logiques algébriques, c’est-à-dire les extensions de la logique équationnelle), et qui contient la relation d’extensibilité sousjacente. Ceci motive alors le concept de relation de réduction qui englobe dans sa définition les fermetures par les arbres de U p℄E et DownE . Pour les même raisons que ! précédemment, cette relation n’est pas forcément une relation d’ordre. Définition 4.15 (Relation de réécriture) Soit SP = (T; P; R) un système formel à prédicats muni d’un ensemble E de prédicats approprié pour la réécriture. Soit  un ensemble de formules de la forme p(t1 ; : : : ; tn) où p62E . Soit  une relation binaire sur T . Notons =  [ fp(u; v) j u  vg. Le couple (; ) est appelé relation de réécriture si et seulement si : —

 respecte la syntaxe définie par les prédicats de E , c’est-à-dire : 

[

p2E

p[p 1

—  : p(u; v) de U!p℄p , si !0 0 0 0 0 0 pour chaque feuille p (u ; v ) 2 RL() on a u  v (resp. v  u0 ) et pour chaque feuille ' 2 L() n RL() on a ` ', alors u  v (resp. v  u) —  est fermée par DownE , c’est-à-dire : pour tout arbre  : p(u; v) 2 Downp , si pour chaque feuille pi(ui ; vi ) 2 FRL() on a ui  vi (resp. vi  ui ), pour chaque pj (uj ; vj ) 2 RL() n FRL() on a uj  vj ou bien vj  uj et pour chaque ' 2 L() n RL() on a ` ', alors u  v (resp. v  u). est fermée par U p℄E , c’est-à-dire : pour tout arbre

Définition 4.16 (Réduction) Avec les notations de la définition 4.15, une réduction est alors définie comme une dérivation en remplaçant dans la définition 4.11, le symp bole !R par le symbole . De la même manière que pour les dérivations, on peut définir des relations d’extensibilité pour les réductions. Ces dernières contiennent aussi la relation de sous-arbres.

16

Technique et sciences informatiques.

Définition 4.17 (Relation de réduction) Une relation de réécriture (; ) munie d’une relation d’extensibilité > est une relation de réduction si et seulement si > est nœthérienne. Comme nous l’avons déjà succinctement abordé ci-dessus, montrer la terminaison d’un système de réécriture à partir des seules règles de réécriture est un problème qui peut s’avérer très difficile. Dans le cadre de la logique équationnelle (ceci se généralise d’ailleurs à toutes les logiques fonctionnelles manipulant des relations transitives ou de façon plus générale des relations binaires définies comme la composition d’autres relations binaires [23]), un moyen pour obtenir un tel résultat est souvent de définir un ordre de réduction plus général (c’est-à-dire un ordre bien-fondé fermé par contexte et substitution) sur les termes qui contient la fermeture réflexive et transitive de la relation de réécriture. Cette méthode est justifiée par un théorème simple établi par Lankford [17]. Ci-dessous, nous donnons une forme généralisée de ce résultat dans le cadre de nos systèmes de réécriture. Théorème 4.18 (Théorème de Lankford généralisé) Soit R = (; !; ) un système de réécriture muni d’une relation d’extensibilité )R. R termine par rapport à )R si et seulement si il existe une relation de réduction (; ) dont la relation d’extensibilité est >, et telle que : 1. 8p 2 E; !p [( p) 1  2. pour toute dérivation , notons  la réduction obtenue en remplaçant tout   noeud et toute feuille u !R v (resp. u R v) de  par u  v (resp. u  v). Alors, nous avons :  )R 0 =)  > 0 . Dans le cadre des logiques où la relation à réécrire est la fermeture par composition d’autres relations binaires (ceci généralise entre autres les relations transitives mais aussi les relations de sous-typage, etc.), on peut alors utiliser tous les résultats usuels sur les ordres de simplification que l’on peut trouver dans n’importe quel livre traitant du sujet de la réécriture termes (par exemple [3]).

4.3. Propriétés des systèmes de réécriture L’idée de la réécriture en tant que système de déduction est d’établir une relation entre la relation de convertibilité et la réécriture, connue sous le nom de la propriété de Church-Rosser. Dans le cas des logiques dites fonctionnelles ou algébriques (extensions de la logique équationnelle), ceci est obtenu en assurant que la relation de réécriture est déterministe (on dit aussi confluente). La confluence définit des règles de transformation de certains arbres de réécriture en d’autres arbres de réécriture. Les premiers sont appelés des pics et les seconds des vallées. En utilisant le vocabulaire défini dans cet article, les pics et les vallées sont composés de deux dérivations (c’està-dire des séquences d’étapes de réécriture) liées entre elles par une instance de la règle de transitivité. Ce qui les différencie est que dans les pics, les dérivations sont liées par le terme de début alors que dans les vallées, elles sont liées par le terme de fin.

Une axiomatisation de la réécriture

17

La propriété de Church-Rosser est alors obtenue à partir de la propriété de confluence en constatant que pour ces logiques fonctionnelles, tous les arbres de réécriture tels qu’ils sont définis dans la définition 3.6, peuvent se mettre sous la forme d’une séquence de pics et de vallées. Il est alors très facile de constater que le remplacement de tout pic maximal (c’est-à-dire non sous-arbre d’un pic plus grand) réduit le nombre de pics de départ. La confluence traduit donc un ensemble de règles qui permet de transformer tout arbre de réécriture en une vallée, en un nombre fini d’applications. Pour généraliser la propriété de Church-Rosser, nous devons donc dans un premier temps définir un équivalent des notions de pics et de vallées. De par l’abstraction du formalisme traité ici, ces deux notions ne sont pas généralisables directement (car les notions de termes de début et de fin sont propres aux relations transitives). En effet, nous pouvons constater simplement que ce ne sont que des notions duales définies sur les instances d’arbres de DownE , et qui partitionnent l’ensemble des possibilités d’orientation des feuilles fixées à réécrire de chaque instance d’arbre de DownE quand ces dernières ne définissent pas une dérivation. Enfin, ces notions ne traduisent plus un déterminisme ou un non-déterminisme de la réécriture propre aux relations transitives. Nous ne parlerons pas alors, à ce niveau d’abstraction, de pic et de vallée, mais simplement de mauvaise preuve et de bonne preuve. Définition 4.19 (Bonne et mauvaise preuve) Soit SP = (T; P; R) un système formel à prédicats muni d’un ensemble E de prédicats approprié pour la réécriture. Les notions de bonnes preuves et de mauvaises preuves se caractérisent par deux fonctions T T G; B : DownE ! 22 satisfaisant aux conditions suivantes 3 : — elles ne dépendent que des feuilles de réécriture fixées :

8 2 DownE ; 8S 2 B () [ G(); (p(u; v) 2 FRL() ) (u; v) 2 S _ (v; u) 2 S )^ ((u; v) 2 S ) 9p 2 E: p(u; v) 2 FRL() _ p(v; u) 2 FRL()) — une feuille de réécriture fixée d’un arbre  de DownE n’apparaît qu’une seule fois dans chaque preuve de G() [ B () :

8 2 DownE ; 8S 2 B () [ G(); (u; v) 2 S , (v; u) 2= S — les bonnes et les mauvaises preuves ne contiennent aucune dérivation :

8 2 DownE ; 8S 2 B () [ G(); FRL() = fp1(u1 ; v1); : : : ; pn(un; vn)g =) (91  i 6= j  n; (ui ; vi) 2 S , (vj ; uj ) 2 S ) De la définition 4.19, on observe aisément que : 1. les notions de bonne et de mauvaise preuve sont des notions duales, c’est-à-dire, pour tout S 2 G(), il existe un unique S 0 2 B () tel que (u; v) 2 S , (v; u) 2 S 0 , et inversement.

3. La lettre G est utilisée pour “Good” et la lettre B pour “Bad”.

18

Technique et sciences informatiques.

2. les trois ensembles que sont les bonnes preuves, les mauvaises preuves, et les dérivations d’un arbre  de DownE forment une partition de l’ensemble des combinaisons possibles d’orientation des feuilles de réécriture fixées de . Exemple 4.20 Dans le cadre de la logique équationnelle, à partir du partitionnement effectué dans l’exemple 3.8, les notions de bonnes et de mauvaises preuves se définissent de la façon suivante :

7 ff(t2; t1); (t2 ; t3)gg ! 7! ff(t1; t2); (t3 ; t2)gg B définit bien la notion de pic t1 t2 ! t3 , et G celle de vallée t1 ! t2 : t1=tt12=tt23=t3 — G : t1 =tt12=tt23=t3 —B

t3. Ici, les ensembles ne sont que des singletons car la règle de transitivité ne contient que deux prémisses. Une preuve par réécriture est donc soit une dérivation, soit une preuve dont tous les sous-arbres directs sont des dérivations et seule la dernière étape est l’application d’une bonne preuve. En suivant la définition des applications G et B de l’exemple 4.20, ceci définit bien l’équivalent d’une preuve par confluence dans les logiques fonctionnelles.

Définition 4.21 (Preuve par réécriture) Soit R = (; !; ) un système de réécriture. Notons =  [ fp(u; v) j p 2 E ^ (u !p v _ u p v)g. Une preuve par réécriture est soit une dérivation, soit une preuve de la forme :

=

1 : u1

 R1 v1 : : :pn : un  Rn vn p

p



u $R v 0 telle qu’il existe  : p(u; v) 2 Downp avec RL(0 ) = fp1 (u1; v1); : : : ; pn(un ; vn)g satisfaisant aux conditions suivantes :

2 L(0) n RL(0 ); `  pi 2. 9S 2 G(0 ); 8pi(ui ; vi ) 2 FRL(0 ); (ui ; vi) 2 S , ui !R vi 1. 8

Enfin, une preuve par effluence est le dual d’une preuve par réécriture. Définition 4.22 (Preuve par effluence) Une preuve par effluence se définit comme une preuve par réécriture lorsque cette dernière ne caractérise pas une dérivation, en changeant la condition “S 2 G(0 )” par la condition “S 2 B (0 )”. Une effluence locale est une preuve par effluence de hauteur 1. Définition 4.23 (Church-Rosser, correct et localement correct) Un système de réécriture R est dit : — de Church-Rosser si et seulement si pour toute preuve il existe une preuve par réécriture de même conclusion.

Une axiomatisation de la réécriture

19

— correct si et seulement si pour toute preuve par effluence il existe une preuve par réécriture de même conclusion. — localement correct si et seulement si pour toute effluence locale il existe une preuve par réécriture de même conclusion. Comme nous l’avons explicité précédemment, le cadre des systèmes de réécriture défini dans cet article est trop général pour obtenir les propriétés usuelles sous-jacentes à la complétion. Les logiques dans lesquelles des procédures de complétion ont été définies, comme la logique équationnelle qui est un exemple représentatif de notre abstraction, possèdent toutes des propriétés qui sont utiles dans ce contexte mais ne sont pas forcément satisfaites par tout système formel à prédicats (ces dernières n’étant pas imposées dans la définition). Tout d’abord, on peut remarquer que dans toutes ces logiques, toute preuve dans un système de réécriture qui n’est pas une dérivation contient au moins une effluence. Cette effluence est obtenue en ré-agençant l’ordre d’application des règles de transitivité. De plus, dans toute preuve, le remplacement d’une effluence de taille maximale (c’est-à-dire qui n’est pas contenue elle-même dans une effluence) par une preuve par confluence réduit, en général d’une unité, le nombre d’effluences maximales de départ. Toute preuve par effluence contient une effluence locale comme sous-arbre. Enfin, il existe une relation d’ordre nœthérienne sur les effluences. Dans le cadre des logiques où la relation à réécrire est transitive, cette dernière est contenue dans une relation d’ordre plus générale engendrée à partir d’une relation de réduction sur les termes. Guidés par ces propriétés, nous restreignons la notion de système formel à prédicats pour ne traiter que des systèmes formels à prédicats dits de Knuth-Bendix. Avant de définir ces derniers, nous devons tout d’abord définir quelques notions utiles à ce propos. Définition 4.24 (Possession d’effluences) Une preuve  possède des effluences (resp. des effluences locales) si et seulement si il existe un sous-ensemble de feuilles D  L(), une preuve par effluence (resp. une effluence locale) 0, une preuve 00 et un mot ! 2 N tels que : — L(0) = D, —  et 00 ont même conclusion, et — j00! = 0 . Le couple d’arbres (0 ; 00 ) s’appelle une effluence (resp. effluence locale) de . Exemple 4.25 Soit l’arbre de preuve  obtenu à partir de la séquence de réécriture suivante en appliquant les instances de la règles de transitivité de la gauche vers la droite :

t1 ! t2

t3

t4 ! t5

t6 ! t7

Les couples suivants sont des exemples d’effluences de  : t1 !t2 t3 t3 t4 !t5 + t3 +t t5 t6 !t7 t1$ t $ + t5 3 5 + t7 t1 $ t5 $ t t ! t 3 4 5 ; ) 1. ( + + t3$t5 t1 $t7

20

Technique et sciences informatiques.

t1!t2

t2 t3 t4 t !t 4 5 t2 + t4 + t2 $t5 + t5 t1 $

t2 t3 t4 t !t t5 t6 !t7 4 5 + + t7 t5 $ 2. ( t2 t4 + ; ) + t2 $t5 t1$t7 t1 !t2 t3 t t 3 5 + t3 t1 $ t4 !t5 + t4 t5 t6 !t7 t1 $ + + t7 t1 $t5 t5 $ t t ! t 5 6 7 3. ( ; ) + + t5$t7 t1 $t7

Définition 4.26 (Effluence maximale) Avec les notations de la définition 4.24, une effluence (10 ; 100) d’une preuve  est dite maximale si et seulement s’il n’existe pas d’autre effluence (20 ; 200 ) de  telle que L(10 )  L(20 ). Exemple 4.27 En reprenant l’exemple 4.25, seuls les couples 2. et 3. sont des effluences maximales. L’effluence 1. n’est pas une effluence maximale parce que ft3 t4 ; t4 ! t5g est inclus dans ft2 t3 ; t3 ! t4; t4 ! t5g.

En suivant la définition 4.24, aucune contrainte n’est imposée sur l’arbre 00 excepté qu’il doit contenir un sous-arbre dénotant une effluence dont les feuilles sont précisément D. Il se peut alors qu’à partir d’un arbre  nous nous retrouvions à choisir une effluence (0 ; 00 ) où le nombre d’effluences de 00 est plus grand que celui de . De plus, le remplacement d’une effluence par une preuve par réécriture de même conclusion n’assure en rien, dans ce cadre général, que dans l’arbre résultant, le nombre d’effluences possibles ait réduit. L’association des ces deux remarques falsifie alors l’équivalence entre les systèmes corrects et les systèmes de Church-Rosser. Dans le cadre des logiques fonctionnelles où la relation à réécrire est transitive, ceci se résout simplement car le choix d’une effluence à partir d’une séquence de réécritures simple ne consiste qu’à ré-agencer l’ordre d’application de la règle de transitivité. La séquence de réécriture étant la même, le nombre d’effluences est alors identique. Donc, le remplacement d’une effluence maximale par une preuve par réécriture réduit d’une unité le nombre d’effluences maximales de départ.

Notation 4.28 (Nombre d’effluences maximales) Avec les notations de la définition 4.26, étant donnée une preuve , notons N EM (), appelé nombre d’effluences maximales de , le nombre de sous-ensembles distincts D  L() pour lesquels il existe une effluence maximale (0 ; 00) de  telle que L(0 ) = D. Dans la suite, on notera  em  pour signifier que N EM ()  N EM (0) et  pour les dérivations générées à partir de R. Enfin, chaque étape de complétion définit une transformation sur les preuves, associant à toute preuve mixte  : p(u; v) une preuve mixte 0 : p(u; v) obtenue en “contractant” une sous-preuve en une preuve par réécriture. Ici, les sous-preuves contractiles sont de deux types : 1. effluence maximale 2. preuve contenant au moins une feuille de la forme u $E v. L’important est de montrer que ces transformations terminent. En effet, si au final on obtient un ensemble de formules à orienter vide, on est alors sûr d’avoir obtenu une procédure de décision pour la théorie de départ. Comme il est usuel de le faire, une condition suffisante est à imposer pour obtenir un tel résultat. Cette condition est naturelle quand on a un choix non-deterministe sur les formules de la forme p(u; v) à orienter ou à supprimer ainsi que les règles à réduire. L’idée sous-jacente est qu’un choix accessible une infinité de fois n’est pas indéfiniment repoussé. On parle alors d’équité. Dans, notre cadre elle se traduit par : Définition 5.5 (Équité) Soit (( i ; Ri))i0 une suite telle que ( 0 ; R0) ` ( 1 ; R1) ` : : : . On dit qu’une formule de la forme p(u; v) (ou une règle ou une effluence locale) est persistante si elle figure dans tous les i à partir d’un certain rang. La suite (( i ; Ri))i0 est dite équitable si aucune formule de la forme p(u; v) n’est persistante  et si toute effluence locale  : u $R v est transformée par la formule p(u; v) à une étape ultérieure. Un autre critère important à imposer est que le remplacement de n’importe quel sous-arbre d’une preuve mixte par une preuve par réécriture n’augmente pas le nombre d’effluences maximales de départ et le réduit même si ce sous-arbre dénote une effluence maximale. Cette condition est une extension de la condition 2. (Réduction des effluences maximales) aux preuves mixtes. Dans la suite, on supposera que tout système de Knuth-Bendix satisfait cette condition. De là, on obtient le résultat suivant : Théorème 5.6 Si la suite (( i ; Ri))i0 est équitable alors pour toute preuve mixte  :u$ ;R v obtenue à une étape i, il existe un k  i et une preuve par réécriture  i i 0 : u $Rk v dans Rk . Dans le cadre des relations transitives, il est usuel de définir une mesure de complexité sur les preuves mixtes qui contient l’ordre de réduction  ci-dessus. On

26

Technique et sciences informatiques.

RÉDUIRE

;R[fu!vg [f(pi (ui;vi );i )gi2I ;R

s’il existe  : p(u; v) 2 Downp tel que RL() = fpk (uk ; vk )gk2I ` J , I 6= ; et J 6= ;  pour tout i 2 I , ui $ ;R[fu!vg vi , pour tout i 2 I , pi(ui ; vi)62FRL() ) i = , pour tout j 2 J , uj !R vj , et il n’existe pas de S 2 B () telle que :



8i 2 I; pi (ui ; vi) 2 FRL() =) ((ui ; vi) 2 S , i 2 f!; g) 8j 2 J; pj (uj ; vj ) 2 FRL() =) ((uj ; vj ) 2 S , uj !pRj vj ) Figure 2. Règle d’inter-simplification montre alors que cette mesure décroît au travers de l’application des règles de complétion. Cependant, la cette mesure de complexité profite des propriétés propres aux relations transitives. Elle peut être dénotée uniquement à partir des termes qui composent la séquence, et d’être ainsi définie comme une extension de l’ordre de réduction de départ. Ici, il n’est pas possible de généraliser une telle mesure du fait que les preuves ne peuvent en général pas être mises sous la forme d’une séquence. Ainsi, ce ne sont pas les termes qui importent mais les instances des règles de DownE utilisées dans la preuve.

5.1. Traitement des règles redondantes Les règles de complétion données dans la figure 1 peuvent engendrer des procédures de complétion non-déterministes et peu efficaces. En effet, il est possible de traîner, tout au long de l’exécution, des règles de réécriture pouvant être déduites des autres règles (et donc un système de réécriture redondant). Un moyen de répondre à ce problème serait d’ajouter la règle de la figure 2. Succinctement, la règle RÉDUIRE consiste à rechercher une instance  de DownE dont la conclusion est l’une des règles de réécriture de R, et à remplacer cette règle dans R par une règle pour chaque prémisse de  qui se réécrit (celles indicées par J ), et dans par une formule pour chaque prémisse qui ne se réécrit pas (celles indicées par I ). Pour ces dernières, l’ordre d’orientation associé ne doit pas, comme précédemment, dénoter une effluence. Dans le cadre de la logique équationnelle, elle se traduirait alors par les deux règles suivantes : + ;R[fu!vg 0 1. RÉDUIRE 1 [f(u=v0 ;)g;R si v R v 0 0 Ceci s’obtient à partir de l’instance de la transitivité u=vu=vv =v . Selon le sens de ré+ écriture appliqué entre v et v0 , deux cas peuvent se présenter : soit v !R v0 et donc par une application directe de la règle de complétion ORIENTER 1, on a directement que u ! v0 , soit v + R v0 et dans ce cas l’équation u = v peut être supprimée à l’étape



Une axiomatisation de la réécriture

27

suivante par application de la règle SIMPLIFIER. Pour ces deux raisons, la règle de complétion usuellement donnée est la suivante : + ;R[fu!vg 0 RÉDUIRE 1 ;R[fu!v0g si v !R v 2.

RÉDUIRE

2

;R[fu!vg [f(u0=v;)g;R

si u !R u0

0 0 Ceci s’obtient à partir de l’instance de la transitivité u=uu=uv =v . Comme précédemment, quel que soit l’ordre d’orientation qui sera choisi dans la suite des étapes de complétion pour l’équation u0 = v, cela donnera toujours une preuve par réécriture, d’où le symbole “ ” associé à l’équation u0 = v dans . Sans une condition d’ordre entre les règles de réécriture, il est connu que cette règle ne fait pas décroître la complexité des arbres de preuves au travers de la complétion. De plus, elle peut même détruire la préservation de la théorie équationnelle de départ. Cependant, cette condition d’ordre entre les règles de réécriture est fondée sur le filtrage et la relation “être sous-terme de” qui sont difficilement modélisables dans ce cadre générique (on retrouve le même problème que pour la modélisation de la notion de paire critique).



6. Application à la logique conditionnelle partielle Nous avons étudié la réécriture au sein de la logique des treillis et de la logique conditionnelle partielle multi-sortes avec égalité existentielle [2]. Nous vous présentons ici la deuxième application. La réécriture conditionnelle a été largement étudiée dans la littérature [8, 10, 16, 14]. Ici, nous étendons cette dernière d’une part aux fonctions partielles et d’ autre part à la résolution du problème du mots pour des formules de la formes ) t = t0 (les travaux cités ci-dessus ne se sont intéressés qu’à montrer par réécriture des équations simples non conditionnées). Par manque de place, nous invitons le lecteur à se reporter à notre article [1] pour la présentation du système formel à prédicats associé, et l’étude de la semi-commutation entre les différents schémas de règles. Rappelons ici simplement que les formules manipulées sont de la forme t = t0 et D (t) oú t et t0 sont des termes avec variables de même sorte et est une conjonction finie d’équations de la forme u = v, et qu’elles signifie respectivement ) t = t0 et ) D(t). Enfin, rappelons que l’étude de la semi-commutation à partitionner les règles de la façon suivante : pour toute conjonction d’équations , U pf= g est défini par l’ensemble des instances des règles de substitution, remplacement, monotonie, et symétrie, et Downf= g est défini par les instances des règles de transitivité et du modus-ponens. Les relations à réécrire étant symétriques, les systèmes de réécriture se définissent par des couples (; !) oú  est un ensemble de prédicats de définissabilité D (t) et ! est une famille indexée par toutes les conjonctions finies d’équations. Les feuilles de réécriture fixées pour toute instance  : u= uv= vw= w de la règle de transitivité sont FRL() = fu = v; v = wg. À l’inverse, celles associées à toute 0 0 instance du modus-ponens  : u= ^v=vu0 ^= 0 u 0 u0v= ^ 0 v sont FRL() = fu = u0 g.

^

28

Technique et sciences informatiques.

Le sens de la réécriture de la prémisse de droite importe peu. La seule chose requise est qu’elle se réécrit. De part la définition de cette logique comme extension de la logique équationnelle, le retrait des schémas de bouclage simple consiste simplement aux retraits des instances = v ). de la symétrie ( uv=

u Une étape de réécriture est alors définie par : t ! R t0 ssi il existe u ! 0 v 2 R,  : V ! T (V ), une conjonction 00 et un contexte C tel que : — 8x 2 V ar(u) [ V ar(v); ` D 0 ((x)) — = ( 0 ) ^ 00 — ` D (C [(u)℄) — t = C [(u)℄ et t0 = C [(v)℄ À cause du modus-ponens, les dérivations ne peuvent pas être représentées sous la forme de séquences d’étapes de réécriture comme c’est le cas quand on ne considère que la transitivité comme fermeture (il suffit de considérer la séquence (t !uR=v^ t0 ; t0 !uR=v^ t00 ; u ! R v)). Cependant, on dispose d’une représentation linéaire des arbres dénotant de telles dérivations. En effet, on peut définir les dérivations de la façon suivante :

!

R t2 ! R + aboutit à la conclusion t1 !R tn — toute séquence t1

t3

! R

:::

! R

tn est une dérivation. Elle

0 + ^u=v^ — si d1 est une dérivation aboutissant à la conclusion t1 !R t2 , et d2 est 0

^

+ une dérivation aboutissant soit à la conclusion u !R v ou bien à l’écriture inverse, 0 + ^ alors (d1  d2) est une dérivation aboutissant à la conclusion t1 !R t2 . En suivant la définition 4.15, une relation de réécriture pour une telle logique est la fermeture transitive de toute relation binaire définie sur les termes fermée par substitution et contexte. En effet, le modus-ponens n’influe pas sur les relations de réécritures. On peut donc utiliser tous les ordres de simplifications définis dans le cadre de la logique équationnelle. Il nous reste alors à définir les notions de bonne et de mauvaise preuve. Les instances de la règle du modus-ponens ne disposant que d’une feuille à réécrire fixée, ces notions sont vides pour ces dernières. Enfin, pour la règle de transitivité, elles sont équivalentes aux notions de pics et de vallées. Une preuve par   réécriture est donc tout élément de !R Æ(!R ) 1, et une effluence est tout élément

   de (!R) 1 Æ !R (attention, !R prend en compte la fermeture par modus-ponens). En suivant les mêmes points que l’exemple 4.30, on démontre aisément que le système formel à prédicats associé à la logique conditionnelle partielle est de KnuthBendix. L’algorithme de complétion se définit alors en utilisant les mêmes règles de complétion de la logique équationnelle auxquelles on ajoute les deux règles suivantes pour prendre en compte la fermeture par modus-ponens :

29

Une axiomatisation de la réécriture

SIMPLIFIER

M.P (1)

SIMPLIFIER

M.P (2)

[ft= ^ 0 t0g;R [ft= ^u=v^ 0 t0g;R [ft= ^ 0 t0 g;R [fu= ^ 0 vg;R

0

0

+ ^ + ^ si u !R v ou bien u(!R 0 + ^u=v^ 0 t si t !R

) 1v

Il est aisé d’adapter les règles d’inter-simplification usuelles à la logique équationnelle dans le cadre de cette logique. En effet, la réécriture équationnelle conditionnelle traite aussi de réécriture de termes dans le cadre de congruences.

7. Conclusion Dans ce papier, après avoir rappelé nos premières définitions sur une axiomatisation de la réécriture utilisée comme nouveau système déductif de preuves et oú les aspects opérationnels étaient exclus, ainsi que l’établissement de sa complétude par rapport au système d’inférence de la logique, connu aussi sous le nom de logicalité, nous avons donné une axiomatisation abstraite de la réécriture prise dans son sens opérationnel. Ainsi, de façon générique (c’est-à-dire indépendamment de la logique sous-jacente), nous avons modélisé les notions usuelles de systèmes de réécritures, de dérivations, de terminaison, de mauvaises et bonnes preuves (équivalent des pics et des vallées pour les relations transitives), ainsi que de preuve par réécriture. Nous avons alors donné des conditions suffisantes permettant d’assurer dans ce cadre générique l’équivalent des propriétés de Church-Rosser et du Lemme de Newman, fondement de la procédure de Knuth-Bendix. À partir de là, nous avons proposé une procédure de complétion à la Knuth-Bendix générale et avons montré la correction de cette dernière.

Références [1] M. Aiguier, D. Bahrami, and C. Dubois. On a generalised logicality theorem. In Artificial Intelligence and Symbolic Computation (AISC02), L.N.A.I. Springer-Verlag, 2002. to appear, available at ftp://ftp.lami.univevry.fr/pub/specif/aiguier/logicality.ps. [2] E. Astesiano and M. Cerioli. Free objects and equational deduction for partial conditional specifications. Theo. Comp. Sci., 152(1):91–138, 1995. [3] F. Baader and T. Nipkow. Term Rewriting and All That. Cambridge University Press, 1998. [4] L. Bachmair. Canonical Equational Proofs. Progress in Theoretical Computer Science. Birkhäuser springer, 1991. [5] L. Bachmair, N. Dershowitz, and J. Hsiang. Orderings for equational proofs. In 1st IEEE Symp. on Logic in Comp. Sci., pages 346–357. IEEE Computer Society Press, 1986. [6] L. Bachmair and H. Ganzinger. Rewrite techniques for transitive relations. In 9th IEEE Symposium on Logic in Computer Science, pages 384–393, 1994.

30

Technique et sciences informatiques.

[7] J. Barwise. Axioms for abstract model theory. Ann. Math. Logic, 7:221–265, 1974. [8] J.-A. Bergstra and J.-W. Klop. Conditional rewrite rules: Confluence and termination. Journal of Comp. and Syst. Sci., 32:323–362, 1986. [9] B. Buchberger. Gröbner bases: An algorithmic method in polynimial ideal theory. In N.-K. Bose, editor, Multidimensional Systems Theory, pages 184– 232, 1985. [10] N. Dershowitz, M. Okada, and G. Sivakumar. Canonical conditional rewrite systems. In E. Lusk and R. Overbeek, editors, 9th Int. Conf. on Automated Deduction, volume 310, pages 538–549. Springer-Verlag, 1988. [11] Hartmut Ehrig, Martin Grose-Rhode, and Uwe Wolter. On the role of category theory in the area of algebraic specification. In M. Haveraaen, O. Owe, and O.-J. Dahl, editors, Proc. 11th Workshop on Algebraic Data Type Specification, volume 1130 of L.N.C.S., pages 17–48. Pringer-Verlag, 1995. [12] J. Fiadeiro and A. Sernadas. Structuring theories on consequence. In Recent Trends in Data Type Specification, volume 332 of L.N.C.S., pages 44–72. Springer-Verlag, 1988. [13] R. Freese, J. Jecek, and J.-B. Nation. Term rewriting system for lattice theory. Journal of Symb. Comp., 16:279–288, 1993. [14] H. Ganzinger. A completion procedure for conditional equations. Journal of Symb. Comp., 11:51–81, 1991. [15] J.-A. Goguen and R.-M. Burstall. Institutions: abstract model theory for specification and programming. Journal of The Association for Computing Machinery (ACM), 39(1):95–146, 1992. [16] S. Kaplan. Conditional rewrite rules. Theo. Comp. Sci., 33:175–193, 1984. [17] D.-S. Lankford. Some approaches to equality for computational logic: A survey and assessment. Memo ATP-36, Automatic Theorem Proving Project, University of Texas, Austin, 1977. [18] J. Levy and J. Agusti. Bi-rewriting, a term rewriting technique for monotonic order relations. In C. Kirchner, editor, Rewriting Techniques and Applications (RTA), volume 690 of L.N.C.S., pages 17–31. Springer-Verlag, 1993. [19] J. Levy and J. Agusti. Bi-rewrite systems. Journal of Symbolic Computation, 22:279–314, 1996. [20] J. Messeguer. General logics. In H.-D. Ebbinghaus, J. Fernandez-Prida, M. Garrido, D. Lascar, and M. Rodriguez Artalejo, editors, Logic Colloquium’87, pages 275–329. North-Holland, 1989. [21] A. Salibra and G. Scollo. A soft stairway to institutions. In M. Bidoit and C. Choppy, editors, Recent Trends in Data Type Specification, volume 655 of L.N.C.S., pages 310–329. Springer-Verlag, 1993. [22] M. Schorlemmer. Bi-rewriting rewriting logic. In Proc. 1 st Intl. Workshop on Rewriting Logic and its Applications, E.N.T.C.S. North Holland, 1996.

Une axiomatisation de la réécriture

31

[23] W.-M. Schorlemmer. On Specifying and Reasoning with Special Relations. PhD thesis, Institut d’Investigaciò en Intel.ligència Artificial, University of Catalunya, 1999. [24] A. Sernadas, C. Sernadas, and C. Caleiro. Fibring of logics as a categorial construction. Journal of Logic and Computation, 9(2):149–179, 1999. [25] A. Sernadas, C. Sernadas, C. Caleiro, and T. Mossakowski. Categorial fibring of logics with terms and binding operators. In D. Gabbay and M. de Rijke, editors, Frontiers of Combining Systems 2, Research Studies Press, pages 295– 316, 2000. [26] G. Struth. Canonical Transformations in Algebra, Universal Algebra and Logic. PhD thesis, Institut Für Informatik, University of Saarlandes, 1998. [27] Georg Struth. On the word problem for free lattices. In H. Comon, editor, Proc. of Rewrite Techniques and Applications (RTA’97), volume 1232 of L.N.C.S., pages 128–141. Springer-Verlag, 1997. [28] Georg Struth. Knuth-bendix completion for non-symmetric transitive relations. In M. van den Brand and R. Verma, editors, Proc. of Second International Workshop on Rule-Based Programming (RULE2001), volume 59 of Electronic Notes in Theo. Comp. Sci. Elsevier Science Publishers, 2001. [29] A. Tarlecki. On the existence of free models in abstract algebraic institutions. Tech. Comp. Sci., 37:269–304, 1985. [30] V. van Oostrom. Sub-birkhoff. Draft, 13 pages, available at www.phil.uu.nl/ oostrom/publication/rewriting.html. [31] T. Yamada, J. Avenhaus, C. Loría-Sáenz, and A. Middeldorp. Logicality of conditional rewrite systems. Theo. Comp. Sci., 236(1,2):209–232, 2000.

32

Technique et sciences informatiques.

Annexe : Preuves Démonstration du fait 4.4 page 11 Par définition, tout arbre de réécriture  : p(u; v) construit uniquement à partir d’un sous-ensemble des n instances d’un schéma de bouclage a pour conclusion un élément de RL(i). Donc p(u; v) 2 RL(i ), ce qui signifie qu’il existe une 1in 1in instance i parmi les n instances du schéma de bouclage telle que p(u; v) 2 RL(i). Il suffit alors de connecter  à la place de la formule p(u; v) dans i. On obtient bien un arbre de réécriture construit lui aussi à partir des n instances du schéma de bouclage simple et sur lequel on peut recommencer le même traitement.

[

[

2

Démonstration du théorème 4.18 page 16 ()) Hypothèse : R termine.   Posons =! [( ) 1 et >=)R. À toute dérivation, on peut donc associer une et une seule réduction, et inversement. La terminaison de R implique que toute suite de dérivations 1 )R 2 )R : : : soit finie. Par conséquent, la relation > est bien fondée. Enfin,  est par définition fermée par les arbres de U p℄E et DownE selon les deux derniers points de la définition 4.15.

!

(() Hypothèse : il existe une relation de réduction (; ) satisfaisant : 8p 2 E; !p [( p ) 1 . Posons, )R la restriction de > à toutes réductions dénotant une dérivation. Par hypothèse, La relation > est bien fondée. Ceci signifie que toute chaîne de réductions 1 > 2 > : : : est finie. Puisqu’à chaque dérivation correspond une réduction, toute suite de dérivations 1 )R 2 )R : : : est finie. Par conséquent, R termine pour )R.

2

Démonstration du théorème 4.31 page 22 Montrons que les implications 1 ) 2 ) 3 ) 1 sont satisfaites. (1 ) 2) Hypothèse : R est localement correct. Pour démontrer cette implication, nous allons utiliser le principe d’induction mathématique. Il nous faut alors caractériser le prédicat P et la relation  bien-fondée. Puisque nous souhaitons montrer que R est correct, nous choisissons le prédicat P défini sur les preuves par effluence de la façon suivante : P () si et seulement si il existe une preuve par réécriture de même conclusion que . Le système de réécriture terminant, nous prenons donc égale à  la relation bienfondée  1. Supposons alors que pour toute effluence 0 telle que 0  , on ait P (0). Avonsnous P () ? Cette question se traduit par : existe-t-il une preuve par réécriture de même conclusion que , que l’on peut obtenir à partir d’effluences maximales plus petites selon l’ordre  ?

 Soit  une effluence locale. Puisque

R est localement correct, on a vu que les

Une axiomatisation de la réécriture

33

éléments minimaux selon  étaient nécessairement des effluences locales. Or, par cette même hypothèse, nous savons qu’il existe une preuve par réécriture de même conclusion pour ces dernières.  Sinon,  est une preuve par effluence (qui peut être elle-même si elle dénote une effluence locale). Par définition des systèmes de Knuth-Bendix,  possède une effluence locale. Par hypothèse de départ, il existe une preuve par réécriture équivalente à cette dernière dont le remplacement dans  caractérise une preuve 0 dont, par définition des systèmes de Knuth-Bendix, les effluences maximales (1; 2) satisfaisant 2 em 0 sont plus petites selon l’ordre . Par hypothèse d’induction, chacune peut être remplacée par une preuve par réécriture de même conclusion. De plus, par définition des systèmes de Knuth-Bendix, le remplacement de toute effluence maximale par une preuve par réécriture de même conclusion, réduit le nombre d’effluence maximale de départ. Enfin, ces dernières effluences maximales satisfaisant les mêmes conditions sur le nombre d’effluences maximales, sont aussi plus petites par l’ordre  que . Nous aboutissons nécessairement en répétant ce procédé un nombre fini de fois à une preuve par réécriture. (2 ) 3) Hypothèse : R est correcte. Ceci se démontre par récurrence sur le nombre d’effluence maximale d’une preuve.

 si  n’a pas d’effluence maximale alors  est nécessairement une preuve par réécriture.  Soit (0 ; 00) une effluence maximale de  telle que 00 em . Soit 000 une preuve par réécriture de même conclusion que 0 . Par définition des systèmes de Knuth-Bendix, on sait que 00[000 ℄! : 00 0 em 1 et j =  =) 2 = 00[000 ℄! . !

Par le fait que le remplacement d’un sous-arbre dans une preuve mixte par une preuve par réécriture n’augmente pas le nombre d’effluences maximales, et que la transformation d’une effluence maximale peut se faire par un nombre fini de remplacements successifs d’effluences locales par des preuves par réécriture,  est bienfondée. Pour prouver le théorème, on raisonne alors par induction bien-fondée sur .  Soit  : u $ i ;Ri v une preuve mixte. Par définition, si  n’est pas une preuve par réécriture dont les règle utilisées sont réduites, c’est que soit il existe une feuille de la forme u0 $ i v0 , soit  possède une effluence maximale (0 ; 00 ), soit il existe une règle non réduite parmi les feuilles de . Par équité, u0 $ i v0 aura disparu dans un j1 avec j1 > i. L’effluence maximale peut-être transformée en une preuve par réécriture à l’étape i, ou bien il existe une effluence locale non réductible à cette étape qui par équité sera réductible à une étape j2 > i. Enfin, toujours par équité, la règle réductible sera contractée en une preuve par réécriture à une étape j3 > i. Dans tous les cas, on obtient une preuve mixte 0 à une étape j > i satisfaisant   0 . Par hypothèse d’induction, il existe une étape k > j , telle que p(u; v) admette une preuve par réécriture dans Rk . 2