Está en la página 1de 7

BASES DE DATOS DEDUCTIVAS

Introduccin:
El inters de los Sistemas de Gestin de Bases de Datos Deductivas tiende a
incrementarse conforme se ampla su campo de aplicacin (Gestin, Sistemas
Expertos). Los estudios relativos a tales sistemas han comenzado a realizarse hace
algunos aos, inspirndose inicialmente en las tcnicas desarrolladas en
Inteligencia Artificial en el marco de los sistemas Pregunta - Respuesta,
adaptndolas a las limitaciones especficas de las Bases de Datos.
Un SGBD deductivo es un Sistema que permite derivar nuevas informaciones a
partir de las introducidas explcitamente en la Base por el usuario. Este maneja la
perspectiva segn la teora de las demostraciones de una base de datos, y en
particular es capaz de deducir hechos a partir de la base de datos extensional, es
decir, las relaciones base, aplicando a esos hechos axiomas deductivos o reglas de
inferencias especificados. Esta funcin deductiva se realiza mediante la adecuada
explotacin de ciertos conocimientos generales relativos a las informaciones de la
Base.
Definicin:
Un sistema de bases de datos que tenga la capacidad de definir reglas con las
cuales deducir o inferir informacin adicional a partir de los hechos almacenados
en las bases de datos se llama Sistema de Bases de Datos Deductivas. Puesto que
parte de los fundamentos tericos de algunos sistemas de sta especie es la lgica
matemtica, a menudo se les denomina Bases de Datos Lgicas. Una base de datos
deductiva es, en esencia, un programa lgico; mapeo de relaciones base hacia
hechos, y reglas que son usadas para definir nuevas relaciones en trminos de las
relaciones base y el procesamiento de consultas.
Los sistemas Bases de Datos Deductivas intentan modificar el hecho de que los
datos requeridos residan en la memoria principal (por lo que la gestin de
almacenamiento secundario no viene al caso) de modo que un SGBD se ample
para manejar datos que residen en almacenamiento secundario.
En un sistema de Bases de Datos Deductivas por lo regular se usa un lenguaje
declarativo para especificar reglas. Con lenguaje declarativo se quiere decir un
lenguaje que define lo que un programa desea lograr, en vez de especificar los
detalles de cmo lograrlo. Una mquina de inferencia (o mecanismo de deduccin)
dentro del sistema puede deducir hechos nuevos a partir de la base de datos
interpretando dichas reglas. El modelo empleado en las Bases de Datos Deductivas
est ntimamente relacionado con el modelo de datos relacional, y sobre todo con el
formalismo del clculo relacional. Tambin esta relacionado con el campo de la
programacin lgica y el lenguaje Prolog. Los trabajos sobre Bases de Datos
Deductivas basados en lgica han utilizado Prolog como punto de partida. Con un
subconjunto de Prolog llamado Datalog se definen reglas declarativamente junto
con un conjunto de relaciones existentes que se tratan como literales en el lenguaje.
Aunque la estructura gramatical se parece a la de Prolog, su semntica operativa
(esto es, la forma como debe ejecutarse un programa en Datalog) queda abierta.

Una Base de Datos Deductiva utiliza dos tipos de especificaciones: hechos y reglas.
Los hechos se especifican de manera similar a como se especifican las relaciones,
excepto que no es necesario incluir los nombres de los atributos. Recordemos que
una tupla en una relacin describe algn hecho del mundo real cuyo significado
queda determinado en parte por los nombres de los atributos. En una Base de
Datos Deductiva, el significado del valor del atributo en una tupla queda
determinado exclusivamente por su posicin dentro de la tupla.
Las reglas se parecen un poco a las vistas relacionales. Especifican relaciones
virtuales que no estn almacenadas realmente, pero que se pueden formar a partir
de los hechos aplicando mecanismos de inferencia basados en las especificaciones
de las reglas. La principal diferencia entre las reglas y las vistas es que en las
primeras puede haber recursin y por tanto pueden producir vistas que no es
posible definir en trminos de las vistas relacionales estndar.
Las BDD buscan derivar nuevos conocimientos a partir de datos existentes
proporcionando interrelaciones del mundo real en forma de reglas. Utilizan
mecanismos internos para la evaluacin y la optimizacin.
Caractersticas:
Una Base de Datos Deductiva debe contar al menos con las siguientes
caractersticas:

