Dependencia funcional

Definición - ¿Qué significa dependencia funcional?

La dependencia funcional es una relación que existe cuando un atributo determina de forma única otro atributo.

Si R es una relación con los atributos X e Y, una dependencia funcional entre los atributos se representa como X-> Y, que especifica que Y es funcionalmente dependiente de X. Aquí X es un conjunto determinante e Y es un atributo dependiente. Cada valor de X está asociado precisamente con un valor de Y.

La dependencia funcional en una base de datos sirve como restricción entre dos conjuntos de atributos. La definición de dependencia funcional es una parte importante del diseño de bases de datos relacionales y contribuye a la normalización de aspectos.

Techinfo explica la dependencia funcional

Una dependencia funcional es trivial si Y es un subconjunto de X. En una tabla con los atributos del nombre del empleado y el número de seguro social (SSN), el nombre del empleado depende funcionalmente del SSN porque el SSN es único para los nombres individuales. Un SSN identifica al empleado específicamente, pero el nombre de un empleado no puede distinguir el SSN porque más de un empleado podría tener el mismo nombre.

La dependencia funcional define la forma normal de Boyce-Codd y la tercera forma normal. Esto preserva la dependencia entre atributos, eliminando la repetición de información. La dependencia funcional está relacionada con una clave candidata, que identifica unívocamente una tupla y determina el valor de todos los demás atributos en la relación. En algunos casos, los conjuntos funcionalmente dependientes son irreducibles si:

  • El conjunto de la derecha de la dependencia funcional tiene solo un atributo
  • El conjunto izquierdo de dependencia funcional no se puede reducir, ya que esto puede cambiar todo el contenido del conjunto.
  • Reducir cualquiera de las dependencias funcionales existentes podría cambiar el contenido del conjunto

Una propiedad importante de una dependencia funcional es el axioma de Armstrong, que se utiliza en la normalización de bases de datos. En una relación, R, con tres atributos (X, Y, Z), el axioma de Armstrong es verdadero si se cumplen las siguientes condiciones:

  • Axioma de transividad: si X-> Y e Y-> Z, entonces X-> Z
  • Axioma de reflexividad (propiedad de subconjunto): si Y es un subconjunto de X, entonces X-> Y
  • Axioma de aumento: si X-> Y, entonces XZ-> YZ