At the end of Revolutions, why does the Architect imply that because he is not human he is incapable of lying? Do any of the 'programs' ever lie?
I think he's just sassing her. It's not a comment on himself, it's a putdown on the humans vs machines, and humans past history of keeping their word. Like she might say:
"Architect, I hope you don't steal all the spoons because some kid might need to bend them".
"What am I, Australian?"
Now whether he can lie, I'm not sure. I just don't think that's the point of that scene.
EDITED TO ADD:
I'VE read over The Matrix http://sfy.ru/?script=matrix_ts and Reloaded scripts http://www.theforbiddenknowledge.com/the_matrix_script/index02.htm (I'm staying away from Revolutions) and from I've read, every program seems to tell the truth, at least as much as they know with the knowledge they have at the time. There are times when it feels a bit sketchy, when machines philosophical views might be at odds with exact data/wording/definition about something. I'm thinking of when the Oracle says Neo isn't the One, or when Smith does his humans/virus monologue. Or at the very beginning of The Matrix when the Lieutenant says they can handle one little girl and Smith replies: No Lieutenant, your men are already dead. But I think it works in the spirit of telling the truth as they see it/from their point of view/how they phrase it.
The thing is, a lot of the program's dialogue seems to come in two flavours. Big infodumps about the Matrix like the Oracle or Architect, or philisophical viewpoints like Smith and the Merovingian, so it seems like in these situations you are only going to get the truth.
In my mind. The characters inside the matrix were programs that executed functions of an operating system and as explained, programs become corrupt over time. The human interaction (hacks) had corrupted the system to the point of becoming unstable. Neo was the system upgrade that the system needed... He just needed to go willingly. I suppose the Architect is the closest semblance to a BIOS (Basic Input/Output System). Neo was the boot flash.
I don't think this is meant to be taken directly or literally. is it phylosophical? Maybe. I think it can definitely be explained using computer science:
First, let's simplify the architect a lot. Ignore the whole projection, voice, etc.
It's a program creating some kind of output. The easiest form would be a console program that writes something on the screen. Let's assume you've got a console program that you pass a mathematical term and it will tell you the solution.
For example, you run the program
myprogram 5 + 5 and it's supposed to output
This happens by simply following a given set of instructions. The output is the truth, because the program followed its instructions, which define and tell it what/how to do something or how something is supposed to be done.
Now, let's assume you want the program to "lie". So, behind the scenes, it could just add
+ 1 to whatever result is calculated. Now the output of
myprogram 5 + 5 would show
11 rather than
10. But is it a lie? No, it isn't.
To me, a lie is a false statement, based on the fact that you either know the correct state(ment) and don't want to tell it or you're trying to give any answer to avoid "I don't know".
But how does this apply to the program? The program only follows its instructions, which state follow the formula given and add + 1. So the program outputs its truth. For it this is the truth, the true result - it can't lie, because whatever result is created, it would be based on the program's knowledge.
Can a program give someone a wrong result intentionally? Yes, because it might be told to do so or consider a different approach/result based on some other things. But can it lie? Not so much.
You can transfer this to humans in a different way as well:
Take a kid for example. You teach the kid how to create plural forms of English nouns: "You just append an 's'." Of course, this is not that simple and it's not true for all nouns - not at all. So now you ask that kid "What is the plural form of 'foot'?" The kid will most likely answer "foots", which is obviously wrong. But did the kid lie? No, not at all. It made a wrong assumption, which lead to the wrong result, but it wasn't an actual lie. It just followed the rules given to it.