Bob is young. Charlie is blue. Charlie is furry. Charlie is green. Charlie is quiet. Charlie is red. Charlie is young. Dave is blue. Dave is furry. Dave is green. Dave is quiet. Dave is red. Dave is round. Dave is young. Harry is green. Harry is young. All furry, round people are young. If Charlie is round then Charlie is quiet. Quiet people are furry. Blue people are green. If someone is quiet then they are blue. If Harry is furry and Harry is quiet then Harry is green. All red people are furry. If someone is green then they are quiet.
Bob is young.
("Bob" "is" "young" "+")
Charlie is blue.
("Charlie" "is" "blue" "+")
Charlie is furry.
("Charlie" "is" "furry" "+")
Charlie is green.
("Charlie" "is" "green" "+")
Charlie is quiet.
("Charlie" "is" "quiet" "+")
Charlie is red.
("Charlie" "is" "red" "+")
Charlie is young.
("Charlie" "is" "young" "+")
Dave is blue.
("Dave" "is" "blue" "+")
Dave is furry.
("Dave" "is" "furry" "+")
Dave is green.
("Dave" "is" "green" "+")
Dave is quiet.
("Dave" "is" "quiet" "+")
Dave is red.
("Dave" "is" "red" "+")
Dave is round.
("Dave" "is" "round" "+")
Dave is young.
("Dave" "is" "young" "+")
Harry is green.
("Harry" "is" "green" "+")
Harry is young.
("Harry" "is" "young" "+")
All furry, round people are young.
((("someone" "is" "furry" "+") ("someone" "is" "round" "+")) -> ("someone" "is" "young" "+"))
If Charlie is round then Charlie is quiet.
((("Charlie" "is" "round" "+")) -> ("Charlie" "is" "quiet" "+"))
Quiet people are furry.
((("someone" "is" "quiet" "+")) -> ("someone" "is" "furry" "+"))
Blue people are green.
((("someone" "is" "blue" "+")) -> ("someone" "is" "green" "+"))
If someone is quiet then they are blue.
((("someone" "is" "quiet" "+")) -> ("someone" "is" "blue" "+"))
If Harry is furry and Harry is quiet then Harry is green.
((("Harry" "is" "furry" "+") ("Harry" "is" "quiet" "+")) -> ("Harry" "is" "green" "+"))
All red people are furry.
((("someone" "is" "red" "+")) -> ("someone" "is" "furry" "+"))
If someone is green then they are quiet.
((("someone" "is" "green" "+")) -> ("someone" "is" "quiet" "+"))
Dave is green.
True
1
proof
[(triple10 OR ((triple8) -> rule4) OR ((((triple11) -> rule5)) -> rule4))]
("Dave" "is" "green" "+")
triple10
((triple8) -> (rule4 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
((((triple11) -> (rule5 % int2))) -> (rule4 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is blue.
("Dave" "is" "blue" "+")
int2
Dave is not round.
False
1
inv-proof
[(triple13)]
("Dave" "is" "round" "-")
triple13
Bob is not quiet.
Unknown
inv-rconc
[@3: Bob is quiet.[CWA. Example of deepest failure = (rule8 <- rule4 <- rule5 <- FAIL)]]
("Bob" "is" "quiet" "-")
Harry is round.
Unknown
random
[@0: Harry is round.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "round" "+")
@0: Bob is young.[(triple1)] Charlie is blue.[(triple2 OR ((triple5) -> rule5) OR ((((triple4) -> rule8)) -> rule5))] Charlie is furry.[(triple3 OR ((triple5) -> rule3) OR ((triple6) -> rule7) OR ((((triple4) -> rule8)) -> rule3) OR ((((((triple2) -> rule4)) -> rule8)) -> rule3))] Charlie is green.[(triple4 OR ((triple2) -> rule4) OR ((((triple5) -> rule5)) -> rule4))] Charlie is quiet.[(triple5 OR ((triple4) -> rule8) OR ((((triple2) -> rule4)) -> rule8))] Charlie is red.[(triple6)] Charlie is young.[(triple7)] Dave is blue.[(triple8 OR ((triple11) -> rule5) OR ((((triple10) -> rule8)) -> rule5))] Dave is furry.[(triple9 OR ((triple11) -> rule3) OR ((triple12) -> rule7) OR ((((triple10) -> rule8)) -> rule3) OR ((((((triple8) -> rule4)) -> rule8)) -> rule3))] Dave is green.[(triple10 OR ((triple8) -> rule4) OR ((((triple11) -> rule5)) -> rule4))] Dave is quiet.[(triple11 OR ((triple10) -> rule8) OR ((((triple8) -> rule4)) -> rule8))] Dave is red.[(triple12)] Dave is round.[(triple13)] Dave is young.[(triple14 OR ((triple9 triple13) -> rule1) OR ((((triple11) -> rule3) triple13) -> rule1) OR ((((triple12) -> rule7) triple13) -> rule1) OR ((((((triple10) -> rule8)) -> rule3) triple13) -> rule1) OR ((((((((triple8) -> rule4)) -> rule8)) -> rule3) triple13) -> rule1))] Harry is green.[(triple15)] Harry is young.[(triple16)] @1: Harry is quiet.[(((triple15) -> rule8))] @2: Harry is blue.[(((((triple15) -> rule8)) -> rule5))] Harry is furry.[(((((triple15) -> rule8)) -> rule3))]
Bob is young.
("Bob" "is" "young" "+")
triple1
Charlie is blue.
("Charlie" "is" "blue" "+")
triple2
((triple5) -> (rule5 % int1))
Charlie is blue.
("Charlie" "is" "blue" "+")
int1
((((triple4) -> (rule8 % int2))) -> (rule5 % int1))
Charlie is blue.
("Charlie" "is" "blue" "+")
int1
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int2
Charlie is furry.
("Charlie" "is" "furry" "+")
triple3
((triple5) -> (rule3 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
((triple6) -> (rule7 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
((((triple4) -> (rule8 % int2))) -> (rule3 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int2
((((((triple2) -> (rule4 % int3))) -> (rule8 % int2))) -> (rule3 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int2
Charlie is green.
("Charlie" "is" "green" "+")
int3
Charlie is green.
("Charlie" "is" "green" "+")
triple4
((triple2) -> (rule4 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
((((triple5) -> (rule5 % int2))) -> (rule4 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is blue.
("Charlie" "is" "blue" "+")
int2
Charlie is quiet.
("Charlie" "is" "quiet" "+")
triple5
((triple4) -> (rule8 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
((((triple2) -> (rule4 % int2))) -> (rule8 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
Charlie is red.
("Charlie" "is" "red" "+")
triple6
Charlie is young.
("Charlie" "is" "young" "+")
triple7
Dave is blue.
("Dave" "is" "blue" "+")
triple8
((triple11) -> (rule5 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
((((triple10) -> (rule8 % int2))) -> (rule5 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is quiet.
("Dave" "is" "quiet" "+")
int2
Dave is furry.
("Dave" "is" "furry" "+")
triple9
((triple11) -> (rule3 % int1))
Dave is furry.
("Dave" "is" "furry" "+")
int1
((triple12) -> (rule7 % int1))
Dave is furry.
("Dave" "is" "furry" "+")
int1
((((triple10) -> (rule8 % int2))) -> (rule3 % int1))
Dave is furry.
("Dave" "is" "furry" "+")
int1
Dave is quiet.
("Dave" "is" "quiet" "+")
int2
((((((triple8) -> (rule4 % int3))) -> (rule8 % int2))) -> (rule3 % int1))
Dave is furry.
("Dave" "is" "furry" "+")
int1
Dave is quiet.
("Dave" "is" "quiet" "+")
int2
Dave is green.
("Dave" "is" "green" "+")
int3
Dave is green.
("Dave" "is" "green" "+")
triple10
((triple8) -> (rule4 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
((((triple11) -> (rule5 % int2))) -> (rule4 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is blue.
("Dave" "is" "blue" "+")
int2
Dave is quiet.
("Dave" "is" "quiet" "+")
triple11
((triple10) -> (rule8 % int1))
Dave is quiet.
("Dave" "is" "quiet" "+")
int1
((((triple8) -> (rule4 % int2))) -> (rule8 % int1))
Dave is quiet.
("Dave" "is" "quiet" "+")
int1
Dave is green.
("Dave" "is" "green" "+")
int2
Dave is red.
("Dave" "is" "red" "+")
triple12
Dave is round.
("Dave" "is" "round" "+")
triple13
Dave is young.
("Dave" "is" "young" "+")
triple14
((triple9 triple13) -> (rule1 % int1))
Dave is young.
("Dave" "is" "young" "+")
int1
((((triple11) -> (rule3 % int2)) triple13) -> (rule1 % int1))
Dave is young.
("Dave" "is" "young" "+")
int1
Dave is furry.
("Dave" "is" "furry" "+")
int2
((((triple12) -> (rule7 % int2)) triple13) -> (rule1 % int1))
Dave is young.
("Dave" "is" "young" "+")
int1
Dave is furry.
("Dave" "is" "furry" "+")
int2
((((((triple10) -> (rule8 % int3))) -> (rule3 % int2)) triple13) -> (rule1 % int1))
Dave is young.
("Dave" "is" "young" "+")
int1
Dave is furry.
("Dave" "is" "furry" "+")
int2
Dave is quiet.
("Dave" "is" "quiet" "+")
int3
((((((((triple8) -> (rule4 % int4))) -> (rule8 % int3))) -> (rule3 % int2)) triple13) -> (rule1 % int1))
Dave is young.
("Dave" "is" "young" "+")
int1
Dave is furry.
("Dave" "is" "furry" "+")
int2
Dave is quiet.
("Dave" "is" "quiet" "+")
int3
Dave is green.
("Dave" "is" "green" "+")
int4
Harry is green.
("Harry" "is" "green" "+")
triple15
Harry is young.
("Harry" "is" "young" "+")
triple16
Harry is quiet.
("Harry" "is" "quiet" "+")
((triple15) -> (rule8 % int1))
Harry is quiet.
("Harry" "is" "quiet" "+")
int1
Harry is blue.
("Harry" "is" "blue" "+")
((((triple15) -> (rule8 % int2))) -> (rule5 % int1))
Harry is blue.
("Harry" "is" "blue" "+")
int1
Harry is quiet.
("Harry" "is" "quiet" "+")
int2
Harry is furry.
("Harry" "is" "furry" "+")
((((triple15) -> (rule8 % int2))) -> (rule3 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is quiet.
("Harry" "is" "quiet" "+")
int2