We believe that Brian is white. There is little chance that Daniel dropped the milk. It is improbable that John went to the hallway. It is impossible that if 'John went to the hallway' or 'Brian is white' or both then Jessica is a mouse. It is highly unlikely that if either 'Brian is white' or 'Daniel dropped the milk' but not both then Greg is a lion. It is probably not the case that if 'John went to the hallway' or 'Daniel dropped the milk' or both then Bernhard is a swan.
It is highly likely that 'John went to the hallway' or 'Jessica is a mouse' or both.
There is little chance that 'John went to the hallway' or 'Jessica is a mouse' or both.
It is highly likely that 'John went to the hallway' or 'Jessica is a mouse' 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.1::factB.
  0.1::factC.
  %hop1
  0.0::factX:-or(factC,factA).
  0.05::factY:-xor(factA,factB).
  0.25::factZ:-or(factC,factB).

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

  query(conclusion).
  
'John went to the hallway' or 'Jessica is a mouse' or both.