In the book Introduction to artificial intelligence Ertel asks this question (exercise 1.5(a)):

Why is a deterministic agent with memory not a function from the set of all inputs to the set of all outputs, in the mathematical sense?

I don't even know why this statement would be true! I mean, I understand that mathematical functions are "pure functions" and thus do not have "side effects." An agent with memory can be viewed as a function with side effects and thus can't be a pure math function. But what prevents from choosing as the set of all inputs the "spacetime" of input? Doing so brings back the agent with memory to a pure function which can be represented as a mathematical functions!

Am I missing something or is what I say correct?


  • $\begingroup$ I'm not sure that I am understanding your question, so I could be totally missing the point that you are trying to make. First of all, I am unable to decipher the phrase "spacetime of input". Therefore, I can only assume that the inputs to the AI are as follows: (1) Reality, as it currently exists at the time that the AI is going to be launched. ...see next comment $\endgroup$ Commented Oct 18, 2020 at 22:30
  • $\begingroup$ (2) A deterministic conclusion for what reality will be at any time point in the future. This conclusion would have to include a conclusion of exactly how the AI will be affecting reality, and (simultaneously) how reality will be affecting AI's memory and its programming. Based on these ideas, I see nothing untenable in the idea that all of the future behavior of the AI is pre-determined, therefore merely a function of reality at the time that the AI is "turned on". $\endgroup$ Commented Oct 18, 2020 at 22:30
  • $\begingroup$ spacetime would be the space of input $I$ in time $T$ $I\times T$ $\endgroup$ Commented Oct 19, 2020 at 0:27

1 Answer 1


Without knowing more about this statements context, here is the point I imagine the author is trying to make:

The behavior of a deterministic agent with memory evolves as its internal state (i.e. memory) evolves. Mathematical functions do not have an evolving internal state in this sense. A mathematical function must satisfy the requirement that every input is mapped to only one output. Consider the function $f$ from input set $I$ to output set $O$. $f$ cannot take an element of $I$ to more than one element of $O$ and still be considered a function in the mathematical sense.

However, a deterministic agent with memory state $B$ might map some input $a$ to output $b$ while, at a later time, that same deterministic agent with memory state $C$ could map input $a$ to output $c$. This is inconsistent with the mathematical notion of a function.

  • $\begingroup$ +1 interesting analysis $\endgroup$ Commented Oct 18, 2020 at 22:34
  • $\begingroup$ Ok that I understand that. What a don't get is why the imput history could not be considered as an imput if we chose the domain to be $I\times T$ $\endgroup$ Commented Oct 19, 2020 at 0:24
  • $\begingroup$ @NicolasLussier-Clément You could do this. But now, your deterministic agent no long has access to any memory; instead, it's taking all of the data contained in what used to be it's memory as input from an outside source. It's behavior can now be described as a mathematical function, but at the cost of it's evolving internal state, which is arguably what makes AI interesting in the first place. $\endgroup$
    – Mithrandir
    Commented Oct 19, 2020 at 14:41
  • $\begingroup$ I guess that is it !! It must be what the author had in mind then ! $\endgroup$ Commented Oct 20, 2020 at 2:55

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .