It is highly likely that Lily is a lion. There is almost no chance that Mary went to the bedroom. It is highly likely that John grabbed the apple. We doubt that if 'Mary went to the bedroom' or 'John grabbed the apple' or both then Winona is a wolf. It is probably the case that if 'Lily is a lion' or 'Mary went to the bedroom' or both then Greg is green. It is probably not the case that if either 'John grabbed the apple' or 'Mary went to the bedroom' but not both then Julius is yellow.
It is probable that 'Mary went to the bedroom and Greg is green'.
There is almost no chance that 'Mary went to the bedroom and Greg is green'.
It is probable that 'Mary went to the bedroom 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.9::factA.
  0.02::factB.
  0.9::factC.
  %hop1
  0.2::factX:-or(factB,factC).
  0.7::factY:-or(factA,factB).
  0.25::factZ:-xor(factC,factB).

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

  query(conclusion).
  
'Mary went to the bedroom and Greg is green'.