It is highly unlikely that John moved to the office. We believe that Winona is a sheep. It is likely that Daniel dropped the apple. It is highly likely that if either 'Winona is a sheep' or 'Daniel dropped the apple' but not both then Antoine is thirsty. It is unlikely that if 'Daniel dropped the apple and John moved to the office' then Greg is green. It is impossible that if either 'Winona is a sheep' or 'Daniel dropped the apple' but not both then Gertrude is a sheep.
It is probably not the case that 'Antoine is thirsty' or 'Gertrude is a sheep' or both.
It is probably not the case that 'Antoine is thirsty' or 'Gertrude is a sheep' or both.
It is highly likely that 'Antoine is thirsty' or 'Gertrude is a sheep' 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.05::factA.
  0.75::factB.
  0.7::factC.
  %hop1
  0.9::factX:-xor(factB,factC).
  0.2::factY:-and(factC,factA).
  0.0::factZ:-xor(factB,factC).

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

  query(conclusion).
  
'Antoine is thirsty' or 'Gertrude is a sheep' or both.