Skip to main content
Log in

Synthesis and reengineering of persistent systems

  • Original Article
  • Published:
Acta Informatica Aims and scope Submit manuscript

Abstract

In formal verification, a structural object, such as a program or a Petri net, is given, and questions are asked about its behaviour. In system synthesis, conversely, a behavioural object, such as a transition system, is given, and questions are asked about the existence of a structural object realising this behaviour. In system reengineering, one wishes to transform a given system into another one, with similar behaviour and other properties not enjoyed by the original system. This paper addresses synthesis and reengineering problems in the specific framework of finite-state labelled transition systems, place/transition Petri nets, and behaviour isomorphisms. Since algorithms solving these problems are prohibitively time-consuming in general, it is interesting to know whether they can be improved in restricted circumstances, and whether direct correspondences can be found between classes of behavioural and classes of structural objects. This paper is concerned with persistent systems, which occur in hardware design and in various other applications. We shall derive exact conditions for a finite persistent transition system to be isomorphically implementable by a bounded Petri net exhibiting persistence in a structural way, and derive an efficient algorithm to find such a net if one exists. For the class of marked graph Petri nets, this leads to an exact characterisation of their state spaces.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7

Similar content being viewed by others

Notes

  1. To the authors’ knowledge, however, no precise analysis has yet been published.

  2. Note that by the ON property, none of the \(a_j\) can be a proper output transition of \(p\).

