6 research outputs found
Paving the Way for Temporal Grounding
In this paper we consider the problem of introducing variables in temporal logic programs under the formalism of Temporal Equilibrium Logic (TEL), an extension of Answer Set Programming (ASP) for dealing with linear-time modal operators. We provide several fundamental contributions that pave the way for the implementation of a grounding process, that is, a method that allows replacing variables by ground instances in all the possible (or better, relevant) ways
Intelligent Instantiation and Supersafe Rules
In the input languages of most answer set solvers, a rule with variables has, conceptually, infinitely many instances. The primary role of the process of intelligent instillation is to identify a finite set of ground instances of rules of the given program that are "essential" for generating its stable models. This process can be launched only when all rules of the program are safe. If a program contains arithmetic operations or comparisons then its rules are expected to satisfy conditions that are even stronger than safety. This paper is an attempt to make the idea of an essential instance and the need for "supersafety" in the process of intelligent instantiation mathematically
precise
Temporal Answer Set Programming
[Abstract]
Commonsense temporal reasoning is full of situations that require drawing default conclusions, since we rarely have all the information available. Unfortunately,
most modal temporal logics cannot accommodate default reasoning, since they typically deal with a monotonic inference relation. On the other hand, non-monotonic approaches are very expensive and their treatment of time is not so well delimited and studied as in modal logic.
Temporal Equilibrium Logic (TEL) is the first non-monotonic temporal logic
which fully covers the syntax of some standard modal temporal approach
without requiring further constructions. TEL shares the syntax of Linear-time
Temporal Logic (LTL) (first proposed by Arthur Prior and later extended by
Hans Kamp) which has become one of the simplest, most used and best known
temporal logics in Theoretical Computer Science.
Although TEL had been already defined, few results were known about its fundamental properties and nothing at all on potential computational methods that could be applied for practical purposes. This situation unfavourably contrasted with the huge body of knowledge available for LTL, both in well-known formal properties and in computing methods with practical implementations.
In this thesis we have mostly filled this gap, following a research program that
has systematically analysed different essential properties of TEL and, simultaneously, built computational tools for its practical application. As an overall, this thesis collects a corpus of results that constitutes a significant breakthrough in the knowledge about TEL.[Resumen]
El razonamiento temporal del sentido común está lleno de situaciones que requieren suponer conclusiones por defecto, puesto que raramente contamos con toda la información disponible. Lamentablemente, la mayoría de lógicas modales temporales no permiten modelar este tipo de razonamiento por defecto
debido a que, típicamente, se definen por medio de relaciones de inferencia
monótonas. Por el contrario, las aproximaciones no monótonas existentes son
típicamente muy costosas pero su manejo del tiempo no está tan bien delimitado como en lógica modal.
Temporal Equilibrium Logic (TEL) es la primera lógica temporal no monótona
que cubre totalmente la sintaxis de alguna de las lógicas modales tradicionales
sin requerir el uso de más construcciones. TEL comparte la sintaxis de Linear-time Temporal Logic (LTL) (formalismo propuesto por Arthur Prior y posteriormente extendido por Hans Kamp), que es una de las lógicas más
simples, utilizadas y mejor conocidas en Teoría de la Computación.
Aunque TEL había sido definido, muy pocas propiedades eran conocidas,
lo que contrastaba con el vasto conocimiento de LTL que está presente en el estado del arte. En esta tesis hemos estudiado diferentes aspectos de TEL, una novedosa combinación de lógica modal temporal y un formalismo no monótono.
A grandes rasgos, esta tesis recoge un conjunto de resultados, tanto desde el punto de vista teórico como práctico, que constituye un gran avance en lo relativo al conocimiento sobre TEL.[Resumo]
O razoamento do sentido común aplicado ao caso temporal está cheo de situacións
que requiren supoñer conclusións por defecto, posto que raramente
contamos con toda a información dispoñible. Lamentablemente a maioría de
lóxicas modais temporáis non permiten modelar este tipo de razoamento por
defecto debido a que, típicamente, están definidas por medio de relacións de
inferencia monótonas. Pola contra, as aproximacións non monótonas existentes
son moi costosos e o seu tratamento do tempo non está ben tan delimitado
nin estudiado como nas lóxicas modais.
Temporal Equilibrium Logic (TEL) é a primeira aproximación non monótona
que cubre totalmente a sintaxe dalgunha das lóxicas modais traidicionáis
sen requerir o uso de máis construccións. TEL comparte a sintaxe de Lineartime
Temporal Logic (LTL) (formalismo proposto por Arthur Prior e extendido
posteriormente por Hans Kamp), que é considerada unha das lóxicas modais
máis simples, utilizadas e coñecidas dentro da Teoría da Computación.
Aínda que TEL xa fora definido previamente, moi poucas das súas propiedades
eran coñecidas, dato que contrasta co vasto coñecemento de LTL existente
no estado da arte. Nesta tese, estudiamos diferentes aspectos de TEL,
unha novidosa combinación de lóxica modal temporal e un formalimo non
monótono. A grandes rasgos, esta tese recolle un conxunto de resultados, tanto
dende o punto de vista teórico como práctico, que constitúe un gran avance
no relativo ó coñecemento sobre o formalismo TEL
Normal Form Nested Programs
Dottorato di Ricerca in Matematica ed Informatica,XXII Ciclo,a.a. 2008-2009Nella Programmazione Logica Disgiuntiva (PLD) le regole sono costituite
da una testa e da un corpo. La testa µe una disgiunzione di atomi, mentre
il corpo una congiunzione di letterali. La PLD, sotto la semantica degli
Answer Set [22, 12] µe ampiamente riconosciuta come importante strumento
per la rappresentazione della conoscenza e del ragionamento non monotono.
Lifschitz, Tang e Turner [18] hanno esteso la semantica degli Answer Set
(solo nel caso proposizionale o ground) ad una classe di programmi logici dove
la testa e il corpo delle regole contengono espressioni innestate. Per espres-
sioni innestate si intendono congiunzioni, disgiunzioni e negazione innestati
arbitrariamente. Questa nuova classe di programmi µe chiamata Programmi
Logici Innestati e generalizza la classe dei programmi logici disgiuntivi propo-
sizionali. Inoltre, i programmi logici innestati possono essere trasformati in
programmi logici disgiuntivi, come mostrato da Lifschitz, Tang e Turner in
[18] e da Pearce, et al. in [20]. Questi risultati ci permettono di valutare i
programmi logici innestati usando i sistemi esistenti che supportano la DLP,
come DLV [16], GnT [13], oppure Cmodels3 [17]. Si noti che le trasfor-
mazioni che consentono di ottenere i programma PLD introducono nuovi
simboli e pertanto il programma risultante non µe equivalente al programma
originario nel senso classico. Ad ogni modo esiste una corrispondenza bi-
univoca tra gli answer set del programma innestato con gli answer set del
programma trasformato. Sfortunatamente queste trasformazioni funzionano
solo per programmi proposizionali e dunque non si possono usare le variabili,
uno dei punti di forza dei programmi logici disgiuntivi. Questa limitazione
diminuisce drasticamente l'applicabilitµa dei programmi logici innestati so-
prattutto quando il ragionamento µe fatto su un numero molto grande di
fatti.
Una generalizzazione di queste tecniche a programmi che contengono vari-
abili, non µe ovvia. Per esempio, aggiungendo semplicemente le variabili al
I
II
metodo descritto in [20] si ottengono regole dipendenti dal dominio. Intuiti-
vamente un programma che contiene variabili µe dipendente dal dominio se la
semantica dipende dal particolare dominio che viene scelto per la sua inter-
pretazione. Questa proprietµa µe stata studiata per la prima volta nel contesto
dei sistemi di basi di dati (vedi [1] per approfondimenti). Per i programmi
DLP l'indipendenza dal dominio µe assicurata imponendo ai programmi delle
condizioni sintattiche. Una di queste condizioni µe nota come safety e per le
regole PLD signi¯ca che ogni variabile che compare nella regola deve com-
parire anche in almeno un letterale positivo del corpo.
Motivati da queste considerazioni, in questo lavoro di tesi estendiamo
i programmi logici disgiuntivi non-ground ad una classe di programmi nei
quali la testa delle regole µe una formula in forma normale disgiuntiva com-
posta da atomi, mentre il corpo µe una formula in forma normale congiuntiva
composta da letterali. Questi programmi sono chiamati programmi Normal
Form Nested (NFN) e diversamente dai programmi logici innestati di [18]
possono contenere variabili. In questo lavoro di tesi abbiamo studiato la
semantica e la proprietµa di indipendenza dal dominio e una trasformazione
polinomiale dai programmi NFN ai programmi PLD, che preserva la safety.
Il bisogno di estendere la PLD con congiunzione nella testa e disgiunzione
nel corpo deriva molto spesso da problemi del mondo reale. Ad esempio, il
seguente problema si incontra spesso nelle applicazioni di data-integration.
Sia p(ID; nome; cognome; anni) una relazione globale (per persone) con
un vincolo di chiave sul primo attributo ID. Per realizzare un corretto query-
answering se due tuple condividono la stessa chiave, la relazione persona
viene \riparata" cancellando intenzionalmente una delle due tuple. In PLD,
questo problema viene modellato dalle seguenti regole (dove p rappresenta la
tupla da cancellare e p0 la relazione consistente risultante sulla quale vengono
calcolate le query).
p(I;N; S;A) _ p(I;M; T;B) :- p(I;N; S;A); p(I;M; T;B);N 6= M:
p(I;N; S;A) _ p(I;M; T;B) :- p(I;N; S;A); p(I;M; T;B); S 6= T:
p(I;N; S;A) _ p(I;M; T;B) :- p(I;N; S;A); p(I;M; T;B);A 6= B:
p0(I;N; S;A) :- p(I;N; S;A); not p(I;N; S;A):
La prima regola indica che una delle due tuple viene cancellata se esse
condividono la stessa chiave ma hanno nomi diversi. Analogamente, la se-
conda cancella una delle due tuple se esse hanno la stessa chiave ID ma
cognomi diversi. La terza cancella una delle due tuple se esse hanno la stessa
chiave ma anni diversi. L'ultima regola de¯nisce la tabella riparata.
III
Le prime tre regole DLP possono essere equivalentemente rappresentate
da una sola regola NFN, la quale µe piµu succinta e quindi piµu leggibile:
p(I;N; S;A) _ p(I;M; T;B) :- p(I;N; S;A); p(I;M; T;B);
(N 6= M _ S 6= T _ A 6= B):
In particolare, la regola NFN rappresenta la cancellazione di una delle due
tuple se queste hanno lo stesso ID e nomi diversi, oppure cognomi diversi
oppure anni diversi.
Come ulteriore esempio, consideriamo un problema dal mondo della toeria
dei gra¯: co-CERT3COL|che generalizza la 3-uncolorability, dovuto a I.
Stewart [24]. Dato un grafo G, i cui archi sono etichettati con un insieme non
vuoto di variabili v1; : : : ; vn, trovare un assegnamento di veritµa per v1; : : : ; vn
tale che il sottografo G0 di G, contenente tutti gli archi e tale che almeno un
letterale nelle etichette di e sia vero, non µe 3-colorabile.
Supponiamo che gli archi etichettati siano rappresentati dai predicati
p(X; Y; V ), per indicare che l'arco che connette X ed Y ha un'etichetta posi-
tiva, e n(X; Y; V ) per indicare che l'arco che connette X ed Y ha un'etichetta
negativa V .
Nella seguente tabella, sulla sinistra riportiamo il programma DLP de¯nito
in [5] che risolve co-CERT3COL, mentre sulla destra riportiamo un pro-
gramma NFN equivalente.
DLP encoding NFN encoding
r1 : v(X) :- p(X; Y; V ): ra : v(X); v(Y ) :- p(X; Y; V ) _ n(X; Y; V ):
r2 : v(Y ) :- p(X; Y; V ):
r3 : v(X) :- n(X; Y; V ):
r4 : v(Y ) :- n(X; Y; V ):
r5 : bool(V ) :- p(X; Y; V ): rb : t(V ) _ f(V ) :- p(X; Y; V ) _ n(X; Y; V ):
r6 : bool(V ) :- n(X; Y; V ):
r7 : t(V ) _ f(V ) :- bool(V ):
r8 : c(X; r) :- w; v(X): rc : c(X; r); c(X; g); c(X; b) :- w; v(X):
r9 : c(X; g) :- w; v(X):
r10 : c(X; b) :- w; v(X):
r11 : c(X; r) _ c(X; g) _ c(X; b) :- v(X):
r12 : w :- p(X; Y; V ); t(V ); c(X;A); c(Y;A):
r13 : w :- n(X; Y; V ); f(V ); c(X;A); c(Y;A):
IV
La regola ra sostituisce le regole da r1 a r4, la regola rb sostituisce le
regole da r5 a r7, ed il predicato bool non µe necessario. In ¯ne, la regola rd
sostituisce le regole da r8 ad r10. Le regole r11, r12 e r13 esistono in entrambe
le codi¯che.
Si noti che nel linguaggio NFN riusciamo a rappresentare il problema
con un programma molto piµu succinto ed inoltre non abbiamo bisogno del
predicato intermedio bool.
Contributi I principali contributi della tesi possono essere riassunti come
segue.
1. Abbiamo esteso la DLP introducendo la congiunzione nella testa delle
regole e la disgiunzione nel corpo delle stesse, ottenendo una nuova
classe di programmi: i programmi NFN.
2. Abbiamo studiato le proprietµa dei programmi NFN mostrando i seguenti
risultati.
² Abbiamo dato la de¯nizione di Safety per i programmi NFN e
dimostrato che ogni programma safe µe indipendente dal dominio
(cioµe esso ha gli stessi answer set su ogni universo che estende le
costanti del programma).
² Gli answer set per i programmi NFN coincidono con gli answer
set de¯niti da Lifschitz et al. in [18] per i programmi NLP, sul
segmento del linguaggio comune.
² Gli answer set per i programmi NFN coincidono con i modelli
stabili di Herbrand de¯niti da Ferraris et al. in [7] per le formule
che corrispondono ai programmi NFN.
² Gli answer set per i programmi NFN coincidono con gli answer
set per i programmi DLP de¯niti da Gelfond e Lifschitz in [12].
² La nostra de¯nizione di Safety per i programmi NFN µe piµu gen-
erale di quella de¯nita da Lee et al. in [15] sui programmi NFN,
nel senso che ci sono programmi che non sono safe nella de¯nizione
in [15] ma che sono safe secondo la nostra de¯nizione.
3. Abbiamo progettato un algoritmo che trasforma i programmi NFN
in programmi DLP in modo e±ciente e abbiamo dimostrato che esso
soddisfa importanti proprietµa.
V
² La trasformazione preserva la safety.
² La taglia del programma trasformato µe polinomiale nella taglia
del programma NFN.
² Esiste una corrispondenza biunivoca tra gli answer set del pro-
gramma NFN e quelli del programma riscritto. In questo modo
si possono ottenere gli answer set del programma NFN, da quelli
del programma trasformato, con una semplice proiezione.
4. Abbiamo realizzato un sistema, nfn2dlp, che implementa l'algoritmo di
riscrittura. Inoltre abbiamo implementato anche un sistema che calcola
gli answer set di un programma NFN: nfnsolve. Entrambi i tool sono
disponibili al sito http://www.mat.unical.it/software/nfn2dlp/.Università della Calabri