English
Related papers

Related papers: A Polymorphic RPC Calculus

200 papers

We propose Chunks and Tasks, a parallel programming model built on abstractions for both data and work. The application programmer specifies how data and work can be split into smaller pieces, chunks and tasks, respectively. The Chunks and…

Distributed, Parallel, and Cluster Computing · Computer Science 2014-07-29 Emanuel H. Rubensson , Elias Rudberg

Type qualifiers offer a lightweight mechanism for enriching existing type systems to enforce additional, desirable, program invariants. They do so by offering a restricted but effective form of subtyping. While the theory of type qualifiers…

Programming Languages · Computer Science 2024-02-27 Edward Lee , Yaoyu Zhao , James You , Kavin Satheeskumar , Ondřej Lhoták , Jonathan Brachthäuser

We describe scalable protocols for solving the secure multi-party computation (MPC) problem among a large number of parties. We consider both the synchronous and the asynchronous communication models. In the synchronous setting, our…

Data Structures and Algorithms · Computer Science 2015-09-29 Varsha Dani , Valerie King , Mahnush Movahedi , Jared Saia , Mahdi Zamani

Task-based programming models have become very popular, as they offer an attractive solution to parallelize serial application code with task and data annotations. They usually depend on a runtime system that schedules the tasks to multiple…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-06-15 Spyros Lyberis , Polyvios Pratikakis , Iakovos Mavroidis , Dimitrios S. Nikolopoulos

Large multi-tenant production clusters often have to handle a variety of jobs and applications with a variety of complex resource usage characteristics. It is non-trivial and non-optimal to manually create placement rules for scheduling…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-07-31 Subrata Mitra , Shanka Subhra Mondal , Nikhil Sheoran , Neeraj Dhake , Ravinder Nehra , Ramanuja Simha

To support the understanding of declarative probabilistic programming languages, we introduce a lambda-calculus with a fair binary probabilistic choice that chooses between its arguments with equal probability. The reduction strategy of the…

Logic in Computer Science · Computer Science 2022-05-31 David Sabel , Manfred Schmidt-Schauß , Luca Maio

We previously developed a polymorphic type system and a type checker for a multithreaded lock-based polymorphic typed assembly language (MIL) that ensures that well-typed programs do not encounter race conditions. This paper extends such…

Programming Languages · Computer Science 2010-02-05 Vasco T. Vasconcelos , Francisco Martins , Tiago Cogumbreiro

Parallel coordinate plots (PCP) are a useful tool in exploratory data analysis of high-dimensional numerical data. The use of PCPs is limited when working with categorical variables or a mix of categorical and continuous variables. In this…

Graphics · Computer Science 2020-09-29 Yawei Ge , Heike Hofmann

An increasing number of mobile applications share location-dependent information, from collaborative applications and social networks to location-based games. For such applications, peer-to-peer architectures where mobile devices share…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-05-04 Luís M. Silva , Frederico Aleixo , Albert van der Linde , João Leitão , Nuno Preguiça

Soft linear logic ([Lafont02]) is a subsystem of linear logic characterizing the class PTIME. We introduce Soft lambda-calculus as a calculus typable in the intuitionistic and affine variant of this logic. We prove that the (untyped) terms…

Logic in Computer Science · Computer Science 2007-05-23 Patrick Baillot , Virgile Mogbil

This paper is motivated by the desire to study package management using the toolkit of the semantics of functional languages. As it transpires, this is deeply related to the semantics of concurrent computation. The models we produce are not…

Logic in Computer Science · Computer Science 2020-04-14 Gershom Bazerman , Raymond Puzio

Probabilistic programming (PP) is a programming paradigm that allows for writing statistical models like ordinary programs, performing simulations by running those programs, and analyzing and refining their statistical behavior using…

Programming Languages · Computer Science 2024-06-19 Martin Kuhn , Joscha Grüger , Christoph Matheja , Andrey Rivkin

Message passing is a key ingredient of concurrent programming. The purpose of this paper is to describe the equivalence between the proof theory, the categorical semantics, and term calculus of message passing. In order to achieve this we…

Category Theory · Mathematics 2010-03-03 J. R. B. Cockett , Craig Pastro

In the logic programming paradigm, a program is defined by a set of methods, each of which can be executed when specific conditions are met during the current state of an execution. The semantics of these programs can be elegantly…

Logic in Computer Science · Computer Science 2024-10-02 Matteo Acclavio , Roberto Maieli

Choreographic Programming is a development methodology for concurrent software that guarantees correctness by construction. The key to this paradigm is to disallow mismatched I/O operations in programs, called choreographies, and then…

Programming Languages · Computer Science 2017-08-09 Luís Cruz-Filipe , Fabrizio Montesi

We introduce a calculus for tuplices, which are expressions that generalize matrices and vectors. Tuplices have an underlying data type for quantities that are taken from a zero-totalized field. We start with the core tuplix calculus CTC…

Logic in Computer Science · Computer Science 2009-03-03 J. A. Bergstra , A. Ponse , M. B. van der Zwaag

Li {\it et al}. introduced coded distributed computing (CDC) scheme to reduce the communication load in general distributed computing frameworks such as MapReduce. They also proposed cascaded CDC schemes where each output function is…

Information Theory · Computer Science 2021-11-25 Jing Jiang , Lingxiao Qu

Promise CSPs are a relaxation of constraint satisfaction problems where the goal is to find an assignment satisfying a relaxed version of the constraints. Several well-known problems can be cast as promise CSPs including approximate graph…

Computational Complexity · Computer Science 2018-07-16 Joshua Brakensiek , Venkatesan Guruswami

Software developers compose systems from components written in many different languages. A business-logic component may be written in Java or OCaml, a resource-intensive component in C or Rust, and a high-assurance component in Coq. In this…

Programming Languages · Computer Science 2017-11-15 Daniel Patterson , Amal Ahmed

Applied process calculi include advanced programming constructs such as type systems, communication with pattern matching, encryption primitives, concurrent constraints, nondeterminism, process creation, and dynamic connection topologies.…

Logic in Computer Science · Computer Science 2017-01-11 Johannes Borgström , Ramūnas Gutkovas , Joachim Parrow , Björn Victor , Johannes Åman Pohjola