1:-include(library('ec_planner/ec_test_incl')).    2:-expects_dialect(pfc).    3
    4 /*  loading(always,
    5   	'includes/SaaSPatterns/PolicySetPatterns/policySetModel.e').
    6 */
    7
    8% event E_policysetPermit(policyset)
    9 %  event(e_policysetPermit(policyset)).
   10==> mpred_prop(e_policysetPermit(policyset),event).
   11==> meta_argtypes(e_policysetPermit(policyset)).
   12
   13% event E_policysetDeny(policyset)
   14 %  event(e_policysetDeny(policyset)).
   15==> mpred_prop(e_policysetDeny(policyset),event).
   16==> meta_argtypes(e_policysetDeny(policyset)).
   17
   18% event E_policysetDontApply(policyset)
   19 %  event(e_policysetDontApply(policyset)).
   20==> mpred_prop(e_policysetDontApply(policyset),event).
   21==> meta_argtypes(e_policysetDontApply(policyset)).
   22
   23% fluent F_policysetPermitted(policyset)
   24 %  fluent(f_policysetPermitted(policyset)).
   25==> mpred_prop(f_policysetPermitted(policyset),fluent).
   26==> meta_argtypes(f_policysetPermitted(policyset)).
   27
   28% fluent F_policysetDenied(policyset)
   29 %  fluent(f_policysetDenied(policyset)).
   30==> mpred_prop(f_policysetDenied(policyset),fluent).
   31==> meta_argtypes(f_policysetDenied(policyset)).
   32
   33% fluent F_policySetNotApplicable(policyset)
   34 %  fluent(f_policySetNotApplicable(policyset)).
   35==> mpred_prop(f_policySetNotApplicable(policyset),fluent).
   36==> meta_argtypes(f_policySetNotApplicable(policyset)).
   37
   38% predicate PolicysetHaspolicies(policyset,policy)
   39 %  predicate(policysetHaspolicies(policyset,policy)).
   40==> mpred_prop(policysetHaspolicies(policyset,policy),predicate).
   41==> meta_argtypes(policysetHaspolicies(policyset,policy)).
   42
   43
   44% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/includes/SaaSPatterns/PolicySetPatterns/policySetModel.e:11
   45% [policyset,time]
   46 % Initiates(E_policysetPermit(policyset),F_policysetPermitted(policyset),time).
   47axiom(initiates(e_policysetPermit(Policyset), f_policysetPermitted(Policyset), Time),
   48    []).
   49
   50
   51% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/includes/SaaSPatterns/PolicySetPatterns/policySetModel.e:12
   52% [policyset,time]
   53 % Initiates(E_policysetDeny(policyset),F_policysetDenied(policyset),time).
   54axiom(initiates(e_policysetDeny(Policyset), f_policysetDenied(Policyset), Time),
   55    []).
   56
   57
   58% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/includes/SaaSPatterns/PolicySetPatterns/policySetModel.e:13
   59% [policyset,time]
   60 % Initiates(E_policysetDontApply(policyset),F_policySetNotApplicable(policyset),time).
   61axiom(initiates(e_policysetDontApply(Policyset), f_policySetNotApplicable(Policyset), Time),
   62    []).
   63
   64
   65% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/includes/SaaSPatterns/PolicySetPatterns/policySetModel.e:17
   66%; 'policies combaning algorithm (stategy) : All Permit'
   67% [policyset,policy,time]
   68 % Happens(E_policysetPermit(policyset),time) & PolicysetHaspolicies(policyset,policy) -> HoldsAt(F_policyPermitted(policy),time).
   69% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/includes/SaaSPatterns/PolicySetPatterns/policySetModel.e:18
   70axiom(holds_at(f_policyPermitted(Policy), Time),
   71   
   72    [ happens(e_policysetPermit(Policyset), Time),
   73      policysetHaspolicies(Policyset, Policy)
   74    ]).
   75
   76
   77% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/includes/SaaSPatterns/PolicySetPatterns/policySetModel.e:21
   78%; 'policies combaning algorithm (stategy) : Deny override'
   79% [policyset,time]
   80 % Happens(E_policysetDeny(policyset),time) -> {policy}  PolicysetHaspolicies(policyset,policy) & HoldsAt(F_policyDenied(policy),time).
   81% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/includes/SaaSPatterns/PolicySetPatterns/policySetModel.e:22
   82axiom(requires(e_policysetDeny(Policyset), Time),
   83   
   84    [ policysetHaspolicies(Policyset, Policy),
   85      holds_at(f_policyDenied(Policy), Time)
   86    ]).
   87
   88
   89% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/includes/SaaSPatterns/PolicySetPatterns/policySetModel.e:25
   90%; 'policies combaning algorithm (stategy) : All Permit'
   91% [policyset,policy,time]
   92 % Happens(E_policysetDontApply(policyset),time) & PolicysetHaspolicies(policyset,policy) -> HoldsAt(F_policyNotApplicable(policy),time).
   93% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/includes/SaaSPatterns/PolicySetPatterns/policySetModel.e:26
   94axiom(holds_at(f_policyNotApplicable(Policy), Time),
   95   
   96    [ happens(e_policysetDontApply(Policyset), Time),
   97      policysetHaspolicies(Policyset, Policy)
   98    ]).
   99
  100
  101% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/includes/SaaSPatterns/PolicySetPatterns/policySetModel.e:29
  102% [policyset]
  103% !HoldsAt(F_policysetPermitted(policyset),0).
  104 %  not(initially(f_policysetPermitted(Policyset))).
  105axiom(not(initially(f_policysetPermitted(PolicysetPermitted_Ret))),
  106    []).
  107
  108
  109% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/includes/SaaSPatterns/PolicySetPatterns/policySetModel.e:30
  110% [policyset]
  111% !HoldsAt(F_policysetDenied(policyset),0).
  112 %  not(initially(f_policysetDenied(Policyset))).
  113axiom(not(initially(f_policysetDenied(PolicysetDenied_Ret))),
  114    []).
  115
  116
  117% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/includes/SaaSPatterns/PolicySetPatterns/policySetModel.e:31
  118% [policyset]
  119% !HoldsAt(F_policySetNotApplicable(policyset),0).
  120 %  not(initially(f_policySetNotApplicable(Policyset))).
  121axiom(not(initially(f_policySetNotApplicable(PolicySetNotApplicable_Ret))),
  122    [])