| log-cons(log, fs) ⊦ replay-safe(log, fs, fi ⊖ fo) ∧ replay-log(log, fs, fi ⊖ fo) = ri ⊖ (ro ++ datakey(ino, n)) ↔ replay-cons-strong(fs, ri -- datakey(ino, n), ro, fi, fo, log) |
⊦ replay-cons-strong(fs, ri, ro, fi, fo, log) ↔ replay-safe(log, fs, fi ⊖ fo) ∧ replay(log, fs, fi, fo) = ri ⊖ ro
log-cons(log, fs) ⊦ replay-safe(log, fs, fi ⊖ fo) ∧ replay-log(log, fs, fi ⊖ fo) = ri ⊖ (ro ++ datakey(ino, n)) ↔ replay-safe(log, fs, fi ⊖ fo) ∧ replay(log, fs, fi, fo) = (ri -- datakey(ino, n)) ⊖ ro
Used terms: log, fo, fi, ro, ri -- datakey(ino, n), fs