Bob is furry. Bob is green. Bob is kind. Bob is nice. Bob is quiet. Bob is red. Bob is rough. Fiona is kind. Fiona is nice. Fiona is quiet. Fiona is rough. Gary is nice. Gary is rough. Harry is furry. Harry is kind. Harry is quiet. If Harry is kind and Harry is quiet then Harry is red. If someone is quiet and red then they are rough.
Bob is furry.
("Bob" "is" "furry" "+")
Bob is green.
("Bob" "is" "green" "+")
Bob is kind.
("Bob" "is" "kind" "+")
Bob is nice.
("Bob" "is" "nice" "+")
Bob is quiet.
("Bob" "is" "quiet" "+")
Bob is red.
("Bob" "is" "red" "+")
Bob is rough.
("Bob" "is" "rough" "+")
Fiona is kind.
("Fiona" "is" "kind" "+")
Fiona is nice.
("Fiona" "is" "nice" "+")
Fiona is quiet.
("Fiona" "is" "quiet" "+")
Fiona is rough.
("Fiona" "is" "rough" "+")
Gary is nice.
("Gary" "is" "nice" "+")
Gary is rough.
("Gary" "is" "rough" "+")
Harry is furry.
("Harry" "is" "furry" "+")
Harry is kind.
("Harry" "is" "kind" "+")
Harry is quiet.
("Harry" "is" "quiet" "+")
If Harry is kind and Harry is quiet then Harry is red.
((("Harry" "is" "kind" "+") ("Harry" "is" "quiet" "+")) -> ("Harry" "is" "red" "+"))
If someone is quiet and red then they are rough.
((("someone" "is" "quiet" "+") ("someone" "is" "red" "+")) -> ("someone" "is" "rough" "+"))
Harry is furry.
True
1
proof
[(triple14)]
("Harry" "is" "furry" "+")
triple14
Bob is not rough.
False
1
inv-proof
[(triple7 OR ((triple5 triple6) -> rule2))]
("Bob" "is" "rough" "-")
triple7
((triple5 triple6) -> (rule2 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
Harry is red.
True
3
proof
[(((triple15 triple16) -> rule1))]
("Harry" "is" "red" "+")
((triple15 triple16) -> (rule1 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is not red.
False
3
inv-proof
[(((triple15 triple16) -> rule1))]
("Harry" "is" "red" "-")
((triple15 triple16) -> (rule1 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is rough.
True
5
proof
[(((triple16 ((triple15 triple16) -> rule1)) -> rule2))]
("Harry" "is" "rough" "+")
((triple16 ((triple15 triple16) -> (rule1 % int2))) -> (rule2 % int1))
Harry is rough.
("Harry" "is" "rough" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
int2
Harry is not rough.
False
5
inv-proof
[(((triple16 ((triple15 triple16) -> rule1)) -> rule2))]
("Harry" "is" "rough" "-")
((triple16 ((triple15 triple16) -> (rule1 % int2))) -> (rule2 % int1))
Harry is rough.
("Harry" "is" "rough" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
int2
Gary is not furry.
Unknown
inv-random
[@0: Gary is furry.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "furry" "-")
Fiona is red.
Unknown
random
[@0: Fiona is red.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "red" "+")
Gary is not green.
Unknown
inv-random
[@0: Gary is green.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "green" "-")
Harry is nice.
Unknown
random
[@0: Harry is nice.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "nice" "+")
Harry is not green.
Unknown
inv-random
[@0: Harry is green.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "green" "-")
Gary is red.
Unknown
random
[@0: Gary is red.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "red" "+")
@0: Bob is furry.[(triple1)] Bob is green.[(triple2)] Bob is kind.[(triple3)] Bob is nice.[(triple4)] Bob is quiet.[(triple5)] Bob is red.[(triple6)] Bob is rough.[(triple7 OR ((triple5 triple6) -> rule2))] Fiona is kind.[(triple8)] Fiona is nice.[(triple9)] Fiona is quiet.[(triple10)] Fiona is rough.[(triple11)] Gary is nice.[(triple12)] Gary is rough.[(triple13)] Harry is furry.[(triple14)] Harry is kind.[(triple15)] Harry is quiet.[(triple16)] @1: Harry is red.[(((triple15 triple16) -> rule1))] @2: Harry is rough.[(((triple16 ((triple15 triple16) -> rule1)) -> rule2))]
Bob is furry.
("Bob" "is" "furry" "+")
triple1
Bob is green.
("Bob" "is" "green" "+")
triple2
Bob is kind.
("Bob" "is" "kind" "+")
triple3
Bob is nice.
("Bob" "is" "nice" "+")
triple4
Bob is quiet.
("Bob" "is" "quiet" "+")
triple5
Bob is red.
("Bob" "is" "red" "+")
triple6
Bob is rough.
("Bob" "is" "rough" "+")
triple7
((triple5 triple6) -> (rule2 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
triple8
Fiona is nice.
("Fiona" "is" "nice" "+")
triple9
Fiona is quiet.
("Fiona" "is" "quiet" "+")
triple10
Fiona is rough.
("Fiona" "is" "rough" "+")
triple11
Gary is nice.
("Gary" "is" "nice" "+")
triple12
Gary is rough.
("Gary" "is" "rough" "+")
triple13
Harry is furry.
("Harry" "is" "furry" "+")
triple14
Harry is kind.
("Harry" "is" "kind" "+")
triple15
Harry is quiet.
("Harry" "is" "quiet" "+")
triple16
Harry is red.
("Harry" "is" "red" "+")
((triple15 triple16) -> (rule1 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is rough.
("Harry" "is" "rough" "+")
((triple16 ((triple15 triple16) -> (rule1 % int2))) -> (rule2 % int1))
Harry is rough.
("Harry" "is" "rough" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
int2