Sei sulla pagina 1di 8

Base de Datos Deductivas

Tejada Castillo Luis, Vejarano Sandoval Yuri, Alvarez Alvarez Gustavo 6 de Junio 2008
Resumen Un sistema de base de datos deductivas, es un sistema de base de datos pero con la diferencia de que permite hacer deducciones a trav es de inferencias. Se basa principalmente en reglas y hechos que son almacenados en la base de datos. Tambi en las bases de datos deductivas son llamadas base de datos l ogica, a ra z de que se basan en l ogica matem atica.

1.

Introduccion

Las BDDs nacen de la necesidad de almacenar y utilizar c onocimientode una manera eciente. Las BDDs consisten de un set de aserciones, o hechos, conocidos como la base de datos extensional (EDB), y un set de reglas (axiomas), referidos como la base de datos intencional (IDB). La EDB se encuentra generalmente almacenada en una base de datos relacional, y constituye el conocimiento b asico de las BDDs. Las reglas permiten obtener o deducir nuevo conocimiento a partir de la EDB, conocimiento que no se encuentra almacenado directamente en la EDB. De esta manera, las BDDs permiten inferir nuevo conocimiento, el cual puede ser usado para la toma de decisiones importantes del negocio. Existen diversas clases de BDDs y para cada una de ellas existe una sem antica bien denida. Las BDDs son muy usadas en las areas de: inteligencia articial, sistemas expertos, representaci on del conocimiento, tecnolog a de agentes, sistemas de informaci on, integraci on de datos, por nombrar algunas. Existe una importante relaci on entre BDDs y programaci on l ogica. En este curso analizaremos el impacto que ha tenido la programaci on l ogica sobre las bases de datos. En particular, la programaci on l ogica a contribuido al entendimiento de la sem antica de una base de datos, a extendido el concepto de bases de datos relacionales y tambi en a contribuido con la introducci on de nuevas herramientas deductivas para los usuarios de las bases de datos. El inter es de los Sistemas de Gesti on de Bases de Datos Deductivas tiende a incrementarse conforme se ampl a su campo de aplicaci on (Gesti on, Sistemas Expertos). Los estudios relativos a tales sistemas han comenzado a realizarse hace algunos a nos, inspir andose inicialmente en las t ecnicas desarrolladas en Inteligencia Articial en el marco de los sistemas Pregunta - Respuesta, adapt andolas a las limitaciones espec cas de las Bases de Datos.

Un SGBD deductivo es un Sistema que permite derivar nuevas informaciones a partir de las introducidas expl citamente en la Base por el usuario. Este maneja la perspectiva seg un la teor a 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 especicados. Esta funci on deductiva se realiza mediante la adecuada explotaci on de ciertos conocimientos generales relativos a las informaciones de la Base.

2.

Denicion

Un sistema de bases de datos que tenga la capacidad de denir reglas con las cuales deducir o inferir informaci on 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 te oricos de algunos sistemas de esta especie es la l ogica matem atica, a menudo se les denomina Bases de Datos L ogicas. Una base de datos deductiva es, en esencia, un programa l ogico; mapeo de relaciones base hacia hechos, y reglas que son usadas para denir nuevas relaciones en t erminos de las relaciones base y el procesamiento de consultas. Los sistemas Bases de Datos Deductivas intentan modicar el hecho de que los datos requeridos residan en la memoria principal (por lo que la gesti on de almacenamiento secundario no viene al caso) de modo que un SGBD se ampl e 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 especicar reglas. Con lenguaje declarativo se quiere decir un lenguaje que dene lo que un programa desea lograr, en vez de especicar los detalles de c omo lograrlo. Una m aquina de inferencia (o mecanismo de deducci on) 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 a ntimamente relacionado con el modelo de datos relacional, y sobre todo con el formalismo del c alculo relacional. Tambi en esta relacionado con el campo de la programaci on l ogica y el lenguaje Prolog. Los trabajos sobre Bases de Datos Deductivas basados en l ogica han utilizado Prolog como punto de partida. Con un subconjunto de Prolog llamado Datalog se denen 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 sem antica operativa (esto es, la forma como debe ejecutarse un programa en Datalog) queda abierta. Una Base de Datos Deductiva utiliza dos tipos de especicaciones: hechos y reglas. Los hechos se especican de manera similar a como se especican las relaciones, excepto que no es necesario incluir los nombres de los atributos. Recordemos que una tupla en una relaci on describe alg un hecho del mundo real cuyo signicado queda determinado en parte por los nombres de los atributos. En una Base de Datos Deductiva, el signicado del valor del atributo en una tupla queda determinado exclusivamente por su posici on dentro de la tupla.

