Bob is kind. Bob is red. Bob is not round. Erin is nice. Erin is quiet. Erin is red. Erin is rough. Erin is round. Harry is furry. Harry is red. Furry, red people are quiet. If Harry is kind and Harry is not round then Harry is furry. If Bob is not red then Bob is not quiet. If someone is quiet and red then they are nice. Round, quiet people are kind. If someone is kind and red then they are furry.
Bob is kind.
("Bob" "is" "kind" "+")
Bob is red.
("Bob" "is" "red" "+")
Bob is not round.
("Bob" "is" "round" "-")
Erin is nice.
("Erin" "is" "nice" "+")
Erin is quiet.
("Erin" "is" "quiet" "+")
Erin is red.
("Erin" "is" "red" "+")
Erin is rough.
("Erin" "is" "rough" "+")
Erin is round.
("Erin" "is" "round" "+")
Harry is furry.
("Harry" "is" "furry" "+")
Harry is red.
("Harry" "is" "red" "+")
Furry, red people are quiet.
((("someone" "is" "furry" "+") ("someone" "is" "red" "+")) -> ("someone" "is" "quiet" "+"))
If Harry is kind and Harry is not round then Harry is furry.
((("Harry" "is" "kind" "+") ("Harry" "is" "round" "~")) -> ("Harry" "is" "furry" "+"))
If Bob is not red then Bob is not quiet.
((("Bob" "is" "red" "~")) -> ("Bob" "is" "quiet" "-"))
If someone is quiet and red then they are nice.
((("someone" "is" "quiet" "+") ("someone" "is" "red" "+")) -> ("someone" "is" "nice" "+"))
Round, quiet people are kind.
((("someone" "is" "round" "+") ("someone" "is" "quiet" "+")) -> ("someone" "is" "kind" "+"))
If someone is kind and red then they are furry.
((("someone" "is" "kind" "+") ("someone" "is" "red" "+")) -> ("someone" "is" "furry" "+"))
Erin is rough.
True
1
proof
[(triple7)]
("Erin" "is" "rough" "+")
triple7
Erin is not round.
False
1
inv-proof
[(triple8)]
("Erin" "is" "round" "-")
triple8
Harry is quiet.
True
3
proof
[(((triple9 triple10) -> rule1))]
("Harry" "is" "quiet" "+")
((triple9 triple10) -> (rule1 % int1))
Harry is quiet.
("Harry" "is" "quiet" "+")
int1
Bob is not furry.
False
3
inv-proof
[(((triple1 triple2) -> rule6))]
("Bob" "is" "furry" "-")
((triple1 triple2) -> (rule6 % int1))
Bob is furry.
("Bob" "is" "furry" "+")
int1
Erin is furry.
True
5
proof
[(((((triple8 triple5) -> rule5) triple6) -> rule6))]
("Erin" "is" "furry" "+")
((((triple8 triple5) -> (rule5 % int2)) triple6) -> (rule6 % int1))
Erin is furry.
("Erin" "is" "furry" "+")
int1
Erin is kind.
("Erin" "is" "kind" "+")
int2
Erin is not furry.
False
5
inv-proof
[(((((triple8 triple5) -> rule5) triple6) -> rule6))]
("Erin" "is" "furry" "-")
((((triple8 triple5) -> (rule5 % int2)) triple6) -> (rule6 % int1))
Erin is furry.
("Erin" "is" "furry" "+")
int1
Erin is kind.
("Erin" "is" "kind" "+")
int2
Bob is nice.
True
7
proof
[(((((((triple1 triple2) -> rule6) triple2) -> rule1) triple2) -> rule4))]
("Bob" "is" "nice" "+")
((((((triple1 triple2) -> (rule6 % int3)) triple2) -> (rule1 % int2)) triple2) -> (rule4 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Bob is quiet.
("Bob" "is" "quiet" "+")
int2
Bob is furry.
("Bob" "is" "furry" "+")
int3
Bob is not nice.
False
7
inv-proof
[(((((((triple1 triple2) -> rule6) triple2) -> rule1) triple2) -> rule4))]
("Bob" "is" "nice" "-")
((((((triple1 triple2) -> (rule6 % int3)) triple2) -> (rule1 % int2)) triple2) -> (rule4 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Bob is quiet.
("Bob" "is" "quiet" "+")
int2
Bob is furry.
("Bob" "is" "furry" "+")
int3
Harry is not kind.
Unknown
inv-rconc
[@1: Harry is kind.[CWA. Example of deepest failure = (rule5 <- FAIL)]]
("Harry" "is" "kind" "-")
Harry is rough.
Unknown
random
[@0: Harry is rough.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "rough" "+")
Bob is not rough.
Unknown
inv-random
[@0: Bob is rough.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "rough" "-")
Harry is round.
Unknown
random
[@0: Harry is round.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "round" "+")
@0: Bob is kind.[(triple1)] Bob is not round.[(triple3)] Bob is red.[(triple2)] Erin is nice.[(triple4 OR ((triple5 triple6) -> rule4))] Erin is quiet.[(triple5)] Erin is red.[(triple6)] Erin is rough.[(triple7)] Erin is round.[(triple8)] Harry is furry.[(triple9)] Harry is red.[(triple10)] @1: Bob is furry.[(((triple1 triple2) -> rule6))] Erin is kind.[(((triple8 triple5) -> rule5))] Harry is quiet.[(((triple9 triple10) -> rule1))] @2: Bob is quiet.[(((((triple1 triple2) -> rule6) triple2) -> rule1))] Erin is furry.[(((((triple8 triple5) -> rule5) triple6) -> rule6))] Harry is nice.[(((((triple9 triple10) -> rule1) triple10) -> rule4))] @3: Bob is nice.[(((((((triple1 triple2) -> rule6) triple2) -> rule1) triple2) -> rule4))]
Bob is kind.
("Bob" "is" "kind" "+")
triple1
Bob is not round.
("Bob" "is" "round" "-")
triple3
Bob is red.
("Bob" "is" "red" "+")
triple2
Erin is nice.
("Erin" "is" "nice" "+")
triple4
((triple5 triple6) -> (rule4 % int1))
Erin is nice.
("Erin" "is" "nice" "+")
int1
Erin is quiet.
("Erin" "is" "quiet" "+")
triple5
Erin is red.
("Erin" "is" "red" "+")
triple6
Erin is rough.
("Erin" "is" "rough" "+")
triple7
Erin is round.
("Erin" "is" "round" "+")
triple8
Harry is furry.
("Harry" "is" "furry" "+")
triple9
Harry is red.
("Harry" "is" "red" "+")
triple10
Bob is furry.
("Bob" "is" "furry" "+")
((triple1 triple2) -> (rule6 % int1))
Bob is furry.
("Bob" "is" "furry" "+")
int1
Erin is kind.
("Erin" "is" "kind" "+")
((triple8 triple5) -> (rule5 % int1))
Erin is kind.
("Erin" "is" "kind" "+")
int1
Harry is quiet.
("Harry" "is" "quiet" "+")
((triple9 triple10) -> (rule1 % int1))
Harry is quiet.
("Harry" "is" "quiet" "+")
int1
Bob is quiet.
("Bob" "is" "quiet" "+")
((((triple1 triple2) -> (rule6 % int2)) triple2) -> (rule1 % int1))
Bob is quiet.
("Bob" "is" "quiet" "+")
int1
Bob is furry.
("Bob" "is" "furry" "+")
int2
Erin is furry.
("Erin" "is" "furry" "+")
((((triple8 triple5) -> (rule5 % int2)) triple6) -> (rule6 % int1))
Erin is furry.
("Erin" "is" "furry" "+")
int1
Erin is kind.
("Erin" "is" "kind" "+")
int2
Harry is nice.
("Harry" "is" "nice" "+")
((((triple9 triple10) -> (rule1 % int2)) triple10) -> (rule4 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Harry is quiet.
("Harry" "is" "quiet" "+")
int2
Bob is nice.
("Bob" "is" "nice" "+")
((((((triple1 triple2) -> (rule6 % int3)) triple2) -> (rule1 % int2)) triple2) -> (rule4 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Bob is quiet.
("Bob" "is" "quiet" "+")
int2
Bob is furry.
("Bob" "is" "furry" "+")
int3