English
Related papers

Related papers: Approximate Normalization and Eager Equality Check…

200 papers

A key part of any dependent type-checker is the method for checking whether two types are equal. A common claim is that syntax-directed equality is more performant, although type-directed equality is more expressive. However, this claim is…

Programming Languages · Computer Science 2025-09-18 Chester J. F. Gould , William J. Bowman

We classify programming languages according to evaluation order: each language fixes one evaluation order as the default, making it transparent to program in that evaluation order, and troublesome to program in the other. This paper…

Programming Languages · Computer Science 2020-08-25 Jana Dunfield

There are many evaluation strategies for term rewrite systems, but automatically proving termination or analyzing complexity is usually easiest for innermost rewriting. Several syntactic criteria exist when innermost termination implies…

Logic in Computer Science · Computer Science 2025-12-17 Jan-Christoph Kassing , Jürgen Giesl

Automated analysis of recursive derivations in logic programming is known to be a hard problem. Both termination and non-termination are undecidable problems in Turing-complete languages. However, some declarative languages offer a…

Programming Languages · Computer Science 2016-08-22 E. Komendantskaya , P. Johann , M. Schmidt

We study the recursion-theoretic complexity of Positive Almost-Sure Termination ($\mathsf{PAST}$) in an imperative programming language with rational variables, bounded nondeterministic choice, and discrete probabilistic choice. A program…

Programming Languages · Computer Science 2023-10-30 Rupak Majumdar , V. R. Sathiyanarayana

Dynamic typing is an important feature of dynamic programming languages. Primitive operators such as those for performing arithmetic and comparisons typically operate on a wide variety of in put value types, and as such, must internally…

Programming Languages · Computer Science 2014-01-15 Maxime Chevalier-Boisvert , Marc Feeley

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

Counters that hold natural numbers are ubiquitous in modeling and verifying software systems; for example, they model dynamic creation and use of resources in concurrent programs. Unfortunately, such discrete counters often lead to…

Formal Languages and Automata Theory · Computer Science 2025-11-27 A. R. Balasubramanian , Matthew Hague , Rupak Majumdar , Ramanathan S. Thinniyam , Georg Zetzsche

Completion is a well-known transformation that captures the stable model semantics of logic programs by turning a program into a set of first-order definitions. Stable models are models of the completion, but not all models of the…

Logic in Computer Science · Computer Science 2025-04-22 Jan Heuer

Recent studies have adopted pre-trained language models, such as CodeT5 and CodeGPT, for automated program generation tasks like code generation, repair, and translation. Numerous language model-based approaches have been proposed and…

Software Engineering · Computer Science 2024-01-09 Yue Liu , Chakkrit Tantithamthavorn , Yonghui Liu , Li Li

Widely used complex code refactoring tools lack a solid reasoning about the correctness of the transformations they implement, whilst interest in proven correct refactoring is ever increasing as only formal verification can provide true…

Software Engineering · Computer Science 2017-08-25 Dániel Horpácsi , Judit Kőszegi , Zoltán Horváth

Convertibility checking - determining whether two lambda-terms are equal up to reductions - is a crucial component of proof assistants and dependently-typed languages. Practical implementations often use heuristics to quickly conclude that…

Logic in Computer Science · Computer Science 2026-01-12 Nathanaëlle Courant , Xavier Leroy

While reachability analysis is one of the most promising approaches for formal verification of dynamic systems, a major disadvantage preventing a more widespread application is the requirement to manually tune algorithm parameters such as…

Logic in Computer Science · Computer Science 2024-04-09 Niklas Kochdumper , Stanley Bak

In recent years, prompting has quickly become one of the standard ways of steering the outputs of generative machine learning models, due to its intuitive use of natural language. In this work, we propose a system conditioned on embeddings…

Computation and Language · Computer Science 2024-06-13 Thomas Bott , Florian Lux , Ngoc Thang Vu

Programming languages like P4 enable specifying the behavior of network data planes in software. However, with increasingly powerful and complex applications running in the network, the risk of faults also increases. Hence, there is growing…

Programming Languages · Computer Science 2022-06-08 Matthias Eichholz , Eric Hayden Campbell , Matthias Krebs , Nate Foster , Mira Mezini

Dependently typed lambda calculi such as the Logical Framework (LF) are capable of representing relationships between terms through types. By exploiting the "formulas-as-types" notion, such calculi can also encode the correspondence between…

Logic in Computer Science · Computer Science 2010-07-07 Zachary Snow , David Baelde , Gopalan Nadathur

We propose a method for inferring \emph{parameterized regular types} for logic programs as solutions for systems of constraints over sets of finite ground Herbrand terms (set constraint systems). Such parameterized regular types generalize…

Logic in Computer Science · Computer Science 2010-02-16 F. Bueno , J. Navas , M. Hermenegildo

Large language models (LLMs) have achieved notable success in code generation. However, they still frequently produce uncompilable output because their next-token inference procedure does not model formal aspects of code. Although…

Machine Learning · Computer Science 2025-05-09 Niels Mündler , Jingxuan He , Hao Wang , Koushik Sen , Dawn Song , Martin Vechev

We define an extension of lambda-calculus with dependents types that enables us to encode transparent and opaque probabilistic programs and prove a strong normalisation result for it by a reducibility technique. While transparent…

Logic in Computer Science · Computer Science 2026-03-10 Francesco A. Genco

Toman et al. have proposed a type system for automatic verification of low-level programs, which combines ownership types and refinement types to enable strong updates of refinement types in the presence of pointer aliases. We extend their…

Programming Languages · Computer Science 2023-12-12 Izumi Tanaka , Ken Sakayori , Naoki Kobayashi