context: It is highly unlikely that Mary went to the office. There is a very good chance that John took the apple. Chances are about even that Julius is gray. It is impossible that if either 'Julius is gray' or 'John took the apple' but not both then Lily is white. Chances are slight that if either 'Mary went to the office' or 'John took the apple' but not both then Greg is white. Chances are slight that if either 'Julius is gray' or 'Mary went to the office' but not both then Sandra left the football.
hypothesis: It is probably the case that 'John took the apple and Mary went to the office'.
valid_hypothesis: It is highly unlikely that 'John took the apple and Mary went to the office'.
invalid_hypothesis: It is probably the case that 'John took the apple and Mary went to the office'.
problog: 
    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.05::factA.
    0.8::factB.
    0.5::factC.
    %hop1
    0.0::factX:-xor(factC,factB).
    0.1::factY:-xor(factA,factB).
    0.1::factZ:-xor(factC,factA).
  
    %hop2
    conclusion:-and(factB,factA).
  
    query(conclusion).
    
hypothesis_assertion: 'John took the apple and Mary went to the office'.