Strong Connectivity and Shortest Paths for Checking Models

We study directed graphs and focus on algorithms for two classical graph problems; the decomposition of a graph into Strongly Connected Components (SCCs), and the Single-Source Shortest Path problem. In particular, we concentrate on the development of new graph search algorithms for checking models, i.e. techniques that allow a user to analyse a system and verify whether particular properties are maintained. Our contributions advance the performance of state-of-the-art techniques for model checking and conformance checking. Moreover, we additionally pursue new directions to broaden the horizons of both fields. We developed a multi-core algorithm for on-the-fly SCC decomposition that scales effectively on many-core systems. In its construction, we additionally developed an iterable concurrent union-find structure that may be used in other applications. We considered SCCs in the domain of model checking and showed that our SCC decomposition algorithm can be applied to outperform the state-of-the-art techniques. Additionally, we explored how more general automata could be model checked by providing techniques to achieve this. We studied the shortest path problem in the context of conformance checking, in particular for the computation of alignments. By exploiting characteristic choices for the cost function, we compute alignments via an algorithm based on symbolic reachability. We also consider an alternative cost function and show how this leads to a new data structure and algorithm. Finally, we studied new problems for Parametric Timed Automata (PTAs), which extend timed automata with unknown constant values, or parameters. We developed algorithms to synthesize parameter values for the best- and worst-case behaviour. For instance, computing all parameter valuations such that a target location is reached in minimal- or maximal time.

[1]  Pogorilyy S D FINDING STRONGLY CONNECTED COMPONENTS IN PARALLEL , 2008 .

[2]  Dan Zhang,et al.  From concurrent state machines to reliable multi-threaded Java code , 2018 .

[3]  J. Kruskal On the shortest spanning subtree of a graph and the traveling salesman problem , 1956 .

[4]  P. Fiterau-Brostean Active Model Learning for the Analysis of Network Protocols , 2018 .

[5]  Mathias Weske,et al.  Towards Understanding Process Modeling - The Case of the BPM Academic Initiative , 2011, BPMN.

[6]  Kim G. Larsen,et al.  Distributed Algorithms for Time Optimal Reachability Analysis , 2016, FORMATS.

[7]  Thomas H. Spencer More time-work tradeoffs for parallel graph algorithms , 1991, SPAA '91.

[8]  Tom van Dijk,et al.  Sylvan: multi-core decision diagrams , 2015, TACAS.

[9]  J. R. Salamanca Tellez,et al.  Coequations and Eilenberg–type Correspondences , 2018 .

[10]  Robert E. Tarjan,et al.  A Randomized Concurrent Algorithm for Disjoint Set Union , 2016, PODC.

[11]  Paul Gastin,et al.  Minimization of Counterexamples in SPIN , 2004, SPIN.

[12]  Carla D. Savage,et al.  Depth-First Search and the Vertex Cover Problem , 1982, Inf. Process. Lett..

[13]  Wil M. P. van der Aalst,et al.  Process Mining , 2016, Springer Berlin Heidelberg.

[14]  Jaco Geldenhuys,et al.  Tarjan's Algorithm Makes On-the-Fly LTL Verification More Efficient , 2004, TACAS.

[15]  Boudewijn F. van Dongen,et al.  Computing Alignments of Event Data and Process Models , 2018, Trans. Petri Nets Other Model. Concurr..

[16]  Javier Esparza,et al.  A Note on On-the-Fly Verification Algorithms , 2005, TACAS.

[17]  Robert E. Tarjan,et al.  Edge-disjoint spanning trees and depth-first search , 1976, Acta Informatica.

[18]  Saeed Darabi,et al.  Verification of Program Parallelization , 2018 .

[19]  Antti Valmari,et al.  The State Explosion Problem , 1996, Petri Nets.

[20]  Mahmoud Talebi,et al.  Scalable performance analysis of wireless sensor networks , 2018 .

[21]  Nils J. Nilsson,et al.  A Formal Basis for the Heuristic Determination of Minimum Cost Paths , 1968, IEEE Trans. Syst. Sci. Cybern..

[22]  Quirijn W. Bouts,et al.  Geographic graph construction and visualization , 2017 .

[23]  Jussi Vanhatalo,et al.  Simplified Computation and Generalization of the Refined Process Structure Tree , 2010, WS-FM.

[24]  Michael J. Fischer,et al.  An improved equivalence algorithm , 1964, CACM.

[25]  H. P. Williams THEORY OF LINEAR AND INTEGER PROGRAMMING (Wiley-Interscience Series in Discrete Mathematics and Optimization) , 1989 .

