Question

Dans le langage IMP classique, la définition de la condition la plus faible est:

definition "wp c Q s ≡ ∃t. (c,s) ⇒ t ∧ Q t"

Cela indique que de l'état S, après l'exécution de C, nous arrivons à un état satisfaisant Q. Ma question vient lorsque Wikipédia). Je suppose que dans ce cas, il faut définir:

definition "wp c Q s ≡ ∃t. (c,s) ⇒ t ∧ (∀ t'. (c,s) ⇒ t' ⟶ Q t')"

Je me demande si c'est correct et si c'est la façon standard de l'écrire dans la littérature.

Actuellement, j'ai des problèmes à prouver la définition de précondition la plus faible pour la composition séquentielle des commandes:

"wp (c1;;c2) Q s = wp c1 (wp c2 Q) s" 

Donc, je commence à penser que ma définition est fausse. Citant Wikipedia:

Le résultat de cette fonction, indiqué WP (S, R), est la condition préalable "la plus faible" sur l'état initial garantissant que l'exécution de S se termine dans un état final satisfaisant R.

La terminaison est donc requise dans la définition, et cela n'est pas correctement imposé jusqu'à présent. Il pourrait y avoir des branches non terminantes.

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
Non affilié à cs.stackexchange
scroll top