The Clique vs. Independent Set ProblemReducing Clique to Independent Setclique, independent set, and minimum vertex coverEquivalence of independent set and set packingWhy is determining the size of a maximum independent set or a clique in P?Deterministic Communication Complexity of Equality if inputs differ by at most 1Maximal Independent SetProtocols for “almost equality” with one-sided errorAlgorithm for Minimum Weight Maximal Independent SetLower Bounds for the Set Disjointness ProblemTracing a polynomial algorithm for the problem of maximum-weight independent set

Japan - Plan around max visa duration

Validation accuracy vs Testing accuracy

What are these boxed doors outside store fronts in New York?

Compute hash value according to multiplication method

Why are only specific transaction types accepted into the mempool?

Why can't I see bouncing of a switch on an oscilloscope?

Shell script can be run only with sh command

Continuity at a point in terms of closure

Modification to Chariots for Heavy Cavalry Analogue for 4-armed race

TGV timetables / schedules?

I’m planning on buying a laser printer but concerned about the life cycle of toner in the machine

Why are 150k or 200k jobs considered good when there are 300k+ births a month?

What do you call something that goes against the spirit of the law, but is legal when interpreting the law to the letter?

What would happen to a modern skyscraper if it rains micro blackholes?

Copycat chess is back

New order #4: World

Banach space and Hilbert space topology

Do Phineas and Ferb ever actually get busted in real time?

The use of multiple foreign keys on same column in SQL Server

Email Account under attack (really) - anything I can do?

N.B. ligature in Latex

Can a German sentence have two subjects?

Draw simple lines in Inkscape

How is this relation reflexive?



The Clique vs. Independent Set Problem


Reducing Clique to Independent Setclique, independent set, and minimum vertex coverEquivalence of independent set and set packingWhy is determining the size of a maximum independent set or a clique in P?Deterministic Communication Complexity of Equality if inputs differ by at most 1Maximal Independent SetProtocols for “almost equality” with one-sided errorAlgorithm for Minimum Weight Maximal Independent SetLower Bounds for the Set Disjointness ProblemTracing a polynomial algorithm for the problem of maximum-weight independent set













3












$begingroup$


Suppose you have an undirected graph $G = (V, E)$, known to both Alice and Bob, Alice gets an independent set of $G$. Bob gets a Clique $B ⊆ V$.



Is there any algorithm in $O(log^2 n)$ bits that finds whether
$ A ∩ B = Ø $?



This is a well known communication complexity problem called CIS problem that was described by Yannakakis.




  • Lecture notes; the claim is Theorem 3

  • Link to Nisan & Kushilevitz's textbook

I'm not sure why and how does this work exactly. and which part of the $n/2$ vertices are reduced by both players.



P.S. I came to a conclusion that an independent and a clique can intersect in at most one vertex.










share|cite|improve this question











$endgroup$











  • $begingroup$
    The lecture notes contain a complete proof.
    $endgroup$
    – Yuval Filmus
    yesterday










  • $begingroup$
    I did not understand the algorithm completely to understand the proof itself.
    $endgroup$
    – Jay
    yesterday















3












$begingroup$


Suppose you have an undirected graph $G = (V, E)$, known to both Alice and Bob, Alice gets an independent set of $G$. Bob gets a Clique $B ⊆ V$.



Is there any algorithm in $O(log^2 n)$ bits that finds whether
$ A ∩ B = Ø $?



This is a well known communication complexity problem called CIS problem that was described by Yannakakis.




  • Lecture notes; the claim is Theorem 3

  • Link to Nisan & Kushilevitz's textbook

I'm not sure why and how does this work exactly. and which part of the $n/2$ vertices are reduced by both players.



P.S. I came to a conclusion that an independent and a clique can intersect in at most one vertex.










share|cite|improve this question











$endgroup$











  • $begingroup$
    The lecture notes contain a complete proof.
    $endgroup$
    – Yuval Filmus
    yesterday










  • $begingroup$
    I did not understand the algorithm completely to understand the proof itself.
    $endgroup$
    – Jay
    yesterday













3












3








3





$begingroup$


