We doubt that Mary got the apple. There is almost no chance that John went to the office. It is probably the case that Bernhard is gray. It is impossible that if either 'Bernhard is gray' or 'John went to the office' but not both then Julius is a frog. There is almost no chance that if 'Bernhard is gray and Mary got the apple' then Jason is tired. There is little chance that if 'John went to the office' or 'Bernhard is gray' or both then Greg is a rhino.
It is probably the case that 'Mary got the apple' or 'Jason is tired' or both.
We doubt that 'Mary got the apple' or 'Jason is tired' or both.
It is probably the case that 'Mary got the apple' or 'Jason is tired' 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.2::factA.
  0.02::factB.
  0.7::factC.
  %hop1
  0.0::factX:-xor(factC,factB).
  0.02::factY:-and(factC,factA).
  0.1::factZ:-or(factB,factC).

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

  query(conclusion).
  
'Mary got the apple' or 'Jason is tired' or both.