[Imprint][Data Privacy Statement][E-Mail]

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,

Signature symbols in this unit

Symbol Specification Kind Type
# .stringfstring → nat
# .zheapfzheap → nat
# .zbranch-arrayfzbranch-array → nat
# .refsetfrefset → nat
# .address-list-setfaddress-list → nat
# .address-set-arrayfaddress-set-array → nat
# .address-list-setfaddress-set → nat
. % .nat-divpfnat × nat → nat with λ n, m. m ≠ 0
. 'stringfchar → string
. 'address-list-setfaddress → address-list
. * .zheapf(zheap → bool) × (zheap → bool) → zheap → bool
. * .nat-multfnat × nat → nat
. + .nat-basicfnat × nat → nat
. + .stringfchar × string → string
. + .address-list-setfaddress-list × address → address-list
. + .stringfstring × string → string
. + .address-list-setfaddress-list × address-list → address-list
. + .stringfstring × char → string
. + .address-list-setfaddress × address-list → address-list
. ++ .zheapfzheap × ref → zheap
. ++ .stringfstring × char → string
. ++ .refsetfrefset × ref → refset
. ++ .address-list-setfaddress-list × address → address-list
. ++ .address-list-setfaddress-set × address → address-set
. +1nat-basicfnat → nat
. +2 .stringfchar × char → string
. +2 .address-list-setfaddress × address → address-list
. - .natpfnat × nat → nat with λ n, m. n ≥ m
. -* .zheapf(zheap → bool) × (zheap → bool) → zheap → bool
. -- .address-list-setfaddress-set × address → address-set
. -- .refsetfrefset × ref → refset
. -- .zheapfzheap × ref → zheap
. -> .zheapf(zheap → bool) × (zheap → bool) → zheap → bool
. -⊗ .zheapf(zheap → bool) × (zheap → bool) → zheap → bool
. -1nat-basicpfnat → nat with λ n. n ≠ 0
. -1l .stringfstring × char → string
. -1l .address-list-setfaddress-list × address → address-list
. -l .stringfstring × char → string
. -l .address-list-setfaddress-list × address → address-list
. -p .stringfstring × nat → string
. -p .address-list-setfaddress-list × nat → address-list
. .adrzbranchfzbranch → address
. .adrbranchfbranch → address
. .adr:= .branchfbranch × address → branch
. .adr:= .zbranchfzbranch × address → zbranch
. .branch?branchpbranch
. .branch?zbranchpzbranch
. .butlastaddress-list-setpfaddress-list → address-list with λ ax. ax ≠ []
. .butlaststringpfstring → string with λ str. str ≠ ""
. .char1stringpfstring → char with λ str. str ≠ ""
. .childzbranchpfzbranch → ref with λ zbr. zbr.branch?
. .child:= .zbranchpfzbranch × ref → zbranch with λ zbr, r. zbr.branch?
. .data?keypkey
. .dentry?keypkey
. .dirtyznodepznode
. .dirty:= .znodefznode × bool → znode
. .entry?branchpbranch
. .entry?zbranchpzbranch
. .headaddress-list-setpfaddress-list → address with λ ax. ax ≠ []
. .inokeyfkey → nat
. .ino:= .keyfkey × nat → key
. .inode?keypkey
. .keyzbranchfzbranch → key
. .keybranchfbranch → key
. .key:= .branchfbranch × key → branch
. .key:= .zbranchfzbranch × key → zbranch
. .lastaddress-list-setpfaddress-list → address with λ ax. ax ≠ []
. .laststringpfstring → char with λ str. str ≠ ""
. .leafznodepznode
. .leaf:= .znodefznode × bool → znode
. .namekeypfkey → string with λ key. key.dentry?
. .name:= .keypfkey × string → key with λ key, str. key.dentry?
. .parentznodefznode → ref
. .parent:= .znodefznode × ref → znode
. .partkeypfkey → nat with λ key. key.data?
. .part:= .keypfkey × nat → key with λ key, m. key.data?
. .rstringstringpfstring → string with λ str. str ≠ ""
. .tailaddress-list-setpfaddress-list → address-list with λ ax. ax ≠ []
. .toSetaddress-list-setfaddress-list → address-set
. .usedsizeznodefznode → nat
. .usedsize:= .znodefznode × nat → znode
. .zbranchesznodefznode → zbranch-array
. .zbranches:= .znodefznode × zbranch-array → znode
. / .nat-divpfnat × nat → nat with λ n, m. m ≠ 0
. < .address-list-setpaddress-list × address-list
. < .nat-basicpnat × nat
. < .key-order-defpkey × key
. < .string-lesspstring × string
. < .string-lesspchar × char
. => .zheapfref × znode → zheap → bool
. =>?zheapfref → zheap → bool
. =>_zheapfref → zheap → bool
. > .natpnat × nat
. [ . ]address-set-arraypfaddress-set-array × nat × address-set → address-set-array with λ asar, n, a0. n < # asar
. [ . ]address-set-arraypfaddress-set-array × nat → address-set with λ asar, n. n < # asar
. [ . ]address-list-setpfaddress-list × nat × address → address-list with λ ax, n, adr. n < # ax
. [ . ]address-list-setpfaddress-list × nat → address with λ ax, n. n < # ax
. [ . ]zbranch-arraypfzbranch-array × nat × zbranch → zbranch-array with λ zbrar, n, zbr. n < # zbrar
. [ . ]zbranch-arraypfzbranch-array × nat → zbranch with λ zbrar, n. n < # zbrar
. [ . ]stringpfstring × nat × char → string with λ str, n, char. n < # str
. [ . ]stringpfstring × nat → char with λ str, n. n < # str
. [ . ]zheapfzheap × ref → znode
. [ . ]zheapfzheap × ref × znode → zheap
. \ .address-list-setfaddress-set × address-set → address-set
. \ .refsetfrefset × refset → refset
. \ .zheapfzheap × zheap → zheap
. \ .zheapfzheap × refset → zheap
. ∈ .zheappref × zheap
. ∈ .stringpchar × string
. ∈ .refsetpref × refset
. ∈ .zbranch-arraypzbranch × zbranch-array
. ∈ .address-set-arraypaddress-set × address-set-array
. ∈ .address-list-setpaddress × address-list
. ∈ .address-list-setpaddress × address-set
. ∩ .address-list-setfaddress-set × address-set → address-set
. ∩ .refsetfrefset × refset → refset
. ∪ .address-list-setfaddress-set × address-set → address-set
. ∪ .refsetfrefset × refset → refset
. ∪ .zheapfzheap × zheap → zheap
. ≡ .zheappzheap × zheap
. ≤ .natpnat × nat
. ≤ .zbranch-array-sortedpkey × key
. ≥ .natpnat × nat
. ⊆ .zheapp(zheap → bool) × (zheap → bool)
. ⊆ .zheappzheap × zheap
. ⊆ .address-list-setpaddress-set × address-set
. ⊆ .refsetprefset × refset
. ⊑ .stringpstring × string
. ⊑ .address-list-setpaddress-list × address-list
. ⊒ .address-list-setpaddress-list × address-list
. ⊒ .stringpstring × string
. ⊗ .zheapf(zheap → bool) × (zheap → bool) → zheap → bool
. ⊗_ ( . )zheapf(nat → zheap → bool) × nat × nat → zheap → bool
. ⊥ .zheappzheap × zheap
. and .zheapf(zheap → bool) × (zheap → bool) → zheap → bool
. or .zheapf(zheap → bool) × (zheap → bool) → zheap → bool
[]address-list-setcaddress-list
_∃ .zheapf(address-set-array → zheap → bool) → zheap → bool
_∃ .zheapf(znode → zheap → bool) → zheap → bool
_∃ .zheapf(ref → zheap → bool) → zheap → bool
_∃ .zheapf(ref × ref → zheap → bool) → zheap → bool
{ . }address-list-setfaddress → address-set
{ . }zheapfzheap → zheap → bool
{ . }refsetfref → refset
∅address-list-setcaddress-set
∅zheapczheap
∅refsetcrefset
⊏stringpstring × string
⌜ . ⌝zheapfbool → zheap → bool
ADR_DUMMYconstantscaddress
BRANCH_SIZEconstantscnat
Boolvarkey-ordervbool,flexible
MIN_SIZEconstantscnat
Pzheapvzheap → bool
P0zheapvzheap → bool
P1zheapvzheap → bool
P2zheapvzheap → bool
Pazheapvaddress-set-array → zheap → bool
Trueseparationpbool
aaddress-set-arrayvaddress-set
addressaddresss
address-listaddress-list-sets
address-setaddress-list-sets
address-set-arrayaddress-set-arrays
adraddressvaddress
adr0addressvaddress
adr1addressvaddress
adr2addressvaddress
adr3addressvaddress
adr4addressvaddress
adr5addressvaddress
align↑alignfnat × nat → nat
align↓alignfnat × nat → nat
asaddress-list-setvaddress-set
as0address-list-setvaddress-set
as1address-list-setvaddress-set
as2address-list-setvaddress-set
asaraddress-set-arrayvaddress-set-array
asar0address-set-arrayvaddress-set-array
asar1address-set-arrayvaddress-set-array
asar2address-set-arrayvaddress-set-array
axaddress-list-setvaddress-list
ax0address-list-setvaddress-list
ax1address-list-setvaddress-list
ayaddress-list-setvaddress-list
azaddress-list-setvaddress-list
baddress-set-arrayvaddress-set
boolvarkey-ordervbool
boolvar0key-ordervbool
boolvar1key-ordervbool
boolvar2znodevbool
brbranchvbranch
branchbranchs
butlastnaddress-list-setpfnat × address-list → address-list with λ n, ax. n ≤ # ax
butlastnstringpfnat × string → string with λ n, str. n ≤ # str
bvheap-sepvbool
caddress-set-arrayvaddress-set
charchars
charcharvchar
char0charvchar
char1charvchar
char2charvchar
char3string-lessvchar
cmpaddress-set-arrayppaddress-set-array × address-set × nat × nat with λ asar, a0, m, n. m + n ≤ # asar
cmpaddress-set-arrayppaddress-set-array × nat × address-set-array × nat × nat with λ asar, m, asar0, m0, n. m + n ≤ # asar ∧ m0 + n ≤ # asar0
cmpzbranch-arrayppzbranch-array × zbranch × nat × nat with λ zbrar, zbr, m, n. m + n ≤ # zbrar
cmpzbranch-arrayppzbranch-array × nat × zbranch-array × nat × nat with λ zbrar, m, zbrar0, m0, n. m + n ≤ # zbrar ∧ m0 + n ≤ # zbrar0
copyzbranch-arraypfzbranch-array × nat × zbranch-array × nat × nat → zbranch-array with λ zbrar, m, zbrar0, m0, n. m + n ≤ # zbrar ∧ m0 + n ≤ # zbrar0
copyaddress-set-arraypfaddress-set-array × nat × address-set-array × nat × nat → address-set-array with λ asar, m, asar0, m0, n. m + n ≤ # asar ∧ m0 + n ≤ # asar0
datakeykeyfnat × nat → key
dentrykeykeyfnat × string → key
disjaddress-list-setpaddress-list × address-list
disjstringpstring × string
dropnaddress-list-setfnat × address-list → address-list
dupsstringpstring
dupsaddress-list-setpaddress-list
empzheappzheap
falsezheappzheap
filladdress-set-arraypfaddress-set-array × address-set × nat × nat → address-set-array with λ asar, a0, n, m. n + m ≤ # asar
fillzbranch-arrayfzbranch-array × zbranch → zbranch-array
fillzbranch-arraypfzbranch-array × zbranch × nat × nat → zbranch-array with λ zbrar, zbr, n, m. n + m ≤ # zbrar
filladdress-set-arrayfaddress-set-array × address-set → address-set-array
fillfirststringfnat × char × string → string
fillfirstaddress-list-setfnat × address × address-list → address-list
firstnaddress-list-setpfnat × address-list → address-list with λ n, ax. n ≤ # ax
firstnstringpfnat × string → string with λ n, str. n ≤ # str
fromestringfstring × char → string
fromeaddress-list-setfaddress-list × address → address-list
id○address-set-arraypaddress-set-array × address-set-array × nat
id○zbranch-arraypzbranch-array × zbranch-array × nat
idrangeaddress-set-arrayppaddress-set-array × nat × nat with λ asar, m, n. m + n ≤ # asar
idrangezbranch-arrayppzbranch-array × nat × nat with λ zbrar, m, n. m + n ≤ # zbrar
inokey-order-defvnat
inodekeykeyfnat → key
is-alignedalignpnat × nat
itezheapfbool × (zheap → bool) × (zheap → bool) → zheap → bool
keykeys
keykeyvkey
key0zbranchvkey
key1key-ordervkey
lastnaddress-list-setpfnat × address-list → address-list with λ n, ax. n ≤ # ax
lastnstringpfnat × string → string with λ n, str. n ≤ # str
mnat-basicvnat
m0array-copyvnat
m1keyvnat
m2keyvnat
mkarrayaddress-set-arrayfnat → address-set-array
mkbranchbranchfkey × address → branch
mkentrybranchfkey × address → branch
mkliststringfchar × nat → string
mklistaddress-list-setfaddress × nat → address-list
mkzbranchzbranchfkey × address × ref → zbranch
mkzbrarrayzbranch-arrayfnat → zbranch-array
mkzentryzbranchfkey × address → zbranch
mkznodeznodefref × zbranch-array × bool × bool × nat → znode
nnat-basicvnat
n0nat-basicvnat
n1nat-basicvnat
nPzheapvnat → zheap → bool
natnat-basics
not .zheapf(zheap → bool) → zheap → bool
nullrefcref
oPzheapvznode → zheap → bool
posstringfchar × string → nat
posaddress-list-setfaddress × address-list → nat
precisezheapp(zheap → bool)
prefixnaddress-list-setfnat × address-list → address-list
rrefvref
r0refvref
r1refvref
rPzheapvref → zheap → bool
refrefs
refsetrefsets
restnaddress-list-setpfnat × address-list → address-list with λ n, ax. n ≤ # ax
restnstringpfnat × string → string with λ n, str. n ≤ # str
revaddress-set-arraypfaddress-set-array × nat → address-set-array with λ asar, n. n ≤ # asar
revzbranch-arraypfzbranch-array × nat → zbranch-array with λ zbrar, n. n ≤ # zbrar
revaddress-set-arrayfaddress-set-array → address-set-array
revstringfstring → string
revaddress-list-setfaddress-list → address-list
revzbranch-arrayfzbranch-array → zbranch-array
rmdupstringfstring → string
rmdupaddress-list-setfaddress-list → address-list
rrPzheapvref × ref → zheap → bool
rsrefsetvrefset
rs0refsetvrefset
rs1refsetvrefset
rs2refsetvrefset
sliceaddress-list-setfnat × nat × address-list → address-list
sortedzbranch-array-sortedpzbranch-array × nat × nat
sortedcharsstring-lesscstring
strstringvstring
str0stringvstring
str1stringvstring
str2stringvstring
str3stringvstring
stringstrings
subarrayaddress-set-arraypfaddress-set-array × nat × nat → address-set-array with λ asar, m, n. m + n ≤ # asar
subarrayzbranch-arraypfzbranch-array × nat × nat → zbranch-array with λ zbrar, m, n. m + n ≤ # zbrar
sublistaddress-list-setpfnat × nat × address-list → address-list with λ n, m, ax. n + m ≤ # ax
subliststringpfnat × nat × string → string with λ n, m, str. n + m ≤ # str
truezheappzheap
zbrzbranchvzbranch
zbr0zbranch-arrayvzbranch
zbr1zbranch-arrayvzbranch
zbranchzbranchs
zbranch-arrayzbranch-arrays
zbrarzbranch-arrayvzbranch-array
zbrar0zbranch-arrayvzbranch-array
zbrar1zbranch-arrayvzbranch-array
zbrar2zbranch-arrayvzbranch-array
zhzheapvzheap
zh0zheapvzheap
zh1zheapvzheap
zh2zheapvzheap
zheapzheaps
zndznodevznode
znd0zheapvznode
znd1zheapvznode
znodeznodes