Anne is kind. Anne is nice. Anne is quiet. Anne is round. Gary is blue. Gary is quiet. Harry is blue. Harry is kind. Harry is not rough. Harry is round. Quiet, nice things are smart. Nice things are quiet. If something is quiet then it is round. All rough things are round. If Anne is quiet and Anne is round then Anne is not blue. All nice things are rough. Round things are kind. Smart things are not blue.
Anne is kind.
("Anne" "is" "kind" "+")
Anne is nice.
("Anne" "is" "nice" "+")
Anne is quiet.
("Anne" "is" "quiet" "+")
Anne is round.
("Anne" "is" "round" "+")
Gary is blue.
("Gary" "is" "blue" "+")
Gary is quiet.
("Gary" "is" "quiet" "+")
Harry is blue.
("Harry" "is" "blue" "+")
Harry is kind.
("Harry" "is" "kind" "+")
Harry is not rough.
("Harry" "is" "rough" "-")
Harry is round.
("Harry" "is" "round" "+")
Quiet, nice things are smart.
((("something" "is" "quiet" "+") ("something" "is" "nice" "+")) -> ("something" "is" "smart" "+"))
Nice things are quiet.
((("something" "is" "nice" "+")) -> ("something" "is" "quiet" "+"))
If something is quiet then it is round.
((("something" "is" "quiet" "+")) -> ("something" "is" "round" "+"))
All rough things are round.
((("something" "is" "rough" "+")) -> ("something" "is" "round" "+"))
If Anne is quiet and Anne is round then Anne is not blue.
((("Anne" "is" "quiet" "+") ("Anne" "is" "round" "+")) -> ("Anne" "is" "blue" "-"))
All nice things are rough.
((("something" "is" "nice" "+")) -> ("something" "is" "rough" "+"))
Round things are kind.
((("something" "is" "round" "+")) -> ("something" "is" "kind" "+"))
Smart things are not blue.
((("something" "is" "smart" "+")) -> ("something" "is" "blue" "-"))
Anne is kind.
True
1
proof
[(triple1 OR ((triple4) -> rule7) OR ((((triple3) -> rule3)) -> rule7) OR ((((((triple2) -> rule2)) -> rule3)) -> rule7) OR ((((((triple2) -> rule6)) -> rule4)) -> rule7))]
("Anne" "is" "kind" "+")
triple1
((triple4) -> (rule7 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
((((triple3) -> (rule3 % int2))) -> (rule7 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
((((((triple2) -> (rule2 % int3))) -> (rule3 % int2))) -> (rule7 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Anne is quiet.
("Anne" "is" "quiet" "+")
int3
((((((triple2) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule7 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Anne is rough.
("Anne" "is" "rough" "+")
int3
Anne is not kind.
False
1
inv-proof
[(triple1 OR ((triple4) -> rule7) OR ((((triple3) -> rule3)) -> rule7) OR ((((((triple2) -> rule2)) -> rule3)) -> rule7) OR ((((((triple2) -> rule6)) -> rule4)) -> rule7))]
("Anne" "is" "kind" "-")
triple1
((triple4) -> (rule7 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
((((triple3) -> (rule3 % int2))) -> (rule7 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
((((((triple2) -> (rule2 % int3))) -> (rule3 % int2))) -> (rule7 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Anne is quiet.
("Anne" "is" "quiet" "+")
int3
((((((triple2) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule7 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Anne is rough.
("Anne" "is" "rough" "+")
int3
Anne is rough.
True
2
proof
[(((triple2) -> rule6))]
("Anne" "is" "rough" "+")
((triple2) -> (rule6 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Gary is not round.
False
2
inv-proof
[(((triple6) -> rule3))]
("Gary" "is" "round" "-")
((triple6) -> (rule3 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Gary is kind.
True
3
proof
[(((((triple6) -> rule3)) -> rule7))]
("Gary" "is" "kind" "+")
((((triple6) -> (rule3 % int2))) -> (rule7 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
int2
Gary is not kind.
False
3
inv-proof
[(((((triple6) -> rule3)) -> rule7))]
("Gary" "is" "kind" "-")
((((triple6) -> (rule3 % int2))) -> (rule7 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
int2
Harry is not smart.
Unknown
inv-rconc
[@1: Harry is smart.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Harry" "is" "smart" "-")
Harry is quiet.
Unknown
rconc
[@1: Harry is quiet.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Harry" "is" "quiet" "+")
Gary is not rough.
Unknown
inv-rconc
[@1: Gary is rough.[CWA. Example of deepest failure = (rule6 <- FAIL)]]
("Gary" "is" "rough" "-")
Harry is nice.
Unknown
random
[@0: Harry is nice.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "nice" "+")
@0: Anne is kind.[(triple1 OR ((triple4) -> rule7) OR ((((triple3) -> rule3)) -> rule7) OR ((((((triple2) -> rule2)) -> rule3)) -> rule7) OR ((((((triple2) -> rule6)) -> rule4)) -> rule7))] Anne is nice.[(triple2)] Anne is quiet.[(triple3 OR ((triple2) -> rule2))] Anne is round.[(triple4 OR ((triple3) -> rule3) OR ((((triple2) -> rule2)) -> rule3) OR ((((triple2) -> rule6)) -> rule4))] Gary is blue.[(triple5)] Gary is quiet.[(triple6)] Harry is blue.[(triple7)] Harry is kind.[(triple8 OR ((triple10) -> rule7))] Harry is not rough.[(triple9)] Harry is round.[(triple10)] @1: Anne is not blue.[(((triple3 triple4) -> rule5) OR ((((triple3 triple2) -> rule1)) -> rule8) OR ((triple3 ((triple3) -> rule3)) -> rule5) OR ((((triple2) -> rule2) triple4) -> rule5) OR ((((triple2) -> rule2) ((triple3) -> rule3)) -> rule5) OR ((((((triple2) -> rule2) triple2) -> rule1)) -> rule8) OR ((triple3 ((((triple2) -> rule2)) -> rule3)) -> rule5) OR ((triple3 ((((triple2) -> rule6)) -> rule4)) -> rule5) OR ((((triple2) -> rule2) ((((triple2) -> rule2)) -> rule3)) -> rule5) OR ((((triple2) -> rule2) ((((triple2) -> rule6)) -> rule4)) -> rule5))] Anne is rough.[(((triple2) -> rule6))] Anne is smart.[(((triple3 triple2) -> rule1) OR ((((triple2) -> rule2) triple2) -> rule1))] Gary is round.[(((triple6) -> rule3))] @2: Gary is kind.[(((((triple6) -> rule3)) -> rule7))]
Anne is kind.
("Anne" "is" "kind" "+")
triple1
((triple4) -> (rule7 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
((((triple3) -> (rule3 % int2))) -> (rule7 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
((((((triple2) -> (rule2 % int3))) -> (rule3 % int2))) -> (rule7 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Anne is quiet.
("Anne" "is" "quiet" "+")
int3
((((((triple2) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule7 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Anne is rough.
("Anne" "is" "rough" "+")
int3
Anne is nice.
("Anne" "is" "nice" "+")
triple2
Anne is quiet.
("Anne" "is" "quiet" "+")
triple3
((triple2) -> (rule2 % int1))
Anne is quiet.
("Anne" "is" "quiet" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
triple4
((triple3) -> (rule3 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
((((triple2) -> (rule2 % int2))) -> (rule3 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
Anne is quiet.
("Anne" "is" "quiet" "+")
int2
((((triple2) -> (rule6 % int2))) -> (rule4 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
Gary is blue.
("Gary" "is" "blue" "+")
triple5
Gary is quiet.
("Gary" "is" "quiet" "+")
triple6
Harry is blue.
("Harry" "is" "blue" "+")
triple7
Harry is kind.
("Harry" "is" "kind" "+")
triple8
((triple10) -> (rule7 % int1))
Harry is kind.
("Harry" "is" "kind" "+")
int1
Harry is not rough.
("Harry" "is" "rough" "-")
triple9
Harry is round.
("Harry" "is" "round" "+")
triple10
Anne is not blue.
("Anne" "is" "blue" "-")
((triple3 triple4) -> (rule5 % int1))
Anne is not blue.
("Anne" "is" "blue" "-")
int1
((((triple3 triple2) -> (rule1 % int2))) -> (rule8 % int1))
Anne is not blue.
("Anne" "is" "blue" "-")
int1
Anne is smart.
("Anne" "is" "smart" "+")
int2
((triple3 ((triple3) -> (rule3 % int2))) -> (rule5 % int1))
Anne is not blue.
("Anne" "is" "blue" "-")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
((((triple2) -> (rule2 % int2)) triple4) -> (rule5 % int1))
Anne is not blue.
("Anne" "is" "blue" "-")
int1
Anne is quiet.
("Anne" "is" "quiet" "+")
int2
((((triple2) -> (rule2 % int3)) ((triple3) -> (rule3 % int2))) -> (rule5 % int1))
Anne is not blue.
("Anne" "is" "blue" "-")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Anne is quiet.
("Anne" "is" "quiet" "+")
int3
((((((triple2) -> (rule2 % int3)) triple2) -> (rule1 % int2))) -> (rule8 % int1))
Anne is not blue.
("Anne" "is" "blue" "-")
int1
Anne is smart.
("Anne" "is" "smart" "+")
int2
Anne is quiet.
("Anne" "is" "quiet" "+")
int3
((triple3 ((((triple2) -> (rule2 % int3))) -> (rule3 % int2))) -> (rule5 % int1))
Anne is not blue.
("Anne" "is" "blue" "-")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Anne is quiet.
("Anne" "is" "quiet" "+")
int3
((triple3 ((((triple2) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule5 % int1))
Anne is not blue.
("Anne" "is" "blue" "-")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Anne is rough.
("Anne" "is" "rough" "+")
int3
((((triple2) -> (rule2 % int3)) ((((triple2) -> (rule2 % int3))) -> (rule3 % int2))) -> (rule5 % int1))
Anne is not blue.
("Anne" "is" "blue" "-")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Anne is quiet.
("Anne" "is" "quiet" "+")
int3
((((triple2) -> (rule2 % int4)) ((((triple2) -> (rule6 % int3))) -> (rule4 % int2))) -> (rule5 % int1))
Anne is not blue.
("Anne" "is" "blue" "-")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Anne is rough.
("Anne" "is" "rough" "+")
int3
Anne is quiet.
("Anne" "is" "quiet" "+")
int4
Anne is rough.
("Anne" "is" "rough" "+")
((triple2) -> (rule6 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is smart.
("Anne" "is" "smart" "+")
((triple3 triple2) -> (rule1 % int1))
Anne is smart.
("Anne" "is" "smart" "+")
int1
((((triple2) -> (rule2 % int2)) triple2) -> (rule1 % int1))
Anne is smart.
("Anne" "is" "smart" "+")
int1
Anne is quiet.
("Anne" "is" "quiet" "+")
int2
Gary is round.
("Gary" "is" "round" "+")
((triple6) -> (rule3 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
((((triple6) -> (rule3 % int2))) -> (rule7 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
int2