We doubt that Julius is a frog. There is a better than even chance that Gertrude is a sheep. It is almost certain that Mary took the milk. There is a better than even chance that if either 'Julius is a frog' or 'Gertrude is a sheep' but not both then Brian is gray. It is improbable that if 'Julius is a frog and Gertrude is a sheep' then John picked up the apple. It is probable that if 'Mary took the milk' or 'Julius is a frog' or both then Lily is a swan.
It is probable that 'Mary took the milk and Brian is gray'.
It is probably not the case that 'Mary took the milk and Brian is gray'.
It is probable that 'Mary took the milk and Brian is gray'.

  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.2::factA.
  0.6::factB.
  0.95::factC.
  %hop1
  0.6::factX:-xor(factA,factB).
  0.1::factY:-and(factA,factB).
  0.7::factZ:-or(factC,factA).

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

  query(conclusion).
  
'Mary took the milk and Brian is gray'.