This foundational course covers probability theory's principles and applications in computer science. It starts with combinatorics, then delves into key probability concepts and distributions, alongside analytical tools. The final part focuses on applying probability in machine learning through real-world cases, fostering practical skills and deeper comprehension for future careers.