It is impossible that Jeff moved to the garden. There is little chance that Lily is a swan. There is a very good chance that Fred is in the office. It is probably not the case that if either 'Lily is a swan' or 'Fred is in the office' but not both then Sandra dropped the apple. There is a very good chance that if either 'Jeff moved to the garden' or 'Fred is in the office' but not both then Mary went to the bedroom. We doubt that if 'Lily is a swan and Fred is in the office' then Bernhard is a frog.
It is highly likely that 'Jeff moved to the garden and Fred is in the office'.
It is impossible that 'Jeff moved to the garden and Fred is in the office'.
It is highly likely that 'Jeff moved to the garden and Fred is in the office'.

  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.0::factA.
  0.1::factB.
  0.8::factC.
  %hop1
  0.25::factX:-xor(factB,factC).
  0.8::factY:-xor(factA,factC).
  0.2::factZ:-and(factB,factC).

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

  query(conclusion).
  
'Jeff moved to the garden and Fred is in the office'.