ESP Biography



DYLAN HENDRICKSON, ESP Teacher




Major: EECS

College/Employer: MIT

Year of Graduation: G

Picture of Dylan Hendrickson

Brief Biographical Sketch:

Not Available.



Past Classes

  (Clicking a class title will bring you to the course's section of the corresponding course catalog)

M14040: Models of Computation in HSSP Summer 2020 (Jul. 11, 2020)
How can we talk about what computers can do mathematically? In this class, we'll talk about models of computation that attempt to capture the idea of algorithms, ranging from simple models to models that capture anything your favorite programming language can do. Using what we learn, we'll show that there are some things that you can't program, no matter how clever you are! Along the way, you'll get to play with models of computations by solving puzzles and designing algorithms.


M14055: The Gadget Framework: Which types of changing mazes can simulate each other? in HSSP Summer 2020 (Jul. 11, 2020)
This class will feel like solving a sequence of open-ended puzzles. You'll work with other students to solve these puzzles, and sometimes give mathematical arguments as to why they can't be solved. Imagine you're in a maze, but tunnels open and close based on your movement. For example, maybe there are two tunnels which can only be passed in one direction, and when you go across either one they both flip direction (we call this a "2-toggle"). Or maybe every time you go across a certain tunnel in either direction, another tunnel switches between open and closed (we call this "tripwire lock"). It's possible to put together several 2-toggles to construct something which behaves like a tripwire lock. It's also possible to use several tripwire locks to build a 2-toggle. In this class, we'll investigate which "gadgets" can simulate other gadgets. We'll play with lots of gadgets, including the 2-toggle and tripwire lock, and see what they can build. In some cases, we'll prove that certain gadgets can't simulate certain other gadgets. We might even find general-purpose simulations, showing that a particular gadget can simulate every possible gadget (or every gadget with some property). This will be a hands-on class, mostly focusing on you finding simulations for yourselves.


M13948: Ramsey Theory in Spark 2020 (Mar. 14 - 15, 2020)
How many people do you need to put in a room to make sure four of them are either all friends or all strangers? Why does anyone care about numbers like Graham's Number, which way are too big to have any physical relevance? Ramsey theory is the study of how particular structures always emerge in sufficiently large clusters of randomness. Learn the answers to these questions and more!


M13775: The Gadget Framework: Which types of changing mazes can simulate each other? in HSSP Spring 2020 (Feb. 29, 2020)
This class will feel like solving a sequence of open-ended puzzles. You'll work with other students to solve these puzzles, and sometimes give mathematical arguments as to why they can't be solved. Imagine you're in a maze, but tunnels open and close based on your movement. For example, maybe there are two tunnels which can only be passed in one direction, and when you go across either one they both flip direction (we call this a "2-toggle"). Or maybe every time you go across a certain tunnel in either direction, another tunnel switches between open and closed (we call this "tripwire lock"). It's possible to put together several 2-toggles to construct something which behaves like a tripwire lock. It's also possible to use several tripwire locks to build a 2-toggle. In this class, we'll investigate which "gadgets" can simulate other gadgets. We'll play with lots of gadgets, including the 2-toggle and tripwire lock, and see what they can build. In some cases, we'll prove that certain gadgets can't simulate certain other gadgets. We might even find general-purpose simulations, showing that a particular gadget can simulate every possible gadget (or every gadget with some property). This will be a hands-on class, mostly focusing on you finding simulations for yourselves.


M13251: Computability Theory in Splash 2019 (Nov. 23 - 24, 2019)
Computers can do a lot of things. If you've ever programmed, you might think you can theoretically write a program that does anything. But it turns out there are things you can't program, no matter how clever you are! In this class, we'll see examples of such things and proofs of why they can't be computed.


M13254: Hydras, Chess, and Ordinal Numbers in Splash 2019 (Nov. 23 - 24, 2019)
What happens when you keep counting past infinity, and never stop? You discover the ordinal numbers! We'll introduce this exciting tool and use it to understand some more finite problems.


M13115: The Computational Complexity of Games and Puzzles in HSSP Summer 2019 (Jul. 07, 2019)
Every hear about P vs. NP? Did you know that this fundamental mathematics question also relates to games and puzzles? This class will explore how the mathematics of computational complexity relates to games and puzzles.


M12802: Surreal Numbers and Games in Spark 2019 (Mar. 16 - 17, 2019)
Learn how to play Hackenbush, a simple game that leads to interesting mathematics. After getting some practice playing, we'll see how the game inspires the surreal numbers, a system of numbers that allows us to to play with infinity in an unusual way.


M13024: Cellular Automata in Spark 2019 (Mar. 16 - 17, 2019)
A cellular automaton is a grid of cells that changes according to simple rules, but can have complicated behavior. The most famous one is Conway's Game of Life. We'll discuss 1- and 2- dimensional automata, look at cool patterns they can produce, and see just how powerful they can be.


M12362: Ordinals and Hydras in Splash 2018 (Nov. 17 - 18, 2018)
What happens when you start counting and don't stop? Can a hydra be beaten? What do hydras even have to do with math? Come to this class to find out!


M12363: Computability Theory in Splash 2018 (Nov. 17 - 18, 2018)
Computers can do a lot of things. If you've ever programmed, you might think you can theoretically write a program that does anything. But it turns out there are things you can't program, no matter how clever you are! In this class, we'll see examples of such things and proofs of why they can't be computed.


M12391: Ramsey Theory in Splash 2018 (Nov. 17 - 18, 2018)
How many people do you need to put in a room to make sure four of them are either all friends or all not friends? Why does anyone care about numbers like Graham's Number, which way are too big to have any physical relevance? Ramsey theory is the study of how particular structures always emerge in sufficiently large clusters of randomness. Learn the answers to these questions and more!


M12421: BIG Numbers in Splash 2018 (Nov. 17 - 18, 2018)
What's the biggest number you know? 6? A million? A googolplex? In this class, we'll talk about ways to describe way bigger numbers.


M12560: The Computational Complexity of Games and Puzzles in Splash 2018 (Nov. 17 - 18, 2018)
Every hear about P vs. NP? Did you know that this fundamental mathematics question also relates to games and puzzles? This class will explore how the mathematics of computational complexity relates to games and puzzles.


W12756: Ask me anything about math! in Splash 2018 (Nov. 17 - 18, 2018)
Want to learn more about math you've learned in school? Noticed a pattern you're interested in finding more about? One of your Splash teachers mentioned something that sounds cool? Come with your questions, and I'll try to answer them! If nobody has any questions, I'll probably just talk about set theory or something for an hour.


M12287: Computational Complexity Theory: Proving Puzzles Hard in HSSP Summer 2018 (Jun. 30, 2018)
Have you ever wondered exactly how hard puzzles like Sudoku or Rush Hour are? In a certain sense, most puzzles like these are "as hard as they can possibly be": Sudoku is "NP-complete" and Rush Hour is "PSPACE-complete." In this class, we'll talk about what it means for something to be hard (including defining the terms above), and build a toolkit that lets us prove problems hard. At the end of the class you should know how to look at a new kind of puzzle and determine how hard it is. This is related to the P vs NP problem, which you might have heard of, but we won't talk a lot about that in this class.


M12290: Quantum Computation in HSSP Summer 2018 (Jun. 30, 2018)
Ever wondered why people are so excited about quantum computers? In this class, we'll learn how to use quantum mechanics to perform computational tasks. We'll see examples of algorithms that solve problems faster than any known classical algorithm, such as Shor's factoring algorithm. We'll also see provably-secure quantum cryptography.


M12106: A Tour of Set Theory in HSSP Spring 2018 (Feb. 24, 2018)
We'll start by introducing sets and basic operations on them, and quickly move on to topics such as the ZF axioms, ordinal numbers, and the axiom of choice. This class will be hard and go fast, with each week relying heavily on previous weeks. Expect to participate in class and work on hard problems that require genuine creativity to solve.


P12120: Special Relativity in Spark 2018 (Mar. 17 - 18, 2018)
Come explore space and time, and see how the main ideas of special relativity can be derived from simple principles and some basic algebra! If we have time, we'll also talk about relativity "paradoxes" and how to resolve them.


W12131: Puzzles!!!! in Spark 2018 (Mar. 17 - 18, 2018)
You are given http://web.mit.edu/puzzle/www/2015/puzzle/rectangles/. You need to get an answer that is a word or phrase. What do you do? (Try it, and check the solution linked on the page.) Puzzles can be almost anything - you're given strange data and very few instructions, and you find a way to extract an answer from it. Come try puzzles from various puzzle hunts! Whether you're an expert puzzler or have never done a puzzle hunt, we'll have puzzles for you (and help if you get stuck)!


M12132: Surreal Numbers and Games in Spark 2018 (Mar. 17 - 18, 2018)
Learn how to play Hackenbush, a simple game that leads to interesting mathematics. After getting some practice playing, we'll see how the game inspires the surreal numbers, a system of numbers that allows us to to play with infinity in an unusual way.


M12167: Cellular Automata in Spark 2018 (Mar. 17 - 18, 2018)
A cellular automaton is a grid of cells that changes according to simple rules, but can have complicated behavior. The most famous one is Conway's Game of Life. We'll discuss 1- and 2- dimensional automata, look at cool patterns they can produce, and see just how powerful they can be.


M11595: Intro to Computability Theory in Splash 2017 (Nov. 18 - 19, 2017)
Computers can do a lot of things. If you've ever programmed, you might think you can theoretically write a program that does anything. But it turns out there are things you can't program, no matter how clever you are! You'll see some examples of these functions and learn more about what computers are actually capable of.


W11677: Puzzles!!!! in Splash 2017 (Nov. 18 - 19, 2017)
You are given http://web.mit.edu/puzzle/www/2015/puzzle/rectangles/. You need to get an answer that is a word or phrase. What do you do? (Try it, and check the solution linked on the page.) Puzzles can be almost anything - you're given strange data and very few instructions, and you find a way to extract an answer from it. Come try puzzles from MIT Mystery Hunt, the largest puzzle hunt in existence! Whether you're an expert puzzler or have never done a puzzle hunt, we'll have puzzles for you (and help if you get stuck)!


M11679: Lambda Calculus in Splash 2017 (Nov. 18 - 19, 2017)
λf.(λx.f(x x))(λx.f(x x)) What does that mean? Come to this class to find out! Lambda calculus is a minimal, inefficient, and hard-to-read, but still interesting and useful, programming language.


M11680: Ramsey Theory in Splash 2017 (Nov. 18 - 19, 2017)
How many people do you need to put in a room to make sure four of them are either all friends or all not friends? Why does anyone care about numbers like Graham's Number, which way are too big to have any physical relevance? Ramsey theory is the study of how particular structures always emerge in sufficiently large clusters of randomness. Learn the answers to these questions and more!


M11681: Ask me anything about math! in Splash 2017 (Nov. 18 - 19, 2017)
Want to learn more about math you've learned in school? Noticed a pattern you're interested in finding more about? One of your Splash teachers mentioned something that sounds cool? Come with your questions, and I'll try to answer them! If nobody has any questions, I'll probably just talk about set theory or something for an hour.


M11682: Ordinals and Hydras in Splash 2017 (Nov. 18 - 19, 2017)
What happens when you start counting and don't stop? Can a hydra be beaten? What do hydras even have to do with math? Come to this class to find out!


M11345: Cellular Automata in Spark 2017 (Mar. 11 - 12, 2017)
A cellular automaton is a grid of cells that changes according to simple rules, but can have complicated behavior. The most famous one is Conway's Game of Life. We'll discuss 1- and 2- dimensional automata, look at cool patterns they can produce, and see just how powerful they can be.


M11346: Ramsey Theory in Spark 2017 (Mar. 11 - 12, 2017)
How many people do you need to put in a room to make sure four of them are either all friends or all not friends? Why does anyone care about numbers like Graham's Number, which way are too big to have any physical relevance? Ramsey theory is the study of how particular structures always emerge in sufficiently large clusters of randomness. Learn the answers to these questions and more!


C11350: How to build with redstone in Spark 2017 (Mar. 11 - 12, 2017)
If you've looked at Minecraft builds on the internet, you've probably seen some pretty impressive contraptions people have made with redstone, ranging from piston doors to fully functional computers. We'll learn how to make these sorts of things, start from the basic blocks you can build with and combining them to make useful components. We'll talk about how redstone relates to the inner workings of real-life computers. You don't need a Minecraft account or any experience with the game, though having played Minecraft might help give some context to what we talk about.


M11235: Topology in HSSP Spring 2017 (Feb. 18, 2017)
Topology is a way to talk about points being close together and sequences converging. You probably have some idea of what this means in, say, the real numbers, but what can we say about closeness in other sets? This class will be very hard. I'm not going to stand at the board and lecture; instead, I'll provide you with some definitions and you'll solve problems and prove theorems, and then present them to each other. I'll be there to guide you along the way. If that sounds fun to you, great! If not, this probably isn't the best class for you to take.


C10801: How to build a computer in Splash 2016 (Nov. 19 - 20, 2016)
Learn about the inner workings of your computer! We'll look at bits and logic gates, and see how to perform computations using simple building blocks.


M10875: Intro to Computability Theory in Splash 2016 (Nov. 19 - 20, 2016)
Computers can do a lot of things. If you've ever programmed, you might think you can theoretically write a program that does anything. But it turns out there are things you can't program, no matter how clever you are! You'll see some examples of these functions and learn more about what computers are actually capable of.


W10937: Food tongue 101 in Splash 2016 (Nov. 19 - 20, 2016)
Come learn food tongue, a language in which every word is a food, by immersion!


M11106: Counting Beyond Infinity in Splash 2016 (Nov. 19 - 20, 2016)
What if you started counting and never stopped? In this class, we'll talk about ordinals, the numbers you get by doing this. We'll see many types of infinity and do strange and exciting things with them!


M10535: How to Win Games in HSSP Summer 2016 (Jul. 10, 2016)
We play a game, starting with 100 berries. On your turn, you eat between 1 and 5 berries, and the person who eats the last person wins. What's the best strategy? We'll talk about a large class of games like this (called impartial games), and learn how to win all of them. If there's time at the end we'll talk briefly about partisan games, where the legal moves are different for different players.


M10397: mathmathmathmathmathmath in Spark 2016 (Mar. 12 - 13, 2016)
There's so much awesome math to do that we couldn't pick just one thing to teach. Join us for a class of small snippets of cool math! Bring your own questions or be ready to choose your favorite topics from our list, and we'll see how much cool math we can show you in 50 minutes!


M10439: Cellular Automata in Spark 2016 (Mar. 12 - 13, 2016)
A cellular automaton is a grid of cells that changes according to simple rules, but can have complicated behavior. The most famous one is Conway's Game of Life. We'll discuss 1- and 2- dimensional automata, look at cool patterns they can produce, and see just how powerful they can be.


M9717: How Mathematicians Get Dates in Splash 2015 (Nov. 21 - 22, 2015)
Suppose you have N men and N women, and each of them submits preference rankings for the other set of people. It's your job to pair them up to go to a dance, but you need to make sure that nobody wants to cheat: make sure no pair of people likes each other better than their partners. Can you always make it work? What if the women bribe you to care more about their preferences? What if the situation isn't so ridiculously heteronormative? Aah! Matching is hard!


W9718: Learn Food Tongue by Immersion in Splash 2015 (Nov. 21 - 22, 2015)
Mint-apple sauce food tongue. Pear spinach sauce food tongue. Pear wonton pasta-peach-sauce food tongue? Pear shrimp kumquat plantain mint-apple clam peach-sauce pear!


M9934: The Banach-Tarski Theorem in Splash 2015 (Nov. 21 - 22, 2015)
What's a good anagram for Banach-Tarski? Banach-Tarski Banach-Tarski. Come learn how to cut a ball into 5 pieces and reassemble them into two balls of the same size! All you need is an infinitely sharp knife, an infinitely divisible ball, and the Axiom of Choice. Disclaimer: the Banach-Tarski Theorem, despite popular belief, is not actually a paradox.