# Armstrong’s Axioms in Functional Dependency in DBMS

Prerequisite – Functional Dependencies

This article contains Armstrong’s Axioms and how Armstrong’s Axioms are used to decide about the functional dependency on the database. We will be also learning about the Secondary Rules and Armstrong Relations. We will learn each thing in detail. Before moving ahead, you must have a knowledge of Functional Dependency.

## Armstrong Axioms

The term Armstrong Axioms refers to the sound and complete set of inference rules or axioms, introduced by William W. Armstrong, that is used to test the logical implication of functional dependencies. If F is a set of functional dependencies then the closure of F, denoted as F+, is the set of all functional dependencies logically implied by F. Armstrong’s Axioms are a set of rules, that when applied repeatedly, generates a closure of functional dependencies.

### Axioms

• Axiom of Reflexivity: If A is a set of attributes and B is a subset of A, then A holds B. If BâŠ†A then Aâ†’B. This property is trivial property.
• Axiom of Augmentation: If Aâ†’B holds and Y is the attribute set, then AYâ†’BY also holds. That is adding attributes to dependencies, does not change the basic dependencies. If Aâ†’B, then ACâ†’BC for any C.
• Axiom of Transitivity: Same as the transitive rule in algebra, if Aâ†’B holds and Bâ†’C holds, then Aâ†’C also holds. Aâ†’B is called A functionally which determines B. If Xâ†’Y and Yâ†’Z, then Xâ†’Z.

### Secondary Rules

These rules can be derived from the above axioms.

• Union: If Aâ†’B holds and Aâ†’C holds, then Aâ†’BC holds. If Xâ†’Y and Xâ†’Z then Xâ†’YZ.
• Composition: If Aâ†’B and Xâ†’Y hold, then AXâ†’BY holds.
• Decomposition: If Aâ†’BC holds then Aâ†’B and Aâ†’C hold. If Xâ†’YZ then Xâ†’Y and Xâ†’Z.
• Pseudo Transitivity: If Aâ†’B holds and BCâ†’D holds, then ACâ†’D holds. If Xâ†’Y and YZâ†’W then XZâ†’W.
• Self Determination: It is similar to the Axiom of Reflexivity, i.e. Aâ†’A for any A.
• Extensivity: Extensivity is a case of augmentation. If ACâ†’A, and Aâ†’B, then ACâ†’B. Similarly, ACâ†’ABC and ABCâ†’BC. This leads to ACâ†’BC.

### Armstrong Relation

Armstrong Relation can be stated as a relation that is able to satisfy all functional dependencies in the F+ Closure. In the given set of dependencies, the size of the minimum Armstrong Relation is an exponential function of the number of attributes present in the dependency under consideration.

## Why Armstrong Axioms Refer to the Sound and Complete?

By sound, we mean that given a set of functional dependencies F specified on a relation schema R, any dependency that we can infer from F by using the primary rules of Armstrong axioms holds in every relation state r of R that satisfies the dependencies in F.
By complete, we mean that using primary rules of Armstrong axioms repeatedly to infer dependencies until no more dependencies can be inferred results in the complete set of all possible dependencies that can be inferred from F.

## Advantages of Using Armstrong’s Axioms in Functional Dependency

• They provide a systematic and efficient method for inferring additional functional dependencies from a given set of functional dependencies, which can help to optimize database design.
• They can be used to identify redundant functional dependencies, which can help to eliminate unnecessary data and improve database performance.
• They can be used to verify whether a set of functional dependencies is a minimal cover, which is a set of dependencies that cannot be further reduced without losing information.

## Disadvantages of Using Armstrong’s Axioms in Functional Dependency

• The process of using Armstrong’s axioms to infer additional functional dependencies can be computationally expensive, especially for large databases with many tables and relationships.
• The axioms do not take into account the semantic meaning of data, and may not always accurately reflect the relationships between data elements.
• The axioms can result in a large number of inferred functional dependencies, which can be difficult to manage and maintain over time.

## FAQs on Armstrong Axioms

### 1. List the primary rules of Armstrong Axioms?

The primary rules of the Armstrong Axioms are:

• Reflexivity
• Augmentation
• Transitivity

### 2. When do we use Armstrong Axioms?

We use Armstrong Axioms to determine the functional dependency in the database. Generally, it is used to derive other functional dependency in the database using the given functional dependency.