Synthesizing Datalog Programs Using Numerical Relaxation

@inproceedings{Si2019SynthesizingDP,
  title={Synthesizing Datalog Programs Using Numerical Relaxation},
  author={Xujie Si and Mukund Raghothaman and Kihong Heo and M. Naik},
  booktitle={IJCAI},
  year={2019}
}
The problem of learning logical rules from examples arises in diverse fields, including program synthesis, logic programming, and machine learning. Existing approaches either involve solving computationally difficult combinatorial problems, or performing parameter estimation in complex statistical models. In this paper, we present Difflog, a technique to extend the logic programming language Datalog to the continuous setting. By attaching real-valued weights to individual rules of a Datalog… 
GENSYNTH: Synthesizing Datalog Programs without Language Bias
TLDR
The proposed technique is an evolutionary search strategy that mutates candidate programs and evaluates their fitness on the examples using an off-theshelf Datalog interpreter and can learn correct programs from few examples, including for tasks that require recursion and invented predicates, and is robust to noise.
Generating Programmatic Referring Expressions via Program Synthesis
TLDR
A neurosymbolic program synthesis algorithm is proposed that combines a policy neural network with enumerative search to generate a relational program that uniquely identifies the target object in terms of its attributes and its relations to other objects in the image.
Provenance-guided synthesis of Datalog programs
TLDR
The approach leverages query provenance to scale the counterexample-guided inductive synthesis (CEGIS) procedure for program synthesis and presents experimental results that demonstrate significant improvements over the state-of-the-art, including in synthesizing invented predicates, reducing running times, and in decreasing variances in synthesis performance.
Sporq: An Interactive Environment for Exploring Code using Query-by-Example
TLDR
Sporq is a tool that allows developers to mine their codebases for a range of patterns, including bugs, code smells, and violations of coding standards, through an interactive environment in which the user highlights program elements, and the system responds by identifying other parts of the codebase with similar patterns.
Learning Symbolic Rules for Reasoning in Quasi-Natural Language
  • Kaiyu Yang, Jia Deng
  • Computer Science
    ArXiv
  • 2021
TLDR
This work proposes MetaQNL, a “Quasi-Natural” language that can express both formal logic and natural language sentences, and MetaInduce, a learning algorithm that inducesMetaQNL rules from training data consisting of questions and answers, with or without intermediate reasoning steps.
Numerical Reasoning over Legal Contracts via Relational Database
Numerical reasoning over text requires deep integration between the semantic understanding of the natural language context and the mathematical calculation of the symbolic terms. However, existing
Turning 30: New Ideas in Inductive Logic Programming
TLDR
This work surveys recent work in inductive logic programming (ILP), a form of machine learning that induces logic programs from data, which has shown promise at addressing limitations of state-of-the-art machine learning.
DeepStochLog: Neural Stochastic Logic Programming
TLDR
This work introduces neural grammar rules into stochastic definite clause grammars to create a framework that can be trained end-to-end in neural symbolic learning, and shows that inference and learning in neural stochastics logic programming scale much better than for neural probabilistic logic programs.
On the Complexity of Inductively Learning Guarded Rules
TLDR
It is shown that learning guarded clauses is NP-complete and thus one step below the Σ% 2 -complete task of learning Horn clauses on the polynomial hierarchy.
Grammatical Domains and Syntax-guided Grammar Induction
Grammatical domains are sets of related grammars. Such domains appear naturally whenever a common datatype like a date, a phone number or an address has multiple textual representations. While the
...
1
2
3
...

References

SHOWING 1-10 OF 34 REFERENCES
An Algebraic Prolog for Reasoning about Possible Worlds
TLDR
The semantics of aProbLog are formally defined and the inference problem, which is concerned with computing the label of a query, is studied, resulting in four different algorithms and settings.
ProbLog: A Probabilistic Prolog and its Application in Link Discovery
TLDR
The key contribution of this paper is the introduction of an effective solver for computing success probabilities, which essentially combines SLD-resolution with methods for computing the probability of Boolean formulae.
Learning the structure of Markov logic networks
TLDR
An algorithm for learning the structure of MLNs from relational databases is developed, combining ideas from inductive logic programming (ILP) and feature induction in Markov networks.
Syntax-guided synthesis of Datalog programs
TLDR
This work proposes a programming-by-example system, ALPS, to synthesize Datalog programs from input-output examples, and shows that it outperforms the state-of-the-art tools Metagol and Zaatar on a suite of 34 benchmarks.
Meta-interpretive learning of higher-order dyadic datalog: predicate invention revisited
TLDR
This paper shows that with an infinite signature the higher-order dyadic datalog class H22 has universal Turing expressivity though H^2_2$$H22 is decidable given a finite signature, and generalises the approach of meta-interpretive learning (MIL) to that of learning higher- order dyadicdatalog programs.
Constraint-Based Synthesis of Datalog Programs
TLDR
This work proposes a constraint-based synthesis approach that uses an smt solver to efficiently navigate the space of Datalog programs and their corresponding derivation trees and demonstrates its ability to synthesize a range of graph-manipulating recursive programs from a small number of examples.
Logic Programs With Uncertainties: A Tool for Implementing Rule-Based Systems
TLDR
This paper proposes a different way of implementing rule-based expert systems within Prolog, in which evaluation of certainties of solutions is carried out at the meta-level, within the logic program interpreter itself.
Polynomial learnability and Inductive Logic Programming: Methods and results
TLDR
Positive and negative learnability results now exist for a number of restricted classes of logic programs that are closely related to the classes used in practice within inductive logic programming.
Syntax-guided synthesis
TLDR
This work describes three different instantiations of the counter-example-guided-inductive-synthesis (CEGIS) strategy for solving the synthesis problem, reports on prototype implementations, and presents experimental results on an initial set of benchmarks.
Strictly declarative specification of sophisticated points-to analyses
TLDR
The DOOP framework for points-to analysis of Java programs is presented, carrying the declarative approach further than past work by describing the full end-to-end analysis in Datalog and optimizing aggressively using a novel technique specifically targeting highly recursive Datalogy programs.
...
1
2
3
4
...