Anne is nice. Bob is furry. Erin is quiet. Harry is nice. All furry things are kind. If something is furry then it is big. If Harry is big then Harry is not smart. If something is big then it is nice. If something is smart then it is nice. If something is kind and not big then it is not nice.
Anne is nice.
("Anne" "is" "nice" "+")
Bob is furry.
("Bob" "is" "furry" "+")
Erin is quiet.
("Erin" "is" "quiet" "+")
Harry is nice.
("Harry" "is" "nice" "+")
All furry things are kind.
((("something" "is" "furry" "+")) -> ("something" "is" "kind" "+"))
If something is furry then it is big.
((("something" "is" "furry" "+")) -> ("something" "is" "big" "+"))
If Harry is big then Harry is not smart.
((("Harry" "is" "big" "+")) -> ("Harry" "is" "smart" "-"))
If something is big then it is nice.
((("something" "is" "big" "+")) -> ("something" "is" "nice" "+"))
If something is smart then it is nice.
((("something" "is" "smart" "+")) -> ("something" "is" "nice" "+"))
If something is kind and not big then it is not nice.
((("something" "is" "kind" "+") ("something" "is" "big" "~")) -> ("something" "is" "nice" "-"))
Anne is nice.
True
1
proof
[(triple1)]
("Anne" "is" "nice" "+")
triple1
Harry is not nice.
False
1
inv-proof
[(triple4)]
("Harry" "is" "nice" "-")
triple4
Bob is big.
True
2
proof
[(((triple2) -> rule2))]
("Bob" "is" "big" "+")
((triple2) -> (rule2 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
Bob is not kind.
False
2
inv-proof
[(((triple2) -> rule1))]
("Bob" "is" "kind" "-")
((triple2) -> (rule1 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Anne is not big.
Unknown
inv-rconc
[@1: Anne is big.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Anne" "is" "big" "-")
Anne is kind.
Unknown
rconc
[@1: Anne is kind.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Anne" "is" "kind" "+")
Harry is not smart.
Unknown
inv-random
[@0: Harry is smart.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "smart" "-")
Erin is smart.
Unknown
random
[@0: Erin is smart.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "smart" "+")
@0: Anne is nice.[(triple1)] Bob is furry.[(triple2)] Erin is quiet.[(triple3)] Harry is nice.[(triple4)] @1: Bob is big.[(((triple2) -> rule2))] Bob is kind.[(((triple2) -> rule1))] @2: Bob is nice.[(((((triple2) -> rule2)) -> rule4))]
Anne is nice.
("Anne" "is" "nice" "+")
triple1
Bob is furry.
("Bob" "is" "furry" "+")
triple2
Erin is quiet.
("Erin" "is" "quiet" "+")
triple3
Harry is nice.
("Harry" "is" "nice" "+")
triple4
Bob is big.
("Bob" "is" "big" "+")
((triple2) -> (rule2 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
Bob is kind.
("Bob" "is" "kind" "+")
((triple2) -> (rule1 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is nice.
("Bob" "is" "nice" "+")
((((triple2) -> (rule2 % int2))) -> (rule4 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Bob is big.
("Bob" "is" "big" "+")
int2