It is unlikely that Lily is a swan. It is probably not the case that Antoine is thirsty. It is probably the case that Julius is yellow. There is almost no chance that if either 'Antoine is thirsty' or 'Julius is yellow' but not both then Sandra took the football. We believe that if 'Julius is yellow' or 'Antoine is thirsty' or both then Mary put down the apple. There is a very good chance that if 'Lily is a swan' or 'Julius is yellow' or both then John went to the office.
It is probably the case that 'Sandra took the football' or 'Lily is a swan' or both.
We doubt that 'Sandra took the football' or 'Lily is a swan' or both.
It is probably the case that 'Sandra took the football' or 'Lily is a swan' 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.2::factA.
  0.25::factB.
  0.7::factC.
  %hop1
  0.02::factX:-xor(factB,factC).
  0.75::factY:-or(factC,factB).
  0.8::factZ:-or(factA,factC).

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

  query(conclusion).
  
'Sandra took the football' or 'Lily is a swan' or both.