第14周。
This commit is contained in:
@@ -71,7 +71,7 @@
|
||||
|
||||
\begin{figure}[!htpb]
|
||||
\begin{center}
|
||||
\begin{tikzpicture}
|
||||
\begin{tikzpicture}[scale=0.85]
|
||||
\draw (-2,0) ellipse (1 and 3);
|
||||
\draw (2,0) ellipse (1 and 3);
|
||||
\draw (-2,1.5) ellipse (0.7 and 1);
|
||||
@@ -152,6 +152,11 @@
|
||||
综上,$G$有完美匹配,$\vert A \vert = \vert B \vert = k + 1$时结论也成立。
|
||||
\end{proof}
|
||||
|
||||
通过类似的证明方法,我们还能得到一个婚姻定理的推广:
|
||||
\begin{theorem}\label{婚姻定理推广}
|
||||
在若一个二部图满足对$A$的任意子集$X \subset A$都有$\vert X \vert \leq \vert N(X) \vert$($A$与$B$的元素数不一定相等),那么一定存在一个匹配包括$A$中所有的点(但$B$中可能有点没有与$A$中的点匹配)。
|
||||
\end{theorem}
|
||||
|
||||
\section{如何找到完美匹配}
|
||||
\begin{figure}[H]
|
||||
\centering
|
||||
@@ -238,7 +243,7 @@
|
||||
\end{enumerate}
|
||||
|
||||
\subsection{方法正确性的证明}
|
||||
\begin{wrapfigure}[15]{r}{7cm}
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\begin{tikzpicture}[scale=0.85]
|
||||
\draw node[circle, draw = black] (a1) at (0,0) {};
|
||||
@@ -286,7 +291,7 @@
|
||||
\end{tikzpicture}
|
||||
\end{center}
|
||||
\caption{寻找可扩路的过程中可能遇到的几种情况}
|
||||
\end{wrapfigure}
|
||||
\end{figure}
|
||||
设在贪心配对之后,$U$为未配对的$A$中的点的集合,$W$为未配对的$B$中的点的集合。
|
||||
|
||||
若一条路是以$U$中的某个点为起点、被选中的和没被选中的边交替、终点在$A$中的路,则称它是一条\newnoun{几乎可扩路}{almost augmenting path}。
|
||||
|
||||
@@ -282,4 +282,271 @@ Fano Plane有很多很好的性质。
|
||||
\[\lambda(v-1) \equiv 0 \pmod{(k-1)} \tag{1} \label{BIBD必要条件1}\]
|
||||
与
|
||||
\[\lambda v (v-1) \equiv 0 \pmod{k} \tag{2} \label{BIBD必要条件2}\eqper\]
|
||||
\end{theorem}
|
||||
\end{theorem}
|
||||
|
||||
这些条件都是存在$(v,k, \lambda)$-BIBD的必要条件而不是充分条件。1967年,M. Hall提出了如下的猜想:
|
||||
|
||||
\begin{conjecture}[设计存在性猜想]
|
||||
给定正整数$k, \lambda$,对于满足上述定理中条件\eqref{BIBD必要条件1}与\eqref{BIBD必要条件2}的正整数$v$,除去有限的个例外,一定存在$(v,k,\lambda)$-BIBD。
|
||||
\end{conjecture}
|
||||
|
||||
Wilson在1975年证明了下面的定理,从而证明了这个猜想:
|
||||
|
||||
\begin{theorem}[渐进存在性定理]
|
||||
给定正整数$k$与$\lambda$,存在依赖于$k,\lambda$的常数$v_0 = v_0(k, \lambda)$,使得当$v \geq v_0$时,只要$v$满足上述定理中条件\eqref{BIBD必要条件1}与\eqref{BIBD必要条件2},就一定存在$(v,k,\lambda)$-BIBD。
|
||||
\end{theorem}
|
||||
|
||||
这说明对于一些比较大的$v$,总可以找到BIBD。那么如果$v$不太大又该如何判断是否存在BIBD?例如,不存在$(21,6,1)$-BIBD或者$(16,6,1)$-BIBD,但是它们也同样满足前面定理中的条件\eqref{BIBD必要条件1}与\eqref{BIBD必要条件2}。
|
||||
|
||||
Fisher给出了另外一个存在$(v,k,\lambda)$-BIBD的必要条件。
|
||||
|
||||
\begin{theorem}\label{Fisher必要条件}
|
||||
如果存在$(v,k,\lambda)-BIBD$,其中$1 < k < v$,那么区组总数$b \geq v$,或者等价地有$\lambda(v - 1) \geq k(k-1)$或者$k \leq r$。
|
||||
\end{theorem}
|
||||
|
||||
要证明这个定理,我们首先需要另一个定理:
|
||||
|
||||
\begin{theorem}
|
||||
如果存在$(v,k,\lambda)$-BIBD,$1 < k < v$,那么$AA\trans = (r - \lambda)I + \lambda J$,其中$J$为全1矩阵。
|
||||
\end{theorem}
|
||||
|
||||
\begin{proof}
|
||||
首先,注意到$AA\trans$的对角线元分别是$A$的每行与自己的内积,即每个元素的重复数$r$;另外$AA\trans$的$i,j$元($i \neq j$)即为第$i$个元素与第$j$个元素的相遇数$\lambda$。
|
||||
\end{proof}
|
||||
|
||||
有了这个定理,我们就能证明定理\ref{Fisher必要条件}:
|
||||
|
||||
\begin{proof}
|
||||
由
|
||||
\[r = \frac{\lambda(v-1)}{k-1}\]
|
||||
可得$r > \lambda$。那么
|
||||
\[\det(AA\trans) = [r + (v-1)\lambda](r-\lambda^{v-1}) > 0\]
|
||||
因此$AA\trans$满秩且为大小为$v$的方阵,$v = \rank(AA\trans) = \rank(A) \leq b$。
|
||||
\end{proof}
|
||||
|
||||
\begin{definition}
|
||||
称满足$b = v$的BIBD是对称的。由于$bk = vr$,此时也有$k = r$。
|
||||
\end{definition}
|
||||
|
||||
\begin{theorem}
|
||||
若有$(v,k,\lambda)$-对称BIBD,$1 < k < v$,那么$AA\trans = A\trans A = (k - \lambda) I + \lambda J$。
|
||||
\end{theorem}
|
||||
|
||||
\begin{proof}
|
||||
\begin{align*}
|
||||
A\trans A & = A^{-1}AA\trans A = A^{-1} [(k-\lambda) I + \lambda J]A\\
|
||||
& = (k - \lambda) I + \lambda A^{-1} J A
|
||||
\end{align*}
|
||||
注意到$AJ = rJ = kJ = JA$因此$A^{-1} J A = J$那么
|
||||
\[A\trans A = (k - \lambda)I + \lambda J\eqper\qedhere\]
|
||||
\end{proof}
|
||||
|
||||
\begin{corollary}
|
||||
对称BIBD的任意两个区组都恰有$\lambda$个共同的元素。
|
||||
\end{corollary}
|
||||
|
||||
下面给出区组设计的构成方法。
|
||||
|
||||
\begin{theorem}
|
||||
若$B_1, B_2, \dots, B_b$是$(v,k, \lambda)$-对称BIBD,那么对于任意的$B_i$,
|
||||
\[B_1 \setminus B_i, \dots, B_{i-1}\setminus B_i, B_{i+1} \setminus B_i, \dots, B_b \setminus B_i\]
|
||||
是$(v - k, k - \lambda, \lambda)$-BIBD,
|
||||
\[B_1 \cap B_i, \dots, B_{i-1}\cap B_i, B_{i+1} \cap B_i, \dots, B_b \cap B_i\]
|
||||
是$(k, \lambda, \lambda-1)$-BIBD。
|
||||
\end{theorem}
|
||||
|
||||
\subsection*{会标问题}
|
||||
现在我们来看一个实际的问题:一个小镇中的人们组成了若干社团,它们有各自不相同的会标。小镇中的每个人都参加了至少一个社团。现在,小镇想要组织一个游行,小镇中的每个人都要参加,且每个人要选择一个他参加的社团的会标戴在身上。请问:能否找到一种会标的佩戴方式,使得游行中的每个人佩戴的会标都不相同?
|
||||
|
||||
\begin{proof}[解]
|
||||
我们首先需要转化这个问题。用图中的点来代表社团和市民,用连线代表某个人加入了某个社团,我们就能得到
|
||||
\begin{figure}[H]
|
||||
\centering
|
||||
\begin{tikzpicture}[scale=1.5]
|
||||
\node[draw=black, fill=blue!50, circle] (a) at (0,-1) {};
|
||||
\node[draw=black, fill=blue!50, circle] at (1, -1) {};
|
||||
\node[draw=black, fill=blue!50, circle] at (2, -1) {};
|
||||
\node[draw=black, fill=blue!50, circle] at (3, -1) {};
|
||||
\node[draw=black, fill=blue!50, circle] at (-1, -1) {};
|
||||
\node[draw=black, fill=blue!50, circle] at (-2, -1) {};
|
||||
\node[draw=black, fill=blue!50, circle] at (-3, -1) {};
|
||||
|
||||
\node[draw=black, circle] at (0.5,0.5) {};
|
||||
\node[draw=black, circle] at (1.5,0.5) {};
|
||||
\node[draw=black, circle] at (2.5,0.5) {};
|
||||
\node[draw=black, circle] at (3.5,0.5) {};
|
||||
\node[draw=black, circle] (b) at (-0.5,0.5) {};
|
||||
\node[draw=black, circle] at (-1.5,0.5) {};
|
||||
\node[draw=black, circle] at (-2.5,0.5) {};
|
||||
\node[draw=black, circle] at (-3.5,0.5) {};
|
||||
\draw (a)--(b);
|
||||
\node at (0,1) {社团};
|
||||
\node at (0,-1.5) {市民};
|
||||
\end{tikzpicture}
|
||||
\caption{市民与社团作为节点的图}
|
||||
\end{figure}
|
||||
|
||||
显然,这是一个二部图。现在,问题被转化为了:能否找到一个覆盖所有代表市民的节点的匹配?
|
||||
|
||||
设$S$是所有代表市民的节点构成的集合的一个子集。设$e(S, N(S))$为连接$S$与$N(S)$中元素的边的数量。注意到S中每个成员都在$r$个社团中,因此
|
||||
\[\vert S \vert r = e(S, N(S))\]
|
||||
同时,$N(S)$中节点代表的社团的成员不一定全部都在$S$中,因此
|
||||
\[e(S, N(S)) \leq \vert N(S) \vert k\]
|
||||
再根据\ref{Fisher必要条件},有
|
||||
\[\vert N(S) \vert k \leq \vert N(S) \vert r\]
|
||||
综合起来得到
|
||||
\[\vert S \vert r = e(S, N(S)) \leq \vert N(S) \vert k \leq \vert N(S) \vert r\]
|
||||
即$\vert S \vert \leq \vert N(S) \vert$。由定理\ref{婚姻定理推广},符合要求的匹配一定存在。
|
||||
\end{proof}
|
||||
|
||||
\section{Steiner系}
|
||||
\begin{definition}
|
||||
$(v,3,\lambda)$-BIBD称为三元系。
|
||||
\end{definition}
|
||||
|
||||
此时可以得到
|
||||
\[3b = rv, 2r = \lambda(v-1)\]
|
||||
即
|
||||
\[r = \lambda\frac{v-1}{2}, b = \lambda \frac{v(v-1)}{6}\]
|
||||
而$r,b$都是整数,因此
|
||||
\[\lambda(v-1) \equiv 0 \pmod{2}, \lambda v(v-1) \equiv 0 \pmod{3}\]
|
||||
|
||||
\begin{definition}
|
||||
$\lambda = 1$时,三元系又称为\newnoun{Steiner三元系}{Steiner System},即$(v,3,1)$-BIBD。
|
||||
\end{definition}
|
||||
|
||||
可以得到
|
||||
\[r = \frac{v-1}{2}, b = \frac{v(v-1)}{6}\]
|
||||
结合$r, b$都是整数的条件可以导出$v$模6的余数只能为1或3。
|
||||
|
||||
\subsection*{社团代表}
|
||||
我们来看一个实际问题。假设在一个镇子上有人们$v$个人,他们和他们的社团组成一个Steiner系。现在他们希望能产生一个委员会来抗议过高的会费,且委员会中应该包含每个社团的至少一名成员。那么最少需要多少人才能组成这样的委员会?
|
||||
|
||||
考虑一个不在委员会中的人,Andrew。他加入了$r$个社团,且
|
||||
\[r = \frac{v-1}{2}\]
|
||||
由于他们是一个Steiner系,因此$\lambda = 1$,这意味着这$r$个社团两两之间共同的成员只能有Andrew一个人,否则Andrew就会和某人的相遇数大于1。所以我们至少从这$\dfrac{v-1}{2}$个社团中分别选出1个人才有可能组成委员会。因此,委员会的人数应不小于$\dfrac{v-1}{2}$。同时,考虑Fano plane中可以用三个点组成``委员会'',因此我们找到的下界是可以取到的。
|
||||
|
||||
\begin{theorem}
|
||||
如果存在一个包含$\dfrac{v-1}{2}$个点的委员会,那么委员会自身也是一个Steiner系。
|
||||
\end{theorem}
|
||||
|
||||
\begin{proof}\label{委员会人数定理}
|
||||
如果某个社团中的三个人都是代表,那么我们就称这个社团是``特权的''。证明定理即证明任意两个代表在某特权社团相遇且只会相遇这一次。
|
||||
|
||||
首先,因为原先的所有人组成一个Steiner系,因此两个代表之间最多相遇一次。
|
||||
|
||||
现在我们可以考虑Alice与Bob两位代表。他们一定同属于某个社团$S$。我们可以设这个社团中的另一个人是Carl。我们现在需要说明Carl一定也是代表。
|
||||
|
||||
假设Carl不是代表,那么他所属的$r$个社团中除去$S$成员中都没有Alice和Bob,且他们两两之间只有Carl一个共同成员,因而都需要一个代表,即需要$r - 1$个代表。这$r-1$个代表再加上Alice和Bob共有$r+1$个人,说明我们至少需要$r+1$个人才能组成代表,这与已知的$\dfrac{v-1}{2} = r$个点组成委员会矛盾。因此Carl也一定是代表。
|
||||
\end{proof}
|
||||
|
||||
\subsection*{Gender balance}
|
||||
若一个二色染色可使Steiner系的每个区组都有两种颜色,那么我们称这个染色是``好的''二色染色。
|
||||
|
||||
\begin{theorem}
|
||||
``好的''二色染色在Steiner系中不存在。
|
||||
\end{theorem}
|
||||
|
||||
\begin{proof}
|
||||
假设存在这样一个满足要求的染色。那么每个区组中都含有红色,也都含有蓝色。这意味着红色或者蓝色都可以做为``代表'',这也就意味着红色和蓝色都有至少$\frac{v-1}{2}$个。相加后还有一个人的颜色没有确定,我们不妨假设他是红色的。那么这意味着蓝色的人组成了一个$\frac{v-1}{2}$个元素的委员会。由定理\ref{委员会人数定理},他们是一个Steiner系,而这个Steiner系中所有的``特权的''社团的成员全部都是蓝色的。这与我们假设的每个社团(区组)中都有两种颜色的人矛盾。
|
||||
\end{proof}
|
||||
|
||||
\section{拉丁方}
|
||||
\subsection{引言}
|
||||
现代科技离不开科学实验,在一个复杂的科学实验中,往往有许多影响实验结果的因素,这些因素互相配合又互相制约,要搞清每个因素的影响,要知道怎样的搭配效果最好,就要进行科学合理的实验安排。
|
||||
|
||||
实验设计是一门专门的理论,组合数学中组合设计理论是这个理论最重要的数学工具。
|
||||
|
||||
例如,要对治疗某种疾病的6种药$d_1, d_2, d_3, d_4, d_5, d_6$的疗效进行试验。实验的疗程是六天,共有6个病人参加试验。
|
||||
|
||||
一种可能的方案是周一所有人都服用$d_1$,周二所有人都服用$d_2$,……,周六所有人都服用$d_6$。这个实验方案的缺点是可能看起来后服的药的疗效会更好,因为前面服用的药可能仍旧在起作用;
|
||||
|
||||
另一种可能的方案是每人在六天实验疗程中只服用一种药,但是缺点是病人的体质与病情会影响实验的结果。
|
||||
|
||||
理想的方案是:六个人每个人都对这六种药进行了实验,且每天这六种药都在被某个人试验。试验方案可以用下面的矩阵来表示:
|
||||
\begin{equation*}
|
||||
\begin{bNiceMatrix}[first-col]
|
||||
A & 1 & 2 & 3 & 4 & 5 & 6\\
|
||||
B & 6 & 1 & 2 & 3 & 4 & 5\\
|
||||
C & 5 & 6 & 1 & 2 & 3 & 4\\
|
||||
D & 4 & 5 & 6 & 1 & 2 & 3\\
|
||||
E & 3 & 4 & 5 & 6 & 1 & 2\\
|
||||
F & 2 & 3 & 4 & 5 & 6 & 1
|
||||
\end{bNiceMatrix}
|
||||
\end{equation*}
|
||||
|
||||
可以把上面的实验设计中出现的方阵推广,得到
|
||||
|
||||
\begin{definition}[拉丁方]
|
||||
由元素$1, 2, \dots, n$构成的$n \times n$的方阵
|
||||
\(\begin{bmatrix}
|
||||
a_{ij}
|
||||
\end{bmatrix}_{n \times n}\)
|
||||
,要求每行每列中$1, 2, \dots, n$各出现一次,这样的方阵就叫做\newnoun{拉丁方}{Latin Square}。
|
||||
\end{definition}
|
||||
|
||||
下面先列举几个拉丁方的简单性质。
|
||||
\begin{proposition}
|
||||
设$p \in S_n$是任意一个$n$元置换。如果
|
||||
\(A = \begin{bmatrix}
|
||||
a_{ij}
|
||||
\end{bmatrix}_{n \times n}\)
|
||||
是一个拉丁方,则
|
||||
\[p(A) = p
|
||||
\left(\begin{bmatrix}
|
||||
a_{ij}
|
||||
\end{bmatrix}\right)\]
|
||||
也是一个拉丁方。
|
||||
\end{proposition}
|
||||
|
||||
\begin{proposition}
|
||||
一个拉丁方经过行、列任意置换后还是一个拉丁方。
|
||||
\end{proposition}
|
||||
|
||||
\begin{proposition}
|
||||
拉丁方的转置还是拉丁方。
|
||||
\end{proposition}
|
||||
|
||||
\subsection{正交拉丁方}
|
||||
36军官问题:有36名军官来自六个不同的团,具有六种不同的军阶,而且每个团每种军阶的军官各有一名,能否把他们排成一个$6 \times 6$方阵,使得对每一个团与每一种军阶,在每一行或每一列都有一位军官来自这个团,也都有一位军官有此军阶?
|
||||
|
||||
每一个军官用一个有序对$(i, j)$来表示,其中i表示它们的军阶类别$(i=1,2,\dots,6)$而j表示他所在的团$(j = 1, 2, \dots, 6)$。问题相当于设计出由军阶构成的一个6阶拉丁方
|
||||
\(\begin{bmatrix}
|
||||
a_{ij}
|
||||
\end{bmatrix}\)
|
||||
和一个由团序号组成的6阶拉丁方
|
||||
\(\begin{bmatrix}
|
||||
b_{ij}
|
||||
\end{bmatrix}\)
|
||||
,要求$(a_{ij}, b_{ij})$互不相同,正好是全部$6 \times 6$数组$i, j$,其中$i = 1, 2, \dots, 6$,$j = 1, 2, \dots, 6$。满足这样条件的两个拉丁方就是所谓的正交的拉丁方。
|
||||
|
||||
\begin{definition}
|
||||
设
|
||||
\(A = \begin{bmatrix}
|
||||
a_{ij}
|
||||
\end{bmatrix}_{n \times n}\),
|
||||
\(B = \begin{bmatrix}
|
||||
b_{ij}
|
||||
\end{bmatrix}_{n \times n}\)
|
||||
是两个$n$阶拉丁方。若矩阵
|
||||
\(C = \begin{bmatrix}
|
||||
(a_{ij}, b_{ij})
|
||||
\end{bmatrix}_{n \times n}\)
|
||||
中的$n^2$个数对$(a_{ij}, b_{ij})$互不相同,$i,j = 1, 2, \dots, n$,称$A$和$B$正交,或$A$和$B$是正交拉丁方。
|
||||
\end{definition}
|
||||
|
||||
可以得到正交拉丁方的几个性质:
|
||||
|
||||
\begin{proposition}
|
||||
如果$A$和$B$是一对正交拉丁方,则$A$中的元素经过某个置换$p$之后得到的$p(A)$和$B$也是一对正交拉丁方。
|
||||
\end{proposition}
|
||||
|
||||
\begin{proposition}
|
||||
如果$A$和$B$是一对正交拉丁方,那么$A$和$B$经过相同的行列置换后得到的两个矩阵仍然是一对正交拉丁方。
|
||||
\end{proposition}
|
||||
|
||||
\begin{proposition}
|
||||
如果$A$和$B$是正交拉丁方,则它们的转置$A\trans$与$B\trans$也是一对正交拉丁方。
|
||||
\end{proposition}
|
||||
|
||||
问题:给定$n$,在所有$n$阶拉丁方中,最多能有多少对两两互相正交的拉丁方组?
|
||||
3
离散数学.tex
3
离散数学.tex
@@ -38,8 +38,10 @@
|
||||
\newtheorem{example}{例}[section]
|
||||
\newtheorem{proposition}{命题}[section]
|
||||
\newtheorem*{remark}{注}
|
||||
\newtheorem*{conjecture}{猜想}
|
||||
|
||||
\DeclareMathOperator{\lcm}{lcm}
|
||||
\DeclareMathOperator{\rank}{rank}
|
||||
|
||||
% \renewcommand{\qedsymbol}{} %去掉证明结尾的方框
|
||||
|
||||
@@ -52,6 +54,7 @@
|
||||
\newcommand{\realnum}{\mathbb{R}}
|
||||
\newcommand{\integer}{\mathbb{Z}}
|
||||
\newcommand{\naturalnum}{\mathbb{N}}
|
||||
\newcommand{\trans}{^\mathrm{T}}
|
||||
|
||||
\title{{\Huge{\bf{离散数学}}}}
|
||||
\author{}
|
||||
|
||||
Reference in New Issue
Block a user