It is probably not the case that Julius is a swan. There is a better than even chance that Bernhard is yellow. There is a better than even chance that Mary got the football. It is probably the case that if 'Bernhard is yellow' or 'Mary got the football' or both then John left the milk. It is almost certain that if 'Mary got the football' or 'Julius is a swan' or both then Brian is a rhino. It is probably the case that if 'Julius is a swan and Bernhard is yellow' then Greg is yellow.
Chances are slight that 'Greg is yellow' or 'Mary got the football' or both.
There is a better than even chance that 'Greg is yellow' or 'Mary got the football' or both.
Chances are slight that 'Greg is yellow' or 'Mary got the football' 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.6::factB.
  0.6::factC.
  %hop1
  0.7::factX:-or(factB,factC).
  0.95::factY:-or(factC,factA).
  0.7::factZ:-and(factA,factB).

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

  query(conclusion).
  
'Greg is yellow' or 'Mary got the football' or both.