refine: update other architectures for ghost state change

Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
This commit is contained in:
Gerwin Klein 2023-05-25 10:22:50 +10:00
parent aa2eb9ad6d
commit 9298456475
No known key found for this signature in database
GPG Key ID: 20A847CE6AB7F5F3
8 changed files with 20 additions and 4 deletions

View File

@ -126,7 +126,7 @@ lemma deleteObjects_def2:
then None else gsCNodes s x \<rparr>);
stateAssert ksASIDMapSafe []
od"
apply (simp add: deleteObjects_def is_aligned_mask[symmetric] unless_def)
apply (simp add: deleteObjects_def is_aligned_mask[symmetric] unless_def deleteGhost_def)
apply (rule bind_eqI, rule ext)
apply (rule bind_eqI, rule ext)
apply (simp add: bind_assoc[symmetric])

View File

@ -4013,6 +4013,8 @@ lemma idx_le_new_offs:
end
context begin interpretation Arch . (*FIXME: arch_split*)
lemma valid_sched_etcbs[elim!]: "valid_sched_2 queues ekh sa cdom kh ct it \<Longrightarrow> valid_etcbs_2 ekh kh"
by (simp add: valid_sched_def)
@ -4588,6 +4590,8 @@ lemma whenE_reset_resetUntypedCap_invs_etc:
crunch ksCurDomain[wp]: updateFreeIndex "\<lambda>s. P (ksCurDomain s)"
end
lemma (in range_cover) funky_aligned:
"is_aligned ((ptr && foo) + v * 2 ^ sbit) sbit"
apply (rule aligned_add_aligned)

View File

@ -126,7 +126,7 @@ lemma deleteObjects_def2:
then None else gsCNodes s x \<rparr>);
stateAssert ksASIDMapSafe []
od"
apply (simp add: deleteObjects_def is_aligned_mask[symmetric] unless_def)
apply (simp add: deleteObjects_def is_aligned_mask[symmetric] unless_def deleteGhost_def)
apply (rule bind_eqI, rule ext)
apply (rule bind_eqI, rule ext)
apply (simp add: bind_assoc[symmetric])

View File

@ -4062,6 +4062,8 @@ lemma idx_le_new_offs:
end
context begin interpretation Arch . (*FIXME: arch_split*)
lemma valid_sched_etcbs[elim!]: "valid_sched_2 queues ekh sa cdom kh ct it \<Longrightarrow> valid_etcbs_2 ekh kh"
by (simp add: valid_sched_def)
@ -4637,6 +4639,8 @@ lemma whenE_reset_resetUntypedCap_invs_etc:
crunch ksCurDomain[wp]: updateFreeIndex "\<lambda>s. P (ksCurDomain s)"
end
lemma (in range_cover) funky_aligned:
"is_aligned ((ptr && foo) + v * 2 ^ sbit) sbit"
apply (rule aligned_add_aligned)

View File

@ -125,7 +125,7 @@ lemma deleteObjects_def2:
then None else gsCNodes s x \<rparr>);
stateAssert ksASIDMapSafe []
od"
apply (simp add: deleteObjects_def is_aligned_mask[symmetric] unless_def)
apply (simp add: deleteObjects_def is_aligned_mask[symmetric] unless_def deleteGhost_def)
apply (rule bind_eqI, rule ext)
apply (rule bind_eqI, rule ext)
apply (simp add: bind_assoc[symmetric])

View File

@ -4048,6 +4048,8 @@ lemma idx_le_new_offs:
end
context begin interpretation Arch . (*FIXME: arch_split*)
lemma valid_sched_etcbs[elim!]: "valid_sched_2 queues ekh sa cdom kh ct it \<Longrightarrow> valid_etcbs_2 ekh kh"
by (simp add: valid_sched_def)
@ -4610,6 +4612,8 @@ lemma whenE_reset_resetUntypedCap_invs_etc:
crunch ksCurDomain[wp]: updateFreeIndex "\<lambda>s. P (ksCurDomain s)"
end
lemma (in range_cover) funky_aligned:
"is_aligned ((ptr && foo) + v * 2 ^ sbit) sbit"
apply (rule aligned_add_aligned)

View File

@ -125,7 +125,7 @@ lemma deleteObjects_def2:
then None else gsCNodes s x \<rparr>);
stateAssert ksASIDMapSafe []
od"
apply (simp add: deleteObjects_def is_aligned_mask[symmetric] unless_def)
apply (simp add: deleteObjects_def is_aligned_mask[symmetric] unless_def deleteGhost_def)
apply (rule bind_eqI, rule ext)
apply (rule bind_eqI, rule ext)
apply (simp add: bind_assoc[symmetric])

View File

@ -4145,6 +4145,8 @@ lemma idx_le_new_offs:
end
context begin interpretation Arch . (*FIXME: arch_split*)
lemma valid_sched_etcbs[elim!]: "valid_sched_2 queues ekh sa cdom kh ct it \<Longrightarrow> valid_etcbs_2 ekh kh"
by (simp add: valid_sched_def)
@ -4718,6 +4720,8 @@ lemma whenE_reset_resetUntypedCap_invs_etc:
crunch ksCurDomain[wp]: updateFreeIndex "\<lambda>s. P (ksCurDomain s)"
end
lemma (in range_cover) funky_aligned:
"is_aligned ((ptr && foo) + v * 2 ^ sbit) sbit"
apply (rule aligned_add_aligned)