Charlie is not cold. Charlie is furry. Charlie is not green. Charlie is rough. Charlie is smart. Gary is blue. Gary is furry. Gary is not green. Gary is red. Gary is smart. If Gary is rough then Gary is green. If something is green and not blue then it is not smart. If something is green and cold then it is not red. If something is green and not smart then it is red. If something is rough and not blue then it is not red. All cold, blue things are furry. All smart things are furry. If something is red and not green then it is cold.
Charlie is not cold.
("Charlie" "is" "cold" "-")
Charlie is furry.
("Charlie" "is" "furry" "+")
Charlie is not green.
("Charlie" "is" "green" "-")
Charlie is rough.
("Charlie" "is" "rough" "+")
Charlie is smart.
("Charlie" "is" "smart" "+")
Gary is blue.
("Gary" "is" "blue" "+")
Gary is furry.
("Gary" "is" "furry" "+")
Gary is not green.
("Gary" "is" "green" "-")
Gary is red.
("Gary" "is" "red" "+")
Gary is smart.
("Gary" "is" "smart" "+")
If Gary is rough then Gary is green.
((("Gary" "is" "rough" "+")) -> ("Gary" "is" "green" "+"))
If something is green and not blue then it is not smart.
((("something" "is" "green" "+") ("something" "is" "blue" "~")) -> ("something" "is" "smart" "-"))
If something is green and cold then it is not red.
((("something" "is" "green" "+") ("something" "is" "cold" "+")) -> ("something" "is" "red" "-"))
If something is green and not smart then it is red.
((("something" "is" "green" "+") ("something" "is" "smart" "~")) -> ("something" "is" "red" "+"))
If something is rough and not blue then it is not red.
((("something" "is" "rough" "+") ("something" "is" "blue" "~")) -> ("something" "is" "red" "-"))
All cold, blue things are furry.
((("something" "is" "cold" "+") ("something" "is" "blue" "+")) -> ("something" "is" "furry" "+"))
All smart things are furry.
((("something" "is" "smart" "+")) -> ("something" "is" "furry" "+"))
If something is red and not green then it is cold.
((("something" "is" "red" "+") ("something" "is" "green" "~")) -> ("something" "is" "cold" "+"))
Gary is smart.
True
1
proof
[(triple10)]
("Gary" "is" "smart" "+")
triple10
Gary is green.
False
1
inv-proof
[(triple8)]
("Gary" "is" "green" "+")
triple8
Gary is cold.
True
3
proof
[(((triple9 triple8) -> rule8))]
("Gary" "is" "cold" "+")
((triple9 triple8) -> (rule8 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
Gary is not cold.
False
3
inv-proof
[(((triple9 triple8) -> rule8))]
("Gary" "is" "cold" "-")
((triple9 triple8) -> (rule8 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
Charlie is not red.
Unknown
inv-rconc
[@1: Charlie is red.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Charlie" "is" "red" "-")
Gary is rough.
Unknown
random
[@0: Gary is rough.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "rough" "+")
@0: Charlie is furry.[(triple2 OR ((triple5) -> rule7))] Charlie is not cold.[(triple1)] Charlie is not green.[(triple3)] Charlie is rough.[(triple4)] Charlie is smart.[(triple5)] Gary is blue.[(triple6)] Gary is furry.[(triple7 OR ((triple10) -> rule7) OR ((((triple9 triple8) -> rule8) triple6) -> rule6))] Gary is not green.[(triple8)] Gary is red.[(triple9)] Gary is smart.[(triple10)] @1: Gary is cold.[(((triple9 triple8) -> rule8))]
Charlie is furry.
("Charlie" "is" "furry" "+")
triple2
((triple5) -> (rule7 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is not cold.
("Charlie" "is" "cold" "-")
triple1
Charlie is not green.
("Charlie" "is" "green" "-")
triple3
Charlie is rough.
("Charlie" "is" "rough" "+")
triple4
Charlie is smart.
("Charlie" "is" "smart" "+")
triple5
Gary is blue.
("Gary" "is" "blue" "+")
triple6
Gary is furry.
("Gary" "is" "furry" "+")
triple7
((triple10) -> (rule7 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
((((triple9 triple8) -> (rule8 % int2)) triple6) -> (rule6 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
Gary is not green.
("Gary" "is" "green" "-")
triple8
Gary is red.
("Gary" "is" "red" "+")
triple9
Gary is smart.
("Gary" "is" "smart" "+")
triple10
Gary is cold.
("Gary" "is" "cold" "+")
((triple9 triple8) -> (rule8 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1