W. Ahrendt, T. Baar, B. Beckert, M. Giese, E. Habermalz et al., The Key System: Integrating Object-Oriented Design and Formal Methods, Fundamental Approaches to Software Engineering, pp.327-330, 2002.
DOI : 10.1007/3-540-45923-5_23

A. Armando, S. Ranise, and M. Rusinowitch, A rewriting approach to satisfiability procedures, 12th International Conference on Rewriting Techniques and Applications, pp.140-164, 2001.
DOI : 10.1016/S0890-5401(03)00020-8

M. Balser, W. Reif, G. Schellhorn, K. Stenzel, and A. Thums, Formal System Development with KIV, Fundamental approaches to software engineering, pp.363-366, 2000.
DOI : 10.1007/3-540-46428-X_25

R. Bardou, Verification of Pointer Programs Using Regions and Permissions, 2011.
URL : https://hal.archives-ouvertes.fr/tel-00647331

J. Barnes, Rationale for Ada 2012 : 1 contracts and aspects, p.247, 2011.
DOI : 10.1007/978-3-642-45210-9

J. Barnes, SPARK : The Proven Approach to High Integrity Software, 2012.

M. Barnett, K. R. Leino, and W. Schulte, The Spec# programming system : An overview. In Construction and analysis of safe, secure, and interoperable smart devices, pp.49-69, 2005.

C. Barrett, C. L. Conway, M. Deters, L. Hadarean, D. Jovanovi´cjovanovi´c et al., CVC4, Computer Aided Verification, pp.171-177, 2011.
DOI : 10.1007/3-540-45657-0_40

C. Barrett, R. Sebastiani, S. A. Seshia, and C. Tinelli, Satisfiability modulo theories. Handbook of satisfiability, pp.825-885, 2009.
URL : https://hal.archives-ouvertes.fr/hal-01095009

C. Barrett, A. Stump, and C. Tinelli, The SMT-LIB standard version 2.0, 2010.

P. Behm, P. Benoit, A. Faivre, and J. Meynadier, M??t??or: A Successful Application of B in a Large Project, FM'99?Formal Methods, pp.369-387, 1999.
DOI : 10.1007/3-540-48119-2_22

N. Bjørner, Engineering theories with Z3. Programming Languages and Systems, pp.4-16, 2011.

N. Bjørner, A. Browne, and Z. Manna, Automatic generation of invariants and intermediate assertions, Theoretical Computer Science, vol.173, issue.1, pp.49-87, 1997.
DOI : 10.1016/S0304-3975(96)00191-0

F. Bobot, S. Conchon, E. Contejean, and S. Lescuyer, Implementing polymorphism in SMT solvers, Proceedings of the Joint Workshops of the 6th International Workshop on Satisfiability Modulo Theories and 1st International Workshop on Bit-Precise Reasoning, SMT '08/BPR '08, pp.1-5, 2008.
DOI : 10.1145/1512464.1512466

F. Bobot, J. Filliâtre, C. Marché, and A. Paskevich, Shepherd your herd of provers, Boogie 2011 : First International Workshop on Intermediate Verification Languages, pp.53-64, 2011.
URL : https://hal.archives-ouvertes.fr/hal-00790310

T. Bouton, D. C. De-oliveira, D. Déharbe, and P. Fontaine, veriT : an open, trustable and efficient SMT-solver. In Automated Deduction?CADE-22 Sipma. What's decidable about arrays, Verification, Model Checking, and Abstract Interpretation, pp.151-156, 2006.
URL : https://hal.archives-ouvertes.fr/inria-00430634

D. Cansell and D. Méry, Foundations of the B method. Computing and informatics, pp.221-256, 2012.
URL : https://hal.archives-ouvertes.fr/inria-00099794

