# Tetris is Hard: An Introduction to P vs NP

Save this PDF as:

Size: px
Start display at page:

Download "Tetris is Hard: An Introduction to P vs NP"

## Transcription

1 Tetris is Hard: An Introduction to P vs NP Based on Tetris is Hard, Even to Approximate in COCOON 2003 by Erik D. Demaine (MIT) Susan Hohenberger (JHU) David Liben-Nowell (Carleton)

2 What s Your Problem? A language is a set of strings: PRIMES = {2, 3, 5, 7, 11, 13, 17, 19, 23,...} We are interested in the following kind of decision problem: Given x, is x PRIMES? How much harder does this question get as x gets larger? 1

3 The Tetris Problem So what do we mean by Tetris? Offline Tetris: get to see entire piece sequence in advance. Advanced level: the initial board is partially filled. TETRIS = { g, s : can play piece sequence s to clear entire gameboard g} g, s TETRIS: given a gameboard and a piece sequence, can we clear the entire board using the given sequence? 2

4 Instances of Decision Problems Is PRIMES? Is, TETRIS? How much harder does this get as the gameboard gets bigger? Find an algorithm A that decides if g, s TETRIS. Measure resources consumed by A. 3

5 Measuring Resource Usage How do we measure the resources consumed by A? Be pessimistic. Always consider the worst instance of a given size. Resources: time, space. Run A on all instances of size n on some computer. Graph n versus the amount of each resource consumed by A on the most consuming instance of size n x Polynomial Exponential 4

6 A Computer Theorist s Worldview Easy Computable Uncomputable Hard Is this number prime? Will 463 beat 363 s median on Quiz 3? Will Windows crash when I load this web page? Can I color this map with three colors? Are all the numbers in this list positive? 5

7 Complexity Classes A complexity class is a set of languages. A language L (PRIMES, TETRIS,...) is a member of the following complexity classes if there is an algorithm A... P PSPACE EXPTIME... deciding all questions x L in polynomial time. e.g., for every x, time taken by A(x) is 10 x 3. Games: JENGA... deciding all questions x L in polynomial space. Games: GO (in some countries), OTHELLO... deciding all questions x L in exponential time. Games: CHESS, CHECKERS 6

8 Complexity Hierarchy EXPTIME PSPACE Efficient Space P Efficient Time P PSPACE EXPTIME P EXPTIME 7

9 The Traveling Salesman Problem You re selling fair trade coffee beans. Start at Dean s Beans World Headquarters in Dublin. Visit (in any order): Long s Bookstore, 1610 High St, Cup of Joe, Easton Town Center, 446 Lane, Court House. Drop off the leftovers in Dublin. Can you do all deliveries in one hour? What order should you use? 8

10 The Naïve Solution to TSP The naïve method of solving TRAVELING-SALESMAN: List all possible orderings of the cities. Find the shortest ordering. Check if it requires under one hour. So TRAVELING-SALESMAN is in EXPTIME. 16 cities: more orderings than the size of the US national debt. 63 cities: more orderings than atoms in the known universe. Can we do better? 9

11 Can we solve TSP efficiently?? Nobody has been able to: give a faster solution to TRAVELING-SALESMAN. prove that TRAVELING-SALESMAN needs exponential time. So TRAVELING-SALESMAN might be in P! But notice: For a particular ordering of the coffeeshops, it s easy to check if the length of the trip is under one hour. (Just add up the times.) 10

12 Guess and Check Another way to measure the hardness of a language: Suppose I claim that x L (and give you an argument to try to convince you). How hard is it to check if my argument is right? For example, for TETRIS: given g, s I tell you all the moves m that I ll make in the game. You check if moves m clear the gameboard g using piece sequence s. 11

13 NP, continued A language L is in NP if I can give you an argument A and then you can check that A is right in polynomial time. NP: Nondeterministic Polynomial Time Nondeterminism: I give you an argument; you check it. For some games, like CHESS, the move sequence might be too long to check in polynomial time! Summary: L P can be decided quickly. L NP can be checked quickly. 12

14 Complexity Hierarchy EXPTIME Chess, Checkers PSPACE Go, Othello, Sokoban, Generalized Geography, Hex NP P Tetris, Mastermind, Minesweeper, Sliding Blocks, Traveling Salesman Jenga, I m Thinking of a Number P EXPTIME P NP PSPACE EXPTIME 13

15 P vs. NP We do not know which is true! NP P P P=NP One of the greatest unsolved problems in theoretical computer science (and all of mathematics!). Clay Mathematics Institute offers \$1 million for solution. Is it easier to verify a correct solution to a problem than it is to solve the problem from scratch? Huge impact on cryptography, airline scheduling, factory layout, UPS truck packing, drug design, etc., etc., etc., etc. 14

