"2-Functoriality of Initial Semantics, and Applications" by Benedikt Ahrens, Ambroise Lafont, and Thomas Lamiaux was accepted at #icfp
"We provide tools to compare and relate the models obtained from a signature for different choices of monoidal category [..] we use our results to relate the models of the different implementation [..] and to provide a generalized recursion principle for simply-typed syntax."
Read it on #arXiv: https://arxiv.org/abs/2503.10863
Scott's Representation Theorem and the Univalent Karoubi Envelope
Arnoud van der Leer, Kobe Wullaert, Benedikt Ahrens
https://arxiv.org/abs/2506.22196 https://arxiv.org/pdf/2506.22196 https://arxiv.org/html/2506.22196
arXiv:2506.22196v1 Announce Type: new
Abstract: Lambek and Scott constructed a correspondence between simply-typed lambda calculi and Cartesian closed categories. Scott's Representation Theorem is a cousin to this result for untyped lambda calculi. It states that every untyped lambda calculus arises from a reflexive object in some category. We present a formalization of Scott's Representation Theorem in univalent foundations, in the (Rocq-)UniMath library. Specifically, we implement two proofs of that theorem, one by Scott and one by Hyland. We also explain the role of the Karoubi envelope -- a categorical construction -- in the proofs and the impact the chosen foundation has on this construction. Finally, we report on some automation we have implemented for the reduction of $\lambda$-terms.
toXiv_bot_toot
Master thesis by Maria Khakimova: "Enhancing Proof Assistant Error Messages with Hints: A User Study"
"We implemented hint enhancements for the error messages displayed upon three common mistakes: forgetting whitespace, using confusable Unicode characters, and supplying too few arguments to a function. A between-participants user study was then conducted with 70 students [..]"
https://repository.tudelft.nl/record/uuid:52513287-7149-41f1-a8e8-8e38696cb283
#Agda #DependentTypes #ProofAssistants #ErrorMessages #Usability #UserStudy #master #thesis
Master thesis by Michał Raczkiewicz: "Model Checking Under JAM21"
"This thesis presents the first known implementation of a model checker for the Java memory model JAM21 within the GenMC framework - a tool for stateless model checking using custom memory models. [..] We provide a formal proof of equivalence between the new vector clock algorithm and the original implementation to ensure correctness."
https://repository.tudelft.nl/record/uuid:3c4c7d73-b084-4a4d-9d6d-93256bc09598
#Java #ModelChecking #MemoryModels #FormalProofs #master #thesis
Master thesis by Alexandru Dumitriu: "LLM-Driven Synthesis of Concurrent Data Structures with SMR under Weak Memory"
"This thesis introduces a synthesis-verification pipeline that iteratively generates concurrent data structures from partial code specifications [..] We evaluate our approach using established concurrent data structure benchmarks, demonstrating rapid convergence to correct implementations"
https://repository.tudelft.nl/record/uuid:5a857798-276f-4545-af2d-8a381e84df9a
Proud to announce that our ICPC’25 paper on “Pinpointing the Learning Obstacles of an Interactive Theorem Prover” received the Distinguished Paper Award!
Huge thanks to @jesper and @azaidman for the collaboration!
The pre-print is available on my website:
https://sarajuhosova.com/assets/files/2025-icpc.pdf
Master thesis by Pepijn Vunderink: "Program Matching with Semantic Patterns"
"We propose the Dyno pattern language, in which concrete object language syntax can be used to express intuitive semantic patterns of programs. Pattern matching is performed by translating Dyno patterns to μ-calculus formulas and model checking these formulas against models extracted from object programs."
https://repository.tudelft.nl/record/uuid:a18ab135-96b1-417c-b25e-46aa02521896
Master thesis by Niyousha Najmaei: "The Internal Language of Comprehension Categories"
"[..] we propose a candidate type theory for the internal language of comprehension categories by extracting a type theory from the semantics given by a general comprehension category which is not full and split. We also give an interpretation of this type theory in every comprehension category."
https://repository.tudelft.nl/record/uuid:39e79d29-122c-4b54-827f-fd9908495e17
As part of our (@sarantja@mastodon.social and yt) research on the usability of interactive theorem provers, we are conducting a study on the usage and state of tools and languages for type-driven development. We are interested in tools that encourage and facilitate type-driven development, especially in cases when they can help us reason about complex problems.
We are hoping to use your responses to identify the characteristic language features and tool interactions that enable type-driven development, with the eventual goals of enhancing them and bringing their benefits to a wider range of programmers.
Please fill in our anonymous, 10-minute survey here: https://tudelft.fra1.qualtrics.com/jfe/form/SV_bIsMxYTKUJkhVuS
You are welcome to participate if you have experience with any type-driven development tool, including dependently-typed languages (e.g., Coq, Lean, Agda), refinement types (e.g., Liquid Haskell), or even other static type systems (e.g., in Rust or Haskell).
P.S. In case you remember signing up for an interview with us in a previous survey and are now wondering whether that study will still go on, the answer is: yes! We’ve had to revise our schedule, but we are still excited to talk to you and will start inviting people for an interview soon.
#Agda #Coq #Rocq #Lean #LiquidHaskell #Rust #Haskell #TypeDrivenDevelopment #TyDe #DependentTypes #LiquidTypes #RefinementTypes #ProofAssistants #Survey
Master thesis by Jochem Broekhoff: "Domain-Specific Abstractions for Algorithmic Graph Processing"
"The Green-Marl Intermediate Representation (GMIR) [..] prevents frontier exploration algorithms and community detection algorithms to be expressed, such as Dijkstra’s shortest path and the Louvain clustering method. We [..] introduce new domain-specific abstractions for algorithmic graph processing, targeting those algorithms."
https://repository.tudelft.nl/record/uuid:a4d57d94-811c-430f-8dd1-46d6a478feb1
Master thesis by Hendy Liang: "Property-Based ASTs: Enabling Language Parametricity in Refactoring Tools"
"By leveraging Tree-Sitter, a parser generator that creates parsers that produce generic, property-based ASTs, this research adapts Renaissance, an existing industrial refactoring tool, to support multi-language extensibility with minimal additional effort."
https://repository.tudelft.nl/record/uuid:6e143a35-32b8-4f7e-928e-52057ea57566
I am happy to announce that my paper joint with Niels van der Weide, Benedikt Ahrens & Paige Randall North has been published at Computer Science Logic 2025.
We show how univalent mathematics can be used to study intricate (higher) categories. Concretely, we demonstrate that in univalent math we can introduce more precise definitions that are able to incorporate the equivalences we actually care about. Moreover, we apply this approach and study various notions of double categories. Here is a link:
https://doi.org/10.4230/LIPIcs.CSL.2025.45
If you don't have the time or energy to read the paper, you can also check out this talk, where I try to explain the main ideas to mathematicians:
https://www.youtube.com/watch?v=mAjEo8tfsQE
Finally, we also formalized our results in Coq UniMath:
https://github.com/UniMath/UniMath/tree/master/UniMath/Bicategories/DoubleCategories
The POPL paper "Relaxed Memory Concurrency Re-executed" by Evgenii Moiseenko, Matteo Meluzzi, Innokentii Meleshchenko, Ivan Kabashnyi, Anton Podkopaev, and our own Soham Chakraborty was selected for a distinguished paper award. Congratulations to all the authors!
The pre-print for the #ICPC paper “Pinpointing the Learning Obstacles of an Interactive Theorem Prover” by @sarantja @azaidman and yt is now available at https://sarajuhosova.com/assets/files/2025-icpc.pdf
I very much hope this will inspire more research on the usability and accessibility of the languages we build going forward!
Abstract:
Interactive theorem provers (ITPs) are programming languages which allow users to reason about and verify their programs. Although they promise strong correctness guarantees and expressive type annotations which can act as code summaries, they tend to have a steep learning curve and poor usability. Unfortunately, there is only a vague understanding of the underlying causes for these problems within the research community. To pinpoint the exact usability bottlenecks of ITPs, we conducted an online survey among 41 computer science bachelor students, asking them to reflect on the experience of learning to use the Agda ITP and to list the obstacles they faced during the process. Qualitative analysis of the responses revealed confusion among the participants about the role of ITPs within software development processes as well as design choices and tool deficiencies which do not provide an adequate level of support to ITP users. To make ITPs more accessible to new users, we recommend that ITP designers look beyond the language itself and also consider its wider contexts of tooling, developer environments, and larger software development processes.
#Agda #TheoremProving #DependentTypes #Usability #Accessibility #ICPC25
PhD thesis by Hendrik van Antwerpen: "Declarative Name Binding for Type System Specifications"
"This dissertation proposes a novel meta-language, Statix, for the specification of static semantics. Statix supports the direct modeling of surface language name binding features, stays close to a familiar inference-style of specification, and allows automatically deriving implementations for compilers and editor services."
Watch tomorrow at 17h: https://nmclive.tudelft.nl/mediasite/Showcase/public/Presentation/e5b66c56929044a792325e3eec3f04a31d
Pdf: https://repository.tudelft.nl/record/uuid:4bf44aa1-779c-4a96-8c55-5e1b54e16119
I’m very glad to announce that our NWO-XL proposal “Cyclic Structures in Programs and Proofs: New Harmonies of Theory and Praxis” together with Jorge Perez @PerezJorgeA (RUG), Henning Basold (Leiden U), Robbert Krebbers (Radboud U), Georgiana Caltais (U Twente), Helle Hvid Hansen (RUG), and y.t. has been granted!
Here’s the blurb:
From our phones and buildings to power and communication networks, software is the backbone of our digital society. Ensuring that software systems are reliable and resilient is crucial but challenging. A key aspect of verifying software is analysing cyclic structures in their behavior. However, the theoretical understanding of many important cyclic structures is still underdeveloped, creating a bottleneck for verification: many critical software systems essential to society cannot be verified. This consortium will significantly advance the theory of cyclic structures, providing a robust foundation for the future-proof construction of software systems that are reliable and resilient.
The full list of granted projects is available at https://www.nwo.nl/en/news/64-million-euros-for-groundbreaking-fundamental-research-projects
Master thesis by Arnoud van der Leer: Universal Algebra, Univalent Foundations and the Untyped λ-Calculus
"This thesis studies and expands upon Martin Hyland’s paper ‘Classical lambda calculus in modern dress’. [...] The thesis translates Hyland’s paper from set theory with classical logic to univalent foundations, and showcases where subtleties arise in such a translation."
https://repository.tudelft.nl/record/uuid:e6582866-9c0d-4a13-8eda-42c25e0deba4
Master thesis by Jakob Nauke: Compiling Dependent Type Preconditions to Runtime Checks With Agda2Hs
"As an extension to Agda2Hs, we
have implemented a solution to automatically insert runtime checks for the preconditions and only make those definitions accessible in the output that are also checkable."
https://repository.tudelft.nl/record/uuid:0a13ca4a-9d3c-416e-bb88-affc3f14ee52