Bob is big. Bob is blue. Bob is cold. Bob is kind. Bob is rough. Bob is smart. Bob is white. Fiona is big. Fiona is blue. Fiona is cold. Fiona is kind. Fiona is rough. Fiona is smart. Fiona is white. All smart, blue people are rough. All cold people are kind. If Fiona is white and Fiona is rough then Fiona is kind.
Bob is big.
("Bob" "is" "big" "+")
Bob is blue.
("Bob" "is" "blue" "+")
Bob is cold.
("Bob" "is" "cold" "+")
Bob is kind.
("Bob" "is" "kind" "+")
Bob is rough.
("Bob" "is" "rough" "+")
Bob is smart.
("Bob" "is" "smart" "+")
Bob is white.
("Bob" "is" "white" "+")
Fiona is big.
("Fiona" "is" "big" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Fiona is cold.
("Fiona" "is" "cold" "+")
Fiona is kind.
("Fiona" "is" "kind" "+")
Fiona is rough.
("Fiona" "is" "rough" "+")
Fiona is smart.
("Fiona" "is" "smart" "+")
Fiona is white.
("Fiona" "is" "white" "+")
All smart, blue people are rough.
((("someone" "is" "smart" "+") ("someone" "is" "blue" "+")) -> ("someone" "is" "rough" "+"))
All cold people are kind.
((("someone" "is" "cold" "+")) -> ("someone" "is" "kind" "+"))
If Fiona is white and Fiona is rough then Fiona is kind.
((("Fiona" "is" "white" "+") ("Fiona" "is" "rough" "+")) -> ("Fiona" "is" "kind" "+"))
Fiona is cold.
True
1
proof
[(triple10)]
("Fiona" "is" "cold" "+")
triple10
Fiona is not white.
False
1
inv-proof
[(triple14)]
("Fiona" "is" "white" "-")
triple14
@0: Bob is big.[(triple1)] Bob is blue.[(triple2)] Bob is cold.[(triple3)] Bob is kind.[(triple4 OR ((triple3) -> rule2))] Bob is rough.[(triple5 OR ((triple6 triple2) -> rule1))] Bob is smart.[(triple6)] Bob is white.[(triple7)] Fiona is big.[(triple8)] Fiona is blue.[(triple9)] Fiona is cold.[(triple10)] Fiona is kind.[(triple11 OR ((triple10) -> rule2) OR ((triple14 triple12) -> rule3) OR ((triple14 ((triple13 triple9) -> rule1)) -> rule3))] Fiona is rough.[(triple12 OR ((triple13 triple9) -> rule1))] Fiona is smart.[(triple13)] Fiona is white.[(triple14)]
Bob is big.
("Bob" "is" "big" "+")
triple1
Bob is blue.
("Bob" "is" "blue" "+")
triple2
Bob is cold.
("Bob" "is" "cold" "+")
triple3
Bob is kind.
("Bob" "is" "kind" "+")
triple4
((triple3) -> (rule2 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
triple5
((triple6 triple2) -> (rule1 % int1))
Bob is rough.
("Bob" "is" "rough" "+")
int1
Bob is smart.
("Bob" "is" "smart" "+")
triple6
Bob is white.
("Bob" "is" "white" "+")
triple7
Fiona is big.
("Fiona" "is" "big" "+")
triple8
Fiona is blue.
("Fiona" "is" "blue" "+")
triple9
Fiona is cold.
("Fiona" "is" "cold" "+")
triple10
Fiona is kind.
("Fiona" "is" "kind" "+")
triple11
((triple10) -> (rule2 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
((triple14 triple12) -> (rule3 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
((triple14 ((triple13 triple9) -> (rule1 % int2))) -> (rule3 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is rough.
("Fiona" "is" "rough" "+")
int2
Fiona is rough.
("Fiona" "is" "rough" "+")
triple12
((triple13 triple9) -> (rule1 % int1))
Fiona is rough.
("Fiona" "is" "rough" "+")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
triple13
Fiona is white.
("Fiona" "is" "white" "+")
triple14