It is certain that Greg is yellow. We doubt that John put down the milk. Chances are slight that Emily is a mouse. It is improbable that if 'Greg is yellow and Emily is a mouse' then Julius is gray. There is little chance that if 'Emily is a mouse' or 'Greg is yellow' or both then Brian is a rhino. It is certain that if 'John put down the milk' or 'Emily is a mouse' or both then Bernhard is a swan.
It is certain that 'Greg is yellow and Julius is gray'.
There is almost no chance that 'Greg is yellow and Julius is gray'.
It is certain that 'Greg is yellow and Julius is gray'.

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

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

  query(conclusion).
  
'Greg is yellow and Julius is gray'.