liveBook · Manning

Symbolic reasoning

As explained in Authorization in Action

Symbolic reasoning analyzes general formulas representing sets of possible inputs and behaviors instead of checking only concrete examples.

Symbolic reasoning analyzes authorization rules across every schema-defined combination of principals, actions, resources, contexts, and relationships—not just concrete requests such as whether Alice can approve invoice 123. section 7.4.6

A symbolic policy analysis workflow:

  • Translate declarative policies into mathematical formulas representing possible requests. section 7.4.6
  • Use an SMT (Satisfiability Modulo Theories) solver to test whether those formulas can be satisfied. section 7.4.6
  • Inspect violations through concrete counterexamples, such as unauthorized invoice approval or deployment from an unmanaged device. section 7.4.6

How Authorization in Action covers it

How deep it goes
Translates policies into formulas and checks full request spaces, stopping short of general-purpose programming flexibility.
Examples
Tests invoice approval, unmanaged-device deployment access, and permission preservation after policy refactoring.
What it assumes
Assumes declarative policies and schemas, while introducing satisfiability checking through SMT solver terminology.
What you can do after
Diagnose policy failures and verify broad authorization properties using Cedar analysis tools and solver-generated counterexamples.
How it connects
Connects Cedar policies with schemas, SMT solvers, deterministic evaluation, counterexamples, and authorization policy analysis.

Also explained in

Compare how 3 books explain symbolic reasoning →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Authorization in Action. The section links point to the parts of the book it draws on.