Alan is a nice person who is red because he has a rash. Because Bob is so young, he is rough and cold when he can be round instead. Charlie was born only a few years ago so he is young. Gary is a nice, kind young man.  Gary keeps a sweater with him because he is always cold. A cold person who is round but rough around the edges is big. Rough people are often round. Rough and kind people are big. Don't be surprised to hear that all nice, kind folks are in fact rough. People who are cold even when they're nice and round, they are young. People who are rough are often rather kind as well. When a round individual is nice to others, they are also feeling blue.
Alan is red.
("Alan" "is" "red" "+")
Alan is nice.
("Alan" "is" "nice" "+")
Bob is young.
("Bob" "is" "young" "+")
Bob is round.
("Bob" "is" "round" "+")
Bob is rough.
("Bob" "is" "rough" "+")
Bob is cold.
("Bob" "is" "cold" "+")
Charlie is young.
("Charlie" "is" "young" "+")
Gary is young.
("Gary" "is" "young" "+")
Gary is nice.
("Gary" "is" "nice" "+")
Gary is kind.
("Gary" "is" "kind" "+")
Gary is cold.
("Gary" "is" "cold" "+")
If someone is round and cold and rough then they are big.
((("someone" "is" "round" "+") ("someone" "is" "cold" "+") ("someone" "is" "rough" "+")) -> ("someone" "is" "big" "+"))
If someone is rough then they are round.
((("someone" "is" "rough" "+")) -> ("someone" "is" "round" "+"))
If someone is rough and kind then they are big.
((("someone" "is" "rough" "+") ("someone" "is" "kind" "+")) -> ("someone" "is" "big" "+"))
If someone is nice and kind then they are rough.
((("someone" "is" "nice" "+") ("someone" "is" "kind" "+")) -> ("someone" "is" "rough" "+"))
If someone is nice and round and cold then they are young.
((("someone" "is" "nice" "+") ("someone" "is" "round" "+") ("someone" "is" "cold" "+")) -> ("someone" "is" "young" "+"))
If someone is rough then they are kind.
((("someone" "is" "rough" "+")) -> ("someone" "is" "kind" "+"))
If someone is round and nice then they are blue.
((("someone" "is" "round" "+") ("someone" "is" "nice" "+")) -> ("someone" "is" "blue" "+"))
Gary is cold.
True
1
proof
[(triple11)]
("Gary" "is" "cold" "+")
triple11
Bob is not rough.
False
1
inv-proof
[(triple5)]
("Bob" "is" "rough" "-")
triple5
Gary is rough.
True
3
proof
[(((triple9 triple10) -> rule4))]
("Gary" "is" "rough" "+")
((triple9 triple10) -> (rule4 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Bob is not big.
False
4
inv-proof
[(((triple4 triple6 triple5) -> rule1) OR ((triple5 ((triple5) -> rule6)) -> rule3) OR ((((triple5) -> rule2) triple6 triple5) -> rule1))]
("Bob" "is" "big" "-")
((triple4 triple6 triple5) -> (rule1 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
((triple5 ((triple5) -> (rule6 % int2))) -> (rule3 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
Bob is kind.
("Bob" "is" "kind" "+")
int2
((((triple5) -> (rule2 % int2)) triple6 triple5) -> (rule1 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
Bob is round.
("Bob" "is" "round" "+")
int2
Gary is round.
True
4
proof
[(((((triple9 triple10) -> rule4)) -> rule2))]
("Gary" "is" "round" "+")
((((triple9 triple10) -> (rule4 % int2))) -> (rule2 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is not big.
False
5
inv-proof
[(((((triple9 triple10) -> rule4) triple10) -> rule3) OR ((((((triple9 triple10) -> rule4)) -> rule2) triple11 ((triple9 triple10) -> rule4)) -> rule1))]
("Gary" "is" "big" "-")
((((triple9 triple10) -> (rule4 % int2)) triple10) -> (rule3 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
((((((triple9 triple10) -> (rule4 % int3))) -> (rule2 % int2)) triple11 ((triple9 triple10) -> (rule4 % int3))) -> (rule1 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
int2
Gary is rough.
("Gary" "is" "rough" "+")
int3
Gary is blue.
True
6
proof
[(((((((triple9 triple10) -> rule4)) -> rule2) triple9) -> rule7))]
("Gary" "is" "blue" "+")
((((((triple9 triple10) -> (rule4 % int3))) -> (rule2 % int2)) triple9) -> (rule7 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
int2
Gary is rough.
("Gary" "is" "rough" "+")
int3
Gary is not blue.
False
6
inv-proof
[(((((((triple9 triple10) -> rule4)) -> rule2) triple9) -> rule7))]
("Gary" "is" "blue" "-")
((((((triple9 triple10) -> (rule4 % int3))) -> (rule2 % int2)) triple9) -> (rule7 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
int2
Gary is rough.
("Gary" "is" "rough" "+")
int3
Alan is not rough.
Unknown
inv-rconc
[@2: Alan is rough.[CWA. Example of deepest failure = (rule4 <- rule6 <- FAIL)]]
("Alan" "is" "rough" "-")
Charlie is blue.
Unknown
rconc
[@1: Charlie is blue.[CWA. Example of deepest failure = (rule7 <- FAIL)]]
("Charlie" "is" "blue" "+")
Alan is not young.
Unknown
inv-rconc
[@1: Alan is young.[CWA. Example of deepest failure = (rule5 <- FAIL)]]
("Alan" "is" "young" "-")
Charlie is rough.
Unknown
rconc
[@1: Charlie is rough.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Charlie" "is" "rough" "+")
Bob is not red.
Unknown
inv-random
[@0: Bob is red.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "red" "-")
Charlie is green.
Unknown
random
[@0: Charlie is green.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "green" "+")
Gary is not red.
Unknown
inv-random
[@0: Gary is red.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "red" "-")
Charlie is cold.
Unknown
random
[@0: Charlie is cold.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "cold" "+")
@0: Alan is nice.[(triple2)] Alan is red.[(triple1)] Bob is cold.[(triple6)] Bob is rough.[(triple5)] Bob is round.[(triple4 OR ((triple5) -> rule2))] Bob is young.[(triple3)] Charlie is young.[(triple7)] Gary is cold.[(triple11)] Gary is kind.[(triple10)] Gary is nice.[(triple9)] Gary is young.[(triple8 OR ((triple9 ((((triple9 triple10) -> rule4)) -> rule2) triple11) -> rule5))] @1: Bob is big.[(((triple4 triple6 triple5) -> rule1) OR ((triple5 ((triple5) -> rule6)) -> rule3) OR ((((triple5) -> rule2) triple6 triple5) -> rule1))] Bob is kind.[(((triple5) -> rule6))] Gary is rough.[(((triple9 triple10) -> rule4))] @2: Gary is big.[(((((triple9 triple10) -> rule4) triple10) -> rule3) OR ((((((triple9 triple10) -> rule4)) -> rule2) triple11 ((triple9 triple10) -> rule4)) -> rule1))] Gary is round.[(((((triple9 triple10) -> rule4)) -> rule2))] @3: Gary is blue.[(((((((triple9 triple10) -> rule4)) -> rule2) triple9) -> rule7))]
Alan is nice.
("Alan" "is" "nice" "+")
triple2
Alan is red.
("Alan" "is" "red" "+")
triple1
Bob is cold.
("Bob" "is" "cold" "+")
triple6
Bob is rough.
("Bob" "is" "rough" "+")
triple5
Bob is round.
("Bob" "is" "round" "+")
triple4
((triple5) -> (rule2 % int1))
Bob is round.
("Bob" "is" "round" "+")
int1
Bob is young.
("Bob" "is" "young" "+")
triple3
Charlie is young.
("Charlie" "is" "young" "+")
triple7
Gary is cold.
("Gary" "is" "cold" "+")
triple11
Gary is kind.
("Gary" "is" "kind" "+")
triple10
Gary is nice.
("Gary" "is" "nice" "+")
triple9
Gary is young.
("Gary" "is" "young" "+")
triple8
((triple9 ((((triple9 triple10) -> (rule4 % int3))) -> (rule2 % int2)) triple11) -> (rule5 % int1))
Gary is young.
("Gary" "is" "young" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
int2
Gary is rough.
("Gary" "is" "rough" "+")
int3
Bob is big.
("Bob" "is" "big" "+")
((triple4 triple6 triple5) -> (rule1 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
((triple5 ((triple5) -> (rule6 % int2))) -> (rule3 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
Bob is kind.
("Bob" "is" "kind" "+")
int2
((((triple5) -> (rule2 % int2)) triple6 triple5) -> (rule1 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
Bob is round.
("Bob" "is" "round" "+")
int2
Bob is kind.
("Bob" "is" "kind" "+")
((triple5) -> (rule6 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
((triple9 triple10) -> (rule4 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
((((triple9 triple10) -> (rule4 % int2)) triple10) -> (rule3 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
((((((triple9 triple10) -> (rule4 % int3))) -> (rule2 % int2)) triple11 ((triple9 triple10) -> (rule4 % int3))) -> (rule1 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
int2
Gary is rough.
("Gary" "is" "rough" "+")
int3
Gary is round.
("Gary" "is" "round" "+")
((((triple9 triple10) -> (rule4 % int2))) -> (rule2 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is blue.
("Gary" "is" "blue" "+")
((((((triple9 triple10) -> (rule4 % int3))) -> (rule2 % int2)) triple9) -> (rule7 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
int2
Gary is rough.
("Gary" "is" "rough" "+")
int3
Alan is a nice person who is red because he has a rash.
Because Bob is so young, he is rough and cold when he can be round instead.
Charlie was born only a few years ago so he is young.
Gary is a nice, kind young man; Gary keeps a sweater with him because he is always cold.
A cold person who is round but rough around the edges is big.
Rough people are often round.
Rough and kind people are big.
Don't be surprised to hear that all nice, kind folks are in fact rough.
People who are cold even when they're nice and round, they are young.
People who are rough are often rather kind as well.
When a round individual is nice to others, they are also feeling blue.