S. Chatterjee, S. K. Lahiri, S. Qadeer, and Z. Rakamari´crakamari´c, A low-level memory model and an accompanying reachability predicate, International Journal on Software Tools for Technology Transfer, vol.20, issue.1, pp.105-116, 2009.
DOI : 10.1007/s10009-009-0098-1

E. M. Clarke, O. Grumberg, and D. A. , Peled. Model checking, 1999.

E. Cohen, M. Dahlweid, M. Hillebrand, D. Leinenbach, M. Moskal et al., VCC: A Practical System for Verifying Concurrent C, Theorem Proving in Higher Order Logics, pp.23-42, 2009.
DOI : 10.1007/978-3-540-74591-4_15

D. R. Cok, J. R. Kiniry, /. Esc, and . Java2, Uniting Esc/Java and JML, Construction and Analysis of Safe, Secure, and Interoperable Smart Devices, pp.108-128, 2005.

S. Conchon, E. Contejean, and M. Iguernelala, Canonized Rewriting and Ground AC Completion Modulo Shostak Theories, Tools and Algorithms for the Construction and Analysis of Systems, pp.45-59, 2011.
DOI : 10.1145/357073.357079

URL : https://hal.archives-ouvertes.fr/hal-00777663

P. Cousot and R. Cousot, Abstract interpretation, Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages , POPL '77, pp.238-252, 1977.
DOI : 10.1145/512950.512973

URL : https://hal.archives-ouvertes.fr/hal-01108790

D. Cyrluk, P. Lincoln, and N. Shankar, On Shostak's decision procedure for combinations of theories, Automated Deduction?CADE-13, pp.463-477, 1996.
DOI : 10.1007/3-540-61511-3_107

M. Davis, G. Logemann, and D. Loveland, A machine program for theorem-proving, Communications of the ACM, vol.5, issue.7, pp.394-397, 1962.
DOI : 10.1145/368273.368557

L. De-moura and N. Bjørner, Efficient E-Matching for SMT Solvers, CADE-21, pp.183-198, 2007.
DOI : 10.1007/978-3-540-73595-3_13

L. De-moura and N. Bjørner, Engineering DPLL(T) + Saturation, IJCAR 2008, pp.475-490, 2008.
DOI : 10.1007/978-3-540-71070-7_40

L. De-moura and N. Bjørner, Z3: An Efficient SMT Solver, TACAS, pp.337-340, 2008.
DOI : 10.1007/978-3-540-78800-3_24

L. De-moura and N. Bjørner, Generalized, efficient array decision procedures, 2009 Formal Methods in Computer-Aided Design, pp.45-52, 2009.
DOI : 10.1109/FMCAD.2009.5351142

L. De-moura and N. Bjørner, Satisfiability Modulo Theories: An Appetizer, Formal Methods : Foundations and Applications, pp.23-36, 2009.
DOI : 10.1007/978-3-642-10452-7_3

A. Degtyarev and A. Voronkov, Equality reasoning in sequent-based calculi. In Handbook of Automated Reasoning, volume I, chapter 10, Citeseer, 1996.

D. Detlefs, G. Nelson, and J. B. Saxe, Simplify: a theorem prover for program checking, Journal of the ACM, vol.52, issue.3, pp.365-473, 2005.
DOI : 10.1145/1066100.1066102

E. W. Dijkstra, Guarded commands, nondeterminacy and formal derivation of programs, Communications of the ACM, vol.18, issue.8, pp.453-457, 1975.
DOI : 10.1145/360933.360975

C. Dross, J. Filliâtre, and Y. Moy, Correct Code Containing Containers, Proceedings of the 5th international conference on Tests and proofs, pp.102-118, 2011.
DOI : 10.1145/1375581.1375624

URL : https://hal.archives-ouvertes.fr/hal-00777683

C. G. Fermüller, A. Leitsch, U. Hustadt, and T. Tammet, Resolution Decision Procedures, Handbook of Automated Reasoning, pp.1791-1849, 2001.
DOI : 10.1016/B978-044450813-3/50027-8

