Bob is big. Bob is cold. Bob is nice. Bob is rough. Dave is big. Dave is cold. Dave is furry. Dave is nice. Dave is red. Dave is rough. Harry is cold. Harry is furry. Harry is nice. Harry is rough. Harry is young. If something is red and cold then it is big. If Dave is nice and Dave is red then Dave is young. Red things are furry. All rough, young things are nice. Red, young things are big. If Bob is rough then Bob is nice.
Bob is big.
("Bob" "is" "big" "+")
Bob is cold.
("Bob" "is" "cold" "+")
Bob is nice.
("Bob" "is" "nice" "+")
Bob is rough.
("Bob" "is" "rough" "+")
Dave is big.
("Dave" "is" "big" "+")
Dave is cold.
("Dave" "is" "cold" "+")
Dave is furry.
("Dave" "is" "furry" "+")
Dave is nice.
("Dave" "is" "nice" "+")
Dave is red.
("Dave" "is" "red" "+")
Dave is rough.
("Dave" "is" "rough" "+")
Harry is cold.
("Harry" "is" "cold" "+")
Harry is furry.
("Harry" "is" "furry" "+")
Harry is nice.
("Harry" "is" "nice" "+")
Harry is rough.
("Harry" "is" "rough" "+")
Harry is young.
("Harry" "is" "young" "+")
If something is red and cold then it is big.
((("something" "is" "red" "+") ("something" "is" "cold" "+")) -> ("something" "is" "big" "+"))
If Dave is nice and Dave is red then Dave is young.
((("Dave" "is" "nice" "+") ("Dave" "is" "red" "+")) -> ("Dave" "is" "young" "+"))
Red things are furry.
((("something" "is" "red" "+")) -> ("something" "is" "furry" "+"))
All rough, young things are nice.
((("something" "is" "rough" "+") ("something" "is" "young" "+")) -> ("something" "is" "nice" "+"))
Red, young things are big.
((("something" "is" "red" "+") ("something" "is" "young" "+")) -> ("something" "is" "big" "+"))
If Bob is rough then Bob is nice.
((("Bob" "is" "rough" "+")) -> ("Bob" "is" "nice" "+"))
Bob is rough.
True
1
proof
[(triple4)]
("Bob" "is" "rough" "+")
triple4
Dave is not cold.
False
1
inv-proof
[(triple6)]
("Dave" "is" "cold" "-")
triple6
Dave is young.
True
3
proof
[(((triple8 triple9) -> rule2))]
("Dave" "is" "young" "+")
((triple8 triple9) -> (rule2 % int1))
Dave is young.
("Dave" "is" "young" "+")
int1
Dave is not young.
False
3
inv-proof
[(((triple8 triple9) -> rule2))]
("Dave" "is" "young" "-")
((triple8 triple9) -> (rule2 % int1))
Dave is young.
("Dave" "is" "young" "+")
int1
Bob is not furry.
Unknown
inv-rconc
[@1: Bob is furry.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Bob" "is" "furry" "-")
Harry is big.
Unknown
rconc
[@1: Harry is big.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Harry" "is" "big" "+")
Bob is not young.
Unknown
inv-random
[@0: Bob is young.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "young" "-")
Harry is red.
Unknown
random
[@0: Harry is red.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "red" "+")
@0: Bob is big.[(triple1)] Bob is cold.[(triple2)] Bob is nice.[(triple3 OR ((triple4) -> rule6))] Bob is rough.[(triple4)] Dave is big.[(triple5 OR ((triple9 triple6) -> rule1) OR ((triple9 ((triple8 triple9) -> rule2)) -> rule5))] Dave is cold.[(triple6)] Dave is furry.[(triple7 OR ((triple9) -> rule3))] Dave is nice.[(triple8)] Dave is red.[(triple9)] Dave is rough.[(triple10)] Harry is cold.[(triple11)] Harry is furry.[(triple12)] Harry is nice.[(triple13 OR ((triple14 triple15) -> rule4))] Harry is rough.[(triple14)] Harry is young.[(triple15)] @1: Dave is young.[(((triple8 triple9) -> rule2))]
Bob is big.
("Bob" "is" "big" "+")
triple1
Bob is cold.
("Bob" "is" "cold" "+")
triple2
Bob is nice.
("Bob" "is" "nice" "+")
triple3
((triple4) -> (rule6 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
triple4
Dave is big.
("Dave" "is" "big" "+")
triple5
((triple9 triple6) -> (rule1 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
((triple9 ((triple8 triple9) -> (rule2 % int2))) -> (rule5 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
Dave is young.
("Dave" "is" "young" "+")
int2
Dave is cold.
("Dave" "is" "cold" "+")
triple6
Dave is furry.
("Dave" "is" "furry" "+")
triple7
((triple9) -> (rule3 % int1))
Dave is furry.
("Dave" "is" "furry" "+")
int1
Dave is nice.
("Dave" "is" "nice" "+")
triple8
Dave is red.
("Dave" "is" "red" "+")
triple9
Dave is rough.
("Dave" "is" "rough" "+")
triple10
Harry is cold.
("Harry" "is" "cold" "+")
triple11
Harry is furry.
("Harry" "is" "furry" "+")
triple12
Harry is nice.
("Harry" "is" "nice" "+")
triple13
((triple14 triple15) -> (rule4 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Harry is rough.
("Harry" "is" "rough" "+")
triple14
Harry is young.
("Harry" "is" "young" "+")
triple15
Dave is young.
("Dave" "is" "young" "+")
((triple8 triple9) -> (rule2 % int1))
Dave is young.
("Dave" "is" "young" "+")
int1