PROOF.mnt.inc: def of bend-osdev-apparmor@0.1.0.0 Import: import bend-osdev-apparmor@0.1.0.0/PROOF.bend as PROOF Lines 3742-3743 of bend-osdev-apparmor@0.1.0.0/PROOF.bend: https://jend.leeeet.dev/read.txt?path=bend-osdev-apparmor@0.1.0.0/PROOF.bend&start_line=3742&end_line=3743 import Base import bend-osdev-apparmor@0.1.0.0/perm.bend as P import bend-osdev-apparmor@0.1.0.0/options.bend as O import bend-osdev-apparmor@0.1.0.0/profile.bend as PR import bend-osdev-apparmor@0.1.0.0/eval.bend as V import bend-osdev-apparmor@0.1.0.0/rule_mount.bend as RM def mnt.inc(+opts: O.AaOptions, +flags: PR.AaFlags, +req: P.AaPerms, +xs: List<&2, RM.AaMountRule>, +ys: List<&2, RM.AaMountRule>, +q: RM.AaMountQuery) -> {V.AaEval.decide(opts, flags, req, RM.AaMountRule.grants(RM.AaMountRule.append(RM.AaMountRule.append(xs, ys), ys), q)) == V.AaEval.decide(opts, flags, req, RM.AaMountRule.grants(RM.AaMountRule.append(xs, ys), q)) : V.AaDecision}: Equal.trans(V.AaDecision, V.AaEval.decide(opts, flags, req, RM.AaMountRule.grants(RM.AaMountRule.append(RM.AaMountRule.append(xs, ys), ys), q)), V.AaEval.decide(opts, flags, req, P.AaGrant.append(P.AaGrant.append(RM.AaMountRule.grants(xs, q), RM.AaMountRule.grants(ys, q)), RM.AaMountRule.grants(ys, q))), V.AaEval.decide(opts, flags, req, RM.AaMountRule.grants(RM.AaMountRule.append(xs, ys), q)), Equal.cong(List<&2, P.AaGrant>, V.AaDecision, x => V.AaEval.decide(opts, flags, req, x), RM.AaMountRule.grants(RM.AaMountRule.append(RM.AaMountRule.append(xs, ys), ys), q), P.AaGrant.append(P.AaGrant.append(RM.AaMountRule.grants(xs, q), RM.AaMountRule.grants(ys, q)), RM.AaMountRule.grants(ys, q)), Equal.trans(List<&2, P.AaGrant>, RM.AaMountRule.grants(RM.AaMountRule.append(RM.AaMountRule.append(xs, ys), ys), q), P.AaGrant.append(RM.AaMountRule.grants(RM.AaMountRule.append(xs, ys), q), RM.AaMountRule.grants(ys, q)), P.AaGrant.append(P.AaGrant.append(RM.AaMountRule.grants(xs, q), RM.AaMountRule.grants(ys, q)), RM.AaMountRule.grants(ys, q)), mnt.gapp(RM.AaMountRule.append(xs, ys), ys, q), Equal.cong(List<&2, P.AaGrant>, List<&2, P.AaGrant>, x => P.AaGrant.append(x, RM.AaMountRule.grants(ys, q)), RM.AaMountRule.grants(RM.AaMountRule.append(xs, ys), q), P.AaGrant.append(RM.AaMountRule.grants(xs, q), RM.AaMountRule.grants(ys, q)), mnt.gapp(xs, ys, q)))), Equal.trans(V.AaDecision, V.AaEval.decide(opts, flags, req, P.AaGrant.append(P.AaGrant.append(RM.AaMountRule.grants(xs, q), RM.AaMountRule.grants(ys, q)), RM.AaMountRule.grants(ys, q))), V.AaEval.decide(opts, flags, req, P.AaGrant.append(RM.AaMountRule.grants(xs, q), RM.AaMountRule.grants(ys, q))), V.AaEval.decide(opts, flags, req, RM.AaMountRule.grants(RM.AaMountRule.append(xs, ys), q)), inc.decide(opts, flags, req, RM.AaMountRule.grants(xs, q), RM.AaMountRule.grants(ys, q)), Equal.cong(List<&2, P.AaGrant>, V.AaDecision, x => V.AaEval.decide(opts, flags, req, x), P.AaGrant.append(RM.AaMountRule.grants(xs, q), RM.AaMountRule.grants(ys, q)), RM.AaMountRule.grants(RM.AaMountRule.append(xs, ys), q), Equal.sym(List<&2, P.AaGrant>, RM.AaMountRule.grants(RM.AaMountRule.append(xs, ys), q), P.AaGrant.append(RM.AaMountRule.grants(xs, q), RM.AaMountRule.grants(ys, q)), mnt.gapp(xs, ys, q))))) Uses (17): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Equal.cong https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Equal.sym https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Equal.trans https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=List https://jend.leeeet.dev/definition.txt?path=bend-osdev-apparmor@0.1.0.0/PROOF.bend&name=inc.decide https://jend.leeeet.dev/definition.txt?path=bend-osdev-apparmor@0.1.0.0/PROOF.bend&name=mnt.gapp https://jend.leeeet.dev/definition.txt?path=bend-osdev-apparmor@0.1.0.0/eval.bend&name=AaDecision https://jend.leeeet.dev/definition.txt?path=bend-osdev-apparmor@0.1.0.0/eval.bend&name=AaEval.decide https://jend.leeeet.dev/definition.txt?path=bend-osdev-apparmor@0.1.0.0/options.bend&name=AaOptions https://jend.leeeet.dev/definition.txt?path=bend-osdev-apparmor@0.1.0.0/perm.bend&name=AaGrant https://jend.leeeet.dev/definition.txt?path=bend-osdev-apparmor@0.1.0.0/perm.bend&name=AaGrant.append https://jend.leeeet.dev/definition.txt?path=bend-osdev-apparmor@0.1.0.0/perm.bend&name=AaPerms https://jend.leeeet.dev/definition.txt?path=bend-osdev-apparmor@0.1.0.0/profile.bend&name=AaFlags https://jend.leeeet.dev/definition.txt?path=bend-osdev-apparmor@0.1.0.0/rule_mount.bend&name=AaMountQuery https://jend.leeeet.dev/definition.txt?path=bend-osdev-apparmor@0.1.0.0/rule_mount.bend&name=AaMountRule https://jend.leeeet.dev/definition.txt?path=bend-osdev-apparmor@0.1.0.0/rule_mount.bend&name=AaMountRule.append https://jend.leeeet.dev/definition.txt?path=bend-osdev-apparmor@0.1.0.0/rule_mount.bend&name=AaMountRule.grants