English
Related papers

Related papers: Implementing hash-consed structures in Coq

200 papers

We propose a refinement to the well known, and widely used, proof-of-work scheme of zeroing a cryptographic hash. Our refinement allows multiple autonomous users to cooperate on the proof-of-work for their own transactions in order to bring…

Data Structures and Algorithms · Computer Science 2017-12-01 Wouter Kuijper

Software obfuscation techniques can prevent binary diffing techniques from locating vulnerable code by obfuscating the third-party code, to achieve the purpose of protecting embedded device software. With the rapid development of binary…

Cryptography and Security · Computer Science 2023-01-30 Peihua Zhang , Chenggang Wu , Mingfan Peng , Kai Zeng , Ding Yu , Yuanming Lai , Yan Kang , Wei Wang , Zhe Wang

We present OCaml and Rocq implementations of Kaplan and Tarjan's purely functional, real-time catenable deques. The correctness of our Rocq implementation is machine-checked.

Programming Languages · Computer Science 2026-01-06 Jules Viennot , Arthur Wendling , Armaël Guéneau , François Pottier

Block-encodings are ubiquitous in quantum computing as a way to represent data within a unitary operator. While several unstructured methods are applicable to arbitrary data, these techniques are burdened by hidden costs and poor accuracy.…

Quantum Physics · Physics 2025-09-25 Parker Kuklinski , Benjamin Rempfer , Justin Elenewski , Kevin Obenland

We demonstrate how methods in Functional Programming can be used to implement a computer algebra system. As a proof-of-concept, we present the computational-algebra package. It is a computer algebra system implemented as an embedded…

Symbolic Computation · Computer Science 2018-10-02 Hiromi Ishii

In practical systems, reliable communication is often accomplished by coding at different network layers. We question the necessity of this approach and examine when it can be beneficial. Through conceptually simple probabilistic models…

Information Theory · Computer Science 2014-11-18 Michael Heindlmaier , Emina Soljanin

We study the performance power of software combining in designing persistent algorithms and data structures. We present Bcomb, a new blocking highly-efficient combining protocol, and built upon it to get PBcomb, a persistent version of it…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-02-27 Panagiota Fatourou , Nikolaos D. Kallimanis , Eleftherios Kosmas

This work provides the first concurrent implementation specifically designed for a double-ended priority queue (DEPQ). We do this by describing a general way to add an ExtractMax operation to any concurrent priority queue that already…

Data Structures and Algorithms · Computer Science 2025-08-20 Panagiota Fatourou , Eric Ruppert , Ioannis Xiradakis

Reverse engineering of binary executables is a critical problem in the computer security domain. On the one hand, malicious parties may recover interpretable source codes from the software products to gain commercial advantages. On the…

Programming Languages · Computer Science 2019-07-01 Cheng Fu , Huili Chen , Haolan Liu , Xinyun Chen , Yuandong Tian , Farinaz Koushanfar , Jishen Zhao

Many reasoning, planning, and problem-solving tasks share an intrinsic algorithmic nature: correctly simulating each step is a sufficient condition to solve them correctly. This work studies to what extent Large Language Models (LLMs) can…

We describe the basic notions of co-induction as they are available in the coq system. As an application, we describe arithmetic properties for simple representations of real numbers.

Logic in Computer Science · Computer Science 2007-05-23 Yves Bertot

Motivated by experience in programming and in the teaching of programming, we make another assault on the longstanding problem of debugging. Having explored why debuggers are not used as widely as one might expect, especially in functional…

Programming Languages · Computer Science 2024-11-04 John Whitington

This report documents the process of implementing vector clocks in the Coq proof assistant for extraction and use in the distributed Dynamo-inspired data store, Riak. In this report, we focus on the technical challenges of using Core Erlang…

Distributed, Parallel, and Cluster Computing · Computer Science 2014-06-18 Christopher Meiklejohn

Given a real dataset and a computation family, we wish to encode and store the dataset in a distributed system so that any computation from the family can be performed by accessing a small number of nodes. In this work, we focus on the…

Information Theory · Computer Science 2024-05-10 Vinayak Ramkumar , Netanel Raviv , Itzhak Tamo

We present and formalize h, a core (or "plank") calculus that can serve as the foundation for several compiler specification languages, notably CRSX (Combinatory Reductions Systems with eXtensions), HACS (Higher-order Attribute Contraction…

Programming Languages · Computer Science 2017-11-10 Cynthia Kop , Kristoffer Rose

This paper presents an implementation of interning of ground terms in the XSB Tabled Prolog system. This is related to the idea of hash-consing. I describe the concept of interning atoms and discuss the issues around interning ground…

Programming Languages · Computer Science 2013-07-18 David S. Warren

"Interaction trees" (ITrees) are a general-purpose data structure for representing the behaviors of recursive programs that interact with their environments. A coinductive variant of "free monads," ITrees are built out of uninterpreted…

Programming Languages · Computer Science 2019-11-18 Li-yao Xia , Yannick Zakowski , Paul He , Chung-Kil Hur , Gregory Malecha , Benjamin C. Pierce , Steve Zdancewic

One can perform equational reasoning about computational effects with a purely functional programming language thanks to monads. Even though equational reasoning for effectful programs is desirable, it is not yet mainstream. This is partly…

Logic in Computer Science · Computer Science 2025-01-15 Reynald Affeldt , Jacques Garrigue , Takafumi Saikawa

Distributed algorithms solving agreement problems like consensus or state machine replication are essential components of modern fault-tolerant distributed services. They are also notoriously hard to understand and reason about. Their…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-01-25 Berk Cirisci , Constantin Enea , Suha Orhun Mutluergil

The implementations of most hardened cryptographic libraries use defensive programming techniques for side-channel resistance. These techniques are usually specified as guidelines to developers on specific code patterns to use or avoid.…

Cryptography and Security · Computer Science 2025-09-03 Moritz Schneider , Daniele Lain , Ivan Puddu , Nicolas Dutly , Srdjan Capkun
‹ Prev 1 3 4 5 6 7 10 Next ›