


Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Encuentra los documentos específicos para los exámenes de tu universidad
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
Formulario de las formulas usadas para la validación de especificaciones formales de la lógica de hoare
Tipo: Apuntes
1 / 4
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!



En oferta
Facultad de Ciencias Puras y Naturales
Inform´atica
L´ogica de Hoare
Fecha: La Paz, Mayo de 2020
L´ogica de Hoare
Tripleta de Hoare: {p} S {q} Donde: S: programa p: precondicion q: postcondicion (a) Correctitud Parcial: Cuando un programa parte de un estado que satisface ”p”, se ejecuta el codigo asociado S y terminamos en un estado ”q”. (b) Correctitud Total: Correctitud Parcial + El programa termina.
Ax1: {p} skip {q} Ax2: {F } abort {q} Ax1: {q[x/v]} v := x {q}
(a) Fortalecimiento de la precondici´on (RFP) p → q, {q}s{r} ` {p}s{r}
(b) Debilitamiento de la postcondicion (RDP) {p}s{q}, q → r ` {p}s{r} (2) Fortalecimiento: Precondicion sea mas especifica. Debilitamiento: Precondicion sea mas general.
(a) Regla del while (RW) {p ∧ B}S{p} {p} while B do S {p ∧ ¬B}
Invariante: la invariante es una propocisi´on que se cumple antes, durante y al finalizar la ejecucion del codigo, en todo momento. Nota: debe estar expresada en terminos de las variables que estan dentro del bucle.
{p ∧ (ξ 1 ≤ v) ∧ (v ≤ ξ 2 )}S{p[v + 1/v]} {p[ξ 1 /v] ∧ ξ 1 ≤ ξ 2 } f or v := ξ 1 until ξ 2 do S {p[ξ 2 + 1/v]} (11)