Anne is cold. Anne is furry. Anne is smart. Dave is cold. Dave is round. Gary is not furry. Gary is red. Gary is round. Harry is cold. Harry is not kind. Harry is not nice. Harry is red. All cold, round things are smart. All smart things are not kind. If something is furry and not nice then it is kind.
Anne is cold.
("Anne" "is" "cold" "+")
Anne is furry.
("Anne" "is" "furry" "+")
Anne is smart.
("Anne" "is" "smart" "+")
Dave is cold.
("Dave" "is" "cold" "+")
Dave is round.
("Dave" "is" "round" "+")
Gary is not furry.
("Gary" "is" "furry" "-")
Gary is red.
("Gary" "is" "red" "+")
Gary is round.
("Gary" "is" "round" "+")
Harry is cold.
("Harry" "is" "cold" "+")
Harry is not kind.
("Harry" "is" "kind" "-")
Harry is not nice.
("Harry" "is" "nice" "-")
Harry is red.
("Harry" "is" "red" "+")
All cold, round things are smart.
((("something" "is" "cold" "+") ("something" "is" "round" "+")) -> ("something" "is" "smart" "+"))
All smart things are not kind.
((("something" "is" "smart" "+")) -> ("something" "is" "kind" "-"))
If something is furry and not nice then it is kind.
((("something" "is" "furry" "+") ("something" "is" "nice" "~")) -> ("something" "is" "kind" "+"))
Anne is smart.
True
1
proof
[(triple3)]
("Anne" "is" "smart" "+")
triple3
Dave is not round.
False
1
inv-proof
[(triple5)]
("Dave" "is" "round" "-")
triple5
Gary is not kind.
Unknown
inv-rconc
[@1: Gary is kind.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Gary" "is" "kind" "-")
Anne is round.
Unknown
random
[@0: Anne is round.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "round" "+")
@0: Anne is cold.[(triple1)] Anne is furry.[(triple2)] Anne is smart.[(triple3)] Dave is cold.[(triple4)] Dave is round.[(triple5)] Gary is not furry.[(triple6)] Gary is red.[(triple7)] Gary is round.[(triple8)] Harry is cold.[(triple9)] Harry is not kind.[(triple10)] Harry is not nice.[(triple11)] Harry is red.[(triple12)] @1: Anne is not kind.[(((triple3) -> rule2))] Dave is smart.[(((triple4 triple5) -> rule1))] @2: Dave is not kind.[(((((triple4 triple5) -> rule1)) -> rule2))]
Anne is cold.
("Anne" "is" "cold" "+")
triple1
Anne is furry.
("Anne" "is" "furry" "+")
triple2
Anne is smart.
("Anne" "is" "smart" "+")
triple3
Dave is cold.
("Dave" "is" "cold" "+")
triple4
Dave is round.
("Dave" "is" "round" "+")
triple5
Gary is not furry.
("Gary" "is" "furry" "-")
triple6
Gary is red.
("Gary" "is" "red" "+")
triple7
Gary is round.
("Gary" "is" "round" "+")
triple8
Harry is cold.
("Harry" "is" "cold" "+")
triple9
Harry is not kind.
("Harry" "is" "kind" "-")
triple10
Harry is not nice.
("Harry" "is" "nice" "-")
triple11
Harry is red.
("Harry" "is" "red" "+")
triple12
Anne is not kind.
("Anne" "is" "kind" "-")
((triple3) -> (rule2 % int1))
Anne is not kind.
("Anne" "is" "kind" "-")
int1
Dave is smart.
("Dave" "is" "smart" "+")
((triple4 triple5) -> (rule1 % int1))
Dave is smart.
("Dave" "is" "smart" "+")
int1
Dave is not kind.
("Dave" "is" "kind" "-")
((((triple4 triple5) -> (rule1 % int2))) -> (rule2 % int1))
Dave is not kind.
("Dave" "is" "kind" "-")
int1
Dave is smart.
("Dave" "is" "smart" "+")
int2