Bob is not furry. Bob is kind. Bob is not nice. Bob is quiet. Bob is rough. Bob is round. Dave is furry. Dave is kind. Dave is nice. Dave is quiet. Dave is not rough. Dave is round. Dave is smart. Erin is not furry. Erin is rough. Erin is not smart. Rough people are kind. All kind, round people are smart. If Dave is smart and Dave is round then Dave is nice. If Dave is round and Dave is smart then Dave is kind. All kind, rough people are quiet. If Erin is kind and Erin is nice then Erin is furry. If Bob is kind and Bob is nice then Bob is not smart. If someone is furry and not kind then they are nice.
Bob is not furry.
("Bob" "is" "furry" "-")
Bob is kind.
("Bob" "is" "kind" "+")
Bob is not nice.
("Bob" "is" "nice" "-")
Bob is quiet.
("Bob" "is" "quiet" "+")
Bob is rough.
("Bob" "is" "rough" "+")
Bob is round.
("Bob" "is" "round" "+")
Dave is furry.
("Dave" "is" "furry" "+")
Dave is kind.
("Dave" "is" "kind" "+")
Dave is nice.
("Dave" "is" "nice" "+")
Dave is quiet.
("Dave" "is" "quiet" "+")
Dave is not rough.
("Dave" "is" "rough" "-")
Dave is round.
("Dave" "is" "round" "+")
Dave is smart.
("Dave" "is" "smart" "+")
Erin is not furry.
("Erin" "is" "furry" "-")
Erin is rough.
("Erin" "is" "rough" "+")
Erin is not smart.
("Erin" "is" "smart" "-")
Rough people are kind.
((("someone" "is" "rough" "+")) -> ("someone" "is" "kind" "+"))
All kind, round people are smart.
((("someone" "is" "kind" "+") ("someone" "is" "round" "+")) -> ("someone" "is" "smart" "+"))
If Dave is smart and Dave is round then Dave is nice.
((("Dave" "is" "smart" "+") ("Dave" "is" "round" "+")) -> ("Dave" "is" "nice" "+"))
If Dave is round and Dave is smart then Dave is kind.
((("Dave" "is" "round" "+") ("Dave" "is" "smart" "+")) -> ("Dave" "is" "kind" "+"))
All kind, rough people are quiet.
((("someone" "is" "kind" "+") ("someone" "is" "rough" "+")) -> ("someone" "is" "quiet" "+"))
If Erin is kind and Erin is nice then Erin is furry.
((("Erin" "is" "kind" "+") ("Erin" "is" "nice" "+")) -> ("Erin" "is" "furry" "+"))
If Bob is kind and Bob is nice then Bob is not smart.
((("Bob" "is" "kind" "+") ("Bob" "is" "nice" "+")) -> ("Bob" "is" "smart" "-"))
If someone is furry and not kind then they are nice.
((("someone" "is" "furry" "+") ("someone" "is" "kind" "~")) -> ("someone" "is" "nice" "+"))
Dave is furry.
True
1
proof
[(triple7)]
("Dave" "is" "furry" "+")
triple7
Bob is not round.
False
1
inv-proof
[(triple6)]
("Bob" "is" "round" "-")
triple6
Bob is smart.
True
3
proof
[(((triple2 triple6) -> rule2) OR ((((triple5) -> rule1) triple6) -> rule2))]
("Bob" "is" "smart" "+")
((triple2 triple6) -> (rule2 % int1))
Bob is smart.
("Bob" "is" "smart" "+")
int1
((((triple5) -> (rule1 % int2)) triple6) -> (rule2 % int1))
Bob is smart.
("Bob" "is" "smart" "+")
int1
Bob is kind.
("Bob" "is" "kind" "+")
int2
Erin is not kind.
False
2
inv-proof
[(((triple15) -> rule1))]
("Erin" "is" "kind" "-")
((triple15) -> (rule1 % int1))
Erin is kind.
("Erin" "is" "kind" "+")
int1
Erin is quiet.
True
4
proof
[(((((triple15) -> rule1) triple15) -> rule5))]
("Erin" "is" "quiet" "+")
((((triple15) -> (rule1 % int2)) triple15) -> (rule5 % int1))
Erin is quiet.
("Erin" "is" "quiet" "+")
int1
Erin is kind.
("Erin" "is" "kind" "+")
int2
Erin is not quiet.
False
4
inv-proof
[(((((triple15) -> rule1) triple15) -> rule5))]
("Erin" "is" "quiet" "-")
((((triple15) -> (rule1 % int2)) triple15) -> (rule5 % int1))
Erin is quiet.
("Erin" "is" "quiet" "+")
int1
Erin is kind.
("Erin" "is" "kind" "+")
int2
Erin is not nice.
Unknown
inv-rconc
[@1: Erin is nice.[CWA. Example of deepest failure = (rule8 <- FAIL)]]
("Erin" "is" "nice" "-")
Erin is round.
Unknown
random
[@0: Erin is round.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "round" "+")
@0: Bob is kind.[(triple2 OR ((triple5) -> rule1))] Bob is not furry.[(triple1)] Bob is not nice.[(triple3)] Bob is quiet.[(triple4 OR ((triple2 triple5) -> rule5) OR ((((triple5) -> rule1) triple5) -> rule5))] Bob is rough.[(triple5)] Bob is round.[(triple6)] Dave is furry.[(triple7)] Dave is kind.[(triple8 OR ((triple12 triple13) -> rule4))] Dave is nice.[(triple9 OR ((triple13 triple12) -> rule3) OR ((((triple8 triple12) -> rule2) triple12) -> rule3))] Dave is not rough.[(triple11)] Dave is quiet.[(triple10)] Dave is round.[(triple12)] Dave is smart.[(triple13 OR ((triple8 triple12) -> rule2))] Erin is not furry.[(triple14)] Erin is not smart.[(triple16)] Erin is rough.[(triple15)] @1: Bob is smart.[(((triple2 triple6) -> rule2) OR ((((triple5) -> rule1) triple6) -> rule2))] Erin is kind.[(((triple15) -> rule1))] @2: Erin is quiet.[(((((triple15) -> rule1) triple15) -> rule5))]
Bob is kind.
("Bob" "is" "kind" "+")
triple2
((triple5) -> (rule1 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is not furry.
("Bob" "is" "furry" "-")
triple1
Bob is not nice.
("Bob" "is" "nice" "-")
triple3
Bob is quiet.
("Bob" "is" "quiet" "+")
triple4
((triple2 triple5) -> (rule5 % int1))
Bob is quiet.
("Bob" "is" "quiet" "+")
int1
((((triple5) -> (rule1 % int2)) triple5) -> (rule5 % int1))
Bob is quiet.
("Bob" "is" "quiet" "+")
int1
Bob is kind.
("Bob" "is" "kind" "+")
int2
Bob is rough.
("Bob" "is" "rough" "+")
triple5
Bob is round.
("Bob" "is" "round" "+")
triple6
Dave is furry.
("Dave" "is" "furry" "+")
triple7
Dave is kind.
("Dave" "is" "kind" "+")
triple8
((triple12 triple13) -> (rule4 % int1))
Dave is kind.
("Dave" "is" "kind" "+")
int1
Dave is nice.
("Dave" "is" "nice" "+")
triple9
((triple13 triple12) -> (rule3 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
((((triple8 triple12) -> (rule2 % int2)) triple12) -> (rule3 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Dave is smart.
("Dave" "is" "smart" "+")
int2
Dave is not rough.
("Dave" "is" "rough" "-")
triple11
Dave is quiet.
("Dave" "is" "quiet" "+")
triple10
Dave is round.
("Dave" "is" "round" "+")
triple12
Dave is smart.
("Dave" "is" "smart" "+")
triple13
((triple8 triple12) -> (rule2 % int1))
Dave is smart.
("Dave" "is" "smart" "+")
int1
Erin is not furry.
("Erin" "is" "furry" "-")
triple14
Erin is not smart.
("Erin" "is" "smart" "-")
triple16
Erin is rough.
("Erin" "is" "rough" "+")
triple15
Bob is smart.
("Bob" "is" "smart" "+")
((triple2 triple6) -> (rule2 % int1))
Bob is smart.
("Bob" "is" "smart" "+")
int1
((((triple5) -> (rule1 % int2)) triple6) -> (rule2 % int1))
Bob is smart.
("Bob" "is" "smart" "+")
int1
Bob is kind.
("Bob" "is" "kind" "+")
int2
Erin is kind.
("Erin" "is" "kind" "+")
((triple15) -> (rule1 % int1))
Erin is kind.
("Erin" "is" "kind" "+")
int1
Erin is quiet.
("Erin" "is" "quiet" "+")
((((triple15) -> (rule1 % int2)) triple15) -> (rule5 % int1))
Erin is quiet.
("Erin" "is" "quiet" "+")
int1
Erin is kind.
("Erin" "is" "kind" "+")
int2