H. Ganzinger and K. Korovin, Theory Instantiation, Logic for Programming, Artificial Intelligence, and Reasoning, pp.497-511, 2006.
DOI : 10.1007/11916277_34

Y. Ge, C. Barrett, and C. Tinelli, Solving quantified verification conditions using satisfiability modulo theories, CADE-21, pp.167-182, 2007.
DOI : 10.1007/978-3-540-73595-3_12

URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.192.6628

Y. Ge and L. De-moura, Complete Instantiation for Quantified Formulas in Satisfiabiliby Modulo Theories, Computer Aided Verification, pp.306-320
DOI : 10.1007/978-3-642-02658-4_25

A. Goel, S. Krsti´ckrsti´c, and A. Fuchs, Deciding array formulas with frugal axiom instantiation, Proceedings of the Joint Workshops of the 6th International Workshop on Satisfiability Modulo Theories and 1st International Workshop on Bit-Precise Reasoning, SMT '08/BPR '08, pp.12-17, 2008.
DOI : 10.1145/1512464.1512468

R. Hahnle, Tableaux and related methods. Handbook of automated reasoning, pp.101-178, 2001.

N. Halbwachs and M. Péron, Discovering properties about arrays in simple programs, ACM SIGPLAN Notices, pp.339-348, 2008.
URL : https://hal.archives-ouvertes.fr/hal-00288274

C. A. Hoare, An axiomatic basis for computer programming, Communications of the ACM, vol.12, issue.10, pp.576-580, 1969.
DOI : 10.1145/363235.363259

B. Jacobs and F. Piessens, The VeriFast program verifier, CW Reports, 2008.

S. Jacobs and V. Kuncak, Towards Complete Reasoning about Axiomatic Specifications, Proceedings of VMCAI-12, pp.278-293, 2011.
DOI : 10.1007/978-3-540-25984-8_9

URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.185.918

D. Jovanovi´cjovanovi´c and C. Barrett, Polite theories revisited, Logic for Programming, Artificial Intelligence, and Reasoning, pp.402-416, 2010.

M. Kaufmann and J. Strother-moore, ACL2: an industrial strength version of Nqthm, Proceedings of 11th Annual Conference on Computer Assurance. COMPASS '96, pp.23-34, 1996.
DOI : 10.1109/CMPASS.1996.507872

URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.50.7444

D. E. Knuth and P. B. Bendix, Simple Word Problems in Universal Algebras, Automation of Reasoning, pp.342-376, 1983.
DOI : 10.1007/978-3-642-81955-1_23

K. Korovin, iProver?an instantiation-based theorem prover for first-order logic (system description) In Automated Reasoning [51] K. Korovin. An invitation to instantiation-based reasoning : From theory to practice, memoriam of Harald Ganzinger, pp.292-298, 2008.

L. Kovács and A. Voronkov, Finding loop invariants for programs over arrays using a theorem prover, Fundamental Approaches to Software Engineering, pp.470-485

D. Larraz, E. Rodríguez-carbonell, and A. Rubio, SMT-Based Array Invariant Generation, VMCAI, pp.169-188, 2013.
DOI : 10.1007/978-3-642-35873-9_12

K. R. Leino, Efficient weakest preconditions, Information Processing Letters, vol.93, issue.6, pp.281-288, 2005.
DOI : 10.1016/j.ipl.2004.10.015

K. R. Leino, This is Boogie 2, Manuscript KRML, vol.178, 2008.

K. R. Leino, Dafny: An Automatic Program Verifier for Functional Correctness, Logic for Programming, Artificial Intelligence, and Reasoning, pp.348-370, 2010.
DOI : 10.1007/978-3-642-17511-4_20

C. Lynch and B. Morawska, Automatic decidability, Proceedings 17th Annual IEEE Symposium on Logic in Computer Science, pp.7-16, 2002.
DOI : 10.1109/LICS.2002.1029813

