| path∃(`docs2store', r, r1, putByteArray(bytes .rest, r2, i + 1, st)[r2 -- i ', byteval(bytes .first)]), okbytearray(r2, st), ∀ st, i, r2, r1, r, bytes0. # bytes0 < # bytes → (path∃(`docs2store', r, r1, putByteArray(bytes0, r2, i, st)) ∧ okbytearray(r2, st) → junkref(`docs2store', r, st) ∨ path∃(`docs2store', r, r1, st)) ⊦ bytes = [], junkref(`docs2store', r, st), path∃(`docs2store', r, r1, st) |
bytes = by + bytes1, path∃(`docs2store', r, r1, putByteArray(bytes1, r2, i + 1, st)[r2 -- i ', byteval(by)]), okbytearray(r2, st), ∀ st, i, r2, r1, r, bytes0. # bytes0 < # bytes → (path∃(`docs2store', r, r1, putByteArray(bytes0, r2, i, st)) ∧ okbytearray(r2, st) → junkref(`docs2store', r, st) ∨ path∃(`docs2store', r, r1, st)) ⊦ bytes = [], junkref(`docs2store', r, st), path∃(`docs2store', r, r1, st)
[[CONCRETESIMPRULES : ([CSIMPELIM : bytes ≠ [] ⊦ by = bytes .first ∧ bytes0 = bytes .rest ↔ bytes = by + bytes0])], [EXTRATERMS : (bytes, by, bytes1)]]