% ---------------------------------------------- % Example 7, Figure 9. outcome(Patient,O) <- in(Patient,Hospital) & prob_outcome_good(Hospital,P) & outcomeOHappens(Patient,P,O). prob outcomeOHappens(Patient,P,good):P. outcomeOHappens(Patient,P,bad) <- ~outcomeOHappens(Patient,P,good). prob_outcome_good(Hospital,Prob) <- global_parameter(V) & prob_outcome_good_given_V(Hospital,V,Prob). % we will just have 3 values of the global parameter prob global_parameter(0.2):0.3, global_parameter(0.5):0.4, global_parameter(0.8):0.3. % we'll discretize the probabilities into 3 values. prob prob_outcome_good_given_V(H,0.2,0.2):0.6, prob_outcome_good_given_V(H,0.2,0.5):0.3, prob_outcome_good_given_V(H,0.2,0.8):0.1. prob prob_outcome_good_given_V(H,0.5,0.2):0.2, prob_outcome_good_given_V(H,0.5,0.5):0.6, prob_outcome_good_given_V(H,0.5,0.8):0.2. prob prob_outcome_good_given_V(H,0.8,0.2):0.1, prob_outcome_good_given_V(H,0.8,0.5):0.3, prob_outcome_good_given_V(H,0.8,0.8):0.6. in(p10,h1). in(p11,h1). in(p12,h1). in(p20,h2). in(p21,h2). in(p22,h2).