[26]  Benoît Depaire,et al.  PTandLogGenerator: A Generator for Artificial Event Data , 2016, BPM.

[27]  Tim Ophelders Continuous similarity measures for curves and surfaces , 2018 .

[28]  L. Swartjes,et al.  Model-based design of baggage handling systems , 2018 .

[29]  Harold N. Gabow,et al.  Path-based depth-first search for strong and biconnected components , 2000, Inf. Process. Lett..

[30]  Wil M. P. van der Aalst,et al.  Process Discovery Using Localized Events , 2015, Petri Nets.

[31]  van Ac Allan Hulst,et al.  Control synthesis using modal logic and partial bisimilarity : a treatise supported by computer verified proofs , 2016 .

[32]  Fabrice Kordon,et al.  Variations on parallel explicit emptiness checks for generalized Büchi automata , 2017, International Journal on Software Tools for Technology Transfer.

[33]  Robert E. Tarjan,et al.  Disjoint Set Union with Randomized Linking , 2014, SODA.

[34]  Malte Lochau,et al.  Minimum/maximum delay testing of product lines with unbounded parametric real-time constraints , 2019, J. Syst. Softw..

[35]  Daniel Sawitzki,et al.  Experimental Studies of Symbolic Shortest-Path Algorithms , 2004, WEA.

[36]  Laura Ricci,et al.  Fast Connected Components Computation in Large Graphs by Vertex Pruning , 2017, IEEE Transactions on Parallel and Distributed Systems.

[37]  Alfons Laarman,et al.  Partial-Order Reduction for Multi-core LTL Model Checking , 2014, Haifa Verification Conference.

[38]  Mihalis Yannakakis,et al.  On nested depth first search , 1996, The Spin Verification System.

[39]  Patricia Bouyer,et al.  Shrinking Timed Automata , 2014, FSTTCS.

[40]  Multiplicity One Theorems,et al.  Faculty of Mathematics and Computer Science , 2009 .

[41]  Wil M. P. van der Aalst,et al.  Single-Entry Single-Exit decomposed conformance checking , 2014, Inf. Syst..

[42]  Alfons Laarman,et al.  Multi-Core LTSmin: Marrying Modularity and Scalability , 2011, NASA Formal Methods.

[43]  Nikolaos Bezirgiannis Abstract behavioral specification: unifying modeling and programming , 2018 .

[44]  Petra Heck Quality of Just-in-Time Requirements: Just-Enough and Just-in-Time , 2016 .

[45]  Kim G. Larsen,et al.  As Cheap as Possible: Efficient Cost-Optimal Reachability for Priced Timed Automata , 2001, CAV.

[46]  Dennis Guck,et al.  Reliable systems: fault tree analysis via Markov reward automata , 2017 .

[47]  Gerard J. Holzmann,et al.  Parallelizing the Spin Model Checker , 2012, SPIN.

[48]  Vipin Kumar,et al.  Superlinear Speedup in Parallel State-Space Search , 1988, FSTTCS.

[49]  Ivana Cerná,et al.  Relating Hierarchy of Temporal Properties to Model Checking , 2003, MFCS.

[50]  M. Sharir,et al.  A strong-connectivity algorithm and its applications in data flow analysis. , 2018 .

[51]  Jan Kretínský,et al.  Deterministic Automata for the (F,G)-fragment of LTL , 2012, CAV.

[52]  Simona Orzan,et al.  On Distributed Verification and Verified Distribution , 2004 .

[53]  Mark van den Brand,et al.  From Conceptual Models to Safety Assurance , 2014, ER.

[54]  Shengchao Qin,et al.  Concurrent On-the-Fly SCC Detection for Automata-Based Model Checking with Fairness Assumption , 2016, 2016 21st International Conference on Engineering of Complex Computer Systems (ICECCS).

[55]  Radek Pelánek,et al.  BEEM: Benchmarks for Explicit Model Checkers , 2007, SPIN.

[56]  Christos Faloutsos,et al.  Graphs over time: densification laws, shrinking diameters and possible explanations , 2005, KDD '05.

[57]  Sivasankaran Rajamanickam,et al.  BFS and Coloring-Based Parallel Algorithms for Strongly Connected Components and Related Problems , 2014, 2014 IEEE 28th International Parallel and Distributed Processing Symposium.

[58]  Andreas Solti,et al.  Automatic Root Cause Identification Using Most Probable Alignments , 2017, Business Process Management Workshops.

[59]  Fabrice Kordon,et al.  Parallel Explicit Model Checking for Generalized Büchi Automata , 2015, TACAS.

