Harry is furry. Harry is rough. Harry is smart. If something is smart and kind then it is blue. If Harry is furry and Harry is rough then Harry is young. If something is kind then it is smart. All young things are rough. If Harry is blue then Harry is green. If Harry is blue then Harry is furry. If Harry is smart and Harry is young then Harry is furry. All furry, kind things are green.
Harry is furry.
("Harry" "is" "furry" "+")
Harry is rough.
("Harry" "is" "rough" "+")
Harry is smart.
("Harry" "is" "smart" "+")
If something is smart and kind then it is blue.
((("something" "is" "smart" "+") ("something" "is" "kind" "+")) -> ("something" "is" "blue" "+"))
If Harry is furry and Harry is rough then Harry is young.
((("Harry" "is" "furry" "+") ("Harry" "is" "rough" "+")) -> ("Harry" "is" "young" "+"))
If something is kind then it is smart.
((("something" "is" "kind" "+")) -> ("something" "is" "smart" "+"))
All young things are rough.
((("something" "is" "young" "+")) -> ("something" "is" "rough" "+"))
If Harry is blue then Harry is green.
((("Harry" "is" "blue" "+")) -> ("Harry" "is" "green" "+"))
If Harry is blue then Harry is furry.
((("Harry" "is" "blue" "+")) -> ("Harry" "is" "furry" "+"))
If Harry is smart and Harry is young then Harry is furry.
((("Harry" "is" "smart" "+") ("Harry" "is" "young" "+")) -> ("Harry" "is" "furry" "+"))
All furry, kind things are green.
((("something" "is" "furry" "+") ("something" "is" "kind" "+")) -> ("something" "is" "green" "+"))
Harry is rough.
True
1
proof
[(triple2)]
("Harry" "is" "rough" "+")
triple2
Harry is not rough.
False
1
inv-proof
[(triple2)]
("Harry" "is" "rough" "-")
triple2
Harry is young.
True
3
proof
[(((triple1 triple2) -> rule2))]
("Harry" "is" "young" "+")
((triple1 triple2) -> (rule2 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1
Harry is not young.
False
3
inv-proof
[(((triple1 triple2) -> rule2))]
("Harry" "is" "young" "-")
((triple1 triple2) -> (rule2 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1
Harry is not green.
Unknown
inv-rconc
[@2: Harry is green.[CWA. Example of deepest failure = (rule5 <- rule1 <- FAIL)]]
("Harry" "is" "green" "-")
Harry is blue.
Unknown
rconc
[@1: Harry is blue.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Harry" "is" "blue" "+")
@0: Harry is furry.[(triple1)] Harry is rough.[(triple2)] Harry is smart.[(triple3)] @1: Harry is young.[(((triple1 triple2) -> rule2))]
Harry is furry.
("Harry" "is" "furry" "+")
triple1
Harry is rough.
("Harry" "is" "rough" "+")
triple2
Harry is smart.
("Harry" "is" "smart" "+")
triple3
Harry is young.
("Harry" "is" "young" "+")
((triple1 triple2) -> (rule2 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1