It is likely that John dropped the apple. Chances are about even that Daniel took the apple. It is impossible that Bernhard is gray. It is unlikely that if 'John dropped the apple and Bernhard is gray' then Julius is a swan. We doubt that if 'Bernhard is gray' or 'John dropped the apple' or both then Brian is gray. It is unlikely that if either 'Daniel took the apple' or 'Bernhard is gray' but not both then Winona is a wolf.
It is probably the case that 'Bernhard is gray and Winona is a wolf'.
It is impossible that 'Bernhard is gray and Winona is a wolf'.
It is probably the case that 'Bernhard is gray and Winona is a wolf'.

  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.5::factB.
  0.0::factC.
  %hop1
  0.2::factX:-and(factA,factC).
  0.2::factY:-or(factC,factA).
  0.2::factZ:-xor(factB,factC).

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

  query(conclusion).
  
'Bernhard is gray and Winona is a wolf'.