Skip to main content

Statistical Analysis of Non-deterministic Fork-Join Processes

  • Conference paper
  • First Online:
Theoretical Aspects of Computing – ICTAC 2020 (ICTAC 2020)

Abstract

We study the combinatorial structure of concurrent programs with non-deterministic choice and a fork-join style of coordination. As a first step we establish a link between these concurrent programs and a class of combinatorial structures. Based on this combinatorial interpretation, we develop and experiment algorithms aimed at the statistical exploration of the state-space of programs. The first algorithm is a uniform random sampler of bounded executions, providing a suitable default exploration strategy. The second algorithm is a random sampler of execution prefixes that allows to control the exploration with respect to the uniform distribution. The fundamental characteristic of these algorithms is that they work on the control graph of the programs and not directly on their state-space, thus providing a way to tackle the state explosion problem.

This research was partially supported by the ANR MetACOnc project ANR-15-CE40-0014.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    A function f is in \(\sharp P\) if there is a polynomial-time non-deterministic Turing machine M such that for any instance xf(x) is the number of executions of M that accept x as input [23].

  2. 2.

    An implementation of our algorithms and all the scripts used for the experiments can be found on the companion repository at https://gitlab.com/ParComb/libnfj.

  3. 3.

    Since we do not interpret the action symbols, no distinction is possible in the provided semantics between a choice being triggered internally or externally.

  4. 4.

    In general, the notation \(P \overset{a}{\Rightarrow } P'\) is ambiguous since there may be several different proof-trees with the same conclusion \(P \overset{a}{\rightarrow } P'\). An example of this is given in Remark 1. For the sake of simplicity and in order to keep the notations light, in the examples given here, each step \(P \overset{a}{\Rightarrow } P'\) identifies only one possible proof-tree.

  5. 5.

    The word “labelled” is not particularly relevant in our setup. It refers to the fact that another way to represent the interleaving of two executions is to put an integer label on each step of both execution carrying the position of each step in the interleaving.

  6. 6.

    Grammar descriptions involving non-disjoint unions are referred to as “ambiguous” and lack most of the benefits, if not all, of the symbolic method, essentially because some objects may be counted multiple times when applying the method.

  7. 7.

    This is the only “non-standard” computation rule we use in this example. All the rest is usual polynomial manipulations. General rules for computing \(A(z) \circledcirc B(z)\) are beyond the scope of this article.

  8. 8.

    All the benchmarks were run on a standard laptop with an Intel Core i7-8665U and 32G of RAM running Ubuntu 19.10 with kernel version 5.3.0–46-generic. We used FLINT version 2.5.2 and GMP version 6.1.2.

  9. 9.

    The interquartile range of a set of measures is the difference between the third and the first quartiles. Compared with the value of the median, it gives a rough estimate of the dispersion of the measures.

References

  1. Abbes, S., Mairesse, J.: Uniform generation in trace monoids. In: 40th International Symposium MFCS, pp. 63–75 (2015)

    Google Scholar 

  2. Arora, S., Barak, B.: Computational Complexity - A Modern Approach. Cambridge University Press, New York (2009)

    Book  Google Scholar 

  3. Basset, N., Mairesse, J., Soria, M.: Uniform sampling for networks of automata. In: 28th International Conference CONCUR (2017)

    Google Scholar 

  4. Bendkowski, M., Bodini, O., Dovgal, S.: Polynomial tuning of multiparametric combinatorial samplers, pp. 92–106 (2018)

    Google Scholar 

  5. Bodini, O., Dien, M., Genitrini, A., Peschanski, F.: Entropic uniform sampling of linear extensions in series-parallel posets. In: Weil, P. (ed.) CSR 2017. LNCS, vol. 10304, pp. 71–84. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-58747-9_9

    Chapter  MATH  Google Scholar 

  6. Bodini, O., Dien, M., Genitrini, A., Peschanski, F.: The ordered and colored products in analytic combinatorics: application to the quantitative study of synchronizations in concurrent processes. In: 14th SIAM Meeting ANALCO, pp. 16–30 (2017)

    Google Scholar 

  7. Bodini, O., Genitrini, A., Peschanski, F.: The combinatorics of non-determinism. IARCS Annu. Conf. FSTTCS 24, 425–436 (2013)

    MathSciNet  MATH  Google Scholar 

  8. Bodini, O., Genitrini, A., Peschanski, F.: A quantitative study of pure parallel processes. Electron. J. Comb. 23(1), P1.11, 39 pages (2016)

    Google Scholar 

  9. Bodini, O., Dien, M., Genitrini, A., Peschanski, F.: The combinatorics of barrier synchronization. In: Donatelli, S., Haar, S. (eds.) PETRI NETS 2019. LNCS, vol. 11522, pp. 386–405. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-21571-2_21

    Chapter  Google Scholar 

  10. Darrasse, A., Panagiotou, K., Roussel, O., Soria, M.: Boltzmann generation for regular languages with shuffle. In: GASCOM 2010 - Conference on random generation of combinatorial structures. Montréal, Canada (September 2010)

    Google Scholar 

  11. Flajolet, P., Gardy, D., Thimonier, L.: Birthday paradox, coupon collectors, caching algorithms and self-organizing search. D. A. Math. 39(3), 207–229 (1992)

    Article  MathSciNet  Google Scholar 

  12. Flajolet, P., Sedgewick, R.: Analytic Combinatorics. Cambridge University Press, New York (2009)

    Book  Google Scholar 

  13. Flajolet, P., Zimmermann, P., Cutsem, B.V.: A calculus for the random generation of combinatorial structures (1993)

    Google Scholar 

  14. Gaudel, M., Denise, A., Gouraud, S., Lassaigne, R., Oudinet, J., Peyronnet, S.: Coverage-biased random exploration of models. Electr. Notes Theor. Comput. Sci. 220(1), 3–14 (2008)

    Article  Google Scholar 

  15. Grosu, R., Smolka, S.A.: Monte carlo model checking. In: Halbwachs, N., Zuck, L.D. (eds.) TACAS 2005. LNCS, vol. 3440, pp. 271–286. Springer, Heidelberg (2005). https://doi.org/10.1007/978-3-540-31980-1_18

    Chapter  Google Scholar 

  16. Hart, W., Johansson, F., Pancratz, S.: FLINT: Fast Library for Number Theory (2013), version 2.5.2, http://flintlib.org

  17. Koomen, C.J.: Calculus of communicating systems. In: The Design of Communicating Systems. The Springer International Series in Engineering and Computer Science (VLSI, Computer Architecture and Digital Signal Processing), vol 147. Springer, Boston (1991) https://doi.org/10.1007/978-1-4615-4020-5_2

  18. Krob, D., Mairesse, J., Michos, I.: On the average parallelism in trace monoids. In: Alt, H., Ferreira, A. (eds.) STACS 2002. LNCS, vol. 2285, pp. 477–488. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-45841-7_39

    Chapter  Google Scholar 

  19. Martínez, C., Molinero, X.: An experimental study of unranking algorithms. In: Ribeiro, C.C., Martins, S.L. (eds.) WEA 2004. LNCS, vol. 3059, pp. 326–340. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-24838-5_25

    Chapter  Google Scholar 

  20. Molinero, X.: Ordered generation of classes of combinatorial structures. Ph.D. thesis, Universitat Politècnica de Catalunya (October 2005)

    Google Scholar 

  21. Oudinet, J., Denise, A., Gaudel, M.-C., Lassaigne, R., Peyronnet, S.: Uniform monte-carlo model checking. In: Giannakopoulou, D., Orejas, F. (eds.) FASE 2011. LNCS, vol. 6603, pp. 127–140. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-19811-3_10

    Chapter  Google Scholar 

  22. Pivoteau, C., Salvy, B., Soria, M.: Algorithms for combinatorial structures: well-founded systems and newton iterations. J. Comb. Theory Ser. A 119, 1711–1773 (2012)

    Article  MathSciNet  Google Scholar 

  23. Valiant, L.G.: The complexity of computing the permanent. Theor. Comput. Sci. 8, 189–201 (1979)

    Article  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Martin Pépin .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2020 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Genitrini, A., Pépin, M., Peschanski, F. (2020). Statistical Analysis of Non-deterministic Fork-Join Processes. In: Pun, V.K.I., Stolz, V., Simao, A. (eds) Theoretical Aspects of Computing – ICTAC 2020. ICTAC 2020. Lecture Notes in Computer Science(), vol 12545. Springer, Cham. https://doi.org/10.1007/978-3-030-64276-1_5

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-64276-1_5

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-64275-4

  • Online ISBN: 978-3-030-64276-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics