Skip to content

CS103: Mathematical Foundations of Computing ​

Course Overview ​

University: Stanford
Instructor: Keith Schwarz
Status: Not Started
Progress: 0/32 lectures

Learn to reason formally about computationβ€”proofs, logic, and computability.

Resources ​

πŸ“Ί Stanford CS103 Playlist
🌐 Course Website
πŸ“š Course Materials

Key Topics ​

  • Mathematical logic and formal reasoning
  • Set theory and functions
  • Proofs and proof techniques
  • Graph theory
  • Formal languages and automata
  • Computability and the Turing machine
  • Decidability and undecidability
  • Complexity basics

Why This Matters ​

This course teaches you the formal language of computer science. You'll learn:

  • Logic: How to reason precisely about correctness
  • Computability: What can and cannot be computed
  • Proofs: How to verify claims rigorously
  • Automata: The foundation of compilers and parsing

Learning Goals ​

By the end of this course, you should be able to:

  • Write clear, rigorous mathematical proofs
  • Understand formal languages and automata
  • Reason about computability and undecidability
  • Apply logic to verify program correctness
  • Understand the limits of computation

Study Plan ​

Estimated Time: 5-7 hours/week for 10-12 weeks

  • Lectures: ~3 hours/week
  • Problem Sets: ~3-4 hours/week
  • Reading: ~1 hour/week

Daily Notes ​

Week 1: Logic & Proofs ​

  • [ ] Lecture 1: Introduction
  • [ ] Lecture 2: Logic
  • [ ] Problem Set 1

Problem Sets ​


Key Concepts ​


Key Takeaways ​


[← Back to Spring Quarter](Online Studying/CS - Stanford, MIT, Berkley/Year 1/Spring Quarter/index.md) | Next Course: Discrete Math β†’