It is improbable that John dropped the apple. There is almost no chance that Bernhard is a frog. Chances are about even that Brian is gray. We doubt that if either 'Brian is gray' or 'John dropped the apple' but not both then Yann is hungry. It is improbable that if either 'Bernhard is a frog' or 'Brian is gray' but not both then Mary went to the bedroom. We doubt that if either 'Bernhard is a frog' or 'Brian is gray' but not both then Julius is a swan.
It is probable that 'Yann is hungry and Brian is gray'.
There is little chance that 'Yann is hungry and Brian is gray'.
It is probable that 'Yann is hungry and Brian 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
  0.1::factA.
  0.02::factB.
  0.5::factC.
  %hop1
  0.2::factX:-xor(factC,factA).
  0.1::factY:-xor(factB,factC).
  0.2::factZ:-xor(factB,factC).

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

  query(conclusion).
  
'Yann is hungry and Brian is gray'.