Charlie is white. Charlie is young. Dave is blue. Dave is furry. Dave is nice. Dave is white. Harry is blue. Harry is furry. Harry is kind. Harry is quiet. Harry is white. Harry is young. All kind people are white. All blue, young people are nice. If Dave is furry then Dave is quiet. Young, white people are kind. Quiet, kind people are young. All white, quiet people are kind. If Dave is kind and Dave is furry then Dave is quiet. Young people are furry.
Charlie is white.
("Charlie" "is" "white" "+")
Charlie is young.
("Charlie" "is" "young" "+")
Dave is blue.
("Dave" "is" "blue" "+")
Dave is furry.
("Dave" "is" "furry" "+")
Dave is nice.
("Dave" "is" "nice" "+")
Dave is white.
("Dave" "is" "white" "+")
Harry is blue.
("Harry" "is" "blue" "+")
Harry is furry.
("Harry" "is" "furry" "+")
Harry is kind.
("Harry" "is" "kind" "+")
Harry is quiet.
("Harry" "is" "quiet" "+")
Harry is white.
("Harry" "is" "white" "+")
Harry is young.
("Harry" "is" "young" "+")
All kind people are white.
((("someone" "is" "kind" "+")) -> ("someone" "is" "white" "+"))
All blue, young people are nice.
((("someone" "is" "blue" "+") ("someone" "is" "young" "+")) -> ("someone" "is" "nice" "+"))
If Dave is furry then Dave is quiet.
((("Dave" "is" "furry" "+")) -> ("Dave" "is" "quiet" "+"))
Young, white people are kind.
((("someone" "is" "young" "+") ("someone" "is" "white" "+")) -> ("someone" "is" "kind" "+"))
Quiet, kind people are young.
((("someone" "is" "quiet" "+") ("someone" "is" "kind" "+")) -> ("someone" "is" "young" "+"))
All white, quiet people are kind.
((("someone" "is" "white" "+") ("someone" "is" "quiet" "+")) -> ("someone" "is" "kind" "+"))
If Dave is kind and Dave is furry then Dave is quiet.
((("Dave" "is" "kind" "+") ("Dave" "is" "furry" "+")) -> ("Dave" "is" "quiet" "+"))
Young people are furry.
((("someone" "is" "young" "+")) -> ("someone" "is" "furry" "+"))
Dave is nice.
True
1
proof
[(triple5 OR ((triple3 ((((triple4) -> rule3) ((triple6 ((triple4) -> rule3)) -> rule6)) -> rule5)) -> rule2))]
("Dave" "is" "nice" "+")
triple5
((triple3 ((((triple4) -> (rule3 % int4)) ((triple6 ((triple4) -> (rule3 % int4))) -> (rule6 % int3))) -> (rule5 % int2))) -> (rule2 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Dave is young.
("Dave" "is" "young" "+")
int2
Dave is kind.
("Dave" "is" "kind" "+")
int3
Dave is quiet.
("Dave" "is" "quiet" "+")
int4
Harry is not quiet.
False
1
inv-proof
[(triple10)]
("Harry" "is" "quiet" "-")
triple10
Charlie is furry.
True
2
proof
[(((triple2) -> rule8))]
("Charlie" "is" "furry" "+")
((triple2) -> (rule8 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is not furry.
False
2
inv-proof
[(((triple2) -> rule8))]
("Charlie" "is" "furry" "-")
((triple2) -> (rule8 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Dave is kind.
True
4
proof
[(((triple6 ((triple4) -> rule3)) -> rule6))]
("Dave" "is" "kind" "+")
((triple6 ((triple4) -> (rule3 % int2))) -> (rule6 % int1))
Dave is kind.
("Dave" "is" "kind" "+")
int1
Dave is quiet.
("Dave" "is" "quiet" "+")
int2
Dave is not kind.
False
4
inv-proof
[(((triple6 ((triple4) -> rule3)) -> rule6))]
("Dave" "is" "kind" "-")
((triple6 ((triple4) -> (rule3 % int2))) -> (rule6 % int1))
Dave is kind.
("Dave" "is" "kind" "+")
int1
Dave is quiet.
("Dave" "is" "quiet" "+")
int2
Charlie is not nice.
Unknown
inv-rconc
[@1: Charlie is nice.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Charlie" "is" "nice" "-")
Charlie is quiet.
Unknown
random
[@0: Charlie is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "quiet" "+")
@0: Charlie is white.[(triple1)] Charlie is young.[(triple2)] Dave is blue.[(triple3)] Dave is furry.[(triple4)] Dave is nice.[(triple5 OR ((triple3 ((((triple4) -> rule3) ((triple6 ((triple4) -> rule3)) -> rule6)) -> rule5)) -> rule2))] Dave is white.[(triple6)] Harry is blue.[(triple7)] Harry is furry.[(triple8 OR ((triple12) -> rule8) OR ((((triple10 triple9) -> rule5)) -> rule8) OR ((((triple10 ((triple11 triple10) -> rule6)) -> rule5)) -> rule8))] Harry is kind.[(triple9 OR ((triple11 triple10) -> rule6) OR ((triple12 triple11) -> rule4))] Harry is quiet.[(triple10)] Harry is white.[(triple11 OR ((triple9) -> rule1))] Harry is young.[(triple12 OR ((triple10 triple9) -> rule5) OR ((triple10 ((triple11 triple10) -> rule6)) -> rule5))] @1: Charlie is furry.[(((triple2) -> rule8))] Charlie is kind.[(((triple2 triple1) -> rule4))] Dave is quiet.[(((triple4) -> rule3))] Harry is nice.[(((triple7 triple12) -> rule2) OR ((triple7 ((triple10 triple9) -> rule5)) -> rule2) OR ((triple7 ((triple10 ((triple11 triple10) -> rule6)) -> rule5)) -> rule2))] @2: Dave is kind.[(((triple6 ((triple4) -> rule3)) -> rule6))] @3: Dave is young.[(((((triple4) -> rule3) ((triple6 ((triple4) -> rule3)) -> rule6)) -> rule5))]
Charlie is white.
("Charlie" "is" "white" "+")
triple1
Charlie is young.
("Charlie" "is" "young" "+")
triple2
Dave is blue.
("Dave" "is" "blue" "+")
triple3
Dave is furry.
("Dave" "is" "furry" "+")
triple4
Dave is nice.
("Dave" "is" "nice" "+")
triple5
((triple3 ((((triple4) -> (rule3 % int4)) ((triple6 ((triple4) -> (rule3 % int4))) -> (rule6 % int3))) -> (rule5 % int2))) -> (rule2 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Dave is young.
("Dave" "is" "young" "+")
int2
Dave is kind.
("Dave" "is" "kind" "+")
int3
Dave is quiet.
("Dave" "is" "quiet" "+")
int4
Dave is white.
("Dave" "is" "white" "+")
triple6
Harry is blue.
("Harry" "is" "blue" "+")
triple7
Harry is furry.
("Harry" "is" "furry" "+")
triple8
((triple12) -> (rule8 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
((((triple10 triple9) -> (rule5 % int2))) -> (rule8 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is young.
("Harry" "is" "young" "+")
int2
((((triple10 ((triple11 triple10) -> (rule6 % int3))) -> (rule5 % int2))) -> (rule8 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is young.
("Harry" "is" "young" "+")
int2
Harry is kind.
("Harry" "is" "kind" "+")
int3
Harry is kind.
("Harry" "is" "kind" "+")
triple9
((triple11 triple10) -> (rule6 % int1))
Harry is kind.
("Harry" "is" "kind" "+")
int1
((triple12 triple11) -> (rule4 % int1))
Harry is kind.
("Harry" "is" "kind" "+")
int1
Harry is quiet.
("Harry" "is" "quiet" "+")
triple10
Harry is white.
("Harry" "is" "white" "+")
triple11
((triple9) -> (rule1 % int1))
Harry is white.
("Harry" "is" "white" "+")
int1
Harry is young.
("Harry" "is" "young" "+")
triple12
((triple10 triple9) -> (rule5 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1
((triple10 ((triple11 triple10) -> (rule6 % int2))) -> (rule5 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1
Harry is kind.
("Harry" "is" "kind" "+")
int2
Charlie is furry.
("Charlie" "is" "furry" "+")
((triple2) -> (rule8 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
((triple2 triple1) -> (rule4 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Dave is quiet.
("Dave" "is" "quiet" "+")
((triple4) -> (rule3 % int1))
Dave is quiet.
("Dave" "is" "quiet" "+")
int1
Harry is nice.
("Harry" "is" "nice" "+")
((triple7 triple12) -> (rule2 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
((triple7 ((triple10 triple9) -> (rule5 % int2))) -> (rule2 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Harry is young.
("Harry" "is" "young" "+")
int2
((triple7 ((triple10 ((triple11 triple10) -> (rule6 % int3))) -> (rule5 % int2))) -> (rule2 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Harry is young.
("Harry" "is" "young" "+")
int2
Harry is kind.
("Harry" "is" "kind" "+")
int3
Dave is kind.
("Dave" "is" "kind" "+")
((triple6 ((triple4) -> (rule3 % int2))) -> (rule6 % int1))
Dave is kind.
("Dave" "is" "kind" "+")
int1
Dave is quiet.
("Dave" "is" "quiet" "+")
int2
Dave is young.
("Dave" "is" "young" "+")
((((triple4) -> (rule3 % int3)) ((triple6 ((triple4) -> (rule3 % int3))) -> (rule6 % int2))) -> (rule5 % int1))
Dave is young.
("Dave" "is" "young" "+")
int1
Dave is kind.
("Dave" "is" "kind" "+")
int2
Dave is quiet.
("Dave" "is" "quiet" "+")
int3