Tronc commun scientifique première année

Le tronc commun scientifique de première année couvre les domaines suivants : Automatique, optimisation et mathématiques appliquées ; Physique et mécanique ; Méthodes et outils pour l'ingénieur ; Sciences et technologies de l'information et de la communication. Retrouvez ci-dessous le détail des cours par domaine.

Automatique, optimisation et mathématiques appliquées

Physique et mécanique

Tronc commun classique :

 

Tronc commun renforcé (les cours sont identiques à ceux du tronc commun classique mais proposent un format et parfois une chronologie adaptés au niveau des élèves) :

Méthodes et outils pour l'ingénieur

Sciences et technologies de l'information et de la communication

Conscient que les élèves issus de classes préparatoires MP2I/MPI ont des connaissances et des compétences approfondies en informatique, ENSTA Paris propose à ces élèves des cours d'informatique spécifiques en première année. Aux cours "Langage C", "Algorithmique et programmation", "Algorithmes et structures de données", sont substitués les cours "Langage C avancé", "Introduction à la compilation" et "Autour de la logique".

Le cours "Langage C avancé" vise à approfondir la compréhension de ce langage, de ses constructions, de leur sémantique. Le langage C permet d'écrire des programmes efficaces, possiblement très proches des aspects matériels des machines. Ces atouts ont parfois un prix à payer à cause de subtilités techniques qu'il est important de maîtriser pour une programmation plus sûre. Ce cours oscille parfois entre des aspects langage, compilation, OS, matériel, montrant les interactions étroites entre ces domaines. Ce cours se déroule sous forme de cours-TDs intégrés en petit groupe.

Le cours " Introduction à la compilation" opte pour une orientation vers la traduction d'un langage dédié (DSL, Design Specific Language) vers du langage C. Il illustre le découpage en phases séparées de compilation, mettant en en œuvre un grand nombre d'algorithmes et de structures de données pour rendre le processus de traduction efficace. Il aborde des notions syntaxiques (analyses lexicale et syntaxique), des notions sémantiques et des notions de production de code. Le langage support sera OCaml.

Le cours "Autour de la logique" vise à poser les bases de la logique mathématique et de la démonstration. Ce cours a plusieurs objectifs. Dans le désordre, il propose d'aborder la logique en tant que science, comme objet d'étude, pour démontrer des propriétés sur certains formalismes logiques. Mais également d'aborder la logique en tant qu'outil, pour formaliser des problèmes et démontrer des propriétés, pour formaliser des programmes et démontrer des propriétés sur ces programmes. Enfin, il aborde la logique comme domaine sur lequel des algorithmes peuvent travailler pour automatiser des vérifications de preuves, voire (en partie) des recherches de preuves. Le cours mélange des aspects purement théoriques (démonstrations au sens « habituel » du terme), des aspects programmation en OCaml pour travailler sur des formules logiques, des aspects preuve et programmation en Coq pour mettre en application les preuves dites formelles. Ce cours se déroule sous forme de cours-TDs intégrés en petit groupe.