Sunteți pe pagina 1din 11

INSTITUTO DE ESTUDIOS SUPERIORES DE

CHIAPAS
UNIVERSIDAD SALAZAR
PLANTEL PICHUCALCO

BASE DE DATOS

TRABAJO: “UNIDAD 3 LA LOGICA COMO UN


MODELO DE DATOS”

ALUMNOS:
JAVIER CORTAZAR ALVAREZ
JESUS OMAR OCAÑA FLORES

CATEDRATICO:
LORENZO BASTARD MARTINEZ

FECHA: 30 de septiembre del 2018


3.1El SIGNIFICADO DE LAS REGLAS LOGICAS
En lógica, una regla de inferencia, o regla de transformación es una forma
lógica que consiste en una función que toma premisas, analiza su sintaxis, y
devuelve una conclusión (o conclusiones). Por ejemplo, la regla de inferencia
llamada Modus ponendo ponens toma dos premisas, uno en la forma "Si p
entonces q" y otra en la forma "p", y vuelve la conclusión "q". La regla es válida
con respecto a la semántica de la lógica clásica (así como la semántica de
muchas otras lógicas no clásicas), en el sentido de que si las premisas son
verdaderas (bajo una interpretación), entonces también lo será la conclusión.
Por lo general, una regla de inferencia conserva la verdad, una propiedad
semántica. En muchos valores lógicos, esta conserva una designación general.
Pero la acción de la regla de inferencia es puramente sintáctica, y no es necesario
preservar ninguna propiedad semántica: cualquier función de conjuntos de
fórmulas para fórmulas cuenta como una regla de inferencia. Por lo general, solo
son importantes las reglas que sean recursivas; es decir, reglas de modo que no
haya un procedimiento efectivo para determinar si cualquier fórmula dada es la
conclusión de un determinado conjunto de fórmulas de acuerdo a la regla. Un
ejemplo de una regla que no es efectiva en este sentido es la infinitista regla ω.1
Como se mencionó, la aplicación de una regla de inferencia es un procedimiento
puramente sintáctico. Sin embargo, debe también ser válido, o mejor dicho,
preservar la validez. Para que el requisito de preservación de la validez tenga
sentido, es necesaria una cierta forma semántica para las aserciones de las reglas
de inferencia y las reglas de inferencia en sí mismas.
Las reglas significativas de inferencia en la lógica proposicional incluyen modus
ponens, modus tollens y contraposición. La lógica de predicados de primer orden
usa reglas de inferencia para liderar con cuantificadores lógicos.

3.2 EL MODELO LOGICO DE DATOS


Un modelo de datos es un lenguaje orientado a hablar de una base de datos.
Típicamente un modelo de datos permite describir:

 Las estructuras de datos de la base: El tipo de los datos que hay en la base y
la forma en que se relacionan.
 Las restricciones de integridad: Un conjunto de condiciones que deben cumplir
los datos para reflejar la realidad deseada.
 Operaciones de manipulación de los datos: típicamente, operaciones de
agregado, borrado, modificación y recuperación de los datos de la base.
Otro enfoque es pensar que un modelo de datos permite describir los elementos
de la realidad que intervienen en un problema dado y la forma en que se
relacionan esos elementos entre sí.
No hay que perder de vista que una Base de Datos siempre está orientada a
resolver un problema determinado, por lo que los dos enfoques propuestos son
necesarios en cualquier desarrollo de software.
SUBLENGUAJE DE UN MODELO DE DATOS
Un modelo de datos es un lenguaje que, típicamente, tiene dos sublenguajes:

 Un Lenguaje de Definición de Datos o DDL (Data Definition Language),


orientado a describir de una forma abstracta las estructuras de datos y las
restricciones de integridad.
 Un Lenguaje de Manipulación de Datos o DML (Data Manipulation Language),
