[Imprint]
[Data Privacy Statement]
[E-Mail]
View
long theorem info
. View
the proof
. Back to
main index
. View
the specification
. View
theorem base summary
, View
theorem base listing
, the
used properties by spec
, the
dependency list
, the
symbol table
,
Theorem alloc-p
⊦ r ≠ null ∧ ¬ r ∈ H1 ∧ rely(me, O1(r ; me), H1 ++ r, O2, H2) → ((!(me, O1, P) * P0)(H1) ↔ (!(me, O2, r =>_ * P) * P0)(H1 ++ r))
Type: A user defined theorem
Validity: The proof is valid.
Features: simp, localsimp,
Comment:
Used by:
alloc
,
Used by units in proved state:
Proof exists?: Yes
View
the proof
Infos about the proof
Proved?: Yes
Interactions: 33
Proof steps: 53
Used lemmas:
owned-r
,
owned-P
,
rely
,
owned
,
compact-local
,
switch-ownership
,
lift-mapex
,
Used spec theorems:
heap-sep
/
sep-ass
maplet
/
mapex-new-rw
heap-sep
/
sep
heap-sep
/
split-union
heap
/
disj
maplet
/
mapex
Used simplifier rules:
maplet
/
ex3
maplet
/
map-in0
heap-sep
/
precise-split-r
heap
/
nonnull
heap-sep
/
precise-split-l
maplet
/
precise-mapex
heap
/
in-alloc
heap
/
disj-distr-uni
heap-sep
/
sep-com
heap-sep
/
sep-ass