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