This course serves as an introduction to the fundamental principles and practical applications of logic programming, with a focus on the Prolog language. Students will explore the concepts learned in the logic course and apply them in the context of programming.

The course begins with an overview of logic programming, highlighting its declarative nature and its significance in problem-solving and artificial intelligence. Students will gain an understanding of the logical foundations behind Prolog and its unique approach to programming.

Throughout the course, students will engage in hands-on activities and coding exercises to develop their skills in Prolog programming. They will learn how to define logical rules, use pattern matching, and leverage the power of backtracking and unification to solve problems.

The curriculum will include the study of various topics, including recursive programming, list manipulation, logical inference, and rule-based systems. Students will also explore the integration of Prolog with other areas of computer science, such as language theory, analysis, and compilation.

Real-world examples and case studies will be presented to demonstrate the practical applications of logic programming, including expert systems, natural language processing, and automated reasoning.

Learning Objectives:

1- Introduction to logic programming: applying certain concepts learned in the logic course.

2- Exploration of Prolog programming: using examples related to the language theory and analysis and compilation courses."

Le cours de sécurité informatique a pour but de présenter aux étudiants les problèmes de sécurité posés par les ressources informatiques et réseaux et leur décrire les outils cryptologiques qui répondent à ces problèmes.

Présenter aux étudiants les problèmes de sécurité posés par les ressources informatiques et réseaux et leur décrire les outils cryptologiques qui répondent à ces problèmes.

apprendre les techniques de rédaction scientifique pour permettre à l’étudiant de publier les résultats de les travaux de recherche. 

Ce cours est dédié aux étudiants de la 3ème année Licence Informatique. L'objectif général du la matière d’enseignement est de présenter les systèmes d’exploitations mobiles ainsi que les plateformes de développement des applications mobiles. L’étudiant aura l’occasion de découvrir le développement d’applications mobiles sous android.

Depuis son apparition au début des années 1990, le web a profondément transformé la société contemporaine. Il est désormais omniprésent dans nos vies, que ce soit dans notre façon de communiquer, de travailler, de nous divertir, d’acheter des produits etc. Il est maintenant l'application la plus utilisée de l'Internet pour créer, partager et utiliser de l'information. le web est devenu un gigantesque réservoir d'informations rendant parfois la recherche d'information laborieuse, d'autant plus lorsqu'il s'agit de retrouver des informations fiables et pertinentes. Face à ce problème, l'inventeur du web Tim Berners-Lee a eu l'idée d'ajouter une « sémantique » aux documents du web. Cette idée s'est concrétisée en 2001 quand Tim Berners Lee a parlé du web sémantique pour désigner une évolution du web qui permettrait aux données disponibles (contenus et liens) d’être plus facilement utilisables et interprétables à la fois par les hommes et par les machines. De ce fait, aborder la question du web sémantique est un point très important Ce cours est une présentation approfondie des techniques de représentation de connaissances mises en œuvre dans le cadre du Web sémantique. Son but est de présenter, dans ce cadre précis, les résultats obtenus sur la sémantique des représentations de connaissance, les problèmes posés par leur mise sur le réseau ainsi que les problèmes de recherche que cela pose. Ce support de cours est destiné aux étudiants de troisième année licence