Bob is kind. Bob is quiet. Bob is round. Bob is smart. Bob is white. Bob is young. Gary is cold. Gary is kind. Gary is not round. Gary is not smart. Gary is white. Gary is young. All smart people are cold. All white, smart people are round. If someone is young and smart then they are round. If Bob is smart and Bob is not young then Bob is round. All cold people are white. All round, smart people are white. Young, round people are smart. If Bob is not smart and Bob is not kind then Bob is quiet.
Bob is kind.
("Bob" "is" "kind" "+")
Bob is quiet.
("Bob" "is" "quiet" "+")
Bob is round.
("Bob" "is" "round" "+")
Bob is smart.
("Bob" "is" "smart" "+")
Bob is white.
("Bob" "is" "white" "+")
Bob is young.
("Bob" "is" "young" "+")
Gary is cold.
("Gary" "is" "cold" "+")
Gary is kind.
("Gary" "is" "kind" "+")
Gary is not round.
("Gary" "is" "round" "-")
Gary is not smart.
("Gary" "is" "smart" "-")
Gary is white.
("Gary" "is" "white" "+")
Gary is young.
("Gary" "is" "young" "+")
All smart people are cold.
((("someone" "is" "smart" "+")) -> ("someone" "is" "cold" "+"))
All white, smart people are round.
((("someone" "is" "white" "+") ("someone" "is" "smart" "+")) -> ("someone" "is" "round" "+"))
If someone is young and smart then they are round.
((("someone" "is" "young" "+") ("someone" "is" "smart" "+")) -> ("someone" "is" "round" "+"))
If Bob is smart and Bob is not young then Bob is round.
((("Bob" "is" "smart" "+") ("Bob" "is" "young" "~")) -> ("Bob" "is" "round" "+"))
All cold people are white.
((("someone" "is" "cold" "+")) -> ("someone" "is" "white" "+"))
All round, smart people are white.
((("someone" "is" "round" "+") ("someone" "is" "smart" "+")) -> ("someone" "is" "white" "+"))
Young, round people are smart.
((("someone" "is" "young" "+") ("someone" "is" "round" "+")) -> ("someone" "is" "smart" "+"))
If Bob is not smart and Bob is not kind then Bob is quiet.
((("Bob" "is" "smart" "~") ("Bob" "is" "kind" "~")) -> ("Bob" "is" "quiet" "+"))
Gary is young.
True
1
proof
[(triple12)]
("Gary" "is" "young" "+")
triple12
Gary is not cold.
False
1
inv-proof
[(triple7)]
("Gary" "is" "cold" "-")
triple7
Bob is cold.
True
2
proof
[(((triple4) -> rule1) OR ((((triple6 triple3) -> rule7)) -> rule1))]
("Bob" "is" "cold" "+")
((triple4) -> (rule1 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
((((triple6 triple3) -> (rule7 % int2))) -> (rule1 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
Bob is smart.
("Bob" "is" "smart" "+")
int2
Bob is not cold.
False
2
inv-proof
[(((triple4) -> rule1) OR ((((triple6 triple3) -> rule7)) -> rule1))]
("Bob" "is" "cold" "-")
((triple4) -> (rule1 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
((((triple6 triple3) -> (rule7 % int2))) -> (rule1 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
Bob is smart.
("Bob" "is" "smart" "+")
int2
@0: Bob is kind.[(triple1)] Bob is quiet.[(triple2)] Bob is round.[(triple3 OR ((triple5 triple4) -> rule2) OR ((triple6 triple4) -> rule3) OR ((((((triple4) -> rule1)) -> rule5) triple4) -> rule2))] Bob is smart.[(triple4 OR ((triple6 triple3) -> rule7))] Bob is white.[(triple5 OR ((triple3 triple4) -> rule6) OR ((((triple4) -> rule1)) -> rule5) OR ((triple3 ((triple6 triple3) -> rule7)) -> rule6) OR ((((triple6 triple4) -> rule3) triple4) -> rule6) OR ((((triple6 triple4) -> rule3) ((triple6 triple3) -> rule7)) -> rule6) OR ((((((triple6 triple3) -> rule7)) -> rule1)) -> rule5))] Bob is young.[(triple6)] Gary is cold.[(triple7)] Gary is kind.[(triple8)] Gary is not round.[(triple9)] Gary is not smart.[(triple10)] Gary is white.[(triple11 OR ((triple7) -> rule5))] Gary is young.[(triple12)] @1: Bob is cold.[(((triple4) -> rule1) OR ((((triple6 triple3) -> rule7)) -> rule1))]
Bob is kind.
("Bob" "is" "kind" "+")
triple1
Bob is quiet.
("Bob" "is" "quiet" "+")
triple2
Bob is round.
("Bob" "is" "round" "+")
triple3
((triple5 triple4) -> (rule2 % int1))
Bob is round.
("Bob" "is" "round" "+")
int1
((triple6 triple4) -> (rule3 % int1))
Bob is round.
("Bob" "is" "round" "+")
int1
((((((triple4) -> (rule1 % int3))) -> (rule5 % int2)) triple4) -> (rule2 % int1))
Bob is round.
("Bob" "is" "round" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
int2
Bob is cold.
("Bob" "is" "cold" "+")
int3
Bob is smart.
("Bob" "is" "smart" "+")
triple4
((triple6 triple3) -> (rule7 % int1))
Bob is smart.
("Bob" "is" "smart" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
triple5
((triple3 triple4) -> (rule6 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
((((triple4) -> (rule1 % int2))) -> (rule5 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
Bob is cold.
("Bob" "is" "cold" "+")
int2
((triple3 ((triple6 triple3) -> (rule7 % int2))) -> (rule6 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
Bob is smart.
("Bob" "is" "smart" "+")
int2
((((triple6 triple4) -> (rule3 % int2)) triple4) -> (rule6 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
Bob is round.
("Bob" "is" "round" "+")
int2
((((triple6 triple4) -> (rule3 % int3)) ((triple6 triple3) -> (rule7 % int2))) -> (rule6 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
Bob is smart.
("Bob" "is" "smart" "+")
int2
Bob is round.
("Bob" "is" "round" "+")
int3
((((((triple6 triple3) -> (rule7 % int3))) -> (rule1 % int2))) -> (rule5 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
Bob is cold.
("Bob" "is" "cold" "+")
int2
Bob is smart.
("Bob" "is" "smart" "+")
int3
Bob is young.
("Bob" "is" "young" "+")
triple6
Gary is cold.
("Gary" "is" "cold" "+")
triple7
Gary is kind.
("Gary" "is" "kind" "+")
triple8
Gary is not round.
("Gary" "is" "round" "-")
triple9
Gary is not smart.
("Gary" "is" "smart" "-")
triple10
Gary is white.
("Gary" "is" "white" "+")
triple11
((triple7) -> (rule5 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Gary is young.
("Gary" "is" "young" "+")
triple12
Bob is cold.
("Bob" "is" "cold" "+")
((triple4) -> (rule1 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
((((triple6 triple3) -> (rule7 % int2))) -> (rule1 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
Bob is smart.
("Bob" "is" "smart" "+")
int2