# What does this program suffer from?

A program named Lxndr.exe along with a readme.txt suddenly appeared on my desktop. The readme reads

I think I show some symptoms. Do you think I suffer from it?

Well, while there's definitely something wrong with my computer, I have no idea what the executable is about.

Just like the sensible person I am, I played around with it by executing it. First off, calling lxndr.exe -? in the command prompt yields the following output:

C:\users\me>lxndr.exe -?

lxndr [-p pos] [-d d] [-t time] [-b]

Options:
-p pos      fenny position; default: random
-d d        [redacted]
-t time     max time (milliseconds)
-b          !w; default: false


Then I executed it with some values for -d and -t:

C:\users\me>lxndr.exe -d 10 -t 500
Output: [redacted] - 100ms - !

C:\users\me>lxndr.exe -d 22 -t 100
Output: [redacted] - 100ms - ??

C:\users\me>lxndr.exe -d 15 -t 200
Output: [redacted] - 190ms - ?

C:\users\me>lxndr.exe -d 8 -t 7
Output: [redacted] - 7ms - ??

C:\users\me>lxndr.exe -d 25 -t 75000
Output: [redacted] - 5000ms - !!

C:\users\me>lxndr.exe -d 20 -t 800
Output: [redacted] - 700ms - ?!

C:\users\me>lxndr.exe -d 60 -t 8000
Output: [redacted] - 8000ms - ??


## What does this program suffer from?

Notes:

1. With the intended answer you can a) explain what this program might be used for, b) explain the output and certain parts of it more extensively c) derive the meaning of every option when calling -? and d) explain the name of the executable.
2. Don't focus too much on the exact numbers I in my "testing" inputs and outputs.

Hint #1:

Once you've figured out that this puzzle is related to chess, you must especially find out the meaning of the last output. Why would an engine "malfunction" in such a way? What "illness" must it have that fits with the executable's name?

The answer is not technical. The answer has more to do with knowledge about certain things surrounding chess (you could solve this only knowing the bare basics of the game!) and nothing with (chess) programming. The fact that this is a program is just the way I decided to present it. If you do not know the answer after reading this hint, it might take some googling.

• Is the difference between Lxndr.exe and lxndr.exe a typo? – msh210 Sep 1 '20 at 22:54
• @msh210 Doesn't make a difference – Lukas Rotter Sep 1 '20 at 22:56
• "Just like the sensible person I am, I played around with it by executing it. " i don't think executing a weird executable that appeared on your computer is a very smart idea :P – Carla Cvekla Sep 2 '20 at 13:04

First of all, obviously

lxndr.exe is a chess program.

The options are

-p for a position in FEN (Forsyth-Edwards notation; "fenny"); -d for the depth to search to; -t is just what it says; -b meaning black rather than white to move.

The output from running the program consists of

something redacted, which might be the program's choice of move in the given position or its evaluation of which player is ahead and by how much; how long it took to do its searching; and some sort of evaluation of some move (maybe the move it chose, but it's not clear how it would provide such an evaluation without doing an extra, longer search). The evaluation is expressed in traditional chess-annotation terms, so that e.g. ?? means a really terrible move and !! means a brilliant one. (Though annotating something as !! generally means not only that it's the best move, but that somehow it was a hard move to find. E.g., even though 1. e4 might be the best opening move, no one would give it two exclamation marks because everyone knows it's a good choice.)

So

when you increase -d you get deeper searches and hence slower times; -d 60 as in the last example is extremely deep for anything other than a simple endgame position where everything transposes to everything else, which is why that search got cut off by the time limit.

The name of the program

seems to be a shortening of "Alexander".

So, what's its problem? Well,

the grandmaster Alexander Kotov wrote a book called "Think like a grandmaster", with a famous illustration in its opening chapter where he describes a player thinking in rather disorganized fashion about a number of plausible candidate moves, failing to come to a clear conclusion, and eventually thinking "aha! what if I play such-and-such instead?" and doing that immediately ... which is a terrible mistake, as they would have recognized if they'd given some actual systematic thought to such-and-such. This sort of mental failure is occasionally called Kotov syndrome.

And that seems like it might be what happened to the program at the end.

Pedantic note:

It doesn't really make much sense for the program itself to be annotating its own moves, unless it's following each one up with a longer, better search :-). But OP has confirmed, in TSL chat, that that's just because it would have been too difficult to convey the idea of, say, something else doing the annotating. So let's pretend that after doing its search it then runs Stockfish NNUE or Leela Chess Zero or something for a few minutes to decide how good the move really is. I guess the redacted output probably includes the initial position and the chosen move.

Some observations which may be helpful for other to completely answer the puzzle:

I think it's chess-related:
- "fenny" refers to FEN notation of chess positions
- "d" could be the depth, i.e. the number of (half-)moves the program needs to think ahead
- it's common to limit the amount of time a chess engine may think
- the "b" parameter is an abbreviation of "black to move" and is the inverse of "white to move"
- the output contains ? and !, which are frequently used to describe bad and good moves in chess, and their combinations have their own meaning
- "lxndr" are the consonants of Alexander, which is the first name of former chess champion Alekhine.