Anne is kind. Anne is smart. Bob is blue. Bob is rough. Bob is smart. Bob is young. Gary is furry. Gary is kind. Harry is blue. Harry is furry. Harry is kind. Harry is young. If someone is kind then they are blue. Nice people are rough. Blue people are nice.
Anne is kind.
("Anne" "is" "kind" "+")
Anne is smart.
("Anne" "is" "smart" "+")
Bob is blue.
("Bob" "is" "blue" "+")
Bob is rough.
("Bob" "is" "rough" "+")
Bob is smart.
("Bob" "is" "smart" "+")
Bob is young.
("Bob" "is" "young" "+")
Gary is furry.
("Gary" "is" "furry" "+")
Gary is kind.
("Gary" "is" "kind" "+")
Harry is blue.
("Harry" "is" "blue" "+")
Harry is furry.
("Harry" "is" "furry" "+")
Harry is kind.
("Harry" "is" "kind" "+")
Harry is young.
("Harry" "is" "young" "+")
If someone is kind then they are blue.
((("someone" "is" "kind" "+")) -> ("someone" "is" "blue" "+"))
Nice people are rough.
((("someone" "is" "nice" "+")) -> ("someone" "is" "rough" "+"))
Blue people are nice.
((("someone" "is" "blue" "+")) -> ("someone" "is" "nice" "+"))
Bob is smart.
True
1
proof
[(triple5)]
("Bob" "is" "smart" "+")
triple5
Harry is not blue.
False
1
inv-proof
[(triple9 OR ((triple11) -> rule1))]
("Harry" "is" "blue" "-")
triple9
((triple11) -> (rule1 % int1))
Harry is blue.
("Harry" "is" "blue" "+")
int1
Harry is nice.
True
2
proof
[(((triple9) -> rule3) OR ((((triple11) -> rule1)) -> rule3))]
("Harry" "is" "nice" "+")
((triple9) -> (rule3 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
((((triple11) -> (rule1 % int2))) -> (rule3 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Harry is blue.
("Harry" "is" "blue" "+")
int2
Bob is not nice.
False
2
inv-proof
[(((triple3) -> rule3))]
("Bob" "is" "nice" "-")
((triple3) -> (rule3 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Anne is nice.
True
3
proof
[(((((triple1) -> rule1)) -> rule3))]
("Anne" "is" "nice" "+")
((((triple1) -> (rule1 % int2))) -> (rule3 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is blue.
("Anne" "is" "blue" "+")
int2
Anne is not nice.
False
3
inv-proof
[(((((triple1) -> rule1)) -> rule3))]
("Anne" "is" "nice" "-")
((((triple1) -> (rule1 % int2))) -> (rule3 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is blue.
("Anne" "is" "blue" "+")
int2
Anne is not furry.
Unknown
inv-random
[@0: Anne is furry.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "furry" "-")
Gary is smart.
Unknown
random
[@0: Gary is smart.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "smart" "+")
Gary is not young.
Unknown
inv-random
[@0: Gary is young.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "young" "-")
Bob is kind.
Unknown
random
[@0: Bob is kind.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "kind" "+")
Anne is not young.
Unknown
inv-random
[@0: Anne is young.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "young" "-")
Harry is smart.
Unknown
random
[@0: Harry is smart.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "smart" "+")
@0: Anne is kind.[(triple1)] Anne is smart.[(triple2)] Bob is blue.[(triple3)] Bob is rough.[(triple4 OR ((((triple3) -> rule3)) -> rule2))] Bob is smart.[(triple5)] Bob is young.[(triple6)] Gary is furry.[(triple7)] Gary is kind.[(triple8)] Harry is blue.[(triple9 OR ((triple11) -> rule1))] Harry is furry.[(triple10)] Harry is kind.[(triple11)] Harry is young.[(triple12)] @1: Anne is blue.[(((triple1) -> rule1))] Bob is nice.[(((triple3) -> rule3))] Gary is blue.[(((triple8) -> rule1))] Harry is nice.[(((triple9) -> rule3) OR ((((triple11) -> rule1)) -> rule3))] @2: Anne is nice.[(((((triple1) -> rule1)) -> rule3))] Gary is nice.[(((((triple8) -> rule1)) -> rule3))] Harry is rough.[(((((triple9) -> rule3)) -> rule2) OR ((((((triple11) -> rule1)) -> rule3)) -> rule2))] @3: Anne is rough.[(((((((triple1) -> rule1)) -> rule3)) -> rule2))] Gary is rough.[(((((((triple8) -> rule1)) -> rule3)) -> rule2))]
Anne is kind.
("Anne" "is" "kind" "+")
triple1
Anne is smart.
("Anne" "is" "smart" "+")
triple2
Bob is blue.
("Bob" "is" "blue" "+")
triple3
Bob is rough.
("Bob" "is" "rough" "+")
triple4
((((triple3) -> (rule3 % int2))) -> (rule2 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
Bob is nice.
("Bob" "is" "nice" "+")
int2
Bob is smart.
("Bob" "is" "smart" "+")
triple5
Bob is young.
("Bob" "is" "young" "+")
triple6
Gary is furry.
("Gary" "is" "furry" "+")
triple7
Gary is kind.
("Gary" "is" "kind" "+")
triple8
Harry is blue.
("Harry" "is" "blue" "+")
triple9
((triple11) -> (rule1 % int1))
Harry is blue.
("Harry" "is" "blue" "+")
int1
Harry is furry.
("Harry" "is" "furry" "+")
triple10
Harry is kind.
("Harry" "is" "kind" "+")
triple11
Harry is young.
("Harry" "is" "young" "+")
triple12
Anne is blue.
("Anne" "is" "blue" "+")
((triple1) -> (rule1 % int1))
Anne is blue.
("Anne" "is" "blue" "+")
int1
Bob is nice.
("Bob" "is" "nice" "+")
((triple3) -> (rule3 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Gary is blue.
("Gary" "is" "blue" "+")
((triple8) -> (rule1 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Harry is nice.
("Harry" "is" "nice" "+")
((triple9) -> (rule3 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
((((triple11) -> (rule1 % int2))) -> (rule3 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Harry is blue.
("Harry" "is" "blue" "+")
int2
Anne is nice.
("Anne" "is" "nice" "+")
((((triple1) -> (rule1 % int2))) -> (rule3 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is blue.
("Anne" "is" "blue" "+")
int2
Gary is nice.
("Gary" "is" "nice" "+")
((((triple8) -> (rule1 % int2))) -> (rule3 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is blue.
("Gary" "is" "blue" "+")
int2
Harry is rough.
("Harry" "is" "rough" "+")
((((triple9) -> (rule3 % int2))) -> (rule2 % int1))
Harry is rough.
("Harry" "is" "rough" "+")
int1
Harry is nice.
("Harry" "is" "nice" "+")
int2
((((((triple11) -> (rule1 % int3))) -> (rule3 % int2))) -> (rule2 % int1))
Harry is rough.
("Harry" "is" "rough" "+")
int1
Harry is nice.
("Harry" "is" "nice" "+")
int2
Harry is blue.
("Harry" "is" "blue" "+")
int3
Anne is rough.
("Anne" "is" "rough" "+")
((((((triple1) -> (rule1 % int3))) -> (rule3 % int2))) -> (rule2 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is nice.
("Anne" "is" "nice" "+")
int2
Anne is blue.
("Anne" "is" "blue" "+")
int3
Gary is rough.
("Gary" "is" "rough" "+")
((((((triple8) -> (rule1 % int3))) -> (rule3 % int2))) -> (rule2 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is nice.
("Gary" "is" "nice" "+")
int2
Gary is blue.
("Gary" "is" "blue" "+")
int3