It is certain that Mary dropped the milk. It is almost certain that John went to the garden. There is almost no chance that Lily is a lion. It is probably not the case that if 'Lily is a lion and John went to the garden' then Jeff left the football. Chances are about even that if 'Lily is a lion' or 'Mary dropped the milk' or both then Brian is green. It is probable that if 'Lily is a lion and Mary dropped the milk' then Julius is a frog.
It is probably not the case that 'John went to the garden' or 'Brian is green' or both.
It is almost certain that 'John went to the garden' or 'Brian is green' or both.
It is probably not the case that 'John went to the garden' or 'Brian 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
  1.0::factA.
  0.95::factB.
  0.02::factC.
  %hop1
  0.25::factX:-and(factC,factB).
  0.5::factY:-or(factC,factA).
  0.7::factZ:-and(factC,factA).

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

  query(conclusion).
  
'John went to the garden' or 'Brian is green' or both.