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