Corpus ID: 17184893

Bottom-Up Logic Programming for Multicores

  title={Bottom-Up Logic Programming for Multicores},
  author={Fl{\'a}vio Cruz and Michael P. Ashley-Rollman and Seth Copen Goldstein and Ricardo Rocha and Frank Pfenning},
In the Claytronics project, we have used Meld, a logic programming language suitable for writing scalable and concise distributed programs for ensembles. Meld allows declarative code to be compiled into distributed code that can be executed in thousands of computing units. We are now using Meld to program more traditional algorithms that run on multicore machines. We made several modifications to the core language, to the compiler and to the runtime system to take advantage of the… Expand
Modular Multiset Rewriting
This paper proposes a module system for a small logically-motivated rule-based language, which provides some of the same features found in advanced module systems such as that of Standard ML, in particular name space separation, support for abstract data types, and parametrization functors in ML. Expand
Optimized Compilation of Multiset Rewriting with Comprehensions
In this paper, the operational semantics of CHR cp are formalized and a low-level optimizing compilation scheme based on join ordering for the efficient execution of programs is defined. Expand
Modular Multiset Rewriting in Focused Linear Logic
This work establishes a foundation for modularity in rule-based languages and is directly applicable to many languages based on multiset rewriting, most forward-chaining logic programming languages and many process algebras. Expand
Constraint Handling Rules with Multiset Comprehension Patterns
A high-level abstract semantics of CHR is given, followed by a lower-level operational semantics, and the soundness of this operational semantics is shown with respect to the abstract semantics. Expand
Decentralized execution of constraint handling rules for ensembles
An operational semantics for CHR is given that defines incremental and asynchronous decentralized rewriting for the class of CHR<sup><i>e</i></sup> rules characterized by purely local matching (0-neighbor restricted rules). Expand
Modeling Datalog Assertion and Retraction in Linear Logic ∗
Practical algorithms have been proposed to efficiently recompute the logical consequences of a Datalog program after a new fact has been asserted or retracted. This is essential in a dynamic settingExpand
Modeling datalog fact assertion and retraction in linear logic
This paper proposes a logical interpretation of Datalog based on linear logic that not only captures the meaning ofDatalog updates, but also provides an operational model that underlies the dynamic changes of the set of inferable facts, all within the confines of logic. Expand
The Deductive Spreadsheet
This book describes recent multidisciplinary research at the confluence of the fields of logic programming, database theory and human-computer interaction. The goal of this effort was to develop theExpand


A Language for Large Ensembles of Independently Executing Nodes
This work extends Meld, a logic programming language that allows an ensemble to be viewed as a single computing system, and successfully written correct, efficient, and complex programs for ensembles containing over one million nodes. Expand
Monadic concurrent linear logic programming
This paper extends Lolli with the remaining connectives of intuitionistic linear logic restricted to occur inside a monad, an idea taken from the concurrent logical framework (CLF) to create LolliMon, a language that has a natural forward chaining, committed choice operational semantics inside the monad. Expand
Dedalus: Datalog in Time and Space
Dedalus is presented, a foundation language for programming and reasoning about distributed systems that reduces to a subset of Datalog with negation, aggregate functions, successor and choice, and adds an explicit notion of logical time to the language. Expand
Residual Splash for Optimally Parallelizing Belief Propagation
This paper binds the achievable parallel performance in chain graphical models to develop a theoretical understanding of the parallel limitations of belief propagation, and provides a new parallel belief propagation algorithm which achieves optimal performance. Expand
Declarative networking: language, execution and optimization
This paper introduces and proves correct relaxed versions of the traditional semi-naïve query evaluation technique, and presents a number of query optimization opportunities that arise in the declarative networking context, including applications of traditional techniques as well as new optimizations. Expand
Linear logic
This column presents an intuitive overview of linear logic, some recent theoretical results, and summarizes several applications oflinear logic to computer science. Expand
Negation and Aggregates in Recursive Rules: the LDL++ Approach
A solution that combines generality with efficiency is presented, as demonstrated by its implementation in the new LDL++ system, and a novel and general treatment of set aggregates, allowing for user-defined aggregates. Expand
A chaotic asynchronous algorithm for computing the fixed point of a nonnegative matrix of unit spectral radius
An algorithm for computing π that is particularly well suited for parallel processing that the timing and sequencing restrictions on individual processors are almost entirely eliminated and the necessary coordination between processors is negligible and the enforced idle time is also negligible. Expand
Programmable matter
How quantum wellstone ushered in the modern age and how it can be used to improve the authors' understanding of the world around us. Expand