Bob is cold. Bob is white. Charlie is kind. Charlie is young. Erin is cold. Erin is green. Erin is rough. Erin is round. Erin is white. Erin is young. Fiona is rough. Fiona is young. White people are round. Green, cold people are rough. If Fiona is rough and Fiona is round then Fiona is kind. Young, rough people are green. White, round people are kind. All green people are round.
Bob is cold.
("Bob" "is" "cold" "+")
Bob is white.
("Bob" "is" "white" "+")
Charlie is kind.
("Charlie" "is" "kind" "+")
Charlie is young.
("Charlie" "is" "young" "+")
Erin is cold.
("Erin" "is" "cold" "+")
Erin is green.
("Erin" "is" "green" "+")
Erin is rough.
("Erin" "is" "rough" "+")
Erin is round.
("Erin" "is" "round" "+")
Erin is white.
("Erin" "is" "white" "+")
Erin is young.
("Erin" "is" "young" "+")
Fiona is rough.
("Fiona" "is" "rough" "+")
Fiona is young.
("Fiona" "is" "young" "+")
White people are round.
((("someone" "is" "white" "+")) -> ("someone" "is" "round" "+"))
Green, cold people are rough.
((("someone" "is" "green" "+") ("someone" "is" "cold" "+")) -> ("someone" "is" "rough" "+"))
If Fiona is rough and Fiona is round then Fiona is kind.
((("Fiona" "is" "rough" "+") ("Fiona" "is" "round" "+")) -> ("Fiona" "is" "kind" "+"))
Young, rough people are green.
((("someone" "is" "young" "+") ("someone" "is" "rough" "+")) -> ("someone" "is" "green" "+"))
White, round people are kind.
((("someone" "is" "white" "+") ("someone" "is" "round" "+")) -> ("someone" "is" "kind" "+"))
All green people are round.
((("someone" "is" "green" "+")) -> ("someone" "is" "round" "+"))
Erin is cold.
True
1
proof
[(triple5)]
("Erin" "is" "cold" "+")
triple5
Charlie is not young.
False
1
inv-proof
[(triple4)]
("Charlie" "is" "young" "-")
triple4
Fiona is green.
True
3
proof
[(((triple12 triple11) -> rule4))]
("Fiona" "is" "green" "+")
((triple12 triple11) -> (rule4 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Bob is not round.
False
2
inv-proof
[(((triple2) -> rule1))]
("Bob" "is" "round" "-")
((triple2) -> (rule1 % int1))
Bob is round.
("Bob" "is" "round" "+")
int1
Fiona is round.
True
4
proof
[(((((triple12 triple11) -> rule4)) -> rule6))]
("Fiona" "is" "round" "+")
((((triple12 triple11) -> (rule4 % int2))) -> (rule6 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
Bob is not kind.
False
4
inv-proof
[(((triple2 ((triple2) -> rule1)) -> rule5))]
("Bob" "is" "kind" "-")
((triple2 ((triple2) -> (rule1 % int2))) -> (rule5 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is round.
("Bob" "is" "round" "+")
int2
Fiona is kind.
True
6
proof
[(((triple11 ((((triple12 triple11) -> rule4)) -> rule6)) -> rule3))]
("Fiona" "is" "kind" "+")
((triple11 ((((triple12 triple11) -> (rule4 % int3))) -> (rule6 % int2))) -> (rule3 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
Fiona is not kind.
False
6
inv-proof
[(((triple11 ((((triple12 triple11) -> rule4)) -> rule6)) -> rule3))]
("Fiona" "is" "kind" "-")
((triple11 ((((triple12 triple11) -> (rule4 % int3))) -> (rule6 % int2))) -> (rule3 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
Bob is not green.
Unknown
inv-rconc
[@1: Bob is green.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Bob" "is" "green" "-")
Charlie is rough.
Unknown
rconc
[@1: Charlie is rough.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Charlie" "is" "rough" "+")
Charlie is not green.
Unknown
inv-rconc
[@2: Charlie is green.[CWA. Example of deepest failure = (rule4 <- rule2 <- FAIL)]]
("Charlie" "is" "green" "-")
Charlie is round.
Unknown
rconc
[@3: Charlie is round.[CWA. Example of deepest failure = (rule6 <- rule4 <- rule2 <- FAIL)]]
("Charlie" "is" "round" "+")
Fiona is not cold.
Unknown
inv-random
[@0: Fiona is cold.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "cold" "-")
Bob is young.
Unknown
random
[@0: Bob is young.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "young" "+")
Fiona is not white.
Unknown
inv-random
[@0: Fiona is white.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "white" "-")
Charlie is white.
Unknown
random
[@0: Charlie is white.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "white" "+")
@0: Bob is cold.[(triple1)] Bob is white.[(triple2)] Charlie is kind.[(triple3)] Charlie is young.[(triple4)] Erin is cold.[(triple5)] Erin is green.[(triple6 OR ((triple10 triple7) -> rule4))] Erin is rough.[(triple7 OR ((triple6 triple5) -> rule2))] Erin is round.[(triple8 OR ((triple6) -> rule6) OR ((triple9) -> rule1) OR ((((triple10 triple7) -> rule4)) -> rule6))] Erin is white.[(triple9)] Erin is young.[(triple10)] Fiona is rough.[(triple11)] Fiona is young.[(triple12)] @1: Bob is round.[(((triple2) -> rule1))] Erin is kind.[(((triple9 triple8) -> rule5) OR ((triple9 ((triple6) -> rule6)) -> rule5) OR ((triple9 ((triple9) -> rule1)) -> rule5) OR ((triple9 ((((triple10 triple7) -> rule4)) -> rule6)) -> rule5))] Fiona is green.[(((triple12 triple11) -> rule4))] @2: Bob is kind.[(((triple2 ((triple2) -> rule1)) -> rule5))] Fiona is round.[(((((triple12 triple11) -> rule4)) -> rule6))] @3: Fiona is kind.[(((triple11 ((((triple12 triple11) -> rule4)) -> rule6)) -> rule3))]
Bob is cold.
("Bob" "is" "cold" "+")
triple1
Bob is white.
("Bob" "is" "white" "+")
triple2
Charlie is kind.
("Charlie" "is" "kind" "+")
triple3
Charlie is young.
("Charlie" "is" "young" "+")
triple4
Erin is cold.
("Erin" "is" "cold" "+")
triple5
Erin is green.
("Erin" "is" "green" "+")
triple6
((triple10 triple7) -> (rule4 % int1))
Erin is green.
("Erin" "is" "green" "+")
int1
Erin is rough.
("Erin" "is" "rough" "+")
triple7
((triple6 triple5) -> (rule2 % int1))
Erin is rough.
("Erin" "is" "rough" "+")
int1
Erin is round.
("Erin" "is" "round" "+")
triple8
((triple6) -> (rule6 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
((triple9) -> (rule1 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
((((triple10 triple7) -> (rule4 % int2))) -> (rule6 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is green.
("Erin" "is" "green" "+")
int2
Erin is white.
("Erin" "is" "white" "+")
triple9
Erin is young.
("Erin" "is" "young" "+")
triple10
Fiona is rough.
("Fiona" "is" "rough" "+")
triple11
Fiona is young.
("Fiona" "is" "young" "+")
triple12
Bob is round.
("Bob" "is" "round" "+")
((triple2) -> (rule1 % int1))
Bob is round.
("Bob" "is" "round" "+")
int1
Erin is kind.
("Erin" "is" "kind" "+")
((triple9 triple8) -> (rule5 % int1))
Erin is kind.
("Erin" "is" "kind" "+")
int1
((triple9 ((triple6) -> (rule6 % int2))) -> (rule5 % int1))
Erin is kind.
("Erin" "is" "kind" "+")
int1
Erin is round.
("Erin" "is" "round" "+")
int2
((triple9 ((triple9) -> (rule1 % int2))) -> (rule5 % int1))
Erin is kind.
("Erin" "is" "kind" "+")
int1
Erin is round.
("Erin" "is" "round" "+")
int2
((triple9 ((((triple10 triple7) -> (rule4 % int3))) -> (rule6 % int2))) -> (rule5 % int1))
Erin is kind.
("Erin" "is" "kind" "+")
int1
Erin is round.
("Erin" "is" "round" "+")
int2
Erin is green.
("Erin" "is" "green" "+")
int3
Fiona is green.
("Fiona" "is" "green" "+")
((triple12 triple11) -> (rule4 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Bob is kind.
("Bob" "is" "kind" "+")
((triple2 ((triple2) -> (rule1 % int2))) -> (rule5 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is round.
("Bob" "is" "round" "+")
int2
Fiona is round.
("Fiona" "is" "round" "+")
((((triple12 triple11) -> (rule4 % int2))) -> (rule6 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
((triple11 ((((triple12 triple11) -> (rule4 % int3))) -> (rule6 % int2))) -> (rule3 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is round.
("Fiona" "is" "round" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3