We believe that Bill left the football. It is probably not the case that Bernhard is yellow. We doubt that Greg is white. There is a very good chance that if 'Bill left the football' or 'Bernhard is yellow' or both then Emily is a cat. It is probably the case that if either 'Bernhard is yellow' or 'Bill left the football' but not both then Julius is green. It is probably the case that if 'Greg is white' or 'Bernhard is yellow' or both then Mary moved to the garden.
We believe that 'Mary moved to the garden' or 'Emily is a cat' or both.
We believe that 'Mary moved to the garden' or 'Emily is a cat' or both.
It is improbable that 'Mary moved to the garden' or 'Emily is a cat' 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.75::factA.
  0.25::factB.
  0.2::factC.
  %hop1
  0.8::factX:-or(factA,factB).
  0.7::factY:-xor(factB,factA).
  0.7::factZ:-or(factC,factB).

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

  query(conclusion).
  
'Mary moved to the garden' or 'Emily is a cat' or both.