English
Related papers

Related papers: TWAM: A Certifying Abstract Machine for Logic Prog…

200 papers

We present a method for verifying partial correctness properties of imperative programs that manipulate integers and arrays by using techniques based on the transformation of constraint logic programs (CLP). We use CLP as a metalanguage for…

Programming Languages · Computer Science 2013-09-23 Emanuele De Angelis , Fabio Fioravanti , Alberto Pettorossi , Maurizio Proietti

The framework Pure Type System (PTS) offers a simple and general approach to designing and formalizing type systems. However, in the presence of dependent types, there often exist certain acute problems that make it difficult for PTS to…

Programming Languages · Computer Science 2017-03-28 Hongwei Xi

Large language models (LLMs) have shown increasing competence in solving mathematical reasoning problems. However, many open-source LLMs still struggle with errors in calculation and semantic understanding during intermediate reasoning…

Computation and Language · Computer Science 2024-12-18 Vernon Y. H. Toh , Deepanway Ghosal , Soujanya Poria

Formal Property Verification (FPV), using SystemVerilog Assertions (SVA), is crucial for ensuring the completeness of design with respect to the specification. However, writing SVA is a laborious task and has a steep learning curve. In this…

Hardware Architecture · Computer Science 2024-11-26 Mohammad Shahidzadeh , Behnam Ghavami , Steve Wilton , Lesley Shannon

This paper presents an example of formal reasoning about the semantics of a Prolog program of practical importance (the SAT solver of Howe and King). The program is treated as a definite clause logic program with added control. The logic…

Logic in Computer Science · Computer Science 2017-05-15 Włodzimierz Drabent

Quantum programming languages enable developers to implement algorithms for quantum computers that promise computational breakthroughs in classically intractable tasks. Programming quantum computers requires awareness of entanglement, the…

Programming Languages · Computer Science 2022-05-06 Charles Yuan , Christopher McNally , Michael Carbin

We present \synver{}, a novel synthesis and verification framework for C programs, that deploys a Large Language Model (LLM) to search for a candidate program that satisfies the given specification. Our key idea is to impose syntactic and…

Programming Languages · Computer Science 2025-10-21 Prasita Mukherjee , Benjamin Delaware

We describe an application of Prolog: a type checking tool for the Q functional language. Q is a terse vector processing language, a descendant of APL, which is getting more and more popular, especially in financial applications. Q is a…

Programming Languages · Computer Science 2011-12-19 János Csorba , Zsolt Zombori , Péter Szeredi

We introduce ontology-to-tools compilation as a proof-of-principle mechanism for coupling large language models (LLMs) with formal domain knowledge. Within The World Avatar (TWA), ontological specifications are compiled into executable tool…

Artificial Intelligence · Computer Science 2026-02-04 Xiaochi Zhou , Patrick Bulter , Changxuan Yang , Simon D. Rihm , Thitikarn Angkanaporn , Jethro Akroyd , Sebastian Mosbach , Markus Kraft

Interactive proof assistants are computer programs carefully constructed to check a human-designed proof of a mathematical claim with high confidence in the implementation. However, this only validates truth of a formal claim, which may…

Programming Languages · Computer Science 2023-10-09 Colin S. Gordon , Sergey Matskevich

Program correctness (in imperative and functional programming) splits in logic programming into correctness and completeness. Completeness means that a program produces all the answers required by its specification. Little work has been…

Logic in Computer Science · Computer Science 2014-11-13 Wlodzimierz Drabent

Automatic techniques for program verification usually suffer the well-known state explosion problem. Most of the classical approaches are based on browsing the structure of some form of model (which represents the behavior of the program)…

Programming Languages · Computer Science 2020-02-19 Marco Comini , Laura Titolo , Alicia Villanueva

We propose a sound and complete proof rule ProbTA for quantitative analysis of violation probability of probabilistic programs. Our approach extends the technique of trace abstraction with probability in the control-flow randomness style,…

Programming Languages · Computer Science 2022-03-10 Guanyan Li , Zhilei Han , Fei He

The Edinburgh Logical Framework (LF) is a dependently type lambda calculus that can be used to encode formal systems. The versatility of LF allows specifications to be constructed also about the encoded systems. The Twelf system exploits…

Logic in Computer Science · Computer Science 2013-07-09 Yuting Wang , Gopalan Nadathur

Dynamically typed object-oriented languages enable programmers to write elegant, reusable and extensible programs. However, with the current methodology for program verification, the absence of static type information creates significant…

Programming Languages · Computer Science 2015-01-13 Björn Engelmann , Ernst-Rüdiger Olderog , Nils Erik Flick

Practical checkers based on refinement types use the combination of implicit semantic sub-typing and parametric polymorphism to simplify the specification and automate the verification of sophisticated properties of programs. However, a…

Programming Languages · Computer Science 2022-07-13 Michael Borkowski , Niki Vazou , Ranjit Jhala

Type inference is an application domain that is a natural fit for logic programming (LP). LP systems natively support unification, which serves as a basic building block of typical type inference algorithms. In particular, polymorphic type…

Programming Languages · Computer Science 2017-09-13 Ki Yung Ahn

A logic-enriched type theory (LTT) is a type theory extended with a primitive mechanism for forming and proving propositions. We construct two LTTs, named LTTO and LTTO*, which we claim correspond closely to the classical predicative…

Logic in Computer Science · Computer Science 2010-08-19 Robin Adams , Zhaohui Luo

Fully automated verification of large-scale software and hardware systems is arguably the holy grail of formal methods. Large language models (LLMs) have recently demonstrated their potential for enhancing the degree of automation in formal…

Software Engineering · Computer Science 2026-03-11 Zhongyi Wang , Tengjie Lin , Mingshuai Chen , Haokun Li , Mingqi Yang , Xiao Yi , Shengchao Qin , Yixing Luo , Xiaofeng Li , Bin Gu , Liqiang Lu , Jianwei Yin

We present a logic named L_{LF} whose intended use is to formalize properties of specifications developed in the dependently typed lambda calculus LF. The logic is parameterized by the LF signature that constitutes the specification. Atomic…

Logic in Computer Science · Computer Science 2022-04-12 Gopalan Nadathur , Mary Southern