16 NP-completeness First major step on P vs. NP problem [Cook and Levin, 1970s]: NP P An NP-complete problem: 1. is in NP 2. is as hard as the hardest problem in NP. If we can quickly decide one NP-complete problem, then we can quickly decide them all. (P=NP) If any problem is in NP and not P, then every NP-complete problem is in NP and not P. (P NP) 15

17 Technique #1: Divine Inspiration Theorem [Cook/Levin]: SATISFIABILITY is NP-complete. 16

18 Technique #1: SAT is NP-complete SATISFIABILITY = { formulas φ : there is a way of setting the variables of φ so that φ is true } e.g., x ( x y) SATISFIABILITY. (set x := true and y := false) Theorem [Cook/Levin]: SATISFIABILITY is NP-complete. 16

19 Technique #2: Reduction A reduction f is a mapping from one problem to another. A f B x A if and only if f(x) B. f We re interested in efficient f. If there s a quick algorithm for B, then there s one for A. If there s no quick algorithm for A, then there s none for B. B is as hard as A 17

20 NP-Completeness Summary Theorem: SATISFIABILITY is NP-complete. Cook/Levin. Theorem: If: (1) A is NP-complete, (2) B is in NP, and (3) there is an efficient reduction from A to B then B is NP-complete. Karp. 18

21 Enough already! I came for the Tetris... To show that TETRIS is NP-complete: Define efficient mapping m from instances of known NP-Complete problem L to TETRIS. Show that if x L, then m(x) TETRIS. Show that if x/ L, then m(x) / TETRIS. 19

22 From 3-PARTITION to TETRIS 3-PARTITION = {sets of integers that can be separated into piles of three integers each, where each pile has the same sum} Theorem [Garey and Johnson]: 3-PARTITION is NP-complete. Our result: There is an efficient reduction from 3-PARTITION to TETRIS. 20

23 Our Reduction... Given integers a 1,...,a 3s and the target sum T for each pile: a 1 initiator: filler (a 1 times): terminator: 6T a 2 a 3s initiator: terminator: 6s +3 Finally: s,, and ( 3T 2 + 5). 21

24 Reminder: NP-Completeness To show that Tetris is NP-complete: Define efficient mapping m from instances of 3-PARTITION to TETRIS. Show that if x 3-PARTITION, then m(x) TETRIS. Show that if x/ 3-PARTITION, then m(x) / TETRIS. 22

25 For x L, we need m(x) TETRIS Yes means yes. If we have x 3-PARTITION, then need m(x) TETRIS. Pile the integers according to their 3-PARTITION piles.. 23

26 The yes case, continued Piles each have the same sum, so they have the same height: Each bucket is filled exactly to the top. Remaining pieces will exactly clear entire gameboard. 24

27 Reminder: NP-Completeness To show that TETRIS is NP-complete: Define efficient mapping m from instances of 3-PARTITION to TETRIS. Show that if x 3-PARTITION, then m(x) TETRIS. Show that if x/ 3-PARTITION, then m(x) / TETRIS. 25

28 Why this reduction? We want to make sure that no means no. can t clear any rows until the.... have to completely fill each bucket or it s all over. notches make it easy to get stuck. 26

29 For x/ L, we need m(x) / TETRIS No means no. Step #1: if you don t (or can t) make the moves from two slides ago, you get into one of the following configurations. Step #2: if you get into one of these, you re hosed. α not div. by 4 α 27

30 Reminder: NP-Completeness To show that Tetris is NP-complete: Define efficient mapping m from instances of 3-PARTITION to TETRIS. Show that if x 3-PARTITION, then m(x) TETRIS. Show that if x/ 3-PARTITION, then m(x) / TETRIS. Theorem: TETRIS is NP-complete. 28

31 Statement of Results Our results actually apply for some other Tetris questions, too: can we clear at least k rows? can we place at least p pieces without losing? can we place all pieces without filling a square at height h? can we achieve at least t tetrises? All of these are NP-complete. 29

32 Other Objectives and Inapproximability Can strengthen our results further: add a boatload of pieces to our sequence. Can get into (and clear) lower reservoir (using extra pieces) only if can clear the top using original. Choosing a large reservoir yields inapproximability results. 30

33 Other Work on Tetris Theorem: A (sufficiently long) alternating sequence of s and s will cause a loss. [Brzustowski/Burgiel] Implies that probability of a real Tetris game lasting infinitely long is zero (regardless of player s skill). On the Tetris gameboard that you know and love. (Our complexity results are as the gameboard grows.) 31

