There is a better than even chance that Julius is green. It is certain that Greg is a rhino. There is a better than even chance that Brian is yellow. There is a better than even chance that if 'Brian is yellow and Julius is green' then Fred moved to the office. There is a better than even chance that if 'Greg is a rhino and Julius is green' then Mary picked up the milk. Chances are about even that if 'Julius is green' or 'Greg is a rhino' or both then John got the apple.
We believe that 'Mary picked up the milk and Brian is yellow'.
We doubt that 'Mary picked up the milk and Brian is yellow'.
We believe that 'Mary picked up the milk and Brian is yellow'.

  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.6::factA.
  1.0::factB.
  0.6::factC.
  %hop1
  0.6::factX:-and(factC,factA).
  0.6::factY:-and(factB,factA).
  0.5::factZ:-or(factA,factB).

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

  query(conclusion).
  
'Mary picked up the milk and Brian is yellow'.