merged
authornipkow
Sun, 07 Nov 2021 18:30:10 +0100
changeset 74724 cc54b8812c63
parent 74722 b92b5a57521b (current diff)
parent 74723 f05c73bf5968 (diff)
child 74726 33ed2eb06d68
merged
--- a/src/HOL/Hoare/Hoare_Logic.thy	Sun Nov 07 16:30:42 2021 +0100
+++ b/src/HOL/Hoare/Hoare_Logic.thy	Sun Nov 07 18:30:10 2021 +0100
@@ -134,8 +134,8 @@
   assumes "p \<subseteq> i"
       and "\<And>n::nat . ValidTC (i \<inter> b \<inter> {s . v s = n}) c (A n) (i \<inter> {s . v s < n})"
       and "i \<inter> uminus b \<subseteq> q"
-    shows "ValidTC p (While b c) (Awhile i v A) q"
-proof -
+    shows "ValidTC p (While b c) (Awhile i v (\<lambda>n. A n)) q"
+proof -                             
   {
     fix s n
     have "s \<in> i \<and> v s = n \<longrightarrow> (\<exists>t . Sem (While b c) s t \<and> t \<in> q)"
--- a/src/HOL/Hoare/hoare_syntax.ML	Sun Nov 07 16:30:42 2021 +0100
+++ b/src/HOL/Hoare/hoare_syntax.ML	Sun Nov 07 18:30:10 2021 +0100
@@ -99,7 +99,7 @@
           let val (c',a) = tr c xs
               val (v',A) = case v of
                 Const (\<^const_syntax>\<open>HOL.eq\<close>, _) $ z $ t => (t, Syntax_Trans.abs_tr [z, a]) |
-                t => (t, absdummy dummyT a)
+                t => (t, Abs ("n", dummyT, a))
           in (syntax_const ctxt #While $ bexp_tr b xs $ c',
               Syntax.const \<^const_syntax>\<open>Awhile\<close>
                 $ assn_tr i xs $ var_tr v' xs $ A)