| afs-cons(cache_dirs0, cache_files0), afs-cons(cache_dirs0, (cache_files0 ⊕ cache_pcache0) ⊕ cache_icache0), dcache-cons(cache_dcache0, cache_dirs0, cache_files0), icache-cons(cache_icache0, cache_dirs0, cache_files0), pcache-cons(cache_pcache0, cache_dirs0, cache_files0), synced(cache_dirs0, cache_icache0, cache_pcache0), cache_sync0 → synced(cache_files0, cache_icache0, cache_pcache0) ⊦ (ino ∈ cache_dirs0 → (¬ ino ∈ orphans(cache_dirs0, (cache_files0 ⊕ cache_pcache0) ⊕ cache_icache0) ↔ ¬ ino ∈ orphans(cache_dirs0, cache_files0))) ∧ ( ino ∈ cache_dirs0 ∧ ¬ ino ∈ orphans(cache_dirs0, (cache_files0 ⊕ cache_pcache0) ⊕ cache_icache0) → cache_dirs0[ino] = (cache_dirs0 \ orphans(cache_dirs0, cache_files0))[ino]) |
afs-cons(cache_dirs0, (cache_files0 ⊕ cache_pcache0) ⊕ cache_icache0), afs-cons(cache_dirs0, cache_files0), dcache-cons(cache_dcache0, cache_dirs0, cache_files0), icache-cons(cache_icache0, cache_dirs0, cache_files0), pcache-cons(cache_pcache0, cache_dirs0, cache_files0), synced(cache_dirs0, cache_icache0, cache_pcache0), ino ∈ cache_dirs0, cache_sync0 → synced(cache_files0, cache_icache0, cache_pcache0) ⊦ ¬ ino ∈ orphans(cache_dirs0, (cache_files0 ⊕ cache_pcache0) ⊕ cache_icache0) ↔ ¬ ino ∈ orphans(cache_dirs0, cache_files0)
afs-cons(cache_dirs0, (cache_files0 ⊕ cache_pcache0) ⊕ cache_icache0), afs-cons(cache_dirs0, cache_files0), dcache-cons(cache_dcache0, cache_dirs0, cache_files0), icache-cons(cache_icache0, cache_dirs0, cache_files0), pcache-cons(cache_pcache0, cache_dirs0, cache_files0), synced(cache_dirs0, cache_icache0, cache_pcache0), ino ∈ cache_dirs0, cache_sync0 → synced(cache_files0, cache_icache0, cache_pcache0) ⊦ cache_dirs0[ino] = (cache_dirs0 \ orphans(cache_dirs0, cache_files0))[ino], ino ∈ orphans(cache_dirs0, (cache_files0 ⊕ cache_pcache0) ⊕ cache_icache0)