Calcul symbolique
9 semaines, 4 ECTS,
- Cours en amphithéâtre informatique; mercredi matin 8h-10h.
- Licence mathématique-informatique: TP mercredi 10h15-12h15 en PV201.
- Licence informatique 2 TP mercredi 15h15-17h15, PV214 et PV215
Equipe pédagogique
Bruno Martin, Julien Provillard
Résumé
Ce cours propose une introduction au calcul symbolique en utilisant la librairie de calcul symbolique SymPy de Python 3. L’installation la plus simple se fait par anaconda.
Objectifs
Présenter les différents aspects d’un système de calcul symbolique; le langage de base, sa programmation, les possibilités d’affichage graphique. On présentera les différentes fonctionnalités du calcul symbolique au travers d’exemples pris dans différents cours de L1 ou L2 d’informatique ou de mathématiques: algorithmes de tri, cryptographie à clé secrète, cryptographie à clé publique, codes correcteurs d’erreurs, programmation dynamique, analyse. Voir la présentation.
Contenu (2018)
- 12/09: 1: Prise en main de Sympy, le TP et le corrigé en ipynb ou pdf par A. Midalichov, M. Mazy et A. Baroudi, relu en ipynb ou pdf par M. Saied Elarays et S. Israpilov.
- 19/09: 2: Dictionnaires, chaînes et ensembles, le TP et le corrigé en ipynb ou pdf par J. Rambeloson, Y. Tognetti et Y. Ben Fredj relu en ipynb et en pdf par N. Bernigaud et N. Yacoub
- 26/09: 3: Arithmétique et cryptographie, le TP et le corrigé en html par A. Luciani, E. Antoine et B. Rousseau et relu en ipynb et en pdf par C. De Haeck et I. De Haeck.
- 03/10: 4: Graphisme, le TP et le corrigé en ipynp et en pdf par D. Morelle, J. Imbert et C. Dubas et relu en ipynb et en pdf par F. Spire et G. Serrie
- 10/10: Partiel et le corrigé en ipynb et en pdf par C. Bailet, M. Shan, M. Bellet, relu au format ipynb et en pdf par Y. Amaddah et M. Berta
- 17/10: 5: Algèbre linéaire et codes, le TP et le corrigé en ipynp et en pdf par S. Badache, M. Belhassen et A. Lopes relu en ipynb et en pdf par T. Aguilar Vidal et R. El Chalfoun
- 24/10: 6: Programmation et complexité, le TP le corrigé en html par R. Longin, G. Fabre, Y. Laurandeau relu par M. Ben Abdelkrim et C. Abdelmeraim en ipynb et en pdf
- 7/11: 7: Analyse et applications, le TP au format zip et le corrigé en ipynb et en pdf par A. Thuilier, M. Coello, C. Marie relu par T. Gerberon et S. Moumen en ipynb et en pdf
- 14/11: 8: Récursion et programmation dynamique, le TP au format ipynb et le corrigé en ipynb et en pdf par E. Yordanov, P. Kouyoumdjian, T. Picard relu par E. Desprès et L. Filippi en ipynb et pdf
- 21/11: Algèbre de Boole, le TP au format ipynb le corrigé en ipynb et en pdf par G. Cariou, O. Amsalhem et Q. Merilleau relu par E. Bretonnière et J.Y. Ahmad (pas d’amélioration).
Prérequis
- Informatique et mathématiques de première année de licence de sciences fondamentales.
- Connaissance du langage Python3
Contrôle des connaissances
- Un contrôle continu (corrigé ou relecture des corrigés des TP), 1/3 de la note finale à rendre avant l’examen final.
- Un partiel le 10 octobre, 8h, Amphi informatique (1h30, 1 page RV autorisée, glossaire des fonctions utiles fourni), 1/3 de la note finale.
- Un examen le 19 décembre, amphi M de 11h30 à 13h (1h30, 2 pages RV manuscrites autorisées), 1/3 de la note finale.
- Un examen de session 2 le 28 juin en salle M.II.4 (1h30, 2 pages RV manuscrites autorisées), annule et remplace toute note précédente
Examens précédents
- Le partiel de 2018
- L’examen final de 2017 (ATTENTION, c’était avec Mathematica); traduit en Python par M. Mejri et S. Rouméas en ipynb et en pdf
- L’examen final de 2018 corrigé en ipynb et en pdf par B. Martin et J. Provillard
Bibliographie
- J-M. Fédou, Calcul symbolique, UNS
- Calcul mathématique avec SAGE
- K. H. Rosen, Exploring discrete mathematics using Mathematica, 2016
- S. Eilers, R. Johansen, Introduction to experimental mathematics, Cambridge University Press, 2017
- H. C.A. van Tilborg, Fundamentals of cryptology, 2000
- M. Délèze, Support de cours “application des mathématiques”
- J. M. Stewart, Python for scientists, 2d edition, Cambridge University Press, 2017
- A. Casamayou-Boucau, P. Chauvain, G. Connan, Programmation en Python pour les mathématiques, 2e édition, Dunod, 2016
Ressources électroniques
- Tutoriel Sympy en video
- Tutoriel Python jusqu’au chapitre 6
- Formation Python
- SymPy Cheatsheet
- Python Cheatsheet
- Sympy from SciPy