Anne is kind. Anne is round. Bob is blue. Bob is green. Charlie is blue. Charlie is kind. Charlie is round. Charlie is white. Harry is blue. Harry is kind. Harry is round. Harry is smart. All round things are smart. If Anne is round and Anne is smart then Anne is kind.
Anne is kind.
("Anne" "is" "kind" "+")
Anne is round.
("Anne" "is" "round" "+")
Bob is blue.
("Bob" "is" "blue" "+")
Bob is green.
("Bob" "is" "green" "+")
Charlie is blue.
("Charlie" "is" "blue" "+")
Charlie is kind.
("Charlie" "is" "kind" "+")
Charlie is round.
("Charlie" "is" "round" "+")
Charlie is white.
("Charlie" "is" "white" "+")
Harry is blue.
("Harry" "is" "blue" "+")
Harry is kind.
("Harry" "is" "kind" "+")
Harry is round.
("Harry" "is" "round" "+")
Harry is smart.
("Harry" "is" "smart" "+")
All round things are smart.
((("something" "is" "round" "+")) -> ("something" "is" "smart" "+"))
If Anne is round and Anne is smart then Anne is kind.
((("Anne" "is" "round" "+") ("Anne" "is" "smart" "+")) -> ("Anne" "is" "kind" "+"))
Harry is kind.
True
1
proof
[(triple10)]
("Harry" "is" "kind" "+")
triple10
Harry is not blue.
False
1
inv-proof
[(triple9)]
("Harry" "is" "blue" "-")
triple9
Charlie is smart.
True
2
proof
[(((triple7) -> rule1))]
("Charlie" "is" "smart" "+")
((triple7) -> (rule1 % int1))
Charlie is smart.
("Charlie" "is" "smart" "+")
int1
Anne is not smart.
False
2
inv-proof
[(((triple2) -> rule1))]
("Anne" "is" "smart" "-")
((triple2) -> (rule1 % int1))
Anne is smart.
("Anne" "is" "smart" "+")
int1
Bob is not smart.
Unknown
inv-rconc
[@1: Bob is smart.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Bob" "is" "smart" "-")
Harry is green.
Unknown
random
[@0: Harry is green.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "green" "+")
Charlie is not green.
Unknown
inv-random
[@0: Charlie is green.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "green" "-")
Charlie is red.
Unknown
random
[@0: Charlie is red.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "red" "+")
@0: Anne is kind.[(triple1 OR ((triple2 ((triple2) -> rule1)) -> rule2))] Anne is round.[(triple2)] Bob is blue.[(triple3)] Bob is green.[(triple4)] Charlie is blue.[(triple5)] Charlie is kind.[(triple6)] Charlie is round.[(triple7)] Charlie is white.[(triple8)] Harry is blue.[(triple9)] Harry is kind.[(triple10)] Harry is round.[(triple11)] Harry is smart.[(triple12 OR ((triple11) -> rule1))] @1: Anne is smart.[(((triple2) -> rule1))] Charlie is smart.[(((triple7) -> rule1))]
Anne is kind.
("Anne" "is" "kind" "+")
triple1
((triple2 ((triple2) -> (rule1 % int2))) -> (rule2 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is smart.
("Anne" "is" "smart" "+")
int2
Anne is round.
("Anne" "is" "round" "+")
triple2
Bob is blue.
("Bob" "is" "blue" "+")
triple3
Bob is green.
("Bob" "is" "green" "+")
triple4
Charlie is blue.
("Charlie" "is" "blue" "+")
triple5
Charlie is kind.
("Charlie" "is" "kind" "+")
triple6
Charlie is round.
("Charlie" "is" "round" "+")
triple7
Charlie is white.
("Charlie" "is" "white" "+")
triple8
Harry is blue.
("Harry" "is" "blue" "+")
triple9
Harry is kind.
("Harry" "is" "kind" "+")
triple10
Harry is round.
("Harry" "is" "round" "+")
triple11
Harry is smart.
("Harry" "is" "smart" "+")
triple12
((triple11) -> (rule1 % int1))
Harry is smart.
("Harry" "is" "smart" "+")
int1
Anne is smart.
("Anne" "is" "smart" "+")
((triple2) -> (rule1 % int1))
Anne is smart.
("Anne" "is" "smart" "+")
int1
Charlie is smart.
("Charlie" "is" "smart" "+")
((triple7) -> (rule1 % int1))
Charlie is smart.
("Charlie" "is" "smart" "+")
int1