Charlie is furry. Charlie is round. Dave is smart. Harry is furry. Harry is kind. Harry is not smart. Harry is young. Kind things are not blue. Young, round things are furry. If Dave is kind then Dave is not young. All young things are kind. If something is rough and round then it is not young. All furry things are young. If something is young then it is round. If Dave is smart and Dave is furry then Dave is rough.
Charlie is furry.
("Charlie" "is" "furry" "+")
Charlie is round.
("Charlie" "is" "round" "+")
Dave is smart.
("Dave" "is" "smart" "+")
Harry is furry.
("Harry" "is" "furry" "+")
Harry is kind.
("Harry" "is" "kind" "+")
Harry is not smart.
("Harry" "is" "smart" "-")
Harry is young.
("Harry" "is" "young" "+")
Kind things are not blue.
((("something" "is" "kind" "+")) -> ("something" "is" "blue" "-"))
Young, round things are furry.
((("something" "is" "young" "+") ("something" "is" "round" "+")) -> ("something" "is" "furry" "+"))
If Dave is kind then Dave is not young.
((("Dave" "is" "kind" "+")) -> ("Dave" "is" "young" "-"))
All young things are kind.
((("something" "is" "young" "+")) -> ("something" "is" "kind" "+"))
If something is rough and round then it is not young.
((("something" "is" "rough" "+") ("something" "is" "round" "+")) -> ("something" "is" "young" "-"))
All furry things are young.
((("something" "is" "furry" "+")) -> ("something" "is" "young" "+"))
If something is young then it is round.
((("something" "is" "young" "+")) -> ("something" "is" "round" "+"))
If Dave is smart and Dave is furry then Dave is rough.
((("Dave" "is" "smart" "+") ("Dave" "is" "furry" "+")) -> ("Dave" "is" "rough" "+"))
Harry is furry.
True
1
proof
[(triple4 OR ((triple7 ((triple7) -> rule7)) -> rule2))]
("Harry" "is" "furry" "+")
triple4
((triple7 ((triple7) -> (rule7 % int2))) -> (rule2 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is round.
("Harry" "is" "round" "+")
int2
Dave is not smart.
False
1
inv-proof
[(triple3)]
("Dave" "is" "smart" "-")
triple3
Harry is not blue.
True
2
proof
[(((triple5) -> rule1) OR ((((triple7) -> rule4)) -> rule1) OR ((((((triple4) -> rule6)) -> rule4)) -> rule1))]
("Harry" "is" "blue" "-")
((triple5) -> (rule1 % int1))
Harry is not blue.
("Harry" "is" "blue" "-")
int1
((((triple7) -> (rule4 % int2))) -> (rule1 % int1))
Harry is not blue.
("Harry" "is" "blue" "-")
int1
Harry is kind.
("Harry" "is" "kind" "+")
int2
((((((triple4) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule1 % int1))
Harry is not blue.
("Harry" "is" "blue" "-")
int1
Harry is kind.
("Harry" "is" "kind" "+")
int2
Harry is young.
("Harry" "is" "young" "+")
int3
Charlie is not young.
False
2
inv-proof
[(((triple1) -> rule6))]
("Charlie" "is" "young" "-")
((triple1) -> (rule6 % int1))
Charlie is young.
("Charlie" "is" "young" "+")
int1
Charlie is kind.
True
3
proof
[(((((triple1) -> rule6)) -> rule4))]
("Charlie" "is" "kind" "+")
((((triple1) -> (rule6 % int2))) -> (rule4 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
Charlie is not kind.
False
3
inv-proof
[(((((triple1) -> rule6)) -> rule4))]
("Charlie" "is" "kind" "-")
((((triple1) -> (rule6 % int2))) -> (rule4 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
Charlie is not blue.
True
4
proof
[(((((((triple1) -> rule6)) -> rule4)) -> rule1))]
("Charlie" "is" "blue" "-")
((((((triple1) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule1 % int1))
Charlie is not blue.
("Charlie" "is" "blue" "-")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
int2
Charlie is young.
("Charlie" "is" "young" "+")
int3
Charlie is blue.
False
4
inv-proof
[(((((((triple1) -> rule6)) -> rule4)) -> rule1))]
("Charlie" "is" "blue" "+")
((((((triple1) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule1 % int1))
Charlie is not blue.
("Charlie" "is" "blue" "-")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
int2
Charlie is young.
("Charlie" "is" "young" "+")
int3
Dave is not round.
Unknown
inv-rconc
[@3: Dave is round.[CWA. Example of deepest failure = (rule7 <- rule6 <- rule2 <- FAIL)]]
("Dave" "is" "round" "-")
Dave is rough.
Unknown
rconc
[@3: Dave is rough.[CWA. Example of deepest failure = (rule8 <- rule2 <- rule6 <- FAIL)]]
("Dave" "is" "rough" "+")
Dave is not furry.
Unknown
inv-rconc
[@2: Dave is furry.[CWA. Example of deepest failure = (rule2 <- rule6 <- FAIL)]]
("Dave" "is" "furry" "-")
Dave is young.
Unknown
rconc
[@2: Dave is young.[CWA. Example of deepest failure = (rule6 <- rule2 <- FAIL)]]
("Dave" "is" "young" "+")
Charlie is not rough.
Unknown
inv-random
[@0: Charlie is rough.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "rough" "-")
Charlie is smart.
Unknown
random
[@0: Charlie is smart.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "smart" "+")
Harry is not rough.
Unknown
inv-random
[@0: Harry is rough.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "rough" "-")
Dave is blue.
Unknown
random
[@0: Dave is blue.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "blue" "+")
@0: Charlie is furry.[(triple1)] Charlie is round.[(triple2 OR ((((triple1) -> rule6)) -> rule7))] Dave is smart.[(triple3)] Harry is furry.[(triple4 OR ((triple7 ((triple7) -> rule7)) -> rule2))] Harry is kind.[(triple5 OR ((triple7) -> rule4) OR ((((triple4) -> rule6)) -> rule4))] Harry is not smart.[(triple6)] Harry is young.[(triple7 OR ((triple4) -> rule6))] @1: Charlie is young.[(((triple1) -> rule6))] Harry is not blue.[(((triple5) -> rule1) OR ((((triple7) -> rule4)) -> rule1) OR ((((((triple4) -> rule6)) -> rule4)) -> rule1))] Harry is round.[(((triple7) -> rule7) OR ((((triple4) -> rule6)) -> rule7))] @2: Charlie is kind.[(((((triple1) -> rule6)) -> rule4))] @3: Charlie is not blue.[(((((((triple1) -> rule6)) -> rule4)) -> rule1))]
Charlie is furry.
("Charlie" "is" "furry" "+")
triple1
Charlie is round.
("Charlie" "is" "round" "+")
triple2
((((triple1) -> (rule6 % int2))) -> (rule7 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
Dave is smart.
("Dave" "is" "smart" "+")
triple3
Harry is furry.
("Harry" "is" "furry" "+")
triple4
((triple7 ((triple7) -> (rule7 % int2))) -> (rule2 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is round.
("Harry" "is" "round" "+")
int2
Harry is kind.
("Harry" "is" "kind" "+")
triple5
((triple7) -> (rule4 % int1))
Harry is kind.
("Harry" "is" "kind" "+")
int1
((((triple4) -> (rule6 % int2))) -> (rule4 % int1))
Harry is kind.
("Harry" "is" "kind" "+")
int1
Harry is young.
("Harry" "is" "young" "+")
int2
Harry is not smart.
("Harry" "is" "smart" "-")
triple6
Harry is young.
("Harry" "is" "young" "+")
triple7
((triple4) -> (rule6 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
((triple1) -> (rule6 % int1))
Charlie is young.
("Charlie" "is" "young" "+")
int1
Harry is not blue.
("Harry" "is" "blue" "-")
((triple5) -> (rule1 % int1))
Harry is not blue.
("Harry" "is" "blue" "-")
int1
((((triple7) -> (rule4 % int2))) -> (rule1 % int1))
Harry is not blue.
("Harry" "is" "blue" "-")
int1
Harry is kind.
("Harry" "is" "kind" "+")
int2
((((((triple4) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule1 % int1))
Harry is not blue.
("Harry" "is" "blue" "-")
int1
Harry is kind.
("Harry" "is" "kind" "+")
int2
Harry is young.
("Harry" "is" "young" "+")
int3
Harry is round.
("Harry" "is" "round" "+")
((triple7) -> (rule7 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
((((triple4) -> (rule6 % int2))) -> (rule7 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
Harry is young.
("Harry" "is" "young" "+")
int2
Charlie is kind.
("Charlie" "is" "kind" "+")
((((triple1) -> (rule6 % int2))) -> (rule4 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is young.
("Charlie" "is" "young" "+")
int2
Charlie is not blue.
("Charlie" "is" "blue" "-")
((((((triple1) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule1 % int1))
Charlie is not blue.
("Charlie" "is" "blue" "-")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
int2
Charlie is young.
("Charlie" "is" "young" "+")
int3