It is probable that Emily is a cat. It is certain that Greg is yellow. Chances are about even that Mary is in the hallway. We doubt that if 'Greg is yellow and Mary is in the hallway' then John dropped the apple. It is highly unlikely that if 'Emily is a cat and Mary is in the hallway' then Jason is tired. It is impossible that if 'Greg is yellow' or 'Emily is a cat' or both then Julius is a frog.
It is certain that 'Jason is tired' or 'Greg is yellow' or both.
It is certain that 'Jason is tired' or 'Greg is yellow' or both.
It is unlikely that 'Jason is tired' or 'Greg is yellow' 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.7::factA.
  1.0::factB.
  0.5::factC.
  %hop1
  0.2::factX:-and(factB,factC).
  0.05::factY:-and(factA,factC).
  0.0::factZ:-or(factB,factA).

  %hop2
  conclusion:-or(factY,factB).

  query(conclusion).
  
'Jason is tired' or 'Greg is yellow' or both.