It is impossible that Greg is a frog. It is likely that Jason is tired. We doubt that Lily is gray. It is probable that if 'Greg is a frog and Lily is gray' then Bill went to the bedroom. It is improbable that if 'Jason is tired' or 'Lily is gray' or both then Bernhard is gray. It is almost certain that if 'Jason is tired' or 'Lily is gray' or both then John moved to the office.
It is likely that 'Bernhard is gray' or 'Jason is tired' or both.
It is likely that 'Bernhard is gray' or 'Jason is tired' or both.
Chances are slight that 'Bernhard is gray' or 'Jason is tired' 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.7::factB.
  0.2::factC.
  %hop1
  0.7::factX:-and(factA,factC).
  0.1::factY:-or(factB,factC).
  0.95::factZ:-or(factB,factC).

  %hop2
  conclusion:-or(factY,factB).

  query(conclusion).
  
'Bernhard is gray' or 'Jason is tired' or both.