@@ -243,10 +243,13 @@ let obs = function
243
243
Domain. Pos p -> p
244
244
| _ -> raise (ExceptDefn. Malformed_Args (" obs" ))
245
245
246
- let negative_influence = function
246
+ let negative_influence env = function
247
247
(Domain. Pos p1 , Domain. Pos p2 ) ->
248
- let t = Concret. concret p1 in
249
- let () = if (! Param. debug_mode) then TraceConcret. print t in
248
+ let sigs = Model. signatures env in
249
+ let t = Concret. concret p1 sigs in
250
+ let pre_env = Pattern. minimal_env sigs contact_map in
251
+ let pattern_trace = TraceConcret. pattern_trace contact_map sigs pre_env t in
252
+ (* let () = if (!Param.debug_mode) then TraceConcret.print t sigs in*)
250
253
true
251
254
| _ -> raise(ExceptDefn. Malformed_Args (" negative_influence" ))
252
255
@@ -260,7 +263,7 @@ let check_pred p =
260
263
(String. equal is_label " label" )
261
264
else false
262
265
263
- let interpretation t =
266
+ let interpretation env t =
264
267
let domain = (List. map (fun p -> Domain. Pos (p)) (Domain. get_posets(t)))@
265
268
(List. map (fun e -> Domain. Ev (e)) (Domain. get_events(t))) in
266
269
let func f args =
@@ -284,6 +287,6 @@ let interpretation t =
284
287
| ("equal_events" , [e1 ;e2 ]) -> equal_events (e1,e2)
285
288
| ("sub_posets" , [p1 ;p2 ]) -> sub_poset (p1,p2)
286
289
| ("negative_influence" , [p1 ;p2 ]) ->
287
- negative_influence (p1,p2)
290
+ negative_influence env (p1,p2)
288
291
| _ -> raise (ExceptDefn. Uninterpreted_Predicate (p)) in
289
292
(func,pred,domain)
0 commit comments