Zum Hauptinhalt springen

Showing 1–36 of 36 results for author: Cruz-Filipe, L

Searching in archive cs. Search in all archives.
.
  1. arXiv:2304.14539  [pdf, ps, other

    cs.PL cs.LO

    Reasoning about Choreographic Programs

    Authors: Luís Cruz-Filipe, Eva Graversen, Fabrizio Montesi, Marco Peressotti

    Abstract: Choreographic programming is a paradigm where a concurrent or distributed system is developed in a top-down fashion. Programs, called choreographies, detail the desired interactions between processes, and can be compiled to distributed implementations based on message passing. Choreographic languages usually guarantee deadlock-freedom and provide an operational correspondence between choreographie… ▽ More

    Submitted 27 April, 2023; originally announced April 2023.

  2. arXiv:2303.03972  [pdf, other

    cs.PL

    Certified Compilation of Choreographies with hacc

    Authors: Luís Cruz-Filipe, Lovro Lugović, Fabrizio Montesi

    Abstract: Programming communicating processes is challenging, because it requires writing separate programs that perform compatible send and receive actions at the right time during execution. Leaving this task to the programmer can easily lead to bugs. Choreographic programming addresses this challenge by equipping developers with high-level abstractions for codifying the desired communication structures f… ▽ More

    Submitted 7 March, 2023; originally announced March 2023.

  3. arXiv:2302.14622  [pdf, other

    cs.LO cs.PL

    Now It Compiles! Certified Automatic Repair of Uncompilable Protocols

    Authors: Luís Cruz-Filipe, Fabrizio Montesi

    Abstract: Choreographic programming is a paradigm where developers write the global specification (called choreography) of a communicating system, and then a correct-by-construction distributed implementation is compiled automatically. Unfortunately, it is possible to write choreographies that cannot be compiled, because of issues related to an agreement property known as knowledge of choice. This forces pr… ▽ More

    Submitted 28 February, 2023; originally announced February 2023.

  4. arXiv:2209.01886  [pdf, ps, other

    cs.LO cs.PL

    A Formal Theory of Choreographic Programming

    Authors: Luís Cruz-Filipe, Fabrizio Montesi, Marco Peressotti

    Abstract: Choreographic programming is a paradigm for writing coordination plans for distributed systems from a global point of view, from which correct-by-construction decentralised implementations can be generated automatically. Theory of choreographies typically includes a number of complex results that are proved by structural induction. The high number of cases and the subtle details in some of these… ▽ More

    Submitted 5 September, 2022; originally announced September 2022.

  5. arXiv:2207.08884  [pdf, other

    cs.PL

    From Infinity to Choreographies: Extraction for Unbounded Systems

    Authors: Bjørn Angel Kjær, Luís Cruz-Filipe, Fabrizio Montesi

    Abstract: Choreographies are formal descriptions of distributed systems, which focus on the way in which participants communicate. While they are useful for analysing protocols, in practice systems are written directly by specifying each participant's behaviour. This created the need for choreography extraction: the process of obtaining a choreography that faithfully describes the collective behaviour of al… ▽ More

    Submitted 18 July, 2022; originally announced July 2022.

  6. arXiv:2205.02636  [pdf, other

    cs.PL

    Implementing Choreography Extraction

    Authors: Luis Cruz-Filipe, Kim S. Larsen, Fabrizio Montesi, Larisa Safina

    Abstract: Choreographies are global descriptions of interactions among concurrent components, most notably used in the settings of verification and synthesis of correct-by-construction software. They require a top-down approach: programmers first write choreographies, and then use them to verify or synthesize their programs. However, most software does not come with choreographies yet, which prevents their… ▽ More

    Submitted 6 May, 2022; v1 submitted 5 May, 2022; originally announced May 2022.

    Comments: arXiv admin note: text overlap with arXiv:1910.11741

  7. arXiv:2111.03701  [pdf, other

    cs.PL

    Functional Choreographic Programming

    Authors: Luís Cruz-Filipe, Eva Graversen, Lovro Lugović, Fabrizio Montesi, Marco Peressotti

    Abstract: Choreographic programming is an emerging programming paradigm for concurrent and distributed systems, whereby developers write the communications that should be enacted and then a distributed implementation is automatically obtained by means of a compiler. Theories of choreographic programming typically come with strong theoretical guarantees about the compilation process, most notably: the genera… ▽ More

    Submitted 17 August, 2022; v1 submitted 5 November, 2021; originally announced November 2021.

  8. Certifying Choreography Compilation

    Authors: Luís Cruz-Filipe, Fabrizio Montesi, Marco Peressotti

    Abstract: Choreographic programming is a paradigm for developing concurrent and distributed systems, where programs are choreographies that define, from a global viewpoint, the computations and interactions that communicating processes should enact. Choreography compilation translates choreographies into the local definitions of process behaviours, given as terms in a process calculus. Proving choreograph… ▽ More

    Submitted 26 August, 2021; v1 submitted 21 February, 2021; originally announced February 2021.

  9. arXiv:2102.02627  [pdf, other

    cs.LO cs.PL

    Formalising a Turing-Complete Choreographic Language in Coq

    Authors: Luís Cruz-Filipe, Fabrizio Montesi, Marco Peressotti

    Abstract: Theory of choreographic languages typically includes a number of complex results that are proved by structural induction. The high number of cases and the subtle details in some of them lead to long reviewing processes, and occasionally to errors being found in published proofs. In this work, we take a published proof of Turing completeness of a choreographic language and formalise it in Coq. Our… ▽ More

    Submitted 4 February, 2021; originally announced February 2021.

  10. arXiv:1910.11741  [pdf, ps, other

    cs.PL

    Implementing choreography extraction

    Authors: Luís Cruz-Filipe, Fabrizio Montesi, Larisa Safina

    Abstract: Choreography extraction deals with the generation of a choreography (a global description of communication behaviour) from a set of local process behaviours. In this work, we implement a previously proposed theory for extraction and show that, in spite of its theoretical exponential complexity, it is usable in practice. We discuss the data structures needed for an efficient implementation, introdu… ▽ More

    Submitted 25 October, 2019; originally announced October 2019.

  11. arXiv:1905.09610  [pdf, ps, other

    cs.PL cs.AI

    Hypothetical answers to continuous queries over data streams

    Authors: Luís Cruz-Filipe, Graça Gaspar, Isabel Nunes

    Abstract: Continuous queries over data streams may suffer from blocking operations and/or unbound wait, which may delay answers until some relevant input arrives through the data stream. These delays may turn answers, when they arrive, obsolete to users who sometimes have to make decisions with no help whatsoever. Therefore, it can be useful to provide hypothetical answers - "given the current information,… ▽ More

    Submitted 15 January, 2024; v1 submitted 23 May, 2019; originally announced May 2019.

  12. arXiv:1809.08062  [pdf, other

    math.HO cs.SC math.GR math.NT

    Machine-Assisted Proofs (ICM 2018 Panel)

    Authors: James Davenport, Bjorn Poonen, James Maynard, Harald Helfgott, Pham Huu Tiep, Luís Cruz-Filipe

    Abstract: This submission to arXiv is the report of a panel session at the 2018 International Congress of Mathematicians (Rio de Janeiro, August). It is intended that, while v1 is that report, this stays a living document containing the panelists', and others', reflections on the topic.

    Submitted 21 September, 2018; originally announced September 2018.

    MSC Class: 03-04; 11-04; 20-04;

  13. arXiv:1808.05088  [pdf, ps, other

    cs.PL cs.LO

    Multiparty Classical Choreographies

    Authors: Marco Carbone, Luis Cruz-Filipe, Fabrizio Montesi, Agata Murawska

    Abstract: We present Multiparty Classical Choreographies (MCC), a language model where global descriptions of communicating systems (choreographies) implement typed multiparty sessions. Typing is achieved by generalising classical linear logic to judgements that explicitly record parallelism by means of hypersequents. Our approach unifies different lines of work on choreographies and processes with multipar… ▽ More

    Submitted 2 December, 2018; v1 submitted 15 August, 2018; originally announced August 2018.

    Comments: Post-proceedings paper presented at the 28th International Symposium on Logic-Based Program Synthesis and Transformation (LOPSTR 2018), Frankfurt am Main, Germany, 4-6 September 2018 (arXiv:1808.03326) The paper was improved and extended (+2 pages). Now more details are provided on the work

    Report number: LOPSTR/2018/24

  14. arXiv:1804.08976  [pdf, ps, other

    cs.PL

    Connectors meet Choreographies

    Authors: Farhad Arbab, Luís Cruz-Filipe, Sung-Shik Jongmans, Fabrizio Montesi

    Abstract: We present Cho-Reo-graphies (CR), a new language model that unites two powerful programming paradigms for concurrent software based on communicating processes: Choreographic Programming and Exogenous Coordination. In CR, programmers specify the desired communications among processes using a choreography, and define how communications should be concretely animated by connectors given as constraint… ▽ More

    Submitted 24 April, 2018; originally announced April 2018.

  15. On Asynchrony and Choreographies

    Authors: Luís Cruz-Filipe, Fabrizio Montesi

    Abstract: Choreographic Programming is a paradigm for the development of concurrent software, where deadlocks are prevented syntactically. However, choreography languages are typically synchronous, whereas many real-world systems have asynchronous communications. Previous attempts at enriching choreographies with asynchrony rely on ad-hoc constructions, whose adequacy is only argued informally. In this w… ▽ More

    Submitted 29 November, 2017; originally announced November 2017.

    Comments: In Proceedings ICE 2017, arXiv:1711.10708

    Journal ref: EPTCS 261, 2017, pp. 76-90

  16. arXiv:1711.10201  [pdf, other

    cs.PL

    Communications in Choreographies, Revisited

    Authors: Luís Cruz-Filipe, Fabrizio Montesi, Marco Peressotti

    Abstract: Choreographic Programming is a paradigm for developing correct-by-construction concurrent programs, by writing high-level descriptions of the desired communications and then synthesising process implementations automatically. So far, choreographic programming has been explored in the monadic setting: interaction terms express point-to-point communications of a single value. However, real-world sys… ▽ More

    Submitted 28 November, 2017; originally announced November 2017.

  17. arXiv:1711.08700  [pdf, ps, other

    cs.PL

    That's Enough: Asynchrony with Standard Choreography Primitives

    Authors: Luís Cruz-Filipe, Fabrizio Montesi

    Abstract: Choreographies are widely used for the specification of concurrent and distributed software architectures. Since asynchronous communications are ubiquitous in real-world systems, previous works have proposed different approaches for the formal modelling of asynchrony in choreographies. Such approaches typically rely on ad-hoc syntactic terms or semantics for capturing the concept of messages in tr… ▽ More

    Submitted 27 November, 2017; v1 submitted 23 November, 2017; originally announced November 2017.

  18. Efficient Certified RAT Verification

    Authors: Luís Cruz-Filipe, Marijn Heule, Warren Hunt, Matt Kaufmann, Peter Schneider-Kamp

    Abstract: Clausal proofs have become a popular approach to validate the results of SAT solvers. However, validating clausal proofs in the most widely supported format (DRAT) is expensive even in highly optimized implementations. We present a new format, called LRAT, which extends the DRAT format with hints that facilitate a simple and fast validation algorithm. Checking validity of LRAT proofs can be implem… ▽ More

    Submitted 8 December, 2016; v1 submitted 7 December, 2016; originally announced December 2016.

  19. The Paths to Choreography Extraction

    Authors: Luís Cruz-Filipe, Kim S. Larsen, Fabrizio Montesi

    Abstract: Choreographies are global descriptions of interactions among concurrent components, most notably used in the settings of verification (e.g., Multiparty Session Types) and synthesis of correct-by-construction software (Choreographic Programming). They require a top-down approach: programmers first write choreographies, and then use them to verify or synthesize their programs. However, most existing… ▽ More

    Submitted 20 February, 2017; v1 submitted 31 October, 2016; originally announced October 2016.

  20. Efficient Certified Resolution Proof Checking

    Authors: Luís Cruz-Filipe, Joao Marques-Silva, Peter Schneider-Kamp

    Abstract: We present a novel propositional proof tracing format that eliminates complex processing, thus enabling efficient (formal) proof checking. The benefits of this format are demonstrated by implementing a proof checker in C, which outperforms a state-of-the-art checker by two orders of magnitude. We then formalize the theory underlying propositional proof checking in Coq, and extract a correct-by-con… ▽ More

    Submitted 29 October, 2016; v1 submitted 21 October, 2016; originally announced October 2016.

  21. Active Integrity Constraints for Multi-Context Systems

    Authors: Luís Cruz-Filipe, Graça Gaspar, Isabel Nunes, Peter Schneider-Kamp

    Abstract: We introduce a formalism to couple integrity constraints over general-purpose knowledge bases with actions that can be executed to restore consistency. This formalism generalizes active integrity constraints over databases. In the more general setting of multi-context systems, adding repair suggestions to integrity constraints allows defining simple iterative algorithms to find all possible ground… ▽ More

    Submitted 20 September, 2016; originally announced September 2016.

  22. Grounded Fixpoints and Active Integrity Constraints

    Authors: Luís Cruz-Filipe

    Abstract: The formalism of active integrity constraints was introduced as a way to specify particular classes of integrity constraints over relational databases together with preferences on how to repair existing inconsistencies. The rule-based syntax of such integrity constraints also provides algorithms for finding such repairs that achieve the best asymptotic complexity. However, the different semantics… ▽ More

    Submitted 19 July, 2016; originally announced July 2016.

  23. Choreographies in Practice

    Authors: Luís Cruz-Filipe, Fabrizio Montesi

    Abstract: 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 mechanically synthesise distributed implementations in terms of standard process models via a mechanism known as EndPoint Projection (EPP). Despite the promise of… ▽ More

    Submitted 29 February, 2016; originally announced February 2016.

  24. A Language for the Declarative Composition of Concurrent Protocols

    Authors: Luís Cruz-Filipe, Fabrizio Montesi

    Abstract: A recent study of bugs in real-world concurrent and distributed systems found that, while implementations of individual protocols tend to be robust, the composition of multiple protocols and its interplay with internal computation is the culprit for most errors. Multiparty Session Types and Choreographic Programming are methodologies for developing correct-by-construction concurrent and distribute… ▽ More

    Submitted 24 October, 2016; v1 submitted 11 February, 2016; originally announced February 2016.

  25. Integrity Constraints for General-Purpose Knowledge Bases

    Authors: Luís Cruz-Filipe, Isabel Nunes, Peter Schneider-Kamp

    Abstract: Integrity constraints in databases have been studied extensively since the 1980s, and they are considered essential to guarantee database integrity. In recent years, several authors have studied how the same notion can be adapted to reasoning frameworks, in such a way that they achieve the purpose of guaranteeing a system's consistency, but are kept separate from the reasoning mechanisms. In thi… ▽ More

    Submitted 19 January, 2016; originally announced January 2016.

    Comments: FoIKS 2016

  26. repAIrC: A Tool for Ensuring Data Consistency by Means of Active Integrity Constraints

    Authors: Luís Cruz-Filipe, Michael Franz, Artavazd Hakhverdyan, Marta Ludovico, Isabel Nunes, Peter Schneider-Kamp

    Abstract: Consistency of knowledge repositories is of prime importance in organization management. Integrity constraints are a well-known vehicle for specifying data consistency requirements in knowledge bases; in particular, active integrity constraints go one step further, allowing the specification of preferred ways to overcome inconsistent situations in the context of database management. This paper des… ▽ More

    Submitted 14 October, 2015; originally announced October 2015.

    Comments: IMADA-preprint-cs

  27. A Core Model for Choreographic Programming

    Authors: Luís Cruz-Filipe, Fabrizio Montesi

    Abstract: Choreographic Programming is a programming paradigm for building concurrent programs that are deadlock-free by construction, as a result of programming communications declaratively and then synthesising process implementations automatically. Despite strong interest on choreographies, a foundational model that explains which computations can be performed with the hallmark constructs of choreographi… ▽ More

    Submitted 9 October, 2018; v1 submitted 12 October, 2015; originally announced October 2015.

  28. arXiv:1508.05737  [pdf, other

    cs.CC

    When Six Gates are Not Enough

    Authors: Michael Codish, Luís Cruz-Filipe, Michael Frank, Peter Schneider-Kamp

    Abstract: We apply the pigeonhole principle to show that there must exist Boolean functions on 7 inputs with a multiplicative complexity of at least 7, i.e., that cannot be computed with only 6 multiplications in the Galois field with two elements.

    Submitted 24 August, 2015; originally announced August 2015.

    Comments: IMADA-preprint-cs

  29. Sorting Networks: to the End and Back Again

    Authors: Michael Codish, Luís Cruz-Filipe, Thorsten Ehlers, Mike Müller, Peter Schneider-Kamp

    Abstract: This paper studies new properties of the front and back ends of a sorting network, and illustrates the utility of these in the search for new bounds on optimal sorting networks. Search focuses first on the "outsides" of the network and then on the inner part. All previous works focus only on properties of the front end of networks and on how to apply these to break symmetries in the search. The ne… ▽ More

    Submitted 6 July, 2015; originally announced July 2015.

    Comments: IMADA-preprint-cs. arXiv admin note: text overlap with arXiv:1411.6408

  30. Applying Sorting Networks to Synthesize Optimized Sorting Libraries

    Authors: Michael Codish, Luís Cruz-Filipe, Markus Nebel, Peter Schneider-Kamp

    Abstract: This paper shows an application of the theory of sorting networks to facilitate the synthesis of optimized general purpose sorting libraries. Standard sorting libraries are often based on combinations of the classic Quicksort algorithm with insertion sort applied as the base case for small fixed numbers of inputs. Unrolling the code for the base case by ignoring loop conditions eliminates branchin… ▽ More

    Submitted 16 October, 2015; v1 submitted 8 May, 2015; originally announced May 2015.

    Comments: IMADA-preprint-cs

  31. Optimizing a Certified Proof Checker for a Large-Scale Computer-Generated Proof

    Authors: Luís Cruz-Filipe, Peter Schneider-Kamp

    Abstract: In recent work, we formalized the theory of optimal-size sorting networks with the goal of extracting a verified checker for the large-scale computer-generated proof that 25 comparisons are optimal when sorting 9 inputs, which required more than a decade of CPU time and produced 27 GB of proof witnesses. The checker uses an untrusted oracle based on these witnesses and is able to verify the smalle… ▽ More

    Submitted 27 February, 2015; originally announced February 2015.

    Comments: IMADA-preprint-cs

  32. Formalizing Size-Optimal Sorting Networks: Extracting a Certified Proof Checker

    Authors: Luís Cruz-Filipe, Peter Schneider-Kamp

    Abstract: Since the proof of the four color theorem in 1976, computer-generated proofs have become a reality in mathematics and computer science. During the last decade, we have seen formal proofs using verified proof assistants being used to verify the validity of such proofs. In this paper, we describe a formalized theory of size-optimal sorting networks. From this formalization we extract a certified c… ▽ More

    Submitted 2 March, 2015; v1 submitted 18 February, 2015; originally announced February 2015.

    Comments: IMADA-preprint-cs

  33. Optimal-Depth Sorting Networks

    Authors: Daniel Bundala, Michael Codish, Luís Cruz-Filipe, Peter Schneider-Kamp, Jakub Závodný

    Abstract: We solve a 40-year-old open problem on the depth optimality of sorting networks. In 1973, Donald E. Knuth detailed, in Volume 3 of "The Art of Computer Programming", sorting networks of the smallest depth known at the time for n =< 16 inputs, quoting optimality for n =< 8. In 1989, Parberry proved the optimality of the networks with 9 =< n =< 10 inputs. In this article, we present a general techni… ▽ More

    Submitted 17 December, 2014; originally announced December 2014.

  34. Sorting Networks: the End Game

    Authors: Michael Codish, Luís Cruz-Filipe, Peter Schneider-Kamp

    Abstract: This paper studies properties of the back end of a sorting network and illustrates the utility of these in the search for networks of optimal size or depth. All previous works focus on properties of the front end of networks and on how to apply these to break symmetries in the search. The new properties help shed understanding on how sorting networks sort and speed-up solvers for both optimal size… ▽ More

    Submitted 24 November, 2014; originally announced November 2014.

  35. Twenty-Five Comparators is Optimal when Sorting Nine Inputs (and Twenty-Nine for Ten)

    Authors: Michael Codish, Luís Cruz-Filipe, Michael Frank, Peter Schneider-Kamp

    Abstract: This paper describes a computer-assisted non-existence proof of nine-input sorting networks consisting of 24 comparators, hence showing that the 25-comparator sorting network found by Floyd in 1964 is optimal. As a corollary, we obtain that the 29-comparator network found by Waksman in 1969 is optimal when sorting ten inputs. This closes the two smallest open instances of the optimal size sortin… ▽ More

    Submitted 24 June, 2014; v1 submitted 22 May, 2014; originally announced May 2014.

    Comments: 18 pages

  36. The Quest for Optimal Sorting Networks: Efficient Generation of Two-Layer Prefixes

    Authors: Michael Codish, Luis Cruz-Filipe, Peter Schneider-Kamp

    Abstract: Previous work identifying depth-optimal $n$-channel sorting networks for $9\leq n \leq 16$ is based on exploiting symmetries of the first two layers. However, the naive generate-and-test approach typically applied does not scale. This paper revisits the problem of generating two-layer prefixes modulo symmetries. An improved notion of symmetry is provided and a novel technique based on regular lang… ▽ More

    Submitted 23 September, 2014; v1 submitted 3 April, 2014; originally announced April 2014.