Skip to main content

Testing Extended Regular Language Membership Incrementally by Rewriting

  • Conference paper
  • First Online:
Rewriting Techniques and Applications (RTA 2003)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2706))

Included in the following conference series:

Abstract

In this paper we present lower bounds and rewriting algorithms for testing membership of a word in a regular language described by an extended regular expression. Motivated by intuitions from monitoring and testing, where the words to be tested (execution traces) are typically much longer than the size of the regular expressions (patterns or requirements), and by the fact that in many applications the traces are only available incrementally, on an event by event basis, our algorithms are based on an event-consumption idea: a just arrived event is “consumed” by the regular expression, i.e., the regular expression modifies itself into another expression discarding the event. We present an exponential space lower bound for monitoring extended regular expressions and argue that the presented rewriting-based algorithms, besides their simplicity and elegance, are practical and almost as good as one can hope. We experimented with and evaluated our algorithms in Maude.

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 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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. V.M. Antimirov. Partial derivatives of regular expressions and finite automaton constructions. Journal of Theoretical Computer Science, 155(2):291–319, 1996.

    Article  MATH  MathSciNet  Google Scholar 

  2. V.M. Antimirov and P.D. Mosses. Rewriting extended regular expressions. Journal of Theoretical Computer Science, 143(1):51–72, 1995.

    Article  MATH  MathSciNet  Google Scholar 

  3. A. K. Chandra, D. C. Kozen, and L. J. Stockmeyer. Alternation. Journal of the ACM, 28(1):114–133, 1981.

    Article  MATH  MathSciNet  Google Scholar 

  4. M. Clavel, F. Durán, S. Eker, P. Lincoln, N. Martí-Oliet, J. Meseguer, and J. Quesada. Maude: specification and programming in rewriting logic. SRI International, January 1999, http://maude.csl.sri.com.

  5. D. Drusinsky. The Temporal Rover and the ATG Rover. In SPIN Model Checking and Software Verification, volume 1885 of Lecture Notes in Computer Science, pages 323–330. Springer, 2000.

    Chapter  Google Scholar 

  6. D. Giannakopoulou and K. Havelund. Automata-Based Verification of Temporal Properties on Running Programs. In Proceedings, International Conference on Automated Software Engineering (ASE’01), pages 412–416. Institute of Electrical and Electronics Engineers, 2001. Coronado Island, California.

    Google Scholar 

  7. K. Havelund and G. Roşu. Monitoring Java Programs with Java PathExplorer. In Proceedings of Runtime Verification (RV’01), volume 55 of Electronic Notes in Theoretical Computer Science. Elsevier Science, 2001.

    Google Scholar 

  8. K. Havelund and G. Roşu. Monitoring Programs using Rewriting. In Proceedings, International Conference on Automated Software Engineering (ASE’01), pages 135–143. Institute of Electrical and Electronics Engineers, 2001. Coronado Island, California.

    Google Scholar 

  9. K. Havelund and G. Roşu. Runtime Verification 2001, volume 55 of Electronic Notes in Theoretical Computer Science. Elsevier Science, 2001. Proceedings of a Computer Aided Verification (CAV’01) satellite workshop.

    Google Scholar 

  10. K. Havelund and G. Roşu. Runtime Verification 2002, volume 70(4) of Electronic Notes in Theoretical Computer Science. Elsevier Science, 2002. Proceedings of a Computer Aided Verification (CAV’02) satellite workshop.

    Google Scholar 

  11. K. Havelund and G. Roşu. Synthesizing monitors for safety properties. In Tools and Algorithms for Construction and Analysis of Systems (TACAS’02), volume 2280 of Lecture Notes in Computer Science, pages 342–356. Springer, 2002.

    Chapter  Google Scholar 

  12. S. Hirst. A new algorithm solving membership of extended regular expressions. Technical report, The University of Sydney, 1989.

    Google Scholar 

  13. G. Huet. Confluent reductions: Abstract properties and applications to term rewriting systems. Journal of the ACM, 27(4):797–821, 1980.

    Article  MATH  MathSciNet  Google Scholar 

  14. J.R. Knight and E.W. Myers. Super-pattern matching. Algorithmica, 13(1/2):211–243, 1995.

    Article  MATH  MathSciNet  Google Scholar 

  15. O. Kupferman and M. Y. Vardi. Freedom, Weakness, and Determinism: From linear-time to branching-time. In Proceedings of the IEEE Symposium on Logic in Computer Science, pages 81–92, 1998.

    Google Scholar 

  16. O. Kupferman and M. Y. Vardi. Model Checking of Safety Properties. In Proceedings of the Conference on Computer-Aided Verification, 1999.

    Google Scholar 

  17. O. Kupferman and S. Zuhovitzky. An Improved Algorithm for the Membership Problem for Extended Regular Expressions. In Proceedings of the International Symposium on Mathematical Foundations of Computer Science, 2002.

    Google Scholar 

  18. I. Lee, S. Kannan, M. Kim, O. Sokolsky, and M. Viswanathan. Runtime Assurance Based on Formal Specifications. In Proceedings of the International Conference on Parallel and Distributed Processing Techniques and Applications, 1999.

    Google Scholar 

  19. G. Myers. A four russians algorithm for regular expression pattern matching. Journal of the ACM, 39(4):430–448, 1992.

    MATH  MathSciNet  Google Scholar 

  20. T. O’Malley, D. Richardson, and L. Dillon. Efficient Specification-Based Oracles for Critical Systems. In In Proceedings of the California Software Symposium, 1996.

    Google Scholar 

  21. D. J. Richardson, S. L. Aha, and T. O. O’Malley. Specification-Based Test Oracles for Reactive Systems. In Proceedings of the Fourteenth International Conference on Software Engineering, Melbourne, Australia, pages 105–118, 1992.

    Google Scholar 

  22. H. Yamamoto. An automata-based recognition algorithm for semi-extended regular expressions. In Proceedings of the International Symposium on Mathematical Foundations of Computer Science, pages 699–708, 2000.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2003 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Roşu, G., Viswanathan, M. (2003). Testing Extended Regular Language Membership Incrementally by Rewriting. In: Nieuwenhuis, R. (eds) Rewriting Techniques and Applications. RTA 2003. Lecture Notes in Computer Science, vol 2706. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44881-0_35

Download citation

  • DOI: https://doi.org/10.1007/3-540-44881-0_35

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-40254-1

  • Online ISBN: 978-3-540-44881-5

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics