Invited Talks

Manuel V. Hermenegildo

50th Anniversary of the Birth of Prolog: Some reflections on Prolog's Evolution, Status, and Future

This year we celebrate Prolog's 50th anniversary, and the continued relevance of Prolog and logic programming as a basis for both higher-level programming and symbolic, explainable AI. This talk will provide an overview of Prolog's evolution, status, and future. It will start with a quick tour of the major milestones in the advancement of the language and its implementations, from the original Marseille and Edinburgh versions, to the many current ones, with more appearing continuously. This will be followed by some reflections on issues such as what still makes Prolog different and relevant as a language and tool, the best approaches for teaching Prolog, some landmark applications, relation to other logic programming languages, or the use of Prolog and Prolog-related tools for other programming languages. The talk will also attempt to dispel along the way some common misconceptions about the language, while discussing some past weaknesses and others that may still need addressing. It will conclude with some reflections on challenges and opportunities for the future.
Part of the contents of this talk appear in the recent TPLP paper "50 years of Prolog and Beyond", by Philipp Körner, Michael Leuschel, João Barbosa, Vítor Santos Costa, Verónica Dahl, Manuel V. Hermenegildo, Jose F. Morales, Jan Wielemaker, Daniel Diaz, Salvador Abreu, and Giovanni Ciatto, written for Prolog's 50th anniversary and TPLP's 20th anniversary. See for pointers to this paper and other initiatives related to the Year of Prolog. The Year of Prolog is organized by the Association for Logic Programming and the Prolog Heritage foundation.

Fabrizio Riguzzi

Probabilistic Logic Programming: Semantics, Inference and Learning

Probabilistic Logic Programming is now more than 30 years old and has become an active field of research at the intersection of Logic Programming and Uncertainty in AI. Among the various semantics, the Distribution Semantics (DS) has emerged as one of the most intuitive and versatile. The talk will introduce the DS and its various extensions to deal with function symbols, continuous random variables and multiple stable models. Computing the probability of queries is the task of inference, which can be solved either by exact or approximate algorithms. Exact inference is usually performed by means of knowledge compilation while approximate inference by means of Monte Carlo. Inference is at the basis of learning programs from data that has recently received much attention. The talk will provide an overview of algorithms for learning the parameters and for learning the structure of programs, discussing the various Inductive Logic Programming techniques that have been adopted and the various tradeoffs between quality of the model and speed of learning.

Theresa Swift

Two Languages, One System: Tightly Connecting XSB Prolog and Python

Python, ranked first on the May 2022 Tiobe index, is a hugely popular language, heavily used in machine learning and other applications. Prolog, ranked twenty-firstthe May 2022 Tiobe index, while less popular has important reasoning and knowledge representation capabilities, particularly since modern Prologs support constraint-based reasoning, tabling-based deduction, and probabilistic inference. Despite their differences, Prolog and Python share important commonalities. First,both Prolog and CPython (the standard Python implementation) are written in C withwell-developed interfaces to other C programs. In addition, both languages are dynam-ically typed with data structures that are recursively generated in just a few ways. Infact, nearly all core data structures of the two languages can be efficiently bi-translated, leading to a tight connection of the two systems. This talk presents the design, experi-ence, and implications of such a connection using XSB Prolog version 5.0. The connection for XSB to call Python has led to XSB orchestrating commercial projects using interfaces to Elastic search, dense vector storage, nlp systems, Google maps, and to a 14.6 billion triple Wikidata graph. The connection for Python to call XSB allows XSBto be imported as any other Python module so that XSB can easily be invoked fromJupyter notebooks or other graphical interfaces. On a more speculative level, the talk mentions how this work might be leveraged for research in neuro-symbolic learning, natural language processing and cross-language type inference.

Francois Bry and Sebastian Schaffert

A Tentative Test of Time Analysis

The presentation first recalls the main traits of Xcerpt, a language for querying semi-structured data, and simulation unification which is a central concept of Xcerpt. Xcerpt is a declarative language inspired from logic programming but departing from logic programming in the use of simulation unification instead of (standard) unification. Xcerpt’s non-standard unification enables queries which are patterns resembling answers like queries in logic programming languages and knowledge graph query languages like SPARQL, Cypher and PathQuery1but unlike queries in SQL, XSLT and XQuery.
The presentation submits two arguments in favor of “pattern queries” instead of the “selector queries” of XSLT and XQuery: Economy of concepts and redundancy avoidance. The presentation also submits hypotheses why the impact of Xcerpt and simulation unification so far has been limited to a small academic community. Finally, the presentation sketches a few non-standard unifications the use of which would enable useful queries: “Similarity unification” inspired from E-unification and “cost-based unifications”.

Max Ostrowski and Torsten Schaub

From "ASP modulo CSP" to "ASP modulo X", or how clingcon paved the way for clingo[X] systems

Clingcon extends the ASP system Clingo with linear constraints over integers. As such, its series of variants served as a consecutive design study on how to extend ASP systems with foreign inferences. Meanwhile this has culminated in the generic theory reasoning framework of the ASP system clingo. We will sketch the evolution of this technology, look at its current state, and emphasis the role of semantics in view of a successful outcome.