This preview shows pages 1–4. Sign up to view the full content.
This preview has intentionally blurred sections. Sign up to view the full version.
View Full DocumentThis preview has intentionally blurred sections. Sign up to view the full version.
View Full Document
Unformatted text preview: 19. Decidable problems An example of decision problems: Does a given polynomial p over variable x have an integral root? The equivalent language membership problem: D = { “ p ”  p is a polynomial over x with an integral root } Is a given encoding of a polynomial, “ p ” , ∈ D ? The decision problem is solvable if and only if language D is recursive. The language D is recursively renumerable because we can con struct a TM that, given an encoding of a polynomial p over variable x , the TM evaluates p by setting x successively to 0,1, 1, 2, 2, and so on. If at any point the polynomial evaluates to 0, the TM accepts “p”. The language D is also recursive because it is known that the roots of a singlevariable polynomial are bounded within ± k c max c 1 , where k is the number of terms in the polynomial, c max is the coeﬃcient with largest absolute value, and c 1 is the coeﬃcient of the highest order term. Hence, if no integral root has been found within these bounds, the TM rejects “p”. 1 The following language is not recursive: D 1 = { “ p ”  p is a multivariable polynomial with an integral root } Proving that this problem is algorithmically unsolvable requires a formal definition of algorithm. In 1936, Alan Turing intro duced TM computational model and Alonzo Church introduced the equivalent λcalculus, which are formal definitions of algo rithm. Decision problem ≡ Language Algorithm ≡ Turing machine that halts on all inputs An algorithm for a problem ≡ A Turing machine that decides the corresponding language Problem is solvable (decidable) ≡ Language is recursive 2 Decision problem: Given a DFA M and a string w , does M accept w ? Equivalent language membership problem: L = { “ M ”“ w ” : M is a DFA that accepts input string w } We will prove that L is recursive. Proof: We construct a Turing machine M D (in fact, a UTM) that de cides L . The input to M D is “ M ”“ w ” where “ M ” is an encoding of a DFA. One reasonable way to encode M is simply to adapt the encoding for TM to encode DFA, i.e., encode Q, Σ , δ, s, F . Be fore starting the simulation, M D first checks if the input string consitutes an encoding of a DFA and an encoding of an input string to a DFA....
View
Full
Document
This note was uploaded on 09/22/2011 for the course COMP 272 taught by Professor Prof.tai during the Spring '10 term at HKUST.
 Spring '10
 Prof.Tai

Click to edit the document details