A. Abel, foetus ? termination checker for simple functional programs, Programming Lab Report, vol.474, 1998.

. Abel, Type-based termination: a polymorphic lambda-calculus with sized higher-order types, 2007.

T. Altenkirch and B. Reus, Monadic Presentations of Lambda Terms Using Generalized Inductive Types, Computer Science Logic, 13th International Workshop, CSL '99, 8th Annual Conference of the EACSL Proceedings, 1999.
DOI : 10.1007/3-540-48168-0_32

. Atkey, Parameterised notions of computation, Journal of Functional Programming, vol.22, issue.3-4, pp.335-376, 2009.
DOI : 10.1145/158511.158524

L. Augustsson, Cayenne?a language with dependent types, Proceedings of the Third ACM SIGPLAN International Conference on Functional Programming, 1998.

G. Barthe, M. J. Frade, E. Giménez, L. Pinto, and T. Uustalu, Type-based termination of recursive definitions, Mathematical Structures in Computer Science, vol.14, issue.1, pp.97-141, 2004.
DOI : 10.1017/S0960129503004122

C. Benton, A. Hur, C. Kennedy, and . Mcbride, Strongly Typed Term Representations in Coq, Journal of Automated Reasoning, vol.14, issue.1, pp.141-159, 2012.
DOI : 10.1007/s10817-011-9219-0

K. Bhargavan, C. Fournet, and A. D. Gordon, Modular verification of security protocol code by typing, 37th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL'10), 2010.

K. Bhargavan, C. Fournet, M. Kohlweiss, A. Pironti, and P. Strub, Implementing TLS with Verified Cryptographic Security, 2013 IEEE Symposium on Security and Privacy, 2013.
DOI : 10.1109/SP.2013.37

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

A. Bove, Simple general recursion in type theory, Nordic Journal of Computing, vol.8, issue.1, pp.22-42, 2001.

. Brady, Programming and reasoning with algebraic effects and dependent types, Proceedings of the 18th ACM SIGPLAN International Conference on Functional Programming, 2013.
DOI : 10.1145/2544174.2500581

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

C. Casinghino, V. Sjöberg, and S. Weirich, Combining proofs and programs in a dependently typed language, Proceedings of the 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL '14, 2014.
DOI : 10.1145/2535838.2535883

C. Chen and H. Xi, Combining Programming with Theorem Proving, Proceedings of the Tenth ACM SIGPLAN International Conference on Functional Programming, 2005.
DOI : 10.1145/1086365.1086375

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

A. Chlipala, G. Malecha, G. Morrisett, A. Shinnar, and R. Wisnesky, Effective interactive proofs for higher-order imperative programs, Proceedings of the 14th ACM SIGPLAN International Conference on Functional Programming, 2009.

T. Dierks and E. Rescorla, The Transport Layer Security (TLS) Protocol Version 1.2. IETF RFC 5246, 2008.

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

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

T. Freeman and F. Pfenning, Refinement types for ML, Proceedings of the ACM SIGPLAN'91 Conference on Programming Language Design and Implementation (PLDI), 1991.
DOI : 10.1145/113446.113468

R. Harper, Practical foundations for programming languages, 2015.

G. Kimmell, A. Stump, H. D. Iii, P. Fu, T. Sheard et al., Equational reasoning about programs with general recursion and call-by-value semantics, 2013.

A. Krauss, C. Sternagel, R. Thiemann, C. Fuhs, and J. Giesl, Termination of Isabelle Functions via Termination of Rewriting, Second International Conference on Interactive Theorem Proving, 2011.
DOI : 10.1007/978-3-642-03359-9_31

B. W. Lampson, J. J. Horning, R. L. London, J. G. Mitchell, and G. J. Popek, Report on the programming language Euclid, ACM SIGPLAN Notices, vol.12, issue.2, pp.1-79, 1977.
DOI : 10.1145/954666.971189

K. R. Leino, Dafny: An Automatic Program Verifier for Functional Correctness, Proceedings of the 16th International Conference on Logic for Programming, Artificial Intelligence, and Reasoning, 2010.
DOI : 10.1007/978-3-642-17511-4_20

P. Letouzey, Extraction in Coq: An Overview, LTA '08, 2008.
DOI : 10.1007/978-3-540-69407-6_39

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

J. Mccarthy, Towards a Mathematical Science of Computation, IFIP Congress, 1962.
DOI : 10.1007/978-94-011-1793-7_2

. Moggi, Computational lambda-calculus and monads, [1989] Proceedings. Fourth Annual Symposium on Logic in Computer Science, 1989.
DOI : 10.1109/LICS.1989.39155

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

A. Nanevski, J. G. Morrisett, and L. Birkedal, Hoare type theory, polymorphism and separation, J. Funct. Program, vol.18, pp.5-6865, 2008.

P. Rogaway, Authenticated-encryption with associated-data, Proceedings of the 9th ACM conference on Computer and communications security , CCS '02, 2002.
DOI : 10.1145/586110.586125

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

P. M. Rondon, M. Kawaguchi, and R. Jhala, Liquid types, Proceedings of the ACM SIGPLAN 2008 Conference on Programming Language Design and Implementation, 2008.
DOI : 10.1145/1379022.1375602

J. Rushby, S. Owre, and N. Shankar, Subtypes for specifications: predicate subtyping in PVS, IEEE Transactions on Software Engineering, vol.24, issue.9, pp.709-720, 1998.
DOI : 10.1109/32.713327

S. Schäfer, T. Tebbi, and G. Smolka, Autosubst: Reasoning with de Bruijn Terms and Parallel Substitutions, Interactive Theorem Proving -6th International Conference, 2015.
DOI : 10.1007/978-3-319-22102-1_24

M. Sozeau, Subset Coercions in Coq, TYPES'06, 2007.
DOI : 10.1007/978-3-540-74464-1_16

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

N. Swamy, J. Chen, C. Fournet, P. Strub, K. Bhargavan et al., Secure distributed programming with value-dependent types, Journal of Functional Programming, vol.23, issue.04, pp.402-451, 2013.
DOI : 10.1017/S0956796813000142

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

N. Swamy, J. Weinberger, C. Schlesinger, J. Chen, and B. Livshits, Verifying higher-order programs with the Dijkstra monad, Proceedings of the 34th annual ACM SIGPLAN conference on Programming Language Design and Implementation, 2013.

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

URL : http://doi.org/10.1006/inco.1996.2613

M. Utting, Reasoning about aliasing, The Fourth Australasian Refinement Workshop, 1996.

N. Vazou, E. L. Seidel, R. Jhala, D. Vytiniotis, and S. L. Jones, Refinement types for Haskell, Proceedings of the 19th ACM SIGPLAN international conference on Functional programming (ICFP'14), 2014.
DOI : 10.1145/2628136.2628161

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

B. Ziliani, D. Dreyer, N. R. Krishnaswami, A. Nanevski, and V. Vafeiadis, Mtac: a monad for typed tactic programming in Coq, ACM SIGPLAN International Conference on Functional Programming, 2013.