There is a better than even chance that John moved to the office. It is probably not the case that Bernhard is gray. There is a very good chance that Mary went to the garden. It is impossible that if either 'Bernhard is gray' or 'Mary went to the garden' but not both then Gertrude is a sheep. It is probable that if either 'Bernhard is gray' or 'John moved to the office' but not both then Daniel got the football. It is highly likely that if either 'Bernhard is gray' or 'John moved to the office' but not both then Greg is a frog.
Chances are about even that 'Greg is a frog and Mary went to the garden'.
Chances are about even that 'Greg is a frog and Mary went to the garden'.
It is impossible that 'Greg is a frog and Mary went to the garden'.

  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.25::factB.
  0.8::factC.
  %hop1
  0.0::factX:-xor(factB,factC).
  0.7::factY:-xor(factB,factA).
  0.9::factZ:-xor(factB,factA).

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

  query(conclusion).
  
'Greg is a frog and Mary went to the garden'.