URL : https://hal.archives-ouvertes.fr/inria-00586936

C. Lynch, S. Ranise, C. Ringeissen, and D. Tran, Automatic decidability and combinability, Information and Computation, vol.209, issue.7, pp.1026-1047, 2011.
DOI : 10.1016/j.ic.2011.03.005

URL : https://hal.archives-ouvertes.fr/inria-00586936

S. Mcpeak and G. C. Necula, Data Structure Specifications via Local Equality Axioms, Computer Aided Verification, pp.476-490, 2005.
DOI : 10.1007/11513988_47

Y. Moy and C. Marché, Modular inference of subprogram contracts for safety checking, Journal of Symbolic Computation, vol.45, issue.11, pp.1184-1211, 2010.
DOI : 10.1016/j.jsc.2010.06.004

URL : https://hal.archives-ouvertes.fr/inria-00534331

G. Nelson, Techniques for program verification, 1981.

G. Nelson, A generalization of Dijkstra's calculus, ACM Transactions on Programming Languages and Systems, vol.11, issue.4, pp.517-561, 1989.
DOI : 10.1145/69558.69559

G. Nelson and D. C. Oppen, Simplification by Cooperating Decision Procedures, ACM Transactions on Programming Languages and Systems, vol.1, issue.2, pp.245-257, 1979.
DOI : 10.1145/357073.357079

R. Nieuwenhuis, A. Oliveras, and C. Tinelli, Solving SAT and SAT Modulo Theories, Journal of the ACM, vol.53, issue.6, pp.937-977, 2006.
DOI : 10.1145/1217856.1217859

I. O. Neill, SPARK ? a language and tool-set for high-integrity software development, 2012.

S. Qadeer, Algorithmic Verification of Systems Software Using SMT Solvers, Lecture Notes in Computer Science, vol.5673, p.2, 2009.
DOI : 10.1007/978-3-642-03237-0_2

J. C. Reynolds, Separation logic: a logic for shared mutable data structures, Proceedings 17th Annual IEEE Symposium on Logic in Computer Science, 2002.
DOI : 10.1109/LICS.2002.1029817

A. Riazanov and A. Voronkov, Vampire 1.1, Automated Reasoning, pp.376-380, 2001.
DOI : 10.1007/3-540-45744-5_29

P. Rümmer, E-Matching with Free Variables, Logic for Programming, Artificial Intelligence , and Reasoning : 18th International Conference, LPAR-18, pp.359-374, 2012.
DOI : 10.1007/978-3-642-28717-6_28

S. Schneider, The B-method : An introduction, Palgrave Oxford, vol.200, 2001.

R. E. Shostak, Deciding combinations of theories, 6th Conference on Automated Deduction, pp.209-222, 1982.

J. Souyris, V. Wiels, D. Delmas, and H. Delseny, Formal Verification of Avionics Software Products, FM 2009 : Formal Methods, pp.532-546, 2009.
DOI : 10.1007/978-3-642-05089-3_34

N. Swamy, J. Weinberger, C. Schlesinger, J. Chen, and B. Livshits, Verifying higher-order programs with the Dijkstra monad, PLDI, pp.387-398, 2013.

A. Tafat, Preuves par raffinement de programmes avec pointeurs, 2013.
URL : https://hal.archives-ouvertes.fr/tel-00874679

C. Tinelli and C. Ringeissen, Unions of non-disjoint theories and combinations of satisfiability procedures, Theoretical Computer Science, vol.290, issue.1, pp.291-353, 2003.
DOI : 10.1016/S0304-3975(01)00332-2

URL : https://hal.archives-ouvertes.fr/inria-00099668

C. Weidenbach, U. Brahm, T. Hillenbrand, E. Keen, C. Theobald et al., Spass Version 2.0, Automated Deduction?CADE-18, pp.275-279, 2002.
DOI : 10.1007/3-540-45620-1_22