It is probably not the case that Brian is a lion. Chances are slight that Sandra left the apple. It is unlikely that Greg is a rhino. It is probable that if 'Brian is a lion and Sandra left the apple' then Lily is yellow. It is certain that if 'Sandra left the apple and Brian is a lion' then John went to the office. There is a very good chance that if 'Brian is a lion' or 'Sandra left the apple' or both then Julius is white.
It is certain that 'Julius is white' or 'Lily is yellow' or both.
It is probably not the case that 'Julius is white' or 'Lily is yellow' or both.
It is certain that 'Julius is white' or 'Lily is yellow' 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.25::factA.
  0.1::factB.
  0.2::factC.
  %hop1
  0.7::factX:-and(factA,factB).
  1.0::factY:-and(factB,factA).
  0.8::factZ:-or(factA,factB).

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

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