[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, hO1(r; me), h1 ++ r, hO2, h2) → (((!(me, hO1, hP) * hP0))(h1) ↔ ((!(me, hO2, r =>_ * hP) * hP0))(h1 ++ r))
Type: A user defined theorem
Validity: The proof is valid.
Features: s, ls,
Comment:
Used by:
alloc
,
Used by units in proved state:
Proof exists?: Yes
View
the proof
Infos about the proof
Proved?: Yes
Interactions: 31
Proof steps: 52
Used lemmas:
owned-r
,
owned-P
,
rely
,
owned
,
compact-local
,
switch-ownership
,
lift-mapex
,
Used spec theorems:
maplet
/
mapex-new-rw
heap-sep
/
sep
heap-sep
/
sep-ass
heap-sep
/
split-union
heap
/
disj
maplet
/
mapex
Used simplifier rules:
heap
/
disj-distr-uni
heap-sep
/
sep-com
heap-sep
/
sep-ass
heap
/
in-alloc
maplet
/
mapex-new-rw
heap
/
nonnull
maplet
/
ex3
maplet
/
map-in0