Tener la capacidad de expresar consultas por medio de reglas lgicas.

Permitir consultas recursivas y algoritmos eficientes para su evaluacin.

Contar con negaciones estratificadas.

Soportar objetos y conjuntos complejos.

Contar con mtodos de optimizacin que garanticen la traduccin de


especificaciones dentro de planes eficientes de acceso.

Como caracterstica fundamental de una Base de Datos Deductiva es la


posibilidad de inferir informacin a partir de los datos almacenados, es
imperativo modelar la base de datos como un conjunto de frmulas lgicas,
las cuales permiten inferir otras frmulas nuevas.

Reglas de Deduccin:
Las relaciones de una Base de Datos Relacional se define por intencin y por
extensin. Para una Base particular, la intencin de las relaciones que la
constituyen se define por un conjunto de leyes generales, mientras que cada estado
de la Base proporciona una extensin (conjunto de tuplas) para cada una de las
relaciones. Las tuplas constituyen, de hecho, informaciones elementales.
En un SGBD convencional, todas las leyes generales se explotan para mantener la
coherencia de las informaciones elementales; a estas leyes se las denomina entonces

restricciones de integridad. Por el contrario, en un Sistema deductivo, algunos (o


todas) de estas leyes se utilizan como reglas de deduccin para deducir nuevas
informaciones elementales a partir de las introducidas explcitamente en la Base.
Por ejemplo: se considera una Base de Datos en la que se detallan los lazos de
parentesco entre individuos, interesndose particularmente por las relaciones
PADRE y ABUELO. Entre las leyes generales que conciernen a estas dos
relaciones, se considera la ley 1 que expresa Todo padre de un padre es un
abuelo, y se supone que, en un momento dado, el estado de la Base es tal que las
informaciones elementales relativas a las relaciones PADRE y ABUELO son las
siguientes:
PADRE P H ABUELO A N
Juan Pablo Roberto Pedro
Pablo Jaime
Si la ley 1 se considera como una regla de coherencia, este estado de la Base debe
considerarse no vlido, ya que la vulnera. En efecto, la extensin de ABUELO no
contiene la tupla (Juan, Jaime), siendo as que Juan es el padre de Pablo y Pablo es
el padre de Jaime. En este caso se ha hecho (implcitamente) la hiptesis de que la
tupla que satisface (en un momento dado) la relacin ABUELO son exactamente
las que aparecen en su extensin. Si se prescinde de este supuesto se puede, por el
contrario, suponer que las tuplas que satisfacen la relacin ABUELO no son slo
las que aparecen de modo explcito en su extensin, sino tambin las que pueden
deducirse, mediante la ley 1, de las informaciones relativas a PADRE; usando as 1
como regla de deduccin.
Problemas asociados a las reglas de deduccin:
La explotacin de las reglas de deduccin en un SGBD plantea algunos problemas:

Encontrar criterios que permitan, para una ley dada; decidir su utilizacin
como regla de deduccin o como regla de coherencia.

Replantear correctamente, en un contexto deductivo, las convenciones


habituales en una base de datos (representaciones de informaciones
negativas, eficacia de las respuestas a las interrogaciones, cierre del
dominio).

Desarrollar procedimientos eficaces de deduccin

Utilizacin de las reglas de deduccin:


La explotacin de las reglas de deduccin pueden analizarse de dos formas. La
primera, consiste en su uso en fase de interrogacin, buscando as informaciones
deducibles implcitas.

Una segunda forma consiste en su uso en fase de modificacin, cuando se aaden


