Chances are about even that Mary dropped the apple. There is little chance that Brian is yellow. It is unlikely that Daniel got the milk. We doubt that if 'Mary dropped the apple' or 'Daniel got the milk' or both then Greg is a rhino. It is impossible that if 'Daniel got the milk' or 'Mary dropped the apple' or both then Lily is green. We doubt that if 'Daniel got the milk and Mary dropped the apple' then John went to the hallway.
There is a very good chance that 'Greg is a rhino' or 'Lily is green' or both.
There is little chance that 'Greg is a rhino' or 'Lily is green' or both.
There is a very good chance that 'Greg is a rhino' or 'Lily is green' 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.5::factA.
  0.1::factB.
  0.2::factC.
  %hop1
  0.2::factX:-or(factA,factC).
  0.0::factY:-or(factC,factA).
  0.2::factZ:-and(factC,factA).

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

  query(conclusion).
  
'Greg is a rhino' or 'Lily is green' or both.