It is highly unlikely that Julius is gray. It is improbable that Fred is in the cinema. There is a better than even chance that Bernhard is a rhino. It is highly likely that if 'Julius is gray' or 'Fred is in the cinema' or both then John took the apple. It is highly likely that if 'Julius is gray' or 'Bernhard is a rhino' or both then Brian is white. We believe that if 'Fred is in the cinema' or 'Bernhard is a rhino' or both then Lily is yellow.
Chances are about even that 'Lily is yellow and Brian is white'.
Chances are about even that 'Lily is yellow and Brian is white'.
It is highly unlikely that 'Lily is yellow and Brian 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.05::factA.
  0.1::factB.
  0.6::factC.
  %hop1
  0.9::factX:-or(factA,factB).
  0.9::factY:-or(factA,factC).
  0.75::factZ:-or(factB,factC).

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

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