L’objectif de ce cours est de fournir aux étudiants les concepts fondamentaux des mathématiques discrètes qui constituent une base essentielle de l’informatique et du génie informatique, tout en développant leurs capacités de raisonnement logique, de modélisation mathématique, de résolution de problèmes et de démonstration. Les étudiants apprendront notamment à mettre en relation les ensembles, les relations, la combinatoire, la théorie des nombres, la théorie des graphes, les structures algébriques, les algorithmes et la calculabilité avec des problèmes relevant de l’informatique.
Logique propositionnelle et tables de vérité ; prédicats, quantificateurs et méthodes de preuve ; théorie des ensembles et ensembles des parties ; ensembles partiellement ordonnés ; relations, fermetures et relations d’équivalence ; théorie des nombres, arithmétique modulaire et cryptographie ; combinatoire et principes de dénombrement ; principe d’inclusion-exclusion et fonctions génératrices ; relations de récurrence et analyse d’algorithmes ; concepts fondamentaux de la théorie des graphes et isomorphisme ; arbres, parcours et codage de Huffman ; algorithmes de graphes, chemins et arbres couvrants ; structures algébriques pour l’informatique ; automates à états finis et théorie de la calculabilité.
À l’issue du cours, les étudiants seront capables de :
1. Analyser des propositions logiques et construire des tables de vérité.
2. Formuler des énoncés mathématiques à l’aide de prédicats et de quantificateurs.
3. Appliquer les principales méthodes de preuve, notamment la preuve directe, la preuve par contradiction, la preuve par contraposée et la récurrence mathématique.
4. Définir et analyser les ensembles, les relations et les relations d’équivalence.
5. Décrire et analyser les ensembles partiellement ordonnés et leurs propriétés fondamentales.
6. Appliquer les concepts de théorie des nombres et d’arithmétique modulaire à des problèmes d’informatique et de cryptographie.
7. Appliquer les techniques fondamentales de dénombrement et le principe d’inclusion-exclusion à des problèmes de combinatoire.
8. Résoudre des relations de récurrence et effectuer une analyse élémentaire de la complexité des algorithmes.
9. Modéliser des problèmes à l’aide de graphes et d’arbres et appliquer les principales techniques de parcours de graphes.
10. Expliquer et appliquer les concepts et algorithmes relatifs aux chemins, aux arbres couvrants et au codage de Huffman.
11. Décrire les principales structures algébriques utilisées en informatique et analyser leurs propriétés.
12. Expliquer les principes fondamentaux des automates à états finis et le concept de calculabilité.
13. Utiliser les concepts de mathématiques discrètes pour modéliser, analyser et résoudre des problèmes de génie informatique.
* Cours magistraux et séances interactives
* Présentations conceptuelles au tableau et/ou à l’aide de supports numériques
* Résolution de problèmes mathématiques
* Démonstrations et exercices corrigés
* Questions-réponses et discussions en classe
* Exemples issus de l’informatique et du génie informatique
* Exercices pratiques portant sur les algorithmes et les problèmes de graphes
* Travail individuel et devoirs
Rosen, Kenneth H., and Kamala Krithivasan. Discrete mathematics and its applications: with combinatorics and graph theory. Tata McGraw-Hill Education, 2012.
| Semaine | Intitulés des Sujets |
|---|---|
| 1 | Logique propositionnelle et tables de vérité |
| 2 | Prédicats, quantificateurs et méthodes de preuve |
| 3 | Théorie des ensembles, ensembles des parties et ensembles partiellement ordonnés |
| 4 | Relations, fermetures et relations d’équivalence |
| 5 | Théorie des nombres, arithmétique modulaire et cryptographie |
| 6 | Combinatoire I : principes fondamentaux et dénombrement |
| 7 | Combinatoire II : inclusion-exclusion et fonctions génératrices |
| 8 | Partiel |
| 9 | Relations de récurrence et analyse d’algorithmes |
| 10 | Théorie des graphes I : concepts fondamentaux et isomorphisme |
| 11 | Arbres, parcours et codage de Huffman |
| 12 | Algorithmes de graphes : chemins et arbres couvrants |
| 13 | Structures algébriques pour l’informatique |
| 14 | Automates à états finis et théorie de la calculabilité |
| Activités | Numéro | Contribution |
|---|---|---|
| Contribution du contrôle continu à la note finale | 1 | 60 |
| Contribution de l'examen final à la note finale | 1 | 40 |
| Total | 2 | 100 |
| Activités | Numéro | Contribution |
|---|---|---|
| Devoir | 10 | 30 |
| Présentation | 0 | 0 |
| Examen partiel (temps de préparation inclu) | 1 | 30 |
| Projet | 0 | 0 |
| Travail de laboratoire | 0 | 0 |
| Autres travaux pratiques | 0 | 0 |
| Quiz | 0 | 0 |
| Devoir/projet de session | 0 | 0 |
| Portefeuille | 0 | 0 |
| Rapport | 0 | 0 |
| Journal d'apprentissage | 0 | 0 |
| Mémoire/projet de fin d'études | 0 | 0 |
| Séminaire | 0 | 0 |
| Autre | 0 | 0 |
| Make-up | 0 | 0 |
| Total | 11 | 60 |
| No | Objectifs Pédagogiques du Programme | Contribiton | ||||
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | ||
| 1 | Matematik, fizik ve mühendislik bilimlerine özgü konularda yeterli bilgi birikimi; bu alanlardaki kuramsal ve uygulamalı bilgileri, mühendislik problemlerinin modellenmesi ve çözümünde kullanabilme becerisi. | X | ||||
| 2 | Karmaşık bilgisayar mühendisliği problemlerini saptama, tanımlama, formüle etme ve çözme becerisi; bu amaçla uygun analiz ve modelleme yöntemlerini seçme ve uygulama becerisi. | X | ||||
| 3 | Yazılımsal veya donanımsal karmaşık bir sistemi, süreci veya donanımı gerçekçi kısıtlar ve koşullar altında, belirli gereksinimleri karşılayacak şekilde tasarlama becerisi; bu amaçla modern tasarım yöntemlerini uygulama becerisi. | |||||
| 4 | Mühendislik uygulamalarında karşılaşılan karmaşık problemlerin analizi ve çözümü için gerekli olan modern teknik ve araçları geliştirme, seçme ve kullanma becerisi; bilişim teknolojilerini etkin bir şekilde kullanma becerisi. | X | ||||
| 5 | Analitik düşünce ile bir sistemi, sistem bileşenini ya da süreci analiz etme, modelleme, deney tasarlama ve yapma, veri toplama, çözüm algoritmaları üretebilme, uygulamaya alma ve geliştirme becerileri. | X | ||||
| 6 | Disiplin içi ve çok disiplinli takımlarda etkin biçimde çalışabilme becerisi; bireysel çalışma becerisi. | |||||
| 7 | Türkçe sözlü ve yazılı etkin iletişim kurma becerisi; en az iki yabancı dil bilgisi; etkin rapor yazma ve yazılı raporları anlama, yazılım ve donanım tasarımını, gerekirse teknik resim metotları kullanarak raporlayabilme, etkin sunum yapabilme becerisi. | X | ||||
| 8 | Bilgiye erişebilme ve bu amaçla kaynak araştırması yapabilme, veri tabanları ve diğer bilgi kaynaklarını kullanabilme becerisi | |||||
| 9 | Yaşam boyu öğrenmenin gerekliliği bilinci; kendini sürekli yenileme becerisi. | |||||
| 10 | Mesleki etik ilkelerine uygun davranma, mesleki sorumluluk bilinci; mühendislik uygulamalarında kullanılan standartlar hakkında bilgi. | X | ||||
| 11 | Proje yönetimi, risk yönetimi ve değişiklik yönetimi gibi, iş hayatındaki uygulamalar hakkında bilgi; girişimcilik, yenilikçilik hakkında farkındalık; sürdürülebilir kalkınma hakkında bilgi. | |||||
| 12 | Mühendislik uygulamalarının evrensel ve toplumsal boyutlarda sağlık, çevre ve güvenlik üzerindeki etkileri ve çağın mühendislik alanına yansıyan sorunları hakkında bilgi. | |||||
| 13 | Bilgisayar mühendisliği uygulamalarının hukuki ve etik boyutları konusunda farkındalık. | |||||
| Activités | Nombre | Durée | Charge totale de Travail |
|---|---|---|---|
| Durée du cours | 14 | 3 | 42 |
| Préparation pour le cours | 14 | 2 | 28 |
| Examen partiel (temps de préparation inclu) | 1 | 10 | 10 |
| Examen final (temps de préparation inclu) | 1 | 17 | 17 |
| Charge totale de Travail | 97 | ||
| Charge totale de Travail / 25 | 3.88 | ||
| Crédits ECTS | 4 | ||