It is probable that Lily is a rhino. It is probably not the case that Emily is a wolf. It is probably the case that Sandra got the football. It is highly unlikely that if either 'Sandra got the football' or 'Emily is a wolf' but not both then Brian is yellow. It is probably not the case that if 'Emily is a wolf and Sandra got the football' then Greg is a swan. There is almost no chance that if either 'Emily is a wolf' or 'Lily is a rhino' but not both then Mary went to the office.
It is highly unlikely that 'Mary went to the office' or 'Brian is yellow' or both.
It is highly unlikely that 'Mary went to the office' or 'Brian is yellow' or both.
It is highly likely that 'Mary went to the office' or 'Brian is yellow' or both.

  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.
  0.25::factB.
  0.7::factC.
  %hop1
  0.05::factX:-xor(factC,factB).
  0.25::factY:-and(factB,factC).
  0.02::factZ:-xor(factB,factA).

  %hop2
  conclusion:-or(factZ,factX).

  query(conclusion).
  
'Mary went to the office' or 'Brian is yellow' or both.