[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 abs-nodes-no-padding-rec
⊦ # buf = (a ' + x).flashsize → ( abs-nodes(buf, m, a ' + x, lax, false) ↔ (∃ buf0, buf1. buf = buf0 + buf1 ∧ lax ≠ [] ∧ lax.head.off = m ∧ lax.head.size = # buf0 ∧ abs-node(buf0, a) ∧ abs-nodes(buf1, m + # buf0, x, lax.tail, false)))
Type: A user defined theorem
Validity: The proof is valid.
Features:
Comment:
Used by:
abs-nodes-no-padding-last
,
abs-nodes-no-padding-one
,
abs-nodes-subarray-failed
,
Used by units in proved state:
Proof exists?: Yes
View
the proof
Infos about the proof
Proved?: Yes
Interactions: 6
Proof steps: 16
Used lemmas:
ls-abs-node-buf-size
,
abs-nodes-unique-strong-h
,
abs-nodes-at-least-flashsize
,
abs-nodes-rec
,
abs-nodes-first-adr-explicit
,
size-rec
,
Used spec theorems:
Used simplifier rules:
laddress
/
elim
list-data
/laddress-list/
elim-list-c
list
/laddress-list/
c
encoding-node-base
/
node-flash-size
list
/
a
nat
/
ge
nat
/
le-add
abs-node
/
buf-size-zero
array
/buffer/
Size-mkarray
nat-basic
/
add-base
abs-node
/
abs-padding-mkbuf0
nat-basic
/
a
nat-basic
/
eq-01
nat-basic
/
c
array-splice
/buffer/
append-len
array-splice
/buffer/
append-a
abs-node
/
abs-node-no-abs-padding
list
/laddress-list/
e-01
list
/laddress-list/
a
list
/laddress-list/
c-08
laddress
/
sel-02
laddress
/
sel-01
abs-node
/
abs-node-abs-node
list
/laddress-list/
c-07
array-splice
/buffer/
append-eq-left