[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 prepost-remove
bin-heap-inv(bh, ar), ar0 = ar, bh0 = bh, key-index(key, m) ∈ keyset(bh0), ar[m].idx = n ⊦ ⟪bin_min_heap_remove#(n; bh, ar)⟫ (bin-heap-inv(bh, ar) ∧ id-idx(ar0, ar) ∧ keyset(bh) = keyset(bh0) -- key-index(key, m))
Type: A user defined theorem
Validity: The proof is valid.
Features:
Comment:
Used by:
Used by units in proved state:
Proof exists?: Yes
View
the proof
Infos about the proof
Proved?: Yes
Interactions: 23
Proof steps: 96
Used lemmas:
bubble-down-inv
,
prepost-bubble-down
,
bubble-up-inv
,
prepost-bubble-up
,
bin-heap-inv-def
,
keyset
,
Used spec theorems:
bin-min-heap-inv
/
key-set-extract-index
bin-min-heap-inv
/
valid-idx
bin-min-heap-inv
/
heap-order-pull-down-parent
bin-min-heap-inv
/
heap-order-overwrite-children-at
bin-min-heap-inv
/
heap-order-pull-up-child
bin-min-heap-inv
/
key-index-in-keyset-array-extract
bin-min-heap-inv
/
key-set-write-nodups
set-union
/keyindex-set/
delsw
bin-min-heap-inv
/
no-dups-idx
Used simplifier rules:
bin-min-heap
/
elim
set-basic
/keyindex-set/
size-zero-01
elem-index
/
elim
key-index
/
sel-01
elem-index
/
sel-02
bin-min-heap-inv
/
key-index-in-keyset-array-extract
nat
/
eqle-one
nat
/
les
nat
/
add-01
nat-basic
/
add-base
nat-basic
/
succ-03
oelem
/binheap-key/
lel
array
/key-index-array/
cgetput
array
/key-index-array/
cputput
nat
/
add-num-03
nat-mult
/
one
nat-mult
/
numeral-28
bin-min-heap-inv
/
valid-idx-move-last
bin-min-heap-inv
/
no-dups-idx-mvlast
index-array
/
id-idx-write
index-array
/
id-idx-write-left
nat-div
/
two-neq-01
array
/key-index-array/
cngetput
nat-mult
/
rsucc-02
oelem
/binheap-key/
irreflexivity
nat
/
elim-pred-c
key-index
/
sel-02
oelem
/binheap-key/
nll
nat-mult
/
twols
nat-basic
/
l
set-basic
/keyindex-set/
ne-01
nat-basic
/
lf-01
set-union
/keyindex-set/
del-neq-02
array
/key-index-array/
put-same-content
set-union
/keyindex-set/
delete-insert
key-index
/
inj
nat-mult
/
mult-c
nat-mult
/
mult-a
nat-mult
/
ls-08
nat
/
fle-01
nat-basic
/
trans
nat
/
ls-02
nat-div
/
le-div-to-mult
array
/key-index-array/
Size-put
array
/key-index-array/
Put-same
bin-min-heap
/
upd-01
nat
/
le-ls-simp
nat
/
ls-01
nat-basic
/
one
nat
/
lels-02
nat-basic
/
succ
nat-basic
/
lf
nat-basic
/
neq-04
nat-basic
/
one-03
bin-min-heap-inv
/
valid-idx-last-valid
key-index
/
elim
nat-basic
/
ls-02
nat
/
not-zero
nat-basic
/
l-02
nat
/
let
nat
/
fle
nat
/
zero-02
index-array
/
id-idx-refl
nat
/
ls-03
nat-basic
/
one-01
bin-min-heap
/
sel-02
bin-min-heap
/
upd-02
nat
/
ge
bin-min-heap
/
sel-01
nat-basic
/
one-06
bin-min-heap-inv
/
no-dups-idx-rem1
bin-min-heap-inv
/
valid-idx-imp-1
bin-min-heap-inv
/
heap-order-remove-last
nat
/
ls-le-simp
nat
/
lels
nat
/
lels-03
nat-basic
/
s-04
set-basic
/keyindex-set/
In-insert
bin-min-heap-inv
/
keyset-rec
nat
/
succ-01
nat
/
lep
nat
/
lep-02
nat-basic
/
oz
nat
/
ler
set-basic
/keyindex-set/
size-zero
set-basic
/keyindex-set/
ne
set-union
/keyindex-set/
del-addeq-05
set-union
/keyindex-set/
del-in-03
nat-basic
/
a
nat-basic
/
c
nat
/
le-def
nat-basic
/
ref
bin-min-heap-inv
/
valid-idx-outofbounds
bin-min-heap-inv
/
keyset-base
set-union
/keyindex-set/
del-e-02
set-basic
/keyindex-set/
size-one-01
nat
/
lez-01
bin-min-heap-inv
/
heap-order-1
nat-basic
/
zero
nat-basic
/
f
set-basic
/keyindex-set/
In-empty
nat-basic
/
lf-02