Dave is not big. Dave is blue. Dave is cold. Dave is rough. Dave is smart. Harry is big. Harry is blue. Harry is not furry. Harry is rough. Harry is smart. If something is cold and nice then it is not smart. All big, cold things are smart. Furry things are not nice. If something is big and blue then it is nice. If something is big and nice then it is not cold. All rough, cold things are furry.
Dave is not big.
("Dave" "is" "big" "-")
Dave is blue.
("Dave" "is" "blue" "+")
Dave is cold.
("Dave" "is" "cold" "+")
Dave is rough.
("Dave" "is" "rough" "+")
Dave is smart.
("Dave" "is" "smart" "+")
Harry is big.
("Harry" "is" "big" "+")
Harry is blue.
("Harry" "is" "blue" "+")
Harry is not furry.
("Harry" "is" "furry" "-")
Harry is rough.
("Harry" "is" "rough" "+")
Harry is smart.
("Harry" "is" "smart" "+")
If something is cold and nice then it is not smart.
((("something" "is" "cold" "+") ("something" "is" "nice" "+")) -> ("something" "is" "smart" "-"))
All big, cold things are smart.
((("something" "is" "big" "+") ("something" "is" "cold" "+")) -> ("something" "is" "smart" "+"))
Furry things are not nice.
((("something" "is" "furry" "+")) -> ("something" "is" "nice" "-"))
If something is big and blue then it is nice.
((("something" "is" "big" "+") ("something" "is" "blue" "+")) -> ("something" "is" "nice" "+"))
If something is big and nice then it is not cold.
((("something" "is" "big" "+") ("something" "is" "nice" "+")) -> ("something" "is" "cold" "-"))
All rough, cold things are furry.
((("something" "is" "rough" "+") ("something" "is" "cold" "+")) -> ("something" "is" "furry" "+"))
Dave is rough.
True
1
proof
[(triple4)]
("Dave" "is" "rough" "+")
triple4
Dave is not blue.
False
1
inv-proof
[(triple2)]
("Dave" "is" "blue" "-")
triple2
Harry is nice.
True
3
proof
[(((triple6 triple7) -> rule4))]
("Harry" "is" "nice" "+")
((triple6 triple7) -> (rule4 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Dave is not furry.
False
3
inv-proof
[(((triple4 triple3) -> rule6))]
("Dave" "is" "furry" "-")
((triple4 triple3) -> (rule6 % int1))
Dave is furry.
("Dave" "is" "furry" "+")
int1
@0: Dave is blue.[(triple2)] Dave is cold.[(triple3)] Dave is not big.[(triple1)] Dave is rough.[(triple4)] Dave is smart.[(triple5)] Harry is big.[(triple6)] Harry is blue.[(triple7)] Harry is not furry.[(triple8)] Harry is rough.[(triple9)] Harry is smart.[(triple10)] @1: Dave is furry.[(((triple4 triple3) -> rule6))] Harry is nice.[(((triple6 triple7) -> rule4))] @2: Dave is not nice.[(((((triple4 triple3) -> rule6)) -> rule3))] Harry is not cold.[(((triple6 ((triple6 triple7) -> rule4)) -> rule5))]
Dave is blue.
("Dave" "is" "blue" "+")
triple2
Dave is cold.
("Dave" "is" "cold" "+")
triple3
Dave is not big.
("Dave" "is" "big" "-")
triple1
Dave is rough.
("Dave" "is" "rough" "+")
triple4
Dave is smart.
("Dave" "is" "smart" "+")
triple5
Harry is big.
("Harry" "is" "big" "+")
triple6
Harry is blue.
("Harry" "is" "blue" "+")
triple7
Harry is not furry.
("Harry" "is" "furry" "-")
triple8
Harry is rough.
("Harry" "is" "rough" "+")
triple9
Harry is smart.
("Harry" "is" "smart" "+")
triple10
Dave is furry.
("Dave" "is" "furry" "+")
((triple4 triple3) -> (rule6 % int1))
Dave is furry.
("Dave" "is" "furry" "+")
int1
Harry is nice.
("Harry" "is" "nice" "+")
((triple6 triple7) -> (rule4 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Dave is not nice.
("Dave" "is" "nice" "-")
((((triple4 triple3) -> (rule6 % int2))) -> (rule3 % int1))
Dave is not nice.
("Dave" "is" "nice" "-")
int1
Dave is furry.
("Dave" "is" "furry" "+")
int2
Harry is not cold.
("Harry" "is" "cold" "-")
((triple6 ((triple6 triple7) -> (rule4 % int2))) -> (rule5 % int1))
Harry is not cold.
("Harry" "is" "cold" "-")
int1
Harry is nice.
("Harry" "is" "nice" "+")
int2