💾
Welcome to DataGenesis !
  • 🚀 Welcome to the Database Management System Playground! 📊💾
  • Basics of DBMS
    • Database Management System
    • DBMS V/S File System
    • DBMS Architectures
    • Tier 3 Architecture / Three Schema Architecture
  • E-R Data Model
    • Basics of E-R Model
    • Attributes in E-R Model
    • Null Values
    • Strong & Weak Entities
    • Relationship Constraints
    • Recursive Relationships
    • E-R Diagrams
    • Extended E-R Model
  • Relational Model
    • Relational Model
    • Facts About Relational Model
    • Types of Keys in Relational Model
    • Integrity Constraints
    • Anomalies in Relational Model
  • Transform - ER Model to Relational Model
    • Mapping from ER Model to Relational Model
  • SQL - Structured Query Language
    • SQL
    • CRUD Operations
    • Data Types
    • Type of Commands in SQL
    • Working With Commands
    • Data Retrieval Commands
  • Normalisation
    • Functional Dependencies
    • Armstrong's Axioms
    • Multivalued Dependency
    • 1 Normal Form
    • 2 Normal Form
    • 3 Normal Form
    • Boyce-Codd Normal Form (BCNF)
    • 4 Normal Form
    • 5 Normal Form
    • Lossless Decomposition, Lossless Join ,and Dependency Preserving Decomposition, Denormalization
  • Concurrency Control
    • Transactions & Concurrency
    • Scheduling of Transactions
    • Problems & Strategies in Concurrency Control
    • Transaction & ACID Properties
    • How to implement ACID Properties
    • Atomicity Techniques
    • Durability Techniques
    • Implementing Locking in DBMS
    • Concurrency Control Protocols
      • Two Phase Locking
      • Timestamp Ordering
      • Multi Version Concurrency Control Techniques
    • Starvation in DBMS
    • Deadlock in DBMS
    • Log Based Recovery
  • NoSQL & Types of Databases
    • SQL V/S NoSQL
    • Types of Databases
  • DB Optimization
    • File Organization
      • Hash File Organizations
      • B+ Tree File Organization: A Guide to Efficient Data Indexing
      • Cluster File Organization
    • Indexing in DBMS
      • Primary Indexing
      • Clustered Indexing
      • Secondary Indexing
      • Multilevel Indexing
  • Distributed Databases
    • Database Clustering
    • Partitioning and Sharding
    • CAP Theorm
Powered by GitBook
On this page

Was this helpful?

  1. Normalisation

Armstrong's Axioms

Armstrong's axioms are a set of logical inference rules used in database management systems to deduce functional dependencies between attributes. These axioms are essential for determining the closure of a set of attributes and are a fundamental part of database normalization and query optimization. There are three primary Armstrong axioms:

  1. Reflexivity Axiom (Reflexivity Rule):

    If α is a set of attributes and β is a subset of α, then α → β is a valid functional dependency. This axiom represents that if you know that a set of attributes α functionally determines a subset β of those attributes, then it's also valid to say that α functionally determines itself.

    Example: If A → B is known to be true, then A → A is also true.

  2. Augmentation Axiom (Augmentation Rule):

    If α → β is a valid functional dependency, then for any set of attributes γ, αγ → βγ is also a valid functional dependency. This axiom implies that if a set of attributes α functionally determines a set of attributes β, then adding the same set of attributes to both sides of the functional dependency preserves its validity.

    Example: If A → B is known to be true, then AC → BC is also true.

  3. Transitivity Axiom (Transitivity Rule):

    If α → β and β → γ are both valid functional dependencies, then α → γ is also a valid functional dependency. This axiom reflects that if a set of attributes α functionally determines another set β, and β functionally determines γ, then α must also functionally determine γ.

    Example: If A → B and B → C are known to be true, then A → C is also true.

Using Armstrong's axioms, you can systematically deduce additional functional dependencies from the ones you already know. This is particularly useful in the process of database normalization, where you aim to reduce redundancy and ensure data integrity by identifying all functional dependencies and decomposing relations into smaller, well-structured tables.

PreviousFunctional DependenciesNextMultivalued Dependency

Last updated 1 year ago

Was this helpful?