informaciones deducibles. Segn se utilicen en el primer o el segundo modo, las
reglas se denominan de derivacin o de generacin.
Interpretacin de reglas:
Existen dos alternativas principales para interpretar el significado terico de las
reglas: por la teora de demostracin y por la teora de modelos. En los sistemas
prcticos, es mecanismo de inferencia que tiene el sistema, define la interpretacin
exacta, que pudiera no coincidir con ninguna de las dos interpretaciones tericas.
El mecanismo de inferencia es un procedimiento computacional y por tanto provee
una interpretacin computacional del significado de las reglas.
Una interpretacin es la llamada interpretacin de reglas por la teora de
demostraciones. En ella se considerarn los hechos y las reglas como enunciados
verdades o axiomas. Los axiomas base no contienen variables. Los hechos son
axiomas base que se dan por ciertos. Las reglas se llaman axiomas deductivos, ya
que pueden servir para deducir hechos nuevos. Con los axiomas deductivos se
pueden construir demostraciones que deriven hechos nuevos a partir de los ya
existentes. Los axiomas deductivos, junto con las restricciones de integridad
constituyen lo que en ocasiones se denomina base de datos intencional, y la base de
datos extensional junto con la intencional constituyen lo que suele llamarse Base de
Datos Deductivas; aunque en realidad, quien se encarga de las deducciones es el
DBMS, no la base de datos. La interpretacin por la teora de demostraciones
ofrece un enfoque por procedimientos o computacional para calcular una
respuesta a la consulta Datalog. Al proceso de demostrar si un determinado hecho
(teorema) se cumple se le conoce tambin como demostracin de teoremas.
El segundo tipo de demostracin se llama interpretacin por la teora de modelos.
Aqu, dado un dominio finito o infinito de valores constantes, se le asigna a un
predicado todas las combinaciones posibles de valores como argumentos. Despus
se debe determinar si el predicado es verdadero o falso. En general, basta con
especificar las combinaciones de argumentos que hacen que el predicado sea
verdadero, y decir que todas las dems combinaciones hacen que sean falso. Si esto
se hace con todos los predicados, se habla de una interpretacin del conjunto de
predicados.
A una interpretacin se le llama modelo para un conjunto especfico de reglas si
esas reglas siempre se cumplen en esa interpretacin; es decir, para cualesquiera
valores que se asignen a las variables de las reglas, la cabeza de reglas es verdadera
cuando sustituimos los valores de verdad asignados a los predicados en el cuerpo
de las reglas segn esa interpretacin. De este modo, siempre que se aplica una
sustitucin (enlace) a las variables de las reglas, si todos los predicados del cuerpo
de un arreglo son verdaderos en esa interpretacin, el predicado de la cabeza de la
regla tambin debe ser verdadero. Cabe sealar que una regla se viola si un
determinado enlace de constantes en a las variables hace verdaderos todos los
predicados del cuerpo de la regla, pero hace que el predicado de la cabeza de la
regla sea falso.
Seguridad de los programas en Datalog en las BDD:

Se dice que un programa o una regla es seguro se genera un conjunto finito de


hechos. El problema terico de determinar si un conjunto de reglas es o no seguro
es indecidible. Sin embargo, es posible determinar la seguridad de formas
restringidas de reglas. Se obtendrn reglas inseguras, que puedan general un
nmero infinito de hecho, cuando una de las variables de la regla pueda abarcar
un dominio infinito de valores y esa variable no est limitada a abarcar una
relacin finita.
Para definir reglas seguras de manera ms formal, se utiliza el concepto de
variable limitada. Una variable X es limitada en una regla si: a) aparece en un
predicado normal (no integrado) en el cuerpo de la regla; b) aparece en un
predicado de la forma X = c o c = X o (c1<= X y X <= c2) en el cuerpo de la regla,
donde c, c1 y c2 son valores constantes; o c) aparece en predicado de la forma X =
Y o Y = X en el cuerpo de la regla, donde Y es una variable limitada. Se dice que
una regla es segura si todas sus variables son limitadas.
Sistema LDL:
El proyecto Logic Data Languaje (Lenguaje Lgico de Dato: LDL) de
Microelectronics and Computer Corporation (MCC) se inici en 1984 con dos
objetivos primarios:

Crear un sistema que extendiera el modelo relacional y a la vez aprovechara


algunas de las caractersticas positivas de un SGBDR (Sistema de Gestin
de Base de Datos Relacionales).

Mejorar la funcionalidad de un SGBD de modo que operara como un


SGBD deductivo y adems permitiera la creacin de aplicaciones de
propsito general.

Ahora el sistema resultante es un SGBD deductivo que se encuentra en el mercado.


Aplicaciones de LDL :
El sistema LDL se ha utilizado en los siguientes dominios de aplicacin:

Modelado de empresas: este dominio implica modelar la estructura, los


