Anne is white. Bob is kind. Fiona is cold. Fiona is not round. Fiona is white. Gary is kind. Gary is young. If something is big then it is young. Round things are young. Cold things are white. Nice things are big. Kind things are nice. White things are nice. If something is young then it is cold.
Anne is white.
("Anne" "is" "white" "+")
Bob is kind.
("Bob" "is" "kind" "+")
Fiona is cold.
("Fiona" "is" "cold" "+")
Fiona is not round.
("Fiona" "is" "round" "-")
Fiona is white.
("Fiona" "is" "white" "+")
Gary is kind.
("Gary" "is" "kind" "+")
Gary is young.
("Gary" "is" "young" "+")
If something is big then it is young.
((("something" "is" "big" "+")) -> ("something" "is" "young" "+"))
Round things are young.
((("something" "is" "round" "+")) -> ("something" "is" "young" "+"))
Cold things are white.
((("something" "is" "cold" "+")) -> ("something" "is" "white" "+"))
Nice things are big.
((("something" "is" "nice" "+")) -> ("something" "is" "big" "+"))
Kind things are nice.
((("something" "is" "kind" "+")) -> ("something" "is" "nice" "+"))
White things are nice.
((("something" "is" "white" "+")) -> ("something" "is" "nice" "+"))
If something is young then it is cold.
((("something" "is" "young" "+")) -> ("something" "is" "cold" "+"))
Fiona is white.
True
1
proof
[(triple5 OR ((triple3) -> rule3))]
("Fiona" "is" "white" "+")
triple5
((triple3) -> (rule3 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Bob is not kind.
False
1
inv-proof
[(triple2)]
("Bob" "is" "kind" "-")
triple2
Gary is nice.
True
2
proof
[(((triple6) -> rule5) OR ((((((triple7) -> rule7)) -> rule3)) -> rule6))]
("Gary" "is" "nice" "+")
((triple6) -> (rule5 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
((((((triple7) -> (rule7 % int3))) -> (rule3 % int2))) -> (rule6 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is white.
("Gary" "is" "white" "+")
int2
Gary is cold.
("Gary" "is" "cold" "+")
int3
Anne is not nice.
False
2
inv-proof
[(((triple1) -> rule6))]
("Anne" "is" "nice" "-")
((triple1) -> (rule6 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Gary is big.
True
3
proof
[(((((triple6) -> rule5)) -> rule4) OR ((((((((triple7) -> rule7)) -> rule3)) -> rule6)) -> rule4))]
("Gary" "is" "big" "+")
((((triple6) -> (rule5 % int2))) -> (rule4 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is nice.
("Gary" "is" "nice" "+")
int2
((((((((triple7) -> (rule7 % int4))) -> (rule3 % int3))) -> (rule6 % int2))) -> (rule4 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is nice.
("Gary" "is" "nice" "+")
int2
Gary is white.
("Gary" "is" "white" "+")
int3
Gary is cold.
("Gary" "is" "cold" "+")
int4
Fiona is not big.
False
3
inv-proof
[(((((triple5) -> rule6)) -> rule4) OR ((((((triple3) -> rule3)) -> rule6)) -> rule4))]
("Fiona" "is" "big" "-")
((((triple5) -> (rule6 % int2))) -> (rule4 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
int2
((((((triple3) -> (rule3 % int3))) -> (rule6 % int2))) -> (rule4 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
int2
Fiona is white.
("Fiona" "is" "white" "+")
int3
Bob is young.
True
4
proof
[(((((((triple2) -> rule5)) -> rule4)) -> rule1))]
("Bob" "is" "young" "+")
((((((triple2) -> (rule5 % int3))) -> (rule4 % int2))) -> (rule1 % int1))
Bob is young.
("Bob" "is" "young" "+")
int1
Bob is big.
("Bob" "is" "big" "+")
int2
Bob is nice.
("Bob" "is" "nice" "+")
int3
Bob is not young.
False
4
inv-proof
[(((((((triple2) -> rule5)) -> rule4)) -> rule1))]
("Bob" "is" "young" "-")
((((((triple2) -> (rule5 % int3))) -> (rule4 % int2))) -> (rule1 % int1))
Bob is young.
("Bob" "is" "young" "+")
int1
Bob is big.
("Bob" "is" "big" "+")
int2
Bob is nice.
("Bob" "is" "nice" "+")
int3
Bob is cold.
True
5
proof
[(((((((((triple2) -> rule5)) -> rule4)) -> rule1)) -> rule7))]
("Bob" "is" "cold" "+")
((((((((triple2) -> (rule5 % int4))) -> (rule4 % int3))) -> (rule1 % int2))) -> (rule7 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
Bob is young.
("Bob" "is" "young" "+")
int2
Bob is big.
("Bob" "is" "big" "+")
int3
Bob is nice.
("Bob" "is" "nice" "+")
int4
Bob is not cold.
False
5
inv-proof
[(((((((((triple2) -> rule5)) -> rule4)) -> rule1)) -> rule7))]
("Bob" "is" "cold" "-")
((((((((triple2) -> (rule5 % int4))) -> (rule4 % int3))) -> (rule1 % int2))) -> (rule7 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
Bob is young.
("Bob" "is" "young" "+")
int2
Bob is big.
("Bob" "is" "big" "+")
int3
Bob is nice.
("Bob" "is" "nice" "+")
int4
Bob is white.
True
6
proof
[(((((((((((triple2) -> rule5)) -> rule4)) -> rule1)) -> rule7)) -> rule3))]
("Bob" "is" "white" "+")
((((((((((triple2) -> (rule5 % int5))) -> (rule4 % int4))) -> (rule1 % int3))) -> (rule7 % int2))) -> (rule3 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
Bob is cold.
("Bob" "is" "cold" "+")
int2
Bob is young.
("Bob" "is" "young" "+")
int3
Bob is big.
("Bob" "is" "big" "+")
int4
Bob is nice.
("Bob" "is" "nice" "+")
int5
Bob is not white.
False
6
inv-proof
[(((((((((((triple2) -> rule5)) -> rule4)) -> rule1)) -> rule7)) -> rule3))]
("Bob" "is" "white" "-")
((((((((((triple2) -> (rule5 % int5))) -> (rule4 % int4))) -> (rule1 % int3))) -> (rule7 % int2))) -> (rule3 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
Bob is cold.
("Bob" "is" "cold" "+")
int2
Bob is young.
("Bob" "is" "young" "+")
int3
Bob is big.
("Bob" "is" "big" "+")
int4
Bob is nice.
("Bob" "is" "nice" "+")
int5
Bob is not round.
Unknown
inv-random
[@0: Bob is round.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "round" "-")
Fiona is kind.
Unknown
random
[@0: Fiona is kind.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "kind" "+")
Gary is not round.
Unknown
inv-random
[@0: Gary is round.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "round" "-")
Anne is kind.
Unknown
random
[@0: Anne is kind.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "kind" "+")
@0: Anne is white.[(triple1)] Bob is kind.[(triple2)] Fiona is cold.[(triple3 OR ((((((((triple5) -> rule6)) -> rule4)) -> rule1)) -> rule7))] Fiona is not round.[(triple4)] Fiona is white.[(triple5 OR ((triple3) -> rule3))] Gary is kind.[(triple6)] Gary is young.[(triple7 OR ((((((triple6) -> rule5)) -> rule4)) -> rule1))] @1: Anne is nice.[(((triple1) -> rule6))] Bob is nice.[(((triple2) -> rule5))] Fiona is nice.[(((triple5) -> rule6) OR ((((triple3) -> rule3)) -> rule6))] Gary is cold.[(((triple7) -> rule7) OR ((((((((triple6) -> rule5)) -> rule4)) -> rule1)) -> rule7))] Gary is nice.[(((triple6) -> rule5) OR ((((((triple7) -> rule7)) -> rule3)) -> rule6))] @2: Anne is big.[(((((triple1) -> rule6)) -> rule4))] Bob is big.[(((((triple2) -> rule5)) -> rule4))] Fiona is big.[(((((triple5) -> rule6)) -> rule4) OR ((((((triple3) -> rule3)) -> rule6)) -> rule4))] Gary is big.[(((((triple6) -> rule5)) -> rule4) OR ((((((((triple7) -> rule7)) -> rule3)) -> rule6)) -> rule4))] Gary is white.[(((((triple7) -> rule7)) -> rule3) OR ((((((((((triple6) -> rule5)) -> rule4)) -> rule1)) -> rule7)) -> rule3))] @3: Anne is young.[(((((((triple1) -> rule6)) -> rule4)) -> rule1))] Bob is young.[(((((((triple2) -> rule5)) -> rule4)) -> rule1))] Fiona is young.[(((((((triple5) -> rule6)) -> rule4)) -> rule1) OR ((((((((triple3) -> rule3)) -> rule6)) -> rule4)) -> rule1))] @4: Anne is cold.[(((((((((triple1) -> rule6)) -> rule4)) -> rule1)) -> rule7))] Bob is cold.[(((((((((triple2) -> rule5)) -> rule4)) -> rule1)) -> rule7))] @5: Bob is white.[(((((((((((triple2) -> rule5)) -> rule4)) -> rule1)) -> rule7)) -> rule3))]
Anne is white.
("Anne" "is" "white" "+")
triple1
Bob is kind.
("Bob" "is" "kind" "+")
triple2
Fiona is cold.
("Fiona" "is" "cold" "+")
triple3
((((((((triple5) -> (rule6 % int4))) -> (rule4 % int3))) -> (rule1 % int2))) -> (rule7 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is young.
("Fiona" "is" "young" "+")
int2
Fiona is big.
("Fiona" "is" "big" "+")
int3
Fiona is nice.
("Fiona" "is" "nice" "+")
int4
Fiona is not round.
("Fiona" "is" "round" "-")
triple4
Fiona is white.
("Fiona" "is" "white" "+")
triple5
((triple3) -> (rule3 % int1))
Fiona is white.
("Fiona" "is" "white" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
triple6
Gary is young.
("Gary" "is" "young" "+")
triple7
((((((triple6) -> (rule5 % int3))) -> (rule4 % int2))) -> (rule1 % int1))
Gary is young.
("Gary" "is" "young" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
Gary is nice.
("Gary" "is" "nice" "+")
int3
Anne is nice.
("Anne" "is" "nice" "+")
((triple1) -> (rule6 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Bob is nice.
("Bob" "is" "nice" "+")
((triple2) -> (rule5 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
((triple5) -> (rule6 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
((((triple3) -> (rule3 % int2))) -> (rule6 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is white.
("Fiona" "is" "white" "+")
int2
Gary is cold.
("Gary" "is" "cold" "+")
((triple7) -> (rule7 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
((((((((triple6) -> (rule5 % int4))) -> (rule4 % int3))) -> (rule1 % int2))) -> (rule7 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
Gary is young.
("Gary" "is" "young" "+")
int2
Gary is big.
("Gary" "is" "big" "+")
int3
Gary is nice.
("Gary" "is" "nice" "+")
int4
Gary is nice.
("Gary" "is" "nice" "+")
((triple6) -> (rule5 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
((((((triple7) -> (rule7 % int3))) -> (rule3 % int2))) -> (rule6 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is white.
("Gary" "is" "white" "+")
int2
Gary is cold.
("Gary" "is" "cold" "+")
int3
Anne is big.
("Anne" "is" "big" "+")
((((triple1) -> (rule6 % int2))) -> (rule4 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is nice.
("Anne" "is" "nice" "+")
int2
Bob is big.
("Bob" "is" "big" "+")
((((triple2) -> (rule5 % int2))) -> (rule4 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
Bob is nice.
("Bob" "is" "nice" "+")
int2
Fiona is big.
("Fiona" "is" "big" "+")
((((triple5) -> (rule6 % int2))) -> (rule4 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
int2
((((((triple3) -> (rule3 % int3))) -> (rule6 % int2))) -> (rule4 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
int2
Fiona is white.
("Fiona" "is" "white" "+")
int3
Gary is big.
("Gary" "is" "big" "+")
((((triple6) -> (rule5 % int2))) -> (rule4 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is nice.
("Gary" "is" "nice" "+")
int2
((((((((triple7) -> (rule7 % int4))) -> (rule3 % int3))) -> (rule6 % int2))) -> (rule4 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is nice.
("Gary" "is" "nice" "+")
int2
Gary is white.
("Gary" "is" "white" "+")
int3
Gary is cold.
("Gary" "is" "cold" "+")
int4
Gary is white.
("Gary" "is" "white" "+")
((((triple7) -> (rule7 % int2))) -> (rule3 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
((((((((((triple6) -> (rule5 % int5))) -> (rule4 % int4))) -> (rule1 % int3))) -> (rule7 % int2))) -> (rule3 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
Gary is young.
("Gary" "is" "young" "+")
int3
Gary is big.
("Gary" "is" "big" "+")
int4
Gary is nice.
("Gary" "is" "nice" "+")
int5
Anne is young.
("Anne" "is" "young" "+")
((((((triple1) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule1 % int1))
Anne is young.
("Anne" "is" "young" "+")
int1
Anne is big.
("Anne" "is" "big" "+")
int2
Anne is nice.
("Anne" "is" "nice" "+")
int3
Bob is young.
("Bob" "is" "young" "+")
((((((triple2) -> (rule5 % int3))) -> (rule4 % int2))) -> (rule1 % int1))
Bob is young.
("Bob" "is" "young" "+")
int1
Bob is big.
("Bob" "is" "big" "+")
int2
Bob is nice.
("Bob" "is" "nice" "+")
int3
Fiona is young.
("Fiona" "is" "young" "+")
((((((triple5) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule1 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is big.
("Fiona" "is" "big" "+")
int2
Fiona is nice.
("Fiona" "is" "nice" "+")
int3
((((((((triple3) -> (rule3 % int4))) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule1 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Fiona is big.
("Fiona" "is" "big" "+")
int2
Fiona is nice.
("Fiona" "is" "nice" "+")
int3
Fiona is white.
("Fiona" "is" "white" "+")
int4
Anne is cold.
("Anne" "is" "cold" "+")
((((((((triple1) -> (rule6 % int4))) -> (rule4 % int3))) -> (rule1 % int2))) -> (rule7 % int1))
Anne is cold.
("Anne" "is" "cold" "+")
int1
Anne is young.
("Anne" "is" "young" "+")
int2
Anne is big.
("Anne" "is" "big" "+")
int3
Anne is nice.
("Anne" "is" "nice" "+")
int4
Bob is cold.
("Bob" "is" "cold" "+")
((((((((triple2) -> (rule5 % int4))) -> (rule4 % int3))) -> (rule1 % int2))) -> (rule7 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
Bob is young.
("Bob" "is" "young" "+")
int2
Bob is big.
("Bob" "is" "big" "+")
int3
Bob is nice.
("Bob" "is" "nice" "+")
int4
Bob is white.
("Bob" "is" "white" "+")
((((((((((triple2) -> (rule5 % int5))) -> (rule4 % int4))) -> (rule1 % int3))) -> (rule7 % int2))) -> (rule3 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
Bob is cold.
("Bob" "is" "cold" "+")
int2
Bob is young.
("Bob" "is" "young" "+")
int3
Bob is big.
("Bob" "is" "big" "+")
int4
Bob is nice.
("Bob" "is" "nice" "+")
int5