Spacetime Programming: A Synchronous Language for Composable Search Strategies

07/25/2019
by   Pierre Talbot, et al.
0

Search strategies are crucial to efficiently solve constraint satisfaction problems. However, programming search strategies in the existing constraint solvers is a daunting task and constraint-based languages usually have compositionality issues. We propose spacetime programming, a paradigm extending the synchronous language Esterel and timed concurrent constraint programming with backtracking, for creating and composing search strategies. In this formalism, the search strategies are composed in the same way as we compose concurrent processes. Our contributions include the design and behavioral semantics of spacetime programming, and the proofs that spacetime programs are deterministic, reactive and extensive functions. Moreover, spacetime programming provides a bridge between the theoretical foundations of constraint-based concurrency and the practical aspects of constraint solving. We developed a prototype of the compiler that produces search strategies with a small overhead compared to the hard-coded ones.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
08/27/2019

Structured Traversal of Search Trees in Constraint-logic Object-oriented Programming

In this paper, we propose an explicit, non-strict representation of sear...
research
08/06/2002

Soft Concurrent Constraint Programming

Soft constraints extend classical constraints to represent multiple cons...
research
07/18/2022

A Variant of Concurrent Constraint Programming on GPU

The number of cores on graphical computing units (GPUs) is reaching thou...
research
02/15/2010

Model-Driven Constraint Programming

Constraint programming can definitely be seen as a model-driven paradigm...
research
05/03/2017

Concurrent Constraint Conditional-Branching Timed Interactive Scores

Multimedia scenarios have multimedia content and interactive events asso...
research
08/14/2018

An Assertion language for slicing Constraint Logic Languages

Constraint Logic Programming (CLP) is a language scheme for combining tw...
research
10/21/2019

Transparent Synchronous Dataflow

There are several functional approaches to dataflow programming, produce...

Please sign up or login with your details

Forgot password? Click here to reset