Técnicas:
Actualmente, se están investigando temas de la gestión de modificación de esquemas. En las notas bibliográficas se hace referencia a algunas propuestas iniciales y descripciones de implementaciones.
Se espera no solamente que los D. B. M. S. de 5ta. generación sean más flexibles y tengan mayor independencia de datos que los sistemas actuales, sino también que tengan mecanismos de Verificación de Integridad más poderosos. Estos incluirán también rutinas sintácticas más poderosas para: verificar, deletrear y también rutinas de Verificación de Integridad Semántica.
¿Qué es la Integridad Semántica?:
Por Integridad Semántica queremos decir que es la adaptación de la base de datos con las restricciones derivadas de nuestro conocimiento de lo que está y no está permitido en aquella parte del universo que esté representada por los datos de la base de datos. El mantenimiento de la Integridad semántica implica evitar que se inserten en la base de datos los datos los datos que representen un estado no permitido del universo.
Algunos Enfoques para el Mantenimiento Automático de la Integridad Semántica:
Se obtiene un enfoque directo para el mantenimiento de la Integridad Semántica a partir de las sugerencias de: Abrial (1974) y Florentin en el mismo año. Esto implica dos (02) pasos:
Normalmente, el instalador de la base de datos debería ser capaz de especificar las restricciones que el sistema usa después para mantener la Integridad Semántica automáticamente, sin embargo, este enfoque observarse con precaución dos (02) tipos de problemas que son:
Esto se puede ilustrar con un ejemplo, dada una relación de progenitor, una restricción semántica podría declarar que el subgrafo que contenga solamente bordes etiquetados con progenitor debe estar libre de bucles, es decir, ninguno puede ser su propio progenitor. Verificar esta restricción es probable que resulte costoso, si la base de datos contuviera además la facha de nacimiento, entonces, la restricción anterior podría sustituirse por una restricción que declarará que la fecha de nacimiento del programa debe preceder la del hijo. Sin embargo, estas consideraciones no han retrasado el desarrollo del enfoque de dos (02) pasos, y se ha conseguido progresar gracias a los trabajos de:
Sugieren una técnica similar a la que Abrial (1974) propuso para expresar restricciones de Cardinalidad.
Tipo
Persona = nombre objeto : tipo de nombre;
número : seguridad social;
sexo : (Hombre, Mujer) no ordenado;
dirección : tipo de dirección;
título : (Profesor, Tutor, Estudiante);
claves : nombre, número
nombres de las dependencias dirección sexo título
objeto final;
El refuerzo de las restricciones semánticas implicadas por esta especificación se puede llevar a cabo automáticamente mediante rutinas normales de verificación de tipos, por ejemplo, la restricción "los objetos persona" sólo pueden ser de sexo Masculino o Femenino, lo cual está implícito en el ejemplo, se refuerza fácilmente. Sin embargo, no es fácil ver cómo restricciones más complejas tales como: una persona no puede ser hijo de alguien nacido en una fecha posterior, podrían expresarse en una declaración de tipos. El trabajo de Brodie resulta interesante debido a que cuestiona las nociones que se usan para distinguir entre sintaxis y semántica.
DEFINE CONSTRAINT Nativehead (Department) => Dept (Head (Department)) = Department
DEFINIR RESTRICCIÓN El jefe asociado a (Departamento) => Dept (Jefe (Departamento)) = Departamento
Lo que indica que El jefe de un Departamento debe proceder del propio Departamento.
Las lógicas que hemos descrito hasta ahora han considerado dos (02) valores que son: Verdadero o Falso, sin embargo, existe una gran cantidad de bibliografía relacionada con lógicas que tienen más de dos (02) valores; por ejemplo, Belnap (1977) ha investigado una lógica de cuatro (04) valores en la cual estos valores son los cuatro (04) estados de conocimiento que una base de conocimientos puede tener con respecto a una proposición "P":
Este sistema de cuatro (04) valores es importante para el diseño de sistemas automáticos de pregunta / respuesta, puesto que una base de conocimientos computerizada puede estar en cualquiera de estos estados con respecto a una posición "P". Una de las Lógicas de Valores Múltiples mejor conocida es la Lógica de Tres (03) valores propuesta por Lukasiewicz, su justificación para esta lógica era que a los asertos tales como: "mañana habrá una batalla naval" no se les puede asignar realmente un valor de Verdadero o Falso. En consecuencia, introdujo un 3er. valor "I" que denota un valor de verdad "Intermedio".
Mc. Cawley (1981) muestra cómo se puede modificar la lógica de tres (03) valores de Lukasiewicz, de tal forma, que pueda considerarse que "I" denote el valor "Clase de Verdadero". A continuación se muestra una tabla de Verdad correspondiente a esta interpretación.
|
A |
B |
A B |
|
V |
V |
V |
|
V |
I |
I |
|
V |
F |
F |
|
V |
V |
V |
|
I |
I |
V |
|
I |
F |
F |
|
F |
V |
V |
|
F |
I |
V |
|
F |
F |
V |
Esta interpretación de "I" como Clase de Verdadero puede generalizarse para dar cabida a grados de verdad, los sistemas que resultan de tal generalización son útiles para tratar con conceptos confusos, tales como: gordo. La lógica borrosa, que se discutirá más adelante intenta también dar cabida a la vaguedad. En Rescher (1969) se puede encontrar una relación de la bibliografía de lógica de valores múltiples.
Existe una gran parte del conocimiento del sentido común al que las lógicas convencionales no pueden dar cabida, esto se debe a que el conocimiento de sentido común implica típicamente mucha incertidumbre, por ejemplo, considérese el siguiente fragmento de sentido común "Si un coche que se ofrece como saldo es barato y viejo, entonces, probablemente no estará en buen estado".
Esta declaración está llena de incertidumbre, las lógicas convencionales no admiten gradaciones de verdad y, por tanto, no pueden usarse para representar y razonar con declaraciones de este tipo. La lógica borrosa (véase, por ejemplo, Zadeh, 1983) puede adaptar tal incertidumbre mediante un enfoque semántico, que es bastante diferente del usado en la lógica convencional.
Semántica con Resultados de Ensayos:
Esta semántica se usa para asignar un significado a una proposición de lógica borrosa, en esta semántica se considera que una proposición es una colección de restricciones elásticas, por ejemplo, la proposición "Génesis es castaño claro" representa una restricción elástica del color de cabello de Génesis y la proposición "la mayoría de los gordos no son muy ágiles" representa una restricción elástica del número de gordos ágiles.
En la semántica con resultados de ensayos, el significado de una proposición viene dado por el procedimiento que se usa para computar los resultados de los ensayos de esa propiedad, en general, este procedimiento implica:
El significado de las relaciones en E. D. B. es conocido por la persona que quiera saber el significado de la proposición, indirectamente, los procedimientos de ensayo y agregaciones usadas en semántica de resultado de ensayos describen un proceso mediante el cual los significados de proposiciones están compuestos de significados de las relaciones constituyentes en la E. D. B., como ejemplo, supongamos que queremos determinar el significado de la proposición: "La nieve es generalmente blanca". Una E. D. B. apropiada incluiría una relación "blanca" y una relación "generalmente", tal que:
Blanco

