Better Algorithms for Analyzing and Enacting Declarative Workflow Languages Using LTL

Declarative workflow languages are easy for humans to understand and use for specifications, but difficult for computers to check for consistency and use for enactment. Therefore, declarative languages need to be translated to something a computer can handle. One approach is to translate the declarative language to linear temporal logic (LTL), which can be translated to finite automata. While computers are very good at handling finite automata, the translation itself is often a road block as it may take time exponential in the size of the input. Here, we present algorithms for doing this translation much more efficiently (around a factor of 10,000 times faster and handling 10 times larger systems on a standard computer), making declarative specifications scale to realistic settings.

[1]  Bala Ravikumar,et al.  A parallel algorithm for minimization of finite automata , 1996, Proceedings of International Conference on Parallel Processing.

[2]  Kousha Etessami,et al.  Optimizing Büchi Automata , 2000, CONCUR.

[3]  Zohar Manna,et al.  Temporal Verification of Reactive Systems , 1995, Springer New York.

[4]  Robert E. Tarjan,et al.  Three Partition Refinement Algorithms , 1987, SIAM J. Comput..

[5]  Andrew D. Gordon,et al.  Verified Reference Implementations of WS-Security Protocols , 2006, WS-FM.

[6]  Edmund M. Clarke,et al.  A parallel algorithm for constructing binary decision diagrams , 1990, Proceedings., 1990 IEEE International Conference on Computer Design: VLSI in Computers and Processors.

[7]  David S. Johnson,et al.  Some Simplified NP-Complete Graph Problems , 1976, Theor. Comput. Sci..

[8]  Wil M. P. van der Aalst,et al.  Constraint-Based Workflow Models: Change Made Easy , 2007, OTM Conferences.

[9]  Andreas Podelski,et al.  ACSAR: Software Model Checking with Transfinite Refinement , 2007, SPIN.

[10]  Zahir Tari,et al.  On the Move to Meaningful Internet Systems 2007: CoopIS, DOA, ODBASE, GADA, and IS, OTM Confederated International Conferences CoopIS, DOA, ODBASE, GADA, and IS 2007, Vilamoura, Portugal, November 25-30, 2007, Proceedings, Part II , 2007, OTM Conferences.

[11]  Sofia Cassel,et al.  Graph-Based Algorithms for Boolean Function Manipulation , 2012 .

[12]  Johan Anthory Willem Kamp,et al.  Tense logic and the theory of linear order , 1968 .

[13]  Zohar Manna,et al.  Temporal verification of reactive systems - safety , 1995 .

[14]  Federico Chesani,et al.  Verification of Choreographies During Execution Using the Reactive Event Calculus , 2008, WS-FM.

[15]  Dimitra Giannakopoulou,et al.  Automata-based verification of temporal properties on running programs , 2001, Proceedings 16th Annual International Conference on Automated Software Engineering (ASE 2001).

[16]  Dragan Bosnacki,et al.  Enacting Declarative Languages Using LTL: Avoiding Errors and Improving Performance , 2010, SPIN.

[17]  Stephen A. White,et al.  Business Process Modeling Notation (BPMN), Version 1.0 , 2004 .

[18]  John E. Hopcroft,et al.  An n log n algorithm for minimizing states in a finite automaton , 1971 .

[19]  Pierre Wolper,et al.  Simple on-the-fly automatic verification of linear temporal logic , 1995, PSTV.