Bob is big. Bob is blue. Bob is quiet. Dave is cold. Dave is kind. Dave is quiet. Fiona is blue. Fiona is cold. Fiona is nice. Fiona is smart. Gary is big. Gary is blue. Gary is cold. Gary is kind. Gary is quiet. If someone is kind and quiet then they are big. All quiet people are kind. Big people are blue. If Gary is quiet and Gary is smart then Gary is nice. If Gary is nice then Gary is big. All cold people are quiet.
Bob is big.
("Bob" "is" "big" "+")
Bob is blue.
("Bob" "is" "blue" "+")
Bob is quiet.
("Bob" "is" "quiet" "+")
Dave is cold.
("Dave" "is" "cold" "+")
Dave is kind.
("Dave" "is" "kind" "+")
Dave is quiet.
("Dave" "is" "quiet" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Fiona is cold.
("Fiona" "is" "cold" "+")
Fiona is nice.
("Fiona" "is" "nice" "+")
Fiona is smart.
("Fiona" "is" "smart" "+")
Gary is big.
("Gary" "is" "big" "+")
Gary is blue.
("Gary" "is" "blue" "+")
Gary is cold.
("Gary" "is" "cold" "+")
Gary is kind.
("Gary" "is" "kind" "+")
Gary is quiet.
("Gary" "is" "quiet" "+")
If someone is kind and quiet then they are big.
((("someone" "is" "kind" "+") ("someone" "is" "quiet" "+")) -> ("someone" "is" "big" "+"))
All quiet people are kind.
((("someone" "is" "quiet" "+")) -> ("someone" "is" "kind" "+"))
Big people are blue.
((("someone" "is" "big" "+")) -> ("someone" "is" "blue" "+"))
If Gary is quiet and Gary is smart then Gary is nice.
((("Gary" "is" "quiet" "+") ("Gary" "is" "smart" "+")) -> ("Gary" "is" "nice" "+"))
If Gary is nice then Gary is big.
((("Gary" "is" "nice" "+")) -> ("Gary" "is" "big" "+"))
All cold people are quiet.
((("someone" "is" "cold" "+")) -> ("someone" "is" "quiet" "+"))
Bob is quiet.
True
1
proof
[(triple3)]
("Bob" "is" "quiet" "+")
triple3
Gary is not cold.
False
1
inv-proof
[(triple13)]
("Gary" "is" "cold" "-")
triple13
Fiona is quiet.
True
2
proof
[(((triple8) -> rule6))]
("Fiona" "is" "quiet" "+")
((triple8) -> (rule6 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Bob is not kind.
False
2
inv-proof
[(((triple3) -> rule2))]
("Bob" "is" "kind" "-")
((triple3) -> (rule2 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Dave is blue.
True
4
proof
[(((((triple5 triple6) -> rule1)) -> rule3) OR ((((triple5 ((triple4) -> rule6)) -> rule1)) -> rule3) OR ((((((triple6) -> rule2) triple6) -> rule1)) -> rule3) OR ((((((triple6) -> rule2) ((triple4) -> rule6)) -> rule1)) -> rule3) OR ((((((((triple4) -> rule6)) -> rule2) triple6) -> rule1)) -> rule3) OR ((((((((triple4) -> rule6)) -> rule2) ((triple4) -> rule6)) -> rule1)) -> rule3))]
("Dave" "is" "blue" "+")
((((triple5 triple6) -> (rule1 % int2))) -> (rule3 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
((((triple5 ((triple4) -> (rule6 % int3))) -> (rule1 % int2))) -> (rule3 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
Dave is quiet.
("Dave" "is" "quiet" "+")
int3
((((((triple6) -> (rule2 % int3)) triple6) -> (rule1 % int2))) -> (rule3 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
Dave is kind.
("Dave" "is" "kind" "+")
int3
((((((triple6) -> (rule2 % int4)) ((triple4) -> (rule6 % int3))) -> (rule1 % int2))) -> (rule3 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
Dave is quiet.
("Dave" "is" "quiet" "+")
int3
Dave is kind.
("Dave" "is" "kind" "+")
int4
((((((((triple4) -> (rule6 % int4))) -> (rule2 % int3)) triple6) -> (rule1 % int2))) -> (rule3 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
Dave is kind.
("Dave" "is" "kind" "+")
int3
Dave is quiet.
("Dave" "is" "quiet" "+")
int4
((((((((triple4) -> (rule6 % int4))) -> (rule2 % int3)) ((triple4) -> (rule6 % int4))) -> (rule1 % int2))) -> (rule3 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
Dave is kind.
("Dave" "is" "kind" "+")
int3
Dave is quiet.
("Dave" "is" "quiet" "+")
int4
Fiona is not kind.
False
3
inv-proof
[(((((triple8) -> rule6)) -> rule2))]
("Fiona" "is" "kind" "-")
((((triple8) -> (rule6 % int2))) -> (rule2 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int2
Fiona is big.
True
6
proof
[(((((((triple8) -> rule6)) -> rule2) ((triple8) -> rule6)) -> rule1))]
("Fiona" "is" "big" "+")
((((((triple8) -> (rule6 % int3))) -> (rule2 % int2)) ((triple8) -> (rule6 % int3))) -> (rule1 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int3
Fiona is not big.
False
6
inv-proof
[(((((((triple8) -> rule6)) -> rule2) ((triple8) -> rule6)) -> rule1))]
("Fiona" "is" "big" "-")
((((((triple8) -> (rule6 % int3))) -> (rule2 % int2)) ((triple8) -> (rule6 % int3))) -> (rule1 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int3
Gary is not nice.
Unknown
inv-rconc
[@1: Gary is nice.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Gary" "is" "nice" "-")
Bob is cold.
Unknown
random
[@0: Bob is cold.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "cold" "+")
Gary is not smart.
Unknown
inv-random
[@0: Gary is smart.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "smart" "-")
Dave is smart.
Unknown
random
[@0: Dave is smart.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "smart" "+")
Bob is not smart.
Unknown
inv-random
[@0: Bob is smart.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "smart" "-")
Bob is nice.
Unknown
random
[@0: Bob is nice.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "nice" "+")
@0: Bob is big.[(triple1 OR ((((triple3) -> rule2) triple3) -> rule1))] Bob is blue.[(triple2 OR ((triple1) -> rule3) OR ((((((triple3) -> rule2) triple3) -> rule1)) -> rule3))] Bob is quiet.[(triple3)] Dave is cold.[(triple4)] Dave is kind.[(triple5 OR ((triple6) -> rule2) OR ((((triple4) -> rule6)) -> rule2))] Dave is quiet.[(triple6 OR ((triple4) -> rule6))] Fiona is blue.[(triple7 OR ((((((((triple8) -> rule6)) -> rule2) ((triple8) -> rule6)) -> rule1)) -> rule3))] Fiona is cold.[(triple8)] Fiona is nice.[(triple9)] Fiona is smart.[(triple10)] Gary is big.[(triple11 OR ((triple14 triple15) -> rule1) OR ((triple14 ((triple13) -> rule6)) -> rule1) OR ((((triple15) -> rule2) triple15) -> rule1) OR ((((triple15) -> rule2) ((triple13) -> rule6)) -> rule1) OR ((((((triple13) -> rule6)) -> rule2) triple15) -> rule1) OR ((((((triple13) -> rule6)) -> rule2) ((triple13) -> rule6)) -> rule1))] Gary is blue.[(triple12 OR ((triple11) -> rule3) OR ((((triple14 triple15) -> rule1)) -> rule3) OR ((((triple14 ((triple13) -> rule6)) -> rule1)) -> rule3) OR ((((((triple15) -> rule2) triple15) -> rule1)) -> rule3) OR ((((((triple15) -> rule2) ((triple13) -> rule6)) -> rule1)) -> rule3) OR ((((((((triple13) -> rule6)) -> rule2) triple15) -> rule1)) -> rule3) OR ((((((((triple13) -> rule6)) -> rule2) ((triple13) -> rule6)) -> rule1)) -> rule3))] Gary is cold.[(triple13)] Gary is kind.[(triple14 OR ((triple15) -> rule2) OR ((((triple13) -> rule6)) -> rule2))] Gary is quiet.[(triple15 OR ((triple13) -> rule6))] @1: Bob is kind.[(((triple3) -> rule2))] Dave is big.[(((triple5 triple6) -> rule1) OR ((triple5 ((triple4) -> rule6)) -> rule1) OR ((((triple6) -> rule2) triple6) -> rule1) OR ((((triple6) -> rule2) ((triple4) -> rule6)) -> rule1) OR ((((((triple4) -> rule6)) -> rule2) triple6) -> rule1) OR ((((((triple4) -> rule6)) -> rule2) ((triple4) -> rule6)) -> rule1))] Fiona is quiet.[(((triple8) -> rule6))] @2: Dave is blue.[(((((triple5 triple6) -> rule1)) -> rule3) OR ((((triple5 ((triple4) -> rule6)) -> rule1)) -> rule3) OR ((((((triple6) -> rule2) triple6) -> rule1)) -> rule3) OR ((((((triple6) -> rule2) ((triple4) -> rule6)) -> rule1)) -> rule3) OR ((((((((triple4) -> rule6)) -> rule2) triple6) -> rule1)) -> rule3) OR ((((((((triple4) -> rule6)) -> rule2) ((triple4) -> rule6)) -> rule1)) -> rule3))] Fiona is kind.[(((((triple8) -> rule6)) -> rule2))] @3: Fiona is big.[(((((((triple8) -> rule6)) -> rule2) ((triple8) -> rule6)) -> rule1))]
Bob is big.
("Bob" "is" "big" "+")
triple1
((((triple3) -> (rule2 % int2)) triple3) -> (rule1 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
Bob is kind.
("Bob" "is" "kind" "+")
int2
Bob is blue.
("Bob" "is" "blue" "+")
triple2
((triple1) -> (rule3 % int1))
Bob is blue.
("Bob" "is" "blue" "+")
int1
((((((triple3) -> (rule2 % int3)) triple3) -> (rule1 % int2))) -> (rule3 % int1))
Bob is blue.
("Bob" "is" "blue" "+")
int1
Bob is big.
("Bob" "is" "big" "+")
int2
Bob is kind.
("Bob" "is" "kind" "+")
int3
Bob is quiet.
("Bob" "is" "quiet" "+")
triple3
Dave is cold.
("Dave" "is" "cold" "+")
triple4
Dave is kind.
("Dave" "is" "kind" "+")
triple5
((triple6) -> (rule2 % int1))
Dave is kind.
("Dave" "is" "kind" "+")
int1
((((triple4) -> (rule6 % int2))) -> (rule2 % int1))
Dave is kind.
("Dave" "is" "kind" "+")
int1
Dave is quiet.
("Dave" "is" "quiet" "+")
int2
Dave is quiet.
("Dave" "is" "quiet" "+")
triple6
((triple4) -> (rule6 % int1))
Dave is quiet.
("Dave" "is" "quiet" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
triple7
((((((((triple8) -> (rule6 % int4))) -> (rule2 % int3)) ((triple8) -> (rule6 % int4))) -> (rule1 % int2))) -> (rule3 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is big.
("Fiona" "is" "big" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
int3
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int4
Fiona is cold.
("Fiona" "is" "cold" "+")
triple8
Fiona is nice.
("Fiona" "is" "nice" "+")
triple9
Fiona is smart.
("Fiona" "is" "smart" "+")
triple10
Gary is big.
("Gary" "is" "big" "+")
triple11
((triple14 triple15) -> (rule1 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
((triple14 ((triple13) -> (rule6 % int2))) -> (rule1 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
((((triple15) -> (rule2 % int2)) triple15) -> (rule1 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
int2
((((triple15) -> (rule2 % int3)) ((triple13) -> (rule6 % int2))) -> (rule1 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
Gary is kind.
("Gary" "is" "kind" "+")
int3
((((((triple13) -> (rule6 % int3))) -> (rule2 % int2)) triple15) -> (rule1 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
int2
Gary is quiet.
("Gary" "is" "quiet" "+")
int3
((((((triple13) -> (rule6 % int3))) -> (rule2 % int2)) ((triple13) -> (rule6 % int3))) -> (rule1 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
int2
Gary is quiet.
("Gary" "is" "quiet" "+")
int3
Gary is blue.
("Gary" "is" "blue" "+")
triple12
((triple11) -> (rule3 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
((((triple14 triple15) -> (rule1 % int2))) -> (rule3 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
((((triple14 ((triple13) -> (rule6 % int3))) -> (rule1 % int2))) -> (rule3 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
Gary is quiet.
("Gary" "is" "quiet" "+")
int3
((((((triple15) -> (rule2 % int3)) triple15) -> (rule1 % int2))) -> (rule3 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
Gary is kind.
("Gary" "is" "kind" "+")
int3
((((((triple15) -> (rule2 % int4)) ((triple13) -> (rule6 % int3))) -> (rule1 % int2))) -> (rule3 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
Gary is quiet.
("Gary" "is" "quiet" "+")
int3
Gary is kind.
("Gary" "is" "kind" "+")
int4
((((((((triple13) -> (rule6 % int4))) -> (rule2 % int3)) triple15) -> (rule1 % int2))) -> (rule3 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
Gary is kind.
("Gary" "is" "kind" "+")
int3
Gary is quiet.
("Gary" "is" "quiet" "+")
int4
((((((((triple13) -> (rule6 % int4))) -> (rule2 % int3)) ((triple13) -> (rule6 % int4))) -> (rule1 % int2))) -> (rule3 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
Gary is kind.
("Gary" "is" "kind" "+")
int3
Gary is quiet.
("Gary" "is" "quiet" "+")
int4
Gary is cold.
("Gary" "is" "cold" "+")
triple13
Gary is kind.
("Gary" "is" "kind" "+")
triple14
((triple15) -> (rule2 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
((((triple13) -> (rule6 % int2))) -> (rule2 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
Gary is quiet.
("Gary" "is" "quiet" "+")
triple15
((triple13) -> (rule6 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Bob is kind.
("Bob" "is" "kind" "+")
((triple3) -> (rule2 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
((triple5 triple6) -> (rule1 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
((triple5 ((triple4) -> (rule6 % int2))) -> (rule1 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
Dave is quiet.
("Dave" "is" "quiet" "+")
int2
((((triple6) -> (rule2 % int2)) triple6) -> (rule1 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
Dave is kind.
("Dave" "is" "kind" "+")
int2
((((triple6) -> (rule2 % int3)) ((triple4) -> (rule6 % int2))) -> (rule1 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
Dave is quiet.
("Dave" "is" "quiet" "+")
int2
Dave is kind.
("Dave" "is" "kind" "+")
int3
((((((triple4) -> (rule6 % int3))) -> (rule2 % int2)) triple6) -> (rule1 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
Dave is kind.
("Dave" "is" "kind" "+")
int2
Dave is quiet.
("Dave" "is" "quiet" "+")
int3
((((((triple4) -> (rule6 % int3))) -> (rule2 % int2)) ((triple4) -> (rule6 % int3))) -> (rule1 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
Dave is kind.
("Dave" "is" "kind" "+")
int2
Dave is quiet.
("Dave" "is" "quiet" "+")
int3
Fiona is quiet.
("Fiona" "is" "quiet" "+")
((triple8) -> (rule6 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Dave is blue.
("Dave" "is" "blue" "+")
((((triple5 triple6) -> (rule1 % int2))) -> (rule3 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
((((triple5 ((triple4) -> (rule6 % int3))) -> (rule1 % int2))) -> (rule3 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
Dave is quiet.
("Dave" "is" "quiet" "+")
int3
((((((triple6) -> (rule2 % int3)) triple6) -> (rule1 % int2))) -> (rule3 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
Dave is kind.
("Dave" "is" "kind" "+")
int3
((((((triple6) -> (rule2 % int4)) ((triple4) -> (rule6 % int3))) -> (rule1 % int2))) -> (rule3 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
Dave is quiet.
("Dave" "is" "quiet" "+")
int3
Dave is kind.
("Dave" "is" "kind" "+")
int4
((((((((triple4) -> (rule6 % int4))) -> (rule2 % int3)) triple6) -> (rule1 % int2))) -> (rule3 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
Dave is kind.
("Dave" "is" "kind" "+")
int3
Dave is quiet.
("Dave" "is" "quiet" "+")
int4
((((((((triple4) -> (rule6 % int4))) -> (rule2 % int3)) ((triple4) -> (rule6 % int4))) -> (rule1 % int2))) -> (rule3 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
Dave is kind.
("Dave" "is" "kind" "+")
int3
Dave is quiet.
("Dave" "is" "quiet" "+")
int4
Fiona is kind.
("Fiona" "is" "kind" "+")
((((triple8) -> (rule6 % int2))) -> (rule2 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int2
Fiona is big.
("Fiona" "is" "big" "+")
((((((triple8) -> (rule6 % int3))) -> (rule2 % int2)) ((triple8) -> (rule6 % int3))) -> (rule1 % int1))
Fiona is big.
("Fiona" "is" "big" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int3