34 Conclusion and Open Questions Many interesting problems are NP-complete. (Traveling Salesman, Minesweeper, Tetris, Satisfiability,...) So what? Does P = NP? Is it easier to verify that a solution is correct than it is to come up with it from scratch? Games are interesting because they re hard (?) Easy way to make a million bucks: give an efficient algorithm for TETRIS! 32

35 Recap: Proving Membership in NP SATISFIABILITY = { formula φ : there is a way of setting the variables of φ so that φ is true } Certificate: assignment to variables Verifier: plugs in assignment and tests that φ is true 33

36 Recap: Proving Membership in NP SATISFIABILITY = { formula φ : there is a way of setting the variables of φ so that φ is true } Certificate: assignment a to variables Verifier: tests that φ is true with assignment a CLIQUE = { graph G and integer k : there is a clique of size k in G} Certificate: nodes in the clique C Verifier: tests that each node in C is connected to every other node in C 34

37 Recap: Optimization vs Decision SATISFIABILITY = { formula φ : there is a way of setting the variables of φ so that φ is true } Suppose P = NP. How can you find a satisfying assignment in polynomial time? 35

38 Recap: Optimization vs Decision CLIQUE = { graph G and integer k : there is a clique of size k in G} Suppose P = NP. How can you find a k-clique in polynomial time? 36

### A Working Knowledge of Computational Complexity for an Optimizer

A Working Knowledge of Computational Complexity for an Optimizer ORF 363/COS 323 Instructor: Amir Ali Ahmadi TAs: Y. Chen, G. Hall, J. Ye Fall 2014 1 Why computational complexity? What is computational

### NP-Completeness. CptS 223 Advanced Data Structures. Larry Holder School of Electrical Engineering and Computer Science Washington State University

NP-Completeness CptS 223 Advanced Data Structures Larry Holder School of Electrical Engineering and Computer Science Washington State University 1 Hard Graph Problems Hard means no known solutions with

### CSC 373: Algorithm Design and Analysis Lecture 16

CSC 373: Algorithm Design and Analysis Lecture 16 Allan Borodin February 25, 2013 Some materials are from Stephen Cook s IIT talk and Keven Wayne s slides. 1 / 17 Announcements and Outline Announcements

### Tutorial 8. NP-Complete Problems

Tutorial 8 NP-Complete Problems Decision Problem Statement of a decision problem Part 1: instance description defining the input Part 2: question stating the actual yesor-no question A decision problem

### NP-complete? NP-hard? Some Foundations of Complexity. Prof. Sven Hartmann Clausthal University of Technology Department of Informatics

NP-complete? NP-hard? Some Foundations of Complexity Prof. Sven Hartmann Clausthal University of Technology Department of Informatics Tractability of Problems Some problems are undecidable: no computer

### OHJ-2306 Introduction to Theoretical Computer Science, Fall 2012 8.11.2012

276 The P vs. NP problem is a major unsolved problem in computer science It is one of the seven Millennium Prize Problems selected by the Clay Mathematics Institute to carry a \$ 1,000,000 prize for the

### Introduction to Algorithms. Part 3: P, NP Hard Problems

Introduction to Algorithms Part 3: P, NP Hard Problems 1) Polynomial Time: P and NP 2) NP-Completeness 3) Dealing with Hard Problems 4) Lower Bounds 5) Books c Wayne Goddard, Clemson University, 2004 Chapter

### Page 1. CSCE 310J Data Structures & Algorithms. CSCE 310J Data Structures & Algorithms. P, NP, and NP-Complete. Polynomial-Time Algorithms

CSCE 310J Data Structures & Algorithms P, NP, and NP-Complete Dr. Steve Goddard goddard@cse.unl.edu CSCE 310J Data Structures & Algorithms Giving credit where credit is due:» Most of the lecture notes

### SIMS 255 Foundations of Software Design. Complexity and NP-completeness

SIMS 255 Foundations of Software Design Complexity and NP-completeness Matt Welsh November 29, 2001 mdw@cs.berkeley.edu 1 Outline Complexity of algorithms Space and time complexity ``Big O'' notation Complexity

### Lecture 7: NP-Complete Problems

IAS/PCMI Summer Session 2000 Clay Mathematics Undergraduate Program Basic Course on Computational Complexity Lecture 7: NP-Complete Problems David Mix Barrington and Alexis Maciel July 25, 2000 1. Circuit

### Computer Algorithms. NP-Complete Problems. CISC 4080 Yanjun Li

Computer Algorithms NP-Complete Problems NP-completeness The quest for efficient algorithms is about finding clever ways to bypass the process of exhaustive search, using clues from the input in order

### P versus NP, and More

1 P versus NP, and More Great Ideas in Theoretical Computer Science Saarland University, Summer 2014 If you have tried to solve a crossword puzzle, you know that it is much harder to solve it than to verify

### Introduction to Logic in Computer Science: Autumn 2006

