You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
assumefn:"Functions I Ix (\<chi> i. dterm_sem I (Const (bword_zero)) (a, b)) = Functions I Iy (\<chi> i. dterm_sem I (Const (bword_zero)) (a, b))"
68
-
havevec_eq:"(\<chi> i. dterm_sem I (if i = Ix then $f Ix (\<lambda>i. Const (bword_zero)) else Const (bword_zero)) (a, b)) = (\<chi> i. dterm_sem I (if i = Ix then $f Iy (\<lambda>i. Const (bword_zero)) else Const (bword_zero)) (a, b))"
67
+
assumefn:"Functions I Ix (\<chi> i. dterm_sem I \<^bold>0 (a, b)) = Functions I Iy (\<chi> i. dterm_sem I \<^bold>0 (a, b))"
68
+
havevec_eq:"(\<chi> i. dterm_sem I (if i = Ix then $f Ix (\<lambda>i. \<^bold>0) else \<^bold>0) (a, b)) = (\<chi> i. dterm_sem I (if i = Ix then $f Iy (\<lambda>i. \<^bold>0) else \<^bold>0) (a, b))"
69
69
apply(rulevec_extensionality)
70
70
usingfnby(autosimpadd:empty_def)
71
-
thenshow"Predicates I Ix (\<chi> i. dterm_sem I (if i = Ix then $f Ix (\<lambda>i. Const (bword_zero)) else Const (bword_zero)) (a, b)) =
72
-
Predicates I Ix (\<chi> i. dterm_sem I (if i = Ix then $f Iy (\<lambda>i. Const (bword_zero)) else Const (bword_zero)) (a, b))"
71
+
thenshow"Predicates I Ix (\<chi> i. dterm_sem I (if i = Ix then $f Ix (\<lambda>i. \<^bold>0) else \<^bold>0) (a, b)) =
72
+
Predicates I Ix (\<chi> i. dterm_sem I (if i = Ix then $f Iy (\<lambda>i. \<^bold>0) else \<^bold>0) (a, b))"
havevec_eq:"\<And>a b. (\<chi> i. dterm_sem I (if i = Ix then $$F Ix else Const (bword_zero)) (a, b)) = (\<chi> i. dterm_sem I (if i = Ix then $$F Iy else Const (bword_zero)) (a, b))"
341
+
havevec_eq:"\<And>a b. (\<chi> i. dterm_sem I (if i = Ix then $$F Ix else \<^bold>0) (a, b)) = (\<chi> i. dterm_sem I (if i = Ix then $$F Iy else \<^bold>0) (a, b))"
342
342
apply(rulevec_extensionality)
343
343
usingpre2by(auto)
344
344
show"seq_sem I ([], [Equiv(Prop Iz (singleton ($$F Ix)))(Prop Iz (singleton ($$F Iy)))]) = UNIV"
assume"\<forall>I::interp. is_interp I \<longrightarrow> (\<forall>a b. dterm_sem I \<theta> (a, b) = dterm_sem I \<theta>' (a, b))"
562
-
thenhave"\<forall>i. dterm_sem I (if i = Ix then \<theta>' else (Const (bword_zero))) (a, b) = dterm_sem I (if i = Ix then \<theta> else (Const (bword_zero))) (a, b)"
562
+
thenhave"\<forall>i. dterm_sem I (if i = Ix then \<theta>' else \<^bold>0) (a, b) = dterm_sem I (if i = Ix then \<theta> else \<^bold>0) (a, b)"
563
563
usinga1bypresburger
564
-
thenshow"Functions I var (vec_lambda (\<lambda>i. dterm_sem I (if i = Ix then \<theta> else (Const (bword_zero))) (a, b)))
565
-
= Functions I var (vec_lambda (\<lambda>i. dterm_sem I (if i = Ix then \<theta>' else (Const (bword_zero))) (a, b)))"
564
+
thenshow"Functions I var (vec_lambda (\<lambda>i. dterm_sem I (if i = Ix then \<theta> else \<^bold>0) (a, b)))
565
+
= Functions I var (vec_lambda (\<lambda>i. dterm_sem I (if i = Ix then \<theta>' else \<^bold>0) (a, b)))"
havesem_eq:"dterm_sem I \<theta> (a,b) = dterm_sem I \<theta>' (a,b)"
582
582
usingsemgoodbyauto
583
-
havefeq:"(\<chi> i. dterm_sem I (if i = Ix then \<theta> else Const (bword_zero)) (a, b)) = (\<chi> i. dterm_sem I (if i = Ix then \<theta>' else Const (bword_zero)) (a, b))"
583
+
havefeq:"(\<chi> i. dterm_sem I (if i = Ix then \<theta> else \<^bold>0) (a, b)) = (\<chi> i. dterm_sem I (if i = Ix then \<theta>' else \<^bold>0) (a, b))"
584
584
apply(rulevec_extensionality)
585
585
usingsem_eqbyauto
586
586
thenshow"(a, b) \<in> fml_sem I ($\<phi> var (singleton \<theta>) \<leftrightarrow> $\<phi> var (singleton \<theta>'))"
0 commit comments