Complexity Classes and the Graph Isomorphism Problem
-
Upload
cseiitgn -
Category
Engineering
-
view
113 -
download
3
Transcript of Complexity Classes and the Graph Isomorphism Problem
Complexity Classes and the Graph Isomorphism problem
Jacobo Toran
University of Ulm
NMI Complexity and Cryptography Workshop,
IIT Gandhinagar, November 2016
1
Isomorphism and Automorphism
Two graphs G1 = (V1, E1), G2 = (V2, E2)
Isomorphism: Bijection ϕ : V1 → V2,(u, v) ∈ E1 ⇔ (ϕ(u), ϕ(v)) ∈ E2.
Automorphism: Permutation ϕ : V1 → V1,(u, v) ∈ E1 ⇔ (ϕ(u), ϕ(v)) ∈ E1.
ϕ
2
Upper Bounds
G,H graphs
GI: are G and H isomorphic?
GA: does G have a non-trivial automorphism?
P
NP
GIGA
3
Upper Bounds
G,H graphs
GI: are G and H isomorphic?
GA: does G have a non-trivial automorphism?
Time(2logO(1) n)
[Babai 15]
P
NP
GIGA
4
G,H graphs
GI: are G and H isomorphic?
GA: does G have a non-trivial automorphism?
Time(2logO(1) n)
P
NP
GIGA
coAM
5
G,H graphs
GI: are G and H isomorphic?
GA: does G have a non-trivial automorphism?
Time(2logO(1) n)
P
NP
GIGA
coAM
⊕P
6
G,H graphs
GI: are G and H isomorphic?
GA: does G have a non-trivial automorphism?
Time(2logO(1) n)
P
NP
GIGA
coAM
⊕P
SPP
7
G,H graphs
GI: are G and H isomorphic?
GA: does G have a non-trivial automorphism?
Time(2logO(1) n)
P
NP
GIGA
coAM
⊕P
SPP
UAP
8
Linear Programing:
NP ∩ coNP [Gale, Kuhn Tucker 48]
P [Khachiyan 79]
Primes:
NP ∩ coNP [Pratt 75]
coRP [Solovay, Strassen 77]
nO(log logn) [Adleman, Pomerance, Rumely 81]
RP [Adleman, Huang 87]
UP ∩ coUP [Fellows, Koblitz 92]
P [Agrawal, Kayal, Saxena 02]
9
Let A and B be two groups, with B ≤ A and ϕ ∈ A.
Bϕ = {πϕ : π ∈ B}
is a subset of A called a right coset of B in A.
Two right cosets Bϕ1, Bϕ2 are either disjoint or equal.
A = Bϕ1 +Bϕ2 + · · ·+Bϕk.
The set {ϕ1, . . . , ϕk} is called a complete right transversal for B in A.
10
Let G1 and G2 be two graphs.
Fact: If G1 and G2 are isomorphic then, Iso(G1, G2) is a right coset of
Aut(G1), and thus |Iso(G1, G2)| = |Aut(G1)|.
11
Permutation groups
Let A ≤ Sn. For i ∈ {1, . . . , n} the orbit of i in A is the set
{j : ∃ϕ ∈ A, ϕ(i) = j}.
A[i 7→j], is the set of all permutations in A which map i to j.
For X ⊆ {1, . . . , n} i ∈ {1, . . . , n} the pointwise stabilizer of X in A.
A[X] is the set of permutations
A[X] = {ϕ ∈ A : ∀x ∈ X, ϕ(x) = x}.
A[i] = A[{i}] = {ϕ ∈ A : ϕ(i) = i}.
12
Graph G = (V,E), X ⊆ V ,
Aut(G)[X] = Aut(G[X]).
GX
G[X]
G[1,...,i] := G(i)
13
Pointwise stabilizers play an important role in group theoretic algorithms.
One can construct a “tower” of stabilizers in the following way: let
Xi = {1, . . . , i} and denote A[Xi] by A(i), then
{id} = A(n) ≤ A(n−1) ≤ · · · ≤ A(1) ≤ A(0) = A.
14
Lemma:
Let i ∈ {1, . . . n} and A = A[i]π1 +A[i]π2 + · · ·+A[i]πd.
Then d is the size of the orbit of i in A, and for all ψ ∈ A[i]π,
π(i) = ψ(i).
If {j1, . . . , jd} is the orbit of i in A, then
A is partitioned into d sets of equal cardinality:
|A[i 7→j1]| = · · · = |A[i 7→jd]|.
Thus, |A| = d ∗ |A[i]|, and for every j ∈ {1, . . . , n}, the number of
permutations in A which map i to j is either 0 or |A[i]|.
15
Corollary:
Let di be the size of the orbit of i in A(i−1), 1 ≤ i ≤ n.
|A| =n∏
i=1
di
.
16
j is in the orbit of i in G(i−1) iff the graphs are isomorphic
j
[i− 1]
i i
[i− 1]
j
Corollary: [Mathon 79] #Aut(G) and #Iso(G1, G2) can be computed
with non-adaptive queries to GI.
17
Theorem: [Sims 70], [Furst,Hopcroft,Luks 80]
Let Ti be a complete right transversal for A(i) in A(i−1), 1 ≤ i ≤ n, and
let K0 =⋃n
i=1 Ti, then
1. every element π ∈ A can be expressed uniquely as a product
π = ϕ1ϕ2 . . . ϕn with ϕi ∈ Ti,
2. from K0 membership in A can be tested in O(n2) steps,
3. the order of A can be determined in O(n2) steps.
K0 is called a strong generator set for A.
18
Complexity classesCounting classes
For a nondeterministic poly-time machine M and x ∈ Σ∗,
accM (x) is the number of accepting computation paths of M on input x.
(accAM (x) for an oracle set A.)
rejM (x) is the number of rejecting computation paths of M on input x.
gapM (x) = accM (x)− rejM (x)
19
Class of all languages L for which there exists a nondeterministic
polynomial-time machine M such that, for all x,
NP x ∈ L =⇒ accM (x) > 0,
x 6∈ L =⇒ accM (x) = 0.
UP x ∈ L =⇒ accM (x) = 1,
x 6∈ L =⇒ accM (x) = 0.
ModkP x ∈ L =⇒ accM (x) ≡ 1mod k,
x 6∈ L =⇒ accM (x) 6≡ 1 mod k.
20
Tournament GI is in Mod2P [Goldschlager, Parberry 86]
If G is tournament graph, id is the only automorphism π ∈ Aut(G) that
is self-inverse (π = π−1).
If π 6= id, then for some i, π(i) 6= i. But π(π(i)) = i and this implies
(i, π(i)) ∈ E ⇔ (π(i), i) ∈ E.
All nontrivial automorphisms of a tournament graph G can be grouped into
pairs (πi, π−1i ) and |Aut(G)| is odd.
#GI(G,H) =
#GA(G), G ≡ H
0, G 6≡ H
21
A function f : Σ∗ → N is in #P if there is a nondeterministic
polynomial-time machine M such that for every x in Σ∗,
f(x) = accM (x).
A function f : Σ∗ → Z is in Gap-P if there is a nondeterministic
polynomial-time machine M such that for every x in Σ∗,
f(x) = gapM (x).
⇐⇒ ∃f1, f2 ∈ #P, ∀x ∈ Σ∗, f(x) = f1(x)− f2(x).
22
Class of all languages L for which there exists a nondeterministic
polynomial-time machine M such that, for all x,
C=P x ∈ L =⇒ gapM (x) = 0,
x 6∈ L =⇒ gapM (x) > 0.
SPP x ∈ L =⇒ gapM (x) = 1,
x 6∈ L =⇒ gapM (x) = 0.
23
GA ∈ SPP [Kobler,Schoning,T. 92]
Let G = (V,E), |V | = n. Consider the function
f(G) =∏
1≤i<j≤n
(|Aut(G)[i]| − |Aut(G)[i 7→j]|).
f ∈ Gap-P.
If G ∈ GA then there is a non-trivial automorphism π ∈ Aut(G) such
that π(i) = j for some i, j, i < j.
π ∈ Aut(G)[i 7→j] and |Aut(G)[i]| = |Aut(G)[i 7→j]|.
At least one of the factors of f(G) and f(G) = 0.
If G 6∈ GA, then ∀i, j, i < j, |Aut(G)[i 7→j]| = 0. and
Aut(G)[i] = {id}.
All the factors of f(G) have value 1 and f(G) = 1.
24
Theorem: Let L ⊆ Σ⋆. If L can be computed in polynomial time by
asking only such queries y to an oracle set A ∈ NP for which
accMA(y) ∈ {0, 1} (UP like queries), then L ∈ SPP .
MA nondeterministic poly-time machine computing A.
25
Theorem: [Kobler,Schoning,T. 92]
GI can be computed in polynomial time by asking only such queries y to
an oracle set A ∈ NP for which accMA(y) ∈ {0, n!}.
MA nondeterministic poly-time machine computing A.
A = {(G1, G2,m) | G1 ≡ G2,m ∈ N}
MA on input (G1, G2,m) guesses x, y and accepts iff x is an
isomorphism and 1 ≤ y ≤ m.
accMA(G1, G2,m) = m ·#GI(G1, G2),
26
input (G,H);
d := 1; /∗ d is used to count the number of automorphisms of G ∗/
for i := n downto 1 do
di := 1; /∗ di determines the size of the orbit of i in Aut(G)(i−1) ∗/
for j := i+ 1 to n do
/∗ test whether j lies in the orbit of i in Aut(G)(i−1) ∗/
G1 := G(i−1)[i] ; G2 := G
(i−1)[j] ;
if (G1, G2, n!/d) ∈ A then di := di + 1 end;
end;
d := d ∗ di; /∗ now d = #GA(G(i−1)) ∗/
end
if (G,H, n!/d) ∈ A then accept else reject end;
27
The queries (G1, G2,m) are of the form (G(i−1)[i] , G
(i−1)[j] , n!/d).
There are either 0 or #GA(G(i)) many automorphisms in Aut(G(i−1))
such that ϕ(i) = j.
Since d = #GA(G(i)), it follows that #GI(G1, G2) ∈ {0, d} and
accMA(G1, G2, n!/d) ∈ {0, n!}.
28
GI ∈ SPP [Arvind, Kurur 02]
Theorem: There is a poly-time algorithm that on input a generator set for
B ≤ Sn and π ∈ Sn computes the lexicographically least element of
Bπ.
Theorem: GI can be computed in polynomial time by asking only such
queries y to an oracle set A ∈ NP for which accMA(y) ∈ {0, 1}.
MA nondeterministic poly-time machine computing A.
29
A = {(S, i, j, π) | S ⊆ Aut(G(i)) and π is a partial permutation
that fixes [i− 1] and π(i) = j
and there is a ϕ ∈ Aut(G(i−1)) such that
ϕ extends π and ϕ = lex− least(〈S〉ϕ)}
A ∈ NP
If 〈S〉 = Aut(G(i−1)) then there is at most one such extension ϕ of π.
30
Games with unique winning strategies
Alternating generalization of UP
Def: [Niedermeier Rossmanith 98] An alternating Turing machine is
unambiguous if every accepting existential configuration has exactly one
move to an accepting configuration, and every rejecting universal
configuration has exactly one move to a rejecting configuration. The class
UAP contists of all languages accepted by polynomial-time unambiguous
alternating machines.
UAP ⊆ SPP
31
Theorem: [Crasmaru, Glaßer, Regan, Sangupta 04]
The class of problems that can be computed in polynomial time with
“UP-like” queries to an oracle set in NP is contained in UAP.
Corollary: GI ∈ UAP.
32
Complexity classesProbabilistic classes
Def: L ∈ NP if there is a set D ∈ P and a polynomial p, for all x,
x ∈ L⇔ [∃y, |y| = p(|x|) : 〈x, y〉 ∈ D]
Def: [Babai 85] L ∈ AM if there is a set D ∈ P and polynomial p such
that for all x,
x ∈ L⇒ Probw∈Σp(|x|) [∃y, |y| = p(|x|) : 〈x, y, w〉 ∈ D] ≥ 34 ,
x 6∈ L⇒ Probw∈Σp(|x|) [∃y, |y| = p(|x|) : 〈x, y, w〉 ∈ D] ≤ 14 ,
AM = BP·NP
33
Standard AM method for isomorphims problems
Given two structures A,B
1) Define a set S(A,B) in NP and a function f ∈ FP s.t.
A 6≡ B ⇒ ||S(A,B)|| ≥ 2f(n).
A ≡ B ⇒ ||S(A,B)|| ≤ f(n).
2) Estimate the size of ||S(A,B)|| using randomized hashing.
34
Given graphs G1, G2 on n vertices, consider the set
N(G1, G2) = {(H,ϕ) | (H ≡ G1 or H ≡ G2) and ϕ ∈ Aut(H)}
= {(H,ϕ) | H ≡ G1 and ϕ ∈ Aut(H)} ∪
{(H,ϕ) | H ≡ G2 and ϕ ∈ Aut(H)}
|N(G1, G2)| =
n! if G1 ≡ G2
2 · n! if G1 6≡ G2
35
Derandomization of AM protocols
Hardness hypothesis imply AM = NP
Hardness hypothesis:
[Arvind Kobler 97] ∀ǫ > 0 there is a language L in NE ∩ coNE so that
any nondeterministic circuit of of size 2ǫn agrees with Ln on at most
1/2 + 2−ǫn inputs.
Open: Is there a better way for derandomizing the AM protocol for Graph
non-Iso than derandomizing the whole class AM?
36
The Minimum Circuit Size Problem (MCSP)
MCSP: [Yablonski 59] Given s ∈ N and a Boolean function f on n
variables, represented by its truth table of size 2n , determine if f has a
circuit of size s.
MCSP ∈ NP.
Not known to be NP-complete.
If MCSP is NP-complete (under logspace reductions) then P 6= PSPACE
[Murray, Williams 15]
GI is randomly reducible to MCSP [Allender, Das 14]
37
PGI
bb
b b
b
b
NP coNP
coAM
UP
b
b
b
UAP
SPP
ModkP
38
Lower Bounds
Is GI hard for some complexity class?
What problems can be reduced to GI?
Hard instances of GI
(bench marks, concrete algorithms, proof systems ...)
39
Undirected Graph (non)Reachability is reducible to GI
s tG
Is t reachable from s?
s1 t1
G′
s2 t2
There is no path from s to t in G ⇐⇒
there is some automorphism mapping s1 to s2 in G′
40
there is some automorphism mapping s1 to s2 in G′ ⇐⇒
G′′ is isomorphic to H ′′.
s1 t1
G′′
s2 t2
s3 t3
H ′′
s4 t4
⇒ GI is hard for LOGSPACE
41
Basic multiplication gadget
Let A = {1, . . .m} be finite group, x, y, z ∈ A.
Simulation of x · y = z
⊙
y
x
z
42
Basic multiplication gadget
y
x
z⊙
b
b
b
b
b
bb
b
b
b
b
b
x1xi. . .
xm
y1
yj
. . .
ymum,m
ui,j
u1,1
. . .
. . .z1·1 = z1
zi·j
zm
. . .
. . .
43
Simulation of an addition gate in Z2
y
x
z⊕
b
b
b
b
b
b
b
b
b
b
x0
x1
y0
y1
u1,1
u1,0
u0,1
u0,0
z0
z1
44
Automorphisms of the gadgetCase 1: A Abelian group
Element a ∈ A is encoded as the mapping i→ a · i in the corresponding
vertices.
Level 1:
i→ x · i on the subgraph from input x.
j → y · j on the subgraph from input y.
Level 2:
(i, j) → (x · i, y · j) on the middle vertices.
Level 3:
k = i · j → x · i · y · j = x · y · i · j = x · y · k
45
Simulation of a circuit with gates over A
⊕
⊕
⊕
⊕
⊕
1
0
1
1
1 ·
···
··G2
·
···
··G2
G2
··
··G2
G2·· ··
46
CFI-graphs [Cai, Furer, Immerman 92] are constructed following this
principle.
The evaluation of circuits over Abelian groups is as hard as DET, the class
of problems reducible to the Determinant.
GI is hard for DET [T 04].
AC0 ⊆ NC1 ⊆ L ⊆ NL ⊆ DET ⊆ NC2 ⊆. . . P
47
Automorphisms of the gadgetCase 2: A non-Abelian
y
x
z⊙
b
b
b
b
b
bb
b
b
b
b
b
x1xi. . .
xm
y1
yj
. . .
ymum,m
ui,j
u1,1
. . .
. . .z1·1 = z1
zi·j
zm
. . .
. . .
48
Automorphisms of the gadgetCase 2: A non-Abelian
Representation of the group elements:
We associate each element k ∈ A with the set of pairs (i, j) satisfying
k = i · j.
Element k ∈ A is encoded as the mapping i→ l · i · r for a pair (l, r)
with l · r = k in the corresponding vertices. Many encodings for a are
possible.
L R
Res
⊙
49
Lemma: For every pair of elements l, r ∈ A, the automorphisms that
map each vertex k in a Res subgraph to l · k · r are those that for some
element t map each vertex i in subgraph L to l · i · t, and maps each
vertex j in subgraph R to t−1 · j · r.
(The elements encoded in subgraphs L and R are respectively l · t and
t−1 · r.)
(l, t) (t−1, r)
(l, r)
⊙
50
Tree-Evaluation
Let A be a finite group. Given a binary tree T with a group element a ∈ A
in each leaf, is the product of the elements equal to id?
51
For every finite (quasi) group, the Tree-Evaluation Problem is reducible to
GI.
(l, r)
(t−1, r)(l, t)
a b
a · b = l · r
a = l · t
⇒ t−1 · r = a−1 · l · r = b
52
Tree Evaluation is in NC1
Tree Evaluation over S5 is NC1-complete
Circuit Evaluation over S5 is P-complete
53
b
b
b
NC1
L
NL
b
bb
SAC1
AC1
DET
NC2 b
PGI
bb
54
b
b
b
NC1
L
NL
b
bb
SAC1
AC1
DET
NC2 b
PGI
bb
b b
b
b
NP coNP
coAM
UP
b
b
b
UAP
SPP
ModkP
55