Chances are about even that Bernhard is gray. It is unlikely that Greg is a rhino. We believe that Mary went to the office. It is probably the case that if 'Bernhard is gray and Mary went to the office' then Brian is yellow. There is almost no chance that if 'Greg is a rhino and Mary went to the office' then Gertrude is a sheep. It is improbable that if 'Greg is a rhino' or 'Bernhard is gray' or both then Daniel put down the milk.
Chances are about even that 'Bernhard is gray' or 'Gertrude is a sheep' or both.
Chances are about even that 'Bernhard is gray' or 'Gertrude is a sheep' or both.
It is almost certain that 'Bernhard is gray' or 'Gertrude is a sheep' 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.5::factA.
  0.2::factB.
  0.75::factC.
  %hop1
  0.7::factX:-and(factA,factC).
  0.02::factY:-and(factB,factC).
  0.1::factZ:-or(factB,factA).

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

  query(conclusion).
  
'Bernhard is gray' or 'Gertrude is a sheep' or both.