Bob is furry. Bob is not green. Bob is nice. Bob is red. Bob is rough. Charlie is green. Charlie is not nice. Charlie is red. Dave is not red. Dave is not rough. Gary is furry. Gary is not green. If something is young and green then it is furry. If Charlie is rough and Charlie is young then Charlie is nice. If something is red and not green then it is big. All red, green things are big. All green things are young. If something is rough and not red then it is young.
Bob is furry.
("Bob" "is" "furry" "+")
Bob is not green.
("Bob" "is" "green" "-")
Bob is nice.
("Bob" "is" "nice" "+")
Bob is red.
("Bob" "is" "red" "+")
Bob is rough.
("Bob" "is" "rough" "+")
Charlie is green.
("Charlie" "is" "green" "+")
Charlie is not nice.
("Charlie" "is" "nice" "-")
Charlie is red.
("Charlie" "is" "red" "+")
Dave is not red.
("Dave" "is" "red" "-")
Dave is not rough.
("Dave" "is" "rough" "-")
Gary is furry.
("Gary" "is" "furry" "+")
Gary is not green.
("Gary" "is" "green" "-")
If something is young and green then it is furry.
((("something" "is" "young" "+") ("something" "is" "green" "+")) -> ("something" "is" "furry" "+"))
If Charlie is rough and Charlie is young then Charlie is nice.
((("Charlie" "is" "rough" "+") ("Charlie" "is" "young" "+")) -> ("Charlie" "is" "nice" "+"))
If something is red and not green then it is big.
((("something" "is" "red" "+") ("something" "is" "green" "~")) -> ("something" "is" "big" "+"))
All red, green things are big.
((("something" "is" "red" "+") ("something" "is" "green" "+")) -> ("something" "is" "big" "+"))
All green things are young.
((("something" "is" "green" "+")) -> ("something" "is" "young" "+"))
If something is rough and not red then it is young.
((("something" "is" "rough" "+") ("something" "is" "red" "~")) -> ("something" "is" "young" "+"))
Bob is nice.
True
1
proof
[(triple3)]
("Bob" "is" "nice" "+")
triple3
Bob is not red.
False
1
inv-proof
[(triple4)]
("Bob" "is" "red" "-")
triple4
Charlie is big.
True
3
proof
[(((triple8 triple6) -> rule4))]
("Charlie" "is" "big" "+")
((triple8 triple6) -> (rule4 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is not big.
False
3
inv-proof
[(((triple8 triple6) -> rule4))]
("Charlie" "is" "big" "-")
((triple8 triple6) -> (rule4 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Dave is not big.
Unknown
inv-rconc
[@1: Dave is big.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Dave" "is" "big" "-")
Dave is furry.
Unknown
rconc
[@1: Dave is furry.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Dave" "is" "furry" "+")
Charlie is not rough.
Unknown
inv-random
[@0: Charlie is rough.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "rough" "-")
Gary is nice.
Unknown
random
[@0: Gary is nice.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "nice" "+")
@0: Bob is furry.[(triple1)] Bob is nice.[(triple3)] Bob is not green.[(triple2)] Bob is red.[(triple4)] Bob is rough.[(triple5)] Charlie is green.[(triple6)] Charlie is not nice.[(triple7)] Charlie is red.[(triple8)] Dave is not red.[(triple9)] Dave is not rough.[(triple10)] Gary is furry.[(triple11)] Gary is not green.[(triple12)] @1: Bob is big.[(((triple4 triple2) -> rule3))] Charlie is big.[(((triple8 triple6) -> rule4))] Charlie is young.[(((triple6) -> rule5))] @2: Charlie is furry.[(((((triple6) -> rule5) triple6) -> rule1))]
Bob is furry.
("Bob" "is" "furry" "+")
triple1
Bob is nice.
("Bob" "is" "nice" "+")
triple3
Bob is not green.
("Bob" "is" "green" "-")
triple2
Bob is red.
("Bob" "is" "red" "+")
triple4
Bob is rough.
("Bob" "is" "rough" "+")
triple5
Charlie is green.
("Charlie" "is" "green" "+")
triple6
Charlie is not nice.
("Charlie" "is" "nice" "-")
triple7
Charlie is red.
("Charlie" "is" "red" "+")
triple8
Dave is not red.
("Dave" "is" "red" "-")
triple9
Dave is not rough.
("Dave" "is" "rough" "-")
triple10
Gary is furry.
("Gary" "is" "furry" "+")
triple11
Gary is not green.
("Gary" "is" "green" "-")
triple12
Bob is big.
("Bob" "is" "big" "+")
((triple4 triple2) -> (rule3 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
((triple8 triple6) -> (rule4 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
((triple6) -> (rule5 % int1))
Charlie is young.
("Charlie" "is" "young" "+")
int1
Charlie is furry.
("Charlie" "is" "furry" "+")
((((triple6) -> (rule5 % int2)) triple6) -> (rule1 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2