Bob is furry. Bob is smart. Bob is white. Bob is young. Dave is not cold. Dave is nice. Dave is young. Fiona is smart. Gary is blue. Gary is cold. Gary is smart. Gary is white. Smart, furry people are not nice. If Dave is not cold then Dave is not furry. All white people are furry.
Bob is furry.
("Bob" "is" "furry" "+")
Bob is smart.
("Bob" "is" "smart" "+")
Bob is white.
("Bob" "is" "white" "+")
Bob is young.
("Bob" "is" "young" "+")
Dave is not cold.
("Dave" "is" "cold" "-")
Dave is nice.
("Dave" "is" "nice" "+")
Dave is young.
("Dave" "is" "young" "+")
Fiona is smart.
("Fiona" "is" "smart" "+")
Gary is blue.
("Gary" "is" "blue" "+")
Gary is cold.
("Gary" "is" "cold" "+")
Gary is smart.
("Gary" "is" "smart" "+")
Gary is white.
("Gary" "is" "white" "+")
Smart, furry people are not nice.
((("someone" "is" "smart" "+") ("someone" "is" "furry" "+")) -> ("someone" "is" "nice" "-"))
If Dave is not cold then Dave is not furry.
((("Dave" "is" "cold" "~")) -> ("Dave" "is" "furry" "-"))
All white people are furry.
((("someone" "is" "white" "+")) -> ("someone" "is" "furry" "+"))
Gary is blue.
True
1
proof
[(triple9)]
("Gary" "is" "blue" "+")
triple9
Bob is not furry.
False
1
inv-proof
[(triple1 OR ((triple3) -> rule3))]
("Bob" "is" "furry" "-")
triple1
((triple3) -> (rule3 % int1))
Bob is furry.
("Bob" "is" "furry" "+")
int1
Bob is not nice.
True
3
proof
[(((triple2 triple1) -> rule1) OR ((triple2 ((triple3) -> rule3)) -> rule1))]
("Bob" "is" "nice" "-")
((triple2 triple1) -> (rule1 % int1))
Bob is not nice.
("Bob" "is" "nice" "-")
int1
((triple2 ((triple3) -> (rule3 % int2))) -> (rule1 % int1))
Bob is not nice.
("Bob" "is" "nice" "-")
int1
Bob is furry.
("Bob" "is" "furry" "+")
int2
Bob is nice.
False
3
inv-proof
[(((triple2 triple1) -> rule1) OR ((triple2 ((triple3) -> rule3)) -> rule1))]
("Bob" "is" "nice" "+")
((triple2 triple1) -> (rule1 % int1))
Bob is not nice.
("Bob" "is" "nice" "-")
int1
((triple2 ((triple3) -> (rule3 % int2))) -> (rule1 % int1))
Bob is not nice.
("Bob" "is" "nice" "-")
int1
Bob is furry.
("Bob" "is" "furry" "+")
int2
Gary is not nice.
True
4
proof
[(((triple11 ((triple12) -> rule3)) -> rule1))]
("Gary" "is" "nice" "-")
((triple11 ((triple12) -> (rule3 % int2))) -> (rule1 % int1))
Gary is not nice.
("Gary" "is" "nice" "-")
int1
Gary is furry.
("Gary" "is" "furry" "+")
int2
Gary is nice.
False
4
inv-proof
[(((triple11 ((triple12) -> rule3)) -> rule1))]
("Gary" "is" "nice" "+")
((triple11 ((triple12) -> (rule3 % int2))) -> (rule1 % int1))
Gary is not nice.
("Gary" "is" "nice" "-")
int1
Gary is furry.
("Gary" "is" "furry" "+")
int2
Fiona is not furry.
Unknown
inv-rconc
[@1: Fiona is furry.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Fiona" "is" "furry" "-")
Dave is smart.
Unknown
random
[@0: Dave is smart.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "smart" "+")
Dave is not blue.
Unknown
inv-random
[@0: Dave is blue.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "blue" "-")
Fiona is young.
Unknown
random
[@0: Fiona is young.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "young" "+")
Dave is not white.
Unknown
inv-random
[@0: Dave is white.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "white" "-")
Gary is young.
Unknown
random
[@0: Gary is young.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "young" "+")
@0: Bob is furry.[(triple1 OR ((triple3) -> rule3))] Bob is smart.[(triple2)] Bob is white.[(triple3)] Bob is young.[(triple4)] Dave is nice.[(triple6)] Dave is not cold.[(triple5)] Dave is young.[(triple7)] Fiona is smart.[(triple8)] Gary is blue.[(triple9)] Gary is cold.[(triple10)] Gary is smart.[(triple11)] Gary is white.[(triple12)] @1: Bob is not nice.[(((triple2 triple1) -> rule1) OR ((triple2 ((triple3) -> rule3)) -> rule1))] Dave is not furry.[(((triple5) -> rule2))] Gary is furry.[(((triple12) -> rule3))] @2: Gary is not nice.[(((triple11 ((triple12) -> rule3)) -> rule1))]
Bob is furry.
("Bob" "is" "furry" "+")
triple1
((triple3) -> (rule3 % int1))
Bob is furry.
("Bob" "is" "furry" "+")
int1
Bob is smart.
("Bob" "is" "smart" "+")
triple2
Bob is white.
("Bob" "is" "white" "+")
triple3
Bob is young.
("Bob" "is" "young" "+")
triple4
Dave is nice.
("Dave" "is" "nice" "+")
triple6
Dave is not cold.
("Dave" "is" "cold" "-")
triple5
Dave is young.
("Dave" "is" "young" "+")
triple7
Fiona is smart.
("Fiona" "is" "smart" "+")
triple8
Gary is blue.
("Gary" "is" "blue" "+")
triple9
Gary is cold.
("Gary" "is" "cold" "+")
triple10
Gary is smart.
("Gary" "is" "smart" "+")
triple11
Gary is white.
("Gary" "is" "white" "+")
triple12
Bob is not nice.
("Bob" "is" "nice" "-")
((triple2 triple1) -> (rule1 % int1))
Bob is not nice.
("Bob" "is" "nice" "-")
int1
((triple2 ((triple3) -> (rule3 % int2))) -> (rule1 % int1))
Bob is not nice.
("Bob" "is" "nice" "-")
int1
Bob is furry.
("Bob" "is" "furry" "+")
int2
Dave is not furry.
("Dave" "is" "furry" "-")
((triple5) -> (rule2 % int1))
Dave is not furry.
("Dave" "is" "furry" "-")
int1
Gary is furry.
("Gary" "is" "furry" "+")
((triple12) -> (rule3 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is not nice.
("Gary" "is" "nice" "-")
((triple11 ((triple12) -> (rule3 % int2))) -> (rule1 % int1))
Gary is not nice.
("Gary" "is" "nice" "-")
int1
Gary is furry.
("Gary" "is" "furry" "+")
int2