There is a better than even chance that Bernhard is a swan. It is probably the case that Sandra left the apple. It is probable that Fred went to the garden. It is impossible that if 'Sandra left the apple' or 'Bernhard is a swan' or both then Greg is yellow. It is likely that if either 'Fred went to the garden' or 'Bernhard is a swan' but not both then Emily is a mouse. There is a better than even chance that if 'Sandra left the apple and Bernhard is a swan' then Antoine is hungry.
It is impossible that 'Antoine is hungry' or 'Fred went to the garden' or both.
There is a very good chance that 'Antoine is hungry' or 'Fred went to the garden' or both.
It is impossible that 'Antoine is hungry' or 'Fred went to the garden' or 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.6::factA.
  0.7::factB.
  0.7::factC.
  %hop1
  0.0::factX:-or(factB,factA).
  0.7::factY:-xor(factC,factA).
  0.6::factZ:-and(factB,factA).

  %hop2
  conclusion:-or(factZ,factC).

  query(conclusion).
  
'Antoine is hungry' or 'Fred went to the garden' or both.