It is improbable that Mary moved to the garden. There is a very good chance that Julius is gray. It is probable that Antoine is hungry. We believe that if 'Julius is gray and Mary moved to the garden' then Bernhard is a rhino. There is little chance that if either 'Antoine is hungry' or 'Mary moved to the garden' but not both then John discarded the milk. It is probably the case that if 'Antoine is hungry' or 'Mary moved to the garden' or both then Brian is white.
There is a very good chance that 'Bernhard is a rhino' or 'Julius is gray' or both.
There is a very good chance that 'Bernhard is a rhino' or 'Julius is gray' or both.
It is highly unlikely that 'Bernhard is a rhino' or 'Julius is gray' 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.8::factB.
  0.7::factC.
  %hop1
  0.75::factX:-and(factB,factA).
  0.1::factY:-xor(factC,factA).
  0.7::factZ:-or(factC,factA).

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

  query(conclusion).
  
'Bernhard is a rhino' or 'Julius is gray' or both.