orientado a describir las operaciones de manipulación de los datos.
A la parte del DML orientada a la recuperación de datos, usualmente se le
llama Lenguaje de Consulta o QL (Query Language).
UNA CLASIFICACION DE MODELOS DE DATOS
al nivel de abstracción que presentan:
Modelos de Datos Conceptuales
Son los orientados a la descripción de estructuras de datos y restricciones
de integridad. Se usan fundamentalmente durante la etapa de Análisis de
un problema dado y están orientados a representar los elementos que
intervienen en ese problema y sus relaciones. El ejemplo más típico es
el Modelo Entidad-Relación.
Modelos de Datos Lógicos
Son orientados a las operaciones más que a la descripción de una realidad.
Usualmente están implementados en algún Manejador de Base de Datos.
El ejemplo más típico es el Modelo Relacional, que cuenta con la
particularidad de contar también con buenas características conceptuales
(Normalización de bases de datos).
Modelos de Datos Físicos
Son estructuras de datos a bajo nivel implementadas dentro del
propio manejador. Ejemplos típicos de estas estructuras son los Árboles B+,
las estructuras de Hash, etc.

3.3 LA EVALUACION DE REGLAS NO RECURSIVAS


Las expresiones aritméticas pueden ser evaluadas de por lo menos de dos
formas: haciendo uso de un stack o haciendo uso de invocaciones recursivas. En
esta sección se presentara al forma recursiva para evaluar expresiones aritméticas
simples. Los operadores a considerar son la suma, la resta y la multiplicación.
Además se consideran los paréntesis como mecanismos de agrupación. Se deben
respetar obviamente la asociativiada de estos operandos y su precedencia.
La idea es poder evaluar expresiones como
(4+3)*5+8-5*2=
La técnica de evaluación recursiva parte de la observación que las expresiones
aritméticas bien definidas deben satisfacer ciertas reglas gramaticales. Estas
reglas se pueden definir como:
1._ una evaluación es una expresión seguida de un signo igual (=, aunque pudo
usarse otro símbolo).
2 una expresión está compuesta por una expresión seguida del operador + 0 –
seguida de un término. Una expresión también puede ser solo un término (cuando
no hay sumas o restas).
3..un término se puede descomponer en un término seguido de un operador *
seguido de un factor o un término puede ser solo un factor.
4.-finalmente un factor puede ser una expresión entre paréntesis o un numero.

3.4 cálculo del significado de reglas recursivas.


Al igual que los robots de Asimov, todos los algoritmos recursivos deben obedecer
tres leyes importantes:

Un algoritmo recursivo debe tener un caso base.


Un algoritmo recursivo debe cambiar su estado y moverse hacia el caso base.
Un algoritmo recursivo debe llamarse a sí mismo, recursivamente.
Echemos un vistazo a cada una de estas leyes con más detalle y veamos cómo se
usó en el algoritmo sumalista. En primer lugar, un caso base es la condición que
permite que el algoritmo detenga la recursividad. Un caso base es típicamente un
problema que es lo suficientemente pequeño como para resolverlo directamente.
En el algoritmo sumalista el caso base es una lista de longitud 1.

Para obedecer la segunda ley, debemos organizar un cambio de estado que


mueva el algoritmo hacia el caso base. Un cambio de estado significa que se
modifican algunos datos que el algoritmo está usando. Por lo general, los datos
que representan nuestro problema se hacen más pequeños de alguna manera. En
el algoritmo sumalista nuestra estructura de datos primaria es una lista, así que
debemos centrar nuestros esfuerzos de cambio de estado en la lista. Dado que el
caso base es una lista de longitud 1, una progresión natural hacia el caso base es
acortar la lista. Esto es exactamente lo que ocurre en la línea 5 del ActiveCode 2
cuando llamamos a sumalista con una lista más corta.
La última ley es que el algoritmo debe llamarse a sí mismo. Esta es la definición
misma de la recursividad. La recursividad es un concepto confuso para muchos
programadores principiantes. Como programador principiante, usted ha aprendido
que las funciones son buenas porque usted puede tomar un problema grande y
descomponerlo en problemas más pequeños. Los problemas más pequeños
pueden resolverse escribiendo una función para resolver cada problema. Cuando
hablamos de recursividad, puede parecer que estamos hablando en círculos.
Tenemos un problema que resolver con una función, ¡pero esa función resuelve el
problema llamándose a sí misma! Pero la lógica no es circular en absoluto; la
lógica de la recursividad es una expresión elegante de resolver un problema al
descomponerlo en problemas más pequeños y más fáciles.

En lo restante de este capítulo veremos más ejemplos de recursividad. En cada


