There is little chance that John took the apple. It is unlikely that Sandra put down the milk. It is certain that Brian is a swan. It is certain that if either 'Sandra put down the milk' or 'Brian is a swan' but not both then Julius is a lion. Chances are about even that if 'Sandra put down the milk' or 'John took the apple' or both then Mary left the football. It is likely that if either 'Sandra put down the milk' or 'Brian is a swan' but not both then Emily is a wolf.
There is little chance that 'Brian is a swan and Julius is a lion'.
There is a very good chance that 'Brian is a swan and Julius is a lion'.
There is little chance that 'Brian is a swan and Julius is a lion'.

  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.1::factA.
  0.2::factB.
  1.0::factC.
  %hop1
  1.0::factX:-xor(factB,factC).
  0.5::factY:-or(factB,factA).
  0.7::factZ:-xor(factB,factC).

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

  query(conclusion).
  
'Brian is a swan and Julius is a lion'.