Understanding and evolving the Rust programming language

R Jung - 2020 - universaar.uni-saarland.de
Rust is a young systems programming language that aims to fill the gap between high-level
languages—which provide strong static guarantees like memory and thread safety—and low …

Fact-driven logical reasoning for machine reading comprehension

S Ouyang, Z Zhang, H Zhao - Proceedings of the AAAI conference on …, 2024 - ojs.aaai.org
Recent years have witnessed an increasing interest in training machines with reasoning
ability, which deeply relies on accurately and clearly presented clue forms. The clues are …

A concurrent program logic with a future and history

R Meyer, T Wies, S Wolff - Proceedings of the ACM on Programming …, 2022 - dl.acm.org
Verifying fine-grained optimistic concurrent programs remains an open problem. Modern
program logics provide abstraction mechanisms and compositional reasoning principles to …

Make flows small again: revisiting the flow framework

R Meyer, T Wies, S Wolff - … Conference on Tools and Algorithms for the …, 2023 - Springer
We present a new flow framework for separation logic reasoning about programs that
manipulate general graphs. The framework overcomes problems in earlier developments: it …

nekton: A Linearizability Proof Checker

R Meyer, A Opaterny, T Wies, S Wolff - International Conference on …, 2023 - Springer
Abstract nekton is a new tool for checking linearizability proofs of highly complex concurrent
search structures. The tool's unique features are its parametric heap abstraction based on …

Verifying concurrent search structure templates

S Krishna, N Patel, D Shasha, T Wies - Proceedings of the 41st ACM …, 2020 - dl.acm.org
Concurrent separation logics have had great success reasoning about concurrent data
structures. This success stems from their application of modularity on multiple levels, leading …

Embedding hindsight reasoning in separation logic

R Meyer, T Wies, S Wolff - Proceedings of the ACM on Programming …, 2023 - dl.acm.org
Automatically proving linearizability of concurrent data structures remains a key challenge
for verification. We present temporal interpolation as a new proof principle to guide …

Functional correctness of C implementations of Dijkstra's, Kruskal's, and Prim's algorithms

A Mohan, WX Leow, A Hobor - … Conference, CAV 2021, Virtual Event, July …, 2021 - Springer
We develop machine-checked verifications of the full functional correctness of C
implementations of the eponymous graph algorithms of Dijkstra, Kruskal, and Prim. We …

Predictable Verification using Intrinsic Definitions

A Murali, C Rivera, P Madhusudan - Proceedings of the ACM on …, 2024 - dl.acm.org
We propose a novel mechanism of defining data structures using intrinsic definitions that
avoids recursion and instead utilizes monadic maps satisfying local conditions. We show …

Verifying concurrent multicopy search structures

N Patel, S Krishna, D Shasha, T Wies - Proceedings of the ACM on …, 2021 - dl.acm.org
Multicopy search structures such as log-structured merge (LSM) trees are optimized for high
insert/update/delete (collectively known as upsert) performance. In such data structures, an …