• No se han encontrado resultados

TítuloAlgoritmos de unificación ecuacional en teorías xerais

N/A
N/A
Protected

Academic year: 2020

Share "TítuloAlgoritmos de unificación ecuacional en teorías xerais"

Copied!
227
0
0

Texto completo

(1)

(2) FACULTADE DE INFORMATICA. TESE DOUTORAL. Algoritmos de Unificación Ecuacional en Teorías Xerais Autor : Luis Carlos Cachafeiro Chamosa. presentada no DEPARTAMENTO DE COMPUTACION para a obten.ción do. GRADO DE DOCTOR EN INFORMATICA. Prof. Dr. D. Xosé Luis Freire Nistal Tribunal Califi.cadór Presidente :. Prof. Dr. D. José Luis Maté Hernanciez. Vocais :. Prof. Dr. D. José Alberto Jaén Gallego Prof. Dr. D. Miguel Angel López López P^•of. Dr. D. Juan Pazos Sierra. Secretario :. I'rof. Dr. D. Antonio Blanco Ferro. A Coruña, Xullo 1994. ^.

(3) Os meus pais A Pepi e a Alba. Agradezo os compañeiros do Laboratorio de Fundamentos da Computación e Intelixencia Artificial LFCIA do Departamento de Computación pola súa colaboración neste traballo. Agradezo en especial o profesor Freire polos seus consellos e adicación. Agradézolle tamén a Pepi polas "neuras" que tivo que soportar..

(4) Indice 3 3 5 7. 1. Introducción 1.1 Motivación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2 Temas relacionados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3 Obxectivo da tese . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 2. Nocións e estructuras previas 11 2.1 Estructuras de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11. 2.1.1. Termos e ustitucions . . . . . . . . . . . . . . . . . . . . . . . . 18. 2.1.3 2.1.4. Instanciación, Matching e Unificación . . . . . . . . . . . . . . . Equivalencia de sustitucións e idempotencia . . . . . , . . . . .. 2.1.5 2.1.6 2.1.7. Ecuacións e igualcia,de ecuacional . . . . . . . . . . . . . . . . .. 23 25. 28 Alxebras e Congruencias . . . . . . . . . . . . . . . . . . . . . . 29 Teorías ecuacionais . . . . . . . . . . . . . . . . . . . . . . . . 33. 2.2. Igualdade Ecuacional e Reescritá . . . . . . . . . . . . . . . . . . . . . 35 2.2.1 Reescrita e Reescrita condicional . . . . . . . . . . . . . . . . . 35 2.2.2 Con$uencia e conxuntos pechados . . . . . . . . . . . . . . . . . 40. 2.3. Categoría de Substitucións e Igualdade . . . . . . . . . . . . . . . . . . 46 Categorías . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 2.3.1 2.3.2 2.3.3 2.3.4. 3. Conxuntos, Relacións e Arbores . . . . . . . . . . . . . . . . . . 11 .,. 2.1.2. Teorías alxebraicas . . . . . . . . . . . . . . . . . . . . . . . . . 50 Categoría de substitucións . . . . . . . . . . . . . . . . . . . . . 51 Igualdade, 2-Categorías e Sesqui-Categorías . . . . . . . . . . . 58. Unificación de Termos Libres ?1 3.1 Algoritmos de Unificación . . . . . . . . . . . . . . . . . . . . . . . . . 71 ^ 3.1.1 Historia da unificación . . . . . . . . . . . . . . . . . . . . . . . 71 3.1.2 Algoritmos que utilizan a transformación de ecuacións. ..... 84 3.1.3 Comparación entre os algoritmos . . . . . . . . . . . . . . . . . 92 3.2 Formas de acelerar a unificación . . . . . . . . . . . . . . . . . . . . . . . 94 3.2.1 Máquinas de Unificación e Técnicas de Codificación ....... 95 3.2.2 Unificación Paralela . . . . . . . . . . . . . . . . . . . . . . . . 96 3.3 Propiedades da Unificación e Unificacióñ de Substitucións ........ 99 1.

(5) 2. ^ 3.3.1 3.3.2. Algoritmos de Unificación Ecaucional. Unificación ^ en casos particulares . . . . . . . . . . . . . . . . . . Unificación de substitucións . . . . . . . . . . . . . . . . . . . . .. 99 101. 4. Unificación Ecuacional 109 4.1 Unificación Ecuacional . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 4.1.1 IJnha visión xeral da Unificación Ecuacional. . . . . . . . . . . . 109 4.1.2 Unificación Ecuacional e Narrowing . . . . . . . . . . . . . . . . 115 4.2 E-unificación de pares de substitucións . . . . . . . . . . . . . . . . . . 124 4.3 E-unificación en teorías xerais . . . . . . . . . . . . . . . . . . . . . . 128 4.3.1 Algoritmos xerais de Unificación Ecuacional . . . . . . : . . . . 128 4.3.2 E-Unificación de substitucións en teorías xerais ......... 135 4.3.3 Abstracción e Unificación Ecuacional . . . . . . . . . . . . . . . 138 4.3.4 Narrowing con Abstracción . . . . . . . . . . . . . . . . . . . . . 143 4.3.5 Corrección e completitude do novo algoritmo . . . . . . . . . . . 148 4.3.6 Melloras no novo algoritmo . . . . . . . . . . . . . . . . . . . . 1.55 4.3.7 Comparación con outros métodos . . . . . . . . . . . . . . . . 1.59. 5. Conclusións e Líneas de Investigación 161 5.1 Conclusións . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161 5.2 Líneas de investigación . . . . . . . . . . . . . . . . . . . . . . . . . . . 162 Bibliografía. 165. A Implementación do procedemento de E-unificación. 179. B Resultados Comparativos. 215. Indice analítico. 221.

(6) Capítulo 1 Introducción 1.1. Mot ivación. En computación, a unificación convertíuse nun campo de intensa actividade. Nunha forma abstracta, o proceso de unificación pódese expresar^ como : dadas as descripcións s y t achar os obxectos w que se adaptan ás descripcións s e t [107].. Trátase, polo tanto, dun mecanismo esencial para extraer información relevante a partires de pares de datos obrigados a ser identificados. ^ Se a identificación non é posible, esta situación debe ser rápidamente detectada. Se as instanciacións das expresións pódense facer coincidir sintácticamente, diremos que se trata da unificación de termos libres e se coinciden como elementos dunha mesma clase ecuacional nunha teoría E, entón se chamará E-unificación. Na automatización do coñecemento soense empregar descripcións a xeito de reglas como : lo^ro l i -^ rl. j^ -^ rn. para expresar a información acumulada nun determiñado campo. Neste proceso de mecanización, soe ser fundamental coñecer se a descripción actual s pode facerse coincidir con algún dos l= previos, en cuio caso, a regla lt -^ r= é activada. Noutros casos é importante saber se dúas descripcións dadas son representacións do mesmo obxecto. Na figura 1.1, ^ é a instanciación que identifica a s e a t e contén a información extraída, (s)^ é a nova expresión resultado da unificación.. 3.

(7) 4. Algoritmos de Unificación Ecaucional. Figura l.l: Unificación dos termos s, t. 6. 6. Esta operación de identificación úsase en campos como a visión por ordenador, o procesamento da lingoaxe natural, os sistemas de computación alxebraica, en deducción automática e outros [168, 107]. . Nalgúns casos, a descripción actual é concréta (sen parámetros), mentras que en moitos outros os datos son flexibles ó admitir variables. A operación de identificación de obxectos no primeiro caso é ^oñecida como matching, e é polo tanto, un caso particular de unificación. A potencia da unificación frente ás diversas formas de matching radica especialmente en que permite o paso das variables no5 dous sensos. Ten na súa contra a propia complexidade do paso de información nas dúas direccións. Cando as descripcións son a súa vez termos dunha álxebra ecuacional, a unificabilidade de s e t pódese ver como a xéralización dos métodos de resolución de ecuacións. Dada a gran cantidade de situacións posibles no caso ecuacional, baseadas nas propiedades das estructuras alxebraicas, desenroláronse diferentes técnica ^ para obter métodos de unificación ecuacional. En diferentes campos (proba automática, programación lóxica con igualdade, sistemas de reescrita módulo ecuacional entre outros) compren algoritmos de unificación ecuacional ben para teorías específicas ou ben para un grupo amplo de teorías. Noutros casos, ^en vez de utilizar directamente un método de unificación ecuacional, aproveitáronse mecanismos de ésta para o tratamento da igualdade neses campos (e.g. o cálculo RPC de Snyder e Lynch[172] na proba automática e o narrowing para enriquecer as lingoaxes funcionais con variables lóxicas e unificación[146, 128]).. Nesta tese relaciónanse os obxectos empregados na teoría de unificación cos da teoría de catégorías. Moitos elementos da ciencia da computación nacen das investigacións nos campos da lógica e a álxebra. A teoría de categorías xurde da necesidade dos alxebristas e xeómetras por captar a razón intrínseca das súas propias construccións, basándose máis nas relacións entre os obxectos que nas súas propiedades internas. Por elo, convírtese nunha ferramenta eficaz para a descripción, pois permite englobar as diferentes lingoaxes matemáticas, sendo especialmente axeitado para as transformacións entre as distintas lingoaxes..

