30 lines
1.6 KiB
Markdown
30 lines
1.6 KiB
Markdown
---
|
|
author:
|
|
- "[[Bertrand GENTOU]]"
|
|
tags:
|
|
- s/informatique
|
|
- s/fac
|
|
number headings: auto, first-level 1, max 3, 1.1 -
|
|
---
|
|
|
|
> [!idea] But du cours
|
|
> Les [[IA générative|IAs génératives]] peuvent produire des programmes, mais pas de certifier qu'ils sont corrects.
|
|
> La moitié des attendus (examen) sont donc des preuves sur le code.
|
|
> L'autre moitié est de la production de code python.
|
|
> - i Jour 1 : "le deep learning n'arrivera jamais à ça [prouver la correction de son code]" (de la part d'un ancien ingénieur qui travaillait sur l'IA)
|
|
|
|
|
|
> [!info] Choses supposées connues
|
|
> - être à l'aise avec les calculs de [[complexité algorithmique]]
|
|
|
|
|
|
# 1 - Algorithmes de tris
|
|
Pdf du cours : [[M1_algo_chap1_algos_de_tri.pdf]]
|
|
|
|
- les [[algorithme de tri par comparaison]] ont une complexité d'au moins $O(n \log(n))$ [[démonstration complexité minimale algorithme de tri par comparaison|(démonstration)]]
|
|
|
|
- démonstration par invariant de boucle (exemple sur le [[tri par sélection]])
|
|
- on choisit une propriétée que l'on veut montrer vraie, et on la montre par récurrence sur la variable de boucle
|
|
- ! ne pas se tromper sur la propriété invariante. Pour le tri par sélection, la propriété doit être "les $i$ premier éléments sont à leur place définitive", et pas simplement "les $i$ premiers éléments sont triés", car on veut pouvoir faire la réccurence : il faut que les $i$ premiers soient *les plus petits du tableau* et pas simplement *des éléments triés parmi ceux du tableau*
|
|
|
|
- [ ] #task démonstration correction du tri par insertion ⏫ 📅 2025-09-15 |