Definitions: (click to show/hide)
Circe: Captured units (not Ks) reappear on their gamearray squares, of the same colour in the case of pieces, on the file of capture in the case of pawns, and on the promotion square of the file of capture in the case of fairy pieces. If the rebirth square is occupied the capture is normal.
Super AntiCirce: After a capture, the side making the capture can place the capturing unit on any empty square. [Placement is compulsory]. A Pawn placed on its first rank is immovable.
Maximummer: Black must play the geometrically longest move or may choose from among longest moves of equal length, distances being measured from the center of each square. Diagonal and oblique distances are measured from the orthogonal coordinates by using Pythagora’s theorem (take the square root of the sum of the squares of the orthogonal distances). All other orthodox chess rules apply.
White Maximummer: Only White must play the geometrically longest moves, Black plays orthodoxal.
Sentinels Pion Advers: When a piece (not a Pawn) moves, a Pawn of the colour of the opposite side appears on the vacated square if it is not on the first or the last rank, and if there are less than 8 Pawns of that colour on the board.
Chameleon Chess: All pieces on the board which are displayed as orthodox Q, R, B, S, are Chameleons. A Pawn can promote only in Chameleonpieces. (Chameleon: On completing a move, a Chameleon (from classical standard type) changes into another piece, in the sequence QSBRQ… Promotion may be to a chameleon at any stage in the cycle).
Einstein Chess: All units (Ks excluded) change their type when they move, according to a precise pattern. For noncapture moves: Q>R, R>B, B>S, S>P, P remains P. For capturemoves: R>Q, B>R, S>B, P>S, Qremains Q.
No.1045 Peter Harris South Africa original – 10.04.2016 Dedicated to Vlaicu Crișan

Solutions: (click to show/hide)

white pe5
black kc5 pf6
h#2.5 (1+2) Circe Super AntiCirce White Maximummer Sentinels Pion Advers a) + Chameleon Chess b) + Einstein Chess

a)
1...e5*f6 [+bPf7][wPf6>g8=B] 2.Kc5c6[+wPc5] Bg8*f7=R [+bPf7][wRf7>c7] + {
} 3.Kc6*c5 [+wPc2][bKc5>d8][+wPc6] Rc7*f7=Q [+bPf7][wQf7>f8][+bPc7] #
b) 1...e5*f6=S [+bPf7][wSf6>a3] 2.Kc5b4[+wPc5] Sa3b5=P[+bPa3] {
} 3.Kb4*b5 [+wPb2][bKb5>a6][+wPb4] b2*a3=S [+bPa7][wSa3>c7] # {
(C+ by Popeye 4.59 and previous;
twin b) has cooks by Py 4.614.73; but is C+ by WinChloe;
twin a) has no solutions by WinChloe, but C+ by all Py versions. (JV))}

