It is almost certain that Jessica is a mouse. We doubt that Greg is yellow. Chances are slight that Mary left the football. It is probably not the case that if either 'Greg is yellow' or 'Jessica is a mouse' but not both then Winona is a wolf. It is improbable that if 'Greg is yellow' or 'Mary left the football' or both then Jeff went to the garden. It is probable that if either 'Mary left the football' or 'Jessica is a mouse' but not both then Julius is a lion.
It is impossible that 'Julius is a lion' or 'Jessica is a mouse' or both.
It is almost certain that 'Julius is a lion' or 'Jessica is a mouse' or both.
It is impossible that 'Julius is a lion' or 'Jessica is a mouse' or both.

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

  %hop2
  conclusion:-or(factZ,factA).

  query(conclusion).
  
'Julius is a lion' or 'Jessica is a mouse' or both.