38th IARCS Annual Conference on Foundations of Software Technology and Theoretical Computer Science, FSTTCS 2018, December 11-13, 2018, Ahmedabad, India

Random testing has proven to be an effective way to catch bugs in concurrent and distributed systems. This is surprising, as the space of executions is enormous and conventional formal methods intuition would suggest that bad behaviors would only be found by extremely unlikely coincidences. Empirically, many bugs in distributed systems can be explained by interactions among only a small number of features. Thus, one can attempt to explain the effectiveness of random testing under various “small depth” hypotheses. In particular, it may be possible to test all interactions of k features for a small constant k by executing a family of tests that is exponentially or even doublyexponentially smaller than the family of all tests. Moreover, under certain conditions, a randomly chosen small set of tests is sufficient to cover all k-wise interactions with high probability. I will describe two concrete scenarios. First, I will describe bugs in distributed systems caused by network partition faults. In many practical instances, these bugs occur due to two or three key nodes, such as leaders or replicas, not being able to communicate, or because the leading node finds itself in a block of the partition without quorum. In this case, I will show using the probabilistic method that a small set of randomly chosen tests will cover all “small partition” scenarios with high probability. Second, I will consider bugs that arise due to unexpected schedules (interleavings) of concurrent events. Again, many bugs depend only on the relative ordering of a small number of events (the “bug depth” of the bug). In this case, I will show a testing algorithm that prioritizes low depth interleavings and a randomized testing algorithm that bounds the probability of sampling any behavior of bug depth k for a fixed k. The testing algorithm is based on combinatorial insights from the theory of partial orders, such as the notion of dimension and its generalization to d-hitting families as well as results on online chain partitioning. Beyond the potential for designing or explaining random testing procedures, the technical arguments show the potential of combining “Theory A” and “Theory B” results to the important domain of software testing. This is joint work primarily with Filip Niksic [1], and with Dmitry Chistikov, Simin Oraee, Burcu Kulahcioglu Özkan, Mitra Tabaei Befrouei, and Georg Weissenbacher. This work was partially funded by an ERC Synergy Award (ImPACT). 2012 ACM Subject Classification Theory of computation → Generating random combinatorial structures, Software and its engineering → Software testing and debugging

[1]  Orna Kupferman,et al.  Weak alternating automata are not that weak , 1997, Proceedings of the Fifth Israeli Symposium on Theory of Computing and Systems.

[2]  Swarat Chaudhuri,et al.  Model Checking on Trees with Path Equivalences , 2007, TACAS.

[3]  Christof Löding,et al.  On Equivalence and Uniformisation Problems for Finite Transducers , 2016, ICALP.

[4]  Paul D. Seymour,et al.  Graph minors. X. Obstructions to tree-decomposition , 1991, J. Comb. Theory, Ser. B.

[5]  Joost Engelfriet,et al.  MSO definable string transductions and two-way finite-state transducers , 1999, TOCL.

[6]  Chaitanya Swamy,et al.  LP-based approximation algorithms for capacitated facility location , 2012, Math. Program..

[7]  Shi Li On Uniform Capacitated k-Median Beyond the Natural LP Relaxation , 2015, SODA.

[8]  Thomas Wilke CTL+ is Exponentially more Succinct than CTL , 1999, FSTTCS.

[9]  Pavol Cerný,et al.  Expressiveness of streaming string transducers , 2010, FSTTCS.

[10]  Jaroslaw Byrka,et al.  An Approximation Algorithm for Uniform Capacitated k-Median Problem with 1+\epsilon Capacity Violation , 2015, IPCO.

[11]  Aravind Srinivasan,et al.  An Improved Approximation Algorithm for Knapsack Median Using Sparsification , 2018, Algorithmica.

[12]  Éva Tardos,et al.  Approximation algorithms for facility location problems (extended abstract) , 1997, STOC '97.

[13]  Chaitanya Swamy Improved Approximation Algorithms for Matroid and Knapsack Median Problems and Applications , 2014, APPROX-RANDOM.

[14]  Shubham Gupta,et al.  A 3-approximation algorithm for the facility location problem with uniform capacities , 2013, Math. Program..

[15]  Bruno Courcelle,et al.  The monadic second-order logic of graphs, II: Infinite graphs of bounded width , 1988, Mathematical systems theory.

[16]  Bruno Courcelle,et al.  Graph Structure and Monadic Second-Order Logic - A Language-Theoretic Approach , 2012, Encyclopedia of mathematics and its applications.

[17]  Shi Li,et al.  Constant approximation for k-median and k-means with outliers via iterative rounding , 2017, STOC.

[18]  Udi Boker,et al.  Automaton-Based Criteria for Membership in CTL , 2018, LICS.

[19]  J. Meseguer,et al.  Security Policies and Security Models , 1982, 1982 IEEE Symposium on Security and Privacy.

[20]  Antoine Durand-Gasselin,et al.  Regular Transformations of Data Words Through Origin Information , 2016, FoSSaCS.

[21]  C. Aiswarya,et al.  MSO Decidability of Multi-Pushdown Systems via Split-Width , 2012, CONCUR.

[22]  Sylvain Schmitz,et al.  The Complexity of Diagnosability and Opacity Verification for Petri Nets , 2017, Petri Nets.

[23]  J. Vitter,et al.  Approximations with Minimum Packing Constraint Violation , 1992 .

[24]  Deepak Goyal,et al.  A language-theoretic approach to algorithms , 2000 .

[25]  Karen Aardal,et al.  Approximation algorithms for hard capacitated k-facility location problems , 2013, Eur. J. Oper. Res..

[26]  Daniel Kirsten Alternating Tree Automata and Parity Games , 2001, Automata, Logics, and Infinite Games.

