src/HOL/Isar_Examples/Hoare.thy
changeset 42053 006095137a81
parent 41818 6d4c3ee8219d
child 42086 74bf78db0d87
equal deleted inserted replaced
42052:34f1d2d81284 42053:006095137a81
   300 proof -
   300 proof -
   301   have "|- {s. id s : P} SKIP P" by (rule basic)
   301   have "|- {s. id s : P} SKIP P" by (rule basic)
   302   then show ?thesis by simp
   302   then show ?thesis by simp
   303 qed
   303 qed
   304 
   304 
   305 lemma assign: "|- P [\<acute>a/\<acute>x] \<acute>x := \<acute>a P"
   305 lemma assign: "|- P [\<acute>a/\<acute>x::'a] \<acute>x := \<acute>a P"
   306   by (rule basic)
   306   by (rule basic)
   307 
   307 
   308 text {* Note that above formulation of assignment corresponds to our
   308 text {* Note that above formulation of assignment corresponds to our
   309   preferred way to model state spaces, using (extensible) record types
   309   preferred way to model state spaces, using (extensible) record types
   310   in HOL \cite{Naraschewski-Wenzel:1998:HOOL}.  For any record field
   310   in HOL \cite{Naraschewski-Wenzel:1998:HOOL}.  For any record field