It is impossible that Mary went to the bedroom. It is impossible that John left the football. We doubt that Greg is a rhino. There is almost no chance that if either 'John left the football' or 'Greg is a rhino' but not both then Bernhard is gray. Chances are slight that if 'John left the football' or 'Greg is a rhino' or both then Emily is a wolf. It is unlikely that if either 'Mary went to the bedroom' or 'Greg is a rhino' but not both then Lily is yellow.
It is almost certain that 'Mary went to the bedroom and John left the football'.
It is impossible that 'Mary went to the bedroom and John left the football'.
It is almost certain that 'Mary went to the bedroom and John left the football'.

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

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

  query(conclusion).
  
'Mary went to the bedroom and John left the football'.