caso nos centraremos en diseñar una solución a un problema usando las tres
leyes de la recursividad.

3.5 Evaluación incremental de puntos fijos mínimos.


Las situaciones de inversión que se pueden presentar en la vida cotidiana son
muy diversas, existen varios métodos para tomar decisiones cuando existe una
sola alternativa de inversión, que son el VPN y la TÍR. En general, este tipo de
inversiones se efectúan en instalaciones industriales productoras de bienes o
servicios. También existen los métodos de toma de decisiones económicas
cuando se consideran varias alternativas a la vez, y el problema bajo análisis sólo
presenta datos de costos, como la técnica del CAIÍE, o cuando la situación de
decisión presenta beneficios (ingresos o ahorros) y costos entonces es posible
utilizar el BAITE.

Estos métodos, cuando se conocen y se saben aplicar de acuerdo a el escenario


presentado, son de mucha utilidad, ya que al aplicarlos, se puede estar seguro de
una decisión, ya sea para ahorrar, o para hacer una buena inversión.

Existen otros tipos de problemas, para los cuales los métodos presentados ahora
no parecen ser los más adecuados para tomar la mejor decisión de inversión, pero
por ahora solo se estudiaran los antes mencionados.Las situaciones de inversión
que se pueden presentar en la vida cotidiana son muy diversas. Ya se presentaron
los métodos para tomar decisiones cuando existe una sola alternativa de
inversión, que son el VPN y la TÍR. En general, este tipo de inversiones se
efectúan en instalaciones industriales productoras de bienes o servicios. También
se han presentado métodos de toma de decisiones económicas cuando se
consideran varias alternativas a la vez, y el problema bajo análisis sólo presenta
datos de costos, como la técnica del CAIÍE, o cuando la situación de decisión
presenta beneficios (ingresos o ahorros) y costos entonces es posible utilizar el
BAITE. Estos métodos son útiles si las inversiones se efectúan en el interior de las
empresas y los objetivos del análisis son tomar decisiones y presupuestar un
beneficio o un costo anual. Calcular un CAIÍE o un BALÍE para una sola
alternativa, sin ningún otro objetivo, no tiene sentido. Existen otros tipos de
problemas, para los cuales los métodos presentados ahora no parecen ser los
más adecuados para tomar la mejor decisión de inversión.

SECUENCIA DE PASOS A SEGUIR PARA REALIZAR EL ANÁLISIS


INCREMENTAL:

1. Ordenar las alternativas de menor a mayor inversión.

2. Aplíquese el criterio de evaluación por VPN a la alternativa de menor


inversión.3. Si el criterio de evaluación es favorable (VPN=0), ir al paso 4. si el
criterio de selección es desfavorable (VPN<0), continuar aplicando el mismo
criterio a las siguientes alternativas en orden creciente de inversión hasta
encontrar una con VPN=0. Si ninguna cumple con el criterio de selección de
VPN, rechazar todas las alternativas. Al encontrar una, ir al paso 4.4. Al encontrar
una alternativa con criterio de VPN favorable, tomarla como punto de comparación
para analizar los incrementos de inversión y beneficios con la alternativa que le
sigue en la inversión5. Acéptese realizar el incremento de inversión ?VPN > 0.6.
Tómese como base el siguiente análisis de incremento de inversión la alternativa
con mayor inversión cuyo ? VPN> 0.7. Si el ?VPN < 0 rechácese el incremento de
inversión. Repita paso 5 y 6 hasta agotar el análisis de todas las alternativas.

8. Acéptese invertir en la alternativa de mayor inversión que haya prestado un


VPN=0

¿CÓMO HAGO UN ANÁLISIS INCREMENTAL?

Se realiza un análisis incremental para determinar que las diferencias financieras


entre empresas de opciones pueden hacer. Los ingresos, gastos y ahorros son
calculados y tomados en cuenta como un todo para cada opción, y se comparan
las opciones. Las cantidades deben ser pertinentes, o directamente vinculado a
una de las decisiones, a fin de ser incluidos en un análisis incremental. Analizar
las diferentes opciones en términos de ingresos, costos o ahorros solos a menudo
se obtiene un cuadro incompleto en comparación con mirar los efectos de las
opciones en las tres áreas.

Cuando los gerentes de negocios realizan un análisis incremental, normalmente