References

  1. Badouel, É., Bernardinello, L., Darondeau, P.: The synthesis problem for elementary nets is NP-complete. Theoret. Comput. Sci. 186, 107–134 (1997)

    Article  MATH  MathSciNet  Google Scholar 

  2. Badouel, É., Bernardinello, L., Darondeau, P.: Polynomial algorithms for the synthesis of bounded nets. In: Mosses, P.D., Nielsen, M., Schwartzbach, M.I. (eds.) TAPSOFT 1995, Lecture Notes in Computer Science, vol. 915, pp. 364–378 (1995)

  3. Badouel, É., Darondeau, P.: Theory of regions. In: Reisig, W., Rozenberg, G. (eds.) Lectures on Petri Nets I: Basic Model, LNCS vol. 1491, pp. 529–586. Springer (1998)

  4. Best, E., Darondeau, P.: A decomposition theorem for finite persistent transition systems. Acta Inform. 46, 237–254 (2009)

    Article  MATH  MathSciNet  Google Scholar 

  5. Best, E., Darondeau, P.: Separability in persistent Petri nets. Fundam. Inform. 112, 1–25 (2011)

    MathSciNet  Google Scholar 

  6. Best, E., Darondeau, P.: Petri net distributability. In: Virbitskaite, I., Voronkov, A. (eds.) PSI’11, Novosibirsk, LNCS vol. 7162, pp. 1–18. Springer (2011)

  7. Best, E., Devillers, R.: Persistent Systems with Unique Minimal Cyclic Parikh Vectors. Technical report 02–14, Dep. Informatik, Carl von Ossietzky Universität Oldenburg, 80 pp (February 2014)

  8. Best, E., Devillers, R.: A Characterisation of the state spaces of live and bounded marked graphs. In: Dediu, A.-H., et al. (eds.) Proceedings of LATA’14 (8th International Conference on Language and Automata Theory and Applications, Madrid, March 2014), LNCS 8370, pp. 161–172. Springer (2014)

  9. Best, E., Devillers, R.: Synthesis of persistent systems. In: Ciardo, G., Kindler, E. (eds.) Proceedings of the 35rd International Conference on Application and Theory of Petri Nets and Concurrency (Tunis, August 2014), LNCS 8489, pp. 111–129. Springer (2014)

  10. Best, E., Wimmel, H.: Structure theory of Petri nets. In: Jensen, K., et al. (eds.) Proceedings of the Fifth Advanced Course on Petri Nets, Rostock, 2010. ToPNoC VII, vol. 7480 of LNCS, pp. 162–224. Springer, Berlin, Heidelberg (2013)

  11. Caillaud, B.: http://www.irisa.fr/s4/tools/synet/

  12. Carmona, J., Cortadella, J., Khomenko, V., Yakovlev, A.: Synthesis of asynchronous hardware from petri nets. In: Desel, J., Reisig, W., Rozenberg, G. (eds.) Lectures on Concurrency and Petri Nets. Advances in Petri Nets, LNCS vol. 3098, pp. 345–401. Springer (2003)

  13. Commoner, F., Holt, A.W., Even, S., Pnueli, A.: Marked directed graphs. J. Comput. Syst. Sci. 5(5), 511–523 (1971)

    Article  MATH  MathSciNet  Google Scholar 

  14. Crespi-Reghizzi, S., Mandrioli, D.: A decidability theorem for a class of vector-addition systems. Inf. Process. Lett. 3(3), 78–80 (1975)

    Article  MATH  MathSciNet  Google Scholar 

  15. Desel, J., Reisig, W.: The synthesis problem of Petri nets. Acta Inform. 33, 297–315 (1996)

    Article  MATH  MathSciNet  Google Scholar 

  16. Devillers, R.: plain.c, pure.c, frag.c: Specially tailored programs written in C++ (described in [7])

  17. Ehrenfeucht, A., Rozenberg, G.: Partial 2-structures, part I: basic notions and the representation problem, and part II: state spaces of concurrent systems. Acta Inform. 27(4), 315–368 (1990)

    Article  MATH  MathSciNet  Google Scholar 

  18. Farkas, G.: Über die Theorie der Einfachen Ungleichungen. Journal für die Reine und Angewandte Mathematik 124, 1–27 (1902)

    Google Scholar 

  19. Genrich, H.J., Lautenbach, K.: Synchronisationsgraphen. Acta Inform. 2, 143–161 (1973)

    Article  MATH  MathSciNet  Google Scholar 

  20. Hack, M.H.T.: Analysis of Production Schemata by Petri Nets. M.S. Thesis, D.E.E. MIT, Cambridge Mass. Project MAC-TR 94 (1972)

  21. Júlvez, J., Recalde, L., Silva, M.: Deadlock-freeness analysis of continuous mono-T-semiflow Petri nets. IEEE Trans. Autom. Control 51–9, 1472–1481 (2006)

    Article  Google Scholar 

  22. Keller, R.M.: A fundamental theorem of asynchronous parallel computation. In: Processing of the Parallel, LNCS vol. 24, pp. 102–112. Springer (1975)

  23. Kondratyev, A., Cortadella, J., Kishinevsky, M., Pastor, E., Roig, O., Yakovlev, A.: Checking signal transition graph implementability by symbolic BDD traversal. In: Proceedings of the European Design and Test Conference, pp. 325–332. Paris, France (1995)

  24. Lamport, L.: Arbiter-free synchronization. Distrib. Comput. 16(2/3), 219–237 (2003)

    Article  Google Scholar 

  25. Landweber, L.H., Robertson, E.L.: Properties of conflict-free and persistent Petri nets. JACM 25(3), 352–364 (1978)

    Article  MATH  MathSciNet  Google Scholar 

  26. Recalde, L., Teruel, E., Silva, M.: Autonomous continuous P/T-systems. In: Donatelli, J.K.S. (ed.) Application and Theory of Petri Nets, LNCS vol. 1639, pp. 107–126. Springer, New York (1999)

  27. Schlachter, U., et al.: https://github.com/renke/apt

  28. Teruel, E., Chrza̧stowski-Wachtel, P., Colom, J.M., Silva, M.: On Weighted T-Systems. Application and Theory of Petri Nets. Lecture Notes in Computer Science vol. 616, pp. 348–367 (1992)

  29. Teruel, E., Colom, J.M., Silva, M.: Choice-free petri nets: a model for deterministic concurrent systems with bulk services and arrivals. IEEE Trans. Syst. Man Cybern. Part A 27–1, 73–83 (1997)

    Article  Google Scholar 

  30. van Glabbeek, R.J., Goltz, U., Schicke, J.-W.: On causal semantics of petri nets (extended abstract). In: Katoen, J.-P., König, B. (eds.) Proceedings of the International Conference on Concurrency Theory (CONCUR 2011), LNCS vol. 6901, pp. 43–59. Springer (2011)

  31. van Glabbeek, R.J., Goltz, U., Schicke-Uffmann, J.-W.: On distributability of Petri nets (extended abstract). In: Birkedal, L. (ed.) Proceedings of the FoSSaCS 2012 (held as part of ETAPS), LNCS vol. 7213, pp. 331–345. Springer (2012)

  32. Ville, J.: Sur la théorie générale des jeux où intervient l’habileté des joueurs. In: Borel, E. (ed.) Traité du calcul des probabilités et de ses applications, vol 4, pp. 105–113, Gauthiers-Villars (1938)

  33. Yakovlev, A.: Designing control logic for counterflow pipeline processor using Petri nets. Form. Methods Syst. Des. 12(1), 39–71 (1998)

    Article  MathSciNet  Google Scholar 

