阿姆斯特朗数_阿姆斯特朗的功能依赖公理 数据库管理系统

阿姆斯特朗数

Armstrong axioms are a complete set of inference rules or axioms, introduced and developed by William W. Armstrong in 1974. The inference rules are sound which is used to test logical inferences of functional dependencies. The axiom which also refers to as sound is used to infer all the functional dependencies on a relational database. The Axioms are a set of rules, that when applied to a specific set, generates a closure of functional dependencies.

Armstrong公理是由William W. Armstrong在1974年引入和开发的一整套推理规则或公理。推理规则是健全的,用于测试功能依赖项的逻辑推理。 也称为声音的公理用于推断关系数据库上的所有功能依赖性。 公理是一组规则,当将其应用于特定集合时,会生成功能依赖关系的闭包。

Armstrong's Axioms has two different set of rules,

阿姆斯特朗公理有两个不同的规则集,

  1. Axioms or primary rules

    公理或主要规则

    1. Axiom of Reflexivity
    2. Axiom of Augmentation
    3. Axiom of Transitivity
  2. Additional rules or Secondary rules

    附加规则或辅助规则

    1. Union
    2. Composition
    3. Decomposition
    4. Pseudo Transitivity

1) Axioms or primary rules

1)公理或主要规则

Let suppose T (k) with the set of attributes k be a relation scheme. Subsequently, we will represent subsets of k as A, B, C. The standard notation in database theory for the set of attributes is AB rather than A∪B.

让与该组属性的假设T(k)的 k为一个关系模式。 随后,我们将k的子集表示ABC 。 数据库理论中属性集的标准表示法是AB而不是A∪B

  1. Axiom of Reflexivity:

    自反公理

    If a set of attributes is P and its subset is

    如果一组属性为P并且其子集为

    Q, then P holds Q. If Q ⊆ P, then P → Q. This property is called as Trivial functional dependency. Where P holds Q (P → Q) denote P functionally decides Q.

    Q ,则P持有Q。 如果Q⊆P ,则P→Q 。 此属性称为琐碎功能依赖项。 当P持有Q ( P→Q )时, P在功能上决定Q。

  2. Axiom of Augmentation:

    扩充公理

    If

    如果

    P holds Q (P → Q) and R is a set of attributes, then PR holds QR (PR → QR). It means that a change in attributes in dependencies does not create a change in basic dependencies. If P → Q, then PR → QR for any R.

    P拥有Q ( P→Q ), R是一组属性,然后PR拥有QR ( PR→QR )。 这意味着依赖项中的属性更改不会创建基本依赖项中的更改。 如果P→Q ,则任何R的 PR→QR

  3. Axiom of Transitivity:

    传递公理

    If

    如果

    P holds Q (P → Q) and Q holds R (Q → R), then P hold R (P → R). Where P holds R (P → R) denote P functionally decides R, same with P holds Q and Q holds R.

    P保持Q ( P→Q ), Q保持R ( Q→R ),然后P保持R ( P→R )。 其中P持有R ( P→R )表示P在功能上决定R ,与P持有QQ持有R相同

2) Additional rules or secondary rules

2)附加规则或次要规则

These rules can be derived from the above axioms.

这些规则可以从上述公理导出。

  1. Union:

    联盟

    If

    如果

    P holds Q (P → Q) and P holds R (P → R), then P → QR. If X → Y and X → Z, then X → YZ.

    P保持Q ( P→Q ), P保持R ( P→R ),然后P→QR 。 如果X→YX→Z ,则X→YZ

  2. Composition:

    组成

    If

    如果

    P holds Q (P → Q) and A holds B (A → B), then PA → QB.

    P保持Q ( P→Q ), A保持B ( A→B ),然后PA→QB

    proof,

    证明,

    1. P → Q (Given)
    2. A → B (Given)
    3. PA → QA (Augmentation of 1 and A)
    4. PA → Q (Decomposition of 3)
    5. PA → PB (Augmentation of 2 and P)
    6. PA → B (Decomposition of 5)
    7. PA → QB (Union 4 and 6)
  3. Decomposition:

    分解

    This rule is contrary of union rule. If

    此规则与工会规则相反。 如果

    P → QR, then P holds Q (P → Q) and P holds R (P → R). If X → YZ, then X → Y and X → Z.

    P→QR ,则P保持Q ( P→Q ), P保持R ( P→R )。 如果X→YZ ,则X→YX→Z

    proof,

    证明,

    1. P → QR (Given)
    2. QR → Q (Reflexivity)
    3. P → Q (Transitivity of 1 and 2)
  4. Pseudo Transitivity:

    伪传递性

    If

    如果

    P → RQ and Q → S, then P → RS.

    P→RQQ→S ,然后P→RS

    proof,

    证明,

    1. P → RQ (Given)
    2. Q → S (Given)
    3. RQ → RS (Augmentation of 2 and R)
    4. P → RS (Transitivity of 1 and 3)

