Powerpoint Templates Page 1 Powerpoint Templates Impossible Math Problems (or should we say, undecidable) Math Club 4/16/2012.

Slides:



Advertisements
Similar presentations
Basics of Recursion Programming with Recursion
Advertisements

Chapter 4 - Control Statements
David Evans cs302: Theory of Computation University of Virginia Computer Science Lecture 17: ProvingUndecidability.
CS211 Problems: unsolvable, unfeasible and unsolved Topic 2: Halting problem.
David Evans CS150: Computer Science University of Virginia Computer Science Lecture 26: Proving Uncomputability Visualization.
Lecture 19. Reduction: More Undecidable problems
CS 461 – Nov. 9 Chomsky hierarchy of language classes –Review –Let’s find a language outside the TM world! –Hints: languages and TM are countable, but.
Hard problems November Administrivia Ps 8 –Handed out Tuesday (12/4) –Due Tuesday (12/11) or Tuesday (12/18) your choice Ps 9 –Handed out Thursday.
Limitations. Limitations of Computation Hardware precision Hardware precision Software - we’re human Software - we’re human Problems Problems –complex.
CS0004: Introduction to Programming Repetition – Do Loops.
CSE115/ENGR160 Discrete Mathematics 02/28/12
Nathan Brunelle Department of Computer Science University of Virginia Theory of Computation CS3102 – Spring 2014 A tale.
Prof. Busch - LSU1 Decidable Languages. Prof. Busch - LSU2 Recall that: A language is Turing-Acceptable if there is a Turing machine that accepts Also.
CPSC 411, Fall 2008: Set 12 1 CPSC 411 Design and Analysis of Algorithms Set 12: Undecidability Prof. Jennifer Welch Fall 2008.
Fall 2003Costas Busch - RPI1 Decidability. Fall 2003Costas Busch - RPI2 Recall: A language is decidable (recursive), if there is a Turing machine (decider)
Fall 2004COMP 3351 The Chomsky Hierarchy. Fall 2004COMP 3352 Non-recursively enumerable Recursively-enumerable Recursive Context-sensitive Context-free.
Complexity Issues Mark Allen Weiss: Data Structures and Algorithm Analysis in Java Lydia Sinapova, Simpson College.
Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)
Prof. Busch - LSU1 Undecidable Problems (unsolvable problems)
Halting Problem. Background - Halting Problem Common error: Program goes into an infinite loop. Wouldn’t it be nice to have a tool that would warn us.
04/25/13 Halting Problem Discrete Structures (CS 173) Derek Hoiem, University of Illinois 1
Infinity is forever, you could count for ever and never reach infinity. There are various types of infinity and this presentation will explain some described.
Python – Part 4 Conditionals and Recursion. Modulus Operator Yields the remainder when first operand is divided by the second. >>>remainder=7%3 >>>print.
Cs3102: Theory of Computation Class 18: Proving Undecidability Spring 2010 University of Virginia David Evans.
CSE 311 Foundations of Computing I Lecture 30 Computability: Other Undecidable Problems Autumn 2012 CSE 3111.
An Introduction to Python Programming Dr. Mark Goadrich Centenary College of Louisiana NWLAPCUG - May 15th 2008.
Logic Structure - focus on looping Please use speaker notes for additional information!
1 Proof Strategies CS/APMA 202 Rosen section 3.1 Aaron Bloomfield.
File Input and Output in C++. Keyboard and Screen I/O #include cin (of type istream) cout (of type ostream) Keyboard Screen executing program input data.
1 L= { u u R where u  {a, b}* } Last class we designed a TM which accepts this language (that is, it halts if the input is in L and hangs or computes.
Halting Problem Introduction to Computing Science and Programming I.
Halting Problem and TSP Wednesday, Week 8. Background - Halting Problem Common error: Program goes into an infinite loop. Wouldn’t it be nice to have.
1 Give the machine schema of a TM which when started like this: (q 0, #w[#]) for some string w in {a, b}* halts like this: (h, #001[#])
Conditional Loops CSIS 1595: Fundamentals of Programming and Problem Solving 1.
CS 3813: Introduction to Formal Languages and Automata Chapter 12 Limits of Algorithmic Computation These class notes are based on material from our textbook,
Hints on debugging
1 Turing’s Thesis. 2 Turing’s thesis: Any computation carried out by mechanical means can be performed by a Turing Machine (1930)
More Python!. Lists, Variables with more than one value Variables can point to more than one value at a time. The simplest way to do this is with a List.
Russell’s Paradox and the Halting Problem Lecture 24 Section 5.4 Wed, Feb 23, 2005.
SNU OOPSLA Lab. 1 Great Ideas of CS with Java Part 1 WWW & Computer programming in the language Java Ch 1: The World Wide Web Ch 2: Watch out: Here comes.
Structured Programming The Basics. Control structures They control the order of execution What order statements will be done in, or whether they will.
1 Announcements: There is no problem of the day today (handing in your assignment will be used to indicate attendance so please hand in a sheet with your.
CSE 311 Foundations of Computing I Lecture 28 Computability: Other Undecidable Problems Autumn 2011 CSE 3111.
Introduction to Computing Concepts Note Set 14. What if… You had to print “I love Java” to the screen 125 times. How? 125 lines of ▫ System.out.println(“I.
Very Hard Problems I am so not kidding about this. Please grab a handout.
ECE 250 Algorithms and Data Structures Douglas Wilhelm Harder, M.Math. LEL Department of Electrical and Computer Engineering University of Waterloo Waterloo,
Testing Programs with Loops CSIS 1595: Fundamentals of Programming and Problem Solving 1.
Undecidability and The Halting Problem
Control Flow (Python) Dr. José M. Reyes Álamo. 2 Control Flow Sequential statements Decision statements Repetition statements (loops)
Python – Part 4 Conditionals and Recursion. Conditional execution If statement if x>0:# CONDITION print (‘x is positive’) Same structure as function definition.
Conditionals.
Decidability.
CSE 311: Foundations of Computing Fall 2014 Lecture 28: Undecidability.
Introduction to Computing Science and Programming I
The Halting Problem.
Chapter 3: Decisions and Loops
Undecidable Problems Costas Busch - LSU.
Warm-up Program Use the same method as your first fortune cookie project and write a program that reads in a string from the user and, at random, will.
Chapter 5: Loops and Files.
Writing Functions( ) (Part 5)
A Balanced Introduction to Computer Science David Reed, Creighton University ©2005 Pearson Prentice Hall ISBN X Chapter 13 (Reed) - Conditional.
Busch Complexity Lectures: Undecidable Problems (unsolvable problems)
CSE 105 theory of computation
CSE 311 Foundations of Computing I
Halting Problem.
CSE 311: Foundations of Computing
Impossible problems.
CSE 311: Foundations of Computing
A Balanced Introduction to Computer Science David Reed, Creighton University ©2005 Pearson Prentice Hall ISBN X Chapter 13 (Reed) - Conditional.
CSE 105 theory of computation
Presentation transcript:

Powerpoint Templates Page 1 Powerpoint Templates Impossible Math Problems (or should we say, undecidable) Math Club 4/16/2012

Powerpoint Templates Page 2 Goldbach’s Conjecture (unsolved)

Powerpoint Templates Page 3 Verifying Goldbach’s

Powerpoint Templates Page 4 Goldbach Version 2.0

Powerpoint Templates Page 5 Verifying Goldbach 2.0

Powerpoint Templates Page 6 But honey, will it stop?

Powerpoint Templates Page 7 Goldbach 2.0 (might be) undecidable!

Powerpoint Templates Page 8 ‘might be’?

Powerpoint Templates Page 9 An actual undecidable problem Here’s a program that quickly stops: For every n from 1 to 100: print n Here’s one that doesn’t: 10: print “:3” 20: go to 10

Powerpoint Templates Page 10 Does it stop? Wouldn’t it be useful to have a function that takes any program and decides if it will stop? function stops(program, input): if( some regex wizardry ): return YES else: return NO Then we never have to wait around and wonder if our program will stop!

Powerpoint Templates Page 11 An unusual program In order for this to work, this function has to produce an answer for every possible input. Suppose an alien programmer came up with this unusual program: function alien(program): if stops(program, program): enter infinite loop otherwise exit and stop.

Powerpoint Templates Page 12 The paradox What if we run alien() on itself? Will it stop or will it run forever? Ideally, stops(alien,alien) should tell us. If stops(alien,alien) returns true, then the same function enters an infinite loop, so stops() is wrong! If stops(alien,alien) returns false, then the function does stop, so again stops() is wrong!

Powerpoint Templates Page 13 Conclusion Here’s our function for determining if a program will stop: function stops(program, input): if( some regex wizardry ): return YES else: return NO Problem is, if you give it the alien() function, it cannot logically give the right answer! Ergo, this function cannot exist.