It is probable that Sandra grabbed the milk. There is almost no chance that Greg is a lion. It is improbable that Mary went to the bedroom. We doubt that if either 'Greg is a lion' or 'Sandra grabbed the milk' but not both then Brian is white. It is likely that if either 'Mary went to the bedroom' or 'Sandra grabbed the milk' but not both then John took the apple. Chances are about even that if 'Greg is a lion and Mary went to the bedroom' then Jeff moved to the garden.
It is impossible that 'Brian is white and Greg is a lion'.
It is impossible that 'Brian is white and Greg is a lion'.
It is highly likely that 'Brian is white and Greg 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.7::factA.
  0.02::factB.
  0.1::factC.
  %hop1
  0.2::factX:-xor(factB,factA).
  0.7::factY:-xor(factC,factA).
  0.5::factZ:-and(factB,factC).

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

  query(conclusion).
  
'Brian is white and Greg is a lion'.