[60]  Radek Pelánek,et al.  Properties of state spaces and their applications , 2008, International Journal on Software Tools for Technology Transfer.

[61]  Anton Wijs,et al.  BFS-Based Model Checking of Linear-Time Properties with an Application on GPUs , 2016, CAV.

[62]  H. Howie Huang,et al.  iSpan: Parallel Identification of Strongly Connected Components with Spanning Trees , 2018, SC18: International Conference for High Performance Computing, Networking, Storage and Analysis.

[63]  Fabrice Kordon,et al.  Three SCC-Based Emptiness Checks for Generalized Büchi Automata , 2013, LPAR.

[64]  Ivana Cerná,et al.  Distributed Explicit Fair Cycle Detection (Set Based Approach) , 2003, SPIN.

[65]  Dragan Bosnacki,et al.  Partial-Order Reduction for GPU Model Checking , 2016, ATVA.

[66]  John H. Reif,et al.  Depth-First Search is Inherently Sequential , 1985, Inf. Process. Lett..

[67]  Josep Carmona,et al.  Aligning Modeled and Observed Behavior: A Compromise Between Computation Complexity and Quality , 2017, CAiSE.

[68]  Wil M. P. van der Aalst,et al.  Process mining in software systems: Discovering real-life business transactions and process models from distributed systems , 2015, 2015 ACM/IEEE 18th International Conference on Model Driven Engineering Languages and Systems (MODELS).

[69]  A. Amighi,et al.  Specification and verification of synchronisation classes in Java : A practical approach , 2018 .

[70]  Robert A. Wagner,et al.  Order-n correction for regular languages , 1974, CACM.

[71]  Radek Pelánek,et al.  Typical Structural Properties of State Spaces , 2004, SPIN.

[72]  F. Yang,et al.  A theory of executability : with a focus on the expressivity of process calculi , 2018 .

[73]  M. P. Konzack,et al.  Trajectory analysis : bridging algorithms and visualization , 2018 .

[74]  Chet Langin,et al.  Languages and Machines: An Introduction to the Theory of Computer Science , 2007 .

[75]  Moshe Y. Vardi An Automata-Theoretic Approach to Linear Temporal Logic , 1996, Banff Higher Order Workshop.

[76]  Fabrice Kordon,et al.  Symbolic Model Checking of Stutter-Invariant Properties Using Generalized Testing Automata , 2014, TACAS.

[77]  Joseph S. Miller Decidability and Complexity Results for Timed Automata and Semi-linear Hybrid Automata , 2000, HSCC.

[78]  Alfons Laarman,et al.  Guard-based partial-order reduction , 2013, International Journal on Software Tools for Technology Transfer.

[79]  Wil M. P. van der Aalst,et al.  Decomposing Petri nets for process mining: A generic approach , 2013, Distributed and Parallel Databases.

[80]  Pierre Wolper,et al.  An Automata-Theoretic Approach to Automatic Program Verification (Preliminary Report) , 1986, LICS.

[81]  D. Landman,et al.  Reverse engineering source code: Empirical studies of limitations and opportunities , 2017 .

[82]  Boudewijn F. van Dongen,et al.  Component behavior discovery from software execution data , 2016, 2016 IEEE Symposium Series on Computational Intelligence (SSCI).

[83]  Dragan Bosnacki,et al.  Efficient GPU algorithms for parallel decomposition of graphs into strongly connected and maximal end components , 2016, Formal Methods Syst. Des..

[84]  Jeffrey D. Ullman,et al.  Set Merging Algorithms , 1973, SIAM J. Comput..

[85]  A Ali Mehrabi Data structures for analyzing geometric data , 2017 .

[86]  Ionut David Run-time resource management for component-based systems , 2016 .

[87]  J. Ian Munro,et al.  Efficient Determination of the Transitive Closure of a Directed Graph , 1971, Inf. Process. Lett..

[88]  Didier Lime,et al.  Integer Parameter Synthesis for Timed Automata , 2013, TACAS.

[89]  Alfons Laarman,et al.  Multi-core Nested Depth-First Search , 2011, ATVA.

[90]  van Ai Arthur Goethem,et al.  Algorithms for curved schematization , 2016 .

[91]  Marwan Hassani,et al.  Online conformance checking: relating event streams to process models using prefix-alignments , 2017, International Journal of Data Science and Analytics.

[92]  Ali Kaveh,et al.  Computational Structural Analysis and Finite Element Methods , 2013 .

