English
Related papers

Related papers: First-order natural deduction in Agda

200 papers

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

In this report, we present the preliminary work developed for our research project for the APDC (\'Area Pr\'atica de Desenvolvimento Curricular) course. The main goal of this project is to develop a framework, on top of the Why3 tool, for…

Logic in Computer Science · Computer Science 2020-12-02 Tiago Lopes Soares

Attribute grammars (AGs) are known to be a useful formalism for semantic analysis and translation. However, debugging AGs is complex owing to inherent difficulties of AGs, such as recursive grammar structure and attribute dependency. In…

Software Engineering · Computer Science 2007-05-23 Akira Sasaki , Masataka Sassa

We present semantic correctness proofs of Automatic Differentiation (AD). We consider a forward-mode AD method on a higher order language with algebraic data types, and we characterise it as the unique structure preserving macro given a…

Programming Languages · Computer Science 2020-04-02 Mathieu Huot , Sam Staton , Matthijs Vákár

This paper presents a language, Alda, that supports all of logic rules, sets, functions, updates, and objects as seamlessly integrated built-ins. The key idea is to support predicates in rules as set-valued variables that can be used and…

Programming Languages · Computer Science 2023-05-31 Yanhong A. Liu , Scott D. Stoller , Yi Tong , Bo Lin

Transformers have been shown to emulate logical deduction over natural language theories (logical rules expressed in natural language), reliably assigning true/false labels to candidate implications. However, their ability to generate…

Computation and Language · Computer Science 2021-06-07 Oyvind Tafjord , Bhavana Dalvi Mishra , Peter Clark

We present the guarded lambda-calculus, an extension of the simply typed lambda-calculus with guarded recursive and coinductive types. The use of guarded recursive types ensures the productivity of well-typed programs. Guarded recursive…

Logic in Computer Science · Computer Science 2019-03-14 Ranald Clouston , Aleš Bizjak , Hans Bugge Grathwohl , Lars Birkedal

AuDaLa is a recently introduced programming language that follows the new data autonomous paradigm. In this paradigm, small pieces of data execute functions autonomously. Considering the paradigm and the design choices of AuDaLa, it is…

Programming Languages · Computer Science 2025-12-12 Tom T. P. Franken , Thomas Neele

This paper presents an approach to verify safety properties of Erlang-style, higher-order concurrent programs automatically. Inspired by Core Erlang, we introduce Lambda-Actor, a prototypical functional language with pattern-matching…

Programming Languages · Computer Science 2016-01-11 Emanuele D'Osualdo , Jonathan Kochems , C. -H. Luke Ong

More and more languages have a need for constraint solving capabilities for features like error detection or automatic code generation. Imagine a dependently typed language that can immediately implement a program as soon as its type is…

Programming Languages · Computer Science 2022-08-23 Arved Friedemann , Oliver Keszocze

Probabilistic pushdown automata (pPDA) are a standard operational model for programming languages involving discrete random choices and recursive procedures. Temporal properties are useful for specifying the chronological order of events…

Formal Languages and Automata Theory · Computer Science 2024-02-14 Tobias Winkler , Christina Gehnen , Joost-Pieter Katoen

This paper introduces an expressive class of quotient-inductive types, called QW-types. We show that in dependent type theory with uniqueness of identity proofs, even the infinitary case of QW-types can be encoded using the combination of…

Logic in Computer Science · Computer Science 2022-03-15 Marcelo Fiore , Andrew M. Pitts , S. C. Steenkamp

We study induction on the program structure as a proof method for bisimulation-based compiler correctness. We consider a first-order language with mutually recursive function definitions, system calls, and an environment semantics. The…

Programming Languages · Computer Science 2016-11-30 Sigurd Schneider , Gert Smolka , Sebastian Hack

In settings from fact-checking to question answering, we frequently want to know whether a collection of evidence (premises) entails a hypothesis. Existing methods primarily focus on the end-to-end discriminative version of this task, but…

Computation and Language · Computer Science 2022-10-31 Kaj Bostrom , Zayne Sprague , Swarat Chaudhuri , Greg Durrett

The convergence of deep learning and formal mathematics has spurred research in formal verification. Statement autoformalization, a crucial first step in this process, aims to translate informal descriptions into machine-verifiable…

Artificial Intelligence · Computer Science 2026-01-05 Shaoqi Wang , Lu Yu , Siwei Lou , Feng Yan , Chunjie Yang , Qing Cui , Jun Zhou

As the groupoid model of Hofmann and Streicher proves, identity proofs in intensional Martin-L\"of type theory cannot generally be shown to be unique. Inspired by a theorem by Hedberg, we give some simple characterizations of types that do…

Logic in Computer Science · Computer Science 2019-03-14 Nicolai Kraus , Martín Escardó , Thierry Coquand , Thorsten Altenkirch

Many programming languages in the OO tradition now support pattern matching in some form. Historical examples include Scala and Ceylon, with the more recent additions of Java, Kotlin, TypeScript, and Flow. But pattern matching on generic…

Programming Languages · Computer Science 2023-02-24 Aleksander Boruch-Gruszecki , Radosław Waśko , Yichen Xu , Lionel Parreaux

The Natural Language Inference (NLI) task is an important task in modern NLP, as it asks a broad question to which many other tasks may be reducible: Given a pair of sentences, does the first entail the second? Although the state-of-the-art…

Artificial Intelligence · Computer Science 2020-05-07 Zaid Marji , Animesh Nighojkar , John Licato

Abstracting Gradual Typing (AGT) is a systematic approach to designing gradually-typed languages. Languages developed using AGT automatically satisfy the formal semantic criteria for gradual languages identified by Siek et al. [2015].…

Programming Languages · Computer Science 2020-11-13 Felipe Bañados Schwerter , Alison M. Clark , Khurram A. Jafery , Ronald Garcia

We define a general class of dependent type theories, encompassing Martin-L\"of's intuitionistic type theories and variants and extensions. The primary aim is pragmatic: to unify and organise their study, allowing results and constructions…

Logic · Mathematics 2020-09-14 Andrej Bauer , Philipp G. Haselwarter , Peter LeFanu Lumsdaine