| dirs0 ⊥ dirs1 ⊦ ∀ alink. alink ∈ links(ino, dirs0 ∪ dirs1) ↔ alink ∈ links(ino, dirs0) ∪ links(ino, dirs1) |
dirs0 ⊥ dirs1 ⊦ (alink.pino ∈ dirs0 ∨ alink.pino ∈ dirs1) ∧ alink.name ∈ (alink.pino ∈ dirs0 ⊃ dirs0[alink.pino];dirs1[alink.pino]).entries ∧ ino = (alink.pino ∈ dirs0 ⊃ dirs0[alink.pino];dirs1[alink.pino]).entries[alink.name] ↔ alink ∈ links(ino, dirs0) ∪ links(ino, dirs1)
Used simplifier rules: links: ⊦ alink ∈ links(ino, dirs) ↔ alink.pino ∈ dirs ∧ alink.name ∈ dirs[alink.pino].entries ∧ ino = dirs[alink.pino].entries[alink.name];%ino ∈ dirs ∪ dirs0 ⊦ dirs ⊥ dirs0 → (dirs ∪ dirs0)[ino] = (ino ∈ dirs ⊃ dirs[ino];dirs0[ino]); (s)% ⊦ dirs ⊥ dirs0 → (ino ∈ dirs ∪ dirs0 ↔ ino ∈ dirs ∨ ino ∈ dirs0); (s)