This file defines theorems related to the inputs of TPE.
- some {α : Type u_1} {p : α → Prop} {o : Option α} (x : α) (heq : o = Option.some x) (h : p x) : PartialIsValid p o
- none {α : Type u_1} {p : α → Prop} {o : Option α} (heq : o = Option.none) : PartialIsValid p o
Instances For
@[simp]
theorem
Cedar.Thm.partial_is_valid_rfl
{α : Type u_1}
{f : α → Bool}
{p : α → Prop}
{o : Option α}
:
(∀ (x : α), f x = true → p x) → TPE.partialIsValid o f = true → PartialIsValid p o
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
def
Cedar.Thm.RequestAndEntitiesRefine
(req : Spec.Request)
(es : Spec.Entities)
(preq : TPE.PartialRequest)
(pes : TPE.PartialEntities)
:
Concrete request req and entities es refine their partial counterparts
peq and pes.
Equations
- Cedar.Thm.RequestAndEntitiesRefine req es preq pes = (Cedar.Thm.RequestRefines req preq ∧ Cedar.Thm.EntitiesRefine es pes)
Instances For
theorem
Cedar.Thm.validatePartialRequest_ok_environment?
{schema : Validation.Schema}
{req : TPE.PartialRequest}
{env : Validation.TypeEnv}
:
theorem
Cedar.Thm.entitiesIsConsistent_implies_refines
{es : Spec.Entities}
{pes : TPE.PartialEntities}
:
TPE.entitiesIsConsistent es pes = true → EntitiesRefine es pes
theorem
Cedar.Thm.requestIsConsistent_implies_refines
{req : Spec.Request}
{preq : TPE.PartialRequest}
:
TPE.requestIsConsistent req preq = true → RequestRefines req preq
theorem
Cedar.Thm.consistent_checks_ensure_refinement
{schema : Validation.Schema}
{req : Spec.Request}
{es : Spec.Entities}
{preq : TPE.PartialRequest}
{pes : TPE.PartialEntities}
:
TPE.isValidAndConsistent schema req es preq pes = Except.ok () → RequestAndEntitiesRefine req es preq pes
Requests and entities that pass isValidAndConsistent satisfy RequestAndEntitiesRefine.