--- 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