Abstract
This paper surveys results that establish formal connections and distinctions between SAT-based invariant inference and exact concept learning with queries, showing that learning techniques and algorithms can clarify foundational questions, illuminate existing algorithms, and suggest new directions for efficient invariant inference.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
A notable exception is ternary simulation [8], which is not a SAT-based operation. However, the query model can be extended to support it while maintaining our results.
- 2.
In [10], the invariants are antimonotone rather than monotone; the algorithm establishing the upper bound is efficient also for monotone invariants, and the proof of the lower bound can also be adapted to monotone invariants.
- 3.
To be precise, in PDR, counterexamples are states that reach a bad state, whereas PDR-1 uses counterexamples to induction, but these coincide in maximal systems; additionally, PDR may use an additional frame to discover the counterexamples and one more to detect convergence.
- 4.
In general, a concept is a set of elements; here we focus on logical concepts.
- 5.
The proof of this also implies that an invariant that is both forwards \(k_1\)-fenced and backwards \(k_2\)-fenced is unique, seeing that the implementation of the membership query for both is the same.
References
Aizenstein, H., Pitt, L.: On the learnability of disjunctive normal form formulas. Mach. Learn. 19(3), 183–208 (1995). https://doi.org/10.1007/BF00996269
Angluin, D.: Queries and concept learning. Mach. Learn. 2(4), 319–342 (1987)
Bjørner, N., Gurfinkel, A., Korovin, K., Lahav, O.: Instantiations, zippers and EPR interpolation. In: LPAR 2013, 19th International Conference on Logic for Programming, Artificial Intelligence and Reasoning, December 12–17, 2013, Stellenbosch, South Africa, Short papers proceedings, pp. 35–41 (2013). https://easychair.org/publications/paper/XtN
Bradley, A.R.: Sat-based model checking without unrolling. In: Verification, Model Checking, and Abstract Interpretation - 12th International Conference, VMCAI 2011, Austin, TX, USA, 23–25 January 2011. Proceedings, pp. 70–87 (2011). https://doi.org/10.1007/978-3-642-18275-4_7
Bshouty, N.H.: Exact learning Boolean function via the monotone theory. Inf. Comput. 123(1), 146–153 (1995). https://doi.org/10.1006/inco.1995.1164
Bshouty, N.H.: Simple learning algorithms using divide and conquer. Comput. Complex. 6(2), 174–194 (1997). https://doi.org/10.1007/BF01262930
Chockler, H., Ivrii, A., Matsliah, A.: Computing interpolants without proofs. In: Hardware and Software: Verification and Testing - 8th International Haifa Verification Conference, HVC 2012, Haifa, Israel, 6–8 November 2012. Revised Selected Papers, pp. 72–85 (2012). https://doi.org/10.1007/978-3-642-39611-3_12
Eén, N., Mishchenko, A., Brayton, R.K.: Efficient implementation of property directed reachability. In: International Conference on Formal Methods in Computer-Aided Design, FMCAD 2011, Austin, TX, USA, October 30–November 02 2011, pp. 125–134 (2011). http://dl.acm.org/citation.cfm?id=2157675
Ezudheen, P., Neider, D., D’Souza, D., Garg, P., Madhusudan, P.: Horn-ice learning for synthesizing invariants and contracts. In: PACMPL 2 (OOPSLA), pp. 131:1–131:25 (2018)
Feldman, Y.M.Y., Immerman, N., Sagiv, M., Shoham, S.: Complexity and information in invariant inference. In: Proceedings of the ACM Programming Languages, vol. 4 (POPL), pp. 5:1–5:29 (2020). https://doi.org/10.1145/3371073, https://doi.org/10.1145/3371073
Feldman, Y.M.Y., Sagiv, M., Shoham, S., Wilcox, J.R.: Learning the boundary of inductive invariants. In: Proceedings of the ACM Programming Languages, vol. 5 (POPL), pp. 1–30 (2021). https://doi.org/10.1145/3434296, https://doi.org/10.1145/3434296
Feldman, Y.M.Y., Sagiv, M., Shoham, S., Wilcox, J.R.: Property-directed reachability as abstract interpretation in the monotone theory. In: Proceedings of the ACM Programming Languages, vol. 6 (POPL), pp. 1–31 (2022). https://doi.org/10.1145/3498676, https://doi.org/10.1145/3498676
Feldman, Y.M.Y., Shoham, S.: Invariant inference with provable complexity from the monotone theory. In: Static Analysis - 29th International Symposium, SAS 2022, Auckland, New Zealand (To appear in 2022)
Flanagan, C., Leino, K.R.M.: Houdini, an annotation assistant for ESC/Java. In: Oliveira, J.N., Zave, P. (eds.) FME 2001. LNCS, vol. 2021, pp. 500–517. Springer, Heidelberg (2001). https://doi.org/10.1007/3-540-45251-6_29
Garg, P., Löding, C., Madhusudan, P., Neider, D.: ICE: A robust framework for learning invariants. In: Biere, A., Bloem, R. (eds.) CAV 2014. LNCS, vol. 8559, pp. 69–87. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-08867-9_5
Garg, P., Neider, D., Madhusudan, P., Roth, D.: Learning invariants using decision trees and implication counterexamples. In: Proceedings of the 43rd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2016, St. Petersburg, FL, USA, 20–22 January 2016, pp. 499–512 (2016). https://doi.org/10.1145/2837614.2837664, https://doi.org/10.1145/2837614.2837664
Hellerstein, L., Kletenik, D., Sellie, L., Servedio, R.A.: Tight bounds on proper equivalence query learning of DNF. In: COLT 2012 - The 25th Annual Conference on Learning Theory, 25–27 June 2012, Edinburgh, Scotland, pp. 31.1-31.18 (2012). http://proceedings.mlr.press/v23/hellerstein12/hellerstein12.pdf
Henzinger, T.A., Jhala, R., Majumdar, R., McMillan, K.L.: Abstractions from proofs. In: Proceedings of the 31st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2004, Venice, Italy, 14–16 January 2004, pp. 232–244 (2004). https://doi.org/10.1145/964001.964021, https://doi.org/10.1145/964001.964021
Itzhaky, S., Bjørner, N., Reps, T.W., Sagiv, M., Thakur, A.V.: Property-directed shape analysis. In: Computer Aided Verification - 26th International Conference, CAV 2014, Held as Part of the Vienna Summer of Logic, VSL 2014, Vienna, Austria, 18–22 July 2014. Proceedings, pp. 35–51 (2014). https://doi.org/10.1007/978-3-319-08867-9_3
Jha, S., Gulwani, S., Seshia, S.A., Tiwari, A.: Oracle-guided component-based program synthesis. In: Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 1, ICSE 2010, Cape Town, South Africa, 1–8 May 2010, pp. 215–224 (2010). https://doi.org/10.1145/1806799.1806833, https://doi.org/10.1145/1806799.1806833
Jha, S., Seshia, S.A.: A theory of formal synthesis via inductive learning. Acta Inform. 54(7), 693–726 (2017). https://doi.org/10.1007/s00236-017-0294-5
Jhala, R., McMillan, K.L.: Interpolant-based transition relation approximation. Logical Methods Comput. Sci. 3(4) (2007). https://doi.org/10.2168/LMCS-3(4:1)2007
Koenig, J.R., Padon, O., Immerman, N., Aiken, A.: First-order quantified separators. In: Donaldson, A.F., Torlak, E. (eds.) Proceedings of the 41st ACM SIGPLAN International Conference on Programming Language Design and Implementation, PLDI 2020, London, UK, 15–20 June 2020, pp. 703–717. ACM (2020). https://doi.org/10.1145/3385412.3386018
Lahiri, S.K., Qadeer, S.: Complexity and algorithms for monomial and clausal predicate abstraction. In: Schmidt, R.A. (ed.) CADE 2009. LNCS (LNAI), vol. 5663, pp. 214–229. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-02959-2_18
McMillan, K.L.: Interpolation and SAT-based model checking. In: Hunt, W.A., Somenzi, F. (eds.) CAV 2003. LNCS, vol. 2725, pp. 1–13. Springer, Heidelberg (2003). https://doi.org/10.1007/978-3-540-45069-6_1
McMillan, K.L.: Lazy abstraction with interpolants. In: 18th International Conference on Computer Aided Verification, CAV 2006, Seattle, WA, USA, 17–20 August 2006, Proceedings, pp. 123–136 (2006). https://doi.org/10.1007/11817963_14
Neider, D., Madhusudan, P., Saha, S., Garg, P., Park, D.: A learning-based approach to synthesizing invariants for incomplete verification engines. J. Autom. Reason. 64(7), 1523–1552 (2020). https://doi.org/10.1007/s10817-020-09570-z
O’Donnell, R.: Analysis of Boolean Functions. Cambridge University Press, Cambridge (2014). http://www.cambridge.org/de/academic/subjects/computer-science/algorithmics-complexity-computer-algebra-and-computational-g/analysis-boolean-functions
Quine, W.: Two theorems about truth-functions. Boletín de la Sociedad Matemática Mexicana 10(1–2), 64–70 (1954)
Reps, T.W., Sagiv, S., Yorsh, G.: Symbolic implementation of the best transformer. In: Verification, Model Checking, and Abstract Interpretation, 5th International Conference, VMCAI 2004, Venice, Italy, 11–13 January 2004, Proceedings, pp. 252–266 (2004). https://doi.org/10.1007/978-3-540-24622-0_21
Sharma, R., Aiken, A.: From invariant checking to invariant inference using randomized search. Formal Methods Syst. Des. 48(3), 235–256 (2016). https://doi.org/10.1007/s10703-016-0248-5
Sharma, R., Gupta, S., Hariharan, B., Aiken, A., Liang, P., Nori, A.V.: A data driven approach for algebraic loop invariants. In: Programming Languages and Systems - 22nd European Symposium on Programming, ESOP 2013, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2013, Rome, Italy, March 16–24, 2013. Proceedings, pp. 574–592 (2013). https://doi.org/10.1007/978-3-642-37036-6_31
Sharma, R., Gupta, S., Hariharan, B., Aiken, A., Nori, A.V.: Verification as learning geometric concepts. In: Logozzo, F., Fähndrich, M. (eds.) SAS 2013. LNCS, vol. 7935, pp. 388–411. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-38856-9_21
Sharma, R., Nori, A.V., Aiken, A.: Interpolants as classifiers. In: Computer Aided Verification - 24th International Conference, CAV 2012, Berkeley, CA, USA, 7–13 July 2012 Proceedings, pp. 71–87 (2012). https://doi.org/10.1007/978-3-642-31424-7_11
Thakur, A.V., Lal, A., Lim, J., Reps, T.W.: Posthat and all that: automating abstract interpretation. Electr. Notes Theor. Comput. Sci. 311, 15–32 (2015). https://doi.org/10.1016/j.entcs.2015.02.003
Valiant, L.G.: A theory of the learnable. Commun. ACM 27(11), 1134–1142 (1984). https://doi.org/10.1145/1968.1972, https://doi.org/10.1145/1968.1972
Vizel, Y., Grumberg, O.: Interpolation-sequence based model checking. In: Proceedings of 9th International Conference on Formal Methods in Computer-Aided Design, FMCAD 2009, 15–18 November 2009, Austin, Texas, USA, pp. 1–8 (2009). https://doi.org/10.1109/FMCAD.2009.5351148
Vizel, Y., Grumberg, O., Shoham, S.: Intertwined forward-backward reachability analysis using interpolants. In: Tools and Algorithms for the Construction and Analysis of Systems - 19th International Conference, TACAS 2013, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2013, Rome, Italy, 16–24 March 2013. Proceedings, pp. 308–323 (2013). https://doi.org/10.1007/978-3-642-36742-7_22
Vizel, Y., Gurfinkel, A., Shoham, S., Malik, S.: IC3 - flipping the E in ICE. In: 18th International Conference on Verification, Model Checking, and Abstract Interpretation - VMCAI 2017, Paris, France, 15–17 January 2017, Proceedings, pp. 521–538 (2017)
Acknowledgement
The research leading to these results has received funding from the European Research Council under the European Union’s Horizon 2020 research and innovation programme (grant agreement No. [759102-SVIS]). This research was partially supported by the United States-Israel Binational Science Foundation (BSF) grant No. 2016260, and the Israeli Science Foundation (ISF) grant No. 1810/18.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2022 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Feldman, Y.M.Y., Shoham, S. (2022). SAT-Based Invariant Inference and Its Relation to Concept Learning. In: Lin, A.W., Zetzsche, G., Potapov, I. (eds) Reachability Problems. RP 2022. Lecture Notes in Computer Science, vol 13608. Springer, Cham. https://doi.org/10.1007/978-3-031-19135-0_1
Download citation
DOI: https://doi.org/10.1007/978-3-031-19135-0_1
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-19134-3
Online ISBN: 978-3-031-19135-0
eBook Packages: Computer ScienceComputer Science (R0)