Can an evolving AI be programmed not to lie?
If a machine learning based AI is "sufficiently smart enough" to be able lie then there is nothing preventing it from lying. This does not mean it can't be persuaded from lying. 

So just make the AI simple enough to not be able to lie. 

The reasoning here is that in order for a system to be able to lie, a system must be able to recognize an incentive to lie. Recognizing this incentive is a challenging function and would be impossible to code manually into a computer. Machine leaning can be applied to problems such as these where the function is hard to code manually. Although there has been promising work on understanding what the representations/features learned by machine learning actually represent, it may not be possible in general to have an understanding of what a lie in the agent's representation looks like. Because of this, having a hand coded rule to catch when an agent is lying is not possible and thus being able to prevent an agent from (or catch an agent when) lying isn't possible when using machine learning.