10 research outputs found
Automated deduction with built-in theories: completeness results and constraint solving techniques
Postprint (published version
Proceedings of Sixth International Workshop on Unification
Swiss National Science Foundation; Austrian Federal Ministry of Science and Research; Deutsche Forschungsgemeinschaft (SFB 314); Christ Church, Oxford; Oxford University Computing Laborator
Modularity and Combination of Associative Commutative Congruence Closure Algorithms enriched with Semantic Properties
Algorithms for computing congruence closure of ground equations over
uninterpreted symbols and interpreted symbols satisfying associativity and
commutativity (AC) properties are proposed. The algorithms are based on a
framework for computing a congruence closure by abstracting nonflat terms by
constants as proposed first in Kapur's congruence closure algorithm (RTA97).
The framework is general, flexible, and has been extended also to develop
congruence closure algorithms for the cases when associative-commutative
function symbols can have additional properties including idempotency,
nilpotency, identities, cancellativity and group properties as well as their
various combinations. Algorithms are modular; their correctness and termination
proofs are simple, exploiting modularity. Unlike earlier algorithms, the
proposed algorithms neither rely on complex AC compatible well-founded
orderings on nonvariable terms nor need to use the associative-commutative
unification and extension rules in completion for generating canonical rewrite
systems for congruence closures. They are particularly suited for integrating
into the Satisfiability modulo Theories (SMT) solvers. A new way to view
Groebner basis algorithm for polynomial ideals with integer coefficients as a
combination of the congruence closures over the AC symbol * with the identity 1
and the congruence closure over an Abelian group with + is outlined
Automated Deduction – CADE 28
This open access book constitutes the proceeding of the 28th International Conference on Automated Deduction, CADE 28, held virtually in July 2021. The 29 full papers and 7 system descriptions presented together with 2 invited papers were carefully reviewed and selected from 76 submissions. CADE is the major forum for the presentation of research in all aspects of automated deduction, including foundations, applications, implementations, and practical experience. The papers are organized in the following topics: Logical foundations; theory and principles; implementation and application; ATP and AI; and system descriptions
Towards a Framework for Proving Termination of Maude Programs
Maude es un lenguaje de programación declarativo basado en la lógica de reescritura
que incorpora muchas caracterÃsticas que lo hacen muy potente. Sin
embargo, a la hora de probar ciertas propiedades computacionales esto conlleva
dificultades. La tarea de probar la terminación de sistemas de reesctritura
es de hecho bastante dura, pero aplicada a lenguajes de programación reales
se concierte en más complicada debido a estas caracterÃsticas inherentes. Esto
provoca que métodos para probar la terminación de este tipo de programas
requieran técnicas especÃficas y un análisis cuidadoso. Varios trabajos han intentado
probar terminación de (un subconjunto de) programas Maude. Sin
embargo, todos ellos siguen una aproximación transformacional, donde el programa
original es trasformado hasta alcanzar un sistema de reescritura capaz
de ser manejado con las técnicas y herramientas de terminación existentes. En
la práctica, el hecho de transformar los sistemas originales suele complicar la
demostración de la terminación ya que esto introduce nuevos sÃmbolos y reglas
en el sistema. En esta tesis, llevamos a cabo el problema de probar terminación
de (un subconjunto de) programas Maude mediante métodos directos.
Por un lado, nos centramos en la estrategia de Maude. Maude es un lenguaje
impaciente donde los argumentos de una función son evaluados siempre
antes de la aplicación de la función que los usa. Esta estrategia (conocida como
llamada por valor) puede provocar la no terminación si los programas no
están escritos cuidadosamente. Por esta razón, Maude (en concreto) incorpora
mecanismos para controlar la ejecución de programas como las anotaciones
sintácticas que están asociadas a los argumentos de los sÃmbolos. En reescritura,
esta estrategia serÃa conocida como reescritura sensible al contexto
innermost (RSCI).
Por otro lado, Maude también incorpora la posibilidad de declarar atributos.Alarcón Jiménez, B. (2011). Towards a Framework for Proving Termination of Maude Programs [Tesis doctoral no publicada]. Universitat Politècnica de València. https://doi.org/10.4995/Thesis/10251/11003Palanci
Dynamic Order-Sorted Term-Rewriting Systems
This thesis considers the problems of order-sorted equational logic and its operational interpretation, order-sorted term rewriting
Termination of term rewriting : well-foundedness, totality and transformations
Dit proefschrift gaat over eigenschappen van terminatie van herschrijfsystemen. We zullen eerst
aan de hand van een voorbeeld dat gaat over optellen van de getallen de belangrijkste concepten
proberen uit te leggen. Vervolgens vatten we de inhoud van het proefschrift kort samen.
Een bekende eigenschap van optellen (\add") is dat optellen met het getal nul een neutrale
bewerking is. We kunnen dit in een vergelijking als volgt formuleren:
add(0; x) = x; add(x; 0) = x
waarbij x een variabele is die een willekeurig natuurlijke getal voorstelt.
Een andere optelwet gaat over de volgorde van berekeningen: add(x; add(y; 1)) kan ook
worden verkregen door eerst add(x; y) te berekenen en dan bij dit resultaat 1 op te tellen.
Stellen we de natuurlijke getallen voor door 0, s(0), s(s(0)), etc.(s betekent \successor") dan
luidt deze wet in formulevorm:
add(x; s(y)) = s(add(x; y))
Op analoge wijze vinden we ook de vergelijking:
add(s(x); y) = s(add(x; y))
Nu zijn we in staat om 1 +2op formele wijze te berekenen. Daartoe schrijven we eerst
1 +2als add(s(0); s(s(0))) en proberen we vervolgens de laatste formule te vereenvoudigen
door optelwetten toe te passen. Een mogelijke manier om dit te doen is als volgt:
add(s(0); s(s(0))) = s(add(s(0); s(0)))
= s(s(add(s(0); 0)))
= s(s(s(0)))
In dit voorbeeld zien we duidelijk dat de vergelijkingen voor add in een bepaalde richting
werden gebruikt. Dit \gericht" gebruik van vergelijkingen heet herschrijven.
In het algemeen herschrijven we termen uit een zg. termalgebra. Een termalgebra wordt
verkregen uit een gegeven verzameling van variabelen, zeg X, en een verzameling van func-
tiesymbolen, zeg F. Bij elk functiesymbool hoort een natuurlijke getal, de ariteit, die het aantal
argumenten van het functiesymbool aangeeft. Variabelen hebben ariteit nul.
Termen worden inductief opgebouwd door functiesymbolen toe te passen op andere termen.
Uiteraard dient hierbij de ariteit te worden gerespecteerd. De verzameling van termen wordt
217?218 Samenvatting
genoteerd door T (F; X). In het optelvoorbeeld geldt: \s" heeft ariteit 1, \add" heeft ariteit 2
en \0" heeft ariteit 0, en add(x; s(y)) is een term van de termalgebra T (fadd; s;0; g; fx; yg).
Nu we weten wat de objecten zijn waarmee we herschrijven kunnen we afspreken hoe we
gaan herschrijven. We gaan ervan uit dat we een aantal vergelijkingen hebben waarin we
een linker- en een rechterdeel onderscheiden bestaande uit termen van een termalgebra. Een
vergelijking l = r leidt tot de herschrijfregel l ! r, waarbij de pijl de richting van het gebruik
van de vergelijking aangeeft. Zo'n verzameling regels heet een termherschrijfsysteem (afgekort
tot TRS). Bijvoorbeeld:
add(0; x) ! x (1)
add(x; 0) ! x (2)
add(x; s(y)) ! s(add(x; y)) (3)
add(s(x); y) ! s(add(x; y)) (4)
is een TRS.
Een TRS induceert een herschrijfrelatie !R (of !) in de verzamelingen van termen. Een
term s herschrijft tot een term t (notatie s !R t) indien we in s een deel g herkennen dat
correspondeert met een linkerdeel van een regel in R en t wordt uit s verkregen door g te
vervangen door het overeenkomstige rechterdeel van de gevonden regel.
Veronderstel dat we de term add(s(0); s(0)) willen herschrijven. We kunnen bovenstaande
regels (3) en (4) gebruiken. Natuurlijke leidt dit tot de vraag: \wanneer verschillende regels
toegestaan zijn, is het uiteindelijke resultaat onafhankelijk van de gekozen regel?". Systemen
waarvoor het antwoord \ja" is voldoen aan de Church-Rosser eigenschap; ze worden ook wel
con uent genoemd. Niet elk TRS is echter con uent.
Een andere belangrijk vraag is: \als we een willekeurige term herschrijven, kunnen we dan
garanderen dat we na een eindig aantal herschrijvingen tot een term komen waarop geen regel
toepasbaar is (normaal vorm)?". In het algemeen is hierop geen bevestigend antwoord te
geven. Systemen die gegarandeerd leiden tot een normaalvorm heten terminerend. Terminatie
is onbeslisbaar, d.w.z. er is geen procedure die uitsluitsel geeft over terminatie van een TRS.
Desalniettemin bestaan er vele bruikbare methoden die behulpzaam zijn bij het geven van
een bewijs van terminatie. Ruwweg kunnen we twee soorten methoden onderscheiden (beiden
worden in dit proefschrift behandeld):
syntactische methoden,
semantische methoden.
De syntactische methoden maken alleen gebruik van de syntactische structuur van termen om
tot een terminatie uitspraak te komen. Voorbeeld van deze methoden zijn de zogenaamde pad
ordeningen. In de semantische methoden worden termen compositioneel ge?nterpreteerd in een
algebra om zo terminatie te bewijzen; dit betekent dat we een verzamelingen A, een parti?ele
ordening >, en operaties fA voor elke functiesymbool f in F, moeten deni?eren. Elke term
in A kan worden ge?nterpreteerd door een toekenning van waardes van A aan variabelen, De
ordening > mits welgefundeerd kan worden gebruikt om terminatie van het systeem te bewijzen.?Samenvatting 219
Beiden soorten van methoden gebruiken in essentie het concept \welgefundeerde ordening".
Een ordening is een binaire relatie > (lees groter dan) met de eigenschappen irre exibiliteit
(s 6 > svoor elke s, d.w.z. geen element is groter dan zichzelf) en transitiviteit (als s >ten t >u
dan ook s > u). Een welgefundeerde ordening is een ordening > waarin geen oneindige rijen
van de vorm s0 > s1 > s2 >: : :, bestaan. Als voor een TRS R een welgefundeerde ordening
> bestaat zodanig dat uit s !R t volgt s >t dan termineert R. Dus welgefundeerdheid van
ordeningen is een zeer belangrijk en relevant onderwerp in de studie van terminatie.
Zoals reeds eerder gezegd gaat dit proefschrift over terminatie van herschrijfsystemen.
In hoofdstuk 1 beschrijven we in het kort de concepten TRS en terminatie van TRS.
Hoofdstuk 2 bevat een uitvoerige samenvatting van denities, notaties and resultaten opdat
het proefschrift op zichzelf staande is.
In hoofdstuk 3 bestuderen we welgefundeerdheid van ordeningen gedenieerd op de verza-
meling van termen. Welgefundeerdheid van ordeningen is in het algemeen moeilijk te bewijzen,
het is daarom gewenst om eenvoudige criteria te hebben die de welgefundeerdheidseigenschap
kunnen controleren. Zulke criteria worden in dit hoofdstuk gegeven, waardoor welgefundeerheid
van bekende ordeningen zoals rpo geconcludeerd kan worden. Een belangrijk voordeel van deze
criteria is dat ze gelden voor alle terminerende TRSen in tegenstelling tot bv. de stelling van
Kruskal.
Hoofdstuk 4 is verdeeld in twee delen. In het eerste deel bestuderen we het algemene pro-
bleem van het deni?eren van recursieve pad ordeningen op termen. In het tweede deel kijken we
naar een andere belangrijke eigenschap van ordeningen nl. totaliteit. Totale ordeningen hebben
de eigenschap dat elk tweetal (verschillende) elementen uit de verzameling waarover de ordening
is gedenieerd vergelijkbaar is. We tonen aan dat bekende ordeningen zoals rpo of kbo in
essentie totaal zijn. Dit betekent dat TRSen waarvan we terminatie met deze ordeningen kunnen
bewijzen ook ge?nterpreteerd kunnen worden in totale welgefundeerde monotone algebra's. Dit
type terminatie noemen we totale terminatie.
In hoofdstuk 5 gaan we verder in op totale terminatie. We kijken naar eigenschappen van
algebra's die in bewijzen voor totale terminatie gebruikt kunnen worden. Het blijkt dat de inte-
ressante algebra's precies gekarakteriseerd kunnen worden, nl. ze zijn algebra's die overeenkomen
met multiverzamelingen over een verzameling. We gebruiken in dit hoofdstuk eigenschappen
van de ordinalen en we zijn in staat om enige interessante resultaten over TRSen af te leiden.
In het laatste hoofdstuk introduceren we enige transformaties gedenieerd op termen (en
dus ook op TRSen) die de taak om terminatie te bewijzen vergemakkelijken. Een gegeven
TRS kan worden getransformeerd tot een nieuwe TRS met in het algemeen meer regels maar
met een eenvoudigere syntactische structuur. We bewijzen de opmerkelijke eigenschap dat
terminatie van de oorspronkelijke TRS volgt uit terminatie van de getransformeerde TRS. Dit
geeft een techniek die eenvoudig aan bestaande automatische terminatiebewijssystemen kan
worden toegevoegd die daarmee terminatie van meer TRSen kunnen bewijzen. Deze techniek
blijft van toepassing voor herschrijven modulo vergelijkingen.
In de appendix geven we bewijzen van bekende resultaten. Deze bewijzen zijn of nieuw of
bestaand maar dan moeilijk te vinden in de literatuur. Daardoor is dit proefschrift meer op
zichzelf staand.?220 Samenvattin