Dave is blue. Dave is not furry. Dave is nice. Dave is red. Dave is rough. Dave is not smart. Dave is white. Furry, rough things are nice. If something is rough and not white then it is nice. All furry things are nice. If Dave is white and Dave is not furry then Dave is blue. If Dave is furry and Dave is rough then Dave is red. If something is nice and not furry then it is red. All smart things are red. If something is nice and not furry then it is blue.
Dave is blue.
("Dave" "is" "blue" "+")
Dave is not furry.
("Dave" "is" "furry" "-")
Dave is nice.
("Dave" "is" "nice" "+")
Dave is red.
("Dave" "is" "red" "+")
Dave is rough.
("Dave" "is" "rough" "+")
Dave is not smart.
("Dave" "is" "smart" "-")
Dave is white.
("Dave" "is" "white" "+")
Furry, rough things are nice.
((("something" "is" "furry" "+") ("something" "is" "rough" "+")) -> ("something" "is" "nice" "+"))
If something is rough and not white then it is nice.
((("something" "is" "rough" "+") ("something" "is" "white" "~")) -> ("something" "is" "nice" "+"))
All furry things are nice.
((("something" "is" "furry" "+")) -> ("something" "is" "nice" "+"))
If Dave is white and Dave is not furry then Dave is blue.
((("Dave" "is" "white" "+") ("Dave" "is" "furry" "~")) -> ("Dave" "is" "blue" "+"))
If Dave is furry and Dave is rough then Dave is red.
((("Dave" "is" "furry" "+") ("Dave" "is" "rough" "+")) -> ("Dave" "is" "red" "+"))
If something is nice and not furry then it is red.
((("something" "is" "nice" "+") ("something" "is" "furry" "~")) -> ("something" "is" "red" "+"))
All smart things are red.
((("something" "is" "smart" "+")) -> ("something" "is" "red" "+"))
If something is nice and not furry then it is blue.
((("something" "is" "nice" "+") ("something" "is" "furry" "~")) -> ("something" "is" "blue" "+"))
Dave is rough.
True
1
proof
[(triple5)]
("Dave" "is" "rough" "+")
triple5
Dave is smart.
False
1
inv-proof
[(triple6)]
("Dave" "is" "smart" "+")
triple6
@0: Dave is blue.[(triple1 OR ((triple3 triple2) -> rule8) OR ((triple7 triple2) -> rule4))] Dave is nice.[(triple3)] Dave is not furry.[(triple2)] Dave is not smart.[(triple6)] Dave is red.[(triple4 OR ((triple3 triple2) -> rule6))] Dave is rough.[(triple5)] Dave is white.[(triple7)]
Dave is blue.
("Dave" "is" "blue" "+")
triple1
((triple3 triple2) -> (rule8 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
((triple7 triple2) -> (rule4 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is nice.
("Dave" "is" "nice" "+")
triple3
Dave is not furry.
("Dave" "is" "furry" "-")
triple2
Dave is not smart.
("Dave" "is" "smart" "-")
triple6
Dave is red.
("Dave" "is" "red" "+")
triple4
((triple3 triple2) -> (rule6 % int1))
Dave is red.
("Dave" "is" "red" "+")
int1
Dave is rough.
("Dave" "is" "rough" "+")
triple5
Dave is white.
("Dave" "is" "white" "+")
triple7