Bob is big. Bob is cold. Bob is kind. Bob is nice. Dave is big. Dave is cold. Dave is kind. Dave is white. Dave is young. Gary is cold. Gary is nice. Gary is white. Harry is blue. Harry is kind. Harry is nice. If someone is blue then they are cold. All kind, cold people are nice. If Dave is blue and Dave is nice then Dave is cold. Young people are blue. All kind, cold people are big. All young, blue people are cold.
Bob is big.
("Bob" "is" "big" "+")
Bob is cold.
("Bob" "is" "cold" "+")
Bob is kind.
("Bob" "is" "kind" "+")
Bob is nice.
("Bob" "is" "nice" "+")
Dave is big.
("Dave" "is" "big" "+")
Dave is cold.
("Dave" "is" "cold" "+")
Dave is kind.
("Dave" "is" "kind" "+")
Dave is white.
("Dave" "is" "white" "+")
Dave is young.
("Dave" "is" "young" "+")
Gary is cold.
("Gary" "is" "cold" "+")
Gary is nice.
("Gary" "is" "nice" "+")
Gary is white.
("Gary" "is" "white" "+")
Harry is blue.
("Harry" "is" "blue" "+")
Harry is kind.
("Harry" "is" "kind" "+")
Harry is nice.
("Harry" "is" "nice" "+")
If someone is blue then they are cold.
((("someone" "is" "blue" "+")) -> ("someone" "is" "cold" "+"))
All kind, cold people are nice.
((("someone" "is" "kind" "+") ("someone" "is" "cold" "+")) -> ("someone" "is" "nice" "+"))
If Dave is blue and Dave is nice then Dave is cold.
((("Dave" "is" "blue" "+") ("Dave" "is" "nice" "+")) -> ("Dave" "is" "cold" "+"))
Young people are blue.
((("someone" "is" "young" "+")) -> ("someone" "is" "blue" "+"))
All kind, cold people are big.
((("someone" "is" "kind" "+") ("someone" "is" "cold" "+")) -> ("someone" "is" "big" "+"))
All young, blue people are cold.
((("someone" "is" "young" "+") ("someone" "is" "blue" "+")) -> ("someone" "is" "cold" "+"))
Gary is nice.
True
1
proof
[(triple11)]
("Gary" "is" "nice" "+")
triple11
Bob is not kind.
False
1
inv-proof
[(triple3)]
("Bob" "is" "kind" "-")
triple3
Gary is not big.
Unknown
inv-rconc
[@1: Gary is big.[CWA. Example of deepest failure = (rule5 <- FAIL)]]
("Gary" "is" "big" "-")
Bob is white.
Unknown
random
[@0: Bob is white.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "white" "+")
@0: Bob is big.[(triple1 OR ((triple3 triple2) -> rule5))] Bob is cold.[(triple2)] Bob is kind.[(triple3)] Bob is nice.[(triple4 OR ((triple3 triple2) -> rule2))] Dave is big.[(triple5 OR ((triple7 triple6) -> rule5) OR ((triple7 ((((triple9) -> rule4)) -> rule1)) -> rule5) OR ((triple7 ((triple9 ((triple9) -> rule4)) -> rule6)) -> rule5))] Dave is cold.[(triple6 OR ((((triple9) -> rule4)) -> rule1) OR ((triple9 ((triple9) -> rule4)) -> rule6))] Dave is kind.[(triple7)] Dave is white.[(triple8)] Dave is young.[(triple9)] Gary is cold.[(triple10)] Gary is nice.[(triple11)] Gary is white.[(triple12)] Harry is blue.[(triple13)] Harry is kind.[(triple14)] Harry is nice.[(triple15 OR ((triple14 ((triple13) -> rule1)) -> rule2))] @1: Dave is blue.[(((triple9) -> rule4))] Dave is nice.[(((triple7 triple6) -> rule2) OR ((triple7 ((((triple9) -> rule4)) -> rule1)) -> rule2) OR ((triple7 ((triple9 ((triple9) -> rule4)) -> rule6)) -> rule2))] Harry is cold.[(((triple13) -> rule1))] @2: Harry is big.[(((triple14 ((triple13) -> rule1)) -> rule5))]
Bob is big.
("Bob" "is" "big" "+")
triple1
((triple3 triple2) -> (rule5 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
Bob is cold.
("Bob" "is" "cold" "+")
triple2
Bob is kind.
("Bob" "is" "kind" "+")
triple3
Bob is nice.
("Bob" "is" "nice" "+")
triple4
((triple3 triple2) -> (rule2 % int1))
Bob is nice.
("Bob" "is" "nice" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
triple5
((triple7 triple6) -> (rule5 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
((triple7 ((((triple9) -> (rule4 % int3))) -> (rule1 % int2))) -> (rule5 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
Dave is cold.
("Dave" "is" "cold" "+")
int2
Dave is blue.
("Dave" "is" "blue" "+")
int3
((triple7 ((triple9 ((triple9) -> (rule4 % int3))) -> (rule6 % int2))) -> (rule5 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
Dave is cold.
("Dave" "is" "cold" "+")
int2
Dave is blue.
("Dave" "is" "blue" "+")
int3
Dave is cold.
("Dave" "is" "cold" "+")
triple6
((((triple9) -> (rule4 % int2))) -> (rule1 % int1))
Dave is cold.
("Dave" "is" "cold" "+")
int1
Dave is blue.
("Dave" "is" "blue" "+")
int2
((triple9 ((triple9) -> (rule4 % int2))) -> (rule6 % int1))
Dave is cold.
("Dave" "is" "cold" "+")
int1
Dave is blue.
("Dave" "is" "blue" "+")
int2
Dave is kind.
("Dave" "is" "kind" "+")
triple7
Dave is white.
("Dave" "is" "white" "+")
triple8
Dave is young.
("Dave" "is" "young" "+")
triple9
Gary is cold.
("Gary" "is" "cold" "+")
triple10
Gary is nice.
("Gary" "is" "nice" "+")
triple11
Gary is white.
("Gary" "is" "white" "+")
triple12
Harry is blue.
("Harry" "is" "blue" "+")
triple13
Harry is kind.
("Harry" "is" "kind" "+")
triple14
Harry is nice.
("Harry" "is" "nice" "+")
triple15
((triple14 ((triple13) -> (rule1 % int2))) -> (rule2 % int1))
Harry is nice.
("Harry" "is" "nice" "+")
int1
Harry is cold.
("Harry" "is" "cold" "+")
int2
Dave is blue.
("Dave" "is" "blue" "+")
((triple9) -> (rule4 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is nice.
("Dave" "is" "nice" "+")
((triple7 triple6) -> (rule2 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
((triple7 ((((triple9) -> (rule4 % int3))) -> (rule1 % int2))) -> (rule2 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Dave is cold.
("Dave" "is" "cold" "+")
int2
Dave is blue.
("Dave" "is" "blue" "+")
int3
((triple7 ((triple9 ((triple9) -> (rule4 % int3))) -> (rule6 % int2))) -> (rule2 % int1))
Dave is nice.
("Dave" "is" "nice" "+")
int1
Dave is cold.
("Dave" "is" "cold" "+")
int2
Dave is blue.
("Dave" "is" "blue" "+")
int3
Harry is cold.
("Harry" "is" "cold" "+")
((triple13) -> (rule1 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
Harry is big.
("Harry" "is" "big" "+")
((triple14 ((triple13) -> (rule1 % int2))) -> (rule5 % int1))
Harry is big.
("Harry" "is" "big" "+")
int1
Harry is cold.
("Harry" "is" "cold" "+")
int2