(8) Capítulo 1. 5. Na computación, a teoría de categorías é requerida pola xeralidade das súas construccións respecto da teoría de conxuntos, o que se observa no concepto computacional de función, mellor captado pola noción de morfismo nunha categoría, que a súa correspóndente noción conxuntista. Amais, calquera acceso á estructura interna dos obxectos é expresamente evitada xa que as propiedades son consecuencia das relacións entre morfismos e non dos obxectos empreados. Na computación é fundamental a detección das propiedades xerais dun programa que son independentes da súa implementación, co obxectivo de obter unha semántica clara dos programas.. A teoría de categorías ofrece unha lingoaxe formalizada e axeitada para dar as propiedades abstractas das estructuras. Como sinala Rydeheard [159] : Category theory is largely constr^cctive. This means that category theory may be considered as compnter programming, albeit of a rather high level of f^cnctionality. Readers of this sho^cld be aware that when they browse through te^tbooks on category theory they are reading very sophisticated programs!. Por elo, as categorías son usadas cada día con maior éxito na computación e.g. na especificación de programas; como ferramenta matemática na semántica das lingoaxes de programación; as categorías cartesiáns pechadas como semántica das lingoaxes tipadas de segundo orde[161, 5, 15].. 1.2. Temas relacionados. A decidibilidade e o tipo de E-unificación dunha teoría dependen fortemente das súas propiedades alxebraicas. Un exemplo da complexidade da unificación ecuacional é a infinitariedade e decidibilidade da unificación asociativa[139], mentras que a unificación asociativa coa distributividade pola esquerda e pola dereita é indecidible[177] e a asociativa e conmutativa é finitaria. Dada a complexidade da unificación ecuacional, teñen aparecido diversas técnicas para obter E-unificadores : A primeira consiste no desenrolo de algoritmos específicos de E-unificación para teorías con propiedades dadas como a asociatividade, conmutatividade, idempotencia, identidade. Algunhas lingoaxes de programación como OBJ3 e MAUDE[76, 125], dispoñen de rutinas para o matching e a unificación en presencia destes axiomas, sendo tratados os axiomas como atributos das operacións. Unha segunda técnica consiste na descomposición da teoría en subteorías, de forma que tódolos operadores e axiomas da primeira deben selo dunha soa das subteorías. Se existen algoritmos de unificación ecuacional para as subteorías, entón baixo certas condicións bastante xerais[11], pódense obter algoritmos de E-unificación para a teoría inicial. O problema xurde se se desexa introducir algún axioma que empregue operadores de varias subteorías, o que ten sido resolto recentemente, nun caso bastante simplificado, por Ringeissen[149]. Dada a complexldade da unificación ecuacional, cabe supoñer unha limitación na efectividade do método de combinación de teorías..

(9) 6 .. Algoritmos de Unificación Ecaucional. Unha tercera vía consiste en procurar a E-unificación no senso que Siekmann [168] denomina universal ^cnification algorithm : Dada unha clase ^ de teorías, un algoritmo que acepta como entradas tanto ó par de termos a unificar como á teoría E E E e xera un conxunto completo de E-unificadores do par. Incorporando ós axiomas específicos da teoría os axiomas de igualdade, a regra de resolución pódese ver como o primeiro algoritmo universal de E-unificación. O mecanismo de unificación universal máis coñecido é o de narrowing[64]. Este é completo para aquelas teorías cunha presentación canónica[90] e existe unha ampla variedade de técnicas que melloran o narrowing reducíndo o número de solucións redundantes[91, 147, 22] procurando a terminación[148, 37], posto .que o procedemento de narrowing non é necesariamente finitario (que unha teoría sexa canónica non implica a finitariedade da súa E-unificación). A completitude do narrowing tense usado para tratar coas funcións nunha lingoaxe de programación lóxica con igualdade [76]. Outra forma de integrar a programación lógica e funcional, é a de incorporar a unha lingoaxe funcional un mecanismo de resolución, conservando a sintaxis funcional e usando narrowing para a semántica operacional[146, 128]. Kirchner[103] obtivo un método que proporciona algoritmos de E-unificación como extensión do algoritmo de unificación de termos libres de Martelli e Montanari[119]. Para elo, sobre un problema dado, actúan unha serie de regras de transformación, sendo necesarios tres tipos de regras para a unificación ecuacional : a descomposición do problema ou eliminación do operador superior, o mesturado ou reunión de terrnos unificados cunha mesma variable e as regras de mutación que-empregan directamente os axiomas. Este terceiro paso é específico de cada teoría. Para as chamadas teorías sintácticas, Kirchner probou que a mutación pódese automatizar. As teorías sintácticas inclúen moitas das teorías coñecidas (como as asociativas e conmutativas) pero non é sequera semidecidible se unha teoría é sintáctica[106]. Para o caso xeral, tardaron en aparecer algoritmos universais de unificación ecuacional máis efectivos que a resolución cos axiomas de igualdade e que a paramodulación aplicada en calquera factor[38]. Algúns destes novos algoritmos, [71, 50] empregan unha variante do método de Kirchner, sustituíndo a mutación específica de cada teoría por unha nova regra de mutación moi laxa. Estes son chamados métodos top-down [71, 50] e pódese decir que as derivacións que se obteñen están guiadas polos operadores s^cperiores. Os métodos down-^cp en cambio, imitan o mecanismo de narrowing, o cal é completo se se procede a unha complección sen fallo (unfailing complection) de pares críticos[72, 56, 129]. Os E-unificadores están dirixidos polos propios pares críticos e a secuencia que se obtén por estes métodos atópase bastante cerca da propia derivación que proba a igualdade das instanciacións.. Para realizar unha lingoaxe lóxica e funcional que combine os átomos ecuacionais e os predicados ordinarios, téñense empregado sistemas ecuacionais condicionais como nas lingoaxes BABEL e K-LEAF[128, 74], onde os predicados son considerados como funcións booleáns e o átomo p é equivalente á ecuación p= true. Nese caso, o procedemento de narrowing non é completo nen sequera no caso canónico se existen.

(10) Capítulo 1. 7. variables extra (variables da parte condicional non presentes na cabeza). A unificación ecuacional en teorías xerais con presentacións condicionais, ata agora só teñ sido estudiado por Delsart [50], cun método de E-unificación do tipo top-down. Rydeheard e Burstall[161], estudiaron a unificación dende un punto de vista categórico, mostrando que o mecanismo de unificación de Robinson[150] é o resultado de aplicar, na categoría que chamaremos de substitucións 1, resultados xerais de teoría ^ ^ de categorías. Baader[8] usou a categoría das álxebras de termos sobre conxuntos finitos e os seus homomorfismos para obter resultados acerca do tipo de unificación das teorías chamadas conmutativas. O seu complemento alxebraico víu dado por Nutt e Baader[12] onde se mostra a doble interpretación (alxebraica e categórica) déstes resultados.. Os morfimos na categoría de substitucións, teñen moi restrinxido o seu dominio de actuación. Baader[9] denomina ^cnification restricted a esta forma de unificación, na que os morfismos non poden mover calesquera variables, frente á ^cnification ^cnrestricted para a cal as sustitucións poden actuar tamén sobre conxuntos de variables fora do problema dado. Rydeheard e Stell[162] mostraron que, empregando a noción de 2-categoría, o narrowing pódese incorporar á unificación ecuacional na categoría de substitucións. Na 2-categoría, as substitucións son 1-células e unha de elas pode ser remplazada por outra ecuacionalmente equivalente se existe algunha 2-célula que leve unha na outra. Sen embargo, dado o interés por empregar presentacións condicionais e que, como se probará, a noción de 2-categoría non é ápropiada para incorporar a igualdade condicional, utilízase a noción de sesqui-categoría [?]. Stell considera que as sesquicategorías son máis axeitadas para expresar a igualdade, o que se confirma ó probar aquí que, a diferencia da 2-categoría, a sesqui-categoría permite a incorporación das ecuacións condicionais como 2-células dela.. ^. ^. 1.3. ^bxectivo da tese. 0 principal obxectivo desta tese, é a obtención dun método de E-unificación na categoría de substitucións, que xeralice a forma de narrowing empregada por Rydeheard e Stell para teorías canónicas a teorías xerais. 0 novo algoritmo, pódese ver como : • unha extensión da forma de narrowing empregada por Rydeheard e Stell, que permite amais o emprego de presentacións condicionais.. • un método de unificación ecuacional down-u^ máis depurado que os xa existentes, tanto por incorporar ecuacións condicionais, como pola eliminación de moitas das solucións redundantes dos anteriores métodos. 1 aquí se diferenciará entre substitución e sustitucións..

