Charlie is green. Gary is furry. Gary is nice. Gary is red. Gary is round. Harry is not red. Harry is smart. If Harry is green and Harry is red then Harry is nice. If something is smart then it is green. If something is green and not round then it is nice. Furry things are nice. Round things are nice. All green things are smart. If Harry is green then Harry is furry. Smart things are not red.
Charlie is green.
("Charlie" "is" "green" "+")
Gary is furry.
("Gary" "is" "furry" "+")
Gary is nice.
("Gary" "is" "nice" "+")
Gary is red.
("Gary" "is" "red" "+")
Gary is round.
("Gary" "is" "round" "+")
Harry is not red.
("Harry" "is" "red" "-")
Harry is smart.
("Harry" "is" "smart" "+")
If Harry is green and Harry is red then Harry is nice.
((("Harry" "is" "green" "+") ("Harry" "is" "red" "+")) -> ("Harry" "is" "nice" "+"))
If something is smart then it is green.
((("something" "is" "smart" "+")) -> ("something" "is" "green" "+"))
If something is green and not round then it is nice.
((("something" "is" "green" "+") ("something" "is" "round" "~")) -> ("something" "is" "nice" "+"))
Furry things are nice.
((("something" "is" "furry" "+")) -> ("something" "is" "nice" "+"))
Round things are nice.
((("something" "is" "round" "+")) -> ("something" "is" "nice" "+"))
All green things are smart.
((("something" "is" "green" "+")) -> ("something" "is" "smart" "+"))
If Harry is green then Harry is furry.
((("Harry" "is" "green" "+")) -> ("Harry" "is" "furry" "+"))
Smart things are not red.
((("something" "is" "smart" "+")) -> ("something" "is" "red" "-"))
Charlie is green.
True
1
proof
[(triple1)]
("Charlie" "is" "green" "+")
triple1
Harry is red.
False
1
inv-proof
[(triple6 OR ((triple7) -> rule8))]
("Harry" "is" "red" "+")
triple6
((triple7) -> (rule8 % int1))
Harry is not red.
("Harry" "is" "red" "-")
int1
Harry is green.
True
2
proof
[(((triple7) -> rule2))]
("Harry" "is" "green" "+")
((triple7) -> (rule2 % int1))
Harry is green.
("Harry" "is" "green" "+")
int1
Charlie is not smart.
False
2
inv-proof
[(((triple1) -> rule6))]
("Charlie" "is" "smart" "-")
((triple1) -> (rule6 % int1))
Charlie is smart.
("Charlie" "is" "smart" "+")
int1
Harry is furry.
True
3
proof
[(((((triple7) -> rule2)) -> rule7))]
("Harry" "is" "furry" "+")
((((triple7) -> (rule2 % int2))) -> (rule7 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is green.
("Harry" "is" "green" "+")
int2
Harry is not furry.
False
3
inv-proof
[(((((triple7) -> rule2)) -> rule7))]
("Harry" "is" "furry" "-")
((((triple7) -> (rule2 % int2))) -> (rule7 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is green.
("Harry" "is" "green" "+")
int2
Harry is nice.
True
4
proof
[(((((((triple7) -> rule2)) -> rule7)) -> rule4))]
("Harry" "is" "nice" "+")
((((((triple7) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule4 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Harry is furry.
("Harry" "is" "furry" "+")
int2
Harry is green.
("Harry" "is" "green" "+")
int3
Harry is not nice.
False
4
inv-proof
[(((((((triple7) -> rule2)) -> rule7)) -> rule4))]
("Harry" "is" "nice" "-")
((((((triple7) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule4 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Harry is furry.
("Harry" "is" "furry" "+")
int2
Harry is green.
("Harry" "is" "green" "+")
int3
Charlie is not nice.
Unknown
inv-rconc
[@1: Charlie is nice.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Charlie" "is" "nice" "-")
Gary is green.
Unknown
rconc
[@2: Gary is green.[CWA. Example of deepest failure = (rule2 <- rule6 <- FAIL)]]
("Gary" "is" "green" "+")
Gary is not smart.
Unknown
inv-rconc
[@2: Gary is smart.[CWA. Example of deepest failure = (rule6 <- rule2 <- FAIL)]]
("Gary" "is" "smart" "-")
Harry is round.
Unknown
random
[@0: Harry is round.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "round" "+")
Charlie is not round.
Unknown
inv-random
[@0: Charlie is round.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "round" "-")
Harry is blue.
Unknown
random
[@0: Harry is blue.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "blue" "+")
Gary is not blue.
Unknown
inv-random
[@0: Gary is blue.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "blue" "-")
Charlie is furry.
Unknown
random
[@0: Charlie is furry.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "furry" "+")
@0: Charlie is green.[(triple1)] Gary is furry.[(triple2)] Gary is nice.[(triple3 OR ((triple2) -> rule4) OR ((triple5) -> rule5))] Gary is red.[(triple4)] Gary is round.[(triple5)] Harry is not red.[(triple6 OR ((triple7) -> rule8))] Harry is smart.[(triple7)] @1: Charlie is smart.[(((triple1) -> rule6))] Harry is green.[(((triple7) -> rule2))] @2: Charlie is not red.[(((((triple1) -> rule6)) -> rule8))] Harry is furry.[(((((triple7) -> rule2)) -> rule7))] @3: Harry is nice.[(((((((triple7) -> rule2)) -> rule7)) -> rule4))]
Charlie is green.
("Charlie" "is" "green" "+")
triple1
Gary is furry.
("Gary" "is" "furry" "+")
triple2
Gary is nice.
("Gary" "is" "nice" "+")
triple3
((triple2) -> (rule4 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
((triple5) -> (rule5 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
triple4
Gary is round.
("Gary" "is" "round" "+")
triple5
Harry is not red.
("Harry" "is" "red" "-")
triple6
((triple7) -> (rule8 % int1))
Harry is not red.
("Harry" "is" "red" "-")
int1
Harry is smart.
("Harry" "is" "smart" "+")
triple7
Charlie is smart.
("Charlie" "is" "smart" "+")
((triple1) -> (rule6 % int1))
Charlie is smart.
("Charlie" "is" "smart" "+")
int1
Harry is green.
("Harry" "is" "green" "+")
((triple7) -> (rule2 % int1))
Harry is green.
("Harry" "is" "green" "+")
int1
Charlie is not red.
("Charlie" "is" "red" "-")
((((triple1) -> (rule6 % int2))) -> (rule8 % int1))
Charlie is not red.
("Charlie" "is" "red" "-")
int1
Charlie is smart.
("Charlie" "is" "smart" "+")
int2
Harry is furry.
("Harry" "is" "furry" "+")
((((triple7) -> (rule2 % int2))) -> (rule7 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is green.
("Harry" "is" "green" "+")
int2
Harry is nice.
("Harry" "is" "nice" "+")
((((((triple7) -> (rule2 % int3))) -> (rule7 % int2))) -> (rule4 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Harry is furry.
("Harry" "is" "furry" "+")
int2
Harry is green.
("Harry" "is" "green" "+")
int3