6 research outputs found

    Paving the Way for Temporal Grounding

    Get PDF
    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

    Get PDF
    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

    Get PDF
    [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

    No full text

    Normal Form Nested Programs

    No full text
    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
    corecore