It is highly unlikely that John went to the hallway. We doubt that Greg is a lion. We believe that Sandra dropped the milk. It is probable that if 'Sandra dropped the milk and Greg is a lion' then Lily is green. It is likely that if 'Greg is a lion and Sandra dropped the milk' then Brian is yellow. It is unlikely that if 'Sandra dropped the milk' or 'John went to the hallway' or both then Julius is green.
It is probably the case that 'Lily is green' or 'Julius is green' or both.
It is probably not the case that 'Lily is green' or 'Julius is green' or both.
It is probably the case that 'Lily is green' or 'Julius 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.05::factA.
  0.2::factB.
  0.75::factC.
  %hop1
  0.7::factX:-and(factC,factB).
  0.7::factY:-and(factB,factC).
  0.2::factZ:-or(factC,factA).

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

  query(conclusion).
  
'Lily is green' or 'Julius is green' or both.