Fortaleza lógica de una aserción
Definición
Una aserción es más fuerte que si todo estado que satisface también satisface ; equivalentemente, es válida.
Intuición
Una condición más fuerte es más restrictiva y admite menos estados. Debilitar una condición permite más estados.
Formulación
Si es el conjunto de estados que satisfacen :
es la aserción más fuerte y la más débil.
Ejemplo mínimo
false -> i > 5 -> i > 0 -> true
más fuerte más débilContraejemplo o límites
La implicación no suele ser reversible. , pero permite muchos valores distintos de .
Aplicación práctica
Si una prueba hacia atrás calcula , la precondición declarada basta exactamente cuando
Esa implicación es una condición de verificación. Practica la comparación de condiciones en los ejercicios graduados.
Relaciones
- Compara: aserciones de programa.
- Fundamenta: Regla de consecuencia de Hoare.
- Permite comparar una precondición declarada con la precondición más débil.
Procedencia
- Clase: Ternas de Hoare y demostración formal.
- Fuente: Programación Avanzada Notas 4 2027, diapositivas 11–15 (láminas 65–69).