(11) 8. Algoritmos de Unificación Ecaucional. Se se compara cos procedementos previos, obsérvase que mellora notablemente o realizado por pougherty e Johann[56] que é o que impón condicións máis fortes á aplicación de axiomas. O que se desenrola nesta tese, atópase a medio camiño entre este e o propio narrowing. Para elo probaráse que : se os ^vroblemas a resolver (tanto os iniciais como os intermedios^ son lineais, o noso método coincide con narrowing2, mentras que se os axiomas son lineais o de Dougherty e Johann e o aquí proposto son equivalentes. Dado que a linealidade dos axiomas pola esquerda ten sido imposta con algunha frecuencia (e.g. [87] ) como unha das condicións relevantes para lograr a canonicidade, nos casos máis difíciles de tratar, é cando o noso método faise precisamente máis efectivo que o de Dougherty e Johann. Método Problema linealidade unificandos e consecuencias linealidade de axiomas caso xeral. Dougherty e Johann. Novo Método Narrowing equivalentes redundancias > < - - - > equivalentes non é < - - - > completo redundancias > > redundancias non é completo completo completo. Ta O maior control nas variables que se precisa ó traballar na categoría de substitucións, obliga a diferenciar entre as variables do problema dado e as dos axiomas empregados. Esta diferencia entre o papel dunhas e outras variables, é xustamente a que permite comparar e resaltar a forma de actuación do método proposto co de Dougherty e Jóhann e co narrowing. ^. Un breve resume deste traballo e sinalando as principais aportacións é a seguinte : No capítulo 2 introdúcense as distintas estructuras empregadas, resaltando. especialmente as propiedades das sustitucións relacionadas coa unificación. Unha variante da rescritura e da complección sen fallo, é utilizada para probar que o proceso de complección por pares críticos pode estenderse a presentacións condicionais e que proporciona relacións completas por niveles.. Introdúcense tamén algúns conceptos da teoría de categorías como as categorías de Kleisli e a categoría de substitucións. Dase unha caracterión dos morfismos nestas categorías. Para a igualdade de sustitucións esténdese á categoría de substitucións mediante a incorporación de morfismos (2-células) entre sustitucións (1-células). Próbase que a noción de 2-categoría non é apropiada para o uso ^ da igualdade condicional e que, en cambio, a noción de sesqui-categoría sí soporta este xeito de presentación da igualdade. 2nese caso particular, o narrowing é pois tamén completo en teorías xerais..

(12) 9 No capítulo 3 estúdiase a unificación de termos libres e se recollen os principais algoritmos de unificación, mostrando diversas comparacións entre os mesmos. Estúdiase a forma de obter unificadores en forma f actorizada que será empregada no novo método de unificación ecuacional. Introdúcese a unificación de pares de sustitucións e estúdianse as relacións entre as categorías de unificadores. Demóstrase que a propiedade dos unificadores máis xerais, de ser equivalentes ás sustitucións idempotentes, corresponde á existencia dunha adxuncióñ entre as categorías de coigualadores e a dos coigualadores "idempotentes" . 0 capítulo 4 trata.da unificación ecuacional, realizando en primeiro lugar un repaso das técnicas de E-unificación, resaltando o método de narrowing, as súas diferentes adaptacións e probando que é completo no caso de conxuntos pechados de presentacións condicionais. Estúdianse os distintos algoritmos universais para teorías xerais. Desenrólase unha variante do mecanismo de abstracción (utilizado noutros procesos diferentes de unificación) que é empregada para realizar un método de unificación ecuacional semellante ó de Dougherty e Johann, aplicable á unificación de pares de substitucións. A partir da abstracción obtense un novo método de E-unificación que mellora considerablemente o de Dougherty e Johann e próbanse a corrección e completitude. Móstrase que o novo método permite amais a incorporación tanto de ecuacións condicionais como de novas melloras que non lle fan perder a completitude.. No capítulo 5, resúmense as conclusións deste traballo e suxírense novas líneas de investigación. No Apéndice A, móstrase o código ^ das funcións empregadas para unha implementación do novo algoritmo na lingoaxe de programación funciónal CAML. Esto permité realizar unha comparación entre os mencionados algoritmos universais de E-unificación. ' No Apéndice B, móstranse os resultados experimentais na resolución de diversos problemas prantexados, tanto no número de solucións redundantes, no número de nós xerados en cada derivación, como no tempo utilizado na resolución destes problemas..

(13) 10. Alg•oritmos de Unificación Ecuacional.

(14) Capítulo 2. Nocións e estructuras previas Neste capítulo intróducense a maior parte das nocións básicas empregadas posteriormente. A razón de estudiar con certo detalle as sustitucións idempotentes é debido a que esa propiedade está fortemente relacionada cos unificadores máis xerais. Móstrase cómo conservar algunhas das propiedades da reescrita aínda nos casos máis problemáticos e próbase que as relacións que dirixen á igualdade condicional gozan da propiedade da completitude por niveles se se incorporan á igualdade os pares críticos xerados por un proceso unfailing complection. Considéranse algunhas definicións de teoría de categorías e dase unha caracterización dos morfismos en Catsubst. Para tratar coa igualdade ecuacional de substitucións, introdúcense as 2-categorías e as sesqui-categorías. Esta última permite incorporar as presentacións condicionais en condicións semellantes ás formadas exclusivamente por pares de termos.. 2.1 2.1.1. Estructuras de datos Conxuntos, Relacións e Arbores. Conxuntos e cadeas Se X é un conxunto, ^X^ expresará ó cardinal(X ) e por (^1, ...,^,^) ou <^1, ..., xn > á n- upla ordenada de ^1, ...,^,^. Se X e Y son conxuntos, entón X x Y é o conxunto de tódolos pares ordenados (x, y) con x E X e y E Y. Usará,se a notación X^Y ={^ E X, x^ Y}. O conxunto X é unión disxurcta de Y e Z se estes conxuntos non teñen elementos en común. Unha función F: X-^ Y é calquera subconxunto de X x Y tal que, para todo ^ E X existe exactamente un y E Y con (^, y) E F, o dominio de F, domF é X e o rango é ran(F) _{y E Y^^^ E X, (^, y) E F}. Para cada ^ E X, o único y E Y tal que (^, y) E F denótase como F(^), F^ ou ben (^)F, dependendo do contexto. Para cada B C Y, F-1(B) _{^ E X ^F^ E B} e para cada A C X, F(A) _ {Fx^x E A}, F/A = F n(A x Y). 11.

(15) 12. Algoritmos de Unificación Ecuacional. Se y E Y, entón F-1(y) = F-1({y}). Unha función F: X^ Y é inxectiva se (b'x, x' E X)(x ^ x' ^ Fx ^ Fx') , sobrexectiva se rango(F) = Y e bixectiva se é inxectiva e bixectiva. Se F: X---> Y e G: Y--^ Z son funcións, entón G o F={(x, z)^z = G(F(x))}.. ^. 0 conxunto { 1, 2...} de enteiros positivos denótase por N. Se k > 0 é un enteiro e F: X-> X entón F^ = I (función identidade) se k = 0, e Fk = F o Fk-1 noutro caso. Unha cadea sobre un conxunto X é unha aplicación de {1, 2, . .., n} ^ X, X* é o conxunto de todas as cadeas de X( peche de ^i'leene). Así, N* é o conxunto de tódalas cadeas de enteiros positivos. A cadea vacía denotarase como <>. A cadea < x1i ..., xn > expresa a función F(i) = x;, 1< i< n. A lonxitude dunha cadea w denótase como ^ w ^. Para calquera cadea e calquera enteiro k > 0, defínese k: w como <> se k= 0; como as k primeiras entradas en w no mesmo orden que en w sé 1< k< ^ w ^; e como w se k> ^ w ^. A k-ésima entrada da cadea w será representada por w^. ^ A concatenación de cadeas indícase por un punto < x1,...^xn > ' < yl^...,y^ >_< xl,...^xn^y1^...,yl > . A cadea < xi,...,xn >. tamén será representada por xl •...• xn. Emprégase a notación ^r • S, abreviatura de {^r • w^w E S}, ({w •^r^w E S} respectivamente).. (S •^r) como. Relacións Unha relación -^ en X é un subconxunto de X x X. (x, y) E^. Unha relación --^ en X ten a propiedade :. Por x ^ y represéntase a. • re f l exiva se dx E X(x ^ x), • simétrica se b^x, y E X se x -^ y entón y-> x, • transitiva se `dx, y, z E X(x -> y e y-^ z entón x-^ z), • antirre f lexiva se dx E X(NON(x --^ x)), • totalse`dx,yEX(oux->youy^xoux=y),. • non ten cadeas infinitas descer^dentes ^finitaria ou noetherián ^ se non existe nengunha secuencia xl, x2i ... de elementos de X tales que x= -^ x;+l para todo i > 1, • bó orden parcial, abreviadamente wpo (well founded partial order) se é transitiva e sen cadeas descendentes infinitas, • un bó orde é un orden total coa propiedade wpo, • case-orden se ten as propiedades reflexiva e transitiva..

(16) Capítulo 2. 13. Cando se teña un conxunto P de propieda;des e unha relación dada, dirase que a relación satis f aiP se satisfai cada elemento de P. A P- clausura dunha relación -^ en X, é a intersección de tódolos subconxuntos de X x X que conteñen dita relación e satisfán P. Denótase por : • ^+ á clausura transitiva de -^, •^* á clausura reflexiva e transitiva, • H* á clausura reflexiva, transitiva y, simétrica. Por simple inducción na lonxitude da secuencia, próbase que x-^+ y sempre e cando exista unha sucesión finita xl, ..., xk, k > 2, de elementos de X tales que x1=x,x^=y,esel<i<kentónx=-^xt+l. .. Mediante o mesmo procedemento demóstrase que x^* y ssel existe unha sucesión finita x1, ..., xk, k> 1, de elementos de X tales que x1 = x, xk = y, e se 1 < i< k entón xq ^ x2+1. A condición x ^* y verifícase sempre e cando exista unha secuencia finita xl, ..., x^, k> 1, de elementos de X tales que xl = x, xk = y, y se 1 < i< k entón xi ^ x=+1 ou x^+i -^ xt. Cando sexa necesario destacar os elementos de tal secuencia indicarase (este último caso) como x H* y(xl, ..., xk). . Sexa ^ unha relación en X, entón : • x E X é reducible se ^y E X(x -> y). En caso contrario dirase que é irreducible, • x é unha f orma normal para y sse y-^* x e x é irreducible. A forma normal do termo y, se é única, expresarase por y,^,. • unha relación ^ en X é con f luente se para todo x, y E X, tal que ^z -->* x, z-^* yentón^uEX,x^*u, y-^*u, •--^ en X é Church-Rosser se para todo x, y E X tal que x H* y entón ^w, x -^* w * F- y, •--> en X é localmente con f luente se para todo x, y E X, tal que se ^z E X, x Fz^yentón^uEX,x^*u, y^*u,. •-^ é canónica se é finitaria e confluente. 2.1 ([87] ) Sexa X un conxunto e-> unha relación en X tal que --^+ é un wpo en X. Entón as seguintes condicións son equivalentes: a^ para calquera x1, x2, y E X, se xl y x2 son formas normais de y entón x1 = x2, b^ ^ara calquera x, xl, y, yl, E X, se x-- ^ * y, xl é unha forma normal de x e unha forma normal de y, entón xl = yl, 1 a expresión sse emprégase como abreviatura de se e só se.. yl é.

(17) 14. Algoritmos de Unificación Ecuacional c) ^ é localmente con,fluente, d) --^ é confluente, e) -^ verifica a propiedade de Chuch-Rosser.. A equivalencia neste caso entre c) e d) é coñecida como lema do Diamante2. Se o orden non é un wpo non se pode consegu'ir a implicación c) ^ a) como mostra o seguinte exemplo : b Exemplo 2.1 X={a, b, c, d}. ^^^ a. c. Arbores As árbores son estructuras utilizadas na formación de termos e as súas propiedades aparecerán en distintas partes deste traballo. Un estudio detallado deste tipo de dato atópase nos traballos de Rosen e de Peterson e Stickel [155, 138]. Definición 2.1 Se^an ^r, w E N* . Defínense : • Pa(^r) _ ( ^^r^ - 1) : ^ para ^r ^<> (pai),. ^. • Hiz(^) = Pa(^r)• < ^r^,^^ - 1 > onde ^r ^<>; ^r^.^^ ^ 1, Y Pa(^) • ^r^,^^ _ ^r (irmán pola esquerda),. • w -^ ^r se ^w^ : ^r = w (antepasado), • w ^ ^ se w ^ ^r e ^r ^ w (antepasado estricto), • w 1 ^r se (w ^ ^r ó ^ ^ w) (independencia). Un conxunto M C N* é independente se tódolos seus elementos son independentes entre sí.. Definición 2.2 Un dominio de árbore é calquera subcon^unto finito D de N* que verifica que Pa(D) C D e Hiz(D) C D. Definición 2.3 Se^a V calquera con^unto. Unha árbore de membros de V é calquera función R: D-^ V na que D é un dominio de árbore. Os elementos de D son os nós ^ da árbore. Zeste nome provén da demostración realizada por Huet..

