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