It is improbable that Bernhard is yellow. We doubt that Brian is white. We believe that John picked up the apple. We doubt that if either 'Brian is white' or 'John picked up the apple' but not both then Gertrude is a cat. It is probably not the case that if 'John picked up the apple and Brian is white' then Winona is a sheep. Chances are about even that if 'John picked up the apple and Brian is white' then Greg is a swan.
It is likely that 'John picked up the apple and Bernhard is yellow'.
It is improbable that 'John picked up the apple and Bernhard is yellow'.
It is likely that 'John picked up the apple and Bernhard is yellow'.

  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.1::factA.
  0.2::factB.
  0.75::factC.
  %hop1
  0.2::factX:-xor(factB,factC).
  0.25::factY:-and(factC,factB).
  0.5::factZ:-and(factC,factB).

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

  query(conclusion).
  
'John picked up the apple and Bernhard is yellow'.