There is little chance that Winona is a mouse. It is improbable that Daniel dropped the apple. There is a very good chance that Antoine is hungry. It is highly likely that if either 'Antoine is hungry' or 'Daniel dropped the apple' but not both then Greg is white. We doubt that if 'Winona is a mouse' or 'Antoine is hungry' or both then John went to the kitchen. It is highly likely that if either 'Winona is a mouse' or 'Daniel dropped the apple' but not both then Lily is gray.
There is a very good chance that 'Antoine is hungry' or 'Greg is white' or both.
There is a very good chance that 'Antoine is hungry' or 'Greg is white' or both.
It is highly unlikely that 'Antoine is hungry' or 'Greg is white' 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.1::factA.
  0.1::factB.
  0.8::factC.
  %hop1
  0.9::factX:-xor(factC,factB).
  0.2::factY:-or(factA,factC).
  0.9::factZ:-xor(factA,factB).

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

  query(conclusion).
  
'Antoine is hungry' or 'Greg is white' or both.