Keynotes and Tutorials

Natural Language Access to Data: It Needs Reasoning


Richard Waldinger

Artificial Intelligence Center, SRI International


Abstract: Researchers have been working on natural language access to data for decades. We argue that to do a good job, we must have knowledge of the subject domain and the ability to reason with that knowledge.
We are interested in queries for which the answer does not exist explicitly in any one data source but must be deduced or computed from information provided by many sources. Furthermore, we consider queries which are not be expressed in a single question but are distributed over a sequence of questions, each one refining or elaborating on earlier ones.
We have adopted a deductive approach to this problem, in which the query is translated into a logical form, which is submitted as a conjecture to a theorem prover; answers are extracted from proofs. A proof is conducted over an axiomatic theory of the subject domain; symbols in the theory are linked to tables in appropriate databases, which may be consulted as the proof is underway. Reasoning is necessary to link the query to the relevant databases, to compose answers from information provided by those databases, and to resolve ambiguities in the English query.
We illustrate the approach with the SAP Quest system, which answers questions in a business enterprise domain.


Joint work with Cleo Condoravdi, Kyle Richardson, Vishal Sikka, and Asuman Suenbuel.


Bio: Richard Waldinger works in the application of automatic theorem proving to problems in artificial intelligence and software engineering. He has written numerous papers and books on the subject, many in collaboration with Zohar Manna, and both are the recipients of the 2016 Herbrand Award. In recent years, he has been applying SNARK, the theorem prover of the late Mark Stickel, to problems in question answering, program synthesis, and planning. He received a PhD from Carnegie Mellon in 1969, and has been at SRI pretty much ever since.

DMN as a Decision Modeling Language


Bruce Silver

Bruce Silver Associates


Abstract: Decision Model and Notation (DMN) is a relatively new decision modeling standard maintained by the Object Management Group. Based on a formal metamodel, it combines a business-oriented graphical notation with precise rule-based decision logic semantics. As such, DMN tools allow non-technical users to define, validate, and maintain executable decision logic themselves, as opposed to the traditional error-prone approach of writing business requirements for programmers.
In the notation, the dependencies of a complex decision on other supporting decisions and input data are represented graphically by a Decision Requirements Diagram (DRD). The decision logic of each decision node in the DRD is defined by a variety of tabular formats called boxed expressions, and DMN also specifies a new expression language, FEEL, used in the boxed expressions. In combination, the DRD, boxed expressions, and FEEL constitute a powerful decision modeling language standard. In fact, the XML serialization of a DMN model captures all the essential semantic details of the notation, so that it can be validated for completeness and consistency, and – supplied with input data values – directly executed on a suitable engine.


This keynote talk reviews the structure and key features of DMN 1.1 as a decision modeling language.


Bio: Bruce Silver is Principal at Bruce Silver Associates, which focuses on consulting and training in business process modeling and business decision modeling. He served on the OMG task forces that drafted the BPMN 2.0 and DMN 1.1 standards, and is the author of BPMN Method and Style and DMN Method and Style.

Programming in Picat


Neng-Fa Zhou

City University of New York


Abstract: Picat ( is a multi-paradigm programming language that provides pattern matching, deterministic and non-deterministic rules, loops, list comprehensions, functions, constraints, and tabling as its core modeling and solving features.  Picat provides facilities for solving combinatorial search problems, including solver modules that are based on CP (constraint programming), SAT (propositional satisfiability), and MIP (mixed integer programming), and a planner module for planning that is implemented by the use of tabling.  This tutorial introduces the basics of the Picat language, and demonstrates the programming techniques through examples. This tutorial will be based on the book “Constraint Solving and Planning with Picat”, by Neng-Fa Zhou, Håkan Kjellerstrand, and Jonathan Fruhman, Springer, 2015.


This tutorial is useful for students and researchers to learn the techniques for general-purpose programming and modeling combinatorial problems in Picat. No prerequisite knowledge about Picat is required, although familiarity with logic or functional programming is a plus.


Bio: Neng-Fa Zhou is a professor at the City University of New York (Brooklyn College and Graduate Center). He is the lead designer and implementer of Picat. He has been an active participant in various competitions, including CSP, ASP, Minizinc, and LP/CP Programming Contest.

Practical Knowledge Representation and Reasoning in Ergo


Michael Kifer, Theresa Swift and Benjamin Grosof

Coherent Knowledge Systems


Abstract: This talk covers the latest progress in Ergo a cutting-edge practical knowledge representation and reasoning (KRR) system. Ergo is the most complete and highly optimized implementation of Rulelog, an expressive yet scalable extension of Datalog and logic programs. Ergo’s human-machine logic (humagic) closely relates controlled natural language (NL) with logical syntax/semantics. In case studies, Ergo enables cost-effective, agile development of knowledge bases for automated decisions/analytics support in finance, defense, e-commerce, health, and in domains that utilize complex knowledge such as terminology mappings, policies, regulations, contracts, and science. Ergo features general higher-order formulas, flexible defeasibility via argumentation theories, dynamically evolving knowledge, restraint bounded rationality, object-orientation, probabilistic uncertainty, text interpretation and generation, connectors to external KRR components, such as graph databases, machine learning, and general programming capabilities (including Java). Other important features include full explanations of inferences and run-time debugging/monitoring. At the end of the tutorial we also briefly discuss key frontiers for research, including probabilistic, ML, NL, and multi-processor inferencing.


This tutorial requires no prerequisite knowledge of Ergo nor Rulelog, although familiarity with logic rules, semantic technology, or logic programming is desirable.


Michael Kifer is a Professor with the Department of Computer Science, Stony Brook University, and a co-founder of Coherent Knowledge Systems. He was a recipient of the prestigious ACM-SIGMOD “Test of Time” awards (1999 and 2002) for his works on F-logic and object-oriented database languages, the 20-year “Test of Time” award from the Association for Logic Programming for his work on Transaction Logic and a Plumer Fellow at Oxford University’s St. Anne’s College (2008). 

Benjamin Grosof is the CEO of Coherent Knowledge Systems. He led the invention of several fundamental technical advances in knowledge representation including Rulelog (a major research breakthrough in logic-based artificial intelligence combined with natural language processing), courteous defeasibility (exception-case rules), restraint bounded rationality (scalability in complex reasoning), and rule-based description-logic ontologies. Previously, he was a program director at Vulcan Inc. for Paul G. Allen, an IT professor at MIT Sloan (2000-2007), a research scientist at IBM Research, 2 years in previous software startups, a Stanford PhD, and a Harvard BA in Applied Mathematics. 

Theresa Swift has led the development of the XSB Programming system, a major open-source Prolog system. She has over 75 publications in major refereed journals and conferences on the implementation of high-performance logic systems, non-monotonic reasoning and reasoning under uncertainty, knowledge representation, parallel, multi-threaded and distributed programming, and applications in verification of concurrent systems, medical informatics decision and workflow systems and data quality enforcement.