Analyst Programmer_AP107: Mathematical Foundations for AI (Professional)
About Course
The main purpose of this course is to lay:
- The mathematical foundations required for success in other program streams such as computer architecture, programming and data base management systems.
- Subsequent mathematics courses rely on the discrete mathematics learned in this course.
- The students will solve problems using the concepts, structures and methods of discrete mathematics.
- The emphasis throughout this course is on acquiring the applied mathematical foundations (e.g. Number systems, matrices, graphs, trees, and combinatorics) upon which computer applications are built.
Upon successful completion of this course, the student will have demonstrated the ability to:
- Apply rules and concepts pertaining to different positional number systems (specifically, decimal, binary and hexadecimal).
- Covert between decimal, binary and hexadecimal number systems.
- Apply notation, vocabulary, operations, and diagramming techniques, pertaining to mathematical sets.
- Apply notation, vocabulary, and diagramming techniques, pertaining to graph theory.
- Analyze and assess problems pertaining to various types of graphs, directed graphs and trees.
- Solve various problems pertaining to graph theory using matrices.
- Apply shortest path algorithms to various problems pertaining to graph theory
- Apply modulus arithmetic to the solution of practical problems.
- Use truth tables to illustrate the logical connectives: AND, OR,XOR, and NOT to evaluate logical expressions.
- Use combinatorial circuits to demonstrate the applications of logical expressions in computer science.
- Use Karnaugh maps to simplify logical expressions.
Course Content
Module 1
-
02:53
-
20:46
-
LO2: Discuss Logical Equivalences and Quantifiers
23:37 -
LO3: Analyze and construct Valid Arguments using Rules of Inference
18:54 -
LO4: Differentiate between Direct, Indirect, and Proof by Contradiction Techniques
13:41 -
LO5: Knowledge Check
-
03:36
-
08:13
-
LO2: Understand the concept of Functions
11:51 -
LO3: Analyze Sequences and their properties
08:49 -
LO4: Apply Summation Notation and Compute Sums using Formulas
11:43 -
LO5: Understand the Basics of Matrices, including Matrix Operations and Determinants
10:10 -
LO6: Knowledge Check
-
03:12
-
15:07
-
LO2: Analyze the efficiency of Algorithms using Notations
07:55 -
LO3: Explore various Algorithmic Paradigms
08:02 -
LO4: Elaborate common Algorithms for Sorting, Searching, and Graph Traversal
24:12 -
LO5: Knowledge Check
-
Topic 4: Number Theory and Cryptography
02:25 -
LO1: Understand the Basic Principles of Number Theory
11:45 -
LO2: Apply the Euclidean Algorithm and Modular Arithmetic in Problem-Solving
09:31 -
LO3: Explore Concepts of Cryptography
11:46 -
LO4: Knowledge Check
-
Topic 5: Induction and Recursion
02:40 -
LO1: Discuss and apply the Principle of Mathematical Induction
08:13 -
LO2: Understand and apply Strong Induction in more Complex Proofs
06:39 -
LO3: Explore the concept of Recursion and its Relation to Inductive Reasoning
08:25 -
LO4: Knowledge Check
-
Topic 6: Counting
03:02 -
LO1: Understand the Basic Principles of Counting
12:19 -
LO3: Apply the Binomial Theorem in Solving Counting Problems
06:35 -
LO4: Understand and Solve problems Using the Pigeonhole Principle
06:22 -
LO2: Explore Permutations and Combinations and their Applications
11:38 -
LO5: Knowledge Check
-
Topic 7: Discrete Probability
03:02 -
LO1: Understand the Basic Principles of Probability
15:33 -
LO2: Calculate Probabilities using Conditional Probability and Independence
15:45 -
LO3: Apply Bayes’ Theorem in Problem-Solving
14:30 -
LO4: Explore Discrete Random Variables and their Expected values
11:01 -
LO5: Knowledge Check
-
Topic 8: Advanced Counting Techniques
03:01 -
LO1: Discuss Advanced Counting Techniques
07:26 -
LO2: Understand and Apply Recurrence Relations in Solving Counting Problems
13:59 -
LO3: Analyze Problems using the Principle of Inclusion-Exclusion
10:31 -
LO4: Solve Complex Counting Problems using Generating Functions
06:20 -
LO5: Knowledge Check
-
LO1: Discuss Relations and their Properties
09:05 -
LO2: Analyze Equivalence Relations and Partitions
10:01 -
Topic 9: Relations
02:50 -
LO3: Explore Partial Orderings and their Applications
07:08 -
LO4: Understand and Construct Hasse Diagrams
11:38 -
LO5: Knowledge Check
-
LO1: Understand the fundamental concepts of Graph Theory
10:58 -
LO2: Analyze Graph Connectivity
08:47 -
Topic 10: Graphs
02:49 -
LO3: Implement and understand Algorithms for Graph Traversal
17:06 -
LO4: Apply Graph Theory to Solve Problems in Network Flow
15:22 -
LO5: Knowledge Check
-
LO1: Understand the Properties of Trees
19:56 -
LO2: Explore and implement Algorithms Related to Trees
10:29 -
Topic 11: Trees
02:39 -
LO3: Analyze the Structure of Trees and their Applications
08:24 -
LO4: Knowledge Check
-
LO1: Understand the Fundamentals of Boolean Algebra
14:40 -
LO2: Simplify Boolean Expressions using Identities and Algebraic Manipulation
13:26 -
Topic 12: Boolean Algebra
03:06 -
LO3: Explore the Applications of Boolean Algebra in Digital Logic Design
19:11 -
LO4: Understand and Design Basic Combinational Circuits using Boolean Expressions
07:21 -
LO5: Knowledge Check
-
Topic 13: Modeling Computation
02:40 -
LO1: Understand the Basic models of Computation
15:51 -
LO2: Analyze the Complexity of Algorithms using Models of Computation
08:03 -
LO3: Apply Concepts of Formal Languages and Automata Theory in problem-solving
07:34 -
Module Based Quiz
-
LO4: Knowledge Check