Peter, thank you very much for dedication!!
This problem is indeed a miraculous achievement, taking into consideration the twinning changing Chameleon Chess in Einstein and the highly dangerous AntiSuperCirce condition. Moreover, it shows convincingly the difficulties a chess programmer might encounter when developing a chess solving application!
The cooks reported in b) by Popeye seem to be due to the wrong implementation of Sentinellesfamily conditions (pawns left on 1st / 8th ranks). A bug was reported to the Popeyeteam and it seems it is still open.
For those who are interested in getting more details about this issue, please refer to: https://github.com/thomasmaeder/popeye/issues/205
Why Winchloé fails to see the solution from the first twin? Apparently Winchloé considers pieces captured on their rebirth squares must disappear, while Popeye applies the rebirth rule strictly to the definition.
To make things even more complicated, one may reluctantly ask: when should the emptiness of the rebirth square be checked? There are several conditions to be considered – in which order do we apply them? You will soon get a headache trying to formalize the answers to all these questions!
However, judging strictly from a composer’s point of view, we have to admire the composer’s skill. I can only guess the second twin was composed first (with its specific Sentinelles en pion advers model mate). The first twin, which might seem a “lucky discovery” it has also some very interesting specific points, with an exquisite control of white chameleon length movement.
Is this problem solverfriendly? Yes. Even for an experienced solver, definitely this composition is much too difficult. It takes a lot of time to solve it and there is no way to build the final positions other than trialerror.
Are 5 fairy conditions too many? Perhaps. But once you fully grasp the intricate yet subtle relationships between their usage, mixing both restrictive (White Maximum) and powerful (AntiSuperCirce) fairy conditions, and discover why they are all needed, you can only be amazed by the precision of the whole sequence.
One of a kind!
Thank you for your kind words Vlaicu.
Regarding the many solutions given by Py 4.73 for (b), it may help to give a full explanation.
The solutions appear because the program is not abiding by the Sentinelles Pionadvers condition.
The condition says Ps do not appear when a piece vacates a square on the first or last ranks.
Using one of the solutions as an example:
1…e5*f6=S[wSf6>e5][+bPf7] 2.Kc5b4[+wPc5] Se5*f7=B[wBf7>a2][+bPf7][+bPe5] 3.Kb4*c5[bKc5>a1][+wPc2][+wPb4] Ba2*f7=R[wRf7>c1][+bPf7][+bPa2] #
In the final position the program mistakenly assumes that the bK although on a first rank square a1 WOULD leave a wPa1 behind if it moved to b2 whereto as a consequence it cannot move – to escape mate – because it would be selfcheck.
On another matter:
I have been told that the Popeye input specifications in Py 4.73 can be differently formatted whereby there are NO SOLUTIONS for (b). I do not know what the two different inputs are. I also do not know what effect the differences have. I am wondering how many do know. It makes life difficult for composers, solvers and for Julia.
Whilst this is an unsatisfactory state of affairs, I do not know how it can be remedied!
[I have Py 4.47]
About Popeye input. Peter’s input for b) was “cond whitemaxi antisupercirce circe einstein sentinelles pionadvers”. The latest versions of Popeye interpret it as 4 conditions, not 5:
b) Circe Einstein
WhiteMaximummer
Sentinelles PionAdvers
AntiCirce Super
From Popeye manual, I’ve taken just some of mentioned options as an example:
To avoid this kind of confusion, “einstein” should be specified before the circe condition, as follows:
cond whitemaxi einstein antisupercirce circe sentinelles pionadvers
Alternatively, the conditions can be specified separately, as follows:
cond whitemaxi
cond antisupercirce
cond circe
cond einstein
cond sentinelles pionadvers
Popeye gives two different outputs according to whether the Input for Condition is
Einstein Circe
or
Circe Einstein
Popeye has made Circe Einstein a single condition.
When a composer who is unaware of Circe Einstein – and there must be many – wishes to use the Einstein and Circe conditions, there is a 50/50 chance that his/her Input will be erroneous.
And he/she will be greatly perplexed if Circe Einstein was the Input used!
To avoid this unsatisfactory state of affairs, Popeye should rename Circe Einstein.
The name could for example be Cirein.
The suggestion to rename Circe Einstein must have been made “tongue in cheek”, because there are a huge number of ways of combining all the options and they can’t all be renamed. Perhaps a suitable delimiter could be used between options. For example, using a backslash the input for EquipollentsCirce Einstein would be as follows:
condition Circe \ Equipollents \ Einstein
That would remove confusion and ensure that the new format is not used unintentionally.
Dear Geoff,
It was not said “tongue in cheek”.
There is a definition of Circe and there is a definition of Einstein.
There is also Circe Einstein.
Why is there no solution with Circe Einstein?
All 5 moves in the solution given are in conformity with Circe and with Einstein.
The question of in what order the two conditions are applied does not arise.
A new element has been introduced. This is why Circe Einstein should be renamed..
What is the definition of Circe Einstein?
Dear Peter,
A recent version of Popeye introduced a very powerful way of specifying Circe and AntiCirce options. Using these options, new Circe/AntiCirce varieties can be created. For example, under the category of “Behaviour in case of occupied rebirth square” the options are “Relaxed”, “Strict”, “Assassin”, “Volcanic” and “Parachute”. A while ago I tried the “Relaxed” option with AntiCirce to create a new condition that I used in problem no.905 on this site. The condition had not been used before, but I was able to create it and it has now been added to WinChloe as “Captures autorisées si case de renaissance occupée”.
Another category is “Adaptation of the reborn piece’s walk”, for which the options are “Chameleon”, “Turncoat”, “Einstein” and “ReversalEinstein”. If “Circe Einstein” is specified then when a piece is captured it transforms to the next piece in Einstein sequence before being reborn. For example, a white rook captured on a white square would be reborn as a white bishop on f1, and a white knight captured on the cfile would be reborn as a white pawn on c2. “Circe Einstein” does not mean “Circe” + “Einstein”. It is a new condition that has been created using the powerful options available in Popeye. It is pointless trying to assign a new name for each possible combination, because the options can be combined in countless weird and wonderful ways, some of which don’t even make sense. It is great fun to try out these new options, although when I did so I found many bugs!
Dear Geoff,
Thank you for the information.
I did not know about subjecting a captured piece to Einstein rules.
I suggest Popeye implements the following:
(1) Entering as input Circe Einstein or Einstein Circe means the same
(2) Rename the present Circe Einstein to CirceEinstein
This will avoid the 50/50 chance of error I mentioned previously.
I suggest you formulate and post herein the definition of Circe Einstein for all to see.
Dear Geoff,
Einstein Chess: All units (Ks excluded) change their type when they move, according to a precise pattern. For noncapture moves: Q>R, R>B, B>S, S>P, P remains P. For capturemoves: R>Q, B>R, S>B, P>S, Q remains Q.
Based on what you said about Circe Einstein, why does it not give a solution to the problem? [I am told it doesn’t]
1…e5*f6=S [+bPf7][wSf6>a3] 2.Kc5b4[+wPc5] Sa3b5=P[+bPa3] 3.Kb4*b5 [+wPb2][bKb5>a6][+wPb4] b2*a3=S [+bPa7][wSa3>c7] #
I would be interested in the explanation.
The explanation could affect the definition you are undoubtedly working on.
Julia may put your definition in her Library of definitions.
On one side, it might be a source of confusion to name A B a condition which is not equivalent to A+B. On the other side this is already the case – Circe Kamikake for example – the capturing piece, which should disappear according to Kamikake rules, in fact rebirths according to Circe rules (more precisely to Anticirce rules, as we are speaking about a capturing unit).
As it exists such antecedents, I would say Circe Einstein is correct, as far as the composer (and publisher) take care to avoid any possible confusion – by putting the set of different conditions on different lines. With this simple and customary trick, it becomes impossible to confound a problem with one condition
Circe Einstein
with a problem with two conditions
Circe
Einstein
Concerning the idea that Conditions be entered:
Condition Einstein, Condition Circe or on different lines or in different order:
The suggestion does not take cognisance of the fact that many if not most composers are unaware of the existence of the condition Circe Einstein.
It would never cross the minds of such composers who wanted to use the two conditions, Circe and Einstein, to enter them into Popeye in the manner suggested.
So it does not address the issue of 50% input error – and perplexed users.
If Popeye did as I suggested namely:
(1) Make entering as input Circe Einstein or Einstein Circe mean the same thing
(2) Rename the present Circe Einstein to CirceEinstein
then in practical terms:
Circe and Einstein could be entered in any order 99% of the time.
CirceEinstein would be entered 1% of the time by composers who desired that condition.
[Para (1) above sounds like plain commonsense to me].
My above post mainly addressed to solvers faced to a diagram. If they don’t know THE condition Circe Einstein, well they may learn it! The important point is that the statement of the problem must be unambiguous.
Concerning Popeye, my suggestion is to avoid the possibility to enter several conditions after a unique symbol “cond”. As a consequence, “cond Circe Einstein” would mean that we are working under THE condition Circe Einstein, while “cond Circe cond Einstein” – equivalent to “cond Einstein cond Circe” – would mean that we are working under TWO conditions – Circe and Einstein.
Dear Peter,
You suggested that I “formulate and post herein the definition of Circe Einstein for all to see”. I have no inside knowledge, so I can only work with the documentation supplied with Popeye. In other words, as far as definitions go, we are all in the same boat. Nevertheless I will attempt a definition, even though there doesn’t seem much point, because as far as I am aware no problem using this condition has ever been composed.
Circe Einstein: Upon being captured, units transform in the sequence Q>R>B>S>P>P and are then reborn on their Circe rebirth square. If the rebirth square is occupied then the unit disappears as usual.
You gave a suggested solution using Circe Einstein, beginning with 1…exf6=S. However, this is not a valid move, because after 1…exf6 the capturing pawn does not transform according to Einstein rules.
I agree that the current method for specifying Circe conditions in Popeye is unsatisfactory. A possible way to fix things would be to require a delimiter (such as “\”) to be used between Circe options, as I suggested earlier. If no delimiter is used then “Circe Einstein” or “Einstein Circe” would mean “Circe + Einstein”, as any untrained user of Popeye would expect.
Dear Geoff,
Surely it is not pointless to find out what the definition of Circe Einstein is. If it was, the last 10 comments would be pointless. [They have nothing to do with my problem].
I would guess that Circe Einstein only alters the fate of a captured piece – that the rules concerning a capturing piece would not be altered.
If this is so the e5*f6=S would be a valid move and your attempted definition would be wrong.
I have been told that Circe Einstein solves the problem on an H#2 basis – that is from the position after the first move – wSa3, bKc5, bPf7. The last move in the solution to would be b2*a3=S.
“We are all in the same boat” you wrote. It is indeed a strange boat that we do not know how to find out the definition of Circe Einstein.
Dear Peter,
It is true that Circe Einstein solves the problem on an H#2 basis, but the last move is not b2*a3=S. The solution is as follows:
1.Kc5b4[+wPc5] Sa3b5[+bPa3] 2.Kb4*b5[bKb5>a8][+wPb2][+wPb4] b2*a3[wPa3>c8=Q][+bPa7] #
The Circe Einstein effects are:
2.Kxb5[+wPb2]
{captured wSb5 transforms to a pawn and is reborn on c2}
2…bxa3[+bPa7]
{captured bP remains as a pawn and is reborn on a7}
There are no “EinsteinChess” effects, because EinsteinChess has not been specified as one of the fairy conditions.
I think you are being misled by the use of the word “Einstein” in “Circe Einstein”. Popeye allows one to specify how a captured piece will be transformed prior to being reborn. One of the options is “Einstein”, which means that the captured piece will be transformed in accordance with Einstein rules. If you specify “Circe Einstein” it definitely does NOT mean that the condition EinsteinChess will somehow come into effect.
It is true that there is no place where a definition of Circe Einstein is explicitly given. However that does not mean we are helpless. The Popeye documentation gives enough information to work things out, and I’m confident that the definition I gave earlier is correct. If there are any doubts then the answer can be found by experimentation. For example, consider the following Popeye code:
stipulation h~0.5
pieces white pd4 black se5
condition Circe Einstein
The “h~” stipulation means “any helpmove”.
The output from this is as follows:
1…d4d5
1…d4*e5[+bPe7]
The white pawn has 2 options: either move one square ahead, or capture the black knight (which transforms to a pawn and is reborn on e7). There is no suggestion of the white pawn being transformed in accordance with EinsteinChess.
Thank you Geoff.
I see that I have been wrongly thinking that Circe Einstein is equivalent to Einstein Circe Einstein.