It is impossible that John left the football. It is probable that Mary put down the apple. It is almost certain that Julius is a lion. It is highly unlikely that if 'John left the football' or 'Mary put down the apple' or both then Winona is a wolf. It is improbable that if either 'Mary put down the apple' or 'Julius is a lion' but not both then Sandra got the milk. It is unlikely that if 'John left the football' or 'Mary put down the apple' or both then Yann is hungry.
It is impossible that 'John left the football and Winona is a wolf'.
It is impossible that 'John left the football and Winona is a wolf'.
It is certain that 'John left the football 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.0::factA.
  0.7::factB.
  0.95::factC.
  %hop1
  0.05::factX:-or(factA,factB).
  0.1::factY:-xor(factB,factC).
  0.2::factZ:-or(factA,factB).

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

  query(conclusion).
  
'John left the football and Winona is a wolf'.