[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
# .list-datafList('a) → Nat
# .set-basicfSet('a) → Nat
#oclist-permf'a × List('a) → Nat
. 'listf'a → List('a)
. + .nat-basicfNat × Nat → Nat
. + .list-dataf'a × List('a) → List('a)
. + .listfList('a) × List('a) → List('a)
. + .listfList('a) × 'a → List('a)
. ++ .list-dupfList('a) × 'a → List('a)
. ++ .set-basicfSet('a) × 'a → Set('a)
. +1nat-basicfNat → Nat
. +2 .listf'a × 'a → List('a)
. - .natpfNat × Nat → Nat with λ n, m. n ≥ m
. -- .set-unionfSet('a) × 'a → Set('a)
. -1nat-basicpfNat → Nat with λ n. n ≠ 0
. -1l .list-delfList('a) × 'a → List('a)
. -l .list-delfList('a) × 'a → List('a)
. -p .list-delfList('a) × Nat → List('a)
. .FO?FOWpFOW
. .W?FOWpFOW
. .butlastlist-lastpfList('a) → List('a) with λ x. x ≠ []
. .count ( . )filter-countfList('a) × ('a → Bool) → Nat
. .count ( . )filter-countpfList('a) × Nat × Nat × ('a → Bool) → Nat with λ x, m, n, p. m ≤ n ∧ n ≤ # x
. .ctrFLITPSCweakfFLITPSCGState → L → Nat
. .ctr:= .FLITPSCweakfFLITPSCGState × (L → Nat) → FLITPSCGState
. .distinctlist-dupfList('a) → List('a)
. .drop ( . )list-delpfList('a) × Nat → List('a) with λ x, n. n ≤ # x
. .dropRight ( . )list-lastpfList('a) × Nat → List('a) with λ x, n. n ≤ # x
. .exists ( . )forall-indexWherepList('a) × ('a → Type(Bool))
. .filter ( . )filter-countfList('a) × ('a → Bool) → List('a)
. .filter ( . )set-unionfSet('a) × ('a → Bool) → Set('a)
. .foldLeft ( . )listfList('a) × 'b × ('b × 'a → 'b) → 'b
. .forall ( . )forall-indexWherepList('a) × ('a → Type(Bool))
. .gstateFLITPSCweakfFLITPSCState → FLITPSCGState
. .gstate:= .FLITPSCweakfFLITPSCState × FLITPSCGState → FLITPSCState
. .headlist-datapfList('a) → 'a with λ x. x ≠ []
. .indexOf ( . )list-delfList('a) × 'a → Nat
. .indexWhere ( . )forall-indexWherefList('a) × ('a → Bool) → Nat
. .invFLITPSCREADlFLITPSCweakpfFLITPSCAction → L with λ a. ∃ tid, l. a = invFLITPSCREAD(tid, l)
. .invFLITPSCWRITElFLITPSCweakpfFLITPSCAction → L with λ a. ∃ tid, l, v. a = invFLITPSCWRITE(tid, l, v)
. .invFLITPSCWRITEvFLITPSCweakpfFLITPSCAction → V with λ a. ∃ tid, l, v. a = invFLITPSCWRITE(tid, l, v)
. .invPSCPERSIST_FOlFLITPSCweakpfFLITPSCAction → L with λ a. ∃ l. a = globalPSCPERSIST_FO(l)
. .invPSCPERSIST_WlFLITPSCweakpfFLITPSCAction → L with λ a. ∃ l. a = globalPSCPERSIST_W(l)
. .lFLITPSCweakfFLITPSCLState → L
. .lFLITPSCweakpfFLITPSCAction → L with λ a. (∃ tid, l. a = pwbPSC(tid, l)) ∨ (∃ tid, l, v. a = doWritePSC(tid, l, v)) ∨ (∃ tid, l, v. a = doReadPSC(tid, l, v)) ∨ (∃ tid, l, n. a = ctrReadPSC(tid, l, n)) ∨ (∃ tid, l. a = ctrIncPSC(tid, l)) ∨ (∃ tid, l. a = ctrDecPSC(tid, l))
. .l:= .FLITPSCweakfFLITPSCLState × L → FLITPSCLState
. .lastlist-lastpfList('a) → 'a with λ x. x ≠ []
. .lsfFLITPSCweakfFLITPSCState → T → FLITPSCLState
. .lsf:= .FLITPSCweakfFLITPSCState × (T → FLITPSCLState) → FLITPSCState
. .map ( . )listfList('a) × ('a → 'b) → List('b)
. .map ( . )set-unionfSet('a) × ('a → 'b) → Set('b)
. .memFLITPSCweakfFLITPSCGState → L → V
. .mem:= .FLITPSCweakfFLITPSCGState × (L → V) → FLITPSCGState
. .nFLITPSCweakpfFLITPSCAction → Nat with λ a. ∃ tid, l, n. a = ctrReadPSC(tid, l, n)
. .pFLITPSCweakfFLITPSCGState → L → List(FOW)
. .p:= .FLITPSCweakfFLITPSCGState × (L → List(FOW)) → FLITPSCGState
. .pcfFLITPSCweakfFLITPSCState → T → FLITPSCPC
. .pcf:= .FLITPSCweakfFLITPSCState × (T → FLITPSCPC) → FLITPSCState
. .readersFLITPSCweakfFLITPSCGState → L → Set(T)
. .readers:= .FLITPSCweakfFLITPSCGState × (L → Set(T)) → FLITPSCGState
. .retFLITPSCREADvFLITPSCweakpfFLITPSCAction → V with λ a. ∃ tid, v. a = retFLITPSCREAD(tid, v)
. .sublist ( . )list-delpfList('a) × Nat × Nat → List('a) with λ x, n, m. n + m ≤ # x
. .tFLITPSCweakfFLITPSCLState → T
. .tFLITPSCweakpfFLITPSCAction → T with λ a. (∃ tid. a = retFLITPSCWRITE(tid)) ∨ (∃ tid, v. a = retFLITPSCREAD(tid, v)) ∨ (∃ tid, l, v. a = invFLITPSCWRITE(tid, l, v)) ∨ (∃ tid, l. a = invFLITPSCREAD(tid, l)) ∨ (∃ tid. a = callPSCRUN(tid)) ∨ (∃ tid. a = callPSCCOMPLETE(tid))
. .t:= .FLITPSCweakfFLITPSCLState × T → FLITPSCLState
. .taillist-datapfList('a) → List('a) with λ x. x ≠ []
. .take ( . )list-delpfList('a) × Nat → List('a) with λ x, n. n ≤ # x
. .takeRight ( . )list-delpfList('a) × Nat → List('a) with λ x, n. n ≤ # x
. .tidFOWfFOW → T
. .tidFLITPSCweakpfFLITPSCAction → T with λ a. (∃ tid. a = sfencePSC(tid)) ∨ (∃ tid, l. a = pwbPSC(tid, l)) ∨ (∃ tid, l, v. a = doWritePSC(tid, l, v)) ∨ (∃ tid, l, v. a = doReadPSC(tid, l, v)) ∨ (∃ tid, l, n. a = ctrReadPSC(tid, l, n)) ∨ (∃ tid, l. a = ctrIncPSC(tid, l)) ∨ (∃ tid, l. a = ctrDecPSC(tid, l))
. .vFLITPSCweakfFLITPSCLState → V
. .vFLITPSCweakpfFLITPSCAction → V with λ a. (∃ tid, l, v. a = doWritePSC(tid, l, v)) ∨ (∃ tid, l, v. a = doReadPSC(tid, l, v))
. .v:= .FLITPSCweakfFLITPSCLState × V → FLITPSCLState
. .valFOWpfFOW → V with λ fow. fow.W?
. .writersFLITPSCweakfFLITPSCGState → L → Set(T)
. .writers:= .FLITPSCweakfFLITPSCGState × (L → Set(T)) → FLITPSCGState
. < .nat-basicpNat × Nat
. < .list-datapList('a) × List('a)
. > .natpNat × Nat
. [ . := . ]list-getputpfList('a) × Nat × 'a → List('a) with λ x, n, a. n < # x
. [ . ]list-getputpfList('a) × Nat → 'a with λ x, n. n < # x
. \ .list-setfList('a) × List('a) → List('a)
. \ .set-unionfSet('a) × Set('a) → Set('a)
. | .FLITPSC-predsfList(FOW) × T → List(FOW)
. |FOFLITPSC-predsfList(FOW) → List(FOW)
. |WFLITPSC-predsfList(FOW) → List(FOW)
. ∈ .listp'a × List('a)
. ∈ .set-basicp'a × Set('a)
. ∩ .set-unionfSet('a) × Set('a) → Set('a)
. ∪ .list-setfList('a) × List('a) → List('a)
. ∪ .set-unionfSet('a) × Set('a) → Set('a)
. ≤ .natpNat × Nat
. ≥ .natpNat × Nat
. ⊆ .list-setpList('a) × List('a)
. ⊆ .set-basicpSet('a) × Set('a)
. ⊆m .list-permpList('a) × List('a)
. ⊑ .list-lastpList('a) × List('a)
. ⊒ .list-lastpList('a) × List('a)
. ⊒W .FLITPSCweak-predspList(FOW) × List(FOW)
. ⊕ .FLITPSC-predsfV × List(FOW) → V
. ⊕ .FLITPSC-predsf(L → V) × (L → List(FOW)) → L → V
. intersect .list-setfList('a) × List('a) → List('a)
. zip .filter-countfList('a) × List('b) → List(('a, 'b))
[]list-datacList('a)
{ . }set-unionf'a → Set('a)
τFLITPSCweakcFLITPSCAction
∅set-basiccSet('a)
∅memoryfL → V
FLITPSCActionFLITPSCweaks
FLITPSCGInvFLITPSCweakpFLITPSCGState
FLITPSCGStateFLITPSCweaks
FLITPSCInvFLITPSCweakpFLITPSCGState × (T → Type(FLITPSCLState)) × (T → Type(FLITPSCPC))
FLITPSCLInvFLITPSCweakpFLITPSCGState × FLITPSCLState × FLITPSCPC
FLITPSCLStateFLITPSCweaks
FLITPSCPCFLITPSCweaks
FLITPSCREADFLITPSCweakprL × T × (L → V) × (L → Nat) : (L → List(FOW)) × (L → Set(T)) : V
FLITPSCRelyFLITPSCweakpFLITPSCGState × T × FLITPSCGState
FLITPSCStateFLITPSCweaks
FLITPSCWRITEFLITPSCweakprL × V × T : (L → List(FOW)) × (L → Nat) × (L → Set(T))
FOFOWfT → FOW
FOFollowsWFLITPSC-predspT × List(FOW)
FOWFOWs
Lmemorys
Listlist-datas
Natnat-basics
OmemorycV
PSCCOMPLETEFLITPSCweakprT × (L → List(FOW)) :
PSCCRASHFLITPSCweakpr : (L → List(FOW)) × (L → Nat) × (L → Set(T)) × (L → Set(T)) × (T → FLITPSCPC)
PSCPERSIST_FOFLITPSCweakprL : (L → List(FOW)) (nondeterministic)
PSCPERSIST_WFLITPSCweakprL : (L → V) × (L → List(FOW))
PSCRUNFLITPSCweakpr :
R1FLITPSCweakcFLITPSCPC
R2FLITPSCweakcFLITPSCPC
R3FLITPSCweakcFLITPSCPC
R4FLITPSCweakcFLITPSCPC
Setset-basics
Tmemorys
Vmemorys
WFOWfV × T → FOW
W1FLITPSCweakcFLITPSCPC
W2FLITPSCweakcFLITPSCPC
W3FLITPSCweakcFLITPSCPC
W4FLITPSCweakcFLITPSCPC
W5FLITPSCweakcFLITPSCPC
W6FLITPSCweakcFLITPSCPC
W7FLITPSCweakcFLITPSCPC
aFLITPSCweakvFLITPSCAction
atomicW1FLITPSCweakcFLITPSCAction
atomicW5FLITPSCweakcFLITPSCAction
callPSCCOMPLETEFLITPSCweakfT → FLITPSCAction
callPSCRUNFLITPSCweakfT → FLITPSCAction
crashedFLITPSCweakcFLITPSCPC
ctrFLITPSCweakvL → Nat
ctrDecPSCFLITPSCweakfT × L → FLITPSCAction
ctrIncPSCFLITPSCweakfT × L → FLITPSCAction
ctrReadPSCFLITPSCweakfT × L × Nat → FLITPSCAction
ctrokFLITPSC-predsp(L → Type(Nat)) × (L → Type(Set(T)))
disjlist-duppList('a) × List('a)
disjointset-unionpSet('a) × Set('a)
doReadPSCFLITPSCweakfT × L × V → FLITPSCAction
doWritePSCFLITPSCweakfT × L × V → FLITPSCAction
dupslist-duppList('a)
fillfirstlist-lastfNat × 'a × List('a) → List('a)
firstPersistWFLITPSCweak-predsfList(FOW) → Nat
flitpscInitFLITPSCweakpFLITPSCState
flitpscStepFLITPSCweakpFLITPSCState × FLITPSCAction × FLITPSCState
fowFLITPSCweakvFOW
fowlFLITPSCweakvList(FOW)
fromelist-delfList('a) × 'a → List('a)
glbFLITPSCweakvNat
globalPSCCRASHFLITPSCweakcFLITPSCAction
globalPSCPERSIST_FOFLITPSCweakfL → FLITPSCAction
globalPSCPERSIST_WFLITPSCweakfL → FLITPSCAction
gsFLITPSCweakvFLITPSCGState
gstateFLITPSCweakvFLITPSCGState
gstepfFLITPSCweakfFLITPSCGState × FLITPSCLState × FLITPSCPC × FLITPSCAction → FLITPSCGState
idleFLITPSCweakcFLITPSCPC
invFLITPSCREADFLITPSCweakfT × L → FLITPSCAction
invFLITPSCREADlFLITPSCweakvL
invFLITPSCWRITEFLITPSCweakfT × L × V → FLITPSCAction
invFLITPSCWRITElFLITPSCweakvL
invFLITPSCWRITEvFLITPSCweakvV
invPSCPERSIST_FOlFLITPSCweakvL
invPSCPERSIST_WlFLITPSCweakvL
isPersistFOFLITPSCweak-predspNat × List(FOW)
lFLITPSCweakvL
locFLITPSCweakvNat
lsFLITPSCweakvFLITPSCLState
lsfFLITPSCweakvT → FLITPSCLState
lstepFLITPSCweakpFLITPSCGState × FLITPSCLState × FLITPSCPC × FLITPSCAction × FLITPSCGState × FLITPSCLState × FLITPSCPC
lstepfFLITPSCweakfFLITPSCGState × FLITPSCLState × FLITPSCPC × FLITPSCAction → FLITPSCLState
memFLITPSCweakvL → V
mkFLITPSCgsFLITPSCweakf(L → V) × (L → List(FOW)) × (L → Nat) × (L → Set(T)) × (L → Set(T)) → FLITPSCGState
mkFLITPSClsFLITPSCweakfT × L × V → FLITPSCLState
mklistlist-lastf'a × Nat → List('a)
mkstateFLITPSCweakfFLITPSCGState × (T → FLITPSCLState) × (T → FLITPSCPC) → FLITPSCState
nFLITPSCweakvNat
noPendingFLITPSC-predspT × (L → Type(List(FOW)))
noPendingWFLITPSC-predspT × (L → Type(List(FOW)))
notMemberFLITPSC-predspT × (L → Type(Set(T)))
oneMemberFLITPSC-predspT × L × (L → Type(Set(T)))
onePendingWFLITPSC-predspT × L × (L → Type(List(FOW)))
pFLITPSCweakvL → List(FOW)
pcFLITPSCweakvFLITPSCPC
pcfFLITPSCweakvT → FLITPSCPC
pcstepfFLITPSCweakfFLITPSCGState × FLITPSCLState × FLITPSCPC × FLITPSCAction → FLITPSCPC
pendingOkFLITPSC-predsp(L → Type(List(FOW)))
permlist-permpList('a) × List('a)
plinFLITPSCweakvL → List(FOW)
preFLITPSCweakpFLITPSCGState × FLITPSCLState × FLITPSCPC × FLITPSCAction
pwbPSCFLITPSCweakfT × L → FLITPSCAction
readersFLITPSCweakvL → Set(T)
readyFLITPSCweakcFLITPSCPC
relyFLITPSCweak-predspT × List(FOW) × List(FOW)
relyFLITPSCweak-predspT × (L → Type(List(FOW))) × (L → Type(List(FOW)))
relypFLITPSC-predspT × List(FOW) × List(FOW)
relypFLITPSC-predspT × (L → Type(List(FOW))) × (L → Type(List(FOW)))
relywsFLITPSC-predspT × (L → Type(Set(T))) × (L → Type(Set(T)))
relywsFLITPSC-predspT × Set(T) × Set(T)
retFLITPSCREADFLITPSCweakfT × V → FLITPSCAction
retFLITPSCREADvFLITPSCweakvV
retFLITPSCWRITEFLITPSCweakfT → FLITPSCAction
revlist-lastfList('a) → List('a)
sFLITPSCweakvFLITPSCState
sfencePSCFLITPSCweakfT → FLITPSCAction
tFLITPSCweakvT
tidFLITPSCweakvT
tsFLITPSCweakvSet(T)
vFLITPSCweakvV
wlFLITPSCweakvL
writersFLITPSCweakvL → Set(T)
writersOkFLITPSC-predsp(L → Type(List(FOW))) × (L → Type(Set(T)))