Introduction to Computation Theory
Offered By: Santa Fe Institute via Complexity Explorer
Course Description
Overview
Introduction to Computation Theory is an overview of some basic principles of computation and computational complexity, with an eye towards things that might actually be useful without becoming a researcher. Students will examine the formal mathematics for foundational computation proofs, as well as gain tools to analyze hard computational problems themselves.
Students who take this course should have basic knowledge of the principles of graphs. Some tutorial material references linear algebra, but familiarity is not necessary. This tutorial uses proofs, and requires understandings of formal math notations.
Syllabus
- What is an algorithm?
- Absolute Limitations on Algorithms
- Resource limitations on algorithms
- Types of Algorithms
- P versus NP
- An algorithmic perspective on complex systems
- Algorithms for NP-hard problems in the real world
- Randomized algorithms and derandomization
- Homework
Taught by
Josh Grochow
Tags
Related Courses
Divide and Conquer, Sorting and Searching, and Randomized AlgorithmsStanford University via Coursera Unpredictable? Randomness, Chance and Free Will
National University of Singapore via Coursera Biology Meets Programming: Bioinformatics for Beginners
University of California, San Diego via Coursera Finding Hidden Messages in DNA (Bioinformatics I)
University of California, San Diego via Coursera Algorithms for Big Data
Indian Institute of Technology Madras via Swayam