Anne is blue. Anne is nice. Erin is cold. Erin is nice. Erin is quiet. Erin is red. Erin is young. Fiona is blue. Fiona is young. Gary is big. Gary is blue. Gary is cold. Gary is nice. Gary is quiet. Gary is red. Gary is young. If Erin is cold then Erin is nice. All nice things are big. All blue things are young. Blue, cold things are red. If Fiona is cold and Fiona is big then Fiona is blue. If Gary is cold and Gary is quiet then Gary is red. If something is big then it is cold. If Fiona is blue and Fiona is nice then Fiona is quiet.
Anne is blue.
("Anne" "is" "blue" "+")
Anne is nice.
("Anne" "is" "nice" "+")
Erin is cold.
("Erin" "is" "cold" "+")
Erin is nice.
("Erin" "is" "nice" "+")
Erin is quiet.
("Erin" "is" "quiet" "+")
Erin is red.
("Erin" "is" "red" "+")
Erin is young.
("Erin" "is" "young" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Fiona is young.
("Fiona" "is" "young" "+")
Gary is big.
("Gary" "is" "big" "+")
Gary is blue.
("Gary" "is" "blue" "+")
Gary is cold.
("Gary" "is" "cold" "+")
Gary is nice.
("Gary" "is" "nice" "+")
Gary is quiet.
("Gary" "is" "quiet" "+")
Gary is red.
("Gary" "is" "red" "+")
Gary is young.
("Gary" "is" "young" "+")
If Erin is cold then Erin is nice.
((("Erin" "is" "cold" "+")) -> ("Erin" "is" "nice" "+"))
All nice things are big.
((("something" "is" "nice" "+")) -> ("something" "is" "big" "+"))
All blue things are young.
((("something" "is" "blue" "+")) -> ("something" "is" "young" "+"))
Blue, cold things are red.
((("something" "is" "blue" "+") ("something" "is" "cold" "+")) -> ("something" "is" "red" "+"))
If Fiona is cold and Fiona is big then Fiona is blue.
((("Fiona" "is" "cold" "+") ("Fiona" "is" "big" "+")) -> ("Fiona" "is" "blue" "+"))
If Gary is cold and Gary is quiet then Gary is red.
((("Gary" "is" "cold" "+") ("Gary" "is" "quiet" "+")) -> ("Gary" "is" "red" "+"))
If something is big then it is cold.
((("something" "is" "big" "+")) -> ("something" "is" "cold" "+"))
If Fiona is blue and Fiona is nice then Fiona is quiet.
((("Fiona" "is" "blue" "+") ("Fiona" "is" "nice" "+")) -> ("Fiona" "is" "quiet" "+"))
Gary is red.
True
1
proof
[(triple15 OR ((triple11 triple12) -> rule4) OR ((triple12 triple14) -> rule6) OR ((triple11 ((triple10) -> rule7)) -> rule4) OR ((((triple10) -> rule7) triple14) -> rule6) OR ((triple11 ((((triple13) -> rule2)) -> rule7)) -> rule4) OR ((((((triple13) -> rule2)) -> rule7) triple14) -> rule6))]
("Gary" "is" "red" "+")
triple15
((triple11 triple12) -> (rule4 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
((triple12 triple14) -> (rule6 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
((triple11 ((triple10) -> (rule7 % int2))) -> (rule4 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
((((triple10) -> (rule7 % int2)) triple14) -> (rule6 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
((triple11 ((((triple13) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule4 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
Gary is big.
("Gary" "is" "big" "+")
int3
((((((triple13) -> (rule2 % int3))) -> (rule7 % int2)) triple14) -> (rule6 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
Gary is big.
("Gary" "is" "big" "+")
int3
Anne is not nice.
False
1
inv-proof
[(triple2)]
("Anne" "is" "nice" "-")
triple2
Anne is young.
True
2
proof
[(((triple1) -> rule3))]
("Anne" "is" "young" "+")
((triple1) -> (rule3 % int1))
Anne is young.
("Anne" "is" "young" "+")
int1
Anne is not young.
False
2
inv-proof
[(((triple1) -> rule3))]
("Anne" "is" "young" "-")
((triple1) -> (rule3 % int1))
Anne is young.
("Anne" "is" "young" "+")
int1
Anne is cold.
True
3
proof
[(((((triple2) -> rule2)) -> rule7))]
("Anne" "is" "cold" "+")
((((triple2) -> (rule2 % int2))) -> (rule7 % int1))
Anne is cold.
("Anne" "is" "cold" "+")
int1
Anne is big.
("Anne" "is" "big" "+")
int2
Anne is not cold.
False
3
inv-proof
[(((((triple2) -> rule2)) -> rule7))]
("Anne" "is" "cold" "-")
((((triple2) -> (rule2 % int2))) -> (rule7 % int1))
Anne is cold.
("Anne" "is" "cold" "+")
int1
Anne is big.
("Anne" "is" "big" "+")
int2
Anne is red.
True
5
proof
[(((triple1 ((((triple2) -> rule2)) -> rule7)) -> rule4))]
("Anne" "is" "red" "+")
((triple1 ((((triple2) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule4 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
Anne is cold.
("Anne" "is" "cold" "+")
int2
Anne is big.
("Anne" "is" "big" "+")
int3
Anne is not red.
False
5
inv-proof
[(((triple1 ((((triple2) -> rule2)) -> rule7)) -> rule4))]
("Anne" "is" "red" "-")
((triple1 ((((triple2) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule4 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
Anne is cold.
("Anne" "is" "cold" "+")
int2
Anne is big.
("Anne" "is" "big" "+")
int3
Fiona is not cold.
Unknown
inv-rconc
[@2: Fiona is cold.[CWA. Example of deepest failure = (rule7 <- rule2 <- FAIL)]]
("Fiona" "is" "cold" "-")
Fiona is quiet.
Unknown
rconc
[@1: Fiona is quiet.[CWA. Example of deepest failure = (rule8 <- FAIL)]]
("Fiona" "is" "quiet" "+")
Fiona is not big.
Unknown
inv-rconc
[@1: Fiona is big.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Fiona" "is" "big" "-")
Fiona is red.
Unknown
rconc
[@3: Fiona is red.[CWA. Example of deepest failure = (rule4 <- rule7 <- rule2 <- FAIL)]]
("Fiona" "is" "red" "+")
Erin is not blue.
Unknown
inv-random
[@0: Erin is blue.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "blue" "-")
Anne is quiet.
Unknown
random
[@0: Anne is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "quiet" "+")
@0: Anne is blue.[(triple1)] Anne is nice.[(triple2)] Erin is cold.[(triple3 OR ((((triple4) -> rule2)) -> rule7))] Erin is nice.[(triple4 OR ((triple3) -> rule1))] Erin is quiet.[(triple5)] Erin is red.[(triple6)] Erin is young.[(triple7)] Fiona is blue.[(triple8)] Fiona is young.[(triple9 OR ((triple8) -> rule3))] Gary is big.[(triple10 OR ((triple13) -> rule2))] Gary is blue.[(triple11)] Gary is cold.[(triple12 OR ((triple10) -> rule7) OR ((((triple13) -> rule2)) -> rule7))] Gary is nice.[(triple13)] Gary is quiet.[(triple14)] Gary is red.[(triple15 OR ((triple11 triple12) -> rule4) OR ((triple12 triple14) -> rule6) OR ((triple11 ((triple10) -> rule7)) -> rule4) OR ((((triple10) -> rule7) triple14) -> rule6) OR ((triple11 ((((triple13) -> rule2)) -> rule7)) -> rule4) OR ((((((triple13) -> rule2)) -> rule7) triple14) -> rule6))] Gary is young.[(triple16 OR ((triple11) -> rule3))] @1: Anne is big.[(((triple2) -> rule2))] Anne is young.[(((triple1) -> rule3))] Erin is big.[(((triple4) -> rule2) OR ((((triple3) -> rule1)) -> rule2))] @2: Anne is cold.[(((((triple2) -> rule2)) -> rule7))] @3: Anne is red.[(((triple1 ((((triple2) -> rule2)) -> rule7)) -> rule4))]
Anne is blue.
("Anne" "is" "blue" "+")
triple1
Anne is nice.
("Anne" "is" "nice" "+")
triple2
Erin is cold.
("Erin" "is" "cold" "+")
triple3
((((triple4) -> (rule2 % int2))) -> (rule7 % int1))
Erin is cold.
("Erin" "is" "cold" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
int2
Erin is nice.
("Erin" "is" "nice" "+")
triple4
((triple3) -> (rule1 % int1))
Erin is nice.
("Erin" "is" "nice" "+")
int1
Erin is quiet.
("Erin" "is" "quiet" "+")
triple5
Erin is red.
("Erin" "is" "red" "+")
triple6
Erin is young.
("Erin" "is" "young" "+")
triple7
Fiona is blue.
("Fiona" "is" "blue" "+")
triple8
Fiona is young.
("Fiona" "is" "young" "+")
triple9
((triple8) -> (rule3 % int1))
Fiona is young.
("Fiona" "is" "young" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
triple10
((triple13) -> (rule2 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is blue.
("Gary" "is" "blue" "+")
triple11
Gary is cold.
("Gary" "is" "cold" "+")
triple12
((triple10) -> (rule7 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
((((triple13) -> (rule2 % int2))) -> (rule7 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
Gary is nice.
("Gary" "is" "nice" "+")
triple13
Gary is quiet.
("Gary" "is" "quiet" "+")
triple14
Gary is red.
("Gary" "is" "red" "+")
triple15
((triple11 triple12) -> (rule4 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
((triple12 triple14) -> (rule6 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
((triple11 ((triple10) -> (rule7 % int2))) -> (rule4 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
((((triple10) -> (rule7 % int2)) triple14) -> (rule6 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
((triple11 ((((triple13) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule4 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
Gary is big.
("Gary" "is" "big" "+")
int3
((((((triple13) -> (rule2 % int3))) -> (rule7 % int2)) triple14) -> (rule6 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
Gary is big.
("Gary" "is" "big" "+")
int3
Gary is young.
("Gary" "is" "young" "+")
triple16
((triple11) -> (rule3 % int1))
Gary is young.
("Gary" "is" "young" "+")
int1
Anne is big.
("Anne" "is" "big" "+")
((triple2) -> (rule2 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is young.
("Anne" "is" "young" "+")
((triple1) -> (rule3 % int1))
Anne is young.
("Anne" "is" "young" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
((triple4) -> (rule2 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
((((triple3) -> (rule1 % int2))) -> (rule2 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
Erin is nice.
("Erin" "is" "nice" "+")
int2
Anne is cold.
("Anne" "is" "cold" "+")
((((triple2) -> (rule2 % int2))) -> (rule7 % int1))
Anne is cold.
("Anne" "is" "cold" "+")
int1
Anne is big.
("Anne" "is" "big" "+")
int2
Anne is red.
("Anne" "is" "red" "+")
((triple1 ((((triple2) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule4 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
Anne is cold.
("Anne" "is" "cold" "+")
int2
Anne is big.
("Anne" "is" "big" "+")
int3