阿姆斯特朗數_阿姆斯特朗的功能依賴公理 數據庫管理系統

阿姆斯特朗數

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.pswp.cn/news/541763.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/541763.shtml
英文地址,請注明出處:http://en.pswp.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…