Bob is big. Bob is cold. Bob is kind. Bob is rough. Bob is round. Bob is white. Bob is young. Harry is big. Harry is cold. Harry is rough. Harry is round. Harry is white. Big, kind people are rough. Round people are cold. White people are young. If someone is kind and young then they are rough. All kind people are round. If someone is white and big then they are young. Rough, kind people are cold. If Bob is cold then Bob is young.
Bob is big.
("Bob" "is" "big" "+")
Bob is cold.
("Bob" "is" "cold" "+")
Bob is kind.
("Bob" "is" "kind" "+")
Bob is rough.
("Bob" "is" "rough" "+")
Bob is round.
("Bob" "is" "round" "+")
Bob is white.
("Bob" "is" "white" "+")
Bob is young.
("Bob" "is" "young" "+")
Harry is big.
("Harry" "is" "big" "+")
Harry is cold.
("Harry" "is" "cold" "+")
Harry is rough.
("Harry" "is" "rough" "+")
Harry is round.
("Harry" "is" "round" "+")
Harry is white.
("Harry" "is" "white" "+")
Big, kind people are rough.
((("someone" "is" "big" "+") ("someone" "is" "kind" "+")) -> ("someone" "is" "rough" "+"))
Round people are cold.
((("someone" "is" "round" "+")) -> ("someone" "is" "cold" "+"))
White people are young.
((("someone" "is" "white" "+")) -> ("someone" "is" "young" "+"))
If someone is kind and young then they are rough.
((("someone" "is" "kind" "+") ("someone" "is" "young" "+")) -> ("someone" "is" "rough" "+"))
All kind people are round.
((("someone" "is" "kind" "+")) -> ("someone" "is" "round" "+"))
If someone is white and big then they are young.
((("someone" "is" "white" "+") ("someone" "is" "big" "+")) -> ("someone" "is" "young" "+"))
Rough, kind people are cold.
((("someone" "is" "rough" "+") ("someone" "is" "kind" "+")) -> ("someone" "is" "cold" "+"))
If Bob is cold then Bob is young.
((("Bob" "is" "cold" "+")) -> ("Bob" "is" "young" "+"))
Bob is big.
True
1
proof
[(triple1)]
("Bob" "is" "big" "+")
triple1
Harry is not rough.
False
1
inv-proof
[(triple10)]
("Harry" "is" "rough" "-")
triple10
@0: Bob is big.[(triple1)] Bob is cold.[(triple2 OR ((triple5) -> rule2) OR ((triple4 triple3) -> rule7) OR ((((triple3) -> rule5)) -> rule2) OR ((((triple1 triple3) -> rule1) triple3) -> rule7) OR ((((triple3 triple7) -> rule4) triple3) -> rule7) OR ((((triple3 ((triple6) -> rule3)) -> rule4) triple3) -> rule7) OR ((((triple3 ((triple6 triple1) -> rule6)) -> rule4) triple3) -> rule7))] Bob is kind.[(triple3)] Bob is rough.[(triple4 OR ((triple1 triple3) -> rule1) OR ((triple3 triple7) -> rule4) OR ((triple3 ((triple2) -> rule8)) -> rule4) OR ((triple3 ((triple6) -> rule3)) -> rule4) OR ((triple3 ((triple6 triple1) -> rule6)) -> rule4) OR ((triple3 ((((triple5) -> rule2)) -> rule8)) -> rule4) OR ((triple3 ((((((triple3) -> rule5)) -> rule2)) -> rule8)) -> rule4))] Bob is round.[(triple5 OR ((triple3) -> rule5))] Bob is white.[(triple6)] Bob is young.[(triple7 OR ((triple2) -> rule8) OR ((triple6) -> rule3) OR ((triple6 triple1) -> rule6) OR ((((triple5) -> rule2)) -> rule8) OR ((((triple4 triple3) -> rule7)) -> rule8) OR ((((((triple3) -> rule5)) -> rule2)) -> rule8) OR ((((((triple1 triple3) -> rule1) triple3) -> rule7)) -> rule8))] Harry is big.[(triple8)] Harry is cold.[(triple9 OR ((triple11) -> rule2))] Harry is rough.[(triple10)] Harry is round.[(triple11)] Harry is white.[(triple12)] @1: Harry is young.[(((triple12) -> rule3) OR ((triple12 triple8) -> rule6))]
Bob is big.
("Bob" "is" "big" "+")
triple1
Bob is cold.
("Bob" "is" "cold" "+")
triple2
((triple5) -> (rule2 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
((triple4 triple3) -> (rule7 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
((((triple3) -> (rule5 % int2))) -> (rule2 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
Bob is round.
("Bob" "is" "round" "+")
int2
((((triple1 triple3) -> (rule1 % int2)) triple3) -> (rule7 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
int2
((((triple3 triple7) -> (rule4 % int2)) triple3) -> (rule7 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
int2
((((triple3 ((triple6) -> (rule3 % int3))) -> (rule4 % int2)) triple3) -> (rule7 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
int2
Bob is young.
("Bob" "is" "young" "+")
int3
((((triple3 ((triple6 triple1) -> (rule6 % int3))) -> (rule4 % int2)) triple3) -> (rule7 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
int2
Bob is young.
("Bob" "is" "young" "+")
int3
Bob is kind.
("Bob" "is" "kind" "+")
triple3
Bob is rough.
("Bob" "is" "rough" "+")
triple4
((triple1 triple3) -> (rule1 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
((triple3 triple7) -> (rule4 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
((triple3 ((triple2) -> (rule8 % int2))) -> (rule4 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
Bob is young.
("Bob" "is" "young" "+")
int2
((triple3 ((triple6) -> (rule3 % int2))) -> (rule4 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
Bob is young.
("Bob" "is" "young" "+")
int2
((triple3 ((triple6 triple1) -> (rule6 % int2))) -> (rule4 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
Bob is young.
("Bob" "is" "young" "+")
int2
((triple3 ((((triple5) -> (rule2 % int3))) -> (rule8 % int2))) -> (rule4 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
Bob is young.
("Bob" "is" "young" "+")
int2
Bob is cold.
("Bob" "is" "cold" "+")
int3
((triple3 ((((((triple3) -> (rule5 % int4))) -> (rule2 % int3))) -> (rule8 % int2))) -> (rule4 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
Bob is young.
("Bob" "is" "young" "+")
int2
Bob is cold.
("Bob" "is" "cold" "+")
int3
Bob is round.
("Bob" "is" "round" "+")
int4
Bob is round.
("Bob" "is" "round" "+")
triple5
((triple3) -> (rule5 % int1))
Bob is round.
("Bob" "is" "round" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
triple6
Bob is young.
("Bob" "is" "young" "+")
triple7
((triple2) -> (rule8 % int1))
Bob is young.
("Bob" "is" "young" "+")
int1
((triple6) -> (rule3 % int1))
Bob is young.
("Bob" "is" "young" "+")
int1
((triple6 triple1) -> (rule6 % int1))
Bob is young.
("Bob" "is" "young" "+")
int1
((((triple5) -> (rule2 % int2))) -> (rule8 % int1))
Bob is young.
("Bob" "is" "young" "+")
int1
Bob is cold.
("Bob" "is" "cold" "+")
int2
((((triple4 triple3) -> (rule7 % int2))) -> (rule8 % int1))
Bob is young.
("Bob" "is" "young" "+")
int1
Bob is cold.
("Bob" "is" "cold" "+")
int2
((((((triple3) -> (rule5 % int3))) -> (rule2 % int2))) -> (rule8 % int1))
Bob is young.
("Bob" "is" "young" "+")
int1
Bob is cold.
("Bob" "is" "cold" "+")
int2
Bob is round.
("Bob" "is" "round" "+")
int3
((((((triple1 triple3) -> (rule1 % int3)) triple3) -> (rule7 % int2))) -> (rule8 % int1))
Bob is young.
("Bob" "is" "young" "+")
int1
Bob is cold.
("Bob" "is" "cold" "+")
int2
Bob is rough.
("Bob" "is" "rough" "+")
int3
Harry is big.
("Harry" "is" "big" "+")
triple8
Harry is cold.
("Harry" "is" "cold" "+")
triple9
((triple11) -> (rule2 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
Harry is rough.
("Harry" "is" "rough" "+")
triple10
Harry is round.
("Harry" "is" "round" "+")
triple11
Harry is white.
("Harry" "is" "white" "+")
triple12
Harry is young.
("Harry" "is" "young" "+")
((triple12) -> (rule3 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1
((triple12 triple8) -> (rule6 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1