Generalmente

Ahora, supóngase que S1,……, Sm representa muestras de nieve y que ti (1 i m) representa el grado hasta el cual el color de Si es blanco, así pues, ti es el resultado del ensayo para la restricción del color de Si inducido por "blanco". Usando esta notación, los pasos en el procedimiento de ensayo son:
![]()
El significado de "La nieve es generalmente blanca" está representado por el procedimiento de ensayo usado para calcular el valor de "t", el ejemplo de antes se obtuvo de Zadeh (1983) donde se da otro ejemplo más complejo.
Las lógicas que se han descrito hasta ahora se denominan lógicas "funcionales de verdad". Cuando determinamos la consistencia o demostramos teoremas en las teorías de tales lógicas, recurrimos a interpretaciones, cada una de las cuales asigna un valor de Verdadero o Falso a las fórmulas atómicas de las teorías implicadas. Esto es particularmente obvio si se usan Tablas de Verdad, por ejemplo, considérese el siguiente par de fórmulas:
De estas dos (02) fórmulas podemos inferir A C, construyendo la siguiente Tabla de la Verdad:
|
A |
B |
C |
A B |
B C |
A C |
|
|
@1 Τ |
Τ |
Τ |
Τ |
Τ |
Τ |
|
|
@2 Τ |
Τ |
|
Τ |
|
|
|
|
@3 Τ |
|
Τ |
|
Τ |
Τ |
|
|
@4 Τ |
|
|
|
Τ |
|
|
|
@5 |
Τ |
Τ |
Τ |
Τ |
Τ |
|
|
@6 |
Τ |
|
Τ |
|
Τ |
|
|
@7 |
|
Τ |
Τ |
Τ |
Τ |
|
|
@8 |
|
|
Τ |
Τ |
Τ |
|
En efecto, lo que hemos hecho es considerar ocho funciones: @1 a @8, cada una de las cuales especifica un estado de situación particular en el que: A, B y C tienen varios valores de Verdadero o Falso. De la tabla, puede verse que A C es Verdadero en todos los casos en que A B y B C sean verdaderos, por lo tanto, podemos concluir que A C es una consecuencia lógica de: A B y B C. La validez de esta conclusión es intuitivamente obvia en lo siguiente, donde "N" es algún número y:
Es intuitivamente obvio que A C es una consecuencia lógica de: A B y B C, independientemente de lo que el número "N" sea en realidad; sin embargo, supóngase que:
En este caso, no es intuitivamente obvio que A C sea una consecuencia lógica de A B y B C, es decir, dadas las siguientes dos sentencias S1 y S2, no es razonable inferir S3:
Esta inferencia es intuitivamente errónea, porque las sentencias S1 y S2 relacionan estados diferentes de situación o mundos posibles. Pero las otras circunstancias no son las mismas en los dos (02) casos y como resultado, los estados de cosas con los que la 1era. sentencia tiene que ver que no se superponen con los de la 2da. sentencia: si Reagan hubiera nacido en Francia, no hubiera sido Presidente de los Edos. Unidos y, por lo tanto, presumiblemente no viviría en La Casa Blanca; este ejemplo se obtuvo de uno dado por Mc. Cawley (1981), donde se discuten otros ejemplos similares.
Las lógicas consideradas hasta ahora no pueden dar cabida a la distinción entre estados de cosas o mundos posibles, tales como los que aparecen en el ejemplo anterior, ni pueden dar cabida a los estados de cosas que existan en las creencias de: las personas, códigos morales, etc. Para tratar con tales cosas, los lógicos han desarrollado una lógica denominada Lógica Modal, el objetivo de las siguientes secciones es dar una breve descripción de Lógicas Modales y discutir su empleo en sistemas de bases de conocimiento.
¿Qué es una Lógica Modal?:
Snyder (1971) ha descrito la Lógica Modal como aquella que permite razonar con declaraciones que están en modo subjuntivo en lugar de estar en indicativo, las declaraciones subjuntivas afirman:
Tales declaraciones son diferentes de las de indicativo, que simplemente afirman lo que es. Las lógicas clásicas funcionales de verdad se ocupan de declaraciones en indicativo, las declaraciones modales pueden ser detectadas mediante la presencia de operadores modales. Una característica formal de los operadores modales es que forman declaraciones cuyos valores de verdad no son una función de los valores de verdad de las declaraciones sobre las cuales se opera, por ejemplo, considérese las siguientes declaraciones:
Las declaraciones 1º.- y 2º.- no son modales, la declaración 2º.- es Verdadera iff 1º.- es Verdadera. La declaración 3º.- es modal, es Verdadera si 1º.- lo es, pero puede ser interpretada como Verdadera o Falsa si 1º.- es Falsa.
Los 1eros. trabajos sobre lógica modal se ocupaban principalmente de declaraciones que contuvieron los operadores «es posible que» y «es necesario que» y sus negaciones, más tarde, los lógicos consideraron declaraciones que contuvieron operadores tales como:
Todas estas declaraciones se califican como modales bajo la descripción de modalidad dada por Snyder, así, la lógica modal se relaciona con estados de cosas o mundos posibles además del existente.
Operadores Modales Monádicos y Diádicos:
Estos operan sobre declaraciones únicas, todos los ejemplos de antes son Monádicos, los operadores modales diádicos forman nuevas declaraciones a partir de pares de declaraciones. Se han hecho varios intentos para formalizar un operador modal diádico "si… entonces", en concreto, se han definido dos (02) operadores:
En Lógica Clásica, la fórmula material de implicación P Q es equivalente por definición a la negación de la conjunción P Q, es decir, P implica materialmente Q iff no se da el caso de que P sea Verdadero y Q Falso, por otro lado, la fórmula de Implicación Estricta es: "P implica estrictamente Q", es equivalente a la imposibilidad de la conjunción P Q.
La Lógica Proposicional Modal Alezeia incluye:
En este punto, describiremos una regla de inferencia y un axioma lógico que se encuentran en muchos sistemas modales básicos, más adelante, se describirán algunos axiomas lógicos adicionales que pueden añadirse a los sistemas de lógica modal para producir ampliaciones en aplicaciones concretas.
La regla descrita se llama "Regla de Gödel (1933) o Regla de Necesidad", esta regla es apropiada para la mayoría de los sistemas modales, puesto que recoge la noción de que si algo es lógicamente Verdadero, entonces, es necesariamente Verdadero.
Puesto que la mayoría de los sistemas modales tratan solamente de mundos posibles que son también lógicamente posibles la Regla de Gödel se encuentra o puede demostrarse en la mayoría de los sistemas modales, la Regla puede definirse como sigue a continuación: "de ├ P inferir P.
Esta regla significa que, si "P" es un teorema del sistema modal que se está usando, es decir, un axioma lógico del sistema modal, entonces P es también un teorema, adviértase que esto no significa que, si "P" es un axioma propio de alguna teoría modal "T", entonces P es también un teorema de "T". Además, de la regla de inferencia anterior, muchos sistemas modales incluyen el siguiente axioma lógico:
ALM: [P Q] [ P Q]
Es decir, si es necesario que cada vez que "P" sea Verdadero "Q" sea también Verdadero, se deduce que, si "P" es necesario, entonces Q también lo es. El axioma ALM se obtiene de nuestra comprensión intuitiva acerca de la noción de necesidad.
Axiomas Lógicos Adicionales para Sistemas Modales Particulares:
Los sistemas modales básicos pueden ampliarse mediante la adición de axiomas lógicos, al añadir estos axiomas, se incrementa el número de deducciones que pueden hacerse en sus teorías. Los axiomas descritos a continuación se relacionan con las diversas propiedades de la relación de accesibilidad, por consiguiente, pueden añadirse, como se requiera, a un sistema modal básico para construir un sistema que sea más apropiado a una aplicación dada.
Por ejemplo, si la aplicación tiene una relación de accesibilidad reflexiva y transitiva, pero no simétrica, entonces se puede construir un sistema modal apropiado a partir de un sistema modal básico junto con los axiomas AL1 y AL2 siguientes:
El siguiente ejemplo se refiere a mundos accesibles temporalmente, de acuerdo a nuestra definición anterior de posibilidad temporal, la relación "R" de accesibilidad es en este caso reflexiva y transitiva. Veremos más adelante que ésta no es la única caracterización de "R" para la lógica temporal, sin embargo, por simplicidad, aceptaremos que es adecuada para los propósitos actuales.
Puesto que "R" es reflexiva y transitiva, es apropiado usar los axiomas: AL1 y AL2 de antes, sin embargo, como "R" no es simétrica ni es una relación de equivalencia, no es apropiado usar: AL3 o AL4. Como ilustración, considérese una teoría modal "T" que contiene los siguientes axiomas propios:
Como ya se mencionó, puesto que la relación de accesibilidad que estamos aceptando es reflexiva y transitiva, los axiomas: AL1 y AL2 pueden usarse, añadiéndolos a la maquinaria de la lógica Proposicional, cuando se demuestran teoremas en "T".
La siguiente gramática independiente del contexto define la sintaxis de un ejemplo de un lenguaje de lógica Proposicional modal, llamaremos a este lenguaje "L3":
terminales = {p, q, r, s,…, , , [, ], }
wff :: = wff wff wff wff formula atómica
fórmula atómica ::= p q r s,…
Las fórmulas atómicas de L3 se representan usando letras tales como: p, q, r, o series de caracteres, si "P" y "Q" son wffs, entonces las siguientes abreviaturas se definen también para L3:
Como ejemplo, considérese las siguientes wffs de L3, en las cuales las series de caracteres se usan para representar fórmulas atómicas:
Los operadores modales: , , y y los juntores modales: , , , no son funcionales de verdad como son los operadores: , , , , , por ejemplo, dado el valor de verdad de "P", no se puede determinar, en general, el valor de verdad de "P", sin embargo, algunos valores de verdad se pueden determinar como se ilustra en las siguientes tablas de verdad, en las cuales "I" significa "Indeterminado".
|
P |
P |
P |
P |
P |
|
Τ |
Τ |
I |
I |
I |
|
|
I |
|
I |
I |
|
P |
Q |
P Q |
P Q |
P Q |
P Q |
|
Τ |
Τ |
Τ |
|
I |
I |
|
Τ |
|
I |
I |
|
|
|
|
Τ |
I |
I |
I |
|
|
|
|
I |
I |
I |
I |
Estas tablas nos dicen, por ejemplo, que:
Estas tablas suponen una relación de accesibilidad reflexiva.
Reglas de Equivalencia:
A fin de regularizar las fórmulas modales para su procesamiento ulterior, se pueden usar las siguientes reglas de equivalencia además de las definiciones de abreviaturas dadas antes:
Por ejemplo: P P Q, puede reemplazarse por: [P [P Q]].
En esta subsección, se describen cinco (05) sistemas diferentes de lógica modal; estos sistemas que llamaremos: S1, S2, S3, S4 y S5, fueron definidos por Lewis (1918 y 1932).
Un Método basado en Resolución para Lógica Modal:
El método de resolución para hacer deducciones en lógica Proposicional clásica se ha extendido para uso en lógica Proposicional modal por Farinas del Cerro (1982), el método es bastante complejo y no es comentado en este informe.
Lógica Modal de Predicados:
El Sistema de Axiomas Barcan (1946):
Este sistema contiene S2, excepto para el axioma P P, junto con los siguientes esquemas de axiomas:
Las reglas de Inferencia son:
De PX inferir: XPX, donde "X" es independiente en "P". El axioma AS3, al que se conoce como "fórmula Barcan", ha sido muy discutido en la literatura técnica debido a ciertas ejemplificaciones de ella. La fórmula Barcan puede leerse como: "si es posible que exista una entidad "X" tal que P (X) sea Verdadero, entonces esto implica que existe una entidad para la cual P (X) es posiblemente Verdadera".
La siguiente ejemplificación contraintuitiva se da en Marciszewski (1981), de acuerdo a la fórmula Barcan, si es posible que la 1era. presidenta de Francia sea rubia, esto implica que existe alguien que sea posiblemente la 1era. presidenta de Francia, tal conclusión existencial es un resultado no deseable, puesto que podemos percibir fácilmente un mundo en el que la posible futura presidenta de Francia no haya nacido todavía. Hay una manera de sortear este problema:
Sistema de Prior (1956) para Lógica Modal de Predicados:
Es una axiomatización del tipo Gödel de S5 junto con dos (02) reglas para cuantificadores tomadas de Lukasiewicz (1951), el sistema completo contiene:
Por tanto, se puede considerar que el sistema de Prior contiene el sistema "M" ampliado a S5 mediante la adición del axioma: P P. junto con las reglas para la cuantificación dadas antes. La fórmula Barcan es obtenible en el sistema de Prior, pero no lo es si el sistema está restringido de tal manera que sólo las fórmulas cerradas estén permitidas.
Enfoque Semántico de Kripke (1963) para la Lógica Modal de Predicados:
En este enfoque, cada mundo posible es una interpretación de una teoría en el sentido usual de la palabra "interpretación", sin embargo, hay una restricción que consiste en que todos los mundos posibles que sean accesibles desde un mundo concreto deben contener el mismo conjunto de entidades y deben concordar en sus asignaciones de entidades a constantes. Esta restricción significa que mundos posibles que sean accesibles desde un mundo concreto sólo difieren en las relaciones de las cuales las entidades forman parte. El siguiente punto discute las Lógicas Temporales, se describe una lógica epistemológica que puede dar cabida a declaraciones tales como: John conoce "P".
En el informe elaborado hasta ahora, no hemos considerado en realidad estructuras relacionales que varíen con el tiempo, se han desarrollado varios enfoques para tratar con el tiempo: algunos implican ampliaciones a lógicas clásicas, otros implican varios tipos de lógica modal, y uno (01) o dos (02) se basan en lógica intencional. En este apartado, describiremos algunos de los 1eros. dos (02) tipos.
Adaptación del Tiempo en la Lógica Clásica de Predicados de 1er. Orden:
Esta lógica puede usarse para razonar acerca del tiempo, considerando que los tiempos puntuales son como todas las otras entidades en el dominio de una estructura relacional, Lundberg (1982) ha descrito una lógica basada en este enfoque.
Los tiempos puntuales se relacionan entre sí mediante predicados de la misma manera que se relacionan otras entidades, por ejemplo, Lundberg define dos (02) predicados:
De tal manera, que et (t1, t2) significa que t2 es el sucesor inmediato de t1, las propiedades de las relaciones ET y SS que están representadas por los predicados: et y ss, se expresan en un lenguaje de 1er. orden definido apropiadamente como se ilustra en los siguientes ejemplos:
Estos ejemplos son versiones ligeramente modificadas de las dadas en Lundeberg. A fin de describir aspectos de las relaciones de tiempo variable, los predicados "n-arios" son reemplazados por predicados /n + 1)-arios, donde el argumento (n + 1)-ésimo es un tiempo puntual.
Por ejemplo, la afirmación "la edad de una entidad nunca decrece" puede expresarse como sigue: v w x y z [edad (x, y, z) edad (x, w, v) et (z, v)] menos que (w, y). Este enfoque es similar al empleo de marcadores de situación en lógica de situaciones, como se describió antes y sufre también el mismo problema de armadura ya discutido anteriormente.
Lógicas Temporales basadas en Modalidad:
Se han desarrollado muchas lógicas temporales basadas en nociones de lógica modal, por ejemplo, en una lógica temporal relativamente sencilla, "siempre" y "a veces" se definen análogamente a "necesario" y "posible" en lógica modal. Las siguientes fórmulas se incluyen generalmente como teoremas de tales lógicas:
Las modalidades "siempre" y "a veces" pueden aumentarse con otras modalidades tales como "P" para Pasado y "F" para Futuro, las lógicas resultantes se llaman a menudo lógicas de tiempos (verbales). Ejemplos de fórmulas de tales lógicas son:
Se pueden definir otras modalidades en función de: "P" y "F", por ejemplo:
La relación en "H" y "G" y «siempre» puede expresarse como sigue:
siempre q Hq q Gq
Lógica de Tiempos Proposicional Mínima (K. T.):
Lemmon (1965) ha desarrollado un sistema axiomático mínimo para una lógica de tiempos tensa Proposicional simple. El lenguaje de K. T. consta del lenguaje de lógica Proposicional, más los operadores: F, P, G y H con significados dados anteriormente. Los axiomas lógicos de K. T. incluyen los de lógica Proposicional, junto con los siguientes:
Las reglas de interferencia son las de lógica Proposicional clásica más:
La lógica de K. T. considera que el tiempo consta de una secuencia lineal de estados:
![]()
Por tanto, a K. T. se le llama "Lógica Temporal Lineal". Cavali y Farinas del Cerro (1984) han desarrollado un método de decisión automatizado (procedimiento de Prueba) para lógica Proposicional temporal lineal. Su método se basa en una ampliación del método de resolución usado en lógica clásica.
Lógicas Temporales de Ramificaciones:
Más que considerar el tiempo como una secuencia lineal de estados, un enfoque alternativo es tratar el pasado como una secuencia lineal de estados, hasta e incluyendo el presente, y tratar el futuro como una estructura ramificada.
Este enfoque da cabida a la noción de varios "futuros posibles".

