There is a very good chance that Brian is white. It is highly likely that Mary got the apple. It is probably not the case that Greg is a swan. It is highly unlikely that if either 'Mary got the apple' or 'Greg is a swan' but not both then Jason is tired. It is certain that if 'Mary got the apple' or 'Brian is white' or both then Bernhard is yellow. It is probable that if either 'Brian is white' or 'Mary got the apple' but not both then John moved to the garden.
It is likely that 'Jason is tired and Mary got the apple'.
There is almost no chance that 'Jason is tired and Mary got the apple'.
It is likely that 'Jason is tired and Mary got the apple'.

  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.8::factA.
  0.9::factB.
  0.25::factC.
  %hop1
  0.05::factX:-xor(factB,factC).
  1.0::factY:-or(factB,factA).
  0.7::factZ:-xor(factA,factB).

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

  query(conclusion).
  
'Jason is tired and Mary got the apple'.