Charlie is blue. Erin is kind. Gary is rough. Harry is rough. Rough things are white. All kind things are cold. If something is rough then it is white. If Harry is cold then Harry is kind. All big, white things are kind. If something is cold then it is rough.
Charlie is blue.
("Charlie" "is" "blue" "+")
Erin is kind.
("Erin" "is" "kind" "+")
Gary is rough.
("Gary" "is" "rough" "+")
Harry is rough.
("Harry" "is" "rough" "+")
Rough things are white.
((("something" "is" "rough" "+")) -> ("something" "is" "white" "+"))
All kind things are cold.
((("something" "is" "kind" "+")) -> ("something" "is" "cold" "+"))
If something is rough then it is white.
((("something" "is" "rough" "+")) -> ("something" "is" "white" "+"))
If Harry is cold then Harry is kind.
((("Harry" "is" "cold" "+")) -> ("Harry" "is" "kind" "+"))
All big, white things are kind.
((("something" "is" "big" "+") ("something" "is" "white" "+")) -> ("something" "is" "kind" "+"))
If something is cold then it is rough.
((("something" "is" "cold" "+")) -> ("something" "is" "rough" "+"))
Gary is rough.
True
1
proof
[(triple3)]
("Gary" "is" "rough" "+")
triple3
Charlie is not blue.
False
1
inv-proof
[(triple1)]
("Charlie" "is" "blue" "-")
triple1
Harry is white.
True
2
proof
[(((triple4) -> rule1) OR ((triple4) -> rule3))]
("Harry" "is" "white" "+")
((triple4) -> (rule1 % int1))
Harry is white.
("Harry" "is" "white" "+")
int1
((triple4) -> (rule3 % int1))
Harry is white.
("Harry" "is" "white" "+")
int1
Erin is not cold.
False
2
inv-proof
[(((triple2) -> rule2))]
("Erin" "is" "cold" "-")
((triple2) -> (rule2 % int1))
Erin is cold.
("Erin" "is" "cold" "+")
int1
Erin is rough.
True
3
proof
[(((((triple2) -> rule2)) -> rule6))]
("Erin" "is" "rough" "+")
((((triple2) -> (rule2 % int2))) -> (rule6 % int1))
Erin is rough.
("Erin" "is" "rough" "+")
int1
Erin is cold.
("Erin" "is" "cold" "+")
int2
Erin is not rough.
False
3
inv-proof
[(((((triple2) -> rule2)) -> rule6))]
("Erin" "is" "rough" "-")
((((triple2) -> (rule2 % int2))) -> (rule6 % int1))
Erin is rough.
("Erin" "is" "rough" "+")
int1
Erin is cold.
("Erin" "is" "cold" "+")
int2
Erin is white.
True
4
proof
[(((((((triple2) -> rule2)) -> rule6)) -> rule1) OR ((((((triple2) -> rule2)) -> rule6)) -> rule3))]
("Erin" "is" "white" "+")
((((((triple2) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule1 % int1))
Erin is white.
("Erin" "is" "white" "+")
int1
Erin is rough.
("Erin" "is" "rough" "+")
int2
Erin is cold.
("Erin" "is" "cold" "+")
int3
((((((triple2) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule3 % int1))
Erin is white.
("Erin" "is" "white" "+")
int1
Erin is rough.
("Erin" "is" "rough" "+")
int2
Erin is cold.
("Erin" "is" "cold" "+")
int3
Erin is not white.
False
4
inv-proof
[(((((((triple2) -> rule2)) -> rule6)) -> rule1) OR ((((((triple2) -> rule2)) -> rule6)) -> rule3))]
("Erin" "is" "white" "-")
((((((triple2) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule1 % int1))
Erin is white.
("Erin" "is" "white" "+")
int1
Erin is rough.
("Erin" "is" "rough" "+")
int2
Erin is cold.
("Erin" "is" "cold" "+")
int3
((((((triple2) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule3 % int1))
Erin is white.
("Erin" "is" "white" "+")
int1
Erin is rough.
("Erin" "is" "rough" "+")
int2
Erin is cold.
("Erin" "is" "cold" "+")
int3
Charlie is not rough.
Unknown
inv-rconc
[@3: Charlie is rough.[CWA. Example of deepest failure = (rule6 <- rule2 <- rule5 <- FAIL)]]
("Charlie" "is" "rough" "-")
Gary is kind.
Unknown
rconc
[@1: Gary is kind.[CWA. Example of deepest failure = (rule5 <- FAIL)]]
("Gary" "is" "kind" "+")
Charlie is not white.
Unknown
inv-rconc
[@4: Charlie is white.[CWA. Example of deepest failure = (rule1 <- rule6 <- rule2 <- rule5 <- FAIL)]]
("Charlie" "is" "white" "-")
Gary is cold.
Unknown
rconc
[@2: Gary is cold.[CWA. Example of deepest failure = (rule2 <- rule5 <- FAIL)]]
("Gary" "is" "cold" "+")
Harry is not big.
Unknown
inv-random
[@0: Harry is big.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "big" "-")
Charlie is furry.
Unknown
random
[@0: Charlie is furry.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "furry" "+")
Gary is not big.
Unknown
inv-random
[@0: Gary is big.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "big" "-")
Gary is furry.
Unknown
random
[@0: Gary is furry.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "furry" "+")
@0: Charlie is blue.[(triple1)] Erin is kind.[(triple2)] Gary is rough.[(triple3)] Harry is rough.[(triple4)] @1: Erin is cold.[(((triple2) -> rule2))] Gary is white.[(((triple3) -> rule1) OR ((triple3) -> rule3))] Harry is white.[(((triple4) -> rule1) OR ((triple4) -> rule3))] @2: Erin is rough.[(((((triple2) -> rule2)) -> rule6))] @3: Erin is white.[(((((((triple2) -> rule2)) -> rule6)) -> rule1) OR ((((((triple2) -> rule2)) -> rule6)) -> rule3))]
Charlie is blue.
("Charlie" "is" "blue" "+")
triple1
Erin is kind.
("Erin" "is" "kind" "+")
triple2
Gary is rough.
("Gary" "is" "rough" "+")
triple3
Harry is rough.
("Harry" "is" "rough" "+")
triple4
Erin is cold.
("Erin" "is" "cold" "+")
((triple2) -> (rule2 % int1))
Erin is cold.
("Erin" "is" "cold" "+")
int1
Gary is white.
("Gary" "is" "white" "+")
((triple3) -> (rule1 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
((triple3) -> (rule3 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Harry is white.
("Harry" "is" "white" "+")
((triple4) -> (rule1 % int1))
Harry is white.
("Harry" "is" "white" "+")
int1
((triple4) -> (rule3 % int1))
Harry is white.
("Harry" "is" "white" "+")
int1
Erin is rough.
("Erin" "is" "rough" "+")
((((triple2) -> (rule2 % int2))) -> (rule6 % int1))
Erin is rough.
("Erin" "is" "rough" "+")
int1
Erin is cold.
("Erin" "is" "cold" "+")
int2
Erin is white.
("Erin" "is" "white" "+")
((((((triple2) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule1 % int1))
Erin is white.
("Erin" "is" "white" "+")
int1
Erin is rough.
("Erin" "is" "rough" "+")
int2
Erin is cold.
("Erin" "is" "cold" "+")
int3
((((((triple2) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule3 % int1))
Erin is white.
("Erin" "is" "white" "+")
int1
Erin is rough.
("Erin" "is" "rough" "+")
int2
Erin is cold.
("Erin" "is" "cold" "+")
int3