It is probably not the case that Gertrude is a sheep. It is certain that Sandra left the milk. It is impossible that Lily is green. It is unlikely that if 'Lily is green and Sandra left the milk' then John picked up the apple. It is probable that if 'Lily is green and Sandra left the milk' then Greg is white. It is probable that if 'Lily is green' or 'Sandra left the milk' or both then Julius is yellow.
It is impossible that 'Gertrude is a sheep and Greg is white'.
It is impossible that 'Gertrude is a sheep and Greg is white'.
We believe that 'Gertrude is a sheep and Greg is white'.

  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.25::factA.
  1.0::factB.
  0.0::factC.
  %hop1
  0.2::factX:-and(factC,factB).
  0.7::factY:-and(factC,factB).
  0.7::factZ:-or(factC,factB).

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

  query(conclusion).
  
'Gertrude is a sheep and Greg is white'.