Charlie is big. Charlie is cold. Charlie is green. Charlie is kind. Charlie is nice. Charlie is quiet. Charlie is smart. If someone is cold then they are green. Smart people are green. If someone is nice then they are big. All smart people are cold. If Charlie is cold then Charlie is big. If someone is smart then they are green. If Charlie is green and Charlie is smart then Charlie is cold. All green people are quiet.
Charlie is big.
("Charlie" "is" "big" "+")
Charlie is cold.
("Charlie" "is" "cold" "+")
Charlie is green.
("Charlie" "is" "green" "+")
Charlie is kind.
("Charlie" "is" "kind" "+")
Charlie is nice.
("Charlie" "is" "nice" "+")
Charlie is quiet.
("Charlie" "is" "quiet" "+")
Charlie is smart.
("Charlie" "is" "smart" "+")
If someone is cold then they are green.
((("someone" "is" "cold" "+")) -> ("someone" "is" "green" "+"))
Smart people are green.
((("someone" "is" "smart" "+")) -> ("someone" "is" "green" "+"))
If someone is nice then they are big.
((("someone" "is" "nice" "+")) -> ("someone" "is" "big" "+"))
All smart people are cold.
((("someone" "is" "smart" "+")) -> ("someone" "is" "cold" "+"))
If Charlie is cold then Charlie is big.
((("Charlie" "is" "cold" "+")) -> ("Charlie" "is" "big" "+"))
If someone is smart then they are green.
((("someone" "is" "smart" "+")) -> ("someone" "is" "green" "+"))
If Charlie is green and Charlie is smart then Charlie is cold.
((("Charlie" "is" "green" "+") ("Charlie" "is" "smart" "+")) -> ("Charlie" "is" "cold" "+"))
All green people are quiet.
((("someone" "is" "green" "+")) -> ("someone" "is" "quiet" "+"))
Charlie is nice.
True
1
proof
[(triple5)]
("Charlie" "is" "nice" "+")
triple5
Charlie is not smart.
False
1
inv-proof
[(triple7)]
("Charlie" "is" "smart" "-")
triple7
@0: Charlie is big.[(triple1 OR ((triple2) -> rule5) OR ((triple5) -> rule3) OR ((((triple7) -> rule4)) -> rule5) OR ((((triple3 triple7) -> rule7)) -> rule5) OR ((((((triple7) -> rule2) triple7) -> rule7)) -> rule5) OR ((((((triple7) -> rule6) triple7) -> rule7)) -> rule5))] Charlie is cold.[(triple2 OR ((triple7) -> rule4) OR ((triple3 triple7) -> rule7) OR ((((triple7) -> rule2) triple7) -> rule7) OR ((((triple7) -> rule6) triple7) -> rule7))] Charlie is green.[(triple3 OR ((triple2) -> rule1) OR ((triple7) -> rule2) OR ((triple7) -> rule6) OR ((((triple7) -> rule4)) -> rule1))] Charlie is kind.[(triple4)] Charlie is nice.[(triple5)] Charlie is quiet.[(triple6 OR ((triple3) -> rule8) OR ((((triple2) -> rule1)) -> rule8) OR ((((triple7) -> rule2)) -> rule8) OR ((((triple7) -> rule6)) -> rule8) OR ((((((triple7) -> rule4)) -> rule1)) -> rule8))] Charlie is smart.[(triple7)]
Charlie is big.
("Charlie" "is" "big" "+")
triple1
((triple2) -> (rule5 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
((triple5) -> (rule3 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
((((triple7) -> (rule4 % int2))) -> (rule5 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
((((triple3 triple7) -> (rule7 % int2))) -> (rule5 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
((((((triple7) -> (rule2 % int3)) triple7) -> (rule7 % int2))) -> (rule5 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
Charlie is green.
("Charlie" "is" "green" "+")
int3
((((((triple7) -> (rule6 % int3)) triple7) -> (rule7 % int2))) -> (rule5 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
Charlie is green.
("Charlie" "is" "green" "+")
int3
Charlie is cold.
("Charlie" "is" "cold" "+")
triple2
((triple7) -> (rule4 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
((triple3 triple7) -> (rule7 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
((((triple7) -> (rule2 % int2)) triple7) -> (rule7 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
((((triple7) -> (rule6 % int2)) triple7) -> (rule7 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
Charlie is green.
("Charlie" "is" "green" "+")
triple3
((triple2) -> (rule1 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
((triple7) -> (rule2 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
((triple7) -> (rule6 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
((((triple7) -> (rule4 % int2))) -> (rule1 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
Charlie is kind.
("Charlie" "is" "kind" "+")
triple4
Charlie is nice.
("Charlie" "is" "nice" "+")
triple5
Charlie is quiet.
("Charlie" "is" "quiet" "+")
triple6
((triple3) -> (rule8 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
((((triple2) -> (rule1 % int2))) -> (rule8 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
((((triple7) -> (rule2 % int2))) -> (rule8 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
((((triple7) -> (rule6 % int2))) -> (rule8 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
((((((triple7) -> (rule4 % int3))) -> (rule1 % int2))) -> (rule8 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
Charlie is cold.
("Charlie" "is" "cold" "+")
int3
Charlie is smart.
("Charlie" "is" "smart" "+")
triple7