(18) Capítulo 2. 15. 0 conxunto de tódolas árbores de membros de V denótase por V* . Se R é unha árbore e^r é un nó de domR, entón R^r representa o valor da árbore en ^r, ou sexa o "símbolo" no nó ^r. Definición 2.4 Sexan R,S E V*; ^r E dom(R). Defínense • R/^ _{(w, x) ^(^r.w, ^) E R} (subárbore de R en ^r^,. ^. • R[^r ^- S] _ {(w, ^)^(w, ^) E R e ^r ^ w}U{(^r•ry, ^)^(-y, x) E S} (reemplazamento en ^ de R por S^. Dado que R é a unión dis^unta de Ro ={(w, ^) E R, ^r ^ w} y Rl ={(w, ^) E R^^r ^ w} , R[^r ^ S] = Ro U{(^r •^y, x)I (-y, ^) E S}. 2.2 Sexan w, ^r, y E N*. Entón pódese observar que : 1. w-^^sse(^yEN*)(w'y=^r).; ^. se w -^ ^ e ^r -^ -y, entón w -^ ^y (transitividade ^ , ^. se w ^ Pa(^-), entón w^^r, .^. se w^^r e tamén w 1 y, entón ^r 1 -y, 5. se ^r ^<>, entón Pa(w •^r) = w• Pa(^r}. 2.3 Se^an R, S, T E V*; w, ^r propiedades :. E. .. domR; -y E domS. Verifícanse as seguintes. 1. R/^r = S sse R= R[^r <- S], ,2. R[^ F- S]/(^r • ^y) = S/-y (embebemento^, ^3. R[^r ^- S[^y ^ T]] = R[^ ^ S][^r •^y E-- T] (asociatividade^, .^. se w 1^r entón R[^r ^ S]/w = R/w (persistencia), 5. se w 1^ entón R[^r ^ S][w ^- TJ = R[w F-- T](^r <-- S] (conmutatividade^, 6. 7 E domR/^r sse ^r •-y E domR, 7. se ^ E domR e^y E domR/^, entón (R/^)/y = R/(^ •^y), 8. para M C domR un con^unto independente, defínese R[M ^•- S] como R se M=^, noutro caso R[w1 ^ S] ...[wn E-- S'] onde (wi, ..., wn) é calquera ordenación dos elementos de M,.

(19) 16. Algoritmos de Unificación Ecuacional 9. calquera conxunto de follas en domR é independente, onde ^ é por definición unha folla se domR f1 Pa-1(^r) _^. Proba : l. Pola definición de R[^r ^- S] este conxunto pódese expresar como a unión disxuiita de Ro e Rl onde Ro = {(w, x) E R^^r ^ w}, Rl ={(^ • y, x)^(y, x) E S}. A árbore R é igual a Ro U Rl sempre e cando Rl ={(^r • y, x) E R}. Pero esta condición corresponde xustamente a R/^r = S. 2. Expresando novamente R[^r F- S] = Ro U R1 de igual forma que en 1, R[^r <-. S]/^ • y= R1/^ • y={(w^ x)I (^ ' y' w^ x) E R^} _{(w^ ^)ly • w E S} = S/y. 3. R[^r ^ S[-y E- T]] pódese expresar como unión disxunta Ro U R° U Ri, onde Ro ={(w, x) E R ^^r ^ w} , R° _{(^r ' w, x)^(w, x) E S e y^ w} , Ri = {(^r • y• c:o, x) ^(w, x) E T} pero a mesma expresión representa a R[^r ^ S] [^r • y E- T]. 4. R[^ <-- S] = Ro U Rl . xa que ^r ^ w, w^ domR1. Dado que w ^ ^r, w • y^ domRi, de forma que R[^r ^- S]/w = Ro/w = R/w. 5. R[^r <-- S] [w ^ T] = Ro U R1 onde Ra = {(y, x) E R[^r <-- S] ^w ^ y} e Rl ={(w • y, x)^(y, x) E T}. Expresando Ro = Ró U Ró, Ró ={(y, x) E R^ ^^ y, w^ y} , Ró ={(^r • y, x)^(y, x) E S e w ^ y} obtense que R[^r ^ S][w<-T]=RóURóUR1. 6. y E domR/^ sse ^x, (^r •^y, x) E R sse ^r • y E domR.. 7. (Rl^)ly ={(w^ x)I (y • w^ x) E R/^} _{(w^ ^)I (^ ' y• w^ x) E R} = R/(^ • y). 8. Sexan (w1, . . . , wn) , (w^^l^, . . . , w^^n^ ) dúas ordenacións dos elementos de M (onde Q é unha unha permutación). Para ^M^ = 1 o resultado é naturalmente certo. Suposto para ^M^ - l. Se ^(n) = n o resultado é certo directamente por inducción. Noutro caso :. R[w1 ^ S] . . . [w,^-i ^ S] [wn ^ S] = R[w^^l^ ^-- S] . . . [w^(n) ^- S] [wn <-- S] = aplicando a conmutatividade ( n - ^(n)) veces R[w^^l^. s] . . . [wo^n^ ^ s] .. ^ S] . . . [wn ^-. 9. Sexan ^r, w, ^r ^ w dúas follas. Son independentes se ^r ^k w, w^ ^r. Se ^-^ w entón w = ^r.y o que contra^í a hipótese de que domR (1 Pa-1(^r) _(^ ❑ .. Definición 2.5 Sexan w, ^r, y E N* . Se ^r = w• y. dise que y é o cociente de ^r por w, . e expresarase por ^r/w = -y ^.

(20) Capítulo 2. 1?. 2.4 Dados w, ^r E N*, w^^r, e k-^ ^r/w. Entón. w' (^lw) _ ^ ^(^lw)lk = ^l(w' k)• Proba. Denotando por y=^r/w, ^= w• y directamente por definición de ^r/w. Se y=k•u,tense^r=w•y=w•k•uepolotantou=^r/(w•k).. 2.5 Sexan R,S, T E V*; w, ^ E domR; w^^r. Entón 1. R/^r = (R/w)/(^r/w) (cancelación), ,2. R[^r <- S]/w = (R/w)[^r/w ^- S] (distributividade),. ^. ^. R[^ ^ S][w ^--- T] = R[w E- T] (dorrair^ancia^. Proba.. '. l. Sexa R/^ = R/(w •(^/w)) =^(R/w)/(^r/w) (aplicando ,2..^ e o caso 7 de ,2.^3). 2. SexanRo = {(w•y,x) E R[^r ^ S]^^ ^w•y}, eR1 ={(w•y,x) E R[^ ^ S] ^^k; w• y=^r • k; (k, x) E S}. Sexan Ri ={(y, x)^(w • y, x) E R^} •, i= 0, l. Entón Ró = {(y, x)^^/w ^ y} e Ri ={(y, x) _(^r'k, x)^(k, x) E S}. Dado que R[^ <-- S]/w ={(y, x)^(w'y, x) E Ro U Rl} e xa que w^^r, y=(^r/w) • k, tense Ri ={((^r/w) • k, x)^(k, x) E S}. Pero desto dedúcese que Ró U Ri =( R/w )/[( ^r /w )^ S] . 3. Para probar a domiñancia, exprésase R[^r <-- S][w E-: T] = Ro U Rl, Ro = {(y,x)ER[^r^,S], w^y}={(y,x)ER^w^yxaque^^y}.. Rl ={(w • k, x) ^( k, x) E T}. De onde R[w <-- T] = Ro U Rl 0. Definición 2.6 Sexa a E V. Defínese unha función á: (V*)* -^ V* da for^na seguinte: Sexa < Rl, . . . , Rk >E (V*)* á< Rl, ..., Rk >_{(<>, a)} {U^<k{(.7 ' w^ y)^(w^ y) E R^}^. Esta chamarase árbore de raíz a e subárbores R1, ..., R^. O caso á(<>) (abreviadamente á) representa a árbore de raíz a e sen nengún outro nó. ^ 2.6 Dados a E V; S, Rl, ..., Rn E V*; w E domR^ ^vara algún j tal que 1< j< n. Entón ^ á<R1,...,Rn> [<j> •wF--S]=á<R1,...,R;[wE-S]...Rn>. Proba. Pola definición de á para i^ j tense que á< Rl, ..., Rn >[j • w<- S]/j • w= S e á< Rl, ..., Rn >[j • w E- S]/i = R^ con (i ^ j). Pola primeira propiedade de Z.^3 estas dúas igualdades caracterizan as dúas expresión ^ que se desexa igualar ❑ ..

(21) 18. Algoritmos de Unificación Ecuacional. 2.1.2. Termos e Sustitucións.. Introdúcense conceptos de termo e substitución así como algunhas definicións e propiedades derivadas. Unha referencia xeral é o traballo de Huet[87]. Pártese dun conxunto V de símbolos de variables e outro conxunto E de símbolos de operadores denominado signatura. Suporase que E é finito e que V f1 E_^, así como a existencia dunha función ar : V U E-^ N U{0}, tal que ar(v) = 0 para v E V. Para calquera símbolo x, ar(x) é a aridade de x.. Cando non exista confusión, denominarase variable e operador a un símbolo de variable e a un símbolo de operador respectivamente. Definición 2.7 Un termo é un membro do con^^cnto T^ _{t E( V U^)* ^d^r E dom(t) ^dom(t) f1 Pa-1(^r) = ar(t^r). ^. Danse as seguintes definicións e notacións : • cando non sexa necesario destacar os operadores, o conxunto dos termos tamén se denotará por T, • t é un termo conc:reto se os seus símbolos son todos operadores i.e. `d^r E dom(t), t^r E E. o conxunto dos termos concretos escríbese como T^(^1) e é coñecido como universo de Herbrand, • sexa X C V. 0 conxunto dos termos en X, T^(X) (ou tamén T(X)) é T^ (1 (X U E)*. 0 conxunto das variables de t, Var(t^ está formado por todos os símbolos variables presentes en t, i.e. Var(t) _{v E V^^^r, t^r = v}, • identifícanse t={(<>, s)} e o símbolo s. De igual forma, non se diferenciarán t/^r e t^ se ^r é unha folla de t. Asemade se dom(t) ^{<>}, t<> = f, ar( f)= k, t/ < 1 > = t1 , . . . , t/ < n > = t^, entón denótase t = f (tl, . . . , tn), • os operadores de aridade 0, serán chamados constantes. Nos operadores monádicos ( de aridade = 1) omitiránse habitualmente os parénteses e rematarán nunha constante ( iniciada por letras a, b, c, d,) ou nunha variable (letras ^, y, z, w). E.g. f (9^, a) é o termo {(<>, "f ^^), ( 1, ^^g^^), (2, ^^a^^), ( 11^ ^^^^^)},. • se t é un termo, o símbolo t<> será chamado operador snperior de t, • un subtermo de t é unha subárbore de t que a súa vez tamén é un termo. Para indicar que s é subtermo de t utilizarase a notación t[s]. Para facer explícitas as variables ^1, . . . , ^^ do termo t escribirase t[^1, . . . , ^,^], Var(t) _ {^1i . . . , ^n} e se s é outro termo arbitrario, Var(t, s) = Var(t) U Var(s), • télineal se(`d^E V)(t/^r=t/w=^^^=w),.

(22) 19. Capítulo 2. • os elementos do dominio de t denomínanse as posicións de t. represént ase como II (t ),. O dominio. • unha posición ^r de t é non variable se t^r E E. 0 conxunto destas posicións exprésase por II^ (t), • sexa s subtermo de t. Empregaranse as seguintes notacións para os conxuntos de posicións : IIS(t) (ou simplemente IIs) é{^r E lI(t), t/^r = s}, IIV(s) _ II(s)^II^(s), • sexa ^r E N*. Defínese recursivamente o maior antecedente w de ^r en t por : w=^r se ^r E II(t). Noutro caso w= rraaior antecedente(Pa(^)), • a lonxitude dun termo é a maior lonxitude das posicións dese termo, i.e. lonx(t) _ max{^7^, -y E II(t)}, • o tamaño de t defínese polo número de operadores e variables (contando repeticións) que ten. A^í, tam(x) = 1 se x E V, tam( f(ti, ... tn)) = 1-^. Eá=i tam(ti), • o tamaño estricto de t é o número de operadores (incluíndo repeticións) que posúe. tam_estr(u) = 0 se u E V; tam_estr( f(t1, ... t,^)) = 1^- Ei=i tam_estr(tt),. • a extensión de t, ext(t) = tam(t) - ^Var(t)^. Sustitucións Definición 2.8 Unha sustit^ción é unha aplicación 9: T^ -^ ?"^ qué verifica : • se c é unha constante ( c)9 = c, • se t E T,t <> = f,ar(f) = n^ O,t = f(tl,...,t,^), entón (t)8 =. f (ti e, . . . , tne),. ^. • existe un conxunto ,finito X={x1i ... x^} C V tal que by E V^X, y9 = y. Nesas condicións, dise que 8 está. determinada por X. e éscríbese 8. {x1/tl, ..., x,^/tn}, onde ti = x^8, 1 < i< n. Unha sustitución queda caracterizada unívocamente polos seus valores nas variables. Para indicar a aplicación da sustitución 9 ó termo t, usarase a forma (t)9, co fin de reservar a aplicación pola dereita á acción dun operador sobre seus argumentos. Para simplificar a notación, escribirase tamén t9 en vez de (t)8. Se B, ^ son sustitucións, denotarase como B o^(ou tamén 8^), a sustitución composición : (t)(9 0^) _ (( t)9)^ e polo tanto, utilízase para a composición dé sustitucións un orden inverso ó empregado para o das apli ^acións. A mesma notación I' o^ e I'^, empregarase para compoñer a sustitución ^ cun conxunto I` de elas (pola dereita ^ o r ou ^r.).

(23) 20. Algoritmos de Unificación Ecuacional. Definición 2.9 Se t, s son termos, e 9 é unha sustitución, defínense : • Dom(9) _{v E V ^v9 ^ v} (dominio de 8), • I(9) _{v E V ^^u E Dom(B) , v E V ar(u9) }(imaxe de 9^, • Var(9) = Dom(8) U I(9) (variables de 9), • Rango(9) _{v9^v E Dom(9)} (rango de 6), • sexa W C V, WQ ={xQ, x E W}, • ^ < 9 se existe ^, B = ^^,. .^- e se ^< e ,. e 9<^. Neste caso diráse que ^ e 9 son equivalentes.. Debe notarse que 9 está determinada por pom(9} polo que, t9 = t sse Var(t)f1 Dom(B) _^, e que Var(t9) C (Var(t) ^ Dom(8)) U I(9). Sexa 9= {x1/tl, ... , xn/tn} unha sustitución, t un termo e Var(t) fl Dom(6) _ {xl, . . . , xm}. Entón :. t8 = t[II^1 ^- tl] . . . [II^„ ^ tn]. Por elo, unha sustitución actuando sobre un termo só modifica o contido das posicións cuio símbolo é unha variable do dominio da sustitución. 2.7 Sexa t un termo, 9 unha sustitución e^ E II(t6). Entón ou ben ^r E II(t) ou existen nós w, y tales que ^r = w• y, w E II(t) , tw E V, e y E II((tw)9). No primeiro caso t9/^ _(t/^r)9. No segundo t9/^r =(tw)8/y e dise que ^r está creada por 9.. Proba. Se ^r E II(t) o resultado obtense de aplicar inducción en ^^r^. Se ^^r^ = 0 entón t= t/^r e t9/^r =(t/^r)B. Por outra parte, t8/Pa(^r) _(t/Pa(^r))9. Se t/Pa(^) _ f (t1i . . . , t=, . . . , tn), tense que tt8 = (t/^r)9 = (t/(Pa(^r) • i))9 = (t/Pa(^))9/i = (te/(Pa(^r)))/ • i = (te)/^r. Noutro caso, sexa w o maior antecedente de ^ en t.. II(t), w• y=^r.. Deséxase probar que tw E V.. Polo tanto ^w, y;. wE. Se tw é constante (t/w)9 = t/w. e por elo ^r = w. Se tw E ^ non é constante, entón w• i E II(t), w• i ^^. para algún i, o que contradí que w sexa o maior antecedente de ^ en t. Sexa pois v= tw unha variable. Pola propiedade anterior (para w), t9/w =(t/w)e = ve. Así. te/^ = te/(w ^ y) _ (telw)ly = (ve)ly = ((tw)e)ly o. 2.8 Sexan s, t termos, ^ E II(s), e 9 unha sustitución. Entón : i^ ^r E II(s6), ii) (s/^r)9 = (se)/^r, iii^ (s[^r f-- t^)9 = (se)[^r F-- te],.

(24) Capí t ulo 2 iv^ se para. 21. toda posición y E II(s), y 1^, s /y ^ Dom (9), entón s[^r E-- t]8 =. s[^ E-- te] = s[^ ^ te] . Proba.. Inducción na lonxitude de ^^r^.. Para ^r. =<>, obviamente ^. n(se), (se)/^ = se = (s/^)e e (s[^ ^- tl)e = te = (se)[^ ^- tel.. Suposto para ^^r^ - 1, i^ e ii^ son semellantes ó caso anterior. distributividade ( ^. 5), dedúcese :. Para iii^ e da. (s[^ ^- t])e = s[Pa(^) ^- (s /Pa (^^[i ^- t])] e = se[Pa(^) ^- (s /Pa (^)[i ^- t])e) _ se^Pa(^r) E-- ^s8/Pa(^r)[i E--. te])] = se[ ^r E- t9]. onde i=^r/Pa(^r).. Para iv^, supónse que s[^r ^ t]9 ^ s9[^r ^- t8]. Xa que s[^ F- t]8/^r = t8 = s[^r ^ t9] /^r debe existir unha posición w tal que s[^r ^- t] 9w ^ s[^r F-- t9]w. As posicións w^^r verifican (s[^r ^- t9])w = (s[^r ^- t9])w E E. Polo tanto, existe w, w 1^r, s[^r ^- t]9/w ^ s9(^r F- t6]/w. Se `dw 1^r, sw ^ Dom(9), entón (s[^r <-- t]8)w = (s[^r E-- tB])w contradicción ❑ .. 2.9 Sexan 8, ^ sustitucións. 1. se I(8) fl Dom(Q) _^, I(Q) f1 Dom(9) = Q^ e Dom(9) (1 Dom( ^) = Q^, entón 8^ _ ^6, ^. se t é un termo, I(9) f1 Dom(Q) _(^, e Var(t) C Dom(9} entón t8^ = t9. Proba. Se x ^ Dom(B) U Dom(^), (x)9^ _(x)^ = x=(x)9 =(x)^9. Para x E Dom(^) entón como x^ Dom(8) , xe^ = x^ = x^e , xa que I(^) fl Dom(8) _^. Análogamente para x E Dom(B). Para 2. demóstrase primeiro que se Dom(9) fl Var(t) _^ a sustitución 9 é transparente para t, i.e. t8 = t. En efecto, sexa ^ unha folla de t, que pode ser constante ou variable. Nos dous casos (t/^)9 = t/^r. Por iv) de ,2.8, t9 = t[^r <-- t/^r]8 = t[^r ^- (t/^r)9] = t[^ ^ t/^] = t. Xa que Var(t) C Dom(8), entón Var(t8) C I(8), e Var(t8) fl Dom(^} _ ^, (t9)^ = t9 ❑ . Tipos de sustitucións , Definición 2.10 Se W C V e 9 é unha sustitución, a restricción de 9 a W é a sustitución 6y^ tad que para toda x E V: .. • x9y^=x8 sexEW, • x6yy=x sex^W. Tamén se usarcí a forma Q= 9[W] para expresar que ^y^ = 8y^. Para un conxunto de sustitucións U, Uyy é o con^unto de sustitucións {^yy^Q E U}.. Da definición dedúcese que t9yy = t9 se Var(t) ^ W..

(25) 22. Algoritmos de Uniñcación Ecuacional. Definición 2.11 Sexan ^, 9, p sustitucións e W C V dise que : - 9 é concreta se I(9) _(^, - ^ é idempotente se ^^ _ ^, - p é un renomeamento se é inxectiva en Dom( p) e I( p) = Rango( p) . Se p={xl/yl, ... xn/y^}, p={yl^xl, ... yn^xn} é a sustitución inversa de p,. - unha permutación é un renomeamento bixectivo. Polo tanto, toda permutación p é un renomeamento que leva Dom(p) en sí mesmo, - a sustitución identidade representarase como ^, - a unión Q U 9 de ^ e 9 se Q= 8[Dom(^) n Dom(9)] defír^ese como : x(^ U 9) = xQ se x E Dom(^), noutro caso x (^ U e) = xe,. - ^ < 9[W] se existe a, 9 = ^^ [WJ.. _. 2.10 ([59]) Calquera sustitución inxectiva que leve V en V é unha permutación. Proba. Se x E Dom(o^), entón v= x^ ^ x con v E Dom(^) pois v^ = v= x^ con v^ x contradí a inxectividade. Como Dom(^) é finito, ^ establece unha permutación de Dom(^) ❑ . 2.11 Unha sustitución Q é idempotente sse Dom(Q) n I(^) _(^.. Probá. No caso de non ser idempotente ^x E V, (x^)^ ^ x^. Entón ^y E Var(^x) , y^ ^ y, de onde y E I(^) n Dom(^). Recíprocamente sexan x, y E Dom(^), y E Var(x^). Entón x^^ ^ x^ e polo tanto ^ non é idempotente ❑ . Se ^_{x1^s1, . .., x,^^sn} é idempotente, pódese expresar como composición de sustitucións simples ( non importando a orde destas) ^ _ {xl/sl}{x2/s2} . . . {xn/sn} . Outras caracterizacións das sustitucións idempotentes pódense atopar no traballo de Eder[59]. Nótese que a composición de sustitucións idempotentes non é necesariamente idempotente : ^ Exemplo 2.2 a^ _{x/ f(y)} T={y/ f( z)}, A composición TQ ={x/ f(y), y/ f(z)} verifica T^T^ _{x/ f( f(z), t/ f (z)} e polo tanto non é idempotente.. Non obstante, é posible, en certas condicións, asegurá-la idempotencia da composición: 2.12 Sexan ^, T sustitucións idempotentes con Dom(^) n I(T) _(^. Entón ^T é idempotente. ^ Proba. Sexa x E Dom(^T). Se x E Dom(^) tense que x ^ I(^), x^ I(T) e así x^ I(^T). Se x E Dom(T), tense x ^ I(^T) pola idempotencia de T ❑ . Obsérvese que no exemplo anterior, QT é idempotente..

(26) 23. Capí í ulo 2. 2.1.3. Instanciación, Matching e Unificación. Os termos pódense ordenar usando a instanciación : conversión dun termo noutro por unha sustitución. Os textos de Huet e de Eder[85, 87, 59] son referencias xerais deste apartado. Definición 2.12 Dados s, t termos, dise que t é unha instanciación de s e que ^ é un matching de s e t se s^ = t. ^ A existencia dun matching de s e t exprésase por s< t. 2.13 Sexa s< t. Se s^ = t, s8 = t entón Qvar(S) ="evar(s^•. Proba. Sexa x E Var(s); s8 = t. Sexa ^r E IIx(s). Necesariamente ^6 = t/^r =^Q^. A relación < é un case-orde, pois non verifica a propiedade simétrica nen a antisimétrica nen é, xeralmente total. Para esto último, obsérvase que f( f x, y) ^ f(y, f x) ^ f( f x, y). Para a antisimétrica chega con coller dúas variables diferentes. Para a simétrica x< f(x) ^ x. Definición 2.13 Dados s, t termos e e, ^ sustitucións, e W C V, empregaranse as seguintes notacións : s>tset<s es^t, s-tses<t et<s, ^ <w 9 se ^^,y < Bw, ^-yy8se^yy-9yy.. Definición 2.14 A sustitución 9, é: un unificador de s, t se s9 = t9, de I' _ {S1 ^ tl, ..., Sn ^ tn} Se St9 = t=6,1 < 2< n. 3 1V0 Uni f( I') expresarcí o conxunto dos unificadores de I',. un un2ficador. que sigue,. un unificador máis xeral ou mgu ^most general unifier1 de I' se : 9 é unificador de I' tal que : d. se Q unifica a I`, entón 9< Q. un unificador máis xeral de r restrinxido a W se é unificador de I' e se Q unifica I' entón 6 < Q [W]. • Pola transparencia das sustitucións sobre os termos que non posúen variables no seu dominio, tense que se s, t son termos tales que Var(t) f1 Dom(9) = 0 e 8 é un matching de s e t entón 8 tamén é un unificador de s, t. 3o símbolo ^ fai mención expresa de que se trata dun problema de unificación..

(27) 24. Algoritmos de Unificación Ecuacional. 2.14 Se s> t entón ext(s) > ext(t) Proba. Probarase que se s> t entón ou tam(s) > tam(t) ou ben tam(s) = tam(t) e ^Var(s)^ < ^Var(t)^. A diferencia entre s e t radica nos subtermos de t nos que se atopan as variables x E Var(t), pois se ^r E II^(t), entón ^r E II^(s). Así debe probarse que algunha variable que contribúe en ext(t) fai medrar a extensión de s. Se ^Var(t)^ = 0, non existe s> t. Sexa x E Var(t) e^ matching de t e s. Se x^ non é variable, incrementa a,extensión. Se polo contrario, as variables son levadas en variables, se x^ = y entón se ^ fose inxectiva, trátaríase dunha permutación e t= s. Por elo, ^x, x' E Var(t), x^ = x'^ e polo tanto, por inducción no número de variables, ^Var(s)^ < ^Var(t)^ e ext(s) > ext(t) ❑ .. Como consecuencia : 2.15 ([87] ) A relación > é noetherián. 2.16 ([59] ) Se s= t exíste unha perrnutación p, s p= t. Proba. Sexan ^, ^', s^ = t, t^' = s e x E Var(s). Necesariamente xa E Var(t). Se x.^ = x'.i tense x= x', xa que x^a' = x= x' = x'^.^'. A permutación p é =^va,.^sl O. Sexa ^([87] ) unha bixección entre T x T e V . Defínese unha operación binaria n rios termos dada por: S /^ t = ,f (( tl n S1) . . . , ltn n Sn)) Se S = f (S 1 ^ . . . , Sn)^ t = f (tl^ . . . , t,^,), s n t=^(s, t) noutro caso.. Se existe, a menor (resp. maior) das cotas superiores (resp. inferiores) dun conxunto, é o supremo ( resp. ínfimo) do conxunto. Un retículo é un conxunto parcialmente ordenado no que todo par de elementos ten supremo e ínfimo. Un retículo é completo se todo subconxunto non vacío ten supremo e ínfimo. n Sexa T o cociente T^/ - completado cun maior elemento T.. 2.17 [t n s] é o ínfimo de [s] e[t] .. Este ínfimo é denominado xeralización mczs específica en [139]. Proba. Sexan s, t termos, s^ t, t^ s. Por definición de ^, ^(s, t) < s, ^(s, t) < t. Emprégase inducción na suma dos tama^os dos termos. Se tam(s) + tam(t) = 2 necesariamente s= a, t = b con a e b un par de constantes diferentes. Sexa u unha cota inferior de s e t. Se u < s entón ext(u) = 0< ext(s), u é variable e u-^(s, t). Suposto para todo par de termos tam(s') + tam(t') < tam(s) -1- tam(t). Se t<>= f^ g= s <>, as cotas inferiores de s e de t son os u E V e polo tanto u-^(s, t). Se t= f(t1, ..., tn), s= f (sl, ..., sn), as cotas inferiores son ou ben u E V ou f (ul, . . . , un), con ul, . . . un cotas inferiores de (tl, sl), . . . , ( tn, sn) respectivamente. Aplicando inducción obtense o resultado requerido ^..

(28) Capítulo 2. ^. 25. 2.18 0 conxunto de termos T é un retículo completo. Proba. Sexa S un subconxunto non vacío de T^ ( X )/ - e sexa s un elemento arbitrario de S. 0 número dos elementos t de ^^ ( X )/ = tales que t< s é finito. Xa que cada dous elementos teñen ínfimo, obtense o ínfimo de todos eles facendo a intersección (que non é vacía xa que [x] <[s], ys E S).. Como se probará no seguinte capítulo, se dous termos teñen unha cota superior (distinta de T) entón tamén teñen un supremo. Polo tanto, se ^S^ é finito, o resultado obtense por inducción. Noutro caso, constrúese unha sucesión Sl C S2 C... C Sn ..., S= ^J^^o S^ e ^Si ^ = i. Sexa sl < ...< s^ <... a sucesión de supremos. Se esta sucesión detense, este valor é o supremo. Noutro caso, dado que o número de elementos <[t] de ?"^ (X )/ - é finito, a única cota superior é T e polo tanto este será o supremo o.. 2.1.4. Equivalencia de sustitucións e idempotencia. As sustitucións idempotentes son especialmente axeitadas para representar unificadores. Este tipo de sustitucións e a súa relación coa unificación ten sido estudiada principalmente por Eder e por Lassez et al.[59, 113]. 2.19 Sexan ^, T sustitucións tales que Q= T. Existe unha permutación ^ tal que Q^=T.. Proba. Sexan p, p' tales que T=^p, ^= Tp'. Os conxuntos V^Var(V^), V^Var(VT) son finitos, e pódese supoñer que ^.i : V^Var(VQ) ^ V^Var(VT) inxectiva. Xa que x^pp' = x^ necesariamente ypp' = y, con y E Var(VQ). Como consecuencia yp E I(^p) = I(T). Por elo pva,.^v^^ : Var(V^) ^ Var(VT) leva y en yp inxectivamente (posto que compoñendo con p' obtense y). A permutación ^ defínese como .^ U p^var^v^l unión de dúas inxectivas, e polo tanto, ^ é unha permutación ❑ . 2.20 Para cada sustitución Q existe outra idempotente T , tal que ^< T. Proba. Sexa z unha variable calquera non contida no dominio de ^. Defínese a sustitución ^9 = z, b'^ E Dom(o). Pola elección de z, Var(V9) fl Dom(Q) _^, e Dom(Q) = Dom(9). Pór elo, a composición ^9 ten o dominio incluido en Dom(^) e dado que Var(V^6) C Var(V9), necesariamente Var(V^9) f1 Dom(^9) _^, e polo tanto ^6 é idempotente ^.. Dentro das sustitucións equivalentes, as idempotentes teñen un carácter minimal dado polo seguinte resultado : 2.21 Se ^, 6 son sustitucións idempotentes equivalentes ^= 9, entón : i^ ^Dom(^) ^_ ^Dom(8) ^,.

(29) 26. Algoritmos de Unificación Ecuacional. ii) I I(^) I= I I(e) i^ Proba. Para i^ se probará que existe unha aplicación inxectiva h: Dom(^) ^^ Dom(9). En efecto, sexa x E Dom(Q). Se x E Dom(8) defínese h(x) = x, noutro caso x^ = z E I(^), x^ z, xa que ^^, x9 = x= (x^)^, e defínese h(x) = z. Hai que probar que z E Dom(9), e o carácter inxectivo de h. Se z9 = z, e tendo en conta que pola idempotencia z ^ Dom(^), tense que x9 = x= xo^^ = za e tamén z8 = z = z^a = za, ou sexa z= x o cal é unha contradicción. Para probar o carácter inxectivo sexan x, x' E Dom(^), x^ x'. Por construcción se x, x' E Dom(9) necesariamente h(x) ^ h(x'). Se x, x' ^ Dom(6), x9 = x= (h(x))^, x'9 = x' _(h(x')).^ e polo tanto h(x) ^ h(x'). Se x E Dom(9), x' ^ Dom(9), pola idempotencia de ^ , x^ I(Q), h(x) = x^ h(x') E I(^). Para ii) utilízase tamén a construcción dunha aplicación inxectiva entre I(Q) ^ I(9). Sexa x E Dom(^) n Dom(8), t[y1i ..., y,^] = x^. Necesariamente x9 = t[zl, ..., zm] xa que ^a, a', ^^ = 9, ^= 9a'. Por elo zt =^ y=a deben ser m variables distintas. Fáiselle corresponder h(yt) = zt. Se x E Dom(^), x^ Dom(8), é semellante^ ó caso anterior con h(z) = x. A proba do carácter inxectivo de h é semellante á do caso i^ ❑ . 2.22 Sexa ^ unha sustitución : 1^ se existe unha aplicación p de V en V tal que (p(x))Q = x para todo x E Var(V^} e p(x) = x se x ^ Var(V^), entón p é unha sustitución e^p é unha sustitución idempotente equivalente a ^, ,2^ calquera sustitución idempotente que sexa equivalente a^ pódese expresar corrao ^ p onde p verifica a condición anterior. Proba de 1^. Xa que ^Dom(^)^ é finito, p é unha sustitución. Se x E Var(V^) por definición xp^ = x. Polo tanto ^p^ _^ de onde se óbtén a idempotencia de ^p. Pola definición de p, ésta é un renómeamento en Var(VQ). Por outra parte ^pp- _^. Proba de ,2). Sexa 9 unha sustitución idempotente equivalente a^ e^, .^' permutacións, tales que Q^ = 8, 9i^' _ ^^. Para definir p próbase que b^x E Dom(^) n I(^) entón ^y E Dom(Q), yQ = x. Se x E Dom(9) e polo tanto x^ I(8}, x E Dom(.1), ^y E I(B) n Dom(^'), y^ Dom(8) e tal que y^ = y9a' = y^' = x. Sexa x^ Dom(9). Se x^ I(9) é análogo ó caso anterior. Se x E I(9), e xa que x^ ^ x, x9^' = x^' ^ x. Posto que x E I(Q), x E I(.^'), existe y E I(B) n Dom(a'), yi^' = x e yQ = y9^' = ya' = x. A sustitución p vén dada por xp = y ❑ .. Como consecuencia : 2.23 Sexa ^ sustit.ución non idempotente equivalente a unha idempotente 9. Entón ^Dom(B)^ < ^Dom(^)^..

(30) Capítulo 2. 27. Proba. Sexa y E Dom(^) n I(^). Xa que a sustitución p empregada na propiedade anterior leva y en x para algún x E Dom(^) , xQ = y. Polo tanto, x^p = yp = x, x¢ Dom(^p). Dado que dx ^ Dom(^) pódese definir xp = x, dedúcese que Dom(^p) C Dom(^) e ^Dom(^p)^ <(Dom(^)^. 0 resultado séguese da propiedade ,2.,21 ❑ . A anterior proposición non se pode modificar para incluír a imaxe (contra do que cabe agardar de ^.^Zl). Como un exemplo de elo sexa ^_ {y/ f(z), x/y, u/y}, e 9 = {y/ f (z), u/x}. ^ Observouse que as sustitucións idempotentes teñen un certo carácter minimal respecto do resto de sustitucións equivalentes. Unha caracterización das sustitucións equivalentes ás idempotentes obtense relacionándoas co mgu como se observa nos seguintes resultados: 2.24 Se s, t son termos unificables entón existe un mgu Q idempotente e Dom(^) C Var(s, t).. A demostrac.ión desta proposición verase no seguinte capítulo. 2.25 Sexa 9 un unificador máis xeral idempotente de I'. Entón ^ E Uni f (I`) sse ^=4^. Proba. Se B é mgu idempotente de r, e^ E Uni f(I'), existe ^ tal que ^= 9.^ = 99^ _ 9^. Se ^= e^ entón 9<^ e por conseguinte é unificador ^. Esta propiedade é a empregada por Robinson ([152]) para definir o unificador máis xeral. 2.26 Se ^ é unha sustitución, son equivalentes. i) existe un conxunto de pares de termos I' con ^ como unificador máis xeral de I', ii^ existe unha szLStitución idempotente que é equivalente a^. Proba. i) ^ ii). E consecuencia directa de ,Z.,2.^.. ^. ii^ ^ i^. Sexa 8= {xl/tl, ... , xn/tn} unha sustitución idempotente equivalente a ^. 0 conxunto de pares de termos {xi ^ t1, ..., xn ^ t„} ten como unificador a 9eporelotaména^ ❑ ..

