144 research outputs found

    Incremental Dead State Detection in Logarithmic Time

    Full text link
    Identifying live and dead states in an abstract transition system is a recurring problem in formal verification; for example, it arises in our recent work on efficiently deciding regex constraints in SMT. However, state-of-the-art graph algorithms for maintaining reachability information incrementally (that is, as states are visited and before the entire state space is explored) assume that new edges can be added from any state at any time, whereas in many applications, outgoing edges are added from each state as it is explored. To formalize the latter situation, we propose guided incremental digraphs (GIDs), incremental graphs which support labeling closed states (states which will not receive further outgoing edges). Our main result is that dead state detection in GIDs is solvable in O(logm)O(\log m) amortized time per edge for mm edges, improving upon O(m)O(\sqrt{m}) per edge due to Bender, Fineman, Gilbert, and Tarjan (BFGT) for general incremental directed graphs. We introduce two algorithms for GIDs: one establishing the logarithmic time bound, and a second algorithm to explore a lazy heuristics-based approach. To enable an apples-to-apples experimental comparison, we implemented both algorithms, two simpler baselines, and the state-of-the-art BFGT baseline using a common directed graph interface in Rust. Our evaluation shows 110110-530530x speedups over BFGT for the largest input graphs over a range of graph classes, random graphs, and graphs arising from regex benchmarks.Comment: 22 pages + reference

    LIPIcs, Volume 261, ICALP 2023, Complete Volume

    Get PDF
    LIPIcs, Volume 261, ICALP 2023, Complete Volum

    Less is more: refinement proofs for probabilistic proofs

    Get PDF
    There has been intense interest over the last decade in implementations of _probabilistic proofs_ (IPs, SNARKs, PCPs, and so on): protocols in which an untrusted party proves to a verifier that a given computation was executed properly, possibly in zero knowledge. Nevertheless, implementations still do not scale beyond small computations. A central source of overhead is the _front-end_: translating from the abstract computation to a set of equivalent arithmetic constraints. This paper introduces a general-purpose framework, called Distiller, in which a user translates to constraints not the original computation but an abstracted _specification_ of it. Distiller is the first in this area to perform such transformations in a way that is provably safe. Furthermore, by taking the idea of encode a check in the constraints to its literal logical extreme, Distiller exposes many new opportunities for constraint reduction, resulting in cost reductions for benchmark computations of 1.3–50×\times, and in some cases, better asymptotics

    Quantitative Verification and Synthesis of Resilient Networks

    Get PDF

    Testing By Dualization

    Get PDF
    Software engineering requires rigorous testing to guarantee the product\u27s quality. Semantic testing of functional correctness is challenged by nondeterminism in behavior, which makes testers difficult to write and reason about. This thesis presents a language-based technique for testing interactive systems. I propose a theory for specifying and validating nondeterministic behaviors, with guaranteed soundness and correctness. I then apply the theory to testing practices, and show how to derive specifications into interactive tester programs. I also introduce a language design for producing test inputs that can effectively detect and reproduce invalid behaviors. I evaluate the methodology by specifying and testing real-world systems such as web servers and file synchronizers, demonstrating the derived testers\u27 ability to find disagreements between the specification and the implementation

    Tools and Algorithms for the Construction and Analysis of Systems

    Get PDF
    This open access book constitutes the proceedings of the 28th International Conference on Tools and Algorithms for the Construction and Analysis of Systems, TACAS 2022, which was held during April 2-7, 2022, in Munich, Germany, as part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2022. The 46 full papers and 4 short papers presented in this volume were carefully reviewed and selected from 159 submissions. The proceedings also contain 16 tool papers of the affiliated competition SV-Comp and 1 paper consisting of the competition report. TACAS is a forum for researchers, developers, and users interested in rigorously based tools and algorithms for the construction and analysis of systems. The conference aims to bridge the gaps between different communities with this common interest and to support them in their quest to improve the utility, reliability, exibility, and efficiency of tools and algorithms for building computer-controlled systems

    Proceedings of the 22nd Conference on Formal Methods in Computer-Aided Design – FMCAD 2022

    Get PDF
    The Conference on Formal Methods in Computer-Aided Design (FMCAD) is an annual conference on the theory and applications of formal methods in hardware and system verification. FMCAD provides a leading forum to researchers in academia and industry for presenting and discussing groundbreaking methods, technologies, theoretical results, and tools for reasoning formally about computing systems. FMCAD covers formal aspects of computer-aided system design including verification, specification, synthesis, and testing

    New Directions in Geometric and Applied Knot Theory

    Get PDF
    The aim of this book is to present recent results in both theoretical and applied knot theory—which are at the same time stimulating for leading researchers in the field as well as accessible to non-experts. The book comprises recent research results while covering a wide range of different sub-disciplines, such as the young field of geometric knot theory, combinatorial knot theory, as well as applications in microbiology and theoretical physics

    Succinctness and Formula Size Games

    Get PDF
    Tämä väitöskirja tutkii erilaisten logiikoiden tiiviyttä kaavan pituuspelien avulla. Logiikan tiiviys viittaa ominaisuuksien ilmaisemiseen tarvittavien kaavojen kokoon. Kaavan pituuspelit ovat hyväksi todettu menetelmä tiiviystulosten todistamiseen. Väitöskirjan kontribuutio on kaksiosainen. Ensinnäkin väitöskirjassa määritellään kaavan pituuspeli useille logiikoille ja tarjotaan näin uusia menetelmiä tulevaan tutkimukseen. Toiseksi näitä pelejä ja muita menetelmiä käytetään tiiviystulosten todistamiseen tutkituille logiikoille. Tarkemmin sanottuna väitöskirjassa määritellään uudet parametrisoidut kaavan pituuspelit perusmodaalilogiikalle, modaaliselle μ-kalkyylille, tiimilauselogiikalle ja yleistetyille säännöllisille lausekkeille. Yleistettyjen säännöllisten lausekkeiden pelistä esitellään myös variantit, jotka vastaavat säännöllisiä lausekkeita ja uusia “RE over star-free” -lausekkeita, joissa tähtiä ei esiinny komplementtien sisällä. Pelejä käytetään useiden tiiviystulosten todistamiseen. Predikaattilogiikan näytetään olevan epäelementaarisesti tiiviimpi kuin perusmodaalilogiikka ja modaalinen μ-kalkyyli. Tiimilauselogiikassa tutkitaan systemaattisesti yleisten riippuvuuksia ilmaisevien atomien määrittelemisen tiiviyttä. Klassinen epäelementaarinen tiiviysero predikaattilogiikan ja säännöllisten lausekkeiden välillä osoitetaan uudelleen yksinkertaisemmalla tavalla ja saadaan tähtien lukumäärälle “RE over star-free” -lausekkeissa hierarkia ilmaisuvoiman suhteen. Monissa yllämainituista tuloksista hyödynnetään eksplisiittisiä kaavoja peliargumenttien lisäksi. Tällaisia kaavoja ja tyyppien laskemista hyödyntäen saadaan epäelementaarisia ala- ja ylärajoja yksittäisten sanojen määrittelemisen tiiviydelle predikaattilogiikassa ja monadisessa toisen kertaluvun logiikassa.This thesis studies the succinctness of various logics using formula size games. The succinctness of a logic refers to the size of formulas required to express properties. Formula size games are some of the most successful methods of proof for results on succinctness. The contribution of the thesis is twofold. Firstly, we define formula size games for several logics, providing methods for future research. Secondly, we use these games and other methods to prove results on the succinctness of the studied logics. More precisely, we develop new parameterized formula size games for basic modal logic, modal μ-calculus, propositional team logic and generalized regular expressions. For the generalized regular expression game we introduce variants that correspond to regular expressions and the newly defined RE over star-free expressions, where stars do not occur inside complements. We use the games to prove a number of succinctness results. We show that first-order logic is non-elementarily more succinct than both basic modal logic and modal μ-calculus. We conduct a systematic study of the succinctness of defining common atoms of dependency in propositional team logic. We reprove a classic non-elementary succinctness gap between first-order logic and regular expressions in a much simpler way and establish a hierarchy of expressive power for the number of stars in RE over star-free expressions. Many of the above results utilize explicit formulas in addition to game arguments. We use such formulas and a type counting argument to obtain non-elementary lower and upper bounds for the succinctness of defining single words in first-order logic and monadic second-order logic
    corecore