It is impossible that Greg is a frog. We doubt that Lily is green. It is likely that John went to the office. It is highly unlikely that if 'John went to the office and Greg is a frog' then Bernhard is a swan. It is highly unlikely that if 'Lily is green and John went to the office' then Sandra took the milk. There is little chance that if 'John went to the office and Lily is green' then Emily is a mouse.
It is impossible that 'Greg is a frog and Sandra took the milk'.
It is impossible that 'Greg is a frog and Sandra took the milk'.
It is highly likely that 'Greg is a frog and Sandra took the milk'.

  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.0::factA.
  0.2::factB.
  0.7::factC.
  %hop1
  0.05::factX:-and(factC,factA).
  0.05::factY:-and(factB,factC).
  0.1::factZ:-and(factC,factB).

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

  query(conclusion).
  
'Greg is a frog and Sandra took the milk'.