diff --git a/数据库系统原理与实践/平时作业/第十次作业.tex b/数据库系统原理与实践/平时作业/第十次作业.tex new file mode 100644 index 0000000..546c85e --- /dev/null +++ b/数据库系统原理与实践/平时作业/第十次作业.tex @@ -0,0 +1,86 @@ +\documentclass[全部作业]{subfiles} +\input{mysubpreamble} + +\begin{document} +\setcounter{chapter}{9} +\chapter{第十次作业} + +\begin{enumerate} + \questionandanswerProof[]{ + (简答题) 令主( prime)属性为至少在一个候选码中出现的属性。令$\alpha$和$\beta$为属性集,使得$\alpha \to \beta$成立但$\beta \to \alpha$不成立。令A为一个既不属于$\alpha$也不属于$\beta$的属性,并且$\beta \to A$成立。我们称A传递依赖( transitively dependent) 于$\alpha$。我们可以按如下方式重新定义3NF :关系模式R是关于函数依赖集F的3NF的条件是,R中没有非主属性A传递依赖于R的一个码。请证明这个新定义等价于原始定义。 + }{ + 原始定义 $\implies $ 新定义: + + 如果新定义不满足,即存在一个非主属性A传递依赖于R的一个码(设为$\alpha$),即$\alpha \to \beta \to A$且$\beta \not \to \alpha$。那么$\alpha \to A$不是一个平凡的函数依赖,且$\alpha$不是R的一个超码,且$\beta - \alpha$中存在至少一个属性不包含在R的候选码中,所以不满足原始定义。 + + 新定义 $\implies $原始定义: + + 如果新定义满足,即R中没有非主属性A传递依赖于R的一个码,那么设R的函数依赖集为$F$,对$F^{+}$中所有形如$\alpha \to \beta$的函数依赖中: + + \mycircle{1}:如果$\alpha \to \beta$是一个平凡的函数依赖,那么自然满足原始定义; + + \mycircle{2}:如果$\alpha$是R的一个超码,那么也满足原始定义; + + \mycircle{3}:如果不满足\mycircle{1}和\mycircle{2},那么$\beta - \alpha$中的每个属性都包含在R的候选码中。 + } + \questionandanswerSolution[]{ + (简答题) + 8.21 请给出实践习题 8.1中模式R的一个无损的BCNF分解 + + 8.1 模式R=(A, B, C, D, E) ,函数依赖集F为 + + {A->BC,CD->E,B->D,E->A} + }{ + $R_1 = (B, D)$, $R_2 = (A, B, C, E)$。 + + $R_1 \cap R_2 = (B, )$,$(B, )$是$R_1$的主码,所以是无损分解。 + } + \questionandanswerProof[]{ + (简答题) 8.27 请用阿姆斯特朗公理来证明分解律的有效性。 + }{ + 证明分解律即:若有$a \to \beta \gamma$,则有$\alpha \to \beta$及$\alpha \to \gamma$。 + + $$ + \begin{aligned} + &\because \beta \subseteq \beta \gamma, \gamma \subseteq \beta \gamma \\ + &\therefore 根据自反律,\beta \gamma \to \beta, \beta \gamma \to \gamma \\ + &\because a \to \beta \gamma \\ + &\therefore 根据传递律,\alpha \to \beta, \alpha \to \gamma \\ + \end{aligned} + $$ + } + \questionandanswerSolution[]{ + (简答题) +8.34 请考虑模式R=(A, B, C, D, E, G, H)和函数依赖集F: + +AB→CD + +D→C + +DE→B + +DEH→AB + +AC→DC + +请使用3NF分解算法来生成R的3NF分解,并展示你的工作。这意味着: + +a.所有候选码的列表。 + +b.F的一个正则覆盖。 + +c.算法的步骤及其解释。 + +d.最终的分解。 + }{ + 所有候选码的列表为 + (A, B, E, H), (A, C, E, H), (D, E, H)。 + + F的一个正则覆盖是 + $AB \to D, D \to C, DE \to B, DEH \to A, AC \to D$。 + + 最终的分解为$R_1 = (A, B, C), \quad R_2 = (C, D), \quad R_3 = (A, B, D, E, H)$。 + } +\end{enumerate} + +\end{document} \ No newline at end of file