Since you work in AI, you have probably heard of the unification algorithm (of Prolog fame). Well, when a “languages” geek says “type inference” they mean something whose implementation involves the unification algorithm (among other things). (Note that most programmers using a compiler that does type inference probably do not know that it involves the unification algorithm. In other words, type inference is usually explained without making reference to unification.)
The same “languages” geek would refer to what is happening in your example as “coercion”. In particular, a string is being coerced to an integer.
Since you work in AI, you have probably heard of the unification algorithm (of Prolog fame). Well, when a “languages” geek says “type inference” they mean something whose implementation involves the unification algorithm (among other things). (Note that most programmers using a compiler that does type inference probably do not know that it involves the unification algorithm. In other words, type inference is usually explained without making reference to unification.)
The same “languages” geek would refer to what is happening in your example as “coercion”. In particular, a string is being coerced to an integer.