A. V. Aho, R. Sethi, J. D. Ullman, and P. Boullier, Compilateurs : principes, techniques et outils : cours et exercices, Sciences sup

J. Bacelar-almeida, M. J. Frade, J. S. Pinto, S. Melo, and . Sousa, Rigorous software development -an introduction to program verification, 2011.

P. Sérgio and A. , Balloon types : Controlling sharing of state in data types, Proceedings ECOOP'97, pp.32-59, 1997.

R. Back and W. Joakim-von, Refinement calculus -a systematic introduction, Undergraduate texts in computer science, 1999.

M. Barnett, R. Deline, B. Jacobs, . Bor-yuh-evan, K. Chang et al., Boogie: A Modular Reusable Verifier for Object-Oriented Programs, 4th International Symposium (Frank S. de Boer, pp.364-387, 2005.
DOI : 10.1007/11804192_17

E. M. Clarke and J. , Orna Grumberg, and Doron A. Peled, Model checking, 1999.

M. Clochard, L. Gondelman, and M. Pereira, The matrix reproved, Blazy and Chechik
URL : https://hal.archives-ouvertes.fr/hal-01316902

P. Cousot and R. Cousot, Systematic design of program analysis frameworks, Proceedings of the 6th ACM SIGACT-SIGPLAN symposium on Principles of programming languages , POPL '79, pp.269-282, 1979.
DOI : 10.1145/567752.567778

W. Dietl and P. Müller, Object Ownership in Program Verification, Clarke et al. [15], pp.289-318
DOI : 10.1007/978-3-642-36946-9_11

W. Edsger and . Dijkstra, Guarded commands, nondeterminacy and formal derivation of programs, Commun. ACM, vol.18, pp.453-457, 1975.

J. Filliâtre, Deductive software verification, International Journal on Software Tools for Technology Transfer, vol.21, issue.2, pp.397-403, 2011.
DOI : 10.1023/A:1005806324129

J. Filliâtre and A. Paskevich, Why3 ??? Where Programs Meet Provers, Proceedings of the 22nd European Symposium on Programming, pp.125-128, 2013.
DOI : 10.1007/978-3-642-37036-6_8

J. Filliâtre and M. Pereira, Producing All Ideals of a Forest, Formally (Verification Pearl), Blazy and Chechik
DOI : 10.1007/978-3-662-49122-5_2

R. W. Floyd, Assigning meanings to programs, Proceedings of Symposia in Applied Mathematics, pp.19-32, 1967.
DOI : 10.1090/psapm/019/0235771

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

J. Hogg, Islands : Aliasing protection in object-oriented languages, SIGPLAN Not, pp.271-285, 1991.

W. Brian, R. Kernighan, and . Pike, The practice of programming, 1999.

P. Lucas, Two constructive realizations of the block concept and their equivalence, 1968.

J. Monin, Introduction aux méthodes formelles, Collection technique et scientifique des télécommunications, Hermès science

P. Müller and A. Rudich, Ownership transfer in universe types, ACM SIGPLAN conference on Object-oriented programming systems and applications, pp.461-478, 2007.

A. Mycroft and J. Voigt, Notions of Aliasing and Ownership, Clarke et al. [15], pp.59-83
DOI : 10.1007/978-3-642-36946-9_4

J. Glenford, C. Myers, T. Sandler, T. M. Badgett, and . Thomas, The art of software testing, 2004.

S. Owre, J. M. Rushby, and N. Shankar, PVS: A prototype verification system, 11th International Conference on Automated Deduction, pp.748-752, 1992.
DOI : 10.1007/3-540-55602-8_217

C. Benjamin and . Pierce, Types and programming languages, 2002.

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

C. John and . Reynolds, Syntactic control of interference, POPL '78 : Proceedings of the 5th ACM SIGACT-SIGPLAN symposium on Principles of programming languages, pp.39-46, 1978.

C. John and . Reynolds, The craft of programming, Prentice Hall International series in computer science, 1981.

M. Tofte and J. Talpin, Implementation of the typed call-by-value lambda-calculus using a stack of regions, Symposium on Principles of Programming Languages, pp.188-201, 1994.

A. Mathison and T. , Report of a Conference on High Speed Automatic Calculing Machines (Cambridge), pp.67-69, 1949.

K. Andrew, M. Wright, and . Felleisen, A syntactic approach to type soundness, Information and Computation, vol.115, pp.38-94, 1992.

C. Flanagan, A. Sabry, B. F. Duba, and M. Felleisen, The essence of compiling with continuations, SIGPLAN Not, pp.237-247, 1993.

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

T. Kleymann, Hoare logic and auxiliary variables., Formal Asp, Comput, vol.11, issue.5, pp.541-566, 1999.

K. Rustan and M. Leino, Dafny : An automatic program verifier for functional correctness , LPAR-16, Lecture Notes in Computer Science, vol.6355, pp.348-370, 2010.

K. Rustan, M. Leino, and M. Moskal, Co-induction simply : Automatic coinductive proofs in a program verifier, FM Lecture Notes in Computer Science, vol.2014, issue.8442, pp.382-398, 2014.

P. Lucas, Two constructive realizations of the block concept and their equivalence, 1968.

C. Paulin-mohring, Extracting F Ê 's programs from proofs in the Calculus of Constructions, Sixteenth Annual ACM Symposium on Principles of Programming Languages, 1989.

C. Benjamin and . Pierce, Types and programming languages, 2002.

G. D. Plotkin, Call-by-name, call-by-value and the ??-calculus, Theoretical Computer Science, vol.1, issue.2, pp.125-159, 1975.
DOI : 10.1016/0304-3975(75)90017-1

F. Pottier and S. Conchon, Information flow inference for free, Proceedings of the Fifth ACM SIGPLAN International Conference on Functional Programming (ICFP'00), pp.46-57, 2000.

F. Pottier and V. Simonet, Information flow inference for ML, ACM Transactions on Programming Languages and Systems, vol.25, issue.1, pp.117-158, 2003.
DOI : 10.1145/596980.596983

C. John and . Reynolds, The craft of programming, Prentice Hall International series in computer science, 1981.

S. Schmaltz, Towards the pervasive formal verification of multi-core operating systems and hypervisors implemented in c

W. W. Tait, Intensional interpretations of functionals of finite type I, The Journal of Symbolic Logic, vol.91, issue.02, pp.198-212, 1967.
DOI : 10.1007/BF01447860

K. Andrew, M. Wright, and . Felleisen, A syntactic approach to type soundness, Information and Computation, vol.115, pp.38-94, 1992.

Z. Zhang, X. Feng, M. Fu, Z. Shao, and Y. Li, A Structural Approach to Prophecy Variables, Lecture Notes in Computer Science, vol.7287, pp.61-71, 2012.
DOI : 10.1007/978-3-642-29952-0_12

J. Berdine and P. W. Hearn, Strong Update, Disposal, and Encapsulation in Bunched Typing, Electronic Notes in Theoretical Computer Science, vol.158, pp.81-98, 2006.
DOI : 10.1016/j.entcs.2006.04.006

J. Boyland, Alias burying: Unique variables without destructive reads, Software: Practice and Experience, vol.34, issue.6, pp.31-533, 2001.
DOI : 10.1145/320385.320388

R. Burstall, Some techniques for proving correctness of programs which alter data structures, Machine Intelligence, vol.7, pp.23-50, 1972.

A. Charguéraud and F. Pottier, Functional translation of a calculus of capabilities, ACM SIGPLAN International Conference on Functional Programming (ICFP), pp.213-224, 2008.

D. Clarke, J. Östlund, I. Sergey, and T. Wrigstad, Ownership Types: A Survey, Clarke et al. [9], pp.15-58
DOI : 10.1007/978-3-642-36946-9_3

K. Crary, D. Walker, and G. Morrisett, Typed memory management in a calculus of capabilities, Proceedings of the 26th ACM SIGPLAN-SIGACT symposium on Principles of programming languages , POPL '99, pp.262-275, 1999.
DOI : 10.1145/292540.292564

L. Damas and R. Milner, Principal type-schemes for functional programs, Proceedings of the 9th ACM SIGPLAN-SIGACT symposium on Principles of programming languages , POPL '82, pp.207-212, 1982.
DOI : 10.1145/582153.582176

W. Dietl and P. Müller, Object Ownership in Program Verification, Clarke et al. [9], pp.289-318
DOI : 10.1007/978-3-642-36946-9_11

S. J. Fink, E. Yahav, N. Dor, G. Ramalingam, and E. Geay, Effective typestate verification in the presence of aliasing, ACM Transactions on Software Engineering and Methodology, vol.17, issue.2, pp.1-934, 2008.
DOI : 10.1145/1348250.1348255

C. Flanagan, A. Sabry, B. F. Duba, and M. Felleisen, The essence of compiling with continuations, SIGPLAN Not, pp.237-247, 1993.

B. Hackett and R. Rugina, Region-based shape analysis with tracked locations , SIGPLAN Not, pp.310-323, 2005.

J. R. Hindley, The principal type scheme of an object in combinatory logic, Transactions of the, pp.29-60, 1969.

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

J. Hogg, Islands : Aliasing protection in object-oriented languages, SIGPLAN Not, pp.271-285, 1991.

T. Ioannis and . Kassios, Dynamic frames : Support for framing, dependencies and sharing without restrictions, 14th International Symposium on Formal Methods (FM'06), pp.268-283, 2006.

J. M. Lucassen and D. K. Giord, Polymorphic eect systems, Proceedings of the 15th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages POPL '88, pp.47-57, 1988.

J. Mccarthy and P. J. Hayes, Some philosophical problems from the standpoint of artificial intelligence, Machine Intelligence, pp.463-502, 1969.

S. Monnier, Typed regions, Second workshop on Semantics, Program Analysis, and Computing Environments for Memory Management, 2004.

P. Müller and A. Rudich, Ownership transfer in universe types, ACM SIGPLAN conference on Object-oriented programming systems and applications, pp.461-478, 2007.

A. Mycroft and J. Voigt, Notions of Aliasing and Ownership, Clarke et al. [9], pp.59-83
DOI : 10.1007/978-3-642-36946-9_4

C. Benjamin and . Pierce, Types and programming languages, 2002.

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

M. Sagiv, T. W. Reps, and R. Wilhelm, Parametric shape analysis via 3-valued logic, pp.217-298, 2002.

F. Smith, D. Walker, and J. G. Morrisett, Alias Types, 9th European Symposium on Programming Proceedings (Gert Smolka, pp.366-381, 2000.
DOI : 10.1007/3-540-46425-5_24

M. Sridharan, S. Chandra, J. Dolby, S. J. Fink, and E. Yahav, Alias Analysis for Object-Oriented Programs, Clarke et al. [9], pp.196-232
DOI : 10.1007/978-3-642-36946-9_8

M. Tofte and J. Talpin, Region-Based Memory Management, Information and Computation, vol.132, issue.2, 1997.
DOI : 10.1006/inco.1996.2613

P. Wadler, Linear types can change the world !, Programming Concepts and Methods, North, 1990.

J. B. Wells, The Essence of Principal Typings, pp.913-925, 2002.
DOI : 10.1007/3-540-45465-9_78

K. Andrew, M. Wright, and . Felleisen, A syntactic approach to type soundness, Information and Computation, vol.115, pp.38-94, 1992.

J. Abrial, The B-book, assigning programs to meaning, 1996.

A. W. Appel, Abstract, Journal of Functional Programming, vol.27, issue.04, 1992.
DOI : 10.1007/3-540-09724-4

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

B. Cli and . Jones, Systematic software development using VDM, 1990.

J. Koenig, K. Rustan, and M. Leino, Programming Language Features for Refinement, Proceedings 17th International Workshop on Refinement, Refine@FM 2015, pp.87-106, 2015.
DOI : 10.4204/EPTCS.209.7

K. Rustan, M. Leino, and V. Wüstholz, The Dafny integrated development environment, Proceedings 1st Workshop on Formal Integrated Development Environment Electronic Proceedings in Theoretical Computer Science, pp.3-15, 2014.

X. Leroy, A modular module system, Journal of Functional Programming, vol.10, issue.3, pp.269-303, 2000.
DOI : 10.1017/S0956796800003683

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

H. Barbara, J. M. Liskov, and . Wing, A behavioral notion of subtyping, ACM Transactions on Programming Languages and Systems, vol.16, issue.6, pp.1811-1841, 1994.

J. Woodcock and J. Davies, Using Z : Specification, refinement, and proof, 1996.

R. Pagh and F. F. Rodler, Cuckoo hashing, Algorithms -ESA 2001, 9th Annual European Symposium, pp.121-133, 2001.