Lorsque vous vous inscrivez à ce cours, vous êtes également inscrit(e) à cette Spécialisation.
Apprenez de nouveaux concepts auprès d'experts du secteur
Acquérez une compréhension de base d'un sujet ou d'un outil
Développez des compétences professionnelles avec des projets pratiques
Obtenez un certificat professionnel partageable
Il y a 5 modules dans ce cours
e.g. This is primarily aimed at first- and second-year undergraduates interested in engineering or science, along with high school students and professionals with an interest in programming.Design by Provable Contracts teaches you how to move from "the tests pass" to "the math says it cannot break." Across five modules, you'll climb a five-rung provability ladder — from lint and types, through property-based and bounded-model checking, to dependent-typed proofs in Lean 4 — applied to a single running example: the softmax function used in modern machine learning.
By the end, you will be able to: (1) read a peer-reviewed paper and translate its preconditions, postconditions, and invariants into a YAML contract; (2) choose the right verification rung for a given cost-vs-confidence trade-off, using lint, types, proptest, and Kani in Rust; and (3) build a complete pipeline from paper to YAML to Lean theorem, producing a machine-checked guarantee that holds for every input of every length.
The course is hands-on and tool-first: Rust for the lower rungs, Lean 4 for the top rung, and YAML as the connective tissue between math and code. You will leave with a reusable mental model and a working capstone you can apply to any safety-critical numerical kernel.
Master Hoare triples and the contract foundations of Design by Contract. Learn how {P} S {Q} formalizes preconditions, postconditions, and the caller/callee responsibility split through Eiffel's require/ensure idiom and its Rust port via Prusti and Creusot.
Inclus
4 vidéos4 lectures
Afficher les informations sur le contenu du module
Reading: Key Terms — Hoare's Triples and Why•10 minutes
Reading: Reflection — Hoare's Triples and Why•10 minutes
Reading: Key Terms — Rust's Port•10 minutes
Reading: Reflection — Rust's Port•10 minutes
The Type-System Pillar — Contracts via the Type-Checker
Module 2•1 heure à terminer
Détails du module
Shift contracts from runtime checks into the type system. Learn parse-don't-validate, the newtype pattern as a zero-cost contract, and typestate to encode state machines directly in types so invalid states cannot be represented.
Inclus
4 vidéos4 lectures
Afficher les informations sur le contenu du module
4 vidéos•Total 8 minutes
Video 2.1.1: Parse, Don't Validate•2 minutes
Video 2.1.2: Newtype as Zero-Cost Contract•2 minutes
Video 2.1.3: PhantomData and Compile-Time Tags•2 minutes
Video 2.2.1: Typestate — State Machines in Types•2 minutes
Use a YAML contract as the machine-readable, human-auditable bridge between research papers and verified Rust kernels. Learn the 19-property obligation taxonomy, Popperian falsification testing, and how pv aggregates L1 to L5 status into one audit artifact.
Inclus
5 vidéos4 lectures1 devoir
Afficher les informations sur le contenu du module
5 vidéos•Total 10 minutes
Video 3.1.1: Why YAML Specification as Code•2 minutes
Video 3.1.3: Popperian Falsification — Actionable Failure•2 minutes
Video 3.2.1: pv Property 7-Eiffel•2 minutes
Video 3.2.2: From Paper to YAML — One Equation•1 minute
4 lectures•Total 40 minutes
Reading: Key Terms — Why YAML•10 minutes
Reading: Reflection — Why YAML•10 minutes
Reading: Key Terms — pv: The CLI•10 minutes
Reading: Reflection — pv: The CLI•10 minutes
1 devoir•Total 30 minutes
Practice Quiz: Module 3 Knowledge Check — The YAML Bridge•30 minutes
Climbing the Provability Ladder — L1 to L5
Module 4•1 heure à terminer
Détails du module
Walk the proof ladder on softmax: L1 lint, L2 types, L3 proptest, L4 Kani bounded model checking, and L5 Lean theorems. Learn to pick the rung that matches the cost of being wrong.
Inclus
4 vidéos3 lectures
Afficher les informations sur le contenu du module
4 vidéos•Total 8 minutes
Video 4.1.1: L1 + L2 — Lint and Types on softmax•2 minutes
Video 4.1.2: L3 — proptest softmax sums to one•2 minutes
Video 4.1.3: L4 — Kani softmax non-negativity•2 minutes
Video 4.2.1: Cost vs Confidence — Which Rung Fits•2 minutes
3 lectures•Total 30 minutes
Reading: Key Terms — L1 + L2: Lint and Types on softmax•10 minutes
Reading: Reflection — L1 + L2: Lint and Types on softmax•10 minutes
Reading: Key Terms — Cost vs Confidence: Which Rung Fits•10 minutes
Capstone — softmax Across All Five Levels
Module 5•1 heure à terminer
Détails du module
End-to-end capstone: take softmax from a peer-reviewed paper, through a YAML contract, to a Lean 4 theorem holding for every finite vector of every length. Every cell of the Lesson 1.1 tooling map gets demonstrated.
Inclus
4 vidéos4 lectures
Afficher les informations sur le contenu du module
4 vidéos•Total 9 minutes
Video 5.1.1: L5 — Lean 4 for Engineers•1 minute
Video 5.1.2: From Paper to Theorem — Lean Stub•1 minute
Video 5.1.3: softmax Theorem in Lean•2 minutes
Video 5.2.1: Demo — Why Provability Matters•4 minutes
4 lectures•Total 40 minutes
Reading: Key Terms — L5: Lean 4 for Engineers•10 minutes
Reading: Reflection — L5: Lean 4 for Engineers•10 minutes
Ajoutez ce titre à votre profil LinkedIn, à votre curriculum vitae ou à votre CV. Partagez-le sur les médias sociaux et dans votre évaluation des performances.
Pour quelles raisons les étudiants sur Coursera nous choisissent-ils pour leur carrière ?
Felipe M.
Étudiant(e) depuis 2018
’Pouvoir suivre des cours à mon rythme à été une expérience extraordinaire. Je peux apprendre chaque fois que mon emploi du temps me le permet et en fonction de mon humeur.’
Jennifer J.
Étudiant(e) depuis 2020
’J'ai directement appliqué les concepts et les compétences que j'ai appris de mes cours à un nouveau projet passionnant au travail.’
Larry W.
Étudiant(e) depuis 2021
’Lorsque j'ai besoin de cours sur des sujets que mon université ne propose pas, Coursera est l'un des meilleurs endroits où se rendre.’
Chaitanya A.
’Apprendre, ce n'est pas seulement s'améliorer dans son travail : c'est bien plus que cela. Coursera me permet d'apprendre sans limites.’
When will I have access to the lectures and assignments?
To access the course materials, assignments and to earn a Certificate, you will need to purchase the Certificate experience when you enroll in a course. You can try a Free Trial instead, or apply for Financial Aid. The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.
What will I get if I subscribe to this Specialization?
When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile.
Is financial aid available?
Yes. In select learning programs, you can apply for financial aid or a scholarship if you can’t afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, you’ll find a link to apply on the description page.