Minimization, Learning, and Conformance Testing of Boolean Programs

  • Viraj Kumar
  • P. Madhusudan
  • Mahesh Viswanathan
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4137)


Boolean programs with recursion are convenient abstractions of sequential imperative programs, and can be represented as recursive state machines (RSMs) or pushdown automata. Motivated by the special structure of RSMs, we define a notion of modular visibly pushdown automata (modular VPA) and show that for the class of languages accepted by such automata, unique minimal modular VPA exist. This yields an efficient approximate minimization theorem that minimizes RSMs to within a factor of k of the minimal RSM, where k is the maximum number of parameters in any module. Using the congruence defined for minimization, we show an active learning algorithm (with a minimally adequate teacher) for context free languages in terms of modular VPAs. We also present an algorithm that constructs complete test suites for Boolean program specifications. Finally, we apply our results on learning and test generation to perform model checking of black-box Boolean programs.


Learning Algorithm Regular Language Context Free Language Conformance Test Membership Query 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Alur, R., Benedikt, M., Etessami, K., Godefroid, P., Reps, T.W., Yannakakis, M.: Analysis of recursive state machines. TOPLAS 27(4), 786–818 (2005)CrossRefGoogle Scholar
  2. 2.
    Alur, R., Cerný, P., Madhusudan, P., Nam, W.: Synthesis of interface specifications for Java classes. In: POPL, pp. 98–109. ACM Press, New York (2005)Google Scholar
  3. 3.
    Alur, R., Etessami, K., Madhusudan, P.: A Temporal Logic of Nested Calls and Returns. In: Jensen, K., Podelski, A. (eds.) TACAS 2004. LNCS, vol. 2988, pp. 467–481. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  4. 4.
    Alur, R., Kumar, V., Madhusudan, P., Viswanathan, M.: Congruences for visibly pushdown languages. In: Caires, L., Italiano, G.F., Monteiro, L., Palamidessi, C., Yung, M. (eds.) ICALP 2005. LNCS, vol. 3580, pp. 1102–1114. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  5. 5.
    Alur, R., Madhusudan, P.: Visibly pushdown languages. In: STOC, pp. 202–211. ACM Press, New York (2004)CrossRefGoogle Scholar
  6. 6.
    Alur, R., Madhusudan, P.: Adding Nesting Structure to Words. In: H. Ibarra, O., Dang, Z. (eds.) DLT 2006. LNCS, vol. 4036, pp. 1–13. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  7. 7.
    Alur, R., Madhusudan, P., Nam, W.: Symbolic Compositional Verification by Learning Assumptions. In: Etessami, K., Rajamani, S.K. (eds.) CAV 2005. LNCS, vol. 3576, pp. 548–562. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  8. 8.
    Ammons, G., Bodik, R., Larus, J.R.: Mining specifications. SIGPLAN Not. 37(1), 4–16 (2002)CrossRefGoogle Scholar
  9. 9.
    Angluin, D.: Learning regular sets from queries and counterexamples. Information and Computation 75, 87–106 (1987)CrossRefMathSciNetMATHGoogle Scholar
  10. 10.
    Ball, T., Rajamani, S.: Bebop: A symbolic model checker for boolean programs. In: Havelund, K., Penix, J., Visser, W. (eds.) SPIN 2000. LNCS, vol. 1885, pp. 113–130. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  11. 11.
    Berman, P., Roos, R.: Learning one–counter languages in polynomial time. In: FOCS, pp. 61–67. IEEE, Los Alamitos (1987)Google Scholar
  12. 12.
    Cobleigh, J.M., Giannakopoulou, D., Păsăreanu, C.S.: Learning Assumptions for Compositional Verification. In: Garavel, H., Hatcliff, J. (eds.) TACAS 2003. LNCS, vol. 2619, pp. 331–346. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  13. 13.
    Friedman, A., Menon, P.: Fault Detection in Digital Circuits. PrenticeHall, Inc., Englewood Cliffs (1971)Google Scholar
  14. 14.
    Groce, A., Peled, D., Yannakakis, M.: Adaptive Model Checking. In: Katoen, J.-P., Stevens, P. (eds.) TACAS 2002. LNCS, vol. 2280, pp. 357–370. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  15. 15.
    Kearns, M., Vazirani, U.: An introduction to computational learning theory. MIT Press, Cambridge (1994)Google Scholar
  16. 16.
    Kohavi, Z.: Switching and Finite Automata Theory. McGraw-Hill, New York (1978)MATHGoogle Scholar
  17. 17.
    Kumar, V., Madhusudan, P., Viswanathan, M.: Minimization, learning, and conformance testing of Boolean programs. Technical Report UIUCDCS-R-2006-2736, University of Illinois at Urbana-Champaign (June 2006)Google Scholar
  18. 18.
    Lee, D., Yannakakis, M.: Principles and methods of testing finite state machines - A survey. Proceedings of the IEEE 84, 1090–1126 (1996)Google Scholar
  19. 19.
    Linn, R., Üyar, M.: Conformance testing methodologies and architectures for OSI protocols. IEEE Computer Society Press, Los Alamitos (1995)Google Scholar
  20. 20.
    Moore, E.F.: Gedanken-experiments on sequential machines. In: Automata Studies, pp. 129–153. Princeton University Press, Princeton (1956)Google Scholar
  21. 21.
    Peled, D., Vardi, M.Y., Yannakakis, M.: Black box checking. J. Autom. Lang. Comb. 7(2), 225–246 (2001)MathSciNetGoogle Scholar
  22. 22.
    Sakakibara, Y.: Efficient learning of context-free grammars from positive structural examples. Inf. Comput. 97(1), 23–60 (1992)CrossRefMathSciNetMATHGoogle Scholar
  23. 23.
    Tretmans, J.: A formal approach to conformance testing. In: Protocol Test Systems. IFIP Trans, vol. C-19, pp. 257–276. North-Holland, Amsterdam (1994)Google Scholar
  24. 24.
    Valiant, L.: A theory of the learnable. Comm. of the ACM 27(11), 1134–1142 (1984)CrossRefMATHGoogle Scholar
  25. 25.
    Vardhan, A., Sen, K., Viswanathan, M., Agha, G.: Actively Learning to Verify Safety for FIFO Automata. In: Lodaya, K., Mahajan, M. (eds.) FSTTCS 2004. LNCS, vol. 3328, pp. 494–505. Springer, Heidelberg (2004)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Viraj Kumar
    • 1
  • P. Madhusudan
    • 1
  • Mahesh Viswanathan
    • 1
  1. 1.University of Illinois at Urbana-ChampaignUrbanaUSA

Personalised recommendations