separa los costos irrelevantes y pertinentes. Los costos fijos a menudo se
consideran irrelevante ya que la empresa incurrirá en les independientemente de
que está seleccionada la opción. Por ejemplo, la elección puede utilizar una
instalación existente de producción para producir el producto a versus producto B.
El alquiler de las instalaciones de producción es irrelevante, mientras que los
ingresos proyectados para cada producto son pertinentes.

Cambios en la cantidad de ingresos que generarán diferentes alternativas son lo


que debe considerarse en un análisis incremental. Si el producto a resultados en
30.000 dólares de los ingresos brutos frente a 40.000 dólares de los ingresos
brutos de fabricación cuando se adquiere el producto, el cambio incremental sería
10.000 USD. Adquirir el producto versus en casa lo fabricación proporciona la
compañía con ingresos brutos adicionales de 10.000 USD. Un análisis
incremental, sin embargo, no suele mira en una variable, pero más bien varios que
afectará directamente a la línea de fondo.

Por ejemplo, si compra el producto a resultados en un aumento en los costos


variables que exceden los costos de producirlo en casa, esto puede afectar la
decisión del administrador. Asumiendo los costes variables para la empresa para
que el producto en sí son 10.000 y los costes de compra son 30.000 dólares, el
ingreso neto incremental es ahora en favor de la producción en casa como el
mayor de los ingresos brutos son mayores que los costes variables mayor de
adquirir el producto. Restando los costos para la producción de fabricación de los
ingresos brutos para cada uno, muestra que la compañía podría cosechar 10.000
más en ganancias si sigue fabricar su propio producto.

Además de cambios en los costos que pueden ocurrir como resultado de una
decisión, un pesebre también debe considerar cualquier ahorro de costos. Esto
incluye cualquier costo que elimina una decisión. Por ejemplo, si la decisión del
administrador es elegir entre proveedores de materias primas, algunos de estos
costos pueden incluir descuentos por volumen. Un proveedor puede ofrecer un
cierto porcentaje de descuento para un nivel de volumen en particular, mientras
que el otro no puede.

Suponiendo que la empresa pedirá constantemente al proveedor en el volumen


que califica para el descuento, esta cantidad de ahorros se estaría incluida en el
análisis de los costos incrementales. Además de ahorros en los costos, los costos
de oportunidad se deben indicará en un análisis incremental. Un costo de
oportunidad es la cantidad que se pierde desde la elección de una opción sobre el
otro. Ejemplos de costos de oportunidad los ingresos de aceptar una nueva línea
de negocio y los ingresos de la producción de materias primas.

3.6 Negaciones en el cuerpo de las reglas


Tomando como referencia a los autores [5,7], Datalog es un lenguaje lógico
desarrollado para el modelo relacional. Datalog sin recursión tiene el mismo poder
expresivo que el álgebra relacional, sin embargo, a partir de 1999 SQL ha usado
una solución para la recursión en Datalog para el desarrollo de consultas
recursivas. Es similar a Prolog en su sintaxis, pero su semántica operacional es
diferente. Una regla o cláusula en Datalog
tiene la forma:

𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐 ← 𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐
Donde la cabeza es un átomo y cuerpo es una lista de átomos que puede ser
vacía; en este caso se habla de un hecho. Los hechos se definen:

(𝑡𝑡1, … . ,𝑡𝑡𝑛𝑛)

Donde 𝑃𝑃 es un símbolo de predicado y 𝑡𝑡𝑖𝑖 son variables constantes. No se


admiten

símbolos de función en 𝑡𝑡𝑖𝑖, a diferencia de Prolog.

2.1 Reglas lógicas


Una regla se escribe: 𝑃𝑃 ← 𝑄𝑄1, … , 𝑄𝑄𝑛𝑛

Dónde: “Si 𝑄𝑄1,2, … 𝑦𝑦 𝑄𝑄𝑛𝑛 son ciertos, entonces P es cierto”. Si 𝑛𝑛 = 0 “P es


cierto”, y se

escribe: 𝑃𝑃.

Para definir el significado de las reglas, existen diferentes alternativas que se


