It is likely that Mary went to the garden. It is highly unlikely that Julius is green. We doubt that Brian is white. Chances are about even that if either 'Mary went to the garden' or 'Brian is white' but not both then Bernhard is a lion. It is probably not the case that if either 'Julius is green' or 'Mary went to the garden' but not both then Greg is a frog. Chances are slight that if 'Brian is white' or 'Julius is green' or both then Lily is yellow.
It is unlikely that 'Lily is yellow' or 'Brian is white' or both.
It is unlikely that 'Lily is yellow' or 'Brian is white' or both.
It is highly likely that 'Lily is yellow' or 'Brian 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.7::factA.
  0.05::factB.
  0.2::factC.
  %hop1
  0.5::factX:-xor(factA,factC).
  0.25::factY:-xor(factB,factA).
  0.1::factZ:-or(factC,factB).

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

  query(conclusion).
  
'Lily is yellow' or 'Brian is white' or both.