Semantic diffing of formal policies with anti-unification
A textual diff of two formal policies flags every cosmetic change and hides the one that alters behavior. This post shows how to compute a symbolic, deterministic semantic diff with an open-source anti-unification engine, so reviewers see only the genuine disagreements between two candidate authorization policies.
When examining formal policies, a textual diff may highlight syntactic changes that don't impact meaning. These changes, such as reordering conjuncts, swapping arguments of equality, or using equivalent predicates, can make a file appear altered, while a real change in behavior, like an "or" where "and" is required, could be overlooked. A semantic diff reveals both commonalities and differences between two policies.
Written by urgent.news from AWS Machine Learning's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.