Anne is cold. Anne is quiet. Anne is round. Gary is furry. Gary is green. Gary is not nice. Gary is quiet. Gary is not round. Harry is cold. Harry is nice. Harry is round. Harry is young. Quiet things are furry. If Anne is round then Anne is not young. If Harry is furry then Harry is nice. Furry, round things are nice. If something is cold and not young then it is nice. All round, green things are nice. All green things are not cold. If something is nice then it is cold.
Anne is cold.
("Anne" "is" "cold" "+")
Anne is quiet.
("Anne" "is" "quiet" "+")
Anne is round.
("Anne" "is" "round" "+")
Gary is furry.
("Gary" "is" "furry" "+")
Gary is green.
("Gary" "is" "green" "+")
Gary is not nice.
("Gary" "is" "nice" "-")
Gary is quiet.
("Gary" "is" "quiet" "+")
Gary is not round.
("Gary" "is" "round" "-")
Harry is cold.
("Harry" "is" "cold" "+")
Harry is nice.
("Harry" "is" "nice" "+")
Harry is round.
("Harry" "is" "round" "+")
Harry is young.
("Harry" "is" "young" "+")
Quiet things are furry.
((("something" "is" "quiet" "+")) -> ("something" "is" "furry" "+"))
If Anne is round then Anne is not young.
((("Anne" "is" "round" "+")) -> ("Anne" "is" "young" "-"))
If Harry is furry then Harry is nice.
((("Harry" "is" "furry" "+")) -> ("Harry" "is" "nice" "+"))
Furry, round things are nice.
((("something" "is" "furry" "+") ("something" "is" "round" "+")) -> ("something" "is" "nice" "+"))
If something is cold and not young then it is nice.
((("something" "is" "cold" "+") ("something" "is" "young" "~")) -> ("something" "is" "nice" "+"))
All round, green things are nice.
((("something" "is" "round" "+") ("something" "is" "green" "+")) -> ("something" "is" "nice" "+"))
All green things are not cold.
((("something" "is" "green" "+")) -> ("something" "is" "cold" "-"))
If something is nice then it is cold.
((("something" "is" "nice" "+")) -> ("something" "is" "cold" "+"))
Gary is furry.
True
1
proof
[(triple4 OR ((triple7) -> rule1))]
("Gary" "is" "furry" "+")
triple4
((triple7) -> (rule1 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Anne is not round.
False
1
inv-proof
[(triple3)]
("Anne" "is" "round" "-")
triple3
Anne is not young.
True
2
proof
[(((triple3) -> rule2))]
("Anne" "is" "young" "-")
((triple3) -> (rule2 % int1))
Anne is not young.
("Anne" "is" "young" "-")
int1
Anne is not furry.
False
2
inv-proof
[(((triple2) -> rule1))]
("Anne" "is" "furry" "-")
((triple2) -> (rule1 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
Anne is nice.
True
4
proof
[(((triple1 ((triple3) -> rule2)) -> rule5) OR ((((triple2) -> rule1) triple3) -> rule4))]
("Anne" "is" "nice" "+")
((triple1 ((triple3) -> (rule2 % int2))) -> (rule5 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is not young.
("Anne" "is" "young" "-")
int2
((((triple2) -> (rule1 % int2)) triple3) -> (rule4 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Anne is not nice.
False
4
inv-proof
[(((triple1 ((triple3) -> rule2)) -> rule5) OR ((((triple2) -> rule1) triple3) -> rule4))]
("Anne" "is" "nice" "-")
((triple1 ((triple3) -> (rule2 % int2))) -> (rule5 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is not young.
("Anne" "is" "young" "-")
int2
((((triple2) -> (rule1 % int2)) triple3) -> (rule4 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Harry is not furry.
Unknown
inv-rconc
[@1: Harry is furry.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Harry" "is" "furry" "-")
Anne is green.
Unknown
random
[@0: Anne is green.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "green" "+")
Harry is not green.
Unknown
inv-random
[@0: Harry is green.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "green" "-")
Gary is young.
Unknown
random
[@0: Gary is young.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "young" "+")
@0: Anne is cold.[(triple1 OR ((((((triple2) -> rule1) triple3) -> rule4)) -> rule8))] Anne is quiet.[(triple2)] Anne is round.[(triple3)] Gary is furry.[(triple4 OR ((triple7) -> rule1))] Gary is green.[(triple5)] Gary is not nice.[(triple6)] Gary is not round.[(triple8)] Gary is quiet.[(triple7)] Harry is cold.[(triple9 OR ((triple10) -> rule8))] Harry is nice.[(triple10)] Harry is round.[(triple11)] Harry is young.[(triple12)] @1: Anne is furry.[(((triple2) -> rule1))] Anne is not young.[(((triple3) -> rule2))] Gary is not cold.[(((triple5) -> rule7))] @2: Anne is nice.[(((triple1 ((triple3) -> rule2)) -> rule5) OR ((((triple2) -> rule1) triple3) -> rule4))]
Anne is cold.
("Anne" "is" "cold" "+")
triple1
((((((triple2) -> (rule1 % int3)) triple3) -> (rule4 % int2))) -> (rule8 % int1))
Anne is cold.
("Anne" "is" "cold" "+")
int1
Anne is nice.
("Anne" "is" "nice" "+")
int2
Anne is furry.
("Anne" "is" "furry" "+")
int3
Anne is quiet.
("Anne" "is" "quiet" "+")
triple2
Anne is round.
("Anne" "is" "round" "+")
triple3
Gary is furry.
("Gary" "is" "furry" "+")
triple4
((triple7) -> (rule1 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is green.
("Gary" "is" "green" "+")
triple5
Gary is not nice.
("Gary" "is" "nice" "-")
triple6
Gary is not round.
("Gary" "is" "round" "-")
triple8
Gary is quiet.
("Gary" "is" "quiet" "+")
triple7
Harry is cold.
("Harry" "is" "cold" "+")
triple9
((triple10) -> (rule8 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
Harry is nice.
("Harry" "is" "nice" "+")
triple10
Harry is round.
("Harry" "is" "round" "+")
triple11
Harry is young.
("Harry" "is" "young" "+")
triple12
Anne is furry.
("Anne" "is" "furry" "+")
((triple2) -> (rule1 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
Anne is not young.
("Anne" "is" "young" "-")
((triple3) -> (rule2 % int1))
Anne is not young.
("Anne" "is" "young" "-")
int1
Gary is not cold.
("Gary" "is" "cold" "-")
((triple5) -> (rule7 % int1))
Gary is not cold.
("Gary" "is" "cold" "-")
int1
Anne is nice.
("Anne" "is" "nice" "+")
((triple1 ((triple3) -> (rule2 % int2))) -> (rule5 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is not young.
("Anne" "is" "young" "-")
int2
((((triple2) -> (rule1 % int2)) triple3) -> (rule4 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2