[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:
ex-maplet
/
mapex-new-rw
heap-sep
/
sep
heap-sep
/
sep-ass
heap-sep
/
split-union
heapfuns
/
disj
ex-maplet
/
mapex
Used simplifier rules:
heapfuns
/
disj-distr-uni
heap-sep
/
sep-com
heap-sep
/
sep-ass
heap
/
in-alloc
ex-maplet
/
mapex-new-rw
heap
/
nonnull
maplet
/
ex
heap-sep
/
precise-split-r
maplet
/
map-in0