def mnt.gapp

bend-osdev-apparmor@0.1.0.0 · PROOF.bend:3739

import bend-osdev-apparmor@0.1.0.0/PROOF.bend as PROOF
import Base
import bend-osdev-apparmor@0.1.0.0/perm.bend as P
import bend-osdev-apparmor@0.1.0.0/rule_mount.bend as RM

3739def mnt.gapp(+xs: List<&2, RM.AaMountRule>, +ys: List<&2, RM.AaMountRule>, +q: RM.AaMountQuery) -> {RM.AaMountRule.grants(RM.AaMountRule.append(xs, ys), q) == P.AaGrant.append(RM.AaMountRule.grants(xs, q), RM.AaMountRule.grants(ys, q)) : List<&2, P.AaGrant>}:
3740  Equal.trans(List<&2, P.AaGrant>, RM.AaMountRule.grants.of(RM.AaMountRule.matching(RM.AaMountRule.append(xs, ys), q)), RM.AaMountRule.grants.of(RM.AaMountRule.append(RM.AaMountRule.matching(xs, q), RM.AaMountRule.matching(ys, q))), P.AaGrant.append(RM.AaMountRule.grants(xs, q), RM.AaMountRule.grants(ys, q)), Equal.cong(List<&2, RM.AaMountRule>, List<&2, P.AaGrant>, x => RM.AaMountRule.grants.of(x), RM.AaMountRule.matching(RM.AaMountRule.append(xs, ys), q), RM.AaMountRule.append(RM.AaMountRule.matching(xs, q), RM.AaMountRule.matching(ys, q)), mnt.match_app(xs, ys, q)), mnt.gof_app(RM.AaMountRule.matching(xs, q), RM.AaMountRule.matching(ys, q)))

Uses (13)

Used by (1)