Descrizione del progetto di Ricerca
Transcript
Descrizione del progetto di Ricerca
Descrizione del progetto di Ricerca “Estensione della Programmazione Logica Disgiuntiva con simboli di funzione, insiemi e liste” Francesco Ricca, Gelsomina Catalano, Veronica Policicchio Sommario La Programmazione Logica Disgiuntiva (PLD) è un formalismo potente per la rappresentazione della conoscenza ed il ragionamento automatico. In breve, la PLD consente di formalizzare, in modo semplice e naurale, problemi decisionali complessi attraverso la scrittura di programmi logici disgiuntivi (una collezione di regole logiche in cui è consentito l’uso sia della disgiunzione nella testa (antecedente) sia della negazione nel corpo (conseguente)). La semantica di tali programmi è basata sulla nozione di answer set, secondo cui ad un programma logico disgiuntivo si associa un insieme di risposte, ognuno corrispondente ad una possibile visione del dominio modellato. La PLD sotto tale semantica (chiamata Answer Set Programming - ASP) si è sviluppata nell’ultimo decennio affermandosi come potente strumento per la rappresentazione dichiarativa della conoscenza e per il ragionamento su di essa. Recentemente sono stati implementati vari sistemi supportanti l’ASP, che ne hanno reso possibile l’impiego in contesti applicativi reali quali, ad esempio, l’integrazione di informazioni, l’individuazione di frodi, la configurazione di prodotti e sistemi software, la verifica del funzionamento di componenti hardware. Se da un lato queste applicazioni hanno confermato i vantaggi dell’uso della PLD per attività avanzate di manipolazione della conoscenza, dall’altro esse hanno evidenziato alcuni seri limiti sia nell’espressività della PLD, sia nell’efficacia degli attuali sistemi di valutazione. 1 2 Nell’ambito di questa ricerca ci proponiamo di muovere un primo passo nella direzione del superamento di questi limiti. Obiettivo principale è la definizione di una estensione della PLD che supporti termini complessi come i simboli di funzione, gli insiemi, e le liste al fine di fornire le basi per ragionare su strutture ricorsive e domini infiniti (come richiesto, ad esempio, da applicazioni manipolanti documenti XML/HTML). Inoltre, ci si occuperà dell’implementazione di un prototipo che possa supportare le estensioni proposte, in modo tale da renderle utilizzabili proficuamente in applicazioni reali. 3 Indice 1 Stato dell’Arte 4 2 Motivazioni della Ricerca 6 3 Attività dei proponenti su tematiche correlate al progetto di ricerca 7 4 Obiettivi 7 5 Piano di lavoro e Durata 8 6 Risultati Attesi 9 4 1 Stato dell’Arte La Programmazione Logica Disgiuntiva (PLD) – un’estensione della programmazione logica, in cui la disgiunzione è ammessa nella testa delle regole – costituisce un formalismo potente per la rappresentazione della conoscenza e per il reasoning [3, 15, 26, 27]. La PLD presenta numerosi vantaggi rispetto alla programmazione logica normale (cioè senza disgiunzione), come, ad esempio, la capacità di rappresentare conoscenza incompleta [3, 15]. La presenza della disgiunzione nella testa delle regole rende la PLD non monotona (nuova conoscenza può inficiare conoscenza pregressa), complicando ulteriormente il problema di definirne la semantica. Sono state proposte diverse semantiche per i programmi logici disgiuntivi [28, 27, 17, 19, 20, 29, 23, 24] (cfr. [1, 9, 15] per una rassegna completa); quella maggiormente diffusa è l’estensione della semantica dei modelli stabili di Gelfond e Lifschitz [12] alle basi di dati deduttive disgiuntive [27, 20]. La semantica dei modelli stabili per la PLD ha un elevato potere espressivo: la PLD con la semantica dei modelli stabili cattura la classe di complessità ΣP2 (cioè permette di esprimere ogni proprietà decidibile in tempo polinomiale da una macchina di Turing non deterministica con un oracolo in NP)1 [30, 31, 33, 32]. Come mostrato in [31], l’elevato potere espressivo della Programmazione Logica Disgiuntiva ha anche una rilevanza pratica; infatti, concrete situazioni del mondo reale possono essere rappresentate dalla PLD, mentre non possono essere espresse da programmi logici senza disgiunzione. Il risultato più significativo degli ultimi dieci anni nel campo della programmazione logica è stato l’implementazione di sistemi che siano in grado di trattare programmi logici con migliaia di regole [34]: DLV, sviluppato dal gruppo di Leone [36, 35], GnT/SModels, sviluppato da Niemela e Simons [44, 37], XSB, sviluppato da Warren e altri [21, 45] e DeReS, sviluppato da Marek e Truszczynski [38]. Tra i sistemi appena citati solo DLV and GnT/SModels supportano la PLD completa, mentre XSB e DeReS supportano solo frammenti (cioè sottolinguaggi) di PLD. L’elevata espressività della PLD assieme alla disponibilità di robusti sistemi che la implementano, come DLV e GnT, hanno incoraggiato l’impiego di questo formalismo in diverse applicazioni orientate alla manipolazione di conoscenza; tra queste elenchiamo, ad esempio, integrazione delle informazioni [39], ragionamento adduttivo [40, 41], configurazione automatica di distribuzione del software [25], correzione automatica di dati censuari [43] rappresentazione della conoscen1 Notiamo che la programmazione logica (non disgiuntiva) è strettamente meno espressiva. 5 za in diversi domini applicativi [3, 42], e specifica di ontologie [46]. In particolare, la PLD (ed il sistema DLV) sono stati utilizzati con successo nel progetto INFOMIX (finanziato dalla Commissione Europea - IST-2002-33570) per avanzate applicazioni di integrazione di informazioni. Un altro progetto europeo, ICONS (IST-2001-32429), utilizza la PLD e DLV come base per sofisticate interrogazioni di knowledge management. La compagnia polacca Rodan Systems S.A. utilizza DLV in un sistema per l’identificazione di manipolazioni di prezzi ed uso non autorizzato di informazioni confidenziali. Ragionatori per la PLD sono anche usati, inoltre, in sistemi di supporto alle decisioni nello Space Shuttle della NASA e per la verifica di componentistica hardware. Nonostante l’alto potere espressivo del linguaggio, esistono alcune semplici proprietà che spesso scaturiscono da applicazioni del mondo reale, che non possono essere codificate in maniera semplice e naturale usando la PLD. Di conseguenza, ne sono state studiate in passato diverse estensioni linguistiche. Ad esempio, particolare attenzione è stata dedicata allo studio di opportuni costrutti che consentissero di esprimere quelle proprietà che richiedono l’uso di operatori aritmetici (come somma, prodotto, conteggio, ecc.) su insiemi di elementi soddisfacenti determinate condizioni [13, 8, 7, 18]. Un’altra seria limitazione degli approcci attuali alla PLD consiste nell’obbligo di lavorare solo con domini formati da un numero finito di valori costanti. Di conseguenza, la codifica dei problemi risulta meno naturale, talora complicata e di basso livello, specialmente nella modellazione di strutture dati ricorsive (si vedano per esempio la codifica di liste in [4] e la discussione in [6]). Queste limitazioni possono essere superate consentendo l’uso di simboli di funzione in PLD, da cui si possono ottenere direttamente costruttori di dati e domini infiniti. Nel caso in cui la PLD sia estesa con simboli di funzione, l’inferenza in questo tipo di logiche risulta altamente indecidibile [22]. Il trattamento dei simboli di funzione e della ricorsione è stato a lungo ritenuto tanto difficile da escludere questi aspetti esplicitamente dalla PLD [16]. In seguito, una linea di ricerca in [6, 5] ha portato all’identificazione di un frammento fortemente espressivo dei programmi logici normali le cui conseguenze credule e scettiche (secondo la semantica dei modelli stabili) sono r.e.-complete2 (o addirittura decidibili se la query è ground) e che gode di proprietà di compattezza. Entrambe le proprietà sono estremamente insolite per le logiche nonmonotone. Questi programmi - detti programmi finitari [2, 6, 11, 14]- generalizzano quelli aciclici e possono effettivamente ragionare con funzioni e ricorsione (dunque 2 r.e. indica ricorsivamente enumerabile. 6 domini e modelli infiniti) anche in presenza di definizioni cicliche. Tale classe di programmi presenta, tuttavia, notevoli difficoltà di applicazione di carattere pratico poiché le condizioni che definiscono i finitari limitano molto il programmatore (ea esempio non è possibile utilizzare regole che hanno variabili free nel corpo [6, 5]) e non sono facilmente riconoscibili in modo automatico. Inoltre, non esistono, per quello che ci risulta, sistemi che implementano questa classe di programmi o che siano in grado di riconoscere ogni programma appartenente a questa classe. 2 Motivazioni della Ricerca Le recenti applicazioni della PLD e dei sistemi che la supportano hanno, da un lato, confermato le potenzialità della PLD, dall’altro lato, hanno evidenziato alcuni limiti degli attuali linguaggi e sistemi. In particolare, una delle principali sfide scientifiche e tecnologiche poste da questi nuovi scenari applicativi risulta essere, a nostro avviso, l’estensione della PLD con termini complessi, come funzioni, insiemi e liste. Tali costrutti, infatti, non sono attualmente supportati da gli attuali linguaggi/sistemi PLD. Di conseguenza, utilizzando tali sistemi non si può ragionare direttamente su strutture ricorsive e su domini infiniti, come su documenti XML/HTML e domini temporali. Questa è certamente una forte limitazione sia per task tradizionali, quali il planning ed il ragionamento sugli eventi in cui il tempo deve essere esplicitamente rappresentato, sia per applicazioni emergenti, come quelle che usano documenti XML come base di conoscenza. Più in dettaglio, una eventuale estensione della PLD con i suddetti costrutti permetterebbe di ottenere i seguenti vantaggi: • Con liste e insiemi si potrebbe facilmente rappresentare strutture dati ricorsive in modo esplicito, senza quindi ricorrere a meccanismi computazionali esterni per ottenerne una codifica indiretta. • L’estensione della classe dei programmi finitari, che allo stato attuale è la classe più ampia di programmi PLD decidibili estesi con funzioni, permetterebbe di aumentare l’espressività di tali programmi. • Il supporto ai domini infiniti consentirebbe di aumentare considerevolmente la classe di problemi risolvibili con sistemi PLD. In particolare, si potrebbero risolvere problemi la cui complessità sia superiore al secondo livello del- 7 la gerarchia polinomiale, cioè superiore alla complessità massima gestibile dalla PLD standard. Siamo convinti, quindi, che una estensione della PLD che fornisca il supporto per domini complessi (come liste ed insiemi), e per simboli di funzione migliorerebbe molto lo stato dell’arte in questo campo. 3 Attività dei proponenti su tematiche correlate al progetto di ricerca Francesco Ricca. Si è occupato della definizione di una estensione della Programmazione Logica Disgiuntiva atta alla definizione e all’interrogazione di ontologie [46] e della sua implementazione nel sistema DLP+. Inoltre, è stato attivamente coinvolto nello sviluppo del sistema DLV, partecipando sia alla fase di progettazione che a quella di implementazione [10, 50, 49, 48, 47]. Ha quindi, maturato una buona conoscenza del linguaggio, dell’architettura, degli algoritmi e delle strutture dati del sistema PLD DLV. Questo è un requisito fondamentale per un progetto di ricerca che si propone di estendere la PLD e DLV. Gelsomina Catalano. Ha studiato approfonditamente il formalismo della Programmazione Logica Disgiuntiva ed il sistema DLV. In particolare ha concentrato la sua attenzione alle tecniche di ottimizzazione per una valutazione efficiente dei programmi logici disgiuntivi. Ha contribuito ad implementare ed integrare nel modulo di istanziazione di DLV un algoritmo, basato su una tecnica di backjumping, per l’istanziazione di regole di un programma logico disgiuntivo. Veronica Policicchio. Si è occupata della generazione di Programmi Logici per la classificazione di documenti testuali. Questi programmi sono un insieme di regole che sfruttano la presenza/assenza di parole chiavi all’interno di un documento per stabilirne l’attinenza a una data categoria. 4 Obiettivi L’obiettivo principale è la definizione di una estensione linguistica alla PLD con termini complessi quali liste, insiemi e simboli di funzione che denominiamo PLD*. 8 Questa estensione richiederà un approfondito studio sia degli aspetti teorici sia delle implicazioni pratiche che derivano dalla loro introduzione. Il risultato di tali studi sarà la definizione della semantica dei programmi PLD*, di strategie per la loro valutazione e l’implementazione prototipale delle estensioni proposte nel sistema DLV. Il lavoro di ricerca seguirà il seguente schema: 1. Studio degli aspetti teorici relativi alla introduzione di termini complessi nella PLD. Si noti che l’uso di simboli di funzione in generale e, di operatori come liste e insiemi in particolare, può farci ottenere programmi ’unsafe’ o renderne non decidibile la valutazione. 2. Estensione della classe dei programmi finitari. Ciò può essere ottenuto: generalizzando alcuni risultati esistenti sulla dimostrazione di decidibilità estendendo i metodi di riconoscimento dei programmi finitari; rilassando le restrizioni sull’uso della ricorsione che attualmente caratterizzano tali programmi. 3. Sviluppo di algoritmi per la valutazione di programmi PLD*. Questa è una fase fondamentale che rende importante la nostra proposta da un punto di vista applicativo. 4. Implementazione delle estensioni studiate e delle tecniche di valutazione in un sistema prototipale. Il sistema sarà quindi, usato per verificare l’efficacia delle tecniche e per diffondere i risultati della ricerca. 5 Piano di lavoro e Durata 1. Studio degli aspetti teorici relativi alla introduzione di termini complessi nella PLD. Tempo Stimato: 3 mesi. 2. Definizione formale di un’estensione decidibile della PLD (PLD*) con insiemi, liste e simboli di funzione. Tempo Stimato: 5 mesi. 3. Lo sviluppo di algoritmi per la valutazione di programmi PLD*. Tempo Stimato: 2 mesi. 9 4. L’implementazione delle estensioni studiate nel sistema DLV Tempo Stimato: 2 mesi. 6 Risultati Attesi I risultati che ci attendiamo possono essere riassunti come segue: • Analisi delle tematiche principali relative alla estensione della PLD con termini complessi. • Definizione formale di una estensione decidibile della PLD con insiemi liste e simboli di funzione ottenuta attraverso l’estensione della classe dei finitari e la definizione di metodi che consentono di verificare l’appartenenza dei programmi a tale classe. • Definizione di algoritmi in grado di identificare e valutare i programmi PLD*. • Estensione prototipale del sistema DLV per la valutazione di programmi PLD*. Riferimenti bibliografici [1] K. Apt and N. Bol. Logic Programming and Negation: A Survey. Journal of Logic Programming, 19/20:9–71, 1994. [2] Krzysztof R. Apt and Marc Bezem. Acyclic programs. In Proceedings of the Seventh International Conference on Logic Programming (ICLP’90), pages 617–633, Jerusalem, Israel, June 1990. MIT Press. [3] C. Baral and M. Gelfond. Logic Programming and Knowledge Representation. Journal of Logic Programming, 19/20:73–148, 1994. [4] Chitta Baral. Knowledge Representation, Reasoning and Declarative Problem Solving. Cambridge University Press, 2002. [5] Piero A. Bonatti. Prototypes for Reasoning with Infinite Stable Models and Function Symbols. In Thomas Eiter, Wolfgang Faber, and Mirosław Truszczyński, editors, Proceedings of the 6th International Conference on Logic 10 Programming and Nonmonotonic Reasoning (LPNMR-01), number 2173 in LNCS, pages 416–419. Springer, 2001. [6] Piero A. Bonatti. Reasoning with Infinite Stable Models. In Proceedings of the Seventeenth International Joint Conference on Artificial Intelligence (IJCAI) 2001, pages 603–610, Seattle, WA, USA, August 2001. Morgan Kaufmann Publishers. [7] Tina Dell’Armi, Wolfgang Faber, Giuseppe Ielpa, Nicola Leone, and Gerald Pfeifer. Aggregate Functions in Disjunctive Logic Programming: Semantics, Complexity, and Implementation in DLV. In Proceedings of the 18th International Joint Conference on Artificial Intelligence (IJCAI) 2003, pages 847–852, Acapulco, Mexico, August 2003. Morgan Kaufmann Publishers. [8] M. Denecker, N. Pelov, and M. Bruynooghe. Ultimate Well-Founded and Stable Model Semantics for Logic Programs with Aggregates. In Philippe Codognet, editor, Proceedings of the 17th International Conference on Logic Programming, pages 212–226. Springer Verlag, 2001. [9] J. Dix. Semantics of Logic Programs: Their Intuitions and Formal Properties. An Overview. In Logic, Action and Information. Proceedings of the Konstanz Colloquium in Logic and Information (LogIn’92), pages 241–329. DeGruyter, 1995. [10] Wolfgang Faber and Francesco Ricca. Solving Hard ASP Programs Efficiently. In Chitta Baral, Gianluigi Greco, Nicola Leone, and Giorgio Terracina, editors, Logic Programming and Nonmonotonic Reasoning — 8th International Conference, LPNMR’05, Diamante, Italy, September 2005, Proceedings, volume 3662 of Lecture Notes in Computer Science, pages 240–252. Springer Verlag, September 2005. [11] François Fages. Consistency of Clark’s Completion and Existence of Stable Models. Journal of Methods of Logic in Computer Science, 1(1):51–60, 1994. [12] M. Gelfond and V. Lifschitz. The Stable Model Semantics for Logic Programming. In Logic Programming: Proceedings Fifth Intl Conference and Symposium, pages 1070–1080, Cambridge, Mass., 1988. MIT Press. [13] David B. Kemp and Peter J. Stuckey. Semantics of Logic Programs with Aggregates. In Vijay A. Saraswat and Kazunori Ueda, editors, Proceedings 11 of the International Symposium on Logic Programming (ISLP’91), pages 387–401. MIT Press, 1991. [14] J.W. Lloyd. Foundations of Logic Programming. Springer, Berlin, 1984. [15] Lobo, J., Minker, J., Rajasekar, A., Foundations of disjunctive logic programming, The MIT Press, 1992. [16] V.W. Marek and J.B. Remmel. On the Expressibility of Stable Logic Programming. In Thomas Eiter, Wolfgang Faber, and Mirosław Truszczyński, editors, Proceedings of the 6th International Conference on Logic Programming and Nonmonotonic Reasoning (LPNMR-01), number 2173 in LNCS, pages 107–120. Springer, 2001. [17] Jack Minker. On Indefinite Data Bases and the Closed World Assumption. In D.W. Loveland, editor, Proceedings 6th Conference on Automated Deduction (CADE ’82), number 138 in Lecture Notes in Computer Science, pages 292–308, New York, 1982. Springer. [18] Nikolay Pelov and Mirosław Truszczyński. Semantics of disjunctive programs with monotone aggregates - an operator-based approach. In Proceedings of the 10th International Workshop on Non-monotonic Reasoning (NMR 2004), Whistler, BC, Canada, pages 327–334, 2004. [19] T. Przymusinski. Stationary Semantics for Disjunctive Logic Programs and Deductive Databases. In Proceedings of North American Conference on Logic Programming, pages 40–62, 1990. [20] Teodor C. Przymusinski. Stable Semantics for Disjunctive Programs. New Generation Computing, 9:401–424, 1991. [21] Prasad Rao, Konstantinos F. Sagonas, Terrance Swift, David S. Warren, and Juliana Freire. XSB: A System for Efficiently Computing Well-Founded Semantics. In Jürgen Dix, Ulrich Furbach, and Anil Nerode, editors, Proceedings of the 4th International Conference on Logic Programming and Non-Monotonic Reasoning (LPNMR’97), number 1265 in Lecture Notes in AI (LNAI), pages 2–17, Dagstuhl, Germany, July 1997. Springer Verlag. [22] Raymond Reiter. A Logic for Default Reasoning. Artificial Intelligence, 13(1–2):81–132, 1980. 12 [23] K.A. Ross. The Well-Founded Semantics for Disjunctive Logic Programs. In W. Kim, J.-M. Nicolas, and S. Nishio, editors, Deductive and ObjectOriented Databases, pages 385–402. Elsevier Science Publishers B. V., 1990. [24] C. Sakama. Possible Model Semantics for Disjunctive Databases. In Proceedings First Intl. Conf. on Deductive and Object-Oriented Databases (DOOD-89), pages 369–383, Kyoto, Japan, 1989. North-Holland. [25] Patrik Simons. Extending and Implementing the Stable Model Semantics. PhD thesis, Helsinki University of Technology, Finland, 2000. [26] IFIP-GI Workshop: Disjunctive Logic Programming and Disjunctive Databases, 13-th IFIP World Computer Congress, Hamburg, August, 1994. [27] Gelfond, M., Lifschitz, V., Classical Negation in Logic Programs and Disjunctive Databases, New Generation Computing, 9:365-385, 1991. [28] Brass, S., Dix, J., Disjunctive Semantics Based upon Partial and Bottom-Up Evaluation, Proc. of the 12th Int. Conf. on Logic Programming, MIT Press, Tokyo, June, 1995, pp. 199–213. [29] Przymusinski, T., Static Semantics for Normal and Disjunctive Logic Programs, Annals of Mathematics and Artificial Intelligence, Special Issue on Disjunctive Programs, 1995. [30] Gottlob, G., Complexity and Expressive Power of Disjunctive Logic Programming, Proceedings ILPS ’94, pages 23–42, MIT Press, 1994. [31] Eiter, T., Gottlob, G., and H. Mannila, H., Adding Disjunction to Datalog, Proceedings ACM PODS-94, May 1994, pp. 267–278. [32] Eiter, T., Gottlob, G., and H. Mannila, H., Disjunctive Logic Programming over Finite Structures. In U. Fuhrbach, editor, Proceedings GI Workshop on Disjunctive Logic Programming and Disjunctive Databases, 13th World Computer Congress IFIP Congress ’94, August 1994. [33] Eiter, T., Gottlob, G., and H. Mannila, H., Expressive Power and Complexity of Disjunctive Datalog under the Stable Model Semantics. In K. van Luck and H. Marburger, editors, Management and Processing of Complex Data Structures – Proceedings of the Third Workshop on Information Systems and Artificial Intelligence, number 777 in LNCS, pages 83–103. Springer, 1994. 13 [34] Minker, J., Seipel, D., Disjunctive Logic Programming: A Survey and Assessment, , 2000. [35] Eiter, T., Leone, N., Mateis, C., Pfeifer, G., and Scarcello, F., The kr system DLV: Progress report, comparisons, and benchmarks, Proc. of the 6th International Conference on Principles of Knowledge Representation and Reasoning (KR’98), A.G. Cohn, L. Schubert, and S.C. Schapiro, editors, pages 406–417, Trento, Italy, 1998. [36] Eiter, T., Leone, N., Mateis, C., Pfeifer, G., and Scarcello, F., A Deductive System for Non-Monotonic Reasoning, Proc. of the 4th International Conference on Logic Programming and Nonmonotonic Reasoning (LPNMR’97), J. Dix, U. Furbach, and A. Nerode, editors, Springer, LNAI 1265, pages 364–375, 1997. [37] Janhunen, T., Niemela, I., and Simons, P., Partiality and Disjunctions in Stable Model Semantics, Proc. of the 7th International Conference on Principles of Knowledge Representation and Reasoning (KR’00), Colorado, USA, 2000. [38] Cholewinsky, P., Marek, A., Mikitiuk, V. W., and Truszczynski, M., Computing with default logic, Journal of Artificial Intelligence, 112(1–2): pp. 105–146, 1999. [39] Grant, J., Minker, J., A Logic-Based Approach to Data Integration, Technical Report, University of Maryland, CS-TR#4179, UMIACS-TR#2000-61, 2000. [40] Sakama, C., Inoue, K., Abductive logic programming and disjunctive logic programming: their relationship and transferability, Journal of Logic Programming, 44(1–3): pages 75–100, July/August 2000. [41] Eiter, T., Faber, W., Leone, N., and Pfeifer, G., The Diagnosis Frontend of the DLV System, Research Report, TU Vienna, DBAI-TR-98-20, 1998. [42] Eiter, T., Faber, W., Leone, N., and Pfeifer, G., Declarative Problem Solving Using the DLV System, Book on Logic and AI, J. Minker, editor, 2000/2001. [43] W. Faber, N. Leone, G. Pfeifer, Optimizing the Computation of Heuristics for Answer Set Programming Systems, Proceedings of the 6th Logic Programming and Non-Monotonic Reasoning Conference – LPNMR’01, Lectu- 14 re Notes in Artificial Intelligence (LNAI), Springer-Verlag, Vienna, Austria, September 2001. [44] Niemela, I., Simons, P., Smodels – An Implementation of the Stable Model and Well-Founded Semantics for Normal Logic Programs, Proc. of the 4th International Conference on Logic Programming and Nonmonotonic Reasoning (LPNMR’97), J. Dix, U. Furbach, and A. Nerode, editors, Springer, LNAI 1265, pages 420–429, 1997. [45] Warren, D.S., et al., The XSB Programming System, Technical Report, State University of New York at Stonybrook, http://www.cs.sunysb.edu/sbprolog/xsb-page.html, 1999. [46] Ricca, F. and Leone, N., Disjunctive Logic Programming with Types and Objects: The DLV+ System, Journal of Applied Logics, Elsevier ISSN: 1570-8683 (to appear) KBS Research Reports INFSYS RR-1843-05-10 Institut für Informationssysteme Technische Universität Wien Favoritenstrasse 11 A-1040 Vienna Austria [47] Ricca, F., Faber W. and Leone, N., A Backjumping Tecnique for Disjunctive Logic Programming, AI Communications IOS Press ISSN: 0921-7126 (to appear) KBS Research Reports INFSYS RR-1843-05-08 Institut für Informationssysteme Technische Universität Wien Favoritenstrasse 11 A-1040 Vienna Austria [48] Ricca F., Leone N., De Bonis V., Dell’Armi T., Galizia S. and Grasso G. A DLP System with Object-Oriented Features, Proceedings of The 8th International Conference on Logic Programming and Nonmonotonic Reasoning, LPNMR 2005, Diamante, CS, Italy, September 2005, LNCS vol. 3662, pp. 432-436, Springer-Verlag GmbH Tiergartenstrasse 17, 69121, Heidelberg Germany, ISBN:3-540-28538-5 [49] Faber W., Leone N., Ricca F. A Backjumping Technique for Disjunctive Logic Programming, Proceedings of ASP05 (Answer Set Programming Advances in Theory and Implementation), Bath UK, July 2005, pp. 216230, Research Press International, P.O. Box 144, Bristol BS 1YA, UK ISBN:1-988751-15-4 [50] Faber W., Leone N., Ricca F. Heuristics for Hard ASP Programs, Procedings of Nineteenth International Joint Conference on Artificial Intelligence 15 Edimburgh, Scotland, July-August 2005, pp. 1562-1563, Edited by Leslie Pack Kaelbling and Alessandro Saffiotti, Distributed by Professional Book Center P.O. Box 9249, Denver CO 80209 USA ISBN:0-938075-93-4
Documenti analoghi
curriculum vitae
Notes in Computer Science, vol. 1579, Springer, 1999. The authors received the award for the best paper
of ETAPS ’99 assigned from the European Association for Programming Languages and Systems.
[1...