skip to main content
research-article

Complexity results in revising UNITY programs

Published:09 February 2009Publication History
Skip Abstract Section

Abstract

We concentrate on automatic revision of untimed and real-time programs with respect to UNITY properties. The main focus of this article is to identify instances where addition of UNITY properties can be achieved efficiently (in polynomial time) and where the problem of adding UNITY properties is difficult (NP-complete). Regarding efficient revision, we present a sound and complete algorithm that adds a single leads-to property (respectively, bounded-time leads-to property) and a conjunction of unless, stable, and invariant properties (respectively, bounded-time unless and stable) to an existing untimed (respectively, real-time) UNITY program in polynomial-time in the state space (respectively, region graph) of the given program. Regarding hardness results, we show that (1) while one leads-to (respectively, ensures) property can be added in polynomial-time, the problem of adding two such properties (or any combination of leads-to and ensures) is NP-complete, (2) if maximum non-determinism is desired then the problem of adding even a single leads-to property is NP-complete, and (3) the problem of providing maximum non-determinism while adding a single bounded-time leads-to property to a real-time program is NP-complete (in the size of the program's region graph) even if the original program satisfies the corresponding unbounded leads-to property.

References

  1. Alur, R. and Dill, D. 1994. A theory of timed automata. Theor. Comput. Sci. 126, 2, 183--235. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Alur, R., Feder, T., and Henzinger, T. 1996. The benefits of relaxing punctuality. J. ACM 43, 1, 116--146. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Asarin, E. and Maler, O. 1999. As soon as possible: Time optimal control for timed automata. In Proceedings of the Conference on Hybrid Systems: Computation and Control (HSCC). 19--30. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Asarin, E., Maler, O., Pnueli, A., and Sifakis, J. 1998. Controller synthesis for timed automata. In Proceedings of the IFAC Symposium on System Structure and Control. 469--474.Google ScholarGoogle Scholar
  5. Attie, P. and Emerson, E. A. 2001. Synthesis of concurrent programs for an atomic read/write model of computation. ACM Trans. Prog. Lang. Syst. 23, 2, 187--242. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Attie, P. C. 1999. Synthesis of large concurrent programs via pairwise composition. In Proceedings of the International Conference on Concurrency Theory (CONCUR). Springer-Verlag, 130--145. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Attie, P. C., Arora, A., and Emerson, E. A. 2004. Synthesis of fault-tolerant concurrent programs. ACM Trans. Prog. Lang. Syst. 26, 1, 125--185. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Bang-Jensen, J. and Gutin, G. 2002. Digraphs: Theory, Algorithms and Applications. Springer.Google ScholarGoogle ScholarCross RefCross Ref
  9. Bonakdarpour, B. and Kulkarni, S. S. 2006a. Automated incremental synthesis of timed automata. In Proceedings of the International Workshop on Formal Methods for Industrial Critical Systems (FMICS). Lecture Notes in Computer Science, vol. 4346, 261--276.Google ScholarGoogle ScholarCross RefCross Ref
  10. Bonakdarpour, B. and Kulkarni, S. S. 2006b. Incremental synthesis of fault-tolerant real-time programs. In Proceedings of the International Symposium on Stabilization, Safety, and Security of Distributed Systems (SSS). Lecture Notes in Computer Science, vol. 4280, 122--136.Google ScholarGoogle ScholarCross RefCross Ref
  11. Bonakdarpour, B. and Kulkarni, S. S. 2007. Exploiting symbolic techniques in automated synthesis of distributed programs with large state space. In Proceedings of the IEEE International Conference on Distributed Computing Systems (ICDCS). 3--10. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Bonakdarpour, B. and Kulkarni, S. S. 2008. SYCRAFT: A tool for synthesizing fault-tolerant distributed programs. In Proceedings of the International Conference on Concurrency Theory (CONCUR). 167--171. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Bouyer, P., D'Souza, D., Madhusudan, P., and Petit, A. 2003. Timed control with partial observability. In Proceedings of the International Conference on Computer Aided Verification (CAV). 180--192.Google ScholarGoogle Scholar
  14. Carruth, A. 1994. Real-time UNITY. Tech. rep. CS-TR-94-10, University of Texas at Austin. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Chandy, K. M. and Misra, J. 1988. Parallel Program Design: A Foundation. Addison-Wesley Longman Publishing Co., Inc., Boston, MA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Courcoubetis, C. and Yannakakis, M. 1991. Minimum and maximum delay problems in real-time systems. In Proceedings of the International Conference on Computer-Aided Verificaion (CAV). 399--409. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. de Alfaro, L., Faella, M., Henzinger, T. A., Majumdar, R., and Stoelinga, M. 2003. The element of surprise in timed games. In Proceedings of the International Conference on Concurrency Theory (CONCUR).Google ScholarGoogle Scholar
  18. Dijkstra, E. W. 1974. Self-stabilizing systems in spite of distributed control. Comm. ACM 17, 11. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Dijkstra, E. W. 1990. A Discipline of Programming. Prentice-Hall, Englewood Cliffs, NJ. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. D'Souza, D. and Madhusudan, P. 2002. Timed control synthesis for external specifications. In Proceedings of the Symposium on Theoretical Aspects of Computer Science (STACS). 571--582. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Ebnenasir, A., Kulkarni, S. S., and Bonakdarpour, B. 2005. Revising UNITY programs: Possibilities and limitations. In Proceedings of the Conference on Principles of Distributed Systems (OPODIS). 275--290.Google ScholarGoogle Scholar
  22. Emerson, E. A. and Clarke, E. M. 1982. Using branching time temporal logic to synthesize synchronization skeletons. Sci. Comput. Prog. 2, 3, 241--266.Google ScholarGoogle ScholarCross RefCross Ref
  23. Eppstein, D. 1999. Finding the k shortest paths. SIAM J. Comput. 28, 2, 652--673. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Faella, M., LaTorre, S., and Murano, A. 2002. Dense real-time games. In Logic in Computer Science (LICS). 167--176. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Holzmann, G. 1997. The model checker spin. IEEE Trans. Software Engin. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Jobstmann, B., Griesmayer, A., and Bloem, R. 2005. Program repair as a game. In Proceedings of the Conference on Computer Aided Verification (CAV). 226--238.Google ScholarGoogle Scholar
  27. Karp, R. M. 1972. Reducibility among combinatorial problems. In Proceedings of the Symposium on Complexity of Computer Computations. 85--103.Google ScholarGoogle ScholarCross RefCross Ref
  28. Kulkarni, S. S., Arora, A., and Chippada, A. 2001. Polynomial time synthesis of Byzantine agreement. In Proceedings of the Symposium on Reliable Distributed Systems (SRDS). 130--140.Google ScholarGoogle Scholar
  29. Kulkarni, S. S., Arora, A., and Ebnenasir, A. 2007. Software Engineering and Fault-Tolerance. World Scientific Publishing Co. Pte. Ltd (Chapter: Adding Fault-Tolerance to State Machine-Based Designs).Google ScholarGoogle Scholar
  30. Kulkarni, S. S. and Ebnenasir, A. 2002. The complexity of adding failsafe fault-tolerance. In Proceedings of the International Conference on Distributed Computing Systems (ICDCS). 337--344. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Kulkarni, S. S. and Ebnenasir, A. 2003. Enhancing the fault-tolerance of nonmasking programs. In Proceedings of the International Conference on Distributed Computing Systems (ICDCS). Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Kulkarni, S. S. and Ebnenasir, A. 2004. Automated synthesis of multitolerance. In Proceedings of the International Conference on Dependable Systems and Networks (DSN). 209--219. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Lafortune, S. and Lin, F. 1992. On tolerable and desirable behaviors in supervisory control of discrete event systems. Discr. Event Dynam. Syst. 1, 1, 61--92.Google ScholarGoogle ScholarCross RefCross Ref
  34. Lin, F. and Wonham, W. M. 1990. Decentralized control and coordination of discrete-event systems with partial observation. IEEE Trans. Autom. Control 35, 12.Google ScholarGoogle ScholarCross RefCross Ref
  35. Maler, O., Nickovic, D., and Pnueli, A. 2006. From MITL to timed automata. In Proceedings of the Conference on Formal Modeling and Analysis of Timed Systems (FORMATS). 274--289.Google ScholarGoogle Scholar
  36. Manna, Z. and Wolper, P. 1984. Synthesis of communicating processes from temporal logic specifications. ACM Trans. Prog. Lang. Syst. 6, 1, 68--93. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Paik, D., Reddy, S., and Sahni, S. 1994. Deleting vertices to bound path length. IEEE Trans. Comput. 43, 9, 1091--1096. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. Paik, D., Reddy, S. M., and Sahni, S. 1998. Vertex splitting in dags and applications to partial scan designs and lossy circuits. Int. J. Found. Comput. Sci. 9, 4, 377--398.Google ScholarGoogle ScholarCross RefCross Ref
  39. Pnueli, A. and Rosner, R. 1989a. On the synthesis of a reactive module. In Proceedings of the Conference on Principles of Programming Languages (POPL). 179--190. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. Pnueli, A. and Rosner, R. 1989b. On the synthesis of an asynchronous reactive module. In Proceedings of the International Colloqium on Automata, Languages, and Programming (ICALP). 652--671. Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. Ramadge, P. and Wonham, W. 1989. The control of discrete event systems. Proc. IEEE 77, 1, 81--98.Google ScholarGoogle ScholarCross RefCross Ref
  42. Rohloff, K. R. 2004. Computations on distributed discrete-event systems. Ph.D. thesis, University of Michigan. Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. Rudie, K., Lafortune, S., and Lin, F. 2003. Minimal communication in a distributed discrete-event systems. IEEE Trans. Autom. Control 48, 6.Google ScholarGoogle ScholarCross RefCross Ref
  44. Thomas, W. 2002. Infinite games and verification (extended abstract of a tutorial). In Proceedings of the International Conference on Computer Aided Verification (CAV). 58--64. Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. Wallmeier, N., Hütten, P., and Thomas, W. 2003. Symbolic synthesis of finite-state controllers for request-response specifications. In Proceedings of the Conference on Implementation and Application of Automata (CIAA). 11--22.Google ScholarGoogle Scholar

Index Terms

  1. Complexity results in revising UNITY programs

              Recommendations

              Comments

              Login options

              Check if you have access through your login credentials or your institution to get full access on this article.

              Sign in

              Full Access

              • Published in

                cover image ACM Transactions on Autonomous and Adaptive Systems
                ACM Transactions on Autonomous and Adaptive Systems  Volume 4, Issue 1
                January 2009
                213 pages
                ISSN:1556-4665
                EISSN:1556-4703
                DOI:10.1145/1462187
                Issue’s Table of Contents

                Copyright © 2009 ACM

                Publisher

                Association for Computing Machinery

                New York, NY, United States

                Publication History

                • Published: 9 February 2009
                • Accepted: 1 September 2008
                • Revised: 1 July 2008
                • Received: 1 March 2007
                Published in taas Volume 4, Issue 1

                Permissions

                Request permissions about this article.

                Request Permissions

                Check for updates

                Qualifiers

                • research-article
                • Research
                • Refereed

              PDF Format

              View or Download as a PDF file.

              PDF

              eReader

              View online with eReader.

              eReader
              About Cookies On This Site

              We use cookies to ensure that we give you the best experience on our website.

              Learn more

              Got it!