Las reglas se parecen un poco a las vistas relacionales. Especican relaciones virtuales que no est an almacenadas realmente, pero que se pueden formar a partir de los hechos aplicando mecanismos de inferencia basados en las especicaciones de las reglas. La principal diferencia entre las reglas y las vistas es que en las primeras puede haber recursi on y por tanto pueden producir vistas que no es posible denir en t erminos de las vistas relacionales est andar. 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 evaluaci on y la optimizaci on.

Figura 1: BDD

3.

Caracteristicas

Una Base de Datos Deductiva debe contar al menos con las siguientes caracter sticas: Tener la capacidad de expresar consultas por medio de reglas l ogicas. Permitir consultas recursivas y algoritmos ecientes para su evaluaci on. Contar con negaciones estraticadas. Soportar objetos y conjuntos complejos.

Contar con m etodos de optimizaci on que garanticen la traducci on de especicaciones dentro de planes ecientes de acceso. Su lenguaje de denici on de datos (DDL) es DataLog y no SQL (basado en el algebra relacional). En lugar de relaciones entre entidades, en las bases de datos deductivas aparecen los predicados; y en lugar de las tulpas aparecen los hechos. Modelado sem antico y uniformidad en la representaci on. Como caracter stica fundamental de una Base de Datos Deductiva es la posibilidad de inferir informaci on a partir de los datos almacenados, es imperativo modelar la base de datos como un conjunto de f ormulas l ogicas, las cuales permiten inferir otras f ormulas nuevas.

4.

Reglas de Deducci on
2