Trivial Functional Dependency

琐碎的功能依赖

TrivialIf P holds Q (P → Q), where P is a subset of Q, then it is called a Trivial Functional Dependency. Trivial always holds Functional Dependency.
Non-TrivialIf P holds Q (P → Q), where Q is not a subset of P, then it is called as a Non-Trivial Functional Dependency.
Completely Non-TrivialIf P holds Q (P → Q), where P intersect Y = Φ, it is called as a Completely Non-Trivial Functional Dependency.
不重要的 如果P持有Q ( P→Q ),其中PQ的子集,则称为琐碎函数依赖。 平凡的总是拥有功能依赖。
非优惠 如果P持有Q ( P→Q ),其中Q不是P的子集,则称其为非​​私有功能依赖性。
完全非优惠 如果P保持Q ( P→Q ),其中PY =Φ相交,则称为完全非依赖函数依赖。

翻译自: https://www.includehelp.com/dbms/armstrongs-axioms-in-functional-dependency.aspx

阿姆斯特朗数

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/541763.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ORACLE JOB 失败 查看,Oracle JOB异常中断原因分析

注释今天研发同事找我确认 PKG_WMS.proc_TaskMain 存储的 job 是否还在运行,竟发现 dba_jobs.NEXT_DATE4000/1/1,如下看看究竟原因吧~JOB 信息:参数:BROKEN : 中断标记 ,N 启动、Y 中断 --> DBMS_JOBS.BROKEN(job_id,TRUE/FA…

ruby打印_Ruby程序打印一个数字的乘法表

ruby打印打印乘法表 (Printing multiplication table) This requires a very simple logic where we only have to multiply the number with digits from 1 to 10. This can be implemented by putting the multiplication statement inside a loop. We have mentioned two wa…

步骤1:JMeter 录制脚本接口测试

JMeter 常用测试方法简介 1.下载安装 http://jmeter.apache.org/download_jmeter.cgi 安装JDK,配置环境变量JAVA_HOME. 系统要求:JMeter2.11 需要JDK1.6以上的版本支持运行 2.学习Jmeter元件 http://jmeter.apache.org/usermanual/component_reference.h…

模拟断电oracle数据不一致,Oracle数据库案例整理-Oracle系统运行时故障-断电导致数据文件状态变为RECOVER...

1.1 现象描述异常断电,数据库数据文件的状态由ONLINE变为RECOVER。系统显示如下信息:SQL> select file_name ,tablespace_name ,online_status from dba_data_files;FILE_NAME---------------------------------------------------------------…

python日历模块_Python日历模块| prmonth()方法与示例

python日历模块Python calendar.prmonth()方法 (Python calendar.prmonth() Method) prmonth() method is an inbuilt method of the calendar module in Python. It works on simple text calendars and prints the calendar of the given month of the given year. Also, the…

多例模式

多例:只是单例的一种延伸 不必过于在意各种模式的名字,重要的是学会融会贯通,把生产的car放到集合中 类似JDBC 的连接池 把连接对象放到池中 多例模式特点: 1. 多例类可以有多个实例 2. 多例类必须自己创建自己的实例&a…

Oracle public view,【易错概念】以太坊Solidity函数的external/internal,public/private,view/pure/payable区别...

1. 函数类型:内部(internal)函数和外部(external)函数函数类型是一种表示函数的类型。可以将一个函数赋值给另一个函数类型的变量,也可以将一个函数作为参数进行传递,还能在函数调用中返回函数类型变量。 函数类型有两类:- 内部(i…

c-style字符字符串_C字符串-能力问题与解答

c-style字符字符串C programming String Aptitude Questions and Answers: In this section you will find C Aptitude Questions and Answers on Strings, String is the set of characters and String related Aptitude Questions and Answers you will find here. C编程Stri…

PHP Smarty template for website

/******************************************************************************* PHP Smarty template for website* 说明:* 之前一直在想将MVC的方式加在PHP做的网站上,这样比较好处理,相对来说比较好* 处理…

ftp连接oracle服务器,使用SSL加密连接FTP - 架建SSL安全加密的FTP服务器(图)_服务器应用_Linux公社-Linux系统门户网站...

四、使用SSL加密连接FTP启用Serv-U服务器的SSL功能后,就可以利用此功能安全传输数据了,但FTP客户端程序必须支持SSL功能才行。 如果我们直接使用IE浏览器进行登录则会出现图4显示的错误信息,一方面是以为没有修改默认的端口21为990&#xff0…

c# 情感倾向_C否则-能力倾向问题与解答

c# 情感倾向C programming if else Aptitude Questions and Answers: In this section you will find C Aptitude Questions and Answers on condition statements – if else, nested if else, ladder if else, conditional operators etc. C语言编程如果有问题,请…

springboot中使用缓存shiro-ehcache

在pom.xml中注入缓存依赖,版本(Sep 09, 2016)spring-context-support 包含支持UI模版(Velocity,FreeMarker,JasperReports), 邮件服务, 脚本服务(JRuby), 缓存Cache(EHCa…

oracle 微信公众号,关于微信公众号贴代码的方法

微信公众号码上贴代码一直一来都是个头疼的问题。吐槽一句:要是后台编辑器支持markdown就好了。今天教大家用在线markdown排版工具,把代码完美贴到微信公众号上。长话短说,今天用到的两个工具:首先,以一段代码为例。假…

计算理论 形式语言与自动机_下推式自动机(PDA)| 计算理论

计算理论 形式语言与自动机Pushdown Automaton (PDA) is a kind of Automaton which comes under the theory of Computation that appoints stack. The word Pushdown stands due to the fact that the stack can be pushed down as operations can only work on the elements…

运维人员究竟如何提升价值,持续获得高薪?

作者简介:老男孩,北京老男孩IT教育创始人,17年IT经验,资深Linux实战专家,IT培训界实战派顶尖大师,国内将实战心理学体系大量注入IT运维培训领域的第一人,多本IT畅销图书作者,51CTO金…

Webservice soap wsdl区别之个人见解

Web Service实现业务诉求:Web Service是真正“办事”的那个,提供一种办事接口的统称。WSDL提供“能办的事的文档说明”:对要提供的服务的一种描述格式。我想帮你的忙,但是我要告诉你我都能干什么,以及干这些事情需要的…

java uuid静态方法_Java UUID nameUUIDFromBytes()方法及示例

java uuid静态方法UUID类名UUIDFromBytes()方法 (UUID Class nameUUIDFromBytes() method) nameUUIDFromBytes() method is available in java.util package. java.util包中提供了nameUUIDFromBytes()方法 。 nameUUIDFromBytes() method is used to get a UUID constructed fr…

清空 linux 服务器,Linux服务器清理

Why?废话不多说直接来图,可以看出磁盘已经快要满了未清之前What?可以看出mnt文件夹占用的最大,然后进入mnt目录里通过命令,根据文件大小对该路径下文件排序du -h --max-depth1我们服务器出现磁盘快满了的原因是因为,服务器部署了多个tomcat…

Git中的AutoCRLF与SafeCRLF换行符问题

2019独角兽企业重金招聘Python工程师标准>>> 原文:http://www.cnblogs.com/flying_bat/archive/2013/09/16/3324769.html 最近在使用GitHub,发现不时没有修改过的文件要提交,对比发现文件全部修改,但找不到不一样的地方…

stringwriter_Java StringWriter getBuffer()方法与示例

stringwriterStringWriter类的getBuffer()方法 (StringWriter Class getBuffer() method) getBuffer() method is available in java.io package. getBuffer()方法在java.io包中可用。 getBuffer() method is used to get the StringBuffer that holds the present buffer valu…