Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in...
Transcript of Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in...
![Page 1: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/1.jpg)
Combinatorics�������
![Page 2: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/2.jpg)
Course Info
• Instructor: ���
• [email protected], [email protected]
• Office hour: 804 , Tuesday, 2pm-4pm
• course homepage:
• http://tcs.nju.edu.cn/wiki/
![Page 3: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/3.jpg)
Textbook
van Lint and Wilson, A course in Combinatorics, 2nd Edition.
Jukna, Extremal Combinatorics: with applications in computer science,2nd Edition.
![Page 4: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/4.jpg)
Reference Books
Graham, Knuth, and Patashnik, Concrete Mathematics: A Foundation for Computer Science
Stanley, Enumerative Combinatorics, Volume 1
![Page 5: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/5.jpg)
Alon and Spencer. The Probabilistic Method.
Reference Books
Cook, Cunningham, Pulleyblank, and Schrijver. Combinatorial Optimization.
Aigner and Ziegler. Proofs from THE BOOK.
![Page 6: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/6.jpg)
Combinatorics
• Enumeration (counting):
• Existence:
• Extremal:
• Ramsey:
• Optimization:
• Construction (design):
How many solutions to these constraints?
Does a solution exist?
When a solution is sufficiently large, some structure must emerge.
How large/small a solution can be to preserve/avoid certain structure?
Find the optimal solution.
Construct a solution.
solution: combinatorial objectconstraint: combinatorial structure
combinatorial≈discrete finite
![Page 7: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/7.jpg)
Tools (and prerequisites)
• Combinatorial (elementary) techniques;
• Algebra (linear & abstract);
• Probability theory;
• Analysis (calculus).
![Page 8: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/8.jpg)
Enumeration(counting)
• to rank n people?
• to assign m zodiac signs to n people?
• to choose m people out of n people?
• to partition n people into m groups?
• to distribute m yuan to n people?
• to partition m yuan to n parts?
• ... ...
How many ways are there:
![Page 9: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/9.jpg)
Gian-Carlo Rota (1932-1999)
The Twelvefold Way
Stanley, Enumerative Combinatorics, Volume 1
![Page 10: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/10.jpg)
The twelvefold wayf : N �M |N | = n, |M | = m
elements of N
elements of M any f 1-1 on-to
distinct distinct
identical distinct
distinct identical
identical identical
![Page 11: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/11.jpg)
balls per bin: unrestricted ≤ 1 ≥ 1
n distinct balls,m distinct bins
n identical balls,m distinct bins
n distinct balls,m identical bins
n identical balls,m identical bins
Knuth’s version (in TAOCP vol.4A)
n balls are put into m bins
![Page 12: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/12.jpg)
Counting (labeled) trees
“How many different trees can be formed from n distinct vertices?”
![Page 13: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/13.jpg)
Cayley’s formulafor the number of trees
Chapter 30
Arthur Cayley
One of the most beautiful formulas in enumerative combinatorics concernsthe number of labeled trees. Consider the set N = {1, 2, . . . , n}. Howmany different trees can we form on this vertex set? Let us denote thisnumber by Tn. Enumeration “by hand” yields T1 = 1, T2 = 1, T3 = 3,T4 = 16, with the trees shown in the following table:
4 3 4 3 43 43 4 3 4 3 4 3 4
3 4 3 4 3 43 43 4 3 4 3 4 3 4
1 1 1 2 1 21 22
1 2 1 2 1 21 21
3
2 2 1 2 1 2
1 2 1 2 1 21 21 2 1 2 1 2 1 2
1
3 33
Note that we consider labeled trees, that is, although there is only one treeof order 3 in the sense of graph isomorphism, there are 3 different labeledtrees obtained by marking the inner vertex 1, 2 or 3. For n = 5 there arethree non-isomorphic trees:
605 60
For the first tree there are clearly 5 different labelings, and for the secondand third there are 5!
2 = 60 labelings, so we obtain T5 = 125. This shouldbe enough to conjecture Tn = nn−2, and that is precisely Cayley’s result.
Theorem. There are nn−2 different labeled trees on n vertices.
This beautiful formula yields to equally beautiful proofs, drawing on avariety of combinatorial and algebraic techniques. We will outline threeof them before presenting the proof which is to date the most beautiful ofthem all.
Arthur Cayley(1821-1895)
There are nn�2 trees on n distinct vertices.
Cayley’s formula:
![Page 14: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/14.jpg)
Algorithmic Enumeration
“The number of different spanning trees of G(V,E).”
input: undirected graph G(V, E)
t(G) :
for i =1,2,3,... nn-2
output the i-th tree;
enumeration algorithm:
counting algorithm:
![Page 15: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/15.jpg)
Graph Laplacian1 2
34
Graph G(V,E)adjacency matrix A
A(i, j) =
(1 {i, j} 2 E
0 {i, j} 62 E
D(i, j) =
(deg(i) i = j
0 i 6= j
diagonal matrix DD =
2
6664
d1d2
. . .dn
3
777500
graph Laplacian L
L = D �A L =
2
664
3 �1 �1 �1�1 2 �1 0�1 �1 3 �1�1 0 �1 2
3
775
![Page 16: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/16.jpg)
Li,i : submatrix of L by removing ith row and ith collumn
i
i
t(G) : number of spanning trees in G
Kirchhoff ’s Matrix-Tree Theorem:8i, t(G) = det(Li,i)
Gustav Kirchhoff (1824-1887)
![Page 17: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/17.jpg)
Bipartite Perfect Matching
4 Perfect matchings in bipartite graphs. Consider a bipartite graph with bi-partition (N,N), where N = {1, . . . , n}, and edge set E ⊆ N × N . A perfectmatching is an edge subset M ⊆ E that includes every node as an endpointexactly once. See Fig. 3 for some interpretations.
Fig. 3. Row 1: A bipartitegraph and its three perfectmatchings. Row 2: In thegraph’s adjacency matrixA, every perfect matchingcorresponds to a permuta-tion π for which Ai,π(i) = 1for all i ∈ [n]. Row 3: Inthe directed n-node graphdefined by A, every perfectmatching corresponds toa directed cycle partition.Bottom row: an equiva-lent formulation in termsof non-attacking rooks ona chess board with forbid-den positions.
1 1 1
1 1 0
0 1 1
1 1 1
1 1 0
0 1 1
1 1 1
1 1 0
0 1 1
1 1 1
1 1 0
0 1 1
1
23
1
23
1
23
1
23
VRVR
VR
VRVR
VR
VRVRVR
The Ryser formula for counting the perfect matchings in such a graph canbe given as
!
π∈Sn
n"
i=1
[iπ(i) ∈ E] =!
S⊆N
(−1)|N\S|n"
i=1
!
j∈S
[ij ∈ E] , (4)
where Sn denotes the set of permutations from N to N . The left hand sidesuccinctly describes the problem as iterating over all permutations and checkingif the corresponding edges (namely, 1π(1), 2π(2), . . ., nπ(n)) are all in E. Directevaluation would require n! iterations. The right hand side provides an equivalentexpression that can be evaluated in time O(2nn2), see Fig. 4.
Proof of (4). For fixed i ∈ N , the value#
j∈S [ij ∈ E] counts the number of i’sneighbours in S ⊆ N . Thus the expression
n"
i=1
!
j∈S
[ij ∈ E] (5)
is the number of ways every node i ∈ N can choose a neighbour from S. (Thisallows some nodes to select the same neighbour.) Consider such a choice as amapping g : N → N , not necessarily onto, with image R = g(N). The contribu-tion of g to (5) is 1 for every S ⊇ R, and its total contribution to the right hand
4 Perfect matchings in bipartite graphs. Consider a bipartite graph with bi-partition (N,N), where N = {1, . . . , n}, and edge set E ⊆ N × N . A perfectmatching is an edge subset M ⊆ E that includes every node as an endpointexactly once. See Fig. 3 for some interpretations.
Fig. 3. Row 1: A bipartitegraph and its three perfectmatchings. Row 2: In thegraph’s adjacency matrixA, every perfect matchingcorresponds to a permuta-tion π for which Ai,π(i) = 1for all i ∈ [n]. Row 3: Inthe directed n-node graphdefined by A, every perfectmatching corresponds toa directed cycle partition.Bottom row: an equiva-lent formulation in termsof non-attacking rooks ona chess board with forbid-den positions.
1 1 1
1 1 0
0 1 1
1 1 1
1 1 0
0 1 1
1 1 1
1 1 0
0 1 1
1 1 1
1 1 0
0 1 1
1
23
1
23
1
23
1
23
VRVR
VR
VRVR
VR
VRVRVR
The Ryser formula for counting the perfect matchings in such a graph canbe given as
!
π∈Sn
n"
i=1
[iπ(i) ∈ E] =!
S⊆N
(−1)|N\S|n"
i=1
!
j∈S
[ij ∈ E] , (4)
where Sn denotes the set of permutations from N to N . The left hand sidesuccinctly describes the problem as iterating over all permutations and checkingif the corresponding edges (namely, 1π(1), 2π(2), . . ., nπ(n)) are all in E. Directevaluation would require n! iterations. The right hand side provides an equivalentexpression that can be evaluated in time O(2nn2), see Fig. 4.
Proof of (4). For fixed i ∈ N , the value#
j∈S [ij ∈ E] counts the number of i’sneighbours in S ⊆ N . Thus the expression
n"
i=1
!
j∈S
[ij ∈ E] (5)
is the number of ways every node i ∈ N can choose a neighbour from S. (Thisallows some nodes to select the same neighbour.) Consider such a choice as amapping g : N → N , not necessarily onto, with image R = g(N). The contribu-tion of g to (5) is 1 for every S ⊇ R, and its total contribution to the right hand
4 Perfect matchings in bipartite graphs. Consider a bipartite graph with bi-partition (N,N), where N = {1, . . . , n}, and edge set E ⊆ N × N . A perfectmatching is an edge subset M ⊆ E that includes every node as an endpointexactly once. See Fig. 3 for some interpretations.
Fig. 3. Row 1: A bipartitegraph and its three perfectmatchings. Row 2: In thegraph’s adjacency matrixA, every perfect matchingcorresponds to a permuta-tion π for which Ai,π(i) = 1for all i ∈ [n]. Row 3: Inthe directed n-node graphdefined by A, every perfectmatching corresponds toa directed cycle partition.Bottom row: an equiva-lent formulation in termsof non-attacking rooks ona chess board with forbid-den positions.
1 1 1
1 1 0
0 1 1
1 1 1
1 1 0
0 1 1
1 1 1
1 1 0
0 1 1
1 1 1
1 1 0
0 1 1
1
23
1
23
1
23
1
23
VRVR
VR
VRVR
VR
VRVRVR
The Ryser formula for counting the perfect matchings in such a graph canbe given as
!
π∈Sn
n"
i=1
[iπ(i) ∈ E] =!
S⊆N
(−1)|N\S|n"
i=1
!
j∈S
[ij ∈ E] , (4)
where Sn denotes the set of permutations from N to N . The left hand sidesuccinctly describes the problem as iterating over all permutations and checkingif the corresponding edges (namely, 1π(1), 2π(2), . . ., nπ(n)) are all in E. Directevaluation would require n! iterations. The right hand side provides an equivalentexpression that can be evaluated in time O(2nn2), see Fig. 4.
Proof of (4). For fixed i ∈ N , the value#
j∈S [ij ∈ E] counts the number of i’sneighbours in S ⊆ N . Thus the expression
n"
i=1
!
j∈S
[ij ∈ E] (5)
is the number of ways every node i ∈ N can choose a neighbour from S. (Thisallows some nodes to select the same neighbour.) Consider such a choice as amapping g : N → N , not necessarily onto, with image R = g(N). The contribu-tion of g to (5) is 1 for every S ⊇ R, and its total contribution to the right hand
4 Perfect matchings in bipartite graphs. Consider a bipartite graph with bi-partition (N,N), where N = {1, . . . , n}, and edge set E ⊆ N × N . A perfectmatching is an edge subset M ⊆ E that includes every node as an endpointexactly once. See Fig. 3 for some interpretations.
Fig. 3. Row 1: A bipartitegraph and its three perfectmatchings. Row 2: In thegraph’s adjacency matrixA, every perfect matchingcorresponds to a permuta-tion π for which Ai,π(i) = 1for all i ∈ [n]. Row 3: Inthe directed n-node graphdefined by A, every perfectmatching corresponds toa directed cycle partition.Bottom row: an equiva-lent formulation in termsof non-attacking rooks ona chess board with forbid-den positions.
1 1 1
1 1 0
0 1 1
1 1 1
1 1 0
0 1 1
1 1 1
1 1 0
0 1 1
1 1 1
1 1 0
0 1 1
1
23
1
23
1
23
1
23
VRVR
VR
VRVR
VR
VRVRVR
The Ryser formula for counting the perfect matchings in such a graph canbe given as
!
π∈Sn
n"
i=1
[iπ(i) ∈ E] =!
S⊆N
(−1)|N\S|n"
i=1
!
j∈S
[ij ∈ E] , (4)
where Sn denotes the set of permutations from N to N . The left hand sidesuccinctly describes the problem as iterating over all permutations and checkingif the corresponding edges (namely, 1π(1), 2π(2), . . ., nπ(n)) are all in E. Directevaluation would require n! iterations. The right hand side provides an equivalentexpression that can be evaluated in time O(2nn2), see Fig. 4.
Proof of (4). For fixed i ∈ N , the value#
j∈S [ij ∈ E] counts the number of i’sneighbours in S ⊆ N . Thus the expression
n"
i=1
!
j∈S
[ij ∈ E] (5)
is the number of ways every node i ∈ N can choose a neighbour from S. (Thisallows some nodes to select the same neighbour.) Consider such a choice as amapping g : N → N , not necessarily onto, with image R = g(N). The contribu-tion of g to (5) is 1 for every S ⊇ R, and its total contribution to the right hand
bipartite graph
G([n],[n],E)
perfect matchings
permutation � of [n] (i,�(i)) � Es.t.
Ai,j =
�1 (i, j) � E
0 (i, j) �� E
n � n matrix A :
=�
��Sn
�
i�[n]
Ai,�(i)
# of P.M. in G
![Page 18: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/18.jpg)
Permanentn � n matrix A :
=�
��Sn
�
i�[n]
Ai,�(i)perm(A)
det(A) =�
��Sn
(�1)r(�)�
i�[n]
Ai,�(i)
determinant:
poly-time by Gaussian elimination
#P-hard to compute
![Page 19: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/19.jpg)
Ryser’s formula
�
��Sn
�
i�[n]
Ai,�(i) =�
I�[n]
(�1)n�|I|�
i�[n]
�
j�I
Ai,j
O(n!) time O(n2n) time
�
I�S
(�1)|S|�|I| =
�1 S = �0 otherwise
PIE (Principle of Inclusion-Exclusion):
![Page 20: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/20.jpg)
PIE(Principle of Inclusion-Exclusion)
|A �B| = |A| + |B|�|A ⇥B|
|A �B � C| = |A| + |B| + |C|�|A ⇥B|� |A ⇥ C|� |B ⇥ C|+|A �B � C|
![Page 21: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/21.jpg)
Inversion
f : 2[n] � N
V: 2n-dimensional vector space of all mappings
� : V � Vlinear transformation
�S � [n],
�S � [n],
then its inverse:
�f(S) ��
T�ST�[n]
f(T )
��1f(S) =�
T�ST�[n]
(�1)|T\S|f(T )
![Page 22: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/22.jpg)
Fibonacci number
Fn =
�⌅⇤
⌅⇥
Fn�1 + Fn�2 if n � 2,
1 if n = 10 if n = 0.
� =1 +
�5
2�̂ =
1�⇥
52
Fn =1⇥5
��n � �̂n
⇥
by generating functions ...
![Page 23: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/23.jpg)
Quicksort
Qsort(A):
choose a pivot x = A[1];
•partition A into L with all L[i ] < x ,
R with all R[i ] > x ;Qsort(L) and Qsort(R);
input: an array A of n numbers
Complexity: number of comparisons
worst-case:
average-case: ?
Θ(n2)
![Page 24: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/24.jpg)
Qsort(A):
choose a pivot x = A[1];
•partition A into L with all L[i ] < x ,
R with all R[i ] > x ;Qsort(L) and Qsort(R);
Tn :average # of comparisons
used by Qsort
=1
n
n�
k=1
(n � 1 + Tk�1 + Tn�k)Tn
pivot: the k-th smallest number in A|L| = k-1 |R| = n-k
n � 1
Recursion:
T0 = T1 = 0
= 2n ln n + O(n)
generating functions
![Page 25: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/25.jpg)
Counting with SymmetryRotation :
Rotation & Reflection:
![Page 26: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/26.jpg)
Symmetries
![Page 27: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/27.jpg)
Pólya’s Theory of Counting
George Pólya(1887-1985)
![Page 28: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/28.jpg)
a~v : # of config. (up to symmetry) with ni many color i
pattern inventory :
FG(y1, y2, . . . , ym) =X
~v=(n1,...,nm)n1+···+nm=n
a~v yn11 yn2
2 · · · ynmm
(multi-variate) generating function
FG(y1, y2, . . . , ym) = PG
mX
i=1
yi,mX
i=1
y2i , . . . ,mX
i=1
yni
!Pólya’s enumeration formula (1937):
⇡ =
`1z }| {(· · · )
`2z }| {(· · · ) · · ·
`kz }| {(· · · )| {z }
k cycles
M⇡(x1, x2, . . . , xn) =kY
i=1
x`i
PG(x1, x2, . . . , xn) =1
|G|X
⇡2G
M⇡(x1, x2, . . . , xn)cycle index:
![Page 29: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/29.jpg)
FD20(r, q, l)
![Page 30: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/30.jpg)
Existing
• a configuration satisfying this condition?
• a counterexample for this method?
• an efficient algorithm for this problem?
• a problem which is hard to solve in this computation model?
• ...
Does there exist:
![Page 31: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/31.jpg)
Circuit Complexity
∧
¬
x1 x2 x3
∨
∧
∨
f : {0, 1}n � {0, 1}Boolean function
Boolean circuit
![Page 32: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/32.jpg)
Claude Shannon(1916 - 2001)
Theorem (Shannon 1949)
There is a boolean functionf : {0, 1}n � {0, 1} whichcannot be computed by anycircuit with 2n
3n gates.
no constructive proof is known
![Page 33: Combinatorics - TCS @ NJUtcs.nju.edu.cn › slides › comb2015 › intro.pdf · A course in Combinatorics, 2nd Edition. Jukna, Extremal Combinatorics: with applications in computer](https://reader036.fdocuments.us/reader036/viewer/2022062506/5f0f876d7e708231d4449d2a/html5/thumbnails/33.jpg)
Combinatorics
• Enumeration (counting):
• Existence:
• Extremal:
• Ramsey:
• Optimization:
• Construction (design):
How many solutions to these constraints?
Does a solution exist?
When a solution is sufficiently large, some structure must emerge.
How large/small a solution can be to preserve/avoid certain structure?
Find the optimal solution.
Construct a solution.
solution: combinatorial objectconstraint: combinatorial structure
combinatorial≈discrete finite