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(_,_). % :- format('trust: ~w ~w ~n',[X,Y]).
   19
   20trusts(X,Y) :- trusts_directed(X,Y).%, format('~w ~w ~n',[X,Y]).
   21trusts(X,Y) :- trusts_directed(Y,X).%, format('~w ~w ~n',[X,Y]).
   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)