You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
simpl_assertion is a tactic used to automatically unfold and evaluate Coq functions defined by Verifiable P4 that manipulate the assertions, including read/write, member accessing, local variable and extern predicate filtering, etc. For example, a predicate generated after applying a program logic rule looks like
In this assertion, functions like eval_write_var, filter_in, update, get, str are defined to process programs and assertions. After running simpl_assertion, it is simplified to
The main problem is that cbn is not a straightforward evaluation tactic, so it is much slower than cbv to perform the same computation. But we cannot use cbv in this case, because cbv also tries beta-reduction in the inner terms. In the above example, simpl_assertion takes 0.229s.
The text was updated successfully, but these errors were encountered:
simpl_assertion
is a tactic used to automatically unfold and evaluate Coq functions defined by Verifiable P4 that manipulate the assertions, including read/write, member accessing, local variable and extern predicate filtering, etc. For example, a predicate generated after applying a program logic rule looks likeIn this assertion, functions like
eval_write_var
,filter_in
,update
,get
,str
are defined to process programs and assertions. After runningsimpl_assertion
, it is simplified toThe current implementation of
simpl_assertion
isThe main problem is that
cbn
is not a straightforward evaluation tactic, so it is much slower thancbv
to perform the same computation. But we cannot usecbv
in this case, becausecbv
also tries beta-reduction in the inner terms. In the above example,simpl_assertion
takes 0.229s.The text was updated successfully, but these errors were encountered: