Why SAT Requires A Non-determinstic Algorithm?

The name of the pictureThe name of the pictureThe name of the pictureClash Royale CLAN TAG#URR8PPP











up vote
1
down vote

favorite












I am getting started to understand the probelm of Satisfiability and i am reading (Computers and Intractability: A Guide to the Theory of NP-Completeness).



I do understand the difference between a Deterministic and Non-Deterministic Algorithm, however i don't understand why SAT requires a Non-Determinsitic Algorithm ? Why not a Deterministic Algorithm ?



How do we know for sure that a problem requires a Deterministic or Non-Deterministic Algorith that solves it ? (if it was solvable, i,e. not undecidable problem).










share|cite|improve this question







New contributor




Jacob Billerchy is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.























    up vote
    1
    down vote

    favorite












    I am getting started to understand the probelm of Satisfiability and i am reading (Computers and Intractability: A Guide to the Theory of NP-Completeness).



    I do understand the difference between a Deterministic and Non-Deterministic Algorithm, however i don't understand why SAT requires a Non-Determinsitic Algorithm ? Why not a Deterministic Algorithm ?



    How do we know for sure that a problem requires a Deterministic or Non-Deterministic Algorith that solves it ? (if it was solvable, i,e. not undecidable problem).










    share|cite|improve this question







    New contributor




    Jacob Billerchy is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
    Check out our Code of Conduct.





















      up vote
      1
      down vote

      favorite









      up vote
      1
      down vote

      favorite











      I am getting started to understand the probelm of Satisfiability and i am reading (Computers and Intractability: A Guide to the Theory of NP-Completeness).



      I do understand the difference between a Deterministic and Non-Deterministic Algorithm, however i don't understand why SAT requires a Non-Determinsitic Algorithm ? Why not a Deterministic Algorithm ?



      How do we know for sure that a problem requires a Deterministic or Non-Deterministic Algorith that solves it ? (if it was solvable, i,e. not undecidable problem).










      share|cite|improve this question







      New contributor




      Jacob Billerchy is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.











      I am getting started to understand the probelm of Satisfiability and i am reading (Computers and Intractability: A Guide to the Theory of NP-Completeness).



      I do understand the difference between a Deterministic and Non-Deterministic Algorithm, however i don't understand why SAT requires a Non-Determinsitic Algorithm ? Why not a Deterministic Algorithm ?



      How do we know for sure that a problem requires a Deterministic or Non-Deterministic Algorith that solves it ? (if it was solvable, i,e. not undecidable problem).







      satisfiability decision-problem nondeterminism






      share|cite|improve this question







      New contributor




      Jacob Billerchy is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.











      share|cite|improve this question







      New contributor




      Jacob Billerchy is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.









      share|cite|improve this question




      share|cite|improve this question






      New contributor




      Jacob Billerchy is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.









      asked 4 hours ago









      Jacob Billerchy

      61




      61




      New contributor




      Jacob Billerchy is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.





      New contributor





      Jacob Billerchy is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.






      Jacob Billerchy is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.




















          2 Answers
          2






          active

          oldest

          votes

















          up vote
          2
          down vote













          Any decidable problem can be solved by a deterministic algorithm. The thing about SAT (and any other NP-complete problem) is that we don't know any efficient deterministic algorithm that solves it, and we think there might not even be one.






          share|cite|improve this answer




















          • So, Assuming there is an efficient deterministic & non-deterministic algorithm for SAT, and there exists multiple Accepting Solutions for a given Boolean Formula. Are we interested in having all the (Accepting States) therefore use the nondeterministic algorithm or we only (any) accepting state therefore use the determinsitc algorithm ?
            – Jacob Billerchy
            55 mins ago










          • The deterministic nature of algorithm has nothing to do with how many solutions we want. Also, I don't think we ever need many solutions for SAT. We are only interested in whether it is satisfiable or not.
            – Sandro Lovnički
            48 mins ago











          • @SandroLovnički Yes i understand that a single solution will tell us if the Boolean Formula evalutes to true or false but what if we later include constraints to choose a solution among the solutions of the given Boolean Formula, wouldn't that require listing all the solutions ?
            – Jacob Billerchy
            1 min ago

















          up vote
          2
          down vote













          It is not true that it requires a non-deterministic algorithm.



          You are right; if it is solvable, it should be solvable by a deterministic algorithm. And it is. This deterministic algorithm needs exponential number of steps (with respect to number of propositional variables $n$) because only known general case approach so far is to test all combinations of truth values of propositional variables, and we have $2^n$ possible combinations (rows of a truth table).



          However, we can (theoretically) solve it with a non-deterministic algorithm in polynomial time which is how a class of NP problems is defined. This is where your confusion, and maybe a bad choice of words in the literature, probably comes from.




          All non-deterministic algorithms can be simulated by a deterministic algorithm. In fact, all that is computable can be computed with a deterministic algorithm. It is just the time complexity that varies.






          share|cite|improve this answer






















          • So how can we distinguish between an implentation of a non-deterministic algorithm simulated on a deterministic algorithm and another (pure) deterministic algorithm ?
            – Jacob Billerchy
            1 hour ago










          • Most formally, we cannot. Detecting equality (or any non-trivial property) of algorithms is undecidable. But why would you do that? We write algorithms, therefore we know what we meant for it to do. I don't think there will be a situation that an algorithm pops into existance and asks you to figure out what it is :)
            – Sandro Lovnički
            1 hour ago










          • Specifically, in this case, (pure) deterministic algorithm will be implemented similarly like a deterministic algorithm simulating non-deterministic algorithm. (pure) needs to test all $2^n$ possibilities and simulation needs to simulate all non-deterministic branchings. Non-deterministic algorithm still goes through all $2^n$ possibilities, it just does many at once. And I repeat, this is theoretical. If we had real (physicaly working) non-deterministic algorithms, $P neq NP$ would not be a problem of major concern.
            – Sandro Lovnički
            57 mins ago











          • Because the Deterministic (D) & Non-Determinsitic (ND) concepts are confusing. My understanding is that D will reach an (Accept / Reject) state, while a ND algorithm will have (if exists) mulitple states of (Accept / Reject). When a ND is simulated on D it will show mulitple states of (Accept / Reject), how come that D shows mulitple (Accept / Reject) states, that will contradict its defination not have a single (Accept / Reject) state ? Or is it the case that those mulitple states of (Accept / Reject) are the equivalent of the (Accept / Reject) state of the simulated D ?
            – Jacob Billerchy
            6 mins ago










          Your Answer




          StackExchange.ifUsing("editor", function ()
          return StackExchange.using("mathjaxEditing", function ()
          StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix)
          StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
          );
          );
          , "mathjax-editing");

          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "419"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          convertImagesToLinks: false,
          noModals: false,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: null,
          bindNavPrevention: true,
          postfix: "",
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );






          Jacob Billerchy is a new contributor. Be nice, and check out our Code of Conduct.









           

          draft saved


          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcs.stackexchange.com%2fquestions%2f97583%2fwhy-sat-requires-a-non-determinstic-algorithm%23new-answer', 'question_page');

          );

          Post as a guest






























          2 Answers
          2






          active

          oldest

          votes








          2 Answers
          2






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes








          up vote
          2
          down vote













          Any decidable problem can be solved by a deterministic algorithm. The thing about SAT (and any other NP-complete problem) is that we don't know any efficient deterministic algorithm that solves it, and we think there might not even be one.






          share|cite|improve this answer




















          • So, Assuming there is an efficient deterministic & non-deterministic algorithm for SAT, and there exists multiple Accepting Solutions for a given Boolean Formula. Are we interested in having all the (Accepting States) therefore use the nondeterministic algorithm or we only (any) accepting state therefore use the determinsitc algorithm ?
            – Jacob Billerchy
            55 mins ago










          • The deterministic nature of algorithm has nothing to do with how many solutions we want. Also, I don't think we ever need many solutions for SAT. We are only interested in whether it is satisfiable or not.
            – Sandro Lovnički
            48 mins ago











          • @SandroLovnički Yes i understand that a single solution will tell us if the Boolean Formula evalutes to true or false but what if we later include constraints to choose a solution among the solutions of the given Boolean Formula, wouldn't that require listing all the solutions ?
            – Jacob Billerchy
            1 min ago














          up vote
          2
          down vote













          Any decidable problem can be solved by a deterministic algorithm. The thing about SAT (and any other NP-complete problem) is that we don't know any efficient deterministic algorithm that solves it, and we think there might not even be one.






          share|cite|improve this answer




















          • So, Assuming there is an efficient deterministic & non-deterministic algorithm for SAT, and there exists multiple Accepting Solutions for a given Boolean Formula. Are we interested in having all the (Accepting States) therefore use the nondeterministic algorithm or we only (any) accepting state therefore use the determinsitc algorithm ?
            – Jacob Billerchy
            55 mins ago










          • The deterministic nature of algorithm has nothing to do with how many solutions we want. Also, I don't think we ever need many solutions for SAT. We are only interested in whether it is satisfiable or not.
            – Sandro Lovnički
            48 mins ago











          • @SandroLovnički Yes i understand that a single solution will tell us if the Boolean Formula evalutes to true or false but what if we later include constraints to choose a solution among the solutions of the given Boolean Formula, wouldn't that require listing all the solutions ?
            – Jacob Billerchy
            1 min ago












          up vote
          2
          down vote










          up vote
          2
          down vote









          Any decidable problem can be solved by a deterministic algorithm. The thing about SAT (and any other NP-complete problem) is that we don't know any efficient deterministic algorithm that solves it, and we think there might not even be one.






          share|cite|improve this answer












          Any decidable problem can be solved by a deterministic algorithm. The thing about SAT (and any other NP-complete problem) is that we don't know any efficient deterministic algorithm that solves it, and we think there might not even be one.







          share|cite|improve this answer












          share|cite|improve this answer



          share|cite|improve this answer










          answered 2 hours ago









          David Richerby

          61.7k1594179




          61.7k1594179











          • So, Assuming there is an efficient deterministic & non-deterministic algorithm for SAT, and there exists multiple Accepting Solutions for a given Boolean Formula. Are we interested in having all the (Accepting States) therefore use the nondeterministic algorithm or we only (any) accepting state therefore use the determinsitc algorithm ?
            – Jacob Billerchy
            55 mins ago










          • The deterministic nature of algorithm has nothing to do with how many solutions we want. Also, I don't think we ever need many solutions for SAT. We are only interested in whether it is satisfiable or not.
            – Sandro Lovnički
            48 mins ago











          • @SandroLovnički Yes i understand that a single solution will tell us if the Boolean Formula evalutes to true or false but what if we later include constraints to choose a solution among the solutions of the given Boolean Formula, wouldn't that require listing all the solutions ?
            – Jacob Billerchy
            1 min ago
















          • So, Assuming there is an efficient deterministic & non-deterministic algorithm for SAT, and there exists multiple Accepting Solutions for a given Boolean Formula. Are we interested in having all the (Accepting States) therefore use the nondeterministic algorithm or we only (any) accepting state therefore use the determinsitc algorithm ?
            – Jacob Billerchy
            55 mins ago










          • The deterministic nature of algorithm has nothing to do with how many solutions we want. Also, I don't think we ever need many solutions for SAT. We are only interested in whether it is satisfiable or not.
            – Sandro Lovnički
            48 mins ago











          • @SandroLovnički Yes i understand that a single solution will tell us if the Boolean Formula evalutes to true or false but what if we later include constraints to choose a solution among the solutions of the given Boolean Formula, wouldn't that require listing all the solutions ?
            – Jacob Billerchy
            1 min ago















          So, Assuming there is an efficient deterministic & non-deterministic algorithm for SAT, and there exists multiple Accepting Solutions for a given Boolean Formula. Are we interested in having all the (Accepting States) therefore use the nondeterministic algorithm or we only (any) accepting state therefore use the determinsitc algorithm ?
          – Jacob Billerchy
          55 mins ago




          So, Assuming there is an efficient deterministic & non-deterministic algorithm for SAT, and there exists multiple Accepting Solutions for a given Boolean Formula. Are we interested in having all the (Accepting States) therefore use the nondeterministic algorithm or we only (any) accepting state therefore use the determinsitc algorithm ?
          – Jacob Billerchy
          55 mins ago












          The deterministic nature of algorithm has nothing to do with how many solutions we want. Also, I don't think we ever need many solutions for SAT. We are only interested in whether it is satisfiable or not.
          – Sandro Lovnički
          48 mins ago





          The deterministic nature of algorithm has nothing to do with how many solutions we want. Also, I don't think we ever need many solutions for SAT. We are only interested in whether it is satisfiable or not.
          – Sandro Lovnički
          48 mins ago













          @SandroLovnički Yes i understand that a single solution will tell us if the Boolean Formula evalutes to true or false but what if we later include constraints to choose a solution among the solutions of the given Boolean Formula, wouldn't that require listing all the solutions ?
          – Jacob Billerchy
          1 min ago




          @SandroLovnički Yes i understand that a single solution will tell us if the Boolean Formula evalutes to true or false but what if we later include constraints to choose a solution among the solutions of the given Boolean Formula, wouldn't that require listing all the solutions ?
          – Jacob Billerchy
          1 min ago










          up vote
          2
          down vote













          It is not true that it requires a non-deterministic algorithm.



          You are right; if it is solvable, it should be solvable by a deterministic algorithm. And it is. This deterministic algorithm needs exponential number of steps (with respect to number of propositional variables $n$) because only known general case approach so far is to test all combinations of truth values of propositional variables, and we have $2^n$ possible combinations (rows of a truth table).



          However, we can (theoretically) solve it with a non-deterministic algorithm in polynomial time which is how a class of NP problems is defined. This is where your confusion, and maybe a bad choice of words in the literature, probably comes from.




          All non-deterministic algorithms can be simulated by a deterministic algorithm. In fact, all that is computable can be computed with a deterministic algorithm. It is just the time complexity that varies.






          share|cite|improve this answer






















          • So how can we distinguish between an implentation of a non-deterministic algorithm simulated on a deterministic algorithm and another (pure) deterministic algorithm ?
            – Jacob Billerchy
            1 hour ago










          • Most formally, we cannot. Detecting equality (or any non-trivial property) of algorithms is undecidable. But why would you do that? We write algorithms, therefore we know what we meant for it to do. I don't think there will be a situation that an algorithm pops into existance and asks you to figure out what it is :)
            – Sandro Lovnički
            1 hour ago










          • Specifically, in this case, (pure) deterministic algorithm will be implemented similarly like a deterministic algorithm simulating non-deterministic algorithm. (pure) needs to test all $2^n$ possibilities and simulation needs to simulate all non-deterministic branchings. Non-deterministic algorithm still goes through all $2^n$ possibilities, it just does many at once. And I repeat, this is theoretical. If we had real (physicaly working) non-deterministic algorithms, $P neq NP$ would not be a problem of major concern.
            – Sandro Lovnički
            57 mins ago











          • Because the Deterministic (D) & Non-Determinsitic (ND) concepts are confusing. My understanding is that D will reach an (Accept / Reject) state, while a ND algorithm will have (if exists) mulitple states of (Accept / Reject). When a ND is simulated on D it will show mulitple states of (Accept / Reject), how come that D shows mulitple (Accept / Reject) states, that will contradict its defination not have a single (Accept / Reject) state ? Or is it the case that those mulitple states of (Accept / Reject) are the equivalent of the (Accept / Reject) state of the simulated D ?
            – Jacob Billerchy
            6 mins ago














          up vote
          2
          down vote













          It is not true that it requires a non-deterministic algorithm.



          You are right; if it is solvable, it should be solvable by a deterministic algorithm. And it is. This deterministic algorithm needs exponential number of steps (with respect to number of propositional variables $n$) because only known general case approach so far is to test all combinations of truth values of propositional variables, and we have $2^n$ possible combinations (rows of a truth table).



          However, we can (theoretically) solve it with a non-deterministic algorithm in polynomial time which is how a class of NP problems is defined. This is where your confusion, and maybe a bad choice of words in the literature, probably comes from.




          All non-deterministic algorithms can be simulated by a deterministic algorithm. In fact, all that is computable can be computed with a deterministic algorithm. It is just the time complexity that varies.






          share|cite|improve this answer






















          • So how can we distinguish between an implentation of a non-deterministic algorithm simulated on a deterministic algorithm and another (pure) deterministic algorithm ?
            – Jacob Billerchy
            1 hour ago










          • Most formally, we cannot. Detecting equality (or any non-trivial property) of algorithms is undecidable. But why would you do that? We write algorithms, therefore we know what we meant for it to do. I don't think there will be a situation that an algorithm pops into existance and asks you to figure out what it is :)
            – Sandro Lovnički
            1 hour ago










          • Specifically, in this case, (pure) deterministic algorithm will be implemented similarly like a deterministic algorithm simulating non-deterministic algorithm. (pure) needs to test all $2^n$ possibilities and simulation needs to simulate all non-deterministic branchings. Non-deterministic algorithm still goes through all $2^n$ possibilities, it just does many at once. And I repeat, this is theoretical. If we had real (physicaly working) non-deterministic algorithms, $P neq NP$ would not be a problem of major concern.
            – Sandro Lovnički
            57 mins ago











          • Because the Deterministic (D) & Non-Determinsitic (ND) concepts are confusing. My understanding is that D will reach an (Accept / Reject) state, while a ND algorithm will have (if exists) mulitple states of (Accept / Reject). When a ND is simulated on D it will show mulitple states of (Accept / Reject), how come that D shows mulitple (Accept / Reject) states, that will contradict its defination not have a single (Accept / Reject) state ? Or is it the case that those mulitple states of (Accept / Reject) are the equivalent of the (Accept / Reject) state of the simulated D ?
            – Jacob Billerchy
            6 mins ago












          up vote
          2
          down vote










          up vote
          2
          down vote









          It is not true that it requires a non-deterministic algorithm.



          You are right; if it is solvable, it should be solvable by a deterministic algorithm. And it is. This deterministic algorithm needs exponential number of steps (with respect to number of propositional variables $n$) because only known general case approach so far is to test all combinations of truth values of propositional variables, and we have $2^n$ possible combinations (rows of a truth table).



          However, we can (theoretically) solve it with a non-deterministic algorithm in polynomial time which is how a class of NP problems is defined. This is where your confusion, and maybe a bad choice of words in the literature, probably comes from.




          All non-deterministic algorithms can be simulated by a deterministic algorithm. In fact, all that is computable can be computed with a deterministic algorithm. It is just the time complexity that varies.






          share|cite|improve this answer














          It is not true that it requires a non-deterministic algorithm.



          You are right; if it is solvable, it should be solvable by a deterministic algorithm. And it is. This deterministic algorithm needs exponential number of steps (with respect to number of propositional variables $n$) because only known general case approach so far is to test all combinations of truth values of propositional variables, and we have $2^n$ possible combinations (rows of a truth table).



          However, we can (theoretically) solve it with a non-deterministic algorithm in polynomial time which is how a class of NP problems is defined. This is where your confusion, and maybe a bad choice of words in the literature, probably comes from.




          All non-deterministic algorithms can be simulated by a deterministic algorithm. In fact, all that is computable can be computed with a deterministic algorithm. It is just the time complexity that varies.







          share|cite|improve this answer














          share|cite|improve this answer



          share|cite|improve this answer








          edited 2 hours ago

























          answered 2 hours ago









          Sandro Lovnički

          445113




          445113











          • So how can we distinguish between an implentation of a non-deterministic algorithm simulated on a deterministic algorithm and another (pure) deterministic algorithm ?
            – Jacob Billerchy
            1 hour ago










          • Most formally, we cannot. Detecting equality (or any non-trivial property) of algorithms is undecidable. But why would you do that? We write algorithms, therefore we know what we meant for it to do. I don't think there will be a situation that an algorithm pops into existance and asks you to figure out what it is :)
            – Sandro Lovnički
            1 hour ago










          • Specifically, in this case, (pure) deterministic algorithm will be implemented similarly like a deterministic algorithm simulating non-deterministic algorithm. (pure) needs to test all $2^n$ possibilities and simulation needs to simulate all non-deterministic branchings. Non-deterministic algorithm still goes through all $2^n$ possibilities, it just does many at once. And I repeat, this is theoretical. If we had real (physicaly working) non-deterministic algorithms, $P neq NP$ would not be a problem of major concern.
            – Sandro Lovnički
            57 mins ago











          • Because the Deterministic (D) & Non-Determinsitic (ND) concepts are confusing. My understanding is that D will reach an (Accept / Reject) state, while a ND algorithm will have (if exists) mulitple states of (Accept / Reject). When a ND is simulated on D it will show mulitple states of (Accept / Reject), how come that D shows mulitple (Accept / Reject) states, that will contradict its defination not have a single (Accept / Reject) state ? Or is it the case that those mulitple states of (Accept / Reject) are the equivalent of the (Accept / Reject) state of the simulated D ?
            – Jacob Billerchy
            6 mins ago
















          • So how can we distinguish between an implentation of a non-deterministic algorithm simulated on a deterministic algorithm and another (pure) deterministic algorithm ?
            – Jacob Billerchy
            1 hour ago










          • Most formally, we cannot. Detecting equality (or any non-trivial property) of algorithms is undecidable. But why would you do that? We write algorithms, therefore we know what we meant for it to do. I don't think there will be a situation that an algorithm pops into existance and asks you to figure out what it is :)
            – Sandro Lovnički
            1 hour ago










          • Specifically, in this case, (pure) deterministic algorithm will be implemented similarly like a deterministic algorithm simulating non-deterministic algorithm. (pure) needs to test all $2^n$ possibilities and simulation needs to simulate all non-deterministic branchings. Non-deterministic algorithm still goes through all $2^n$ possibilities, it just does many at once. And I repeat, this is theoretical. If we had real (physicaly working) non-deterministic algorithms, $P neq NP$ would not be a problem of major concern.
            – Sandro Lovnički
            57 mins ago











          • Because the Deterministic (D) & Non-Determinsitic (ND) concepts are confusing. My understanding is that D will reach an (Accept / Reject) state, while a ND algorithm will have (if exists) mulitple states of (Accept / Reject). When a ND is simulated on D it will show mulitple states of (Accept / Reject), how come that D shows mulitple (Accept / Reject) states, that will contradict its defination not have a single (Accept / Reject) state ? Or is it the case that those mulitple states of (Accept / Reject) are the equivalent of the (Accept / Reject) state of the simulated D ?
            – Jacob Billerchy
            6 mins ago















          So how can we distinguish between an implentation of a non-deterministic algorithm simulated on a deterministic algorithm and another (pure) deterministic algorithm ?
          – Jacob Billerchy
          1 hour ago




          So how can we distinguish between an implentation of a non-deterministic algorithm simulated on a deterministic algorithm and another (pure) deterministic algorithm ?
          – Jacob Billerchy
          1 hour ago












          Most formally, we cannot. Detecting equality (or any non-trivial property) of algorithms is undecidable. But why would you do that? We write algorithms, therefore we know what we meant for it to do. I don't think there will be a situation that an algorithm pops into existance and asks you to figure out what it is :)
          – Sandro Lovnički
          1 hour ago




          Most formally, we cannot. Detecting equality (or any non-trivial property) of algorithms is undecidable. But why would you do that? We write algorithms, therefore we know what we meant for it to do. I don't think there will be a situation that an algorithm pops into existance and asks you to figure out what it is :)
          – Sandro Lovnički
          1 hour ago












          Specifically, in this case, (pure) deterministic algorithm will be implemented similarly like a deterministic algorithm simulating non-deterministic algorithm. (pure) needs to test all $2^n$ possibilities and simulation needs to simulate all non-deterministic branchings. Non-deterministic algorithm still goes through all $2^n$ possibilities, it just does many at once. And I repeat, this is theoretical. If we had real (physicaly working) non-deterministic algorithms, $P neq NP$ would not be a problem of major concern.
          – Sandro Lovnički
          57 mins ago





          Specifically, in this case, (pure) deterministic algorithm will be implemented similarly like a deterministic algorithm simulating non-deterministic algorithm. (pure) needs to test all $2^n$ possibilities and simulation needs to simulate all non-deterministic branchings. Non-deterministic algorithm still goes through all $2^n$ possibilities, it just does many at once. And I repeat, this is theoretical. If we had real (physicaly working) non-deterministic algorithms, $P neq NP$ would not be a problem of major concern.
          – Sandro Lovnički
          57 mins ago













          Because the Deterministic (D) & Non-Determinsitic (ND) concepts are confusing. My understanding is that D will reach an (Accept / Reject) state, while a ND algorithm will have (if exists) mulitple states of (Accept / Reject). When a ND is simulated on D it will show mulitple states of (Accept / Reject), how come that D shows mulitple (Accept / Reject) states, that will contradict its defination not have a single (Accept / Reject) state ? Or is it the case that those mulitple states of (Accept / Reject) are the equivalent of the (Accept / Reject) state of the simulated D ?
          – Jacob Billerchy
          6 mins ago




          Because the Deterministic (D) & Non-Determinsitic (ND) concepts are confusing. My understanding is that D will reach an (Accept / Reject) state, while a ND algorithm will have (if exists) mulitple states of (Accept / Reject). When a ND is simulated on D it will show mulitple states of (Accept / Reject), how come that D shows mulitple (Accept / Reject) states, that will contradict its defination not have a single (Accept / Reject) state ? Or is it the case that those mulitple states of (Accept / Reject) are the equivalent of the (Accept / Reject) state of the simulated D ?
          – Jacob Billerchy
          6 mins ago










          Jacob Billerchy is a new contributor. Be nice, and check out our Code of Conduct.









           

          draft saved


          draft discarded


















          Jacob Billerchy is a new contributor. Be nice, and check out our Code of Conduct.












          Jacob Billerchy is a new contributor. Be nice, and check out our Code of Conduct.











          Jacob Billerchy is a new contributor. Be nice, and check out our Code of Conduct.













           


          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcs.stackexchange.com%2fquestions%2f97583%2fwhy-sat-requires-a-non-determinstic-algorithm%23new-answer', 'question_page');

          );

          Post as a guest













































































          Comments

          Popular posts from this blog

          Long meetings (6-7 hours a day): Being “babysat” by supervisor

          What does second last employer means? [closed]

          One-line joke