En este punto se han descrito brevemente algunas nociones bastante difíciles:
Debido a las limitaciones de espacio, las descripciones han sido muy apresuradas, sin embargo, nos parece que estas nociones son extremadamente importantes y que al menos es útil introducirlas a los lectores, para una discusión más detallada de estos conceptos, remitimos a Dowty y otros (1981) y Mc. Cawley (1981).
I. L. (Intensional Logic / Lógica Intensional) de Montague:
Muchos de los conceptos descritos en este punto se han usado en una lógica, denominada I. L, que fue desarrollada por Montague (véase, por ejemplo, Montague 1973 y 1974). I. L. emplea jerarquía de tipos, cuantificación de orden superior (variables y cuantificadores para cada tipo), abstracción lambda para todos los tipos, operadores modales, tiempos verbales y mecanismos sintácticos para tratar con intenciones y extensiones y emplea una teoría de modelos basada en la semántica coordinada.
La perspectiva del universo que sirve de base a I. L. considera que la realidad consta de:
Un espacio funcional se construye inductivamente a partir de objetos de estos tipos básicos, el conjunto de tipos (de objetos y funciones) se define como se observa a continuación:
Planificación y determinación de las funciones lógicas que se incorporarán en un sistema de ordenador, previas a su diseño técnico.
Diagrama que, mediante símbolos gráficos, representa elementos lógicos y sus interconexiones, excluyendo los detalles técnicos o de construcción.
En un ordenador o sistema de proceso de datos, elemento modular más pequeño susceptible de representarse por medio de operadores lógicos en un sistema apropiado de lógica simbólica. La puerta "Y" lógico (And) y la puerta "O" lógico (Or) son elementos lógicos característicos: pueden representarse como operadores en una lógica simbólica adecuada.
Fichero de datos que se ha descrito al S. O. Básico mediante el empleo de una macroinstrucción del D. T. F. (Define The File / Definición de Ficheros). Obsérvese que un fichero de datos se describe al S. O. valiéndose de un método de definición diferente. Las publicaciones que tratan del S. O. hacen referencia a un fichero de datos descrito de esta otra forma denominándolo conjunto de datos (data set).
Método por el que se combinan dos o más sentencias, a fin de que pueda determinarse si el valor resultante es Verdadero o Falso.
Símbolo matemático que representa un proceso que ha de efectuarse con un operando asociado.
Registro que se identifica o define en razón de su contenido, función y uso, más que desde el punto de vista de sus atributos físicos, es decir, aquel registro que se define en función de la información que contiene. Estos registros difieren, en tamaño, de los registros físicos en que están contenidos.
Conjunto de caracteres próximos, que el programa de Clasificación / Fusión (Sort / Merge) procesa considerándolos como una (01) sola unidad.
Símbolo que se usa para representar un operador o elemento de conexión lógico. Este signo indica la operación concreta que ha de efectuarse en las variables asociadas.
Introducción:
Nos ocuparemos en esta parte del empleo de lenguajes de programación para:
La distinción no es fundamental puesto que se puede considerar que los programas en sí mismos constituyen conocimiento, sin embargo, es útil distinguir entre escribir declaraciones que digan a un ordenador algo y escribir órdenes imperativas que digan a un ordenador que haga algo. Se supone que el lector está familiarizado con al menos un lenguaje de programación de alto nivel y que tiene nociones de cómo se pueden traducir lenguajes de programación a códigos ejecutables, sin embargo, a título recordatorio, comenzamos dando algunas notas sobre gramáticas y traductores, y mostramos después cómo se pueden definir las semánticas de lenguajes de programación.
A esto sigue una exposición de varios términos que se usan comúnmente para describir lenguajes de programación, por ejemplo: procesal, declarativo, funcional, consulta de bases de datos, programación lógica, etc. La mayoría de estos términos están definidos con mucha imprecisión en el lenguaje técnico, sin embargo, sirven para dar el "perfume" de un lenguaje. Concluimos este punto exponiendo tres (03) lenguajes particularmente importantes en el trabajo de sistemas de bases de conocimiento:
La habilidad para diseñar lenguajes y escribir traductores es muy útil para todo aquel que desee embarcarse en una carrera relacionada con sistemas de bases de conocimiento. Las notas que constituyen este punto son por supuesto comprensibles y deberían ser consideradas como instrucción a los temas de los que se ocupan. Se incluyen referencias del material aconsejable para una lectura más detallada. Empezamos exponiendo la sintaxis de los lenguajes de programación.
Sintaxis:
Un lenguaje está definido por su sintaxis y su semántica. La sintaxis consta de reglas para determinar qué secuencias de símbolos son sentencias "bien definidas" del lenguaje y cuáles no. La semántica de un lenguaje consta de reglas para atribuir significado a sentencias bien formadas, por ejemplo, se podría tener un lenguaje L3 que estuviera definido por la sintaxis y semántica siguientes:
Un problema con tales definiciones informales de sintaxis y semántica es que son muy erradas, por lo tanto, se las puede interpretar incorrectamente. Además, puesto que las reglas de sintaxis no están especificadas en un formato estándar es difícil diseñar procesos de propósito general mediante los cuales las reglas de sintaxis puedan ser transcritas a programas para comprobar automáticamente una sentencia a fin de ver si está bien formada.
Se introducen en este apartado algunas técnicas para la especificación formal de reglas de sintaxis de una clase particular de lenguajes, llamados lenguajes independientes del contexto, se muestra también la forma de poder usar estas especificaciones formales para reconocer manualmente sentencias que estén bien formadas. Por último, se muestra la manera de poder transcribir las especificaciones formales de las reglas de sintaxis a programas que realicen automáticamente la tarea del reconocimiento.
Una gramática es un conjunto de reglas que determinan qué secuencias de símbolos son sentencias bien formadas del lenguaje definido por la gramática.
Proposición de Reconexión:
Para pasar un registro de tipo <tipo de registro> de una ocurrencia de un conjunto a otra ocurrencia del conjunto de tipo <tipo de conjunto> es preciso localizar el registro apropiado y al dueño de la ocurrencia de conjunto a la que se transferirá ese registro. Una vez hecho esto, puede transferir el registro ejecutando el comando: reconnect <tipo de registro> to <tipo de conjunto>.
Para dar un ejemplo se escribirá un programa en DBTG para pasar todas las cuentas de Lowman, que actualmente están en la sucursal Hillside, a la sucursal Valleyview:
cuentahabiente.nombre: = "Lowman";
find any cuentahabiente Using nombre;
find first cuenta within CthabCta;
while DB-status = 0 do
begin
find owner within SucCta;
get sucursal;
if sucursal.nombre= "Hillside" then
begin
sucursal.nombre: = "Valleyview";
find any sucursal using nombre;
reconnect cuenta to SucCta;
end
find next cuenta within CthabCta;
end
Cuando se define un conjunto nuevo es necesario especificar la forma en que se van a insertar los registros miembros, además, deben aclararse las condiciones bajo las cuales los registros deben retenerse en la ocurrencia de conjunto en la que se insertaron inicialmente.
Inserción en Conjuntos:
Un registro recién creado, del tipo <tipo de registro>, de un conjunto de tipo <tipo conjunto>, puede agregarse a una ocurrencia del conjunto, ya sea en forma explícita (manualmente) o implícita (automáticamente). Esta distinción se establece en el momento de definir el conjunto mediante: insertion is <modo de inserción>; donde <modo de inserción> puede ser:
En ambos casos, inmediatamente antes de la inserción, el apuntador de actualidad de <tipo de conjunto> debe estar apuntando a la ocurrencia de conjunto en la cual se hará la inserción. Para ilustrar este procedimiento, considérese la creación de la cuenta 535 que pertenece a Lowman y que está en la sucursal Valleyview. Supóngase que la inserción es manual para el tipo de conjunto CthabCta y automática para el tipo de conjunto SucCta, el programa en DBTG apropiado será:
sucursal.nombre: = "Valleyview";
find any sucursal Using nombre;
cuenta.número: = 535;
cuenta.saldo: = 0;
store cuenta;
cuentahabiente.nombre: = "Lowman";
find any cuentahabiente using nombre;
connect cuenta to CthabCta;
- L -
Principios básicos y aplicaciones de las tablas de verdades, de las relaciones de proposiciones, de las interrelaciones de los elementos de los circuitos de conexión-desconexión, etc., en el cálculo matemático realizado mediante un ordenador (ver: Formal Logic y Symbolic Logic).
Plan sistemático que define las interacciones de las señales en el diseño de un sistema automático de datos.
- S -
Autora:
Emily
emilychacondereyes[arroba]hotmail.com
Venezuela
Página anterior | ![]() Volver al principio del trabajo | Página siguiente ![]() |
Trabajos relacionados
Ver mas trabajos de Programacion |
|
Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.