[93]  Alfons Laarman,et al.  Improved OnThe-Fly Livelock Detection : Combining Partial Order Reduction and Parallelism for dfs fifo , 2013 .

[94]  van,et al.  Massively collaborative machine learning , 2016 .

[95]  Jan Kretínský,et al.  Rabinizer 3: Safraless Translation of LTL to Small Deterministic Automata , 2014, ATVA.

[96]  Lawrence Rauchwerger,et al.  Finding strongly connected components in distributed graphs , 2005, J. Parallel Distributed Comput..

[97]  Kim G. Larsen,et al.  Time optimal reachability analysis using swarm verification , 2016, SAC.

[98]  Alfons Laarman,et al.  LTSmin: High-Performance Language-Independent Model Checking , 2015, TACAS.

[99]  U Ulyana Tikhonova,et al.  Engineering the dynamic semantics of domain specific languages , 2017 .

[100]  James Christopher Wyllie,et al.  The Complexity of Parallel Computations , 1979 .

[101]  Heikki Tauriainen,et al.  Nested emptiness search for generalized Buchi automata , 2004, Proceedings. Fourth International Conference on Application of Concurrency to System Design, 2004. ACSD 2004..

[102]  Josep Carmona,et al.  A Recursive Paradigm for Aligning Observed Behavior of Large Structured Process Models , 2016, BPM.

[103]  Jürgen Dingel,et al.  A survey of timed automata for the development of real-time systems , 2013, Comput. Sci. Rev..

[104]  Esko Nuutila,et al.  Efficient transitive closure computation in large digraphs , 1995 .

[105]  J. van Leeuwen,et al.  Alternative path compression techniques , 1977 .

[106]  Tomas Rokicki,et al.  The Diameter of the Rubik's Cube Group Is Twenty , 2013, SIAM J. Discret. Math..

[107]  Didier Lime,et al.  Integer Parameter Synthesis for Real-Time Systems , 2015, IEEE Transactions on Software Engineering.

[108]  Önder Babur,et al.  Model analytics and management , 2019 .

[109]  Jean-Louis Denis,et al.  Having your cake and eating it too: discourses of transcendence and their role in organizational change dynamics , 2011 .

[110]  Paul PurdomJr. A transitive closure algorithm , 1970 .

[111]  Gavin Lowe Concurrent depth-first search algorithms based on Tarjan’s Algorithm , 2015, International Journal on Software Tools for Technology Transfer.

[112]  Jaco van de Pol,et al.  Bandwidth and Wavefront Reduction for Static Variable Ordering in Symbolic Reachability Analysis , 2016, NASA Formal Methods.

[113]  Jun Sun,et al.  Scalable Multi-core Model Checking Fairness Enhanced Systems , 2009, ICFEM.

[114]  Boudewijn F. van Dongen,et al.  Replaying history on process models for conformance checking and performance analysis , 2012, WIREs Data Mining Knowl. Discov..

[115]  Boudewijn F. van Dongen,et al.  Tuning Alignment Computation: An Experimental Evaluation , 2017, ATAED@Petri Nets/ACSD.

[116]  L. Takac DATA ANALYSIS IN PUBLIC SOCIAL NETWORKS , 2012 .

[117]  Amir Pnueli,et al.  The temporal logic of programs , 1977, 18th Annual Symposium on Foundations of Computer Science (sfcs 1977).

[118]  Jan van Leeuwen,et al.  Worst-case Analysis of Set Union Algorithms , 1984, JACM.

[119]  Haim Kaplan Union--nd with Deletions , 2002 .

[120]  Alex Groce,et al.  Swarm Verification Techniques , 2011, IEEE Transactions on Software Engineering.

[121]  Alfons Laarman,et al.  Scalable multi-core model checking , 2014 .

[122]  Wil M. P. van der Aalst,et al.  Conformance checking of processes based on monitoring real behavior , 2008, Inf. Syst..

[123]  Bernd Becker,et al.  Multithreaded SAT Solving , 2007, 2007 Asia and South Pacific Design Automation Conference.

[124]  F. Vaandrager,et al.  Linear Parametric Model Checking of Timed Automata , 2001 .

[125]  A Aminah Zawedde,et al.  Modeling the dynamics of requirements process improvement , 2016 .

[126]  F.M.J. van den Broek,et al.  Mobile communication security , 2016 .

[127]  Marlon Dumas,et al.  Scalable Conformance Checking of Business Processes , 2017, OTM Conferences.

[128]  Robert E. Tarjan,et al.  Depth-First Search and Linear Graph Algorithms , 1972, SIAM J. Comput..