(31) 28. 2.1.5. Alg^oritmos de Unificación Ecuacional. Ecuacións e igualdade ecuacional. Definición 2.15 Unha ecuación é un elemento de 7^ x T. A ecuación ( s, t) escribirase s= t. Se E é un conxunto de ecuacións, entón E-1 ={r = 1 ^l = r E E}. Unha ecuación s= t é concreta se s e t son termos concretos. Definición 2.16 Se E é un conxunto de ecuacións, dous termos s, t veri,fican a relación s=É t se existe unha ecuación (1 = r) E E U E-1, unha posición ^r E II(s), e unha sustitución 9 tal que s/^r = le , t = s[^r F-- (r)9]. Nestas condicións, denotarase tamén por s=É t(l = r, ^r, 9) se é necesario indicar os detalles da ecuación, posición e sustitución. A relación =E defínese como a clausura reflexiva transitiva de =É. Por ser =É simétrica, =E tamén o é e é polo tanto unha relación de equivalencia. A clase de equivalencia que contén ó termo t represéntase como [t]E ou tamén como [t].. Dada a simetría da relación =E, o conxunto de ecuacións E será interpretado como un conxunto de pares non orientados i.e. se u= v E E entón v= u E E. No que segue, os conxuntos de ecuacións serán usados sen orientación. 2.27 Sexan s, t E T, 9 unha sustitución, e E un conxunto de ecuacións . Se s=E t entón s9 =E tB ^estabilidade). Proba. Por inducción na lonxitude k de s= to =É tl =É t2 ...=É tk = t. Para k=0,s=t,s9=t9es9=Et9. . Suposto para k- 1, entón sB =E tk_19 , tk_1 =É t(1 = r, ^r, ^) , tk_1/ir = l^, t= tk_1[^r F- r^]. Pola propiedade ,2.7, tk_18/^ _(tk_1/^r)8 = 1^9 , t9 =(t^_1[^ E--. r^]) e= tk-le[^ E-- l^B], de onde t^-19 =É t9(1 = r, ^r, ^B) ^. 2.28 Sexan t E T, {^rl, ...,^rn} . un conxunto de posicións independentes do termo t. Se para todo i, 1< i< n t^^rt = E s=, entón t =E t[^1 E- sl] ...[^n F-- sn] ^rraonotonía^ .. Proba. Primeiro se verá que se t/^ =E s entón t=E t[^r F- s]. Para elo utilízase inducción na lonxitude da secuencia t/^r = to =É t1 =É ...=É tk_i =É tk = s. Para k= 0 é consecuencia do caso 1 da propiedade 4. ^ Suposto para k- 1, t=E t[^r E- tk_1] , t^_1 =É s(l = r, w, ^). Polo tanto tk_1/w = l^ ,t,^ = tk_1[w ^- r^i]. Aplicando os casos 1 e 3 de ,^.3 : t=E t[^r ^- t^_1] = t[^r ^ tk-1[w E-- (t^-1/w)]] =É t[^ F-- tk-1[w E-- r^]](l = r, ^' w, ^) = t[^r F-- s]. De onde o lema se obtén de aplicar o resultado 4 de ,2.3 e n veces o resultado anterior ❑ .. Definición 2.17 Sexan s, t termos e E un conxunto de ecuacións. Dise que s é unha E-instanciación de t, se existe unha sustitución 9, chamada E-matching de s e t, tal ques=Et9..

(32) Capí t ulo 2. 29. Dirase que. s e t son E-unificables se existe unha sustitución 9 tal que se =E t9 e 9 será cha^nado un E-unificador de s e t. A substitución B é un E-unificador de I' se é un E-uniftcador de cada par s^ t E I'. Por UE(I`) indícase o conxunto de tódolos E-unificadores de I'. 2.29 Sexan s, t E T, E conxunto de ecuacións. Son equivalentes : i^ s é unha E-instanciación de t, ii^ existe s' E[s] , s' instanciación de t. Se para un E dado e para todo termo t, [t] é finito e existe un algoritmo que o xera, é posible determinar se un termo é ou non unha instanciación de outro (e polo tanto extraer o correspondente E-matching). Cabe supoñer que nese senso, a E-unificación sexa semellante á E-instanciación e que, para obter os E-unificadores do par de termos s, t, sexa suficiente con buscar s' E [s] , t' E [t] tal que s', t' sexan unificables. 0 problema non é tan simple (aínda para o caso das teorías para as que [s] é finito e existe algún algoritmo que o xera). Como mostra delo : Exemplo 2.3 E_ { f(a) = g(a)}, I' _{ f(x) ? g(x)}, xa que [ f(x)]E _ {f(x)}^ [9(z)]E =.{g(z)}•. Definición 2.18 Sexan 6, ^ sustitucións e E un conxunto de ecuacións. 8 e^ son iguales módulo E, o que será expresado por 9=E ^, se t8 =E t^ para todo termo t. 9<E ^ se existe unha sustitución ^, 9^ =E ^. Se B<E ^, 8#E ^ represéntase por e <E ^. Sexa E un conxunto de axiomas na signatura E. Defínese T^,E(X )= T^ (X )/ _. Os elementos deste conxunto non son necesariamente elementos de T^,E. Exemplo 2.4 E_. { f, g}. X={x}, E_{ f(y, z) =. g(z)}.. O elerraento. {g(x), f( x, x)} de TE({x}) non coincide coa clase {g(x), f(x, x), f(y, x), f(u, x) ...} en 7E •. 2.1.6. Alxebras e Congruencias. Dada unha signatura E, unha E-álxebra A é un conxunto A e unha función A°^T ^f ^^ A para toda f E E. O conxunto A chámaselle base da E-álzebra. Tanto T^ como T^(X) son álxebras (de termos), onde f,^(ti, ..., tn) = f( ti, ..., tn), con ,,4 = T^ no primeiro caso e,^l = T E(X )no segundo..

(33) 30. AIg•oritmos de Unificación Ecuacional. Homomorfismos e Substitucións Sexan A, B dúas álxebras de bases A, B respectivamente. A aplicación ^: A-^ B é un E-homomorfismo (ou simplemente homomorfismo) se para todo f E E e calesquera al, ..., an. E. A,. f,,q(al, ..., an)C^. = f^(all^, ..., an^).4. Os. endomorfismos. son os. homomorfismos nos que A= B. Os isomorfismos son aqueles homomorfismos que teñen inverso.. As sustitucións son endomorfismos na álxebra de termos nos que só varían un número finito de variables. Dado que unha parte deste traballo, utiliza as sustitucións nunha forma máis restrinxida que a usual, ó ser necesario explicitar as variables do dominio e da imaxe, emprégase o nome de substitución para non confundir este tipo de homomorfismos, entre álxebras de termos sobre conxuntos finitos, coas sustitucións. ' Definición 2.19 Sexan X, Y conxuntos finitos de variables. T^ (X ) a T^(Y) serán chamados substitucións de X a Y.. Os homomorfismos de. 0 feito de facer explícitas tales variables é unha a.lternativa á dificultade que se crea nun problema (e.g. de E-unificación) polo feito de que unha sustitución pode mover calesquera variables, podendo ser usadas nunha regra ecuacional [95, 45]. En Common e Lescanne [45] empréganse sustitucións no senso habitual, así como T(X )-substitucións que corresponden ás mencionadas substitucións. A relación entre ambas é moi forte como se mostra a continuación : 2.30 Se^an X, Y con^untos finitos de variables. E^iste unha substitución ^^ de X a Y sse e^iste unha sustitución ^' tal que Dom(^') C_ X, I(^') C_ Y, e para todo t E T^ ( X ), t^' = tQ e, X\ Dom(^) C Y. Proba. Dada ^ esténdese a todo T a partir de y^' = y^ se y E X e yQ' = y noutro caso. Dada ^' defínese t^ = t^', t E T^(X). ❑ . Definición 2.20 Se^an E unha signatura, X un conxunto de variables e A unha Eál^ebra de base A. unha E-asignación é unha aplicación X^ A. Denotarase por ^X : X--> T^(X ) a asignación r^(^) _ ^, '. unha E-álxebra inicial A é unha E-cílxebra, tal que dada calquera outra E-álxebra B e^iste un único E-homomorfismo ^: A^ B, A é unha E-álxebra libre sobre X se e^iste unha asignación X-^ A, tal que para toda E-álxebra B e asignación X^ B, e^iste un único homomorfismo A^ B, ^^_^. 4os homomorfismos como as substitucións serán aplicados pola dereita..

(34) Capí t ulo 2. 31. 2.31 As E-ál^ebras iniciais, así como as E-ál^ebras libres sobre un X dado, son únácas agás isomorfismos. •. Proba. Se A, B son iniciais, entón existen homomorfismos únicos A^ B, B^ A. Pola unicidade ^^ : A--^ A debe ser a identidade de A e ^^ : B--^ B a identidade de B. Por elo ^ _ ^-1. Análogamente obtense o resultado para as libres ^. 2.32 Se^a ^: X^ A unha asignación arbitraria. homomorfismo ^' : T^ (X ) -> A tal que rl o ^' _ ^. .. Entón e^iste un único. Proba. ( f(t1, ..., tn))^' = f(t1^', ..., tn^') está ben definida e é a única forma na que se garantiza que sexa homomorfismo ❑ . 2.33 A álzebra TE(^) é a E-ál^ebra inicial e T^(X) é a E-ál^ebra libre sobre X. Dada unha asignación ^ : X-^ A, expresarase igualmente por ^ o correspondente homomorfismo T^ (X ) ^ A. ^ ^ Congruencias. ^. Definición 2.21 Sexa A unha E-ál^ebra. Unha relación binaria - en A é unha Econgruencia se se verifican :. i) = é unha relación de equivalencia en A, ii^ dado f E E , ar( f)= k, at, bt E A, a= = bt, i : 1. .. k Entón f,^(al, ..., ak) _ fA(b^, • • , b^) • Unha congruencia = é completamente invariante (^3^3^^ se dado calquera endomorfismo ^: A-^ A, tal que a- b entón (a)^ -(b)^.. Exemplo 2.5 E_{ f}, A={a, b, c}, fA(a) = a, fA(b) = b, fA(c) = c. Defínese unha relación R={(a, b) }. R^enera unha relación de equivalencia - que non é completamente invariante, ^a que o endomorfismo (a)^ = c, (b)^ = b, (c)^ = c, verifica que a - b, (a)^ ^ (b)^.. Toda E-congruencia sobre unha álxebra A, define unha E-álxebra cociente A/ _ dada por fA^=([al], ...,[ak]) _[fA(al, ..., ak)] onde [a;] representa á clase de at en A/ -. Pola definición dada verifícase que A/ - é unha E-álxebra e a aplicación canónica A-^ A/ -, a^[a] é un E-homomorfismo. A conexión entre E-congruencias e E-homomorfismos, é de feito máis forte, pois dado un E-homomorfismo obtense unha E-congruenc^a..

Referencias

Documento similar

75 REGLERO CAMPOS, F. Sistema de Responsabilidad Civil Contractual y Extracontractual, op., cit., p.70.. se traten de dos acciones de diferente naturaleza ya que ambas tienen,

En el siglo XX la educación fue una esfera excepcional (…) El sistema educativo se propuso integrar la nacionalidad mexicana mediante la unificación social y cultural del país

Sin embargo, cuando no existe suficiente competencia en la producción de electricidad, la unificación de estas dos actividades podría provocar también el efecto contrario, ya que las

a) Unificación del reino cristiano con la toma de Granada. c) Descubrimiento de América en 1492. d) Intensificación de las relaciones entre la corte italiana y la española. e)

cónyuges hubiere efectuado una opción, y si no la hubiere, en el que se registre la mayor antigüedad como beneficiario. Producida la unificación de oficio los cónyuges podrán

Establecer que la “Comisión del Sistema de Capacitación de Bomberos de la Provincia de Buenos Aires“ tendrá como objetivo principal la unificación de pautas, contenidos y

Si América Latina sigue operando como significación de un territorio mientras su literatura pretende escapar de toda unificación, recurriremos en este estudio a

La sentencia de unificación SUJ2-005-16 ratificó que el término de prescripción para el reconocimiento de los derechos laborales derivados de la declaración del contrato