It is highly unlikely that Julius is a frog. It is probably the case that Jessica is a sheep. There is almost no chance that Mary picked up the apple. We believe that if 'Julius is a frog and Mary picked up the apple' then John moved to the office. It is almost certain that if 'Mary picked up the apple and Jessica is a sheep' then Bill went to the kitchen. There is almost no chance that if either 'Mary picked up the apple' or 'Jessica is a sheep' but not both then Bernhard is gray.
It is highly likely that 'Bill went to the kitchen and John moved to the office'.
It is impossible that 'Bill went to the kitchen and John moved to the office'.
It is highly likely that 'Bill went to the kitchen and John moved to the office'.

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

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

  query(conclusion).
  
'Bill went to the kitchen and John moved to the office'.