Filière: Informatique et systèmes de communication
Orientation: Informatique logicielle
Module: Paradigmes avancés de programmation

Descriptif de cours

Retour Programmation logique

  • Objectifs

    A la fin du cours l'étudiant sait:

    • Programmer avec un langage non-impératif; en l'occurrence le cours vise à faire découvrir le modèle de programmation logique, ainsi que la programmation par contraintes.
  • Contenu

    Programmation logique (64 périodes):

    • Bases de Prolog : logique, prédicats, variable logique, arbre de dérivation.
    • Structures de données incomplètes.
    • Parcours de graphes d'états.
    • Problèmes du ''cut'', négation. Règles dynamiques (assert).
    • Definite Clause Grammars, utilisation de Prolog pour l'analyse syntaxique.
    • Meta-programmation. Notion de tableau noir.
    • Extension du modèle logique par l'expression de contraintes.
    • Propagation/distribution, techniques de programmation par contraintes, moteur GnuProlog
    • Programmation multi-langages

Forme d'enseignement et volume de travail

Cours magistral (y compris exercices)
14 périodes
Travaux pratiques / laboratoires
36 périodes
Théorie sous forme de vidéo (classe inversée
14 périodes
Travail personnel
26 périodes

Spécification du cours

Année de validité
2025-2026
Année du plan d'études
3ème année
Semestre
Automne
Programme
Français,Bilingue
Filière
Informatique et systèmes de communication
Langue d'enseignement
Français
Identifiant
B3C-PLPL-S
Niveau
Avancé
Type de cours
complémentaire
Formation
Bachelor

Modalités d'évaluation

  • Contrôle continu: travaux écrits, TP/évaluation de rapports

Mode de calcul de la note de cours

La note du contrôle continu est la moyenne pondérée des évaluations du semestre (+/- un possible ajustement lié aux TPs). En cas d'examen de révision, la note finale du cours est la moyenne arithmétique de la note du contrôle continu et de celle de l'examen de révision.

Enseignant(s) et/ou coordinateur(s)

Frédéric Bapst