Documentation

Cedar.Thm.SymCC.Verifier.VerifyIsAuthorized

This file proves the soundness and completeness of Cedar.SymCC.verifyIsAuthorized for well-behaved verification queries. This enables proving soundness and completenss of analyses built on verifyIsAuthorized by proving that their queries are well-behaved. #

Equations
  • One or more equations did not get rendered due to their size.
Instances For
    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          theorem Cedar.Thm.verifyIsAuthorized_is_sound {φ : SymCC.TermSymCC.TermSymCC.Term} {f : Spec.ResponseSpec.ResponseBool} {ps₁ ps₂ : Spec.Policies} {εnv : SymCC.SymEnv} {asserts : SymCC.Asserts} :
          WellBehavedIsAuthorizedQuery φ fεnv.StronglyWellFormedForPolicies ps₁εnv.StronglyWellFormedForPolicies ps₂SymCC.verifyIsAuthorized φ ps₁ ps₂ εnv = Except.ok assertsεnv asserts∀ (env : Spec.Env), env∈ᵢεnvenv.StronglyWellFormedForPolicies ps₁env.StronglyWellFormedForPolicies ps₂f (Spec.isAuthorized env.request env.entities ps₁) (Spec.isAuthorized env.request env.entities ps₂) = true