Anne is cold. Anne is red. Anne is round. Dave is cold. Dave is kind. Dave is nice. Dave is rough. Harry is nice. Harry is red. Harry is rough. If someone is cold and quiet then they are rough. If Anne is round then Anne is red. All kind people are round. If Dave is quiet and Dave is round then Dave is nice. All rough people are nice. If someone is cold then they are round.
Anne is cold.
("Anne" "is" "cold" "+")
Anne is red.
("Anne" "is" "red" "+")
Anne is round.
("Anne" "is" "round" "+")
Dave is cold.
("Dave" "is" "cold" "+")
Dave is kind.
("Dave" "is" "kind" "+")
Dave is nice.
("Dave" "is" "nice" "+")
Dave is rough.
("Dave" "is" "rough" "+")
Harry is nice.
("Harry" "is" "nice" "+")
Harry is red.
("Harry" "is" "red" "+")
Harry is rough.
("Harry" "is" "rough" "+")
If someone is cold and quiet then they are rough.
((("someone" "is" "cold" "+") ("someone" "is" "quiet" "+")) -> ("someone" "is" "rough" "+"))
If Anne is round then Anne is red.
((("Anne" "is" "round" "+")) -> ("Anne" "is" "red" "+"))
All kind people are round.
((("someone" "is" "kind" "+")) -> ("someone" "is" "round" "+"))
If Dave is quiet and Dave is round then Dave is nice.
((("Dave" "is" "quiet" "+") ("Dave" "is" "round" "+")) -> ("Dave" "is" "nice" "+"))
All rough people are nice.
((("someone" "is" "rough" "+")) -> ("someone" "is" "nice" "+"))
If someone is cold then they are round.
((("someone" "is" "cold" "+")) -> ("someone" "is" "round" "+"))
Anne is cold.
True
1
proof
[(triple1)]
("Anne" "is" "cold" "+")
triple1
Dave is not kind.
False
1
inv-proof
[(triple5)]
("Dave" "is" "kind" "-")
triple5
Dave is round.
True
2
proof
[(((triple4) -> rule6) OR ((triple5) -> rule3))]
("Dave" "is" "round" "+")
((triple4) -> (rule6 % int1))
Dave is round.
("Dave" "is" "round" "+")
int1
((triple5) -> (rule3 % int1))
Dave is round.
("Dave" "is" "round" "+")
int1
Dave is not round.
False
2
inv-proof
[(((triple4) -> rule6) OR ((triple5) -> rule3))]
("Dave" "is" "round" "-")
((triple4) -> (rule6 % int1))
Dave is round.
("Dave" "is" "round" "+")
int1
((triple5) -> (rule3 % int1))
Dave is round.
("Dave" "is" "round" "+")
int1
Anne is not rough.
Unknown
inv-rconc
[@1: Anne is rough.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Anne" "is" "rough" "-")
Harry is round.
Unknown
rconc
[@1: Harry is round.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Harry" "is" "round" "+")
Harry is not kind.
Unknown
inv-random
[@0: Harry is kind.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "kind" "-")
Harry is quiet.
Unknown
random
[@0: Harry is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "quiet" "+")
@0: Anne is cold.[(triple1)] Anne is red.[(triple2 OR ((triple3) -> rule2) OR ((((triple1) -> rule6)) -> rule2))] Anne is round.[(triple3 OR ((triple1) -> rule6))] Dave is cold.[(triple4)] Dave is kind.[(triple5)] Dave is nice.[(triple6 OR ((triple7) -> rule5))] Dave is rough.[(triple7)] Harry is nice.[(triple8 OR ((triple10) -> rule5))] Harry is red.[(triple9)] Harry is rough.[(triple10)] @1: Dave is round.[(((triple4) -> rule6) OR ((triple5) -> rule3))]
Anne is cold.
("Anne" "is" "cold" "+")
triple1
Anne is red.
("Anne" "is" "red" "+")
triple2
((triple3) -> (rule2 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
((((triple1) -> (rule6 % int2))) -> (rule2 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Anne is round.
("Anne" "is" "round" "+")
triple3
((triple1) -> (rule6 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
Dave is cold.
("Dave" "is" "cold" "+")
triple4
Dave is kind.
("Dave" "is" "kind" "+")
triple5
Dave is nice.
("Dave" "is" "nice" "+")
triple6
((triple7) -> (rule5 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Dave is rough.
("Dave" "is" "rough" "+")
triple7
Harry is nice.
("Harry" "is" "nice" "+")
triple8
((triple10) -> (rule5 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
triple9
Harry is rough.
("Harry" "is" "rough" "+")
triple10
Dave is round.
("Dave" "is" "round" "+")
((triple4) -> (rule6 % int1))
Dave is round.
("Dave" "is" "round" "+")
int1
((triple5) -> (rule3 % int1))
Dave is round.
("Dave" "is" "round" "+")
int1