English
Related papers

Related papers: Sequentializing Parameterized Programs

200 papers

The sequential allocation protocol is a simple and popular mechanism to allocate indivisible goods, in which the agents take turns to pick the items according to a predefined sequence. While this protocol is not strategy-proof, it has been…

Computer Science and Game Theory · Computer Science 2019-11-27 Michele Flammini , Hugo Gilbert

We present a framework that takes a concurrent program composed of unsynchronized processes, along with a temporal specification of their global concurrent behaviour, and automatically generates a concurrent program with synchronization…

Logic in Computer Science · Computer Science 2012-07-05 Roopsha Samanta

We introduce a parameter sharing scheme, in which different layers of a convolutional neural network (CNN) are defined by a learned linear combination of parameter tensors from a global bank of templates. Restricting the number of templates…

Machine Learning · Computer Science 2019-03-15 Pedro Savarese , Michael Maire

We highlight a striking difference in behavior between two widely used variants of coordinate ascent variational inference: the sequential and parallel algorithms. While such differences were known in the numerical analysis literature in…

Machine Learning · Statistics 2026-03-24 Debdeep Pati

Memoisation, or tabling, is a well-known technique that yields large improvements in the performance of some recursive computations. Tabled resolution in Prologs such as XSB and B-Prolog can transform so called left-recursive predicates…

Logic in Computer Science · Computer Science 2017-07-18 Samer Abdallah

A sequential quadratic programming method is designed for solving general smooth nonlinear stochastic optimization problems subject to expectation equality constraints. We consider the setting where the objective and constraint function…

Optimization and Control · Mathematics 2026-03-17 Haoming Shen , Yang Zeng , Baoyu Zhou

Since the introduction of the CDC 6600 in 1965 and its `scoreboarding' technique processors have not (necessarily) executed instructions in program order. Programmers of high-level code may sequence independent instructions in arbitrary…

Logic in Computer Science · Computer Science 2021-05-07 Robert J. Colvin

Tasks and objects are two predominant ways of specifying distributed problems. A task is specified by an input/output relation, defining for each set of processes that may run concurrently, and each assignment of inputs to the processes in…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-07-02 Armando Castaneda , Michel Raynal , Sergio Rajsbaum

Inspired by distributed applications that use consensus or other agreement protocols for global coordination, we define a new computational model for parameterized systems that is based on a general global synchronization primitive and…

Formal Languages and Automata Theory · Computer Science 2021-05-07 Nouraldin Jaber , Swen Jacobs , Christopher Wagner , Milind Kulkarni , Roopsha Samanta

Distributed storage systems and databases are widely used by various types of applications. Transactional access to these storage systems is an important abstraction allowing application programmers to consider blocks of actions (i.e.,…

Programming Languages · Computer Science 2023-06-22 Sidi Mohamed Beillahi , Ahmed Bouajjani , Constantin Enea

Complex structures are typical in machine learning. Tailoring learning algorithms for every structure requires an effort that may be saved by defining a generic learning procedure adaptive to any complex structure. In this paper, we propose…

Machine Learning · Computer Science 2019-05-28 Pablo Strasser , Stephane Armand , Stephane Marchand-Maillet , Alexandros Kalousis

The pairwise reachability problem for a multi-threaded program asks, given control locations in two threads, whether they can be simultaneously reached in an execution of the program. The problem is important for static analysis and is used…

Logic in Computer Science · Computer Science 2015-07-01 Remi Bonnet , Rohit Chadha , Mahesh Viswanathan , P. Madhusudan

When verifying a concurrent program, it is usual to assume that memory is sequentially consistent. However, most modern multiprocessors depend on store buffering for efficiency, and provide native sequential consistency only at a…

Logic in Computer Science · Computer Science 2009-09-28 Ernie Cohen , Norbert Schirmer

Sequential Bayesian inference over predictive functions is a natural framework for continual learning from streams of data. However, applying it to neural networks has proved challenging in practice. Addressing the drawbacks of existing…

Machine Learning · Statistics 2023-12-29 Tim G. J. Rudner , Freddie Bickford Smith , Qixuan Feng , Yee Whye Teh , Yarin Gal

We present a computer-aided programming approach to concurrency. The approach allows programmers to program assuming a friendly, non-preemptive scheduler, and our synthesis procedure inserts synchronization to ensure that the final program…

We study a natural variant of scheduling that we call \emph{partial scheduling}: In this variant an instance of a scheduling problem along with an integer $k$ is given and one seeks an optimal schedule where not all, but only $k$ jobs, have…

Data Structures and Algorithms · Computer Science 2020-10-02 Jesper Nederlof , Céline Swennenhuis

We consider the verification of distributed systems composed of an arbitrary number of asynchronous processes. Processes are identical finite-state machines that communicate by reading from and writing to a shared memory. Beyond the…

Formal Languages and Automata Theory · Computer Science 2023-08-01 Nicolas Waldburger

In recent years, various means of efficiently detecting changepoints in the univariate setting have been proposed, with one popular approach involving minimising a penalised cost function using dynamic programming. In some situations, these…

Methodology · Statistics 2018-10-09 S. O. Tickle , I. A. Eckley , P. Fearnhead , K. Haynes

Most work on the verification of concurrent objects for shared memory assumes sequential consistency, but most multicore processors support only weak memory models that do not provide sequential consistency. Furthermore, most verification…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-04-25 Simon Doherty , John Derrick

In fork-join parallelism, a sequential program is split into a directed acyclic graph of tasks linked by directed dependency edges, and the tasks are executed, possibly in parallel, in an order consistent with their dependencies. A popular…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-04-11 Maurice Herlihy , Zhiyu Liu