It is improbable that Mary went to the office. It is highly likely that Julius is gray. It is probably the case that John discarded the apple. Chances are slight that if either 'John discarded the apple' or 'Mary went to the office' but not both then Lily is a frog. It is unlikely that if 'John discarded the apple and Julius is gray' then Greg is gray. It is likely that if either 'Mary went to the office' or 'Julius is gray' but not both then Bernhard is green.
We believe that 'Mary went to the office' or 'John discarded the apple' or both.
We believe that 'Mary went to the office' or 'John discarded the apple' or both.
We doubt that 'Mary went to the office' or 'John discarded the apple' 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.1::factA.
  0.9::factB.
  0.7::factC.
  %hop1
  0.1::factX:-xor(factC,factA).
  0.2::factY:-and(factC,factB).
  0.7::factZ:-xor(factA,factB).

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

  query(conclusion).
  
'Mary went to the office' or 'John discarded the apple' or both.