We believe that John moved to the office. It is almost certain that Julius is green. There is almost no chance that Greg is a lion. We doubt that if either 'Julius is green' or 'Greg is a lion' but not both then Brian is a frog. We doubt that if 'John moved to the office' or 'Greg is a lion' or both then Mary went to the bedroom. It is probably not the case that if 'Julius is green' or 'John moved to the office' or both then Lily is yellow.
There is almost no chance that 'Greg is a lion and John moved to the office'.
There is almost no chance that 'Greg is a lion and John moved to the office'.
It is likely that 'Greg is a lion and John moved to the office'.

  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.95::factB.
  0.02::factC.
  %hop1
  0.2::factX:-xor(factB,factC).
  0.2::factY:-or(factA,factC).
  0.25::factZ:-or(factB,factA).

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

  query(conclusion).
  
'Greg is a lion and John moved to the office'.