Introduction to Logic in Computer Science: Autumn 2006 Ulle Endriss Institute for Logic, Language and Computation University of Amsterdam Ulle Endriss 1 Plan for Today Now that we have a basic understanding

### 1. Nondeterministically guess a solution (called a certificate) 2. Check whether the solution solves the problem (called verification)

Some N P problems Computer scientists have studied many N P problems, that is, problems that can be solved nondeterministically in polynomial time. Traditionally complexity question are studied as languages:

### Ian Stewart on Minesweeper

Ian Stewart on Minesweeper It's not often you can win a million dollars by analysing a computer game, but by a curious conjunction of fate, there's a chance that you might. However, you'll only pick up

### CAD Algorithms. P and NP

CAD Algorithms The Classes P and NP Mohammad Tehranipoor ECE Department 6 September 2010 1 P and NP P and NP are two families of problems. P is a class which contains all of the problems we solve using

### Complexity Theory. IE 661: Scheduling Theory Fall 2003 Satyaki Ghosh Dastidar

Complexity Theory IE 661: Scheduling Theory Fall 2003 Satyaki Ghosh Dastidar Outline Goals Computation of Problems Concepts and Definitions Complexity Classes and Problems Polynomial Time Reductions Examples

### Outline. NP-completeness. When is a problem easy? When is a problem hard? Today. Euler Circuits

Outline NP-completeness Examples of Easy vs. Hard problems Euler circuit vs. Hamiltonian circuit Shortest Path vs. Longest Path 2-pairs sum vs. general Subset Sum Reducing one problem to another Clique

### Complexity Classes P and NP

Complexity Classes P and NP MATH 3220 Supplemental Presentation by John Aleshunas The cure for boredom is curiosity. There is no cure for curiosity Dorothy Parker Computational Complexity Theory In computer

### Some Minesweeper Configurations

Some Minesweeper Configurations Richard Kaye School of Mathematics The University of Birmingham Birmingham B15 2TT RWKaye@bhamacuk http://webmatbhamacuk/rwkaye/ 31st May 2007 Contents 1 Introduction 2

### NP-Completeness and Cook s Theorem

NP-Completeness and Cook s Theorem Lecture notes for COM3412 Logic and Computation 15th January 2002 1 NP decision problems The decision problem D L for a formal language L Σ is the computational task:

### NP-Completeness I. Lecture 19. 19.1 Overview. 19.2 Introduction: Reduction and Expressiveness

Lecture 19 NP-Completeness I 19.1 Overview In the past few lectures we have looked at increasingly more expressive problems that we were able to solve using efficient algorithms. In this lecture we introduce

### Complexity Theory. Jörg Kreiker. Summer term 2010. Chair for Theoretical Computer Science Prof. Esparza TU München

Complexity Theory Jörg Kreiker Chair for Theoretical Computer Science Prof. Esparza TU München Summer term 2010 Lecture 8 PSPACE 3 Intro Agenda Wrap-up Ladner proof and time vs. space succinctness QBF

### ON THE COMPLEXITY OF THE GAME OF SET. {kamalika,pbg,dratajcz,hoeteck}@cs.berkeley.edu

ON THE COMPLEXITY OF THE GAME OF SET KAMALIKA CHAUDHURI, BRIGHTEN GODFREY, DAVID RATAJCZAK, AND HOETECK WEE {kamalika,pbg,dratajcz,hoeteck}@cs.berkeley.edu ABSTRACT. Set R is a card game played with a

### Why? A central concept in Computer Science. Algorithms are ubiquitous.