Suppose you have an undirected graph $G = (V, E)$, known to both Alice and Bob, Alice gets an independent set of $G$. Bob gets a Clique $B ⊆ V$.



Is there any algorithm in $O(log^2 n)$ bits that finds whether
$ A ∩ B = Ø $?



This is a well known communication complexity problem called CIS problem that was described by Yannakakis.




  • Lecture notes; the claim is Theorem 3

  • Link to Nisan & Kushilevitz's textbook

I'm not sure why and how does this work exactly. and which part of the $n/2$ vertices are reduced by both players.



P.S. I came to a conclusion that an independent and a clique can intersect in at most one vertex.










share|cite|improve this question











$endgroup$




Suppose you have an undirected graph $G = (V, E)$, known to both Alice and Bob, Alice gets an independent set of $G$. Bob gets a Clique $B ⊆ V$.



Is there any algorithm in $O(log^2 n)$ bits that finds whether
$ A ∩ B = Ø $?



This is a well known communication complexity problem called CIS problem that was described by Yannakakis.




  • Lecture notes; the claim is Theorem 3

  • Link to Nisan & Kushilevitz's textbook

I'm not sure why and how does this work exactly. and which part of the $n/2$ vertices are reduced by both players.



P.S. I came to a conclusion that an independent and a clique can intersect in at most one vertex.







algorithms graphs communication-complexity






share|cite|improve this question















share|cite|improve this question













share|cite|improve this question




share|cite|improve this question








edited yesterday









Yuval Filmus

196k15184349




196k15184349










asked yesterday









JayJay

1465




1465











  • $begingroup$
    The lecture notes contain a complete proof.
    $endgroup$
    – Yuval Filmus
    yesterday










  • $begingroup$
    I did not understand the algorithm completely to understand the proof itself.
    $endgroup$
    – Jay
    yesterday
















  • $begingroup$
    The lecture notes contain a complete proof.
    $endgroup$
    – Yuval Filmus
    yesterday










  • $begingroup$
    I did not understand the algorithm completely to understand the proof itself.
    $endgroup$
    – Jay
    yesterday















$begingroup$
The lecture notes contain a complete proof.
$endgroup$
– Yuval Filmus
yesterday




$begingroup$
The lecture notes contain a complete proof.
$endgroup$
– Yuval Filmus
yesterday












$begingroup$
I did not understand the algorithm completely to understand the proof itself.
$endgroup$
– Jay
yesterday




$begingroup$
I did not understand the algorithm completely to understand the proof itself.
$endgroup$
– Jay
yesterday










2 Answers
2






active

oldest

votes


















5












$begingroup$

The two players construct a sequence $V_0 supset V_1 supset cdots supset V_m$ of sets of vertices such that:




  1. $V_0$ consists of all vertices in the graph.


  2. $|V_i+1| leq (|V_i|+1)/2$.


  3. $V_i supseteq C cap I$.

The players stop once $|V_m| leq 1$. At this point they can answer the question using $O(1)$ communication.



At round $i$, the players know $V_i-1$, and wish to construct $V_i$. They act as follows:



  • If $C cap V_i-1$ contains a vertex $v$ with fewer than $|V_i-1|/2$ neighbors in $V_i-1$, then Alice sends Bob one such vertex $v$, and both players set $V_i$ to be this set of neighbors, together with $v$ (this is valid since $C cap I subseteq C subseteq V_i$). Otherwise, she sends $bot$.


  • If Alice sent $bot$ and $I cap V_i-1$ contains a vertex $v$ with fewer than $|V_i-1|/2$ non-neighbors in $V_i-1$, then Bob sends Alice one such vertex $v$, and both players set $V_i$ to be this set of non-neighbors, together with $v$ (this is valid since $C cap I subseteq I subseteq V_i$). Otherwise, he sends Alice $bot$.


  • If both players sent $bot$, then $C cap I = emptyset$. Indeed, if $v in C cap I$, then $v$ has at least $|V_i-1|/2$ neighbors and at least $|V_i-1|/2$ non-neighbors inside $|V_i-1|$, whereas the number of potential neighbors and non-neighbors is just $|V_i-1|-1$. Therefore the players can abort and conclude that $C cap I = emptyset$.


