English
Related papers

Related papers: {\pi} with leftovers: a mechanisation in Agda

200 papers

We describe a type system for a synchronous pi-calculus formalising the notion of affine usage in signal-based communication. In particular, we identify a limited number of usages that preserve affinity and that can be composed. As a main…

Logic in Computer Science · Computer Science 2010-07-01 Roberto Amadio , Mehdi Dogguy

Policies are designed to distinguish between correct and incorrect actions; they are types. But badly typed actions may cause not compile errors, but financial and reputational harm We demonstrate how even the most complex ABAC policies can…

Cryptography and Security · Computer Science 2025-06-03 Matthew D. Fuchs

Reasoning about the knowledge of an attacker is a necessary step in many formal analyses of security protocols. In the framework of the applied pi calculus, as in similar languages based on equational logics, knowledge is typically…

Logic in Computer Science · Computer Science 2010-05-06 Mathieu Baudet , Véronique Cortier , Stéphanie Delaune

Temporal logic is a framework for representing and reasoning about propositions that evolve over time. It is commonly used for specifying requirements in various domains, including hardware and software systems, as well as robotics.…

Computation and Language · Computer Science 2024-06-03 İlker Işık , Ebru Aydin Gol , Ramazan Gokberk Cinbis

Dependent types provide a lightweight and modular means to integrate programming and formal program verification. In particular, the types of programs written in dependently typed programming languages (Agda, Idris, F*, etc.) can be used to…

Logic in Computer Science · Computer Science 2017-10-10 Danel Ahman

The Automatic Amortized Resource Analysis (AARA) derives program-execution cost bounds using types. To do so, AARA often makes use of cost-free types, which are critical for the composition of types and cost bounds. However, inferring…

Programming Languages · Computer Science 2025-09-30 David M Kahn , Jan Hoffmann , Thomas Reps , Jessie Grosen

Stochastic (Markovian) process algebra extend classical process algebra with probabilistic exponentially distributed time durations denoted by rates (the parameter of the exponential distribution). Defining a semantics for such an algebra,…

Logic in Computer Science · Computer Science 2015-12-23 Mario Bravetti

Correctness of program transformations in extended lambda calculi with a contextual semantics is usually based on reasoning about the operational semantics which is a rewrite semantics. A successful approach to proving correctness is the…

Programming Languages · Computer Science 2010-12-23 Conrad Rau , Manfred Schmidt-Schauß

Modern languages are equipped with static type checking/inference that helps programmers to keep a clean programming style and to reduce errors. However, the ever-growing size of programs and their continuous evolution require building fast…

Programming Languages · Computer Science 2018-11-28 Matteo Busi , Pierpaolo Degano , Letterio Galletta

Theorem provers are tools that help users to write machine readable proofs. Some of this tools are also interactive. The need of such softwares is increasing since they provide proofs that are more certified than the hand written ones. Agda…

Logic in Computer Science · Computer Science 2020-02-18 Luca Ciccone

We offer a lattice-theoretic account of dynamic slicing for {\pi}-calculus, building on prior work in the sequential setting. For any run of a concurrent program, we exhibit a Galois connection relating forward slices of the start…

Programming Languages · Computer Science 2016-10-10 Roly Perera , Deepak Garg , James Cheney

The classes of depth-bounded and name-bounded processes are fragments of the pi-calculus for which some of the decision problems that are undecidable for the full calculus become decidable. P is depth-bounded at level k if every reduction…

Logic in Computer Science · Computer Science 2017-09-05 Hans Hüttel

While methods of code abstraction and reuse are widespread and well researched, methods of proof abstraction and reuse are still emerging. We consider the use of dependent types for this purpose, introducing a completely mechanical approach…

Programming Languages · Computer Science 2012-08-03 Christopher Schwaab , Jeremy G. Siek

Evaluating the quality of reasoning traces from large language models remains understudied, labor-intensive, and unreliable: current practice relies on expert rubrics, manual annotation, and slow pairwise judgments. Automated efforts are…

Artificial Intelligence · Computer Science 2026-05-28 Xue Wen Tan , Nathaniel Tan , Galen Lee , Stanley Kok

The specifics of data layout can be important for the efficiency of functional programs and interaction with external libraries. In this paper, we develop a type-theoretic approach to data layout that could be used as a typed intermediate…

Logic in Computer Science · Computer Science 2023-06-22 Henry DeYoung , Frank Pfenning

We give a new characterization of elementary and deterministic polynomial time computation in linear logic through the proofs-as-programs correspondence. Girard's seminal results, concerning elementary and light linear logic, achieve this…

Logic in Computer Science · Computer Science 2012-07-17 Patrick Baillot , Damiano Mazza

Session types statically prescribe bidirectional communication protocols for message-passing processes. However, simple session types cannot specify properties beyond the type of exchanged messages. In this paper we extend the type system…

Programming Languages · Computer Science 2020-05-14 Ankush Das , Frank Pfenning

Automated unit test generation is an established research field that has so far focused on statically-typed programming languages. The lack of type information in dynamically-typed programming languages, such as Python, inhibits test…

Software Engineering · Computer Science 2025-07-03 Lukas Krodinger , Stephan Lukasczyk , Gordon Fraser

The dependently-typed lambda calculus LF is often used as a vehicle for formalizing rule-based descriptions of object systems. Proving properties of object systems encoded in this fashion requires reasoning about formulas over LF typing…

Logic in Computer Science · Computer Science 2025-10-01 Chase Johnson , Gopalan Nadathur

A long-standing shortcoming of statically typed functional languages is that type checking does not rule out pattern-matching failures (run-time match exceptions). Refinement types distinguish different values of datatypes; if a program…

Programming Languages · Computer Science 2020-09-22 Khurram A. Jafery , Jana Dunfield