We doubt that Bernhard is a frog. It is highly unlikely that Mary left the football. It is almost certain that John put down the milk. It is likely that if 'John put down the milk' or 'Mary left the football' or both then Yann is hungry. We believe that if either 'John put down the milk' or 'Mary left the football' but not both then Sandra is in the kitchen. It is certain that if 'Bernhard is a frog and Mary left the football' then Brian is yellow.
It is almost certain that 'John put down the milk' or 'Bernhard is a frog' or both.
It is almost certain that 'John put down the milk' or 'Bernhard is a frog' or both.
It is highly unlikely that 'John put down the milk' or 'Bernhard is a frog' or both.

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

  %hop2
  conclusion:-or(factC,factA).

  query(conclusion).
  
'John put down the milk' or 'Bernhard is a frog' or both.