Each round takes $O(log n)$ bits of communication, and there are $O(log n)$ rounds, for a total of $O(log^2 n)$ bits of communication.






share|cite|improve this answer











$endgroup$












  • $begingroup$
    How does the number of vertices are resuced by factor of 2 - this leads to the $O(log(n))$ rounds?
    $endgroup$
    – Jay
    yesterday











  • $begingroup$
    I'm sorry, I can't explain it any better than what I wrote.
    $endgroup$
    – Yuval Filmus
    yesterday










  • $begingroup$
    Thanks a lot Yuval, I’ll try to figure it out.
    $endgroup$
    – Jay
    yesterday


















3












$begingroup$

The $O(log n)$ rounds comes from the fact that we are doing a binary search:



If the algorithm fails to terminate, then either Alice or Bob share a vertex v.



If Alice shares $v$, then $v$ has fewer than $|V_i-1|/2$ neighbors in $V_i-1$. $V_i$ is set to be this neighborhood (along with v). Observe that $|V_i|< |V_i-1|/2+1$. We will be a little hand-wavy and say $|V_i|leq |V_i-1|/2$ (although it may actually be $|V_i-1|/2+1/2$ when $|V_i-1|$ is odd).



Similarly, if Bob shares $v$, then $v$ has fewer than $|V_i-1|/2$ non-neighbors in $V_i-1$. $V_i$ is set to be this non-neighborhood (along with v). As such, $|V_i|leq |V_i-1|/2$ (again we are being a little hand-wavy).



In both cases $|V_i|leq |V_i-1|/2$. As such, if the algorithm fails to terminate after $k$ iterations, then, inductively, $|V_k|leq |V_0|/2^k$. Finally, observe that the algorithm terminates if $|V_k|leq 1$, i.e., we will terminate if ever $V_k$ is a singleton or empty. Finally, $|V_k|leq |V_0|/2^kleq 1$ if $kgeq log |V_0|=log n$ implying that we must terminate in $log n$ iterations.






share|cite|improve this answer










New contributor




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






$endgroup$








  • 1




    $begingroup$
    If $|V_i-1|$ is odd then your inequality is off by 1/2.
    $endgroup$
    – Yuval Filmus
    18 hours ago










  • $begingroup$
    Correct. Resolving the issue of parity results in at most $1+log n$ rounds.
    $endgroup$
    – James Bailey
    18 hours 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',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);



);













draft saved

draft discarded


















StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcs.stackexchange.com%2fquestions%2f106562%2fthe-clique-vs-independent-set-problem%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown

























2 Answers
2






active

oldest

votes








2 Answers
2






active

oldest

votes









active

oldest

votes






active

oldest

votes









5












$begingroup$

The two players construct a sequence $V_0 supset V_1 supset cdots supset V_m$ of sets of vertices such that:




  1. $V_0$ consists of all vertices in the graph.


  2. $|V_i+1| leq (|V_i|+1)/2$.


  3. $V_i supseteq C cap I$.

The players stop once $|V_m| leq 1$. At this point they can answer the question using $O(1)$ communication.



At round $i$, the players know $V_i-1$, and wish to construct $V_i$. They act as follows:



  • If $C cap V_i-1$ contains a vertex $v$ with fewer than $|V_i-1|/2$ neighbors in $V_i-1$, then Alice sends Bob one such vertex $v$, and both players set $V_i$ to be this set of neighbors, together with $v$ (this is valid since $C cap I subseteq C subseteq V_i$). Otherwise, she sends $bot$.


  • If Alice sent $bot$ and $I cap V_i-1$ contains a vertex $v$ with fewer than $|V_i-1|/2$ non-neighbors in $V_i-1$, then Bob sends Alice one such vertex $v$, and both players set $V_i$ to be this set of non-neighbors, together with $v$ (this is valid since $C cap I subseteq I subseteq V_i$). Otherwise, he sends Alice $bot$.


  • If both players sent $bot$, then $C cap I = emptyset$. Indeed, if $v in C cap I$, then $v$ has at least $|V_i-1|/2$ neighbors and at least $|V_i-1|/2$ non-neighbors inside $|V_i-1|$, whereas the number of potential neighbors and non-neighbors is just $|V_i-1|-1$. Therefore the players can abort and conclude that $C cap I = emptyset$.