Las relaciones de una Base de Datos Relacional se dene por intenci on por .extensi on. Para una Base particular, la intenci on de las relaciones que la constituyen se dene por un conjunto de leyes generales, mientras que cada estado de la Base proporciona una extensi on (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 deducci on para deducir nuevas informaciones elementales a partir de las introducidas expl citamente en la Base. Por ejemplo: se considera una Base de Datos en la que se detallan los lazos de parentesco entre individuos, interes andose 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 v alido, ya que la vulnera. En efecto, la extensi on 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 (impl citamente) la hip otesis de que la tupla que satisface (en un momento dado) la relaci on ABUELO son exactamente las que aparecen en su extensi on. Si se prescinde de este supuesto se puede, por el contrario, suponer que las tuplas que satisfacen la relaci on ABUELO no son s olo las que aparecen de modo expl cito en 4

su extensi on, sino tambi en las que pueden deducirse, mediante la ley 1, de las informaciones relativas a PADRE; usando as 1 como regla de deducci on.

5.

Problemas asociados a las reglas de deducci on

La explotaci on de las reglas de deducci on en un SGBD plantea algunos problemas: Encontrar criterios que permitan, para una ley dada; decidir su utilizaci on como regla de deducci on o como regla de coherencia. Replantear correctamente, en un contexto deductivo, las convenciones habituales en una base de datos (representaciones de informaciones negativas, ecacia de las respuestas a las interrogaciones, cierre del dominio). Desarrollar procedimientos ecaces de deducci on

6.

Utilizaci on de las reglas de deducci on

La explotaci on de las reglas de deducci on pueden analizarse de dos formas. La primera, consiste en su uso en fase de interrogaci on, buscando as informaciones deducibles impl citas. Una segunda forma consiste en su uso en fase de modicaci on, cuando se a naden informaciones deducibles. Seg un se utilicen en el primer o el segundo modo, las reglas se denominan de derivaci on o de generaci on.

7.

interpretaci on de reglas

Existen dos alternativas principales para interpretar el signicado te orico de las reglas: por la teor a de demostraci on y por la teor a de modelos. En los sistemas pr acticos, es mecanismo de inferencia que tiene el sistema, dene la interpretaci on exacta, que pudiera no coincidir con ninguna de las dos interpretaciones te oricas. El mecanismo de inferencia es un procedimiento computacional y por tanto provee una interpretaci on computacional del signicado de las reglas. Una interpretaci on es la llamada interpretaci on de reglas por la teor a de demostraciones. En ella se considerar an 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 5

deducciones es el DBMS, no la base de datos. La interpretaci on por la teor a 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 tambi en como demostraci on de teoremas. El segundo tipo de demostraci on se llama interpretaci on por la teor a de modelos. Aqu , dado un dominio nito o innito de valores constantes, se le asigna a un predicado todas las combinaciones posibles de valores como argumentos. Despu es se debe determinar si el predicado es verdadero o falso. En general, basta con especicar las combinaciones de argumentos que hacen que el predicado sea verdadero, y decir que todas las dem as combinaciones hacen que sean falso. Si esto se hace con todos los predicados, se habla de una interpretaci on del conjunto de predicados. A una interpretaci on se le llama modelo para un conjunto espec co de reglas si esas reglas siempre se cumplen en esa interpretaci on; 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 seg un esa interpretaci on. De este modo, siempre que se aplica una sustituci on (enlace) a las variables de las reglas, si todos los predicados del cuerpo de un arreglo son verdaderos en esa interpretaci on, el predicado de la cabeza de la regla tambi en debe ser verdadero. Cabe se nalar 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.

8.

Seguridad de los programas en Datalog en las BDD

Se dice que un programa o una regla es seguro se genera un conjunto nito de hechos. El problema te orico 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 obtendr an reglas inseguras, que puedan general un n umero innito de hecho, cuando una de las variables de la regla pueda abarcar un dominio innito de valores y esa variable no est e limitada a abarcar una relaci on nita. Para denir reglas seguras de manera m as 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.

9.

Sistema LDL

El proyecto Logic Data Languaje (Lenguaje L ogico de Dato: LDL) de Microelectronics and Computer Corporation (MCC) se inici o en 1984 con dos objetivos primarios: Crear un sistema que extendiera el modelo relacional y a la vez aprovechara algunas de las caracter sticas positivas de un SGBDR (Sistema de Gesti on de Base de Datos Relacionales). Mejorar la funcionalidad de un SGBD de modo que operara como un SGBD deductivo y adem as permitiera la creaci on de aplicaciones de prop osito general. Ahora el sistema resultante es un SGBD deductivo que se encuentra en el mercado.

9.1.

Aplicaciones de LDL

El sistema LDL se ha utilizado en los siguientes dominios de aplicaci on: 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 v nculos y miles de atributos. Es posible desarrollar varias aplicaciones u tiles para los dise nadores de nuevas aplicaciones (as como para los gerentes) a partir de esta metabase de datos, que contiene informaci on tipo diccionario a cerca de toda la empresa. Prueba de hip otesis o dragado de datos: este dominio implica formular una hip otesis, traducirla a un conjunto de reglas LDL y una consulta, y luego ejecutar la consulta contra los datos para probar la hip otesis. El proceso se repite reformulando las reglas y la consulta. Esto se ha aplicado al an alisis de datos de genoma en el campo de la microbiolog a. El dragado de datos consiste en identicar las secuencias de DNA a partir de auto radiograf as digitalizadas de bajo nivel obtenidas de experimentos con bacterias E. coli. Reutilizaci on de software: el grueso del software para una aplicaci on se desarrolla en c odigo est andar por procedimientos, y una peque na fracci on se basa en reglas y se codica en LDL. Las reglas dan origen a una base de conocimientos que contienen los siguientes elementos: Una denici on de cada m odulo C empleado en el programa. Un conjunto de reglas que dene las formas en que los m odulos pueden exportar / importar funciones, restricciones, etc. La base de conocimientospuede servir para tomar decisiones referentes a la reutilizaci on de subconjuntos del software. Los m odulos pueden recombinarse para satisfacer tarea espec ca, en tanto se satisfagan las reglas pertinentes. Se est a experimentando con esto en el software bancario.

10.

Arquitectura de una SABD Deductivo

Para la representaci on l ogica de los tres conjuntos que componen estas bases de datos se emplea el algebra relacional.

Figura 2: Arquitectura Basica de una Base de Datos Deductiva

Referencias
[1] http://html.rincondelvago.com/bases-de-datos-deductivas.html [2] www.dsic.upv.es/ mcelma/conferencia.ppt [3] http://espanol.answers.yahoo.com/question/index?qid=20080518151520AAwpxdO

Potrebbero piacerti anche