A continuación veremos mi sistema de transiciones que consiste en un elevador y una puerta, basandome en la entrada anterior en donde modele el mismo sistema hice el sistema de transiciones en donde también se corrigieron unos errores cometidos en el modelo de la red petri en donde nunca regresaba a un estado inicial.
Y este es el código que hice en promela basandome en la explicación de las diapositivas que dejaré debajo.
El sistema que modele fue el de un elevador, en donde lo separé en dos componentes: Puerta y Elevador, en donde Puerta tiene como estados Abierto y Cerrado en el cual como el nombre lo dice en el estado Abierto abre la puerta del elevador y Cerrado cierra la puerta de la misma, como transiciones tenemos una comparación de unas variables boleanos donde verifica si el elevador le manda la señal de ascender o descender, en donde sí recibe un valor verdadero este mantiene cerrada la puerta. En Elevador tenemos 4 estados Inicio, Subir, Bajar y Detener, donde Inicio es cuando el elevador esta por usarse y nos envía la variable Piso según el piso elegido a una transición Piso > Actual ó Piso < Actual, el cual la primera irá hacía Subir y la segunda hacía Bajar todo esto hasta que Piso sea igual al Actual para entrar a el estado Detener.
En esta entrada hablaremos sobre teoría de grafos aplicada en lógica de primer orden, para ello nos enfocaremos en redes wireless para reducir las interferencias en las redes wireless.
El problema de reducir la interferencia en redes resulta ser muy difícil, y por esta razón, se han investigado diseños de topologías talescomo, multi-hop, red triangular, la unidad gráficos de disco, hexagonal, entre otros.
Los aspectos clave del problema de interferencia en las redes inalámbricas podría ser una solución artificial en un entorno distribuido o centralizado, hace unos pocos meses salió a la luz una investigación que realizaron unos científicos de la Universidad de Catalunya sobre el canto que realizaban unas ranas macho donde ellos los realizan poder atraer a las hembras así reconocen el origen de la llamada y localizan al pretendiente, el problema surge cuando dos machos están demasiado cerca y cantan a la vez.
Las hembras quedan confundidas y no pueden determinar de donde proceden las llamadas, por lo que los machos han tenido que aprender a desincronizar sus cantos. El objetivo de esta investigación es realizar un sistema inteligente que realize el comportamiento de las ranas para que esto ayude a hacer operaciones distribuidas.
Una de las cosas que más se realizan son simulaciones donde se pueden trazar los metros cuadrados donde se piensa implementar el sistema y dejar que el sistema haya lo suyo donde tome como parámetros las propiedades de las antentas y la cantidad de ellas.
En la entrada de hoy se verá lógica predicativa en la que se resolverá un problema.
A continuación veremos el siguiente predicato:
No country, that has been explored, is infected by dragons;
Unexploredcountries are fascinating.
Donde llamaremos c como country, E como explored, I como infected by dragons y F como fascinating. Por lo tanto obtenemos la siguiente lógica predicativa:
Libro de referencia de la cual obtuve el problema:
En esta entrada veremos el diagrama binario de decisión en donde se puede observar la proposición que use en la imágen de abajo.
Como podemos observar se realizaron operaciones repetidas, y realizamos la siguiente reducción.
Y ahora veamoslo de una manera más limpia, podemos observar que sea reducido gran parte del árbol. Sin embargo aún tenemos un nodo repetido la cual reduciremos.
Ahora veremos nuestro diagrama binario de decisión ya reducido.
Lógica booleana es una forma de algebra, en la que todos los valores se reducen a verdadero ó falso. Nos sirve para crear reglas o expresiones lógicas con las que se analizan, seleccionan y procesan datos de algún sistema diseñado.
En las base de datos es de gran ayuda la lógica booleana ya que nos permite hacer una relación lógica en terminos de búsqueda. En los buscadores web se realiza también una relación lógica pero típicamente se modifica la forma tradicional en la que se realiza. Por el momento entendemos que la lógica booleana es todo valor que se reducen a verdadero o falso, pero para complementar el tema veremos tres tipos de operadores lógicos en los que nos encontramos:
OR
AND
NOT
Los siguientes términos se explicarán como si estuvieran del lado del buscador para entender más la lógica de lo que hace un buscador web.
Operador lógico OR
Un usuario quiere realizar una búsqueda donde quiere averiguar sí hay páginas web con contenido relacionado con escuelas primaria o secundario.
En este tipo de búsqueda se buscan los términos de primaria o secundaria en toda página web, tomando como resultado único o en un termino la combinación de los
dos resultados.
Operador lógico AND
Un usuario quiere realizar una búsqueda en donde quiere averiguar si hay páginas web con contenido relacionado con balaceras y narcotráfico.
En este tipo de búsqueda se realiza una búsqueda en la que se encuentren datos de los dos términos en alguna página web.
Operador lógico NOT
Un usuario quiere realizar una búsqueda en donde quiere averiguar si hay páginas web con contenido relacionado con mujeres, no hombres.
En este tipo de búsqueda se busca que solamente se encuentre el primero término en alguna página web, tomando en cuenta que si existe algo relacionado con hombres se evitará.
La manera en la que un buscador web realiza una búsqueda con lógica booleana puedes estar manifestada en 3 distintas maneras como ls siguientes:
1. Lógica booleana completa con el uso de operadores lógicos.
2. Implica lógica booleana con una búsqueda con palabras clave.
3. Lógica booleana realizando una búsqueda por terminología.
Lógica booleana completa con el uso de operadores lógicos.
Se realiza una búsqueda completamente booleana en donde implica el uso de operadores lógicos, aunque muchos búscadores en estos días no realizan este tipo de búsquedas ya que no son del todo eficientes al realizar las búsquedas porque obtenemos a veces datos no requeridos.
Implica lógica booleana con una búsqueda con palabras clave.
Busqueda por medio de palabras clave nos referimos con el tipo de búsqueda en la que tecleamos las palabras a buscar en una caja(input), y aqui es donde no usamos operadores booleanos.
Implica lógica booleana nos referimos con la busqueda en el cual usamos operadores lógicos, en donde la auscencia de simbolos son significantes debido a que el espacio entre las palabras clave puede ser un OR o un AND. Aunque comunmente los buscadores web usan como operador lógico el operador lógico AND.
Lógica booleana realizando una búsqueda por terminología.
Búsqueda en la que se ofrece una búsqueda avanzada que nos permite escoger entre los distintos operadores lógicos que existen.
Ahora veremos Google, este gran buscador hace una búsqueda en la que implica lógica booleana con palabras clave.
Google hace búsquedas por ORtomando los espacios o OR como si fuera separador de un elemento en el que si buscaríamos por "hola mundo" buscaría por toda página que contenga al menos una de las dos palabras. Cuando hace busquedas por AND cuando agregamos un (+ o AND) como separador de un elemento de otro, en el que si buscaría "hacer + comida" este buscaría por alguna página que contenga las dos palabras. Cuando realiza búsquedas por NOT cuando agregamos un (- o NOT) como separador de un elemento de otro, en el que si buscaría "gatos -razas" este buscaría por alguna página que contenga la palabra gatos pero no tenga la palabra razas.
Ahora veremos un video de un ejemplo usando lógica booleana en el buscador.
La entrada de hoy trata de inventar una proposición lógica que sea tautología, osea que evalue verdad sin importar el valor de sus variables. Ahora pondré mi proposición.
Esta es su tabla de verdad, en la que siempre evalúa verdad.
El objetivo principal de la verificación y validación de software es mejorar la calidad de los productos de software, en el que se busca por medio de la verificación encontrar los productos que funcionen de manera correcta y en la validación se busca que los productos esten correctos acorde a los requerimientos. Se trata de encontrar los fallos, y no de tratar de colaborar que está bien sino de encontrar los errores.
Existen varias técnicas de V&V estas son algunas:
-Técnicas formales
-Ejecución simbólica
-Revisiones formales
-Técnicas de prueba
Es muy importante tomar en cuenta la V&V porque no siempre se encuentran los errores con simple intuición o algunas pruebas muy simples sin técnica alguna. Han habido varios casos en los que se han tomado mucho como ejemplo para poner en mucho en práctica la V&V, ahora les contaré un caso en el que no sé hizo bien un V&V.
En el año de 1996 en Yorktown se uso como prueba un submarino llamado Navy's Smart Ship, el cual estaba equipado con una red de 27 dobles 200 MHz Pentium Pro-base en equipos corriendo Windows NT 4.0 (lol) con el que se comunicaban por medio de un cable de fibra óptica con un servidor. Esta red era la responsable de correr el centro de control, donde se podía ver el diagnóstico de la nave, así como daños, control de máquinaria y gasolina, y el seguimiento de los motores y las maniobras del buque. Ese sistema se decía que por cada año que se trabajaba en el se invertían $2.8 millones de dolares y se completaba un 10% de ella.
El día 21 de septiembre de 1997, se dice que mientras se hacian maniobras en la costa de Cape Charles, Virginia, un miembro de la tripulación inserto un cero en un campo de la base de datos y esto causo un error por una division por cero en el administrador remoto de la base de datos de la nave por consecuencia se derribaron todas las máquinas en la red y ocasionaron que el sistema de propulsión del barco dejé de funcionar, y desapareció en el agua al paso de 3 horas. Todo esto se ocasiono debido a que hubo un error en la programación del administrador remoto de la base de datos y no por problemas del sistema operativo aunque se critico mucho por el uso del sistema operativo de Windows debido a que obtuvieron muchos errores en el.
Esta historia ha sido una de las muchas por consecuencia de no hacer una validación y verificación de software, y en la mayoría de los casos las personas pierden sus empleos sin importar si ese error fue culpa del sistema operativo debido a la perdida de dinero, aveces incluso nunca los llegan a contratar
por miedo a que vuelvan a hacer lo mismo en la empresa, una historia similar ocurrió en apple donde el encargado del diseño del iPhone 4 fue despedido después de averse percatado los de la compañia de apple que la gente se estaba quejando sobre los problemas que tenían en las antenas, en el que no tenían buena recepción aveces se colgaba la línea, todo esto fue debido a una mala ubicación de la antena y a la misma presión que la empresa hace para sacar a la venta los productos.
Aquí les dejaré un esquema del problema que sucede en el iPhone 4.