Each round takes $O(log n)$ bits of communication, and there are $O(log n)$ rounds, for a total of $O(log^2 n)$ bits of communication.






share|cite|improve this answer











$endgroup$












  • $begingroup$
    How does the number of vertices are resuced by factor of 2 - this leads to the $O(log(n))$ rounds?
    $endgroup$
    – Jay
    yesterday











  • $begingroup$
    I'm sorry, I can't explain it any better than what I wrote.
    $endgroup$
    – Yuval Filmus
    yesterday










  • $begingroup$
    Thanks a lot Yuval, I’ll try to figure it out.
    $endgroup$
    – Jay
    yesterday















5












$begingroup$

The two players construct a sequence $V_0 supset V_1 supset cdots supset V_m$ of sets of vertices such that:




  1. $V_0$ consists of all vertices in the graph.


  2. $|V_i+1| leq (|V_i|+1)/2$.


  3. $V_i supseteq C cap I$.

The players stop once $|V_m| leq 1$. At this point they can answer the question using $O(1)$ communication.



At round $i$, the players know $V_i-1$, and wish to construct $V_i$. They act as follows:



  • If $C cap V_i-1$ contains a vertex $v$ with fewer than $|V_i-1|/2$ neighbors in $V_i-1$, then Alice sends Bob one such vertex $v$, and both players set $V_i$ to be this set of neighbors, together with $v$ (this is valid since $C cap I subseteq C subseteq V_i$). Otherwise, she sends $bot$.


  • If Alice sent $bot$ and $I cap V_i-1$ contains a vertex $v$ with fewer than $|V_i-1|/2$ non-neighbors in $V_i-1$, then Bob sends Alice one such vertex $v$, and both players set $V_i$ to be this set of non-neighbors, together with $v$ (this is valid since $C cap I subseteq I subseteq V_i$). Otherwise, he sends Alice $bot$.


  • If both players sent $bot$, then $C cap I = emptyset$. Indeed, if $v in C cap I$, then $v$ has at least $|V_i-1|/2$ neighbors and at least $|V_i-1|/2$ non-neighbors inside $|V_i-1|$, whereas the number of potential neighbors and non-neighbors is just $|V_i-1|-1$. Therefore the players can abort and conclude that $C cap I = emptyset$.


Each round takes $O(log n)$ bits of communication, and there are $O(log n)$ rounds, for a total of $O(log^2 n)$ bits of communication.






share|cite|improve this answer











$endgroup$












  • $begingroup$
    How does the number of vertices are resuced by factor of 2 - this leads to the $O(log(n))$ rounds?
    $endgroup$
    – Jay
    yesterday











  • $begingroup$
    I'm sorry, I can't explain it any better than what I wrote.
    $endgroup$
    – Yuval Filmus
    yesterday










  • $begingroup$
    Thanks a lot Yuval, I’ll try to figure it out.
    $endgroup$
    – Jay
    yesterday













5












5








5





$begingroup$

The two players construct a sequence $V_0 supset V_1 supset cdots supset V_m$ of sets of vertices such that:




  1. $V_0$ consists of all vertices in the graph.


  2. $|V_i+1| leq (|V_i|+1)/2$.


  3. $V_i supseteq C cap I$.

The players stop once $|V_m| leq 1$. At this point they can answer the question using $O(1)$ communication.



At round $i$, the players know $V_i-1$, and wish to construct $V_i$. They act as follows:



  • If $C cap V_i-1$ contains a vertex $v$ with fewer than $|V_i-1|/2$ neighbors in $V_i-1$, then Alice sends Bob one such vertex $v$, and both players set $V_i$ to be this set of neighbors, together with $v$ (this is valid since $C cap I subseteq C subseteq V_i$). Otherwise, she sends $bot$.


  • If Alice sent $bot$ and $I cap V_i-1$ contains a vertex $v$ with fewer than $|V_i-1|/2$ non-neighbors in $V_i-1$, then Bob sends Alice one such vertex $v$, and both players set $V_i$ to be this set of non-neighbors, together with $v$ (this is valid since $C cap I subseteq I subseteq V_i$). Otherwise, he sends Alice $bot$.


  • If both players sent $bot$, then $C cap I = emptyset$. Indeed, if $v in C cap I$, then $v$ has at least $|V_i-1|/2$ neighbors and at least $|V_i-1|/2$ non-neighbors inside $|V_i-1|$, whereas the number of potential neighbors and non-neighbors is just $|V_i-1|-1$. Therefore the players can abort and conclude that $C cap I = emptyset$.


