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