Chances are slight that Sandra took the milk. Chances are slight that Jason is tired. Chances are about even that Greg is a lion. There is almost no chance that if either 'Sandra took the milk' or 'Jason is tired' but not both then Julius is yellow. It is likely that if 'Sandra took the milk' or 'Greg is a lion' or both then Gertrude is a wolf. We doubt that if 'Sandra took the milk and Greg is a lion' then Bernhard is gray.
We believe that 'Sandra took the milk and Jason is tired'.
There is almost no chance that 'Sandra took the milk and Jason is tired'.
We believe that 'Sandra took the milk and Jason is tired'.

  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.1::factA.
  0.1::factB.
  0.5::factC.
  %hop1
  0.02::factX:-xor(factA,factB).
  0.7::factY:-or(factA,factC).
  0.2::factZ:-and(factA,factC).

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

  query(conclusion).
  
'Sandra took the milk and Jason is tired'.