Each round takes $O(log n)$ bits of communication, and there are $O(log n)$ rounds, for a total of $O(log^2 n)$ bits of communication.






share|cite|improve this answer











$endgroup$



The two players construct a sequence $V_0 supset V_1 supset cdots supset V_m$ of sets of vertices such that:




  1. $V_0$ consists of all vertices in the graph.


  2. $|V_i+1| leq (|V_i|+1)/2$.


  3. $V_i supseteq C cap I$.

The players stop once $|V_m| leq 1$. At this point they can answer the question using $O(1)$ communication.



At round $i$, the players know $V_i-1$, and wish to construct $V_i$. They act as follows:



  • If $C cap V_i-1$ contains a vertex $v$ with fewer than $|V_i-1|/2$ neighbors in $V_i-1$, then Alice sends Bob one such vertex $v$, and both players set $V_i$ to be this set of neighbors, together with $v$ (this is valid since $C cap I subseteq C subseteq V_i$). Otherwise, she sends $bot$.


  • If Alice sent $bot$ and $I cap V_i-1$ contains a vertex $v$ with fewer than $|V_i-1|/2$ non-neighbors in $V_i-1$, then Bob sends Alice one such vertex $v$, and both players set $V_i$ to be this set of non-neighbors, together with $v$ (this is valid since $C cap I subseteq I subseteq V_i$). Otherwise, he sends Alice $bot$.


  • If both players sent $bot$, then $C cap I = emptyset$. Indeed, if $v in C cap I$, then $v$ has at least $|V_i-1|/2$ neighbors and at least $|V_i-1|/2$ non-neighbors inside $|V_i-1|$, whereas the number of potential neighbors and non-neighbors is just $|V_i-1|-1$. Therefore the players can abort and conclude that $C cap I = emptyset$.


Each round takes $O(log n)$ bits of communication, and there are $O(log n)$ rounds, for a total of $O(log^2 n)$ bits of communication.







share|cite|improve this answer














share|cite|improve this answer



share|cite|improve this answer








edited yesterday

























answered yesterday









Yuval FilmusYuval Filmus

196k15184349




196k15184349











  • $begingroup$
    How does the number of vertices are resuced by factor of 2 - this leads to the $O(log(n))$ rounds?
    $endgroup$
    – Jay
    yesterday











  • $begingroup$
    I'm sorry, I can't explain it any better than what I wrote.
    $endgroup$
    – Yuval Filmus
    yesterday










  • $begingroup$
    Thanks a lot Yuval, I’ll try to figure it out.
    $endgroup$
    – Jay
    yesterday
















  • $begingroup$
    How does the number of vertices are resuced by factor of 2 - this leads to the $O(log(n))$ rounds?
    $endgroup$
    – Jay
    yesterday











  • $begingroup$
    I'm sorry, I can't explain it any better than what I wrote.
    $endgroup$
    – Yuval Filmus
    yesterday










  • $begingroup$
    Thanks a lot Yuval, I’ll try to figure it out.
    $endgroup$
    – Jay
    yesterday















$begingroup$
How does the number of vertices are resuced by factor of 2 - this leads to the $O(log(n))$ rounds?
$endgroup$
– Jay
yesterday





$begingroup$
How does the number of vertices are resuced by factor of 2 - this leads to the $O(log(n))$ rounds?
$endgroup$
– Jay
yesterday













$begingroup$
I'm sorry, I can't explain it any better than what I wrote.
$endgroup$
– Yuval Filmus
yesterday




$begingroup$
I'm sorry, I can't explain it any better than what I wrote.
$endgroup$
– Yuval Filmus
yesterday