procesos y las restricciones dentro de una empresa. Los datos relacionados
con ella pueden resultar en modelo ER extendido que contiene cientos de
entidades y vnculos y miles de atributos. Es posible desarrollar varias
aplicaciones tiles para los diseadores de nuevas aplicaciones (as como
para los gerentes) a partir de esta metabase de datos, que contiene
informacin tipo diccionario a cerca de toda la empresa.

Prueba de hiptesis o dragado de datos: este dominio implica formular una


hiptesis, traducirla a un conjunto de reglas LDL y una consulta, y luego
ejecutar la consulta contra los datos para probar la hiptesis. El proceso se
repite reformulando las reglas y la consulta. Esto se ha aplicado al anlisis
de datos de genoma en el campo de la microbiologa. El dragado de datos

consiste en identificar las secuencias de DNA a partir de autorradiografas


digitalizadas de bajo nivel obtenidas de experimentos con bacterias E. coli.

Reutilizacin de software: el grueso del software para una aplicacin se


desarrolla en cdigo estndar por procedimientos, y una pequea fraccin
se basa en reglas y se codifica en LDL. Las reglas dan origen a una base de
conocimientos que contienen los siguientes elementos:
o

Una definicin de cada mdulo C empleado en el programa.

Un conjunto de reglas que define las formas en que los mdulos


pueden exportar / importar funciones, restricciones, etc.

La base de conocimientos puede servir para tomar decisiones referentes a la


reutilizacin de subconjuntos del software. Los mdulos pueden recombinarse
para satisfacer tarea especficas, en tanto se satisfagan las reglas pertinentes. Se
est experimentando con esto en el software bancario.
Hardware:
Fsicamente, las bases de datos deductivas casi siempre se almacenan en medios de
acceso directo, por lo regular discos magnticos de cabeza mvil, aunque en
algunos sistemas pudieran utilizarse otros medios (tambores, discos pticos) en vez
de discos o adems de discos. Los tiempos de acceso a disco son mucho ms largos
que los de acceso a la memoria principal: 400 milisegundos o ms para un disco
flexible, y 30 milisegundos o menos para un disco "rpido" grande. El acceso a la
memoria principal ser con toda probabilidad cuatro o cinco rdenes de magnitud
ms rpido que el acceso a disco en un sistema dado. Por lo tanto, un objetivo
prioritario de desempeo en sistemas de Bases de Datos Deductivas es reducir al
mnimo el nmero de accesos a disco (E/S a disco). Cualquier organizacin de los
datos en el disco se denomina estructura de almacenamiento, la cual debe ser
elegido el proceso de diseo, a esto se le conoce como diseo fsico de Bases de
Datos Deductivas.
Algunas de las estructuras de almacenamiento utilizadas con mayor frecuencia en
los sistemas actuales son la indexacin, hash, cadenas de apuntadores y tcnicas de
compresin.
Se han hecho varias sugerencias alternativas para crear hardware especial
enfocado a las funciones de gestin de datos. Estas alternativas cuyo nombre
genrico es mquinas (o computadores) de Bases de Datos, incluyen procesadores
dorsales, dispositivos inteligentes, sistemas multiprocesadores, sistema de memoria
asociativa y procesadores de propsito general.
Arquitectura de una SABD Deductivo:
A continuacin se muestra la arquitectura de una SABD Deductivo con su dos
componentes fundamentales: un mdulo deductivo y un SABD relacional.
Reglas generales hechos elementales

(datos implcitos) (datos explcitos)


SABD Deductivo
Conclusin:
Se ha presentado una introduccin a una rama relativamente nueva de la gestin
de Bases de Datos: los Sistemas de Bases de Datos Deductivas. Este campo acusa la
influencia de los lenguajes de programacin de lgica, sobre todo de Prolog. Un
subconjunto de Prolog, llamado Datalog que contiene clusulas de Horn libres de
funciones, es el que se usa primordialmente como fundamento de los trabajos con
Bases de Datos Deductivas en la actualidad.
Una clusula de Horn es una frmula en la lgica de primer orden que se , que por
las propiedades de las conectivas lgicas, es equivalente a la siguiente frmula:
B1 " ... " Bn ! A
la cual ser denotada de la siguiente forma:
A ! B1 " ... " Bn
Y se llama tambin clusula de bases de datos.
El rea de las Bases de Datos Deductivas todava est en una etapa experimental.
Su adopcin por parte de la industria impulsar su desarrollo.

También podría gustarte