Download references

Acknowledgments

We are grateful to Philippe Darondeau, Hanna Klaudel, and Elisabeth Pelz for discussions. It was Philippe, in particular, who promoted the general idea of trying to characterise the state spaces of classes of Petri nets. The first author would like to thank Université de Rennes, Université d’Évry-val-d’Essonne, Université Paris Est Créteil Val de Marne, and Uniwersytet Mikołaja Kopernika Toruń (project POKL.04.01.01-00-081/10) for supporting research stays. The authors are grateful to two reviewers for their very helpful remarks. We would also like to thank the editors, Rob van Glabbeek, Ursula Goltz and Ernst-Rüdiger Olderog, for inviting us to take part in the celebration of 25 years of Combining Compositionality and Concurrency and to submit a contribution.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Eike Best.

Additional information

Dedicated to the memory of Philippe Darondeau.

Appendix: Some properties of lts satisfying b, r, p, and \(\mathbf{P}{\varUpsilon }\)

Appendix: Some properties of lts satisfying b, r, p, and \(\mathbf{P}{\varUpsilon }\)

Let \({ TS}=(S,\rightarrow ,T,s_0)\) be an lts satisfying properties b, r, p, and \(\mathbf{P}{\varUpsilon }\).

First, we briefly recapitulate Keller’s theorem [22]. For sequences \(\sigma ,\tau \in T^*, \tau {\mathop {{-}}\limits ^{\bullet }}\sigma \) denotes the residue of \(\tau \) with respect to \(\sigma \), i.e., the sequence left after cancelling successively in \(\tau \) the leftmost occurrences of all symbols from \(\sigma \), read from left to right. Formally and inductively: for \(t\in T, \tau {\mathop {{-}}\limits ^{\bullet }}t=\tau \) if \(\varPsi (\tau )(t)=0\); \(\tau {\mathop {{-}}\limits ^{\bullet }}t=\)the sequence obtained by erasing the leftmost \(t\) in \(\tau \) if \(\varPsi (\tau )(t)\ne 0\); \(\tau {\mathop {{-}}\limits ^{\bullet }}\varepsilon =\tau \); and \(\tau {\mathop {{-}}\limits ^{\bullet }}(t\sigma )=(\tau {\mathop {{-}}\limits ^{\bullet }}t){\mathop {{-}}\limits ^{\bullet }}\sigma \).

Theorem 8

Keller’s theorem

