It is impossible that Fred put down the apple. It is probably not the case that Greg is a swan. It is highly likely that John went to the bedroom. There is a very good chance that if either 'Greg is a swan' or 'John went to the bedroom' but not both then Julius is a swan. It is likely that if 'Fred put down the apple and Greg is a swan' then Winona is a sheep. There is a very good chance that if either 'John went to the bedroom' or 'Fred put down the apple' but not both then Brian is yellow.
We believe that 'Fred put down the apple and Julius is a swan'.
It is impossible that 'Fred put down the apple and Julius is a swan'.
We believe that 'Fred put down the apple and Julius is a swan'.

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

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

  query(conclusion).
  
'Fred put down the apple and Julius is a swan'.