Export Citations
Save this search
Please login to be able to save your searches and receive alerts for new content matching your search criteria.
- research-articleSeptember 2024
sMALL CaPS: An Infinitary Linear Logic for a Calculus of Pure Sessions
PPDP '24: Proceedings of the 26th International Symposium on Principles and Practice of Declarative ProgrammingArticle No.: 4, Pages 1–13https://doi.org/10.1145/3678232.3678234We present an infinitary version of Multiplicative Additive Linear Logic (sMALL) that serves as logical foundation for a Calculus of Pure Sessions (CaPS). sMALL is infinitary not only because proof derivations may be infinite, but also because ...
- research-articleSeptember 2024JUST ACCEPTED
Termination and Universal Termination Problems for Nondeterministic Quantum Programs
ACM Transactions on Software Engineering and Methodology (TOSEM), Just Accepted https://doi.org/10.1145/3691632Verifying quantum programs has attracted a lot of interest in recent years. In this paper, we consider the following two categories of termination problems of quantum programs with nondeterminism, namely:
- (termination) Is an input of a program ...
Dependent Ghosts Have a Reflection for Free
Proceedings of the ACM on Programming Languages (PACMPL), Volume 8, Issue ICFPArticle No.: 258, Pages 630–658https://doi.org/10.1145/3674647We introduce ghost type theory (GTT) a dependent type theory extended with a new universe for ghost data that can safely be erased when running a program but which is not proof irrelevant like with a universe of (strict) propositions. Instead, ghost data ...
- ArticleJuly 2024
Breaking the Mold: Nonlinear Ranking Function Synthesis Without Templates
AbstractThis paper studies the problem of synthesizing (lexicographic) polynomial ranking functions for loops that can be described in polynomial arithmetic over integers and reals. While the analogous ranking function synthesis problem for linear ...
- research-articleJanuary 2024
Unboxed Data Constructors: Or, How cpp Decides a Halting Problem
Proceedings of the ACM on Programming Languages (PACMPL), Volume 8, Issue POPLArticle No.: 51, Pages 1509–1539https://doi.org/10.1145/3632893We propose a new language feature for ML-family languages, the ability to selectively unbox certain data constructors, so that their runtime representation gets compiled away to just the identity on their argument. Unboxing must be statically rejected ...
-
- research-articleJanuary 2024
Calculational Design of [In]Correctness Transformational Program Logics by Abstract Interpretation
Proceedings of the ACM on Programming Languages (PACMPL), Volume 8, Issue POPLArticle No.: 7, Pages 175–208https://doi.org/10.1145/3632849We study transformational program logics for correctness and incorrectness that we extend to explicitly handle both termination and nontermination. We show that the logics are abstract interpretations of the right image transformer for a natural ...
- research-articleJune 2023
On Lexicographic Proof Rules for Probabilistic Termination
Formal Aspects of Computing (FAC), Volume 35, Issue 2Article No.: 11, Pages 1–25https://doi.org/10.1145/3585391We consider the almost-sure (a.s.) termination problem for probabilistic programs, which are a stochastic extension of classical imperative programs. Lexicographic ranking functions provide a sound and practical approach for termination of non-...
- research-articleMarch 2023
Omnisemantics: Smooth Handling of Nondeterminism
ACM Transactions on Programming Languages and Systems (TOPLAS), Volume 45, Issue 1Article No.: 5, Pages 1–43https://doi.org/10.1145/3579834This article gives an in-depth presentation of the omni-big-step and omni-small-step styles of semantic judgments. These styles describe operational semantics by relating starting states to sets of outcomes rather than to individual outcomes. A single ...
Impredicative Observational Equality
Proceedings of the ACM on Programming Languages (PACMPL), Volume 7, Issue POPLArticle No.: 74, Pages 2171–2196https://doi.org/10.1145/3571739In dependent type theory, impredicativity is a powerful logical principle that allows the definition of propositions that quantify over arbitrarily large types, potentially resulting in self-referential propositions. Impredicativity can provide a system ...
- research-articleJanuary 2023
Market Returns and Interim Risk in Mergers
A primary concern in mergers and acquisitions is the risk the deal may be cancelled before it is completed. We document that “interim risk” varies asymmetrically with the aggregate market return. Deals tend to be renegotiated when the market rises, but ...
- research-articleDecember 2022
A Type Discipline for Message Passing Parallel Programs
ACM Transactions on Programming Languages and Systems (TOPLAS), Volume 44, Issue 4Article No.: 26, Pages 1–55https://doi.org/10.1145/3552519We present ParTypes, a type discipline for parallel programs. The model we have in mind comprises a fixed number of processes running in parallel and communicating via collective operations or point-to-point synchronous message exchanges. A type describes ...
- research-articleAugust 2022
Quantum Weakest Preconditions for Reasoning about Expected Runtimes of Quantum Programs
LICS '22: Proceedings of the 37th Annual ACM/IEEE Symposium on Logic in Computer ScienceArticle No.: 4, Pages 1–13https://doi.org/10.1145/3531130.3533327We study expected runtimes for quantum programs. Inspired by recent work on probabilistic programs, we first define expected runtime as a generalisation of quantum weakest precondition. Then, we show that the expected runtime of a quantum program can ...
- research-articleMarch 2022
Verification of Distributed Systems via Sequential Emulation
ACM Transactions on Software Engineering and Methodology (TOSEM), Volume 31, Issue 3Article No.: 37, Pages 1–41https://doi.org/10.1145/3490387Sequential emulation is a semantics-based technique to automatically reduce property checking of distributed systems to the analysis of sequential programs. An automated procedure takes as input a formal specification of a distributed system, a property ...
- research-articleJanuary 2022
Observational equality: now for good
Proceedings of the ACM on Programming Languages (PACMPL), Volume 6, Issue POPLArticle No.: 32, Pages 1–27https://doi.org/10.1145/3498693Building on the recent extension of dependent type theory with a universe of definitionally proof-irrelevant types, we introduce TTobs, a new type theory based on the setoidal interpretation of dependent type theory. TTobs equips every type with an ...
- research-articleNovember 2021
TaDA Live: Compositional Reasoning for Termination of Fine-grained Concurrent Programs
ACM Transactions on Programming Languages and Systems (TOPLAS), Volume 43, Issue 4Article No.: 16, Pages 1–134https://doi.org/10.1145/3477082We present TaDA Live, a concurrent separation logic for reasoning compositionally about the termination of blocking fine-grained concurrent programs. The crucial challenge is how to deal with abstract atomic blocking: that is, abstract atomic operations ...
- research-articleNovember 2021
The Comprehensive Effects of Sales Force Management: A Dynamic Structural Analysis of Selection, Compensation, and Training
This study provides a comprehensive model of an agent’s behavior in response to multiple sales management instruments, including compensation, recruiting/termination, and training. The model takes into account many of the key elements that constitute a ...
- posterFebruary 2021
Triggered Scheduling: Efficient Detection of Dataflow Network Idleness on Heterogeneous Systems
FPGA '21: The 2021 ACM/SIGDA International Symposium on Field-Programmable Gate ArraysPages 226–227https://doi.org/10.1145/3431920.3439473Hardware-software codesign for FPGAs requires flexible and changeable boundaries between hardware and software. Design space exploration is facilitated by expressing programs in a language that can be compiled for both CPU and FPGA execution. Such an ...
The taming of the rew: a type theory with computational assumptions
Proceedings of the ACM on Programming Languages (PACMPL), Volume 5, Issue POPLArticle No.: 60, Pages 1–29https://doi.org/10.1145/3434341Dependently typed programming languages and proof assistants such as Agda and Coq rely on computation to automatically simplify expressions during type checking. To overcome the lack of certain programming primitives or logical principles in those ...
- research-articleJanuary 2021
Transfinite step-indexing for termination
Proceedings of the ACM on Programming Languages (PACMPL), Volume 5, Issue POPLArticle No.: 13, Pages 1–29https://doi.org/10.1145/3434294Step-indexed logical relations are an extremely useful technique for building operational-semantics-based models and program logics for realistic, richly-typed programming languages. They have proven to be indispensable for modeling features like higher-...