There is a very good chance that Greg is gray. It is improbable that Jeff discarded the milk. Chances are about even that Mary took the milk. It is probably not the case that if 'Greg is gray and Jeff discarded the milk' then Julius is a swan. We doubt that if either 'Mary took the milk' or 'Greg is gray' but not both then John put down the apple. Chances are about even that if either 'Jeff discarded the milk' or 'Greg is gray' but not both then Bernhard is a rhino.
It is almost certain that 'Mary took the milk and Greg is gray'.
Chances are about even that 'Mary took the milk and Greg is gray'.
It is almost certain that 'Mary took the milk and Greg is gray'.

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

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

  query(conclusion).
  
'Mary took the milk and Greg is gray'.