Advertisement
Guest User

Untitled

a guest
Nov 25th, 2014
168
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.03 KB | None | 0 0
  1. As D is in NP, by definition it has to have a polynomial time verifier. We can use the generate and verify method discussed in class and call it A:
  2.  
  3. A:
  4. generate all certificates in D
  5. for each certificate c:
  6. run verifier for c:
  7. if verifier works:
  8. return true
  9. return false
  10.  
  11. The possible inputs for the verifier must be finite in bitwise length, otherwise the verifier wouldn't be able to finish reading the input in polynomial time, which contradicts the fact that D is in NP.
  12.  
  13. Also, since D is a decision problem, the set of possible certificates should be finite otherwise the result would possibly not be returned.
  14.  
  15. Statement: A is O(2^p(n)) where p(n) is a polynomial
  16.  
  17. Proof: Since the set of certificates is finite, in the worst case we'll have a permutation of valid inputs, which is n!
  18.  
  19. However, n! <= 2^n^2
  20.  
  21. Proof: n! <= n^n = 2^(log2 n^n) = 2^n log2n <= 2^n^2
  22.  
  23. Since we have an algorithm D to solve A in n!, there must exist an algorithm that solves in 2^(n^2) and, therefore, D can be solved in O(2^p(n)) time.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement