Local Checkability, No Strings Attached Klaus-Tycho Förster , Thomas Lüdi, Jochen Seidel, Roger Wattenhofer January 06, 2016 @ ICDCN 2016 - Singapore ETH Zurich – Distributed Computing – www.disco.ethz.ch
Deciding vs Checking Prove
Deciding vs Checking Prove Verify
Complexity Theory P NP Prove Verify In polynomial time In polynomial time
Overview • Introduction • Background & model • Undirected vs directed communication • Study of 𝑡 − 𝑢 reachability • Conclusion
Let's get Distributed • Is 𝑜 even? • Ω(𝑜) rounds, even with unique identifiers in the -model
Let's get Distributed 1 0 0 1 1 0 • Is 𝑜 even? • Ω(𝑜) rounds, even with unique identifiers in the -model • rover assigns 1 bit
Let's get Distributed Yes 1 Yes Yes 0 0 Yes Yes 1 1 Yes 0 • Is 𝑜 even? • Θ(𝑜) rounds in the -model • rover assigns 1 bit -> erify in 1 round
Let's get Distributed Yes 1 Yes Yes 0 0 Yes Yes 1 1 Yes 0 • Is 𝑜 even? • Θ(𝑜) rounds in the -model • rover assigns 1 bit -> erify in 1 round • Other way to think of it: 1 bit of non-determinism • General question: How many bits necessary/sufficient?
Accepting a proof Yes 1 Yes Yes 0 0 Yes Yes 1 1 Yes 0 • Every node outputs Yes -> Proof accepted • One node outputs No -> Proof rejected
Accepting a proof Yes 1 Yes Yes 0 0 No No 1 1 No 1 • Every node outputs Yes -> Proof accepted • One node outputs No -> Proof rejected – rover chose the wrong proof
Accepting a proof Yes 1 Yes Yes 0 0 No Yes 1 1 Yes No 1 0 • Every node outputs Yes -> Proof accepted • One node outputs No -> Proof rejected – rover chose the wrong proof – Property does not hold
Overview • Introduction • Background & model • Undirected vs directed communication • Study of 𝑡 − 𝑢 reachability • Conclusion
Overview • Introduction • Background & model • Undirected vs directed communication • Study of 𝑡 − 𝑢 reachability • Conclusion
Some Related Work • [Naor and Stockmeyer, STOC 1993]: What can be computed locally? • [Göös and Suomela, PODC 2011]: Locally Checkable Proofs (LCP) • [Korman et al., ICDCN 2006, …]: Proof Labeling Schemes (PLS) • [Fraigniaud et al., FOCS 2011,…]: Nondeterministic Local Decision (NLD) – [Fraigniaud et al., DISC 2012,…]: “Randomization” • Another way to think of it [Blin et al., SSS 2014]: – “any mechanism insuring silent self -stabilization is essentially equivalent to a proof- labeling scheme”
“No Strings attached” • No knowledge of 𝑜 • No identifiers • No port numbers • No relaying of messages - just one round
Graphs and Communication • (Weakly) Connected graphs 𝐻 = (𝑊, 𝐹) with 𝑊 = 𝑜 – Yes instances G ∈ Y & No instances G ∉ Y [0] [1] • Undirected: U(v) for every v ∈ 𝑊 1 0 – multiset of labels of all neighbors • Directed: D 1 (v) for every v ∈ 𝑊 [ ] [0] – Multiset I of labels of all incoming-neighbors 1 0 • Directed: D 2 (v) for every v ∈ 𝑊 0 , [ ] , [1] – two multisets ( I,O ) of labels of all • incoming-neighbors 1 0 • outgoing-neighbors
Local Checkability • gets as input G ∈ Y rover – Assigns a labels ℓ(v) for every v ∈ 𝑊 • erifier is a distributed algorithm that gets as input at node v both ℓ(v) & U(v) (or D 1 (v) / D 2 (v) ) – Outputs either Yes or No • A Prover-Verifier pair ( , is correct for Y if: – G ∈ Y & labels from : outputs Yes at all nodes – G ∉ Y : outputs No for at least one node
Prover-Verifier Pairs • We investigate if there are correct ( , for some Y – (abbreviated by U -PVP, D 1 -PVP, D 2 -PVP) • The quality of a PVP is its proof size – 𝑔 𝑜 , if the PVP uses at most 𝑔 𝑜 bits for each label in any Yes instance with at most 𝑜 nodes • The U -proof size of Y is the smallest proof size for which there exists a correct U -PVP – Analogous for D 1 -proof size / D 2 -proof size • In this talk: All logarithms are of base 2 and rounded up to be of integer value
Overview • Introduction • Background & model • Undirected vs directed communication • Study of 𝑡 − 𝑢 reachability • Outlook
Overview • Introduction • Background & model • Undirected vs directed communication • Study of 𝑡 − 𝑢 reachability • Outlook
Undirected vs Directed Communication • The different models can induce different amount of bits required in the proof size – Or might even render a problem impossible • Example problem Y : CYCLE – U-CYCLE : all undirected graphs containing a cycle – D-CYCLE : all directed graphs containing a directed cycle
D-CYCLE : Is there a D 1 -PVP? 𝐻: A B c 2 c 1 a b
D-CYCLE : Is there a D 1 -PVP? Yes Yes Yes Yes 𝐻: A B c 2 c 1 a b
D-CYCLE : Is there a D 1 -PVP? Yes Yes Yes Yes 𝐻: A B c 2 c 1 a b 𝐼: B A B b ’ a b
D-CYCLE : Is there a D 1 -PVP? Yes Yes Yes Yes 𝐻: A B c 2 c 1 a b Yes Yes Yes 𝐼: B A B b ’ a b
D-CYCLE : Is there a D 1 -PVP? Yes Yes Yes Yes 𝐻: A B c 2 c 1 a b Yes Yes Yes 𝐼: B A B b ’ a b There is no D 1 -PVP for D-CYCLE
CYCLE Problem Directed one-way Directed two-way Undirected CYCLE Impossible
D-CYCLE : Is there a D 2 -PVP?
D-CYCLE : Is there a D 2 -PVP? • rover labels nodes as follows: • In a directed cycle? -> 0 • Else: Minimum distance to a cycle – (in the underlying undirected graph) • Proof size: log 𝑜 bits
D-CYCLE : Is there a D 2 -PVP? • rover labels nodes as follows: • In a directed cycle? -> 0 • Else: Minimum distance to a cycle – (in the underlying undirected graph) • Proof size: log 𝑜 bits 0 0 1 0 0 5 0 2 1 0 0 4 3
D-CYCLE : Is there a D 2 -PVP? • erifier returns Yes – For nodes v c with label ℓ(vc)=0 if for ( I,O ) holds: • 0 ∈ O and 0 ∈ I – For the other nodes v with label ℓ(v) if 1. There is a label ℓ(u) in ( I,O ) with ℓ(v)=ℓ(u)+1 , and 2. There is no label ℓ(u′) in ( I,O ) with ℓ(v)>ℓ(u′)+1
D-CYCLE : Is there a D 2 -PVP? • erifier returns Yes – For nodes v c with label ℓ(vc)=0 if for ( I,O ) holds: • 0 ∈ O and 0 ∈ I – For the other nodes v with label ℓ(v) if 1. There is a label ℓ(u) in ( I,O ) with ℓ(v)=ℓ(u)+1 , and 2. There is no label ℓ(u′) in ( I,O ) with ℓ(v)>ℓ(u′)+1 0 0 1 0 0 5 2 1 0 0 0 4 3
Is the described D 2 -PVP correct? • Yes instances labeled by : – Only nodes in directed cycles labeled with 0 -> Yes – All other nodes: Label is defined by minimum distance to a directed cycle -> Yes • No instances: – Is there a node with label 0? Follow “0 - path” -> No – No node with label 0, but one with label k? • Follow “descending path” -> No
D 2 -proof size: Ω log 𝑜 bits 𝐻: B A B A v i v i+1 v i+2 v n-2 v n-1 v n v 1 v i-1 v j-1 v j+1 v j v j+2
D 2 -proof size: Ω log 𝑜 bits Yes 𝐻: B A B A v i v i+1 v i+2 v n-2 v n-1 v n v 1 v i-1 v j-1 v j+1 v j v j+2
D 2 -proof size: Ω log 𝑜 bits Yes 𝐻: B A B A v i v i+1 v i+2 v n-2 v n-1 v n v 1 v i-1 v j-1 v j+1 v j v j+2 𝐼: B A B A u i u i+1 u i+2 u' j-1 u j-1 u j+1 u j u' i+2
D 2 -proof size: Ω log 𝑜 bits Yes 𝐻: B A B A v i v i+1 v i+2 v n-2 v n-1 v n v 1 v i-1 v j-1 v j+1 v j v j+2 Yes 𝐼: B A B A u i u i+1 u i+2 u' j-1 u j-1 u j+1 u j u' i+2
CYCLE Problem Directed one-way Directed two-way Undirected Θ(log 𝑜) CYCLE Impossible
U-proof size: At least 2 Bits 𝐻 1 : 𝐼 1 : 0 0 0 0 0 𝐻 2 : 𝐼 2 : 0 0 0 1 0 1 𝐻 3 : 𝐼 3 : 0 1 1 1 0 1 0 𝐼 4 : 𝐻 4 : 1 0 0 0 0
U-PVP for CYCLE with 2 bits • rover labels nodes as follows: • In a cycle? -> 3 • Else: Remove all cycles, remaining graph is a forest – For each tree T: » Create a root r adjacent to a cycle in 𝐻 with label 0 » Other nodes: Distance to r modulo 3 • Proof size: 2 bits 3 3 0 3 3 2 3 2 1 3 3 1 0
U-PVP for CYCLE with 2 bits • erifier returns Yes – For nodes v c with label ℓ(v c )=3 if holds: • Two neighbors with label 3 exist – For the other nodes v with label ℓ(v) ∈ 0,1,2 if 1. There is no neighbor with label ℓ(v) , and 2. Exactly one neighbor exists with label ℓ(v)−1 mod 3 or at least one neighbor with label of 3
Is the described U -PVP correct? • Yes instances labeled by : – Only nodes in cycles labeled with 3 -> Yes – Without the cycles, all other nodes are in a tree with labels as distance to root mod 3, and root is adjacent to a cycle -> Yes 3 3 0 3 3 2 3 2 1 3 3 1 0
Is the described U -PVP correct? • Yes instances labeled by : – Only nodes in cycles labeled with 3 -> Yes – Without the cycles, all other nodes are in a tree with labels as distance to root mod 3, and root is adjacent to a cycle -> Yes • No instances (without a cycle): – Is there a node with label 3? They form a forest, consider any leaf-> No – Else: follow “descending path” -> No
Recommend
More recommend