Anne is furry. Anne is green. Anne is kind. Anne is smart. Anne is white. Bob is kind. Dave is green. Dave is kind. Dave is round. Dave is smart. Dave is white. Gary is blue. Gary is green. Gary is round. Gary is smart. Gary is white. Blue, smart things are furry. Furry things are kind. If something is round then it is smart.
Anne is furry.
("Anne" "is" "furry" "+")
Anne is green.
("Anne" "is" "green" "+")
Anne is kind.
("Anne" "is" "kind" "+")
Anne is smart.
("Anne" "is" "smart" "+")
Anne is white.
("Anne" "is" "white" "+")
Bob is kind.
("Bob" "is" "kind" "+")
Dave is green.
("Dave" "is" "green" "+")
Dave is kind.
("Dave" "is" "kind" "+")
Dave is round.
("Dave" "is" "round" "+")
Dave is smart.
("Dave" "is" "smart" "+")
Dave is white.
("Dave" "is" "white" "+")
Gary is blue.
("Gary" "is" "blue" "+")
Gary is green.
("Gary" "is" "green" "+")
Gary is round.
("Gary" "is" "round" "+")
Gary is smart.
("Gary" "is" "smart" "+")
Gary is white.
("Gary" "is" "white" "+")
Blue, smart things are furry.
((("something" "is" "blue" "+") ("something" "is" "smart" "+")) -> ("something" "is" "furry" "+"))
Furry things are kind.
((("something" "is" "furry" "+")) -> ("something" "is" "kind" "+"))
If something is round then it is smart.
((("something" "is" "round" "+")) -> ("something" "is" "smart" "+"))
Anne is white.
True
1
proof
[(triple5)]
("Anne" "is" "white" "+")
triple5
Gary is not smart.
False
1
inv-proof
[(triple15 OR ((triple14) -> rule3))]
("Gary" "is" "smart" "-")
triple15
((triple14) -> (rule3 % int1))
Gary is smart.
("Gary" "is" "smart" "+")
int1
Gary is furry.
True
3
proof
[(((triple12 triple15) -> rule1) OR ((triple12 ((triple14) -> rule3)) -> rule1))]
("Gary" "is" "furry" "+")
((triple12 triple15) -> (rule1 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
((triple12 ((triple14) -> (rule3 % int2))) -> (rule1 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is smart.
("Gary" "is" "smart" "+")
int2
Gary is not furry.
False
3
inv-proof
[(((triple12 triple15) -> rule1) OR ((triple12 ((triple14) -> rule3)) -> rule1))]
("Gary" "is" "furry" "-")
((triple12 triple15) -> (rule1 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
((triple12 ((triple14) -> (rule3 % int2))) -> (rule1 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is smart.
("Gary" "is" "smart" "+")
int2
Dave is not furry.
Unknown
inv-rconc
[@1: Dave is furry.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Dave" "is" "furry" "-")
Bob is smart.
Unknown
rconc
[@1: Bob is smart.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Bob" "is" "smart" "+")
Bob is not round.
Unknown
inv-random
[@0: Bob is round.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "round" "-")
Bob is white.
Unknown
random
[@0: Bob is white.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "white" "+")
@0: Anne is furry.[(triple1)] Anne is green.[(triple2)] Anne is kind.[(triple3 OR ((triple1) -> rule2))] Anne is smart.[(triple4)] Anne is white.[(triple5)] Bob is kind.[(triple6)] Dave is green.[(triple7)] Dave is kind.[(triple8)] Dave is round.[(triple9)] Dave is smart.[(triple10 OR ((triple9) -> rule3))] Dave is white.[(triple11)] Gary is blue.[(triple12)] Gary is green.[(triple13)] Gary is round.[(triple14)] Gary is smart.[(triple15 OR ((triple14) -> rule3))] Gary is white.[(triple16)] @1: Gary is furry.[(((triple12 triple15) -> rule1) OR ((triple12 ((triple14) -> rule3)) -> rule1))] @2: Gary is kind.[(((((triple12 triple15) -> rule1)) -> rule2) OR ((((triple12 ((triple14) -> rule3)) -> rule1)) -> rule2))]
Anne is furry.
("Anne" "is" "furry" "+")
triple1
Anne is green.
("Anne" "is" "green" "+")
triple2
Anne is kind.
("Anne" "is" "kind" "+")
triple3
((triple1) -> (rule2 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is smart.
("Anne" "is" "smart" "+")
triple4
Anne is white.
("Anne" "is" "white" "+")
triple5
Bob is kind.
("Bob" "is" "kind" "+")
triple6
Dave is green.
("Dave" "is" "green" "+")
triple7
Dave is kind.
("Dave" "is" "kind" "+")
triple8
Dave is round.
("Dave" "is" "round" "+")
triple9
Dave is smart.
("Dave" "is" "smart" "+")
triple10
((triple9) -> (rule3 % int1))
Dave is smart.
("Dave" "is" "smart" "+")
int1
Dave is white.
("Dave" "is" "white" "+")
triple11
Gary is blue.
("Gary" "is" "blue" "+")
triple12
Gary is green.
("Gary" "is" "green" "+")
triple13
Gary is round.
("Gary" "is" "round" "+")
triple14
Gary is smart.
("Gary" "is" "smart" "+")
triple15
((triple14) -> (rule3 % int1))
Gary is smart.
("Gary" "is" "smart" "+")
int1
Gary is white.
("Gary" "is" "white" "+")
triple16
Gary is furry.
("Gary" "is" "furry" "+")
((triple12 triple15) -> (rule1 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
((triple12 ((triple14) -> (rule3 % int2))) -> (rule1 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is smart.
("Gary" "is" "smart" "+")
int2
Gary is kind.
("Gary" "is" "kind" "+")
((((triple12 triple15) -> (rule1 % int2))) -> (rule2 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
Gary is furry.
("Gary" "is" "furry" "+")
int2
((((triple12 ((triple14) -> (rule3 % int3))) -> (rule1 % int2))) -> (rule2 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
Gary is furry.
("Gary" "is" "furry" "+")
int2
Gary is smart.
("Gary" "is" "smart" "+")
int3