$begingroup$
Thanks a lot Yuval, I’ll try to figure it out.
$endgroup$
– Jay
yesterday




$begingroup$
Thanks a lot Yuval, I’ll try to figure it out.
$endgroup$
– Jay
yesterday











3












$begingroup$

The $O(log n)$ rounds comes from the fact that we are doing a binary search:



If the algorithm fails to terminate, then either Alice or Bob share a vertex v.



If Alice shares $v$, then $v$ has fewer than $|V_i-1|/2$ neighbors in $V_i-1$. $V_i$ is set to be this neighborhood (along with v). Observe that $|V_i|< |V_i-1|/2+1$. We will be a little hand-wavy and say $|V_i|leq |V_i-1|/2$ (although it may actually be $|V_i-1|/2+1/2$ when $|V_i-1|$ is odd).



Similarly, if Bob shares $v$, then $v$ has fewer than $|V_i-1|/2$ non-neighbors in $V_i-1$. $V_i$ is set to be this non-neighborhood (along with v). As such, $|V_i|leq |V_i-1|/2$ (again we are being a little hand-wavy).



In both cases $|V_i|leq |V_i-1|/2$. As such, if the algorithm fails to terminate after $k$ iterations, then, inductively, $|V_k|leq |V_0|/2^k$. Finally, observe that the algorithm terminates if $|V_k|leq 1$, i.e., we will terminate if ever $V_k$ is a singleton or empty. Finally, $|V_k|leq |V_0|/2^kleq 1$ if $kgeq log |V_0|=log n$ implying that we must terminate in $log n$ iterations.






share|cite|improve this answer










New contributor




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






$endgroup$








  • 1




    $begingroup$
    If $|V_i-1|$ is odd then your inequality is off by 1/2.
    $endgroup$
    – Yuval Filmus
    18 hours ago










  • $begingroup$
    Correct. Resolving the issue of parity results in at most $1+log n$ rounds.
    $endgroup$
    – James Bailey
    18 hours ago
















3












$begingroup$

The $O(log n)$ rounds comes from the fact that we are doing a binary search:



If the algorithm fails to terminate, then either Alice or Bob share a vertex v.



If Alice shares $v$, then $v$ has fewer than $|V_i-1|/2$ neighbors in $V_i-1$. $V_i$ is set to be this neighborhood (along with v). Observe that $|V_i|< |V_i-1|/2+1$. We will be a little hand-wavy and say $|V_i|leq |V_i-1|/2$ (although it may actually be $|V_i-1|/2+1/2$ when $|V_i-1|$ is odd).



Similarly, if Bob shares $v$, then $v$ has fewer than $|V_i-1|/2$ non-neighbors in $V_i-1$. $V_i$ is set to be this non-neighborhood (along with v). As such, $|V_i|leq |V_i-1|/2$ (again we are being a little hand-wavy).



In both cases $|V_i|leq |V_i-1|/2$. As such, if the algorithm fails to terminate after $k$ iterations, then, inductively, $|V_k|leq |V_0|/2^k$. Finally, observe that the algorithm terminates if $|V_k|leq 1$, i.e., we will terminate if ever $V_k$ is a singleton or empty. Finally, $|V_k|leq |V_0|/2^kleq 1$ if $kgeq log |V_0|=log n$ implying that we must terminate in $log n$ iterations.






share|cite|improve this answer










New contributor




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






$endgroup$








  • 1




    $begingroup$
    If $|V_i-1|$ is odd then your inequality is off by 1/2.
    $endgroup$
    – Yuval Filmus
    18 hours ago










  • $begingroup$
    Correct. Resolving the issue of parity results in at most $1+log n$ rounds.
    $endgroup$
    – James Bailey
    18 hours ago














3












3








3





$begingroup$

The $O(log n)$ rounds comes from the fact that we are doing a binary search:



If the algorithm fails to terminate, then either Alice or Bob share a vertex v.



If Alice shares $v$, then $v$ has fewer than $|V_i-1|/2$ neighbors in $V_i-1$. $V_i$ is set to be this neighborhood (along with v). Observe that $|V_i|< |V_i-1|/2+1$. We will be a little hand-wavy and say $|V_i|leq |V_i-1|/2$ (although it may actually be $|V_i-1|/2+1/2$ when $|V_i-1|$ is odd).



