Documentation

Cedar.Thm.SymCC.Env.ofEnv

This file contains some facts about SymEnv.ofEnv.

If some entity exists in Γ, then it must also exists in SymEnv.ofEnv Γ with the corresponding SymEntityData

Lemma that if a concrete Γ : TypeEnv has tags for a particular entity type, then SymEnv.ofEnv Γ must also have tags for it

Show that SymEnv.ofEnv Γ preserves the result of attribute lookup

@[irreducible]

TermType.ofType of well-formed CedarType is well-formed (under the compiled SymEnv).

@[irreducible]

TermType.ofType is a right inverse of CedarType.cedarType? when applied to a well-formed CedarType.

@[irreducible]

Given a well-formed environment and a well-typed expression in that environment, we show that the expression satisfies ValidRefs

@[irreducible]

Removing liftBoolTypes does not affect ValidRefs

Main well-formedness theorem for SymEnv.ofEnv, which says that if the input environment Γ is well-formed, then SymEnv.ofEnv Γ is well-formed.

A stronger version of ofEnv_is_wf that shows that SymEnv.ofEnv Γ is strongly well-formed.

If an expression is well-typed in a concrete, well-formed TypeEnv, then it must also be well-formed in the compiled symbolic environment.

Similar to ofEnv_swf_for_expr but for StronglyWellFormedForPolicy.

Similar to ofEnv_swf_for_expr but for StronglyWellFormedForPolicies.