Logic & Formal Reasoning
A Machine Learning guided Rewriting Approach for ASP Logic Programs
Mastria, Elena, Zangari, Jessica, Perri, Simona, Calimeri, Francesco
Answer Set Programming (ASP) is a declarative logic formalism that allows to encode computational problems via logic programs. Despite the declarative nature of the formalism, some advanced expertise is required, in general, for designing an ASP encoding that can be efficiently evaluated by an actual ASP system. A common way for trying to reduce the burden of manually tweaking an ASP program consists in automatically rewriting the input encoding according to suitable techniques, for producing alternative, yet semantically equivalent, ASP programs. However, rewriting does not always grant benefits in terms of performance; hence, proper means are needed for predicting their effects with this respect. In this paper we describe an approach based on Machine Learning (ML) to automatically decide whether to rewrite. In particular, given an ASP program and a set of input facts, our approach chooses whether and how to rewrite input rules based on a set of features measuring their structural properties and domain information. To this end, a Multilayer Perceptrons model has then been trained to guide the ASP grounder I-DLV on rewriting input rules. We report and discuss the results of an experimental evaluation over a prototypical implementation.
An application of Answer Set Programming in Distributed Architectures: ASP Microservices
Costantini, Stefania, De Lauretis, Lorenzo
We propose an approach to the definition of microservices with an Answer Set Programming (ASP) `core', where microservices are a successful abstraction for designing distributed applications as suites of independently deployable interacting components. Such ASP-based components might be employed in distributed architectures related to Cloud Computing or to the Internet of Things (IoT).
An Epistemic Approach to the Formal Specification of Statistical Machine Learning
We propose an epistemic approach to formalizing statistical properties of machine learning. Specifically, we introduce a formal model for supervised learning based on a Kripke model where each possible world corresponds to a possible dataset and modal operators are interpreted as transformation and testing on datasets. Then we formalize various notions of the classification performance, robustness, and fairness of statistical classifiers by using our extension of statistical epistemic logic (StatEL). In this formalization, we show relationships among properties of classifiers, and relevance between classification performance and robustness. As far as we know, this is the first work that uses epistemic models and logical formulas to express statistical properties of machine learning, and would be a starting point to develop theories of formal specification of machine learning.
Proceedings 36th International Conference on Logic Programming (Technical Communications)
Ricca, Francesco, Russo, Alessandra, Greco, Sergio, Leone, Nicola, Artikis, Alexander, Friedrich, Gerhard, Fodor, Paul, Kimmig, Angelika, Lisi, Francesca, Maratea, Marco, Mileo, Alessandra, Riguzzi, Fabrizio
Since the first conference held in Marseille in 1982, ICLP has been the premier international event for presenting research in logic programming. Contributions are solicited in all areas of logic programming and related areas, including but not restricted to: - Foundations: Semantics, Formalisms, Answer-Set Programming, Non-monotonic Reasoning, Knowledge Representation. - Declarative Programming: Inference engines, Analysis, Type and mode inference, Partial evaluation, Abstract interpretation, Transformation, Validation, Verification, Debugging, Profiling, Testing, Logic-based domain-specific languages, constraint handling rules. - Related Paradigms and Synergies: Inductive and Co-inductive Logic Programming, Constraint Logic Programming, Interaction with SAT, SMT and CSP solvers, Logic programming techniques for type inference and theorem proving, Argumentation, Probabilistic Logic Programming, Relations to object-oriented and Functional programming, Description logics, Neural-Symbolic Machine Learning, Hybrid Deep Learning and Symbolic Reasoning. - Implementation: Concurrency and distribution, Objects, Coordination, Mobility, Virtual machines, Compilation, Higher Order, Type systems, Modules, Constraint handling rules, Meta-programming, Foreign interfaces, User interfaces. - Applications: Databases, Big Data, Data Integration and Federation, Software Engineering, Natural Language Processing, Web and Semantic Web, Agents, Artificial Intelligence, Bioinformatics, Education, Computational life sciences, Education, Cybersecurity, and Robotics.
Faster Smarter Induction in Isabelle/HOL with SeLFiE
Proof by induction is a long-standing challenge in Computer Science. Induction tactics of proof assistants facilitate proof by induction, but rely on humans to manually specify how to apply induction. In this paper, we present SeLFiE, a domain-specific language to encode experienced users' expertise on how to apply the induct tactic in Isabelle/HOL: when we apply an induction heuristic written in SeLFiE to an inductive problem and arguments to the induct tactic, the SeLFiE interpreter examines both the syntactic structure of the problem and semantics of the relevant constants to judge whether the arguments to the induct tactic are plausible according to the heuristic. Then, we present semantic_induct, an automatic tool to recommend how to apply the induct tactic. Given an inductive problem, semantic_induct produces candidate arguments to the induct tactic and selects promising ones using heuristics written in SeLFiE. Our evaluation based on 254 inductive problems from nine problem domains show that semantic_induct achieved 15.7 percentage points of improvements in coincidence rates for the three most promising recommendations while achieving 43% of reduction in the median value for the execution time when compared to an existing tool, smart_induct.
Type-driven Neural Programming by Example
In this thesis we look into programming by example (PBE), which is about finding a program mapping given inputs to given outputs. PBE has traditionally seen a split between formal versus neural approaches, where formal approaches typically involve deductive techniques such as SAT solvers and types, while the neural approaches involve training on sample input-outputs with their corresponding program, typically using sequence-based machine learning techniques such as LSTMs [41]. As a result of this split, programming types had yet to be used in neural program synthesis techniques. We propose a way to incorporate programming types into a neural program synthesis approach for PBE. We introduce the Typed Neuro-Symbolic Program Synthesis (TNSPS) method based on this idea, and test it in the functional programming context to empirically verify type information may help improve generalization in neural synthesizers on limited-size datasets. Our TNSPS model builds upon the existing Neuro-Symbolic Program Synthesis (NSPS), a tree-based neural synthesizer combining info from input-output examples plus the current program, by further exposing information on types of those input-output examples, of the grammar production rules, as well as of the hole that we wish to expand in the program. We further explain how we generated a dataset within our domain, which uses a limited subset of Haskell as the synthesis language. Finally we discuss several topics of interest that may help take these ideas further. For reproducibility, we release our code publicly.
Defeasible reasoning in Description Logics: an overview on DL^N
Bonatti, Piero A., Petrova, Iliana M., Sauro, Luigi
In complex areas such as law and science, knowledge has been in centuries formulated by primarily describing prototypical instances and properties, and then by overriding the general theory to include possible exceptions. For example, many laws are formulated by adding new norms that, in case of conflicts, may partially or completely override the previous ones. Similarly, biologists have been incrementally introducing exceptions to general properties. For instance, the human heart is usually located in the left-hand half of the thorax. Still there are exceptional individuals, with so-called situs inversus, whose heart is located on the opposite side. Eukariotic cells are those with a proper nucleus, by definition. Still they comprise mammalian red blood cells, that in their mature stage have no nucleus.
Hacking with God: a Common Programming Language of Robopsychology and Robophilosophy
This note is a sketch of how the concept of robopsychology and robophilosophy could be reinterpreted and repositioned in the spirit of the original vocation of psychology and philosophy. The notion of the robopsychology as a fictional science and a fictional occupation was introduced by Asimov in the middle of the last century. The robophilosophy, on the other hand, is only a few years old today. But at this moment, none of these new emerging disciplines focus on the fundamental and overall issues of the development of artificial general intelligence. Instead, they focus only on issues that, although are extremely important, play a complementary role, such as moral or ethical ones, rather than the big questions of life. We try to outline a conception in which the robophilosophy and robopsychology will be able to play a similar leading rule in the progress of artificial intelligence than the philosophy and psychology have done in the progress of human intelligence. To facilitate this, we outline the idea of a visual artificial language and interactive theorem prover-based computer application called Prime Convo Assistant. The question to be decided in the future is whether we can develop such an application. And if so, can we build a computer game on it, or even an esport game? It may be an interesting question in order for this game will be able to transform human thinking on the widest possible social scale and will be able to develop a standard mathematical logic-based communication channel between human and machine intelligence.
One head is better than two: a polynomial restriction for propositional definite Horn forgetting
It is NPcomplete even in one of the simplest cases: propositional definite Horn [Lib20a]. A way to forget variables from a definite Horn formula is to recursively replace them [Lib20a]. Forgetting from general Horn formulae can be done by turning the formula definite Horn before forgetting and adding some clauses afterwards [Lib20a]. Therefore, while this article concentrates on definite Horn formulae, the results apply to the general Horn case. In particular, it shows how efficiency increases by modifying the input formula before running the replacement algorithm.
Functional sets with typed symbols: Framework and mixed Polynotopes for hybrid nonlinear reachability and filtering
Verification and synthesis of Cyber-Physical Systems (CPS) are challenging and still raise numerous issues so far. In this paper, an original framework with mixed sets defined as function images of symbol type domains is first proposed. Syntax and semantics are explicitly distinguished. Then, both continuous (interval) and discrete (signed, boolean) symbol types are used to model dependencies through linear and polynomial functions, so leading to mixed zonotopic and polynotopic sets. Polynotopes extend sparse polynomial zonotopes with typed symbols. Polynotopes can both propagate a mixed encoding of intervals and describe the behavior of logic gates. A functional completeness result is given, as well as an inclusion method for elementary nonlinear and switching functions. A Polynotopic Kalman Filter (PKF) is then proposed as a hybrid nonlinear extension of Zonotopic Kalman Filters (ZKF). Bridges with a stochastic uncertainty paradigm are outlined. Finally, several discrete, continuous and hybrid numerical examples including comparisons illustrate the effectiveness of the theoretical results.