Similarly, if Bob shares $v$, then $v$ has fewer than $|V_i-1|/2$ non-neighbors in $V_i-1$. $V_i$ is set to be this non-neighborhood (along with v). As such, $|V_i|leq |V_i-1|/2$ (again we are being a little hand-wavy).



In both cases $|V_i|leq |V_i-1|/2$. As such, if the algorithm fails to terminate after $k$ iterations, then, inductively, $|V_k|leq |V_0|/2^k$. Finally, observe that the algorithm terminates if $|V_k|leq 1$, i.e., we will terminate if ever $V_k$ is a singleton or empty. Finally, $|V_k|leq |V_0|/2^kleq 1$ if $kgeq log |V_0|=log n$ implying that we must terminate in $log n$ iterations.






share|cite|improve this answer










New contributor




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






$endgroup$



The $O(log n)$ rounds comes from the fact that we are doing a binary search:



If the algorithm fails to terminate, then either Alice or Bob share a vertex v.



If Alice shares $v$, then $v$ has fewer than $|V_i-1|/2$ neighbors in $V_i-1$. $V_i$ is set to be this neighborhood (along with v). Observe that $|V_i|< |V_i-1|/2+1$. We will be a little hand-wavy and say $|V_i|leq |V_i-1|/2$ (although it may actually be $|V_i-1|/2+1/2$ when $|V_i-1|$ is odd).



Similarly, if Bob shares $v$, then $v$ has fewer than $|V_i-1|/2$ non-neighbors in $V_i-1$. $V_i$ is set to be this non-neighborhood (along with v). As such, $|V_i|leq |V_i-1|/2$ (again we are being a little hand-wavy).



In both cases $|V_i|leq |V_i-1|/2$. As such, if the algorithm fails to terminate after $k$ iterations, then, inductively, $|V_k|leq |V_0|/2^k$. Finally, observe that the algorithm terminates if $|V_k|leq 1$, i.e., we will terminate if ever $V_k$ is a singleton or empty. Finally, $|V_k|leq |V_0|/2^kleq 1$ if $kgeq log |V_0|=log n$ implying that we must terminate in $log n$ iterations.







share|cite|improve this answer










New contributor




James Bailey 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 answer



share|cite|improve this answer








edited 15 hours ago





















New contributor




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









answered 19 hours ago









James BaileyJames Bailey

312




312




New contributor




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





New contributor





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






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







  • 1




    $begingroup$
    If $|V_i-1|$ is odd then your inequality is off by 1/2.
    $endgroup$
    – Yuval Filmus
    18 hours ago










  • $begingroup$
    Correct. Resolving the issue of parity results in at most $1+log n$ rounds.
    $endgroup$
    – James Bailey
    18 hours ago













  • 1




    $begingroup$
    If $|V_i-1|$ is odd then your inequality is off by 1/2.
    $endgroup$
    – Yuval Filmus
    18 hours ago










  • $begingroup$
    Correct. Resolving the issue of parity results in at most $1+log n$ rounds.
    $endgroup$
    – James Bailey
    18 hours ago








1




1




$begingroup$
If $|V_i-1|$ is odd then your inequality is off by 1/2.
$endgroup$
– Yuval Filmus
18 hours ago




$begingroup$
If $|V_i-1|$ is odd then your inequality is off by 1/2.
$endgroup$
– Yuval Filmus
18 hours ago












$begingroup$
Correct. Resolving the issue of parity results in at most $1+log n$ rounds.
$endgroup$
– James Bailey
18 hours ago





$begingroup$
Correct. Resolving the issue of parity results in at most $1+log n$ rounds.
$endgroup$
– James Bailey
18 hours ago


















draft saved

draft discarded
















































Thanks for contributing an answer to Computer Science Stack Exchange!


  • Please be sure to answer the question. Provide details and share your research!

But avoid


  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.

Use MathJax to format equations. MathJax reference.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcs.stackexchange.com%2fquestions%2f106562%2fthe-clique-vs-independent-set-problem%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown