There is a better than even chance that Bill left the milk. It is highly unlikely that Bernhard is white. It is unlikely that Greg is a rhino. It is improbable that if 'Greg is a rhino and Bernhard is white' then John dropped the milk. We doubt that if 'Bill left the milk and Greg is a rhino' then Jeff went to the garden. There is little chance that if 'Bill left the milk' or 'Greg is a rhino' or both then Mary got the football.
It is probable that 'John dropped the milk and Bernhard is white'.
It is impossible that 'John dropped the milk and Bernhard is white'.
It is probable that 'John dropped the milk and Bernhard is white'.

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

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

  query(conclusion).
  
'John dropped the milk and Bernhard is white'.