Traversing Possible Paths of a Computation. #
This file defines functions alwaysWhen and someWhen that allow for traversing a computation's
structure to check some given predicates on each node, using a set of possible outputs for that
traversal. These definitions are Prop not Bool and should usually only be used in proofs,
not in defining an actual computaion.
The file also contains many special cases of these functions like neverFailsWhen.
All the given predicates hold on a computation when queries respond with
elements of possible_outputs q for every query q
Equations
Instances For
One of the given predicates hold on a computation when queries respond with
elements of possible_outputs q for every query q
Equations
Instances For
oa never fails if when responses to queries q are in possible_outputs q.
Equations
Instances For
oa never fails even when queries can output any possible value.
Equations
Instances For
oa might fail when responses to queries q are in possible_outputs q
Equations
Instances For
oa might fail if queries can output any possible value.
Equations
Instances For
Alias of the forward direction of OracleComp.neverFails_query_bind_iff.
Alias of the forward direction of OracleComp.neverFails_bind_iff.