Bob is big. Bob is round. Erin is big. Erin is cold. Erin is rough. Erin is round. Fiona is red. All round, cold people are rough. All smart people are round. All smart, round people are white. Round, big people are cold. If someone is smart and big then they are red. All cold, white people are rough. White, rough people are cold. If someone is cold and round then they are red.
Bob is big.
("Bob" "is" "big" "+")
Bob is round.
("Bob" "is" "round" "+")
Erin is big.
("Erin" "is" "big" "+")
Erin is cold.
("Erin" "is" "cold" "+")
Erin is rough.
("Erin" "is" "rough" "+")
Erin is round.
("Erin" "is" "round" "+")
Fiona is red.
("Fiona" "is" "red" "+")
All round, cold people are rough.
((("someone" "is" "round" "+") ("someone" "is" "cold" "+")) -> ("someone" "is" "rough" "+"))
All smart people are round.
((("someone" "is" "smart" "+")) -> ("someone" "is" "round" "+"))
All smart, round people are white.
((("someone" "is" "smart" "+") ("someone" "is" "round" "+")) -> ("someone" "is" "white" "+"))
Round, big people are cold.
((("someone" "is" "round" "+") ("someone" "is" "big" "+")) -> ("someone" "is" "cold" "+"))
If someone is smart and big then they are red.
((("someone" "is" "smart" "+") ("someone" "is" "big" "+")) -> ("someone" "is" "red" "+"))
All cold, white people are rough.
((("someone" "is" "cold" "+") ("someone" "is" "white" "+")) -> ("someone" "is" "rough" "+"))
White, rough people are cold.
((("someone" "is" "white" "+") ("someone" "is" "rough" "+")) -> ("someone" "is" "cold" "+"))
If someone is cold and round then they are red.
((("someone" "is" "cold" "+") ("someone" "is" "round" "+")) -> ("someone" "is" "red" "+"))
Bob is big.
True
1
proof
[(triple1)]
("Bob" "is" "big" "+")
triple1
Erin is not round.
False
1
inv-proof
[(triple6)]
("Erin" "is" "round" "-")
triple6
Fiona is not white.
Unknown
inv-rconc
[@1: Fiona is white.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Fiona" "is" "white" "-")
Fiona is big.
Unknown
random
[@0: Fiona is big.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "big" "+")
@0: Bob is big.[(triple1)] Bob is round.[(triple2)] Erin is big.[(triple3)] Erin is cold.[(triple4 OR ((triple6 triple3) -> rule4))] Erin is rough.[(triple5 OR ((triple6 triple4) -> rule1) OR ((triple6 ((triple6 triple3) -> rule4)) -> rule1))] Erin is round.[(triple6)] Fiona is red.[(triple7)] @1: Bob is cold.[(((triple2 triple1) -> rule4))] Erin is red.[(((triple4 triple6) -> rule8) OR ((((triple6 triple3) -> rule4) triple6) -> rule8))] @2: Bob is red.[(((((triple2 triple1) -> rule4) triple2) -> rule8))] Bob is rough.[(((triple2 ((triple2 triple1) -> rule4)) -> rule1))]
Bob is big.
("Bob" "is" "big" "+")
triple1
Bob is round.
("Bob" "is" "round" "+")
triple2
Erin is big.
("Erin" "is" "big" "+")
triple3
Erin is cold.
("Erin" "is" "cold" "+")
triple4
((triple6 triple3) -> (rule4 % int1))
Erin is cold.
("Erin" "is" "cold" "+")
int1
Erin is rough.
("Erin" "is" "rough" "+")
triple5
((triple6 triple4) -> (rule1 % int1))
Erin is rough.
("Erin" "is" "rough" "+")
int1
((triple6 ((triple6 triple3) -> (rule4 % int2))) -> (rule1 % int1))
Erin is rough.
("Erin" "is" "rough" "+")
int1
Erin is cold.
("Erin" "is" "cold" "+")
int2
Erin is round.
("Erin" "is" "round" "+")
triple6
Fiona is red.
("Fiona" "is" "red" "+")
triple7
Bob is cold.
("Bob" "is" "cold" "+")
((triple2 triple1) -> (rule4 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
Erin is red.
("Erin" "is" "red" "+")
((triple4 triple6) -> (rule8 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
((((triple6 triple3) -> (rule4 % int2)) triple6) -> (rule8 % int1))
Erin is red.
("Erin" "is" "red" "+")
int1
Erin is cold.
("Erin" "is" "cold" "+")
int2
Bob is red.
("Bob" "is" "red" "+")
((((triple2 triple1) -> (rule4 % int2)) triple2) -> (rule8 % int1))
Bob is red.
("Bob" "is" "red" "+")
int1
Bob is cold.
("Bob" "is" "cold" "+")
int2
Bob is rough.
("Bob" "is" "rough" "+")
((triple2 ((triple2 triple1) -> (rule4 % int2))) -> (rule1 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
Bob is cold.
("Bob" "is" "cold" "+")
int2