Erin is green. Erin is nice. Erin is young. Gary is cold. Gary is green. Gary is kind. Gary is nice. Gary is rough. Gary is round. Gary is young. All nice, young people are round. Cold people are green. If someone is nice and round then they are young. Rough, kind people are cold. If someone is nice and kind then they are young. All round, nice people are kind.
Erin is green.
("Erin" "is" "green" "+")
Erin is nice.
("Erin" "is" "nice" "+")
Erin is young.
("Erin" "is" "young" "+")
Gary is cold.
("Gary" "is" "cold" "+")
Gary is green.
("Gary" "is" "green" "+")
Gary is kind.
("Gary" "is" "kind" "+")
Gary is nice.
("Gary" "is" "nice" "+")
Gary is rough.
("Gary" "is" "rough" "+")
Gary is round.
("Gary" "is" "round" "+")
Gary is young.
("Gary" "is" "young" "+")
All nice, young people are round.
((("someone" "is" "nice" "+") ("someone" "is" "young" "+")) -> ("someone" "is" "round" "+"))
Cold people are green.
((("someone" "is" "cold" "+")) -> ("someone" "is" "green" "+"))
If someone is nice and round then they are young.
((("someone" "is" "nice" "+") ("someone" "is" "round" "+")) -> ("someone" "is" "young" "+"))
Rough, kind people are cold.
((("someone" "is" "rough" "+") ("someone" "is" "kind" "+")) -> ("someone" "is" "cold" "+"))
If someone is nice and kind then they are young.
((("someone" "is" "nice" "+") ("someone" "is" "kind" "+")) -> ("someone" "is" "young" "+"))
All round, nice people are kind.
((("someone" "is" "round" "+") ("someone" "is" "nice" "+")) -> ("someone" "is" "kind" "+"))
Gary is rough.
True
1
proof
[(triple8)]
("Gary" "is" "rough" "+")
triple8
Gary is not cold.
False
1
inv-proof
[(triple4 OR ((triple8 triple6) -> rule4) OR ((triple8 ((triple9 triple7) -> rule6)) -> rule4) OR ((triple8 ((((triple7 triple10) -> rule1) triple7) -> rule6)) -> rule4))]
("Gary" "is" "cold" "-")
triple4
((triple8 triple6) -> (rule4 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
((triple8 ((triple9 triple7) -> (rule6 % int2))) -> (rule4 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
int2
((triple8 ((((triple7 triple10) -> (rule1 % int3)) triple7) -> (rule6 % int2))) -> (rule4 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
int2
Gary is round.
("Gary" "is" "round" "+")
int3
Erin is not cold.
Unknown
inv-rconc
[@1: Erin is cold.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Erin" "is" "cold" "-")
Erin is rough.
Unknown
random
[@0: Erin is rough.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "rough" "+")
@0: Erin is green.[(triple1)] Erin is nice.[(triple2)] Erin is young.[(triple3)] Gary is cold.[(triple4 OR ((triple8 triple6) -> rule4) OR ((triple8 ((triple9 triple7) -> rule6)) -> rule4) OR ((triple8 ((((triple7 triple10) -> rule1) triple7) -> rule6)) -> rule4))] Gary is green.[(triple5 OR ((triple4) -> rule2) OR ((((triple8 triple6) -> rule4)) -> rule2) OR ((((triple8 ((triple9 triple7) -> rule6)) -> rule4)) -> rule2) OR ((((triple8 ((((triple7 triple10) -> rule1) triple7) -> rule6)) -> rule4)) -> rule2))] Gary is kind.[(triple6 OR ((triple9 triple7) -> rule6) OR ((((triple7 triple10) -> rule1) triple7) -> rule6))] Gary is nice.[(triple7)] Gary is rough.[(triple8)] Gary is round.[(triple9 OR ((triple7 triple10) -> rule1) OR ((triple7 ((triple7 triple6) -> rule5)) -> rule1))] Gary is young.[(triple10 OR ((triple7 triple6) -> rule5) OR ((triple7 triple9) -> rule3) OR ((triple7 ((triple9 triple7) -> rule6)) -> rule5))] @1: Erin is round.[(((triple2 triple3) -> rule1))] @2: Erin is kind.[(((((triple2 triple3) -> rule1) triple2) -> rule6))]
Erin is green.
("Erin" "is" "green" "+")
triple1
Erin is nice.
("Erin" "is" "nice" "+")
triple2
Erin is young.
("Erin" "is" "young" "+")
triple3
Gary is cold.
("Gary" "is" "cold" "+")
triple4
((triple8 triple6) -> (rule4 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
((triple8 ((triple9 triple7) -> (rule6 % int2))) -> (rule4 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
int2
((triple8 ((((triple7 triple10) -> (rule1 % int3)) triple7) -> (rule6 % int2))) -> (rule4 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
int2
Gary is round.
("Gary" "is" "round" "+")
int3
Gary is green.
("Gary" "is" "green" "+")
triple5
((triple4) -> (rule2 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
((((triple8 triple6) -> (rule4 % int2))) -> (rule2 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
((((triple8 ((triple9 triple7) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule2 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
Gary is kind.
("Gary" "is" "kind" "+")
int3
((((triple8 ((((triple7 triple10) -> (rule1 % int4)) triple7) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule2 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
Gary is kind.
("Gary" "is" "kind" "+")
int3
Gary is round.
("Gary" "is" "round" "+")
int4
Gary is kind.
("Gary" "is" "kind" "+")
triple6
((triple9 triple7) -> (rule6 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
((((triple7 triple10) -> (rule1 % int2)) triple7) -> (rule6 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
int2
Gary is nice.
("Gary" "is" "nice" "+")
triple7
Gary is rough.
("Gary" "is" "rough" "+")
triple8
Gary is round.
("Gary" "is" "round" "+")
triple9
((triple7 triple10) -> (rule1 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
((triple7 ((triple7 triple6) -> (rule5 % int2))) -> (rule1 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Gary is young.
("Gary" "is" "young" "+")
int2
Gary is young.
("Gary" "is" "young" "+")
triple10
((triple7 triple6) -> (rule5 % int1))
Gary is young.
("Gary" "is" "young" "+")
int1
((triple7 triple9) -> (rule3 % int1))
Gary is young.
("Gary" "is" "young" "+")
int1
((triple7 ((triple9 triple7) -> (rule6 % int2))) -> (rule5 % int1))
Gary is young.
("Gary" "is" "young" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
int2
Erin is round.
("Erin" "is" "round" "+")
((triple2 triple3) -> (rule1 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is kind.
("Erin" "is" "kind" "+")
((((triple2 triple3) -> (rule1 % int2)) triple2) -> (rule6 % int1))
Erin is kind.
("Erin" "is" "kind" "+")
int1
Erin is round.
("Erin" "is" "round" "+")
int2