It is improbable that Brian is yellow. It is probably not the case that Mary is in the hallway. There is little chance that Winona is a wolf. It is unlikely that if 'Winona is a wolf' or 'Brian is yellow' or both then Bernhard is a frog. There is little chance that if either 'Mary is in the hallway' or 'Winona is a wolf' but not both then John took the football. Chances are slight that if 'Winona is a wolf and Mary is in the hallway' then Greg is green.
It is almost certain that 'Mary is in the hallway and Greg is green'.
It is impossible that 'Mary is in the hallway and Greg is green'.
It is almost certain that 'Mary is in the hallway and Greg is green'.

  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.1::factA.
  0.25::factB.
  0.1::factC.
  %hop1
  0.2::factX:-or(factC,factA).
  0.1::factY:-xor(factB,factC).
  0.1::factZ:-and(factC,factB).

  %hop2
  conclusion:-and(factB,factZ).

  query(conclusion).
  
'Mary is in the hallway and Greg is green'.