Computer Aided Verification 31st International Conference, CAV 2019, New York City, NY, USA, July 15-18, 2019, Proceedings, Part II

The open access two-volume set LNCS 11561 and 11562 constitutes the refereed proceedings of the 31st International Conference on Computer Aided Verification, CAV 2019, held in New York City, USA, in July 2019. The 52 full papers presented together with 13 tool papers and 2 case studies, were careful...

Full description

Saved in:
Bibliographic Details
Main Authors: Dillig, Isil, Tasiran, Serdar
Format: eBook
Language:English
Published: Cham Springer Nature 2019
Springer International Publishing AG
Edition:1
Series:Lecture Notes in Computer Science
Subjects:
ISBN:3030255425, 9783030255428
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Table of Contents:
  • Incremental Determinization for Quantifier Elimination and Functional Synthesis -- 1 Introduction -- 2 Related Work -- 3 Preliminaries -- 4 Lifting Incremental Determinization -- 4.1 Working Principle of Incremental Determinization for 2QBF -- 4.2 Representation of Functions -- 4.3 Conflict Checks in ID -- 4.4 Functional Synthesis -- 4.5 Quantifier Elimination -- 5 Experimental Evaluation -- 6 The Current State of CADET -- 7 Conclusions -- References -- Numerical Programs -- Loop Summarization with Rational Vector Addition Systems -- 1 Introduction -- 1.1 Outline -- 2 Background -- 3 Approximating Loops with Vector Addition Systems -- 3.1 Abstracting Conjunctive Transition Formulas -- 3.2 Computing Least Upper Bounds -- 4 Control Flow and Q-VASRS -- 4.1 Technical Details -- 5 Evaluation -- 6 Related Work -- References -- Invertibility Conditions for Floating-Point Formulas -- 1 Introduction -- 2 Preliminaries -- 3 Invertibility Conditions for Floating-Point Formulas -- 4 Synthesis of Floating-Point Invertibility Conditions -- 4.1 Verifying Conditions for Multiple Formats and Rounding Modes -- 5 Quantifier Elimination for Unit Linear Floating-Point Formulas -- 6 Solving Quantified Floating-Point Formulas -- 7 Conclusion -- References -- Numerically-Robust Inductive Proof Rules for Continuous Dynamical Systems -- 1 Introduction -- 2 Background -- 2.1 Dynamical Systems -- 2.2 First-Order Language over the Reals LRF -- 3 Robust Proofs for Stability -- 3.1 Stability and Lyapunov Functions -- 3.2 Epsilon-Stability -- 3.3 Epsilon-Lyapunov Function -- 3.4 Automated Proofs with Delta-Decisions -- 4 Robust Proofs for Safety -- 4.1 Safety and Barrier Functions -- 4.2 Type 1: Strict Contraction -- 4.3 Type 2: Bounded Escape -- 5 Experiments -- 6 Conclusion -- References -- Icing: Supporting Fast-Math Style Optimizations in a Verified Compiler -- 1 Introduction
  • Intro -- Preface -- Organization -- Contents - Part II -- Contents - Part I -- Logics, Decision Procedures, and Solvers -- Satisfiability Checking for Mission-Time LTL -- 1 Introduction -- 2 Preliminaries -- 3 Complexity of MLTL-SAT -- 4 Implementation of MLTL-SAT -- 4.1 MLTL-SAT via Logic Translation -- 4.2 Model Generation -- 4.3 MLTL-SAT via SMT Solving -- 5 Experimental Evaluations -- 6 Discussion and Conclusion -- References -- High-Level Abstractions for Simplifying Extended String Constraints in SMT -- 1 Introduction -- 2 Preliminaries -- 2.1 Solving Extended String Constraints (with Simplification) -- 3 Arithmetic-Based String Simplification -- 3.1 A Strategy for Approximation -- 3.2 Simplification Rules with Arithmetic Side Conditions -- 4 Containment-Based String Simplification -- 4.1 Simplification Rules Based on String Containment -- 4.2 Simplifications Based on Equivalence of String Containment -- 5 Multiset-Based String Simplification -- 6 Implementation -- 7 Evaluation -- 8 Conclusion -- References -- Alternating Automata Modulo First Order Theories -- 1 Introduction -- 1.1 Preliminaries -- 2 First Order Alternating Automata -- 2.1 Path Formulae -- 2.2 Boolean Closure of First Order Alternating Automata -- 3 The Emptiness Problem -- 4 Interpolant Generation -- 4.1 Unfolding with Non-local Interpolants -- 5 Experimental Results -- 6 Conclusions -- References -- Q3B: An Efficient BDD-based SMT Solver for Quantified Bit-Vectors -- 1 Introduction -- 2 Architecture -- 3 Implementation -- 4 Experimental Evaluation -- 5 Conclusions and Future Work -- References -- cvc4sy: Smart and Fast Term Enumeration for Syntax-Guided Synthesis -- 1 Introduction -- 2 Smart Enumerative SyGuS -- 3 Fast Enumerative SyGuS -- 4 Hybrid Approach: Variable-Agnostic Enumerative SyGuS -- 5 Evaluation -- References
  • Inferring Inductive Invariants from Phase Structures
  • 2 The Icing Language -- 2.1 Syntax -- 2.2 Optimizations as Rewrites -- 2.3 Semantics of Icing -- 3 Modelling Existing Compilers in Icing -- 3.1 An IEEE 754 Preserving Translator -- 3.2 A Greedy Optimizer -- 4 A Conditional Optimizer -- 4.1 A Logging Compiler for NaN Special Value Checks -- 4.2 Proving Roundoff Error Improvement -- 4.3 Supporting Distributivity in [mathescape]!optimizeCond! -- 5 Connecting to CakeML -- 6 Related Work -- 7 Conclusion -- References -- Sound Approximation of Programs with Elementary Functions -- 1 Introduction -- 2 Our Approach -- 3 Experimental Evaluation -- 4 Conclusion -- References -- Verification -- Formal Verification of Quantum Algorithms Using Quantum Hoare Logic -- 1 Introduction -- 2 Quantum Hoare Logic -- 3 Formalization in Isabelle/HOL -- 3.1 Preliminaries in Linear Algebra -- 3.2 Syntax and Semantics of Quantum Programs -- 3.3 Hoare Triples -- 3.4 Partial States and Tensor Products -- 3.5 Case Study: Products of Hadamard Matrices -- 4 Verification of Grover's Algorithm -- 5 Discussion -- 5.1 Automatic Proof of Identities in Linear Algebra -- 5.2 Statistics -- 6 Related Work -- 7 Conclusion -- References -- SecCSL: Security Concurrent Separation Logic -- 1 Introduction -- 2 An Overview of SecCSL -- 2.1 Specifying Information Flow Control in SecCSL -- 2.2 Reasoning in SecCSL -- 2.3 Security Intuition and Informal Security Property -- 3 The Logic SecCSL -- 3.1 Assertions -- 3.2 Entailments -- 3.3 Proof System -- 4 Security Definition and Soundness -- 5 SecC: Automating SecCSL -- 6 Related Work -- 7 Conclusion -- A Command Semantics -- B Proofs -- References -- Reachability Analysis for AWS-Based Networks -- 1 Introduction -- 2 AWS Networking -- 3 AWS Networking Semantics as Logic -- 4 Usage and Performance -- 5 Conclusion -- References -- Distributed Systems and Networks
  • Verification of Threshold-Based Distributed Algorithms by Decomposition to Decidable Logics -- 1 Introduction -- 2 Preliminaries -- 3 First-Order Modeling of Threshold-Based Protocols -- 3.1 Threshold-Based Protocols -- 3.2 Modeling in FOL -- 4 Decomposition via Threshold Intersection Properties -- 4.1 Threshold Intersection Property Language -- 4.2 Translation to FOL -- 5 Automatically Inferring Threshold Intersection Properties -- 5.1 Finding Consequences in the Threshold Intersection Property Language -- 5.2 From TIP to Axioms in EPR -- 5.3 Finding Minimal Properties Required for a Protocol -- 6 Evaluation -- 7 Related Work -- 8 Conclusion -- References -- Gradual Consistency Checking -- 1 Introduction -- 2 Sequential Consistency and TSO -- 3 Checking Sequential Consistency -- 3.1 Causal Consistency -- 3.2 Convergent Causal Memory -- 3.3 An Algorithm for Checking Sequential Consistency -- 4 Checking Conformance to the TSO Model -- 4.1 Weak Convergent Causal Memory -- 4.2 An Algorithm for Checking TSO Conformance -- 5 Experimental Evaluation -- 5.1 Checking SC -- 5.2 Checking TSO -- 6 Related Work -- 7 Conclusion -- References -- Checking Robustness Against Snapshot Isolation -- 1 Introduction -- 2 Overview -- 3 Programs -- 4 Robustness Against SI -- 5 Reducing Robustness Against SI to SC Reachability -- 5.1 Instrumentation of the Attacker -- 5.2 Instrumentation of the Happens-Before Helpers -- 5.3 Correctness -- 6 Proving Program Robustness -- 7 Experiments -- 8 Related Work -- References -- Efficient Verification of Network Fault Tolerance via Counterexample-Guided Refinement -- 1 Introduction -- 2 Key Ideas -- 3 The Network Model -- 4 Network Approximation Theory -- 4.1 Label Approximation -- 4.2 Well-Formed SPPFs -- 4.3 Effective SPPF Approximation -- 5 The Verification Procedure -- 5.1 Searching for Plausible Candidates
  • 5.2 Learning from Counterexamples -- 6 Implementation -- 7 Evaluation -- 7.1 Compression Results -- 7.2 Verification Performance -- 7.3 Refinement Effectiveness -- 8 Related Work -- 9 Conclusions -- References -- On the Complexity of Checking Consistency for Replicated Data Types -- 1 Introduction -- 2 A Logical Characterization of Replicated Data Types -- 2.1 Replicated Sets and Flags -- 2.2 Replicated Registers -- 2.3 Replicated Counters -- 2.4 Replicated Growable Array -- 3 Intractability for Registers, Sets, Flags, and Counters -- 4 Polynomial-Time Algorithms for Registers and Arrays -- 5 Polynomial-Time Algorithms for Replicated Counters -- 6 Polynomial-Time Algorithms for Sets and Flags -- 7 Related Work -- 8 Conclusion -- References -- Communication-Closed Asynchronous Protocols -- 1 Introduction -- 2 Asynchronous Protocols -- 3 Round-Based Model: mHO -- 4 Formalizing Communication Closure Using Tags -- 5 Reducing Asynchronous Executions -- 6 Rewriting of Asynchronous to mHO -- 7 Experimental Results -- 8 Related Work and Conclusions -- References -- Verification and Invariants -- Interpolating Strong Induction -- 1 Introduction -- 2 Background -- 3 SAT-Based Model Checking -- 4 Interpolating k-Induction -- 4.1 Extending a Trace with Strong Induction -- 4.2 Searching for the Maximal SEL -- 5 Evaluation -- 6 Conclusion -- References -- Verifying Asynchronous Event-Driven Programs Using Partial Abstract Transformers -- 1 Introduction -- 2 Overview -- 3 Queue-(Un)Bounded Reachability Analysis -- 4 Convergence via Partial Abstract Transformers -- 4.1 List Abstractions of Queues -- 4.2 Abstract Convergence Detection -- 4.3 Computing Partial Best Abstract Transformers -- 5 Abstract Queue Invariant Checking -- 5.1 Queue Temporal Logic (QuTL) -- 5.2 Abstract QuTL Model Checking -- 6 Empirical Evaluation -- 7 Related Work -- 8 Conclusion -- References