There is a better than even chance that Mary took the milk. We believe that Lily is a swan. It is unlikely that Bernhard is yellow. There is a better than even chance that if either 'Mary took the milk' or 'Bernhard is yellow' but not both then Jessica is a cat. We doubt that if 'Mary took the milk' or 'Lily is a swan' or both then Brian is a rhino. It is impossible that if 'Lily is a swan and Bernhard is yellow' then Fred went to the office.
There is a better than even chance that 'Mary took the milk' or 'Fred went to the office' or both.
There is a better than even chance that 'Mary took the milk' or 'Fred went to the office' or both.
It is improbable that 'Mary took the milk' or 'Fred went to the office' 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.6::factA.
  0.75::factB.
  0.2::factC.
  %hop1
  0.6::factX:-xor(factA,factC).
  0.2::factY:-or(factA,factB).
  0.0::factZ:-and(factB,factC).

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

  query(conclusion).
  
'Mary took the milk' or 'Fred went to the office' or both.