We believe that Mary went to the kitchen. It is probable that Sandra put down the milk. It is highly unlikely that Bernhard is gray. It is probably not the case that if either 'Mary went to the kitchen' or 'Bernhard is gray' but not both then Julius is yellow. It is probably the case that if 'Bernhard is gray and Mary went to the kitchen' then Brian is a lion. Chances are slight that if either 'Sandra put down the milk' or 'Mary went to the kitchen' but not both then Greg is a frog.
It is highly unlikely that 'Julius is yellow' or 'Mary went to the kitchen' or both.
We believe that 'Julius is yellow' or 'Mary went to the kitchen' or both.
It is highly unlikely that 'Julius is yellow' or 'Mary went to the kitchen' 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.75::factA.
  0.7::factB.
  0.05::factC.
  %hop1
  0.25::factX:-xor(factA,factC).
  0.7::factY:-and(factC,factA).
  0.1::factZ:-xor(factB,factA).

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

  query(conclusion).
  
'Julius is yellow' or 'Mary went to the kitchen' or both.