[27]  Andrew C. Myers,et al.  Language-based information-flow security , 2003, IEEE J. Sel. Areas Commun..

[28]  Joost Engelfriet,et al.  Branching processes of Petri nets , 1991, Acta Informatica.

[29]  Julian C. Bradfield Simplifying the Modal Mu-Calculus Alternation Hierarchy , 1998, STACS.

[30]  Sudipto Guha,et al.  Improved Combinatorial Algorithms for Facility Location Problems , 2005, SIAM J. Comput..

[31]  Sarah Winter,et al.  Trees over Infinite Structures and Path Logics with Synchronization , 2011, INFINITY.

[32]  Doron A. Peled,et al.  Specification and Verification of Message Sequence Charts , 2000, FORTE.

[33]  Clemens Lautemann,et al.  Tree Automata, Tree Decomposition and Hyperedge Replacement , 1990, Graph-Grammars and Their Application to Computer Science.

[34]  P. S. Thiagarajan,et al.  The MSO Theory of Connectedly Communicating Processes , 2005, FSTTCS.

[35]  On Alternating omega-Automata , 1988, J. Comput. Syst. Sci..

[36]  Pierre-Alain Reynier,et al.  Transducers, logic and algebra for functions of finite words , 2016, SIGL.

[37]  Sudipto Guha,et al.  A constant-factor approximation algorithm for the k-median problem (extended abstract) , 1999, STOC '99.

[38]  Anca Muscholl,et al.  Origin-equivalence of two-way word transducers is in PSPACE , 2018, FSTTCS.

[39]  Bernd Finkbeiner,et al.  Temporal Logics for Hyperproperties , 2013, POST.

[40]  Karoliina Lehtinen,et al.  A modal μ perspective on solving parity games in quasi-polynomial time , 2018, LICS.

[41]  Moshe Y. Vardi A Note on the Reduction of Two-Way Automata to One-Way Automata , 1989, Inf. Process. Lett..

[42]  Orna Kupferman,et al.  Weak alternating automata and tree automata emptiness , 1998, STOC '98.

[43]  Timothy V. Griffiths The unsolvability of the Equivalence Problem for Λ-Free nondeterministic generalized machines , 1968, JACM.

[44]  Shanfei Li,et al.  An Improved Approximation Algorithm for the Hard Uniform Capacitated k-median Problem , 2014, APPROX-RANDOM.

[45]  Amit Kumar,et al.  The matroid median problem , 2011, SODA '11.

[46]  Shi Li,et al.  Constant Approximation for Capacitated k-Median with (1 + ε)-Capacity Violation , 2016, ArXiv.

[47]  Samir Khuller,et al.  LP Rounding for k-Centers with Non-uniform Hard Capacities , 2012, 2012 IEEE 53rd Annual Symposium on Foundations of Computer Science.

[48]  Shi Li,et al.  Approximating capacitated k-median with (1 + ∊)k open facilities , 2014, SODA.

[49]  Nathan Lhote,et al.  Logics for Word Transductions with Synthesis , 2017, LICS.

[50]  Kenneth L. McMillan,et al.  A technique of state space search based on unfolding , 1995, Formal Methods Syst. Des..

[51]  Annegret Habel,et al.  Hyperedge Replacement: Grammars and Languages , 1992, Lecture Notes in Computer Science.

[52]  Joost Engelfriet,et al.  Context-Free Graph Grammars , 1997, Handbook of Formal Languages.

[53]  Marcin Jurdzinski,et al.  Succinct progress measures for solving parity games , 2017, 2017 32nd Annual ACM/IEEE Symposium on Logic in Computer Science (LICS).

[54]  Shi Li,et al.  A Dependent LP-Rounding Approach for the k-Median Problem , 2012, ICALP.

[55]  Samir Khuller,et al.  The Capacitated K-Center Problem , 2000, SIAM J. Discret. Math..

[56]  Rajeev Alur,et al.  Nondeterministic Streaming String Transducers , 2011, ICALP.

[57]  Heiko Mantel,et al.  Possibilistic definitions of security-an assembly kit , 2000, Proceedings 13th IEEE Computer Security Foundations Workshop. CSFW-13.

[58]  Walter Vogler,et al.  An Improvement of McMillan's Unfolding Algorithm , 2002, Formal Methods Syst. Des..

[59]  Amit Kumar,et al.  Constant factor approximation algorithm for the knapsack median problem , 2012, SODA.

[60]  John C. Shepherdson,et al.  The Reduction of Two-Way Automata to One-Way Automata , 1959, IBM J. Res. Dev..

[61]  Jean-Marc Talbot,et al.  Decision problems of tree transducers with origin , 2018, Inf. Comput..

[62]  Ramaswamy Ramanujam,et al.  Reasoning about Layered Message Passing Systems , 2003, VMCAI.

[63]  Aditya Bhaskara,et al.  Centrality of trees for capacitated k\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$k$$\end{document}-center , 2014, Mathematical Programming.

[64]  Roberto Gorrieri,et al.  On the Decidability of Non Interference over Unbounded Petri Nets , 2010, SecCo.

[65]  P. Madhusudan,et al.  Beyond Message Sequence Graphs , 2001, FSTTCS.

[66]  Paolo Baldan,et al.  Unfolding-Based Diagnosis of Systems with an Evolving Topology , 2008, CONCUR.

[67]  Rajmohan Rajaraman,et al.  Analysis of a local search heuristic for facility location problems , 2000, SODA '98.

[68]  Helmut Seidl,et al.  On the Degree of Ambiguity of Finite Automata , 1991, Theor. Comput. Sci..

[69]  Friedemann Mattern,et al.  Virtual Time and Global States of Distributed Systems , 2002 .