We doubt that Lily is white. Chances are slight that Jason is tired. It is highly likely that Bernhard is a swan. There is a better than even chance that if 'Jason is tired and Bernhard is a swan' then John took the milk. There is little chance that if 'Jason is tired and Bernhard is a swan' then Mary went to the office. We doubt that if 'Jason is tired and Bernhard is a swan' then Julius is yellow.
It is probable that 'Julius is yellow and Lily is white'.
It is impossible that 'Julius is yellow and Lily is white'.
It is probable that 'Julius is yellow and Lily is white'.

  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.2::factA.
  0.1::factB.
  0.9::factC.
  %hop1
  0.6::factX:-and(factB,factC).
  0.1::factY:-and(factB,factC).
  0.2::factZ:-and(factB,factC).

  %hop2
  conclusion:-and(factZ,factA).

  query(conclusion).
  
'Julius is yellow and Lily is white'.