Advertisement

TIP: Tools for Inductive Provers

Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9450)

Abstract

TIP is a toolbox for users and developers of inductive provers. It consists of a large number of tools which can, for example, simplify an inductive problem, monomorphise it or find counterexamples to it. We are using TIP to help maintain a set of benchmarks for inductive theorem provers, where its main job is to encode aspects of the problem that are not natively supported by the respective provers. TIP makes it easier to write inductive provers, by supplying necessary tools such as lemma discovery which prover authors can simply import into their own prover.

Keywords

Function Definition Horn Clause Proof Obligation Theory Exploration Bound Model Checker 
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.

Supplementary material

References

  1. 1.
    Amin, N., Leino, K.R.M., Rompf, T.: Computing with an SMT solver. In: Seidl, M., Tillmann, N. (eds.) TAP 2014. LNCS, vol. 8570, pp. 20–35. Springer, Heidelberg (2014) Google Scholar
  2. 2.
    Barrett, C., Fontaine, P., Tinelli, C.: The SMT-LIB standard - version 2.5. http://smtlib.cs.uiowa.edu/papers/smt-lib-reference-v2.5-r2015-06-28.pdf
  3. 3.
    Blanchette, J.C., Böhme, S., Popescu, A., Smallbone, N.: Encoding monomorphic and polymorphic types. In: Piterman, N., Smolka, S.A. (eds.) TACAS 2013 (ETAPS 2013). LNCS, vol. 7795, pp. 493–507. Springer, Heidelberg (2013) CrossRefGoogle Scholar
  4. 4.
    Bobot, F., Conchon, S., Contejean, E., Lescuyer, S.: Implementing polymorphism in SMT solvers. In: Barrett, C., de Moura, L. (eds.) SMT 2008: 6th International Workshop on Satisfiability Modulo. ACM International Conference Proceedings Series, vol. 367, pp. 1–5 (2008)Google Scholar
  5. 5.
    Bobot, F., Filliâtre, J.C., Marché, C., Paskevich, A.: Why3: Shepherd your herd of provers. In: In Workshop on Intermediate Veri cation Languages, Boogie, August 2011Google Scholar
  6. 6.
    Bobot, F., Paskevich, A.: Expressing polymorphic types in a many-sorted language. In: Tinelli, C., Sofronie-Stokkermans, V. (eds.) FroCoS 2011. LNCS, vol. 6989, pp. 87–102. Springer, Heidelberg (2011) CrossRefGoogle Scholar
  7. 7.
    Chin, W.N., Darlington, J.: A higher-order removal method. LISP Symbolic Comput. 9(4), 287–322 (1996)CrossRefGoogle Scholar
  8. 8.
    Claessen, K., Hughes, J.: QuickCheck: a lightweight tool for random testing of Haskell programs. In: ICFP 2000 Proceedings of the Fifth ACM SIGPLAN International Conference on Functional Programming, pp. 268–279, ACM, New York (2000)Google Scholar
  9. 9.
    Claessen, K., Johansson, M., Rosén, D., Smallbone, N.: Automating inductive proofs using theory exploration. In: Bonacina, M.P. (ed.) CADE 2013. LNCS, vol. 7898, pp. 392–406. Springer, Heidelberg (2013) CrossRefGoogle Scholar
  10. 10.
    Claessen, K., Johansson, M., Rosén, D., Smallbone, N.: TIP: tons of inductive problems. In: Kerber, M., Carette, J., Kaliszyk, C., Rabe, F., Sorge, V. (eds.) CICM 2015. LNCS, vol. 9150, pp. 333–337. Springer, Heidelberg (2015) CrossRefGoogle Scholar
  11. 11.
    Claessen, K., Smallbone, N., Hughes, J.: QuickSpec: guessing formal specifications using testing. In: Fraser, G., Gargantini, A. (eds.) TAP 2010. LNCS, vol. 6143, pp. 6–21. Springer, Heidelberg (2010) CrossRefGoogle Scholar
  12. 12.
    Grechanik, S.A.: Proving properties of functional programs by equality saturation. Program. Comput. Softw. 41(3), 149–161 (2015)MathSciNetCrossRefGoogle Scholar
  13. 13.
    Johansson, M., Rosén, D., Smallbone, N., Claessen, K.: Hipster: integrating theory exploration in a proof assistant. In: Watt, S.M., Davenport, J.H., Sexton, A.P., Sojka, P., Urban, J. (eds.) CICM 2014. LNCS, vol. 8543, pp. 108–122. Springer, Heidelberg (2014) Google Scholar
  14. 14.
    Kaufmann, M., Panagiotis, M., Moore, J.S.: Computer-Aided Reasoning: An Approach. Kluwer Academic Publishers, Norwell (2000)Google Scholar
  15. 15.
    Leino, K.R.M.: Automating induction with an SMT solver. In: Kuncak, V., Rybalchenko, A. (eds.) VMCAI 2012. LNCS, vol. 7148, pp. 315–331. Springer, Heidelberg (2012) CrossRefGoogle Scholar
  16. 16.
    Reynolds, A., Kuncak, V.: Induction for SMT solvers. In: D’Souza, D., Lal, A., Larsen, K.G. (eds.) VMCAI 2015. LNCS, vol. 8931, pp. 80–98. Springer, Heidelberg (2015) Google Scholar
  17. 17.
    Reynolds, J.C.: Definitional interpreters for higher-order programming languages. In: The ACM Annual Conference, vol. 2 (1972)Google Scholar
  18. 18.
    Sonnex, W., Drossopoulou, S., Eisenbach, S.: Zeno: an automated prover for properties of recursive data structures. In: Flanagan, C., König, B. (eds.) TACAS 2012. LNCS, vol. 7214, pp. 407–421. Springer, Heidelberg (2012) CrossRefGoogle Scholar
  19. 19.
    Wand, D., Weidenbach, C.: Automatic induction inside superposition. https://people.mpi-inf.mpg.de/~dwand/datasup/draft.pdf

Copyright information

© Springer-Verlag Berlin Heidelberg 2015

Authors and Affiliations

  1. 1.Department of Computer Science and EngineeringChalmers University of TechnologyGothenburgSweden

Personalised recommendations