Practical Uses of Existential Rules in Knowledge Representation

From International Center for Computational Logic
Revision as of 14:51, 7 September 2020 by David Carral (talk | contribs) (Die Seite wurde neu angelegt: „{{Main heading|Practical Uses of Existential Rules in Knowledge Representation}} This webpage contains all of the materials and relevant information to follow…“)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Practical Uses of Existential Rules in Knowledge Representation

This webpage contains all of the materials and relevant information to follow our online tutorial at the 24th European Conference on Artificial Intelligence (ECAI 2020). To stream this tutorial, which will take place on the 5/9/2020 (Friday) from 9:00am to 12:15am CET, you first have to sign up for the conference. After doing so, you can stream the tutorial through this webpage.

Participants who want to take part in the hands-on exercises should also download the archive with all tutorial resources. An archive with all the slides is also available.

Individual slide sets:

Symbolic Knowledge Representation (KR) is one of the pillars of AI, with rule-based reasoning being one of its key challenges. Historically, rules have been at the foundation of languages like Prolog or Datalog, and have been studied since the inception of AI. More recently, various breakthroughs have enabled the execution of rules over very large knowledge bases, thus extending the applicability of this technology to many new scenarios.

This tutorial shows how rule-based reasoning has evolved from a specialised research topic to a mature field of AI, with applications ranging from decision support to source code analysis. Concretely, participants will learn how to use rules to solve challenging problems in several use cases taken from data integration, ontology reasoning, and probabilistic logic programming. We focus on rules with existential quantification, give all necessary theoretical background, and demonstrate their practical usage. Interested participants can follow the demonstrations on their own computers using our open-source tools VLog and Rulewerk.

The tutorial is designed for a multi-disciplinary AI audience, thus specific prior knowledge in KR is not required.
  • Part 1: Introduction to Existential Rules
    • Basic concepts
    • Getting acquainted with the tools
  • Part 2: Existential Rules in Knowledge Representation
    • Implementing a lightweight description logic reasoner
    • Guidelines for problem encoding and optimisation
  • Part 3: Reasoning Beyond Polynomial Time
    • Augmenting Datalog with sets for reasoning in expressive description logics
    • Using existential rules to simulate sets
  • Part 4: Practical Applications of Rules
    • Probabilistic inference with Datalog
    • Data integration
    • Stream reasoning

David Carral

David Carral is a postdoctoral scholar at the chair for Knowledge-Based Systems at the Faculty of Computer Science of TU Dresden. He completed his master's and doctor's degrees at Wright State University, both under the supervision of Prof. Dr. Pascal Hitzler, in 2012 and 2016, respectively. For several months during his Ph.D., he was an exchange student at the University of Oxford, working under the supervision of Prof. Dr. Bernardo Cuenca Grau. His research interests include symbolic artificial intelligence and knowledge representation related topics. More precisely, David studies the theoretical properties of logical languages such as Description Logics and existential rules, and the implementation of reasoning algorithms.

Markus Krötzsch

Markus Krötzsch is a full professor at the Faculty of Computer Science of TU Dresden, where he is holding the chair for Knowledge-Based Systems. He obtained his Ph.D. from the Institute of Applied Informatics and Formal Description Methods (AIFB) of Karlsruhe Institute of Technology (KIT) in 2010, and thereafter worked as a researcher and departmental lecturer at the Department of Computer Science of the University of Oxford until October 2013. Krötzsch's extensive research activities in the area of rule-based knowledge representation and reasoning have contributed to the development and analysis of rule languages, rule-based inference methods, and rule reasoners. His wider research interests also include ontology languages, query answering, reasoning complexity, knowledge graphs, and content management and integration platforms for the Web of Data. He has published many works in leading journals and conferences, and two textbooks on semantic technologies. He has given tutorials and invited lectures at various events, including ESSLLI, IJCAI, and ICDT, and he has co-organised numerous scientific and educational events, most recently the Reasoning Web Summer School 2019.

Jacopo Urbani

Jacopo Urbani is an assistant professor at the Department of Computer Science of the Vrije Universiteit Amsterdam (VUA). He is also a guest researcher at the Centrum Wiskunde & Informatica and at the Max Planck Institute in Informatics. He wrote a PhD thesis on distributed reasoning algorithms for very large Knowledge Graphs. The thesis was nominated by the Royal Netherlands Academy of Arts and Sciences as one of the best PhD theses in Computer Science in the country. After spending part of his postdoc in USA and Germany, he joined the faculty of the VUA and has been tenured in 2018. He is one of the main developers of VLog and has published extensively on rule-based reasoning on Knowledge Graphs (KGs) at venues like AAAI, WWW, ISWC, etc. His recent interests include the application of rule-based reasoning for fact-checking and to perform KG completion using information extracted from unstructured sources.

VLog

VLog is a rule engine that combines a column-based memory layout with novel optimization methods that avoid redundant inferences at runtime, resulting in high efficiency in terms of memory usage and speed. Compared to traditional row stores, column-based approaches have shown superior performance on analytical workloads, but are deployed mostly in relational DBMSs, see for instance MonetDB. For VLog, the vertical storage leads to high memory efficiency and competitive runtimes, but also requires specific implementation strategies and data structures.

For more information about VLog, click on this link.

Rulewerk

Rulewerk is a toolkit for using rules for knowledge modeling, data integration, and declarative computing. It integrates the rule engine VLog with many high-level features for knowledge-base management and rule manipulation. Rulewerk can be used in two ways:

  1. As a Java library in your own programming projects
  2. As a stand-alone client application
For more information about Rulewerk, click on this link.