It is certain that Brian is yellow. It is improbable that Fred went to the garden. We doubt that John left the milk. It is likely that if 'John left the milk' or 'Brian is yellow' or both then Julius is a frog. It is almost certain that if either 'Brian is yellow' or 'Fred went to the garden' but not both then Greg is a frog. There is a very good chance that if either 'Brian is yellow' or 'Fred went to the garden' but not both then Sandra dropped the milk.
We doubt that 'Sandra dropped the milk' or 'Julius is a frog' or both.
It is highly likely that 'Sandra dropped the milk' or 'Julius is a frog' or both.
We doubt that 'Sandra dropped the milk' or 'Julius is a frog' 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
  1.0::factA.
  0.1::factB.
  0.2::factC.
  %hop1
  0.7::factX:-or(factC,factA).
  0.95::factY:-xor(factA,factB).
  0.8::factZ:-xor(factA,factB).

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

  query(conclusion).
  
'Sandra dropped the milk' or 'Julius is a frog' or both.