1:- use_module(library(pita)).
2
3:- pita.
4
5:- begin_lpad.
6
7marketed(theo).
8marketed(bernd).
9marketed(guy).
10marketed(ingo).
11marketed(angelika).
12marketed(martijn).
13marketed(laura).
14marketed(kurt).
15
16% Probabilistic facts
170.2 :: buy_from_marketing(_). % :- format('market: ~w ~n',[X]).
180.3 :: buy_from_trust(_,_). 19
20trusts(X,Y) :- trusts_directed(X,Y). 21trusts(X,Y) :- trusts_directed(Y,X). 22
23trusts_directed(bernd,ingo).
24trusts_directed(ingo,theo).
25trusts_directed(theo,angelika).
26trusts_directed(bernd,martijn).
27trusts_directed(ingo,martijn).
28trusts_directed(martijn,guy).
29trusts_directed(guy,theo).
30trusts_directed(guy,angelika).
31trusts_directed(laura,ingo).
32trusts_directed(laura,theo).
33trusts_directed(laura,guy).
34trusts_directed(laura,martijn).
35trusts_directed(kurt,bernd).
36
37buys(X):-
38 marketed(X),
39 buy_from_marketing(X).
40buys(X):-
41 trusts(X,Y),
42 buy_from_trust(X,Y),
43 buys(Y).
44
45:- end_lpad.
46
47compute_probs(PB,PI,PT,PA,PG,PM,PL,PK):-
48 prob(buys(bernd),PB),
49 prob(buys(ingo),PI),
50 prob(buys(theo),PT),
51 prob(buys(angelika),PA),
52 prob(buys(guy),PG),
53 prob(buys(martijn),PM),
54 prob(buys(laura),PL),
55 prob(buys(kurt),PK)