It is unlikely that Brian is yellow. It is probable that Yann is bored. There is a better than even chance that Greg is a frog. It is improbable that if either 'Yann is bored' or 'Greg is a frog' but not both then Mary dropped the milk. There is a better than even chance that if 'Greg is a frog and Yann is bored' then Julius is gray. It is unlikely that if 'Brian is yellow' or 'Yann is bored' or both then John moved to the garden.
It is unlikely that either 'Yann is bored' or 'Mary dropped the milk' but not both.
It is likely that either 'Yann is bored' or 'Mary dropped the milk' but not both.
It is unlikely that either 'Yann is bored' or 'Mary dropped the milk' but not 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.2::factA.
  0.7::factB.
  0.6::factC.
  %hop1
  0.1::factX:-xor(factB,factC).
  0.6::factY:-and(factC,factB).
  0.2::factZ:-or(factA,factB).

  %hop2
  conclusion:-xor(factB,factX).

  query(conclusion).
  
Either 'Yann is bored' or 'Mary dropped the milk' but not both.