Analysis of Algorithms: A Brief Introduction Why? A central concept in Computer Science. Algorithms are ubiquitous. Using the Internet (sending email, transferring files, use of search engines, online

### Why Study NP- hardness. NP Hardness/Completeness Overview. P and NP. Scaling 9/3/13. Ron Parr CPS 570. NP hardness is not an AI topic

Why Study NP- hardness NP Hardness/Completeness Overview Ron Parr CPS 570 NP hardness is not an AI topic It s important for all computer scienhsts Understanding it will deepen your understanding of AI

### Theoretical Computer Science (Bridging Course) Complexity

Theoretical Computer Science (Bridging Course) Complexity Gian Diego Tipaldi A scenario You are a programmer working for a logistics company Your boss asks you to implement a program that optimizes the

### Lecture 2: Complexity Theory Review and Interactive Proofs

600.641 Special Topics in Theoretical Cryptography January 23, 2007 Lecture 2: Complexity Theory Review and Interactive Proofs Instructor: Susan Hohenberger Scribe: Karyn Benson 1 Introduction to Cryptography

### Quantum and Non-deterministic computers facing NP-completeness

Quantum and Non-deterministic computers facing NP-completeness Thibaut University of Vienna Dept. of Business Administration Austria Vienna January 29th, 2013 Some pictures come from Wikipedia Introduction

### Computational complexity theory

Computational complexity theory Goal: A general theory of the resources needed to solve computational problems What types of resources? Time What types of computational problems? decision problem Decision

### Diagonalization. Ahto Buldas. Lecture 3 of Complexity Theory October 8, 2009. Slides based on S.Aurora, B.Barak. Complexity Theory: A Modern Approach.

Diagonalization Slides based on S.Aurora, B.Barak. Complexity Theory: A Modern Approach. Ahto Buldas Ahto.Buldas@ut.ee Background One basic goal in complexity theory is to separate interesting complexity

### Lecture 19: Introduction to NP-Completeness Steven Skiena. Department of Computer Science State University of New York Stony Brook, NY 11794 4400

Lecture 19: Introduction to NP-Completeness Steven Skiena Department of Computer Science State University of New York Stony Brook, NY 11794 4400 http://www.cs.sunysb.edu/ skiena Reporting to the Boss Suppose

### The Classes P and NP

The Classes P and NP We now shift gears slightly and restrict our attention to the examination of two families of problems which are very important to computer scientists. These families constitute the

### Offline 1-Minesweeper is NP-complete

Offline 1-Minesweeper is NP-complete James D. Fix Brandon McPhail May 24 Abstract We use Minesweeper to illustrate NP-completeness proofs, arguments that establish the hardness of solving certain problems.

### Lecture 30: NP-Hard Problems [Fa 14]

[I]n his short and broken treatise he provides an eternal example not of laws, or even of method, for there is no method except to be very intelligent, but of intelligence itself swiftly operating the

### WHAT ARE MATHEMATICAL PROOFS AND WHY THEY ARE IMPORTANT?

WHAT ARE MATHEMATICAL PROOFS AND WHY THEY ARE IMPORTANT? introduction Many students seem to have trouble with the notion of a mathematical proof. People that come to a course like Math 216, who certainly

### The Theory of Tetris

The Theory of Tetris Hendrik Jan Hoogeboom and Walter A. Kosters Leiden Institute of Advanced Computer Science Universiteit Leiden, The Netherlands {hoogeboo,kosters}@liacs.nl 1 Introduction Any algorithm

### CMSC 858F: Algorithmic Lower Bounds Fall 2014 Puzzles and Reductions from 3-Partition

CMSC 858F: Algorithmic Lower Bounds Fall 2014 Puzzles and Reductions from 3-Partition Instructor: Mohammad T. Hajiaghayi Scribe: Thomas Pensyl September 9, 2014 1 Overview In this lecture, we first examine

### ! X is a set of strings. ! Instance: string s. ! Algorithm A solves problem X: A(s) = yes iff s! X.

Decision Problems 8.2 Definition of NP Decision problem. X is a set of strings. Instance: string s. Algorithm A solves problem X: A(s) = yes iff s X. Polynomial time. Algorithm A runs in polytime if for

### Reductions & NP-completeness as part of Foundations of Computer Science undergraduate course

Reductions & NP-completeness as part of Foundations of Computer Science undergraduate course Alex Angelopoulos, NTUA January 22, 2015 Outline Alex Angelopoulos (NTUA) FoCS: Reductions & NP-completeness-

### Introduction to computer science

Introduction to computer science Michael A. Nielsen University of Queensland Goals: 1. Introduce the notion of the computational complexity of a problem, and define the major computational complexity classes.

### Chapter 1. NP Completeness I. 1.1. Introduction. By Sariel Har-Peled, December 30, 2014 1 Version: 1.05

Chapter 1 NP Completeness I By Sariel Har-Peled, December 30, 2014 1 Version: 1.05 "Then you must begin a reading program immediately so that you man understand the crises of our age," Ignatius said solemnly.

### Induction. Margaret M. Fleck. 10 October These notes cover mathematical induction and recursive definition

Induction Margaret M. Fleck 10 October 011 These notes cover mathematical induction and recursive definition 1 Introduction to induction At the start of the term, we saw the following formula for computing

### COMS4236: Introduction to Computational Complexity. Summer 2014

COMS4236: Introduction to Computational Complexity Summer 2014 Mihalis Yannakakis Lecture 17 Outline conp NP conp Factoring Total NP Search Problems Class conp Definition of NP is nonsymmetric with respect

### Algorithms and Complexity for Puzzles

Algorithms and Complexity for Puzzles From classic to current & future issues in Theoretical Computer Science Ryuhei Uehara Japan Advanced Institute of Science and Technology uehara@jaist.ac.jp http://www.jaist.ac.jp/~uehara

### MINI LESSON. Lesson 5b Solving Quadratic Equations

MINI LESSON Lesson 5b Solving Quadratic Equations Lesson Objectives By the end of this lesson, you should be able to: 1. Determine the number and type of solutions to a QUADRATIC EQUATION by graphing 2.

### Probability and Statistics Prof. Dr. Somesh Kumar Department of Mathematics Indian Institute of Technology, Kharagpur

Probability and Statistics Prof. Dr. Somesh Kumar Department of Mathematics Indian Institute of Technology, Kharagpur Module No. #01 Lecture No. #15 Special Distributions-VI Today, I am going to introduce

### Boulder Dash is NP hard

Boulder Dash is NP hard Marzio De Biasi marziodebiasi [at] gmail [dot] com December 2011 Version 0.01:... now the difficult part: is it NP? Abstract Boulder Dash is a videogame created by Peter Liepa and

### Quantum Monte Carlo and the negative sign problem

Quantum Monte Carlo and the negative sign problem or how to earn one million dollar Matthias Troyer, ETH Zürich Uwe-Jens Wiese, Universität Bern Complexity of many particle problems Classical 1 particle:

### Mathematical induction & Recursion

CS 441 Discrete Mathematics for CS Lecture 15 Mathematical induction & Recursion Milos Hauskrecht milos@cs.pitt.edu 5329 Sennott Square Proofs Basic proof methods: Direct, Indirect, Contradiction, By Cases,

### Guessing Game: NP-Complete?

Guessing Game: NP-Complete? 1. LONGEST-PATH: Given a graph G = (V, E), does there exists a simple path of length at least k edges? YES 2. SHORTEST-PATH: Given a graph G = (V, E), does there exists a simple

### NP-completeness and the real world. NP completeness. NP-completeness and the real world (2) NP-completeness and the real world

-completeness and the real world completeness Course Discrete Biological Models (Modelli Biologici Discreti) Zsuzsanna Lipták Imagine you are working for a biotech company. One day your boss calls you

### Measuring Rationality with the Minimum Cost of Revealed Preference Violations. Mark Dean and Daniel Martin. Online Appendices - Not for Publication

Measuring Rationality with the Minimum Cost of Revealed Preference Violations Mark Dean and Daniel Martin Online Appendices - Not for Publication 1 1 Algorithm for Solving the MASP In this online appendix

### An Exact Algorithm for Steiner Tree Problem on Graphs

International Journal of Computers, Communications & Control Vol. I (2006), No. 1, pp. 41-46 An Exact Algorithm for Steiner Tree Problem on Graphs Milan Stanojević, Mirko Vujošević Abstract: The paper

### On the Relationship between Classes P and NP

Journal of Computer Science 8 (7): 1036-1040, 2012 ISSN 1549-3636 2012 Science Publications On the Relationship between Classes P and NP Anatoly D. Plotnikov Department of Computer Systems and Networks,

### The P versus NP Solution

The P versus NP Solution Frank Vega To cite this version: Frank Vega. The P versus NP Solution. 2015. HAL Id: hal-01143424 https://hal.archives-ouvertes.fr/hal-01143424 Submitted on 17 Apr

### Complexity and Completeness of Finding Another Solution and Its Application to Puzzles

yato@is.s.u-tokyo.ac.jp seta@is.s.u-tokyo.ac.jp Π (ASP) Π x s x s ASP Ueda Nagao n n-asp parsimonious ASP ASP NP Complexity and Completeness of Finding Another Solution and Its Application to Puzzles Takayuki

### Sowing Games JEFF ERICKSON

Games of No Chance MSRI Publications Volume 29, 1996 Sowing Games JEFF ERICKSON Abstract. At the Workshop, John Conway and Richard Guy proposed the class of sowing games, loosely based on the ancient African

### Revised Version of Chapter 23. We learned long ago how to solve linear congruences. ax c (mod m)

Chapter 23 Squares Modulo p Revised Version of Chapter 23 We learned long ago how to solve linear congruences ax c (mod m) (see Chapter 8). It s now time to take the plunge and move on to quadratic equations.

### NSM100 Introduction to Algebra Chapter 5 Notes Factoring

Section 5.1 Greatest Common Factor (GCF) and Factoring by Grouping Greatest Common Factor for a polynomial is the largest monomial that divides (is a factor of) each term of the polynomial. GCF is the

### Near Optimal Solutions

Near Optimal Solutions Many important optimization problems are lacking efficient solutions. NP-Complete problems unlikely to have polynomial time solutions. Good heuristics important for such problems.

### 8 Primes and Modular Arithmetic

8 Primes and Modular Arithmetic 8.1 Primes and Factors Over two millennia ago already, people all over the world were considering the properties of numbers. One of the simplest concepts is prime numbers.

### Million Dollar Mathematics!

Million Dollar Mathematics! Alissa S. Crans Loyola Marymount University Southern California Undergraduate Math Day University of California, San Diego April 30, 2011 This image is from the Wikipedia article

### Calculus for Middle School Teachers. Problems and Notes for MTHT 466

Calculus for Middle School Teachers Problems and Notes for MTHT 466 Bonnie Saunders Fall 2010 1 I Infinity Week 1 How big is Infinity? Problem of the Week: The Chess Board Problem There once was a humble

### Notes on NP Completeness

Notes on NP Completeness Rich Schwartz November 10, 2013 1 Overview Here are some notes which I wrote to try to understand what NP completeness means. Most of these notes are taken from Appendix B in Douglas

### CPSC 211 Data Structures & Implementations (c) Texas A&M University [ 313]

CPSC 211 Data Structures & Implementations (c) Texas A&M University [ 313] File Structures A file is a collection of data stored on mass storage (e.g., disk or tape) Why on mass storage? too big to fit

### Alex, I will take congruent numbers for one million dollars please

Alex, I will take congruent numbers for one million dollars please Jim L. Brown The Ohio State University Columbus, OH 4310 jimlb@math.ohio-state.edu One of the most alluring aspectives of number theory

### What s next? Reductions other than kernelization

What s next? Reductions other than kernelization Dániel Marx Humboldt-Universität zu Berlin (with help from Fedor Fomin, Daniel Lokshtanov and Saket Saurabh) WorKer 2010: Workshop on Kernelization Nov

### MATH 289 PROBLEM SET 1: INDUCTION. 1. The induction Principle The following property of the natural numbers is intuitively clear:

MATH 89 PROBLEM SET : INDUCTION The induction Principle The following property of the natural numbers is intuitively clear: Axiom Every nonempty subset of the set of nonnegative integers Z 0 = {0,,, 3,

### WRITING PROOFS. Christopher Heil Georgia Institute of Technology

WRITING PROOFS Christopher Heil Georgia Institute of Technology A theorem is just a statement of fact A proof of the theorem is a logical explanation of why the theorem is true Many theorems have this

### Cloud Computing is NP-Complete

Working Paper, February 2, 20 Joe Weinman Permalink: http://www.joeweinman.com/resources/joe_weinman_cloud_computing_is_np-complete.pdf Abstract Cloud computing is a rapidly emerging paradigm for computing,

### Factoring & Primality

Factoring & Primality Lecturer: Dimitris Papadopoulos In this lecture we will discuss the problem of integer factorization and primality testing, two problems that have been the focus of a great amount

### Theoretical Computer Science Bridging Course - Introduction / General Info. Summer Term 2016 Fabian Kuhn

Theoretical Computer Science Bridging Course - Introduction / General Info Summer Term 2016 Fabian Kuhn About the Course Topics Foundations of theoretical computer science Introduction to logic No lectures

### CHOOSING THE BEST HEURISTIC FOR A NP-PROBLEM

CHOOSING THE BEST HEURISTIC FOR A NP-PROBLEM Thesis submitted in partial fulfillment of the requirements for the award of Degree of Master of Engineering in Computer Science and Engineering Thapar University,

### Chapter 6 TRAVELLING SALESMAN PROBLEM

98 hapter 6 TRVLLING SLSMN PROLM 6.1 Introduction The Traveling Salesman Problem (TSP) is a problem in combinatorial optimization studied in operations research and theoretical computer science. Given

### Welcome to... Problem Analysis and Complexity Theory 716.054, 3 VU

Welcome to... Problem Analysis and Complexity Theory 716.054, 3 VU Birgit Vogtenhuber Institute for Software Technology email: bvogt@ist.tugraz.at office hour: Tuesday 10:30 11:30 slides: http://www.ist.tugraz.at/pact.html

### MATHEMATICS: CONCEPTS, AND FOUNDATIONS Vol. III - Logic and Computer Science - Phokion G. Kolaitis

LOGIC AND COMPUTER SCIENCE Phokion G. Kolaitis Computer Science Department, University of California, Santa Cruz, CA 95064, USA Keywords: algorithm, Armstrong s axioms, complete problem, complexity class,

### CoNP and Function Problems

CoNP and Function Problems conp By definition, conp is the class of problems whose complement is in NP. NP is the class of problems that have succinct certificates. conp is therefore the class of problems

### Lecture 13 - Basic Number Theory.

Lecture 13 - Basic Number Theory. Boaz Barak March 22, 2010 Divisibility and primes Unless mentioned otherwise throughout this lecture all numbers are non-negative integers. We say that A divides B, denoted

### Tetris: Experiments with the LP Approach to Approximate DP

Tetris: Experiments with the LP Approach to Approximate DP Vivek F. Farias Electrical Engineering Stanford University Stanford, CA 94403 vivekf@stanford.edu Benjamin Van Roy Management Science and Engineering

### 2.5 Zeros of a Polynomial Functions

.5 Zeros of a Polynomial Functions Section.5 Notes Page 1 The first rule we will talk about is Descartes Rule of Signs, which can be used to determine the possible times a graph crosses the x-axis and

### Induction Problems. Tom Davis November 7, 2005

Induction Problems Tom Davis tomrdavis@earthlin.net http://www.geometer.org/mathcircles November 7, 2005 All of the following problems should be proved by mathematical induction. The problems are not necessarily

### Chapter. NP-Completeness. Contents

Chapter 13 NP-Completeness Contents 13.1 P and NP......................... 593 13.1.1 Defining the Complexity Classes P and NP...594 13.1.2 Some Interesting Problems in NP.......... 597 13.2 NP-Completeness....................

### Some Notes on Taylor Polynomials and Taylor Series

Some Notes on Taylor Polynomials and Taylor Series Mark MacLean October 3, 27 UBC s courses MATH /8 and MATH introduce students to the ideas of Taylor polynomials and Taylor series in a fairly limited

### There are 8000 registered voters in Brownsville, and 3 8. of these voters live in

Politics and the political process affect everyone in some way. In local, state or national elections, registered voters make decisions about who will represent them and make choices about various ballot

### The Hardness of the Lemmings Game, or Oh no, more NP-Completeness Proofs

The Hardness of the Lemmings Game, or Oh no, more NP-Completeness Proofs Graham Cormode Abstract In the computer game Lemmings, the player must guide a tribe of green-haired lemming creatures to safety,

### The Challenger-Solver game: Variations on the theme of P =?NP

The Challenger-Solver game: Variations on the theme of P =?NP Yuri Gurevich Electrical Engineering and Computer Science Department University of Michigan, Ann Arbor, MI 48109, U.S.A. Logic in Computer

### PUTNAM TRAINING POLYNOMIALS. Exercises 1. Find a polynomial with integral coefficients whose zeros include 2 + 5.

PUTNAM TRAINING POLYNOMIALS (Last updated: November 17, 2015) Remark. This is a list of exercises on polynomials. Miguel A. Lerma Exercises 1. Find a polynomial with integral coefficients whose zeros include

### New Zealand Mathematical Olympiad Committee. Induction

New Zealand Mathematical Olympiad Committee Induction Chris Tuffley 1 Proof by dominoes Mathematical induction is a useful tool for proving statements like P is true for all natural numbers n, for example

### Introduction to Algorithms Review information for Prelim 1 CS 4820, Spring 2010 Distributed Wednesday, February 24

Introduction to Algorithms Review information for Prelim 1 CS 4820, Spring 2010 Distributed Wednesday, February 24 The final exam will cover seven topics. 1. greedy algorithms 2. divide-and-conquer algorithms

### One last point: we started off this book by introducing another famously hard search problem:

S. Dasgupta, C.H. Papadimitriou, and U.V. Vazirani 261 Factoring One last point: we started off this book by introducing another famously hard search problem: FACTORING, the task of finding all prime factors

### Informatique Fondamentale IMA S8

Informatique Fondamentale IMA S8 Cours 4 : graphs, problems and algorithms on graphs, (notions of) NP completeness Laure Gonnord http://laure.gonnord.org/pro/teaching/ Laure.Gonnord@polytech-lille.fr Université

### Final Exam - Comments

University of Virginia - cs3102: Theory of Computation Spring 2010 Final Exam - Comments Problem 1: Definitions. (Average 7.2 / 10) For each term, provide a clear, concise, and precise definition from

### Mathematical Induction

Mathematical Induction Victor Adamchik Fall of 2005 Lecture 2 (out of three) Plan 1. Strong Induction 2. Faulty Inductions 3. Induction and the Least Element Principal Strong Induction Fibonacci Numbers

### 2.3 Scheduling jobs on identical parallel machines

2.3 Scheduling jobs on identical parallel machines There are jobs to be processed, and there are identical machines (running in parallel) to which each job may be assigned Each job = 1,,, must be processed

### The Taxman Game. Robert K. Moniot September 5, 2003

The Taxman Game Robert K. Moniot September 5, 2003 1 Introduction Want to know how to beat the taxman? Legally, that is? Read on, and we will explore this cute little mathematical game. The taxman game

### p 2 1 (mod 6) Adding 2 to both sides gives p (mod 6)

.9. Problems P10 Try small prime numbers first. p p + 6 3 11 5 7 7 51 11 13 Among the primes in this table, only the prime 3 has the property that (p + ) is also a prime. We try to prove that no other