Bro you are literally a life saver. Your explanations are amazing, the content is top-notch, you put a lot of effort into explaining each detail. Will definitely buy the textbook you have coming thank you for this content!
I don't quite understand how we can put NTM configurations one after the other in the table? do we put only a path of configs from the execution tree of the NTM?
We don't actually fill in this table with values, we only encode that they must follow the rules of the given NTM. If all formulas 1,2,3,4 are True, then there exists some path of configs that finishes with q accept. It is maybe like Sudoku. We can solve the sudoku in multiple ways. Once we solve it we can track back for each step and check that rules of sudoku were followed. This formula would be True only if there exists some way of solving the Sudoku, not telling us exactly how to fill it in.
I have a request. While I think I have understood this proof, which is also the one presented in Sipser's book, I am having a hard time trying to understand the one used in the book by Arora and Barak. Would you mind making a video on that and tell us where the two proofs are different and where similar?
Thanks for the explanation! Where it clicked for me is that given the input to the Turing machine, there's a known upper bound on the Turing runtime, and thus on the tape, making it a finite problem for THAT input: no infinite tape. Small addition to your explanation around 20 minutes: I guess the important thing is that Phi1..Phi4 can be generated in polynomial TIME, not that the result formula had polynomial SIZE (which follows, btw)
I believe it's just a convention to mark the beginning and end of the Turing Machine. When you're running the TM you can't really tell on which cell index you're located and since here we are limited by the size of the table to be of O(n^2k), this is how you know you reached those limits.
I'm assuming you mean the reduction, and that will be some polynomial multiplied by the runtime of the original Turing Machine. (The "size" of the formula involves O(n^(2c)) "cells", where n^c was the runtime of the TM.) So the size of the *formula* is a polynomial in the size of the original TM. However, the runtime of *any algorithm for SAT* might not necessarily be polynomial. This is purely the reduction from any NP problem to SAT.
i passed my exam thanks to you, thank you!! great job
Bro you are literally a life saver. Your explanations are amazing, the content is top-notch, you put a lot of effort into explaining each detail. Will definitely buy the textbook you have coming thank you for this content!
Thanks for the clear explanation! Made me understand everything I didn't during the lectures.
You're very welcome!
Ultimate explanation 💯👌
You are the curriculum... appreciate you so much man
Now that is a mind blow. 💥8|
We just went over it a few days ago in Discrete 2. Talk about crazy.
for anyone getting this in their recommended, SAT stands for Boolean Satisfiability Problem
Thanks! I changed the title to reflect that.
I don't quite understand how we can put NTM configurations one after the other in the table? do we put only a path of configs from the execution tree of the NTM?
We don't actually fill in this table with values, we only encode that they must follow the rules of the given NTM. If all formulas 1,2,3,4 are True, then there exists some path of configs that finishes with q accept. It is maybe like Sudoku. We can solve the sudoku in multiple ways. Once we solve it we can track back for each step and check that rules of sudoku were followed. This formula would be True only if there exists some way of solving the Sudoku, not telling us exactly how to fill it in.
You're the best . Thank you so much
You're very welcome!
Thanks!
I have a request. While I think I have understood this proof, which is also the one presented in Sipser's book, I am having a hard time trying to understand the one used in the book by Arora and Barak. Would you mind making a video on that and tell us where the two proofs are different and where similar?
I'll look and see! I'm guessing the terminology is slightly different but the basic proof strategy is the same.
@@EasyTheory Thank you
Thanks for the explanation! Where it clicked for me is that given the input to the Turing machine, there's a known upper bound on the Turing runtime, and thus on the tape, making it a finite problem for THAT input: no infinite tape.
Small addition to your explanation around 20 minutes: I guess the important thing is that Phi1..Phi4 can be generated in polynomial TIME, not that the result formula had polynomial SIZE (which follows, btw)
Could somebody explain why the columns of # at the start and end are necessary?
I believe it's just a convention to mark the beginning and end of the Turing Machine. When you're running the TM you can't really tell on which cell index you're located and since here we are limited by the size of the table to be of O(n^2k), this is how you know you reached those limits.
ur the best, tks!!
what is the time complexity for this
I'm assuming you mean the reduction, and that will be some polynomial multiplied by the runtime of the original Turing Machine. (The "size" of the formula involves O(n^(2c)) "cells", where n^c was the runtime of the TM.) So the size of the *formula* is a polynomial in the size of the original TM. However, the runtime of *any algorithm for SAT* might not necessarily be polynomial. This is purely the reduction from any NP problem to SAT.
you're great! thanks!
No, YOU'RE great!