mencionan a continuación.
Interpretación de la teoría de pruebas. Es el conjunto de todos los hechos que se
pueden probar a partir de las reglas del programa usándolas de todas las formas
posibles. Interpretación de la teoría de modelos. La interpretación de una
colección de predicados asigna cierto o falso a cada posible instancia de los
predicados, donde los argumentos se escogen de un conjunto infinito de
constantes. La interpretación se representa habitualmente por el conjunto de
instancias verdaderas. Definición computacional. La última forma de definir el
significado de las reglas lógicas es proporcionar un algoritmo para ejecutarlas
para determinar si un hecho es cierto o falso. Prolog define su semántica de esta
forma, solo que tiene un inconveniente, hay hechos que no se pueden probar de
esta forma (ramas infinitas). Datalog es una versión de Prolog, que fue adecuada
para dar respuesta a las bases de datos, pero se diferencia en:
• Datalog no admite símbolos de función en los argumentos.
• El significado de los programas Datalog sigue el punto de vista de la teoría de
modelos, en cambio, Prolog se basa en un significado computacional que se
desvía de los significados de la teoría de modelos y la teoría de pruebas.
2.2 El modelo de datos de Datalog es similar al relacional Una relación se
representa por un predicado.Sin embargo, sus argumentos siguen una notación
posicional no explícita como el modelo relacional.
Ejemplo 1: Una instancia r de la relación r(A,B) en el modelo relacional definida
por r, sería de la siguiente manera: Sin embargo, representada en Datalog por los
hechos: r(1,2) y r(3,4).
En Datalog, el primer argumento de R corresponde con el atributo A y el segundo
a B. El significado de la relación en ambos modelos de datos es el mismo, el
conjunto de tuplas {(1,2),(3,4)}. Es decir, hay una relación de tipo R entre 1 y 2 y
entre 3 y 4.
Predicados intencionales y extensionales
Esta diferencia entre Datalog y las bases de datos relacionales. Un predicado cuya
relación se almacena explícitamente en la base de datos, se denomina extensión
al. Un predicado que se define en términos de reglas se denomina intencional. En
el modelo relacional, todas las relaciones se definen extensionalmente. Las vistas
permiten una forma limitada de definición intencional, más limitada que en
Datalog.

Preguntas
1-¿Que debe incluir un algoritmo recursivo?
Un algoritmo recursivo debe tener un caso base.
Un algoritmo recursivo debe cambiar su estado y moverse hacia el caso base.
Un algoritmo recursivo debe llamarse a sí mismo, recursivamente.
2-¿Que es lo más importante de un alasis incremental?
Ordenar de menor a mayor y Acéptese invertir en la alternativa de mayor inversión
que haya prestado un VPN=0
3-¿Que es el Datalog?
Datalog es un lenguaje lógico desarrollado para el modelo relacional. Datalog sin
recursión tiene el mismo poder expresivo que el álgebra relacional, sin embargo,
a partir de 1999 SQL ha usado una solución para la recursión en Datalog para el
desarrollo de consultas recursiva
4.-¿ cuántos son y cuáles son los sublenguajets de un modelo de datos?
Son 2 sub lenguajes

 Un Lenguaje de Definición de Datos o DDL (Data Definition Language),


orientado a describir de una forma abstracta las estructuras de datos y las
restricciones de integridad.
 Un Lenguaje de Manipulación de Datos o DML (Data Manipulation Language),
orientado a describir las operaciones de manipulación de los datos.

5.- ¿ cómo se clasifica el modelo de datos?


Modelos de Datos Conceptuales
Son los orientados a la descripción de estructuras de datos y restricciones
de integridad. Se usan fundamentalmente durante la etapa de Análisis de
un problema dado y están orientados a representar los elementos que
intervienen en ese problema y sus relaciones. El ejemplo más típico es
el Modelo Entidad-Relación.
Modelos de Datos Lógicos
Son orientados a las operaciones más que a la descripción de una realidad.
Usualmente están implementados en algún Manejador de Base de Datos.
El ejemplo más típico es el Modelo Relacional, que cuenta con la
particularidad de contar también con buenas características conceptuales
(Normalización de bases de datos).
Modelos de Datos Físicos
Son estructuras de datos a bajo nivel implementadas dentro del
propio manejador. Ejemplos típicos de estas estructuras son los Árboles B+,
las estructuras de Hash, etc.

S-ar putea să vă placă și