It is probable that Daniel left the milk. It is certain that Bernhard is yellow. It is impossible that Brian is a rhino. It is likely that if 'Brian is a rhino' or 'Bernhard is yellow' or both then Emily is a sheep. It is certain that if 'Bernhard is yellow' or 'Brian is a rhino' or both then Greg is green. There is almost no chance that if 'Daniel left the milk and Bernhard is yellow' then Sandra got the football.
It is highly unlikely that 'Emily is a sheep and Greg is green'.
It is probable that 'Emily is a sheep and Greg is green'.
It is highly unlikely that 'Emily is a sheep and Greg is green'.

  and(A,B) :- A,B.
  or(A,B) :- A;B.
  nand(A,B) :- not(and(A,B)).
  nor(A,B) :- not(or(A,B)).
  xor(A,B) :- or(A,B), nand(A,B).

  %hop0
  0.7::factA.
  1.0::factB.
  0.0::factC.
  %hop1
  0.7::factX:-or(factC,factB).
  1.0::factY:-or(factB,factC).
  0.02::factZ:-and(factA,factB).

  %hop2
  conclusion:-and(factX,factY).

  query(conclusion).
  
'Emily is a sheep and Greg is green'.