It is impossible that Julius is yellow. Chances are slight that Bill went to the garden. It is certain that Greg is gray. It is unlikely that if 'Bill went to the garden and Greg is gray' then Brian is a frog. Chances are slight that if either 'Bill went to the garden' or 'Greg is gray' but not both then Fred is in the school. It is probable that if either 'Greg is gray' or 'Julius is yellow' but not both then Mary dropped the milk.
It is highly unlikely that 'Brian is a frog' or 'Greg is gray' or both.
It is certain that 'Brian is a frog' or 'Greg is gray' or both.
It is highly unlikely that 'Brian is a frog' or 'Greg is gray' 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.0::factA.
  0.1::factB.
  1.0::factC.
  %hop1
  0.2::factX:-and(factB,factC).
  0.1::factY:-xor(factB,factC).
  0.7::factZ:-xor(factC,factA).

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

  query(conclusion).
  
'Brian is a frog' or 'Greg is gray' or both.