It is certain that Julius is yellow. It is highly likely that Bernhard is gray. It is impossible that John took the football. It is likely that if 'Bernhard is gray' or 'John took the football' or both then Mary went to the kitchen. It is unlikely that if either 'John took the football' or 'Bernhard is gray' but not both then Brian is a rhino. It is almost certain that if 'Bernhard is gray' or 'Julius is yellow' or both then Lily is a rhino.
It is certain that 'Julius is yellow' or 'Lily is a rhino' or both.
It is certain that 'Julius is yellow' or 'Lily is a rhino' or both.
Chances are about even that 'Julius is yellow' or 'Lily is a rhino' 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.9::factB.
  0.0::factC.
  %hop1
  0.7::factX:-or(factB,factC).
  0.2::factY:-xor(factC,factB).
  0.95::factZ:-or(factB,factA).

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

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