Skip to main content
Log in

DKL: an efficient algorithm for learning deterministic Kripke structures

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

Abstract

There has been a recent growth of interest in software engineering community to use grammatical inference, aka automaton learning, in software engineering applications. This is primarily due to the reason that capacity of underlying hardware resources has improved significantly over the last years; which has enabled the use of this approach beyond the toy examples in a greater frequency. In this paper, we present a new grammatical inference algorithm, DKL, to learn deterministic Kripke structures. The DKL is only the second of its kind for incremental learning of deterministic Kripke structures. Earlier, IKL algorithm was introduced for learning deterministic Kripke structures but it often constructs a hypothesis much larger in state size than the target Kripke structure. This problem is known as state-space explosion and it primarily occurs due to the sub-direct product construction used in the IKL design, which in turn affects time efficiency of IKL; especially when it is used for practical applications of software engineering. The DKL algorithm is designed to resolve the problem of state-space explosion. We give a proof of correctness and termination of the DKL algorithm. We also compared the performance of DKL with IKL by implementing an evaluation framework. Our results show that DKL is more efficient in terms of time in reaching the target automaton than the IKL algorithm and is not prone to the problem of state-space explosion.

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
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19
Fig. 20
Fig. 21
Fig. 22
Fig. 23
Fig. 24

Similar content being viewed by others

References

  1. Angluin, D.: A note on the number of queries needed to identify regular languages. Inf. Control 51(1), 76–87 (1981)

    Article  MathSciNet  Google Scholar 

  2. Angluin, D.: Learning regular sets from queries and counterexamples. Inf. Comput. 75(1), 87–106 (1987)

    Article  MathSciNet  Google Scholar 

  3. Bohlin, T., Jonsson, B.: Regular inference for communication protocol entities. In: Technical Report 2008-024, Dept. of Information Technology, Uppsala University (2008)

  4. Clarke, Edmund M., Grumberg, Orna., Jha, Somesh., Yuan, Lu, Veith, Helmut: Counterexample-guided abstraction refinement for symbolic model checking. J. ACM 50(5), 752–794 (2003)

    Article  MathSciNet  Google Scholar 

  5. Dupont, P.: Incremental regular inference. In: Proceedings of the Third ICGI-96, Number 1147 in LNAI (1996)

  6. Feng, L., Lundmark, S., Meinke, K., Niu, F., Sindhu, M. A., Wong, P.Y.H.: Case studies in learning-based testing. In: Yenigün, H., Yilmaz, C., Ulrich, A. (eds.) Testing Software and Systems, pp. 164–179. Springer, Berlin (2013)

  7. Gold, E.M.: Language identification in the limit. Inf. Control 10, 447–474 (1967)

    Article  MathSciNet  Google Scholar 

  8. Isberner, M., Howar, F., Steffen, B.: The ttt algorithm: a redundancy-free approach to active automata learning. In: Bonakdarpour, B, Smolka, S.A. (eds.) Runtime Verification, pp. 307–322. Springer, Cham (2014)

  9. Kearns, M.J., Vazirani, U.V.: An Introduction to Computational Learning Theory. MIT Press, Cambridge (1994)

    Book  Google Scholar 

  10. Knuth, D.E.: The Art of Computer Programming. Seminumerical Algorithms, vol. 2, 3rd edn. Addison-Wesley, Boston (1997)

    MATH  Google Scholar 

  11. Luecker, M.: Learning meets verification. In: de Boer, F. S., et al. (eds.) FMCO, volume 4709 of Lecture Notes in Computer Science, pp. 127–151. Springer (2006)

  12. Meinke, K., Sindhu, M.A.: Incremental learning-based testing for reactive systems. In: Gogolla, M., Wolff, B. (eds.) Tests and Proofs, volume 6706 of Lecture Notes in Computer Science, pp. 134–151. Springer (2011)

  13. Meinke, K., Sindhu, M. A.: Lbtest: A learning-based testing tool for reactive systems. In: 2013 IEEE Sixth International Conference on Software Testing, Verification and Validation, pp. 447–454 (2013)

  14. Meinke, K.., Niu, F., Sindhu, M.A.: Learning-based software testing: a tutorial. In: Proc. Fourth Int. ISoLA workshop on Machine Learning for Software Construction, Number 336 in CCIS, pp. 200–219. Springer (2012)

  15. Norton, D.A.: Algorithms for testing equivalence of finite state automata, with a grading tool for jflap. Technical report, Rochester Institute of Technology, Department of Computer Science (2009)

  16. Oliver Niese. An integrated approach to testing complex systems. PhD thesis (2003)

  17. Parekh R.G., Nichitiu, C., Honavar, V.G.: A polynomial time incremental algorithm for regular grammar inference. In: Proc. Fourth Int. Colloq. on Grammatical Inference (ICGI 98), LNAI. Springer (1998)

  18. Peled, D., Vardi, M. Y., Yannakakis, M.: Black box checking. In: FORTE, pp. 225–240 (1999)

  19. Porat, Sara, Feldman, Jerome A.: Learning automata from ordered examples. Mach. Learn. 7, 109–138 (1991)

    MATH  Google Scholar 

  20. Raffelt, H., Steffen, B., Margaria, T.: Dynamic testing via automata learning. In: Proceedings of the 3rd international Haifa verification conference on Hardware and software: verification and testing, HVC’07, pp.136–152, Springer, Berlin (2008)

  21. Sindhu, M.A., Meinke, K.: IDS: an incremental learning algorithm for finite automata. CoRR

  22. Sindhu, M.: Algorithms and Tools for Learning-based Testing of Reactive Systems. PhD thesis, KTH, Theoretical Computer Science, TCS. QC 20130312 (2013)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Muddassar Azam Sindhu.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Mazhar, R., Sindhu, M.A. DKL: an efficient algorithm for learning deterministic Kripke structures. Acta Informatica 58, 611–651 (2021). https://doi.org/10.1007/s00236-020-00387-2

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00236-020-00387-2

Keywords

Navigation