Específicamente en la lógica de Floyd-Hoare, la corrección parcial de un mientras que el lazo es gobernado por la regla siguiente de inferencia:
Regla antedicho es deductivo paso que tiene como su premisa Hoare triple . Este triple es realmente una relación en estados de la máquina. Si esta relación puede ser probada, la regla después permite que concluyamos que la ejecución acertada del programa (c) body El ejemplo siguiente ilustra cómo esta regla trabaja. Considerar el programa mientras que (x<10) x: = x+1; Uno puede entonces probar el triple siguiente de Hoare: El C de la condición del lazo de Mientras que este triple se puede derivar formalmente de las reglas de asignación de gobierno de la lógica de Floyd-Hoare, también intuitivo se justifica: El cómputo comienza en un estado donde está verdades , que significa simplemente que es verdad. El cómputo agrega 1 a x, así que significa que el es todavía verdad. Bajo esta premisa, la regla para los lazos de Los juegos invariantes de lazo un papel importante en la discusión intuitiva para la validez de la regla de Floyd-Hoare para los lazos de Debido a la semejanza fundamental de lazos y de programas recurrentes, probar la corrección parcial de lazos con los invariants es muy similar a probar la corrección de programas recurrentes vía la inducción .
while lleve de un estado en el cual sea verdad a un estado en el cual el se sostenga. El boleano I de la fórmula en esta regla se conoce como el invariante de lazo.
while es . Un invariante útil I de lazo es el . Bajo estas asunciones es posible probar el triple siguiente de Hoare:
while permite la conclusión siguiente:
while. El invariante de lazo tiene que ser verdad antes de cada iteración del cuerpo de lazo, y también después de cada iteración del cuerpo de lazo. Puesto que un lazo de while es exacto la iteración repetida del cuerpo de lazo, sigue que si el invariante es verdad antes de incorporar el lazo, debe también ser verdad después de salir el lazo. Random links: Colin Pickthall | Alas de San Antonio | Miembros del gabinete de Hitler | Primeros tiros americanos encendidos en la Segunda Guerra Mundial | Cañería de Anne