| tree[parent(p0)].dir?, count(fid, tree.fids) + count(fid, tree1.fids) < count(fid, tree[p0].fids), p0 ∈ tree, ∀ fid. count(fid, tree[p0].fids) ≤ count(fid, tree.fids) ⊦ p0 = ε, sdt0.fids ∪ ((tree.fids ∪ tree1.fids) \ tree[p0].fids) = ((sdt0.fids ∪ tree.fids) ∪ tree1.fids) \ tree[p0].fids, str ∈ sdt0 |
Used simplifier rules: fle: ⊦ m < n ∧ n ≤ n0 → m < n0; (forward) from specification nat[directory-tree-inst]% ⊦ ¬ m + n < m; (s)%a: ⊦ (m + n0) + n1 = m + n0 + n1; from specification nat-basic[directory-tree-inst]%c: ⊦ m + n = n + m; from specification nat-basic[directory-tree-inst]%fidb ⊆ fidb0 ⊦ (fidb0 \ fidb) ∪ fidb1 = (fidb0 ∪ fidb1) \ fidb; (s)%union-ass: ⊦ fidb ∪ fidb0 ∪ fidb1 = (fidb ∪ fidb0) ∪ fidb1; from specification bag-union[fidbag]%union-com: ⊦ fidb ∪ fidb0 = fidb0 ∪ fidb; from specification bag-union[fidbag] Used terms: fid