1:-include(library('ec_planner/ec_test_incl')). 2:-expects_dialect(pfc). 3 % loading(always,'includes/SaaSPatterns/PolicyPatterns/policyModel.e'). 4 5% event E_policyPermit(policy) 6 % event(e_policyPermit(policy)). 7==> mpred_prop(e_policyPermit(policy),event). 8==> meta_argtypes(e_policyPermit(policy)). 9 10% event E_policyDeny(policy) 11 % event(e_policyDeny(policy)). 12==> mpred_prop(e_policyDeny(policy),event). 13==> meta_argtypes(e_policyDeny(policy)). 14 15% event E_PolicyDoesNotApply(policy) 16 % event(e_policyDoesNotApply(policy)). 17==> mpred_prop(e_policyDoesNotApply(policy),event). 18==> meta_argtypes(e_policyDoesNotApply(policy)). 19 20% fluent F_policyPermitted(policy) 21 % fluent(f_policyPermitted(policy)). 22==> mpred_prop(f_policyPermitted(policy),fluent). 23==> meta_argtypes(f_policyPermitted(policy)). 24 25% fluent F_policyDenied(policy) 26 % fluent(f_policyDenied(policy)). 27==> mpred_prop(f_policyDenied(policy),fluent). 28==> meta_argtypes(f_policyDenied(policy)). 29 30% fluent F_policyNotApplicable(policy) 31 % fluent(f_policyNotApplicable(policy)). 32==> mpred_prop(f_policyNotApplicable(policy),fluent). 33==> meta_argtypes(f_policyNotApplicable(policy)). 34 35% predicate PolicyHasRules(policy,rule) 36 % predicate(policyHasRules(policy,rule)). 37==> mpred_prop(policyHasRules(policy,rule),predicate). 38==> meta_argtypes(policyHasRules(policy,rule)). 39 40 41% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/includes/SaaSPatterns/PolicyPatterns/policyModel.e:11 42% [policy,time] 43 % Initiates(E_policyPermit(policy),F_policyPermitted(policy),time). 44axiom(initiates(e_policyPermit(Policy), f_policyPermitted(Policy), Time), 45 []). 46 47 48% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/includes/SaaSPatterns/PolicyPatterns/policyModel.e:12 49% [policy,time] 50 % Initiates(E_policyDeny(policy),F_policyDenied(policy),time). 51axiom(initiates(e_policyDeny(Policy), f_policyDenied(Policy), Time), 52 []). 53 54 55% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/includes/SaaSPatterns/PolicyPatterns/policyModel.e:13 56% [policy,time] 57 % Initiates(E_PolicyDoesNotApply(policy),F_policyNotApplicable(policy),time). 58axiom(initiates(e_policyDoesNotApply(Policy), f_policyNotApplicable(Policy), Time), 59 []). 60 61 62% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/includes/SaaSPatterns/PolicyPatterns/policyModel.e:17 63%; 'Rule combaning algorithm (stategy) : All Permit' 64% [policy,rule,time] 65 % Happens(E_policyPermit(policy),time) & PolicyHasRules(policy,rule) -> HoldsAt(F_RulePermitted(rule),time). 66% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/includes/SaaSPatterns/PolicyPatterns/policyModel.e:18 67axiom(holds_at(f_rulePermitted(Rule), Time), 68 69 [ happens(e_policyPermit(Policy), Time), 70 policyHasRules(Policy, Rule) 71 ]). 72 73 74% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/includes/SaaSPatterns/PolicyPatterns/policyModel.e:21 75%; 'Rule combaning algorithm (stategy) : Deny override (s il existe au moin une règle satisfaite)' 76% [policy,time] 77 % Happens(E_policyDeny(policy),time) -> {rule} PolicyHasRules(policy,rule) & HoldsAt(F_RuleDenied(rule),time). 78% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/includes/SaaSPatterns/PolicyPatterns/policyModel.e:22 79axiom(requires(e_policyDeny(Policy), Time), 80 81 [ policyHasRules(Policy, Rule), 82 holds_at(f_ruleDenied(Rule), Time) 83 ]). 84 85 86% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/includes/SaaSPatterns/PolicyPatterns/policyModel.e:25 87%; 'Rule combaning algorithm (stategy) : All not Applicable' 88% [policy,time,rule] 89 % Happens(E_PolicyDoesNotApply(policy),time) & PolicyHasRules(policy,rule) -> HoldsAt(F_RuleNotApplicable(rule),time). 90% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/includes/SaaSPatterns/PolicyPatterns/policyModel.e:26 91axiom(holds_at(f_ruleNotApplicable(Rule), Time), 92 93 [ happens(e_policyDoesNotApply(Policy), Time), 94 policyHasRules(Policy, Rule) 95 ]). 96 97 98% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/includes/SaaSPatterns/PolicyPatterns/policyModel.e:29 99% [policy] 100% !HoldsAt(F_policyPermitted(policy),0). 101 % not(initially(f_policyPermitted(Policy))). 102axiom(not(initially(f_policyPermitted(PolicyPermitted_Ret))), 103 []). 104 105 106% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/includes/SaaSPatterns/PolicyPatterns/policyModel.e:30 107% [policy] 108% !HoldsAt(F_policyDenied(policy),0). 109 % not(initially(f_policyDenied(Policy))). 110axiom(not(initially(f_policyDenied(PolicyDenied_Ret))), 111 []). 112 113 114% From /opt/logicmoo_workspace/packs_sys/small_adventure_games/prolog/ec_planner/includes/SaaSPatterns/PolicyPatterns/policyModel.e:31 115% [policy] 116% !HoldsAt(F_policyNotApplicable(policy),0). 117 % not(initially(f_policyNotApplicable(Policy))). 118axiom(not(initially(f_policyNotApplicable(PolicyNotApplicable_Ret))), 119 [])