Shared definitions and lemmas for batched evaluator theorems.
@[reducible, inline]
A well behaved entity loader
- Loads all the requested entities, returning none for missing entities
- Refines the backing entity store
The first condition is required for convergence of batched evaluation, which has not been proven. It is unused in the code base at the moment.
Equations
- One or more equations did not get rendered due to their size.
Instances For
theorem
Cedar.Thm.environment?_schema
{schema : Validation.Schema}
{pty rty : Spec.EntityType}
{act : Spec.EntityUID}
{env : Validation.TypeEnv}
(h : schema.environment? pty rty act = some env)
:
Schema.environment? carries the schema's entity and action types through unchanged.
theorem
Cedar.Thm.actionEntities_refines
{env : Validation.TypeEnv}
{es : Spec.Entities}
(hwf : env.WellFormed)
(hinst : InstanceOfSchema es env)
:
EntitiesRefine es (TPE.actionEntities env.acts)
theorem
Cedar.Thm.as_partial_request_refines
{req : Spec.Request}
:
RequestRefines req req.asPartialRequest
theorem
Cedar.Thm.entities_refine_append
(es : Spec.Entities)
(m1 m2 : TPE.PartialEntities)
:
EntitiesRefine es m1 → EntitiesRefine es m2 → EntitiesRefine es (m2 ++ m1)
theorem
Cedar.Thm.direct_request_and_entities_refine
(req : Spec.Request)
(es : Spec.Entities)
:
RequestAndEntitiesRefine req es req.asPartialRequest es.asPartial