lecture23

lecture23 - COMPSCI 102 Introduction to Discrete...

Info iconThis preview shows pages 1–14. Sign up to view the full content.

View Full Document Right Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: COMPSCI 102 Introduction to Discrete Mathematics Turings Legacy: The Limits Of Computation. Anything says is false! This lecture will change the way you think about computer programs Many questions which appear easy at first glance are impossible to solve in general. Well only be taking a brief look at a vast landscape in logic and computer science theory. The HELLO assignment Write a JAVA program to output the word HELLO on the screen and halt. Space and time are not an issue. The program is for an ideal computer. PASS for any working HELLO program, no partial credit. Grading Script The grading script G must be able to take any Java program P and grade it. Pass, if P prints only the word G(P)= HELLO and halts. Fail, otherwise. How exactly might such a script work? What does this do? _(__,___,____){___/__<=1?_(__,___+1,____):! (___%__)?_(__,___+1,0):___%__==___/ __&&!____? (printf("%d\t",___/__),_(__,___+1,0)):___ %__>1&&___%__<___/__?_(__,1+ ___,____+!(___/__%(___%__))):___<__*__? _(__,___+1,____):0;}main(){_(100,0,0);} What kind of program could a student who hated his/her TA hand in? Note: This probably isnt the best idea for how to do well on assignments. Nasty Program n:=0; while (n is not a counter-example to the Riemann Hypothesis) { n++; } print Hello; The nasty program is a PASS if and only if the Riemann Hypothesis is false. A TA nightmare: Despite the simplicity of the HELLO assignment, there is no program to correctly grade it! And we will prove this. The theory of what can and cant be computed by an ideal computer is called Computability Theory or Recursion Theory . Are all reals describable? Are all reals computable? We saw that computable describable, but do we also have describable computable? NO NO From the last lecture: The grading function we just described is not computable! (Well see a proof soon.) Computable Function Fix any finite set of symbols, . Fix any precise programming language, e.g., Java. A program is any finite string of characters that is syntactically valid. A function f : * * is computable if there is a program P that when executed on an ideal computer, computes f. That is, for all strings x in * , f(x) = P(x). Computable Function Fix any finite set of symbols, . Fix any precise programming language, e.g., Java. A program is any finite string of characters that is syntactically valid....
View Full Document

This document was uploaded on 01/17/2012.

Page1 / 67

lecture23 - COMPSCI 102 Introduction to Discrete...

This preview shows document pages 1 - 14. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online