If \(s[\tau \rangle \) and \(s[\sigma \rangle \) for some \(s\in [s_0\rangle \), then \(s[\tau (\sigma {\mathop {{-}}\limits ^{\bullet }}\tau )\rangle s'\) and \(s[\sigma (\tau {\mathop {{-}}\limits ^{\bullet }}\sigma )\rangle s''\),

as well as \(\varPsi (\tau (\sigma {\mathop {{-}}\limits ^{\bullet }}\tau ))=\varPsi (\sigma (\tau {\mathop {{-}}\limits ^{\bullet }}\sigma ))\) and \(s'=s''\).

Lemma 6

Characterisation of small cycles

A cycle \(s[\kappa \rangle s\) is small if and only if \(\varPsi (\kappa )={\varUpsilon }\).

Proof

(\(\Rightarrow \)): Immediate by \(\mathbf{P}{\varUpsilon }\).

(\(\Leftarrow \)): Suppose that \(s[\kappa \rangle s\) is a cycle with \(\varPsi (\kappa )={\varUpsilon }\). Assume that \(\kappa \) is not small; we derive a contradiction. By the definition of (non-)smallness, there is some state \(q\in [s_0\rangle \) and some cycle \(q[\gamma \rangle q\) which is small, such that \(\varPsi (\gamma )\lneqq \varPsi (\kappa )\). Also, by \(\mathbf{P}{\varUpsilon }\), \(\varPsi (\gamma )={\varUpsilon }=\varPsi (\kappa )\), a contradiction. Hence \(s[\kappa \rangle s\) is small, proving (\(\Leftarrow \)). \(\square \)

Lemma 7

Paths with Parikh vector \({\varUpsilon }\) are cyclic

Let \(s[\beta \rangle s'\) with \(\varPsi (\beta )={\varUpsilon }\). Then \(s=s'\).

Proof

First, we show that there exists some small cycle around state \(s\). To this end, let \(q\in [s_0\rangle \) be any state around which there is a small cycle \(q[\gamma \rangle q\) with \(\varPsi (\gamma )={\varUpsilon }\). Such a state exists, because by reversibility, we can choose some arbitrary cycle, and if the chosen one is not already small, the definition of (non-)smallness allows us to choose another one which is small. By strong connectedness (following from reversibility and total reachability), there is a sequence \(q[\delta \rangle s\). By Keller’s theorem,

$$\begin{aligned} q[\gamma \delta \rangle s[\delta {\mathop {{-}}\limits ^{\bullet }}(\gamma \delta )\rangle \widehat{s}\;\;\text { and }\;\; q[\delta \rangle s[(\gamma \delta ){\mathop {{-}}\limits ^{\bullet }}\delta \rangle \widehat{s} \\ \end{aligned}$$

Because \(\varPsi (\delta )\le \varPsi (\gamma \delta )\), the first conjunct yields \(\delta {\mathop {{-}}\limits ^{\bullet }}(\gamma \delta )=\varepsilon \) and hence \(\widehat{s}=s\). Then the second conjunct yields \(s[(\gamma \delta ){\mathop {{-}}\limits ^{\bullet }}\delta \rangle s\). Moreover, \(\varPsi ((\gamma \delta ){\mathop {{-}}\limits ^{\bullet }}\delta )=\varPsi (\gamma )={\varUpsilon }\). Thus, putting \(\alpha =(\gamma \delta ){\mathop {{-}}\limits ^{\bullet }}\delta \), we have found a cycle \(s[\alpha \rangle s\) with \(\varPsi (\alpha )={\varUpsilon }\), which is moreover small by Lemma 6.

Now consider the sequence \(s[\beta \rangle s'\) with \(\varPsi (\beta )={\varUpsilon }\). By Keller’s theorem, using also \(s[\alpha \rangle s\),

$$\begin{aligned} s[\alpha \rangle s[\beta {\mathop {{-}}\limits ^{\bullet }}\alpha \rangle \widehat{s}\;\;\text { and }\;\;s[\beta \rangle s'[\alpha {\mathop {{-}}\limits ^{\bullet }}\beta \rangle \widehat{s} \end{aligned}$$

Using \(\varPsi (\alpha )=\varPsi (\beta )={\varUpsilon }\), we get \(\alpha {\mathop {{-}}\limits ^{\bullet }}\beta =\beta {\mathop {{-}}\limits ^{\bullet }}\alpha =\varepsilon \). Hence \(s=\widehat{s}=s'\). \(\square \)

Lemma 8

Cyclic extensions

Suppose \(s[\alpha \rangle \) with \(\alpha \in T^*\) and \(\varPsi (\alpha )\le {\varUpsilon }\). Then there is a small cycle \(s[\kappa \rangle s\) such that \(\alpha \) is a prefix of \(\kappa \).

Proof

As in the first part of the previous proof, we find a small cycle \(s[\widetilde{\alpha }\rangle s\). By \(\mathbf{P}{\varUpsilon }\), \(\varPsi (\widetilde{\alpha })={\varUpsilon }\).

Suppose \(s[\alpha \rangle s'\). By Keller’s theorem, \(s[\alpha \rangle s'[\widetilde{\alpha }{\mathop {{-}}\limits ^{\bullet }}\alpha \rangle s''\). By \(\varPsi (\alpha )\le {\varUpsilon }=\varPsi (\widetilde{\alpha }), \varPsi (\widetilde{\alpha })=\varPsi (\alpha (\widetilde{\alpha }{\mathop {{-}}\limits ^{\bullet }}\alpha ))\). By the cyclicity of \(\widetilde{\alpha }, s''=s\). Choosing \(\kappa =\alpha (\widetilde{\alpha }{\mathop {{-}}\limits ^{\bullet }}\alpha )\) finishes the proof, using \(\varPsi (\kappa )=\varPsi (\widetilde{\alpha })={\varUpsilon }\) and Lemma 6(\(\Leftarrow \)). \(\square \)

Lemma 9

Characterisation of short paths (cf. Definition 12)

Suppose that \(s[\tau \rangle s'\). Then \(s[\tau \rangle s'\) is short iff \(\lnot ({\varUpsilon }\le \varPsi (\tau ))\).

Proof

(\(\Rightarrow \)): By contraposition. Suppose that \(s[\tau \rangle s'\) and that \({\varUpsilon }\le \varPsi (\tau )\). There is some cycle \(s[\kappa \rangle s\) with \(\varPsi (\kappa )={\varUpsilon }\). By Keller’s theorem, \(s[\kappa \rangle s[\tau {\mathop {{-}}\limits ^{\bullet }}\kappa \rangle s''\). By \(\varPsi (\kappa )={\varUpsilon }\le \varPsi (\tau ), \varPsi (\tau )=\varPsi (\kappa (\tau {\mathop {{-}}\limits ^{\bullet }}\kappa ))\), and therefore, \(s'=s''\) (by determinacy, as implied by b). Since \(\kappa \) contains every transition at least once and \({\varUpsilon }\le \varPsi (\tau ), |\tau {\mathop {{-}}\limits ^{\bullet }}\kappa |<|\tau |\). Hence \(s[\tau \rangle s'\) is not short.

(\(\Leftarrow \)): Suppose that \(s[\tau \rangle s'\) and \(\lnot ({\varUpsilon }\le \varPsi (\tau ))\). Consider any other path \(s[\tau '\rangle s'\) from \(s\) to \(s'\). By reversibility, there is some path \(\rho \) from \(s'\) to \(s\). Hence both \(s'[\rho \tau \rangle s'\) and \(s'[\rho \tau '\rangle s'\) are cycles at \(s'\). By Keller’s theorem, \(s'[\rho \tau '\rangle s'[(\rho \tau ){\mathop {{-}}\limits ^{\bullet }}(\rho \tau ')\rangle s'\). Hence \(s'[\tau {\mathop {{-}}\limits ^{\bullet }}\tau '\rangle s'\), and since this is a cycle, \(\varPsi (\tau {\mathop {{-}}\limits ^{\bullet }}\tau ')\) is a multiple of \({\varUpsilon }\). In view of \(\lnot ({\varUpsilon }\le \varPsi (\tau ))\) and \(1\le {\varUpsilon }\), this can only be the case if \(\varPsi (\tau {\mathop {{-}}\limits ^{\bullet }}\tau ')=0\), i.e., \(\tau {\mathop {{-}}\limits ^{\bullet }}\tau '=\varepsilon \). This implies, in particular, that \(\varPsi (\tau )\le \varPsi (\tau ')\) and that \(|\tau |\le |\tau '|\), and therefore, \(s[\tau \rangle s'\) is short. \(\square \)

Lemma 10

Uniqueness of short Parikh vectors

Suppose that \(s[\tau \rangle s'\) and \(s[\tau '\rangle s'\) are both short. Then \(\varPsi (\tau )=\varPsi (\tau ')\).

Proof

By Lemma 9, both \(\lnot ({\varUpsilon }\le \varPsi (\tau ))\) and \(\lnot ({\varUpsilon }\le \varPsi (\tau '))\). As in the second part of the previous proof, we may conclude, using some suitable (in fact any) path \(s'[\rho \rangle s\), both \(s'[\tau {\mathop {{-}}\limits ^{\bullet }}\tau '\rangle s'\) and \(s'[\tau '{\mathop {{-}}\limits ^{\bullet }}\tau \rangle s'\). Therefore, both \(\varPsi (\tau )\le \varPsi (\tau ')\) and \(\varPsi (\tau ')\le \varPsi (\tau )\), implying \(\varPsi (\tau )=\varPsi (\tau ')\). \(\square \)

Lemma 11

Characterisation of Parikh vectors of paths

Suppose that \(s[\tau \rangle s'\). Then \(\varPsi (\tau )=\varPsi (\tau ')+\ell {\cdot }{\varUpsilon }\), with some number \(\ell \in {\mathbb {N}}\), where \(s[\tau '\rangle s'\) is any short path from \(s\) to \(s'\).

Proof

Assume that \(s[\tau \rangle s'\). Let \(\ell \) be the maximal number in \({\mathbb {N}}\) such that \(\varPsi (\ell {\cdot }{\varUpsilon })\le \varPsi (\tau )\). Let \(s[\kappa \rangle s\) be some cycle with \(\varPsi (\kappa )={\varUpsilon }\). Then also \(s[\kappa ^\ell \rangle s\), with \(\varPsi (\kappa ^\ell )=\ell {\cdot }{\varUpsilon }\). By Keller’s theorem, \(s[\kappa ^\ell \rangle s[\tau '\rangle s'\), with \(\tau '=\tau {\mathop {{-}}\limits ^{\bullet }}\kappa ^\ell \). By the maximality of \(\ell , s[\tau '\rangle s'\) is short, and by \(\varPsi (\kappa ^\ell )\le \varPsi (\tau ), \varPsi (\tau )\) can be written as \(\varPsi (\tau )=\varPsi (\tau ')+\varPsi (\kappa ^\ell )\). By Lemma 10, the choice of \(\tau '\) is arbitrary. \(\square \)

Lemma 12

Existence of short paths

Suppose that \(s,s'\) are states. There is a short path from \(s\) to \(s'\).

Proof

By strong connectedness, \(s[\tau \rangle s'\) for some sequence \(\tau \). Just take the path \(s[\tau '\rangle s'\) from the proof of Lemma 11. \(\square \)

So far, only \(\mathbf{P}{\varUpsilon }\) was needed, but the remaining Lemmata depend on \(\mathbf{P}1\).

Lemma 13

Every label has a unique singular enabling state

Under \(\mathbf{P}1\), for every \(x\in T\) there is a unique state \(s_x\) at which only \(x\) is enabled.

Proof

There must be at least one such state, because otherwise one can create a cycle without any \(x\), by bypassing every outgoing edge labelled \(x\) on every state and using the finiteness of the lts, eventually contradicting property \(\mathbf{P}1\).

Suppose \(s_x\) and \(s_x'\) are two such states and let \(s_x[x\rangle s\). By \(\mathbf{P}1\), we can find \(s[\alpha x\rangle s\), without any \(x\) in \(\alpha \). Let \(s[\beta \rangle s_x'\) be a short path, which exists by Lemma 12. By Keller’s theorem, \(s_x'[\alpha x{\mathop {{-}}\limits ^{\bullet }}\beta \rangle \). Hence all of \(\alpha \) are wiped out by \(\beta \) because \(s_x'\) enables only \(x\). Therefore, and because \(\beta \) is short, every label except \(x\) occurs at least once in \(\beta \). Similarly, if \(s_x'[x\rangle s'[\beta '\rangle s_x\) (with a short \(\beta '\)), then every label except \(x\) occurs at least once in \(\beta '\). Now consider the cycle \(s_x[x\rangle s[\beta \rangle s_x'[x\rangle s'[\beta '\rangle s_x\). It has every label exactly twice, because \(x\) occurs exactly twice in it and because by Lemma 11 and \(\mathbf{P}1\), the Parikh vector of every cycle is constant. Therefore, \(\beta \) has every label except \(x\) exactly once, which implies \(s_x=s_x'\) by Lemma 7. \(\square \)

Lemma 14

Labels on short paths into \(s_x\)

Under \(\mathbf{P}1\), on any short path into \(s_x\), there is no label \(x\).

Proof

Assume that \(r[x\alpha \rangle s_x\) is a short path such that \(\alpha \) has no label \(x\). (Other short paths into \(s_x\) containing \(x\) can be reduced to this case by taking suffixes.) Also, let \(r[x\delta \rangle r\) be a cycle where \(\delta \) contains no \(x\) but every other label once. By Keller’s theorem, \(s_x[x\delta {\mathop {{-}}\limits ^{\bullet }}x\alpha \rangle \) which cannot be empty (because otherwise \(r[x\alpha \rangle s_x\) is not short) but also does not start with an \(x\); contradiction. \(\square \)

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Best, E., Devillers, R. Synthesis and reengineering of persistent systems. Acta Informatica 52, 35–60 (2015). https://doi.org/10.1007/s00236-014-0209-7

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00236-014-0209-7

Navigation