X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=whats_new%2Frules%2FBetza.html;h=d64d806d4eaf45ed89e43e96419571e1b281f936;hb=d783e0c4dab936f6f07cc2cf38d97c617d6c3488;hp=20ea851590e874881358c8b2a0a23b40312a5544;hpb=4d5a9416969353d11450b39b3b1403405098472a;p=xboard.git diff --git a/whats_new/rules/Betza.html b/whats_new/rules/Betza.html index 20ea851..d64d806 100644 --- a/whats_new/rules/Betza.html +++ b/whats_new/rules/Betza.html @@ -1,514 +1,903 @@ - -
-(Extended) Betza notation -
- -

Extended Betza notation

-

-Ralph Betza invented a compact notation to encode moves of a piece, -which is now in wide-spread use for description of Chess variants. -This page describes a version of it that has been extended in several ways. -Some of these extensions were embraced from another proposed extension scheme, -'Bex notation' by David Howe, others are entirely new. -These new extensions from the original Betza notation are marked in yellow. -

-Betza notation decomposes the piece into 'atoms', -which represent the set of all (8-fold-)symmetry-equivalent moves of a certain distance. -For example all eight Knight moves, or all diagonal moves of the King. -Each 'atom' is written as a single capital (e.g. N for the Knight moves), -which is very efficient when you are dealing with pieces that are maximally symmetric -(which most pieces indeed are). -Atoms refer to single unblockable leaps of a certain distance. -Pieces that can repeat the same leap again and again until they encounter an obstacle -(sliders or riders, such as Rook) -are very common. -Those moves are indicated by writing the number of steps the piece can maximally make behind the atom, -where '0' can be used to indicate 'any number of steps'. -

-

-The choice to treat moves as sets that go in all directions goes at the expense of the compactness when dealing with asymmetric pieces. -(This is a cheap price to pay, as asymmetric pieces are much less common than fully symmetric ones.) -To describe moves of asymmetric pieces Betza notation uses lower-case prefixes to identify which sub-set of the atom we mean. -Such as f (forward) or r (right), or combinarions of those like fr. -E.g. fR decribes a 'Rook' that only moves in the forward direction (i.e., the Shogi Lance). -Lower-case prefixes are also used to specify the move is not a general one -(i.e. valid as capture and non-capture, the normal situation in Chess-like games), -but can only be used in limited ways (e.g. capture only, non-jumping, capture after jumping). -

-

The basic atoms

-
-

-The following table describes the most important atoms -

-
-Atom - -Vector - -Piece -
-O - -(0,0) - -Null move (Taikyoku-Shogi Lion can do this) -
-W - -(1,0) - -Wazir (Courier Chess) -
-F - -(1,1) - -Ferz (Shatranj) -
-D - -(2,0) - -Dababba -
-A - -(2,2) - -Alfil (Shatranj) -
-I - -(3,0) - -Tripper -
-L - -(3,1) - -Long Knight (aka Camel) -
-J - -(3,2) - -Zebra -
-G - -(3,3) - - -
-
-

-Laid out on the board, (standing at O),
the move encoding is as follows: -
-......... -
-.GJLHLJG. -
-.JANDNAJ. -
-.LNFWFNL. -
-.HDWOWDH. -
-.LNFWFNL. -
-.JANDNAJ. -
-.GJLHLJG. -
-......... -
-

-
-

-For longer-range atoms no letters are defined. -In the rare cases they occur, these can be written using the numeric coordinates of their leap vector, -e.g. (4,1) for the Giraffe leap. -Note this still implies the move goes in all directions (i.e. (4,1) also means (4,-1), (-4,1), (1,4), ...), -and thus still does a lot for compactness. -A piece that only leaps 4 forward and 1 left or right would be an f(4,1). -

- -

Modifier prefixes

-

-The following table lists possible prefixes to the atoms. -Prefixes can be combined, in which case the sub-sets of move types they correspond to are joined. -E.g. fb means forward and backward moves (but not sideways). -So even prefixes with opposite meaning are not really conflicting; -they could be superfluous, however. -(E.g. mc would mean both non-capture and capture, which is the default in absence of prefixes anyway.) -

-
-prefix - -short for - -meaning -
-Move modality -
-c - -capture - -Captures only -
-m - -move - -Move but not capture -
-Move blocking -
-n - -non-jumping - -Cannot jump over occupied square -
-j - -jump one - -Must jump exactly one -
-jj - -jump many - -Can jump over any number of pieces -
-Hopping -
-p - -Pao (=Canon) - -(Obsolete?) Capture if move jumps over one obstacle, non-capture if it does not jump -
-g - -Grasshopper - -(Obsolete?) Must land directly behind first obstacle -
-q - -Circular - -(Obsolete?) Basic step repeated at an angle, until it closes on itself -
-z - -Zig-zag - -(Obsolete?) Repeat step alternates angle between two values. -
-o - - - -wraps around on cylinder board -
-directional-subset and other geometry indicators -
-f - -forward - -most-forward single or pair of moves of symmetry-equivalent moves -
-b - -backward - -most-backward single or pair of moves of symmetry-equivalent moves -
-l - -left - -left-most single or pair of moves of symmetry-equivalent moves -
-r - -right - -right-most single or pair of moves of symmetry-equivalent moves -
-s - -sideways - -short for lr -
-v - -vertical - -short for fb -
-a - -all - -short for vs (default on atoms specifying complete move, but can be needed in chaining) -
-ff - -forward - -obsolete notation for forward-most two of 8 symmetry-equivalent moves -
-fh - -forward half - -forward-most four of 8 symmetry-equivalent moves -
-fs - -sideway-forward - -fh but not f -
-etc. - - - -Similar for b (bb, bh, bs), l and r -
-i - -initial - -Initial move only (for pieces that have not moved yet) -
-e - -equal - -equal in length to previous step, measured in board steps (see section on chaining) -
-

-For example, fmWfcF is a Pawn: non-captures forward to a W square, captures to the two forward F squares. -Pretty complicated, but the Pawn is a very complex piece (asymmetric, and divergent capture/non-capture). -Note that fr and rf are not the same on 'oblique' (= not orthogonal or diagonal) atoms, which have 8 moves, -and that they might not be what you intuitively think, as fs = fl + fr. -

Grouping

-

-Grouping of atoms, modifiers and exponents is possible with parentheses. -This can be done for readability, -or for overruling operator priorities. -(fmW)(fcF) might read more easily than fmWfcF. -The parentheses do not have any meaning in themselves. -'Distributivity' also works for modifier prefixes: -m(AB) where m is a string of modifiers and A and B are atoms, (or expressions grouped in parentheses), -is defined to mean mAmB. -Some shortcuts for commonly used combinations of atoms exist; -these can be seen as implicit grouping of the involved atoms. -

-
-shortcut - -stands for - -orthodox piece -
-K - -WF - -King -
-B - -F0 (FF) - -Bishop -
-R - -W0 (WW) - -Rook -
-Q - -RB - -Queen -
-C - -L - -Camel -
-Z - -J - -Zebra -
- -

Chaining moves

-

-When a number of atoms is concatenated, like WF, it joins their move sets. -So the piece described by WF moves either as W or as F, i.e. one step diagonal, or one step orthogonal. -That means it is the King of orthodox Chess! -(From the notation you cannot see whether it is royal yet; -the main purpose of the notation is to convey how it moves. -But a 'k' prefix could be used to indicate royalty, when this is of relevance.) -

-

-It is also possible to specify that certain moves have to be performed sequentially, one after the other. -For instance because something of importance happens or should be noted on an intermediate square. -Such as for pieces that can be blocked on squares they cannot visit ('lame leapers'), -or that have to hop over other pieces in a specific pattern. -The simplest example of this, however, is repetition of the same step in the same direction, -as in sliding or riding pieces, such as a Rook. -The far moves of such a piece can indeed be blocked by an obstacle closer by on their path, -although it can then always reach that square itself as well. -Such moves are indicated by 'exponentiation': a number after the atom indicates how often the step may be repeated. -E.g. F3 would be a piece that slides diagonally (i.e. like a Bishop), upto a maximum of 3 steps. -To indicate an arbitrary number of steps can be taken, we use 0 (zero) for the exponent. -(This because infinity is not in the ASCII character set, and 0 would be pointless when taken at face value.) -So W0 would be the Rook, sliding arbitrarily far orthogonally, and F0 the Bishop. -(Old notation for this would be WW and FF, but in the extended context these would be troublesome.) -

-Not all multi-step moves are as regular as simple sliders, however. -Some 'bent' sliders can turn corners, for instance. -The 'Griffon' is an example that first moves one step diagonally, and then continues outward as a Rook. -It does not have to go beyond the corner, though; just like a normal Rook it can make the first step of its move only. -And if it encounters something on that first step, it is blocked, and never gets to the rooky part of its move. -To describe this trajectory we cannot use exponentiation, but have to explicitly write the chain: FtR. -Here the 't' is the chaining operator, that distinguishes this from FR, -which would mean a piece that steps one diagonally or moves like Rook (a Shogi Dragon Horse). -The 't' is because of 'and then', but also because the move could be terminated at that point, -and there is no requirement to visit the later parts of the specified trajectory. -

-

-There are other forms of chaining, where the 'connecting square' can not be visited. -(I.e. no termination there.) -The Xiangqi Horse moves one orthogonal step, and then (without stopping) one step diagonally outward, -mimicking the move of a Knight, but blockable on the intermediate square. -This is written as the chain W-F. -The chaining operator '-' indicates the move cannot be terminated at that point (ending on the connection square), -but must continue. -If it cannot, because the square was occupied, the move described by the chain is considered blocked, and cannot be made. -

- - - - - - - - - -
-Overview of chaining operators -
tthenterminate on connection square (if empty or enemy) or continue (if empty).
-blockmust continue if connection square empty; otherwise entire path is considered blocked
+hopconnection square must be occupied and remains untouched; move must go on from there
?ownconnection square must contain own piece and remains untouched; move must go on from there
!foeconnection square must contain enemy and remains untouched; move must go on from there
xcaptureconnection square must contain enemy, which is captured; move must go on from there
ddestroyconnection square must be occupied, friend or foe there is destroyed; must go on
ysplitconnection square is one step before first obstacle; must continue from there
-

-Chaining implies continuation in the most similar direction. -Should you need to deviate from that, e.g. because the trajectory doubles back on itself, -directional modifiers must be used. -The continuation steps are to be described in a coordinate system relative to the previous step, however. -So W-rW-lW makes one step, (say moving North), then turns right for another step (moving East), and then turns left compared to that second step, -meaning it is moving North again! -So in the end you arrive at (1,2), over (0,1) and (1,1). -This is a Knight move that can only be made if both the intermediate squares are empty, -even worse than the Xiangqi Horse (which at least did not care about (1,1))! -The latter would be described by W-F. -The F after '-' would by default mean fF, and in the orientation of the preceding orthogonal step -this would imply a pair of outward moves, fl + fr. -

-

-Some examples that use the other operators: -Q+K is the Grasshopper: it must move as Queen to an occupied square (the 'support'), -(the first one it encounters, as Queens do not jump!), -and then continue with a single K step in the same direction (leaving the occupant of the square alone), -to land on the square directly behind the support. -where it can capture or just move. -mRcR+R is the Xiangqi Cannon: the first mR specifies its non-capture move, which is that of a normal Rook. -The concatenated cR+R is the capturing alternative; -it moves as R to an occupied square, and then continues as R in the same direction for a capture. -Note that the 'c' prefix applies to the complete R+R path (a once jumping Rook); -the operator priorities are such that the binary operators t-+xdy couple more tightly than the prefix modifiers mc. -The latter are only allowed in front of a complete path, to specify what you can do at the end of it, -and not on individual steps of the path, where the chaining operators already specify this. -

-

Weird captures

-

-The x operator allows description of pieces with unconventional capture, -as it specifies moving away from the capture square. -Normal in Chess is of course that you only captured what was on the square you end on. -But even in orthodox Chess e.p. capture exists as an exception to that. -It could be written as frmWxlW, which, as we have seen, means frm(WxlW) -This expreses capture through a W step, and then turning left for a second W step, -so that overall you make an F step in an L form. -The frm prefix to this F step means that it can not capture on the final square -(the Pawn in e.p. capture always goes to an empty square), -to your forward right. -I.e. you started moving right, then turned left to move forward. -So the continuation square you pass over to remove the Pawn is to your right. -(There is no way to express that you can only do this to Pawns, however, let alone to Pawns that just made a double push.) -

-

-This shows the general encoding strategy: if you capture pieces not on your destination square, as 'side effect' to the move, -you lay out a path that tramples all the pieces that are captured, so that the sub-steps are all normal replacement captures. -E.g. a Checker would be fmFfmFxF. There the fmF part is the non-capture move, -but the interesting part is the capture: -one step diagonal (which must be to an occupied square, which we capture), -and then straight on (which is now 'forward' in the local frame of reference set up by the first step) -to the next square, for an overall A step. -This step must be fmA, i.e. in one of the forward diagonal directions, not capturing anything on the square where it lands. -'Rifle capture' by a Rook would be RxebR, i.e. first capture something in the normal way, -and then manditorily withdraw in the direction from which you came (b) by an R move of the same length. -No overall move, but the victim is gone! -A Ultima Withdrawer, which destroys the adjacent piece from which it moves away, would be written as -mQmKxbK-Q. The capture part, m(KxbK-Q) specifies capture to the adjacent piece, reversing that step (b) to your square of origin, -and then mandatorily continuing in that direction with a Queen non-capture move (the victim already in your pocket). -The hit-and-run or double capture of a Lion would be KxaK: capture the adjacent piece, -after which you must continue by another King step in any direction relative to the first, capturing a second victim or just moving. -ven the rifle capture (igui) is included in this. -Its turn-passing move would be K-bK. -Which is different from O, because it can only be done if the Lion is adacent to an empty square, -while a piece that has an O atom can pass uncondiionally. -For definiteness, when directional modifiers apply to a path that results in a return to the starting square, -they will be referenced to the direction of the first step of the path. -

-

More about exponentiation

-

-Exponentiation by default implies repeated application of the 't' operator. -But it can be used to indicate repeate application of other operators too. -We define AmN, with A an atom or a group within parentheses, m a string of modifiers, and N a number, -to mean AmAmAm...mA with N factors A and N-1 operators between them. -If the modifier string m does not contain one of the chaining operators, it is prefixed with the default 't'. -If it does not include any directional modifiers, it is suffixed with 'f'. -So W3 means WtfWtfW, 1 to 3 orthogonal steps in the same direction (which is what the 'f' specifies). -But W-3 would mean W-fW-fW, which is exactly 3 such steps. -And Wx3 would be exactly 3 steps where the first 2 mandatorily capture. -

-

-By including directonal indicators, you can describe curved trajectories. -Nrf8 would mean NtrfNtrfN..., upto 8 Knight moves, each consecutive move bending ~45 degrees right from the previous one -(because that is what rf means; the first opportnity to the right that is not straight ahead). -This describes the Rose! -Circular riders fit into the system, and there is no need for a separate prefix to describe them. -With grouping you can do more: (FtlF)r0 expands to FtlFtrFtlFtrFtl..., an arbitrary number of diagonal steps, -that alternately turn 90 degrees left or right. -In other words, the Crooked Bishop. -There is also no real need for the z prefix in this extended Betza notation. -The exponentiation can describe it much more precisely, -specifying exactly how Crooked it is. -

+ + (Extended) Betza notation + + + + +

Extended Betza notation

+ +

Ralph Betza invented a compact notation to encode moves of a + piece, which is now in wide-spread use for description of Chess + variants. This page describes a version of it that has been + extended in several ways. Some of these extensions were embraced + from another proposed extension scheme, 'Bex notation' by David Howe, others + are entirely new. These new extensions from the original Betza + notation are marked in + yellow.

+ +

Betza notation decomposes the piece into 'atoms', which + represent the set of all (8-fold-)symmetry-equivalent moves of a + certain distance. For example all eight Knight moves, or all + diagonal moves of the King. Each 'atom' is written as a single + capital (e.g. N for the Knight moves), which is very efficient + when you are dealing with pieces that are maximally symmetric + (which most pieces indeed are). Atoms refer to single unblockable + leaps of a certain distance. Pieces that can repeat the same leap + again and again until they encounter an obstacle (sliders or + riders, such as Rook) are very common. Those moves are indicated + by writing the number of steps the piece can maximally make + behind the atom, where '0' can + be used to indicate 'any number of steps'.

+ +

The choice to treat moves as sets that go in all directions + goes at the expense of the compactness when dealing with + asymmetric pieces. (This is a cheap price to pay, as asymmetric + pieces are much less common than fully symmetric ones.) To + describe moves of asymmetric pieces Betza notation uses + lower-case prefixes to identify which sub-set of the atom + we mean. Such as f (forward) or r (right), or combinarions of + those like fr. E.g. fR decribes a 'Rook' that only moves in the + forward direction (i.e., the Shogi Lance). Lower-case prefixes + are also used to specify the move is not a general one (i.e. + valid as capture and non-capture, the normal situation in + Chess-like games), but can only be used in limited ways (e.g. + capture only, non-jumping, capture after jumping).

+ +

The basic atoms

+ + + + + + + +
+

The following table describes the most important + atoms

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
AtomVectorPiece
O(0,0)Null move (Taikyoku-Shogi Lion can do this)
W(1,0)Wazir (Courier Chess)
F(1,1)Ferz (Shatranj)
D(2,0)Dababba
A(2,2)Alfil (Shatranj)
I(3,0)Tripper
L(3,1)Long Knight (aka Camel)
J(3,2)Zebra
G(3,3)
+
+

Laid out on the board, (standing at O),
+ the move encoding is as follows:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
.........
.GJLHLJG.
.JANDNAJ.
.LNFWFNL.
.HDWOWDH.
.LNFWFNL.
.JANDNAJ.
.GJLHLJG.
.........
+
+ +

For longer-range atoms no letters are defined. In the rare + cases they occur, these can be + written using the numeric coordinates of their leap + vector, e.g. (4,1) for the Giraffe leap. Note this still + implies the move goes in all directions (i.e. (4,1) also means + (4,-1), (-4,1), (1,4), ...), and thus still does a lot for + compactness. A piece that only leaps 4 forward and 1 left or + right would be an f(4,1).

+ +

Modifier prefixes

+ +

The following table lists possible prefixes to the atoms. + Prefixes can be combined, in which case the sub-sets of move + types they correspond to are joined. E.g. fb means forward + and backward moves (but not sideways). So even prefixes + with opposite meaning are not really conflicting; they could be + superfluous, however. (E.g. mc would mean both non-capture and + capture, which is the default in absence of prefixes anyway.)

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
prefixshort formeaning
Move modality
ccaptureCaptures only
mmoveMove but not capture
Move blocking
nnon-jumpingCannot jump over occupied square
jjump oneMust jump exactly one
jjjump manyCan jump over any number of pieces
Hopping
pPao (=Canon)(Obsolete?) + Capture if move jumps over one obstacle, non-capture if it + does not jump
gGrasshopper(Obsolete?) + Must land directly behind first obstacle
qCircular(Obsolete?) + Basic step repeated at an angle, until it closes on + itself
zZig-zag(Obsolete?) + Repeat step alternates angle between two values.
owraps around on cylinder board
directional-subset and other geometry + indicators
fforwardmost-forward single or pair of moves of + symmetry-equivalent moves
bbackwardmost-backward single or pair of moves of + symmetry-equivalent moves
lleftleft-most single or pair of moves of symmetry-equivalent + moves
rrightright-most single or pair of moves of symmetry-equivalent + moves
ssidewaysshort for lr
vverticalshort for fb
aallshort for vs (default on atoms specifying complete move, + but can be needed in chaining)
ffforwardobsolete notation for forward-most two of 8 + symmetry-equivalent moves
fhforward halfforward-most four of 8 symmetry-equivalent moves
fssideway-forwardfh but not f
etc.Similar for b (bb, bh, bs), l and r
iinitialInitial move only (for pieces that have not moved + yet)
eequalequal in length to previous step, measured in board steps + (see section on chaining)
+ +

For example, fmWfcF is a Pawn: non-captures forward to a W + square, captures to the two forward F squares. Pretty + complicated, but the Pawn is a very complex piece (asymmetric, + and divergent capture/non-capture). Note that fr and rf are not + the same on 'oblique' (= not orthogonal or diagonal) atoms, which + have 8 moves, and that they might not be what you intuitively + think, as fs = fl + fr.

+ +

Grouping

+ +

Grouping of atoms, + modifiers and exponents is possible with parentheses. This + can be done for readability, or for overruling operator + priorities. (fmW)(fcF) might read more easily than fmWfcF. The + parentheses do not have any meaning in themselves. + 'Distributivity' also works for modifier prefixes: m(AB) where m + is a string of modifiers and A and B are atoms, (or expressions + grouped in parentheses), is defined to mean mAmB. Some shortcuts + for commonly used combinations of atoms exist; these can be seen + as implicit grouping of the involved atoms.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
shortcutstands fororthodox piece
KWFKing
BF0 (FF)Bishop
RW0 (WW)Rook
QRBQueen
CLCamel
ZJZebra
+ +

Chaining moves

+ +

When a number of atoms is concatenated, like WF, it joins + their move sets. So the piece described by WF moves either as W + or as F, i.e. one step diagonal, or one step orthogonal. That + means it is the King of orthodox Chess! (From the notation you + cannot see whether it is royal yet; the main purpose of the + notation is to convey how it moves. But a 'k' prefix could be used to + indicate royalty, when this is of relevance.)

+ +

It is also possible to specify that certain moves have to be + performed sequentially, one after the other. For instance because + something of importance happens or should be noted on an + intermediate square. Such as for pieces that can be blocked on + squares they cannot visit ('lame leapers'), or that have to hop + over other pieces in a specific pattern. The simplest example of + this, however, is repetition of the same step in the same + direction, as in sliding or riding pieces, such as a Rook. The + far moves of such a piece can indeed be blocked by an obstacle + closer by on their path, although it can then always reach that + square itself as well. Such moves are indicated by + 'exponentiation': a number after the atom indicates how often the + step may be repeated. E.g. F3 would be a piece that slides + diagonally (i.e. like a Bishop), upto a maximum of 3 steps. To + indicate an arbitrary number of steps can be taken, we use 0 + (zero) for the exponent. (This because infinity is not in the + ASCII character set, and 0 would be pointless when taken at face + value.) So W0 would be the Rook, sliding arbitrarily far + orthogonally, and F0 the Bishop. (Old notation for this would be + WW and FF, but in the extended context these would be + troublesome.)

Not all multi-step moves are as regular as + simple sliders, however. Some 'bent' sliders can turn corners, + for instance. The 'Griffon' is an example that first moves one + step diagonally, and then continues outward as a Rook. It + does not have to go beyond the corner, though; just like a normal + Rook it can make the first step of its move only. And if it + encounters something on that first step, it is blocked, and never + gets to the rooky part of its move. To describe this trajectory + we cannot use exponentiation, but have to explicitly write the + chain: FtR. Here the 't' is the chaining operator, that + distinguishes this from FR, which would mean a piece that steps + one diagonally or moves like Rook (a Shogi Dragon Horse). + The 't' is because of 'and then', but also because the + move could be terminated at that point, and there is no + requirement to visit the later parts of the specified trajectory. + +

There are other forms of chaining, where the 'connecting + square' can not be visited. (I.e. no termination there.) The + Xiangqi Horse moves one orthogonal step, and then (without + stopping) one step diagonally outward, mimicking the move of a + Knight, but blockable on the intermediate square. This is written + as the chain W-F. The chaining operator '-' indicates the move + cannot be terminated at that point (ending on the connection + square), but must continue. If it cannot, because the square was + occupied, the move described by the chain is considered blocked, + and cannot be made.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Overview of chaining operators
tthenterminate on connection square (if empty or enemy) or + continue (if empty).
-blockmust continue if connection square empty; otherwise + entire path is considered blocked
+hopconnection square must be occupied and remains untouched; + move must go on from there
?ownconnection square must contain own piece and remains + untouched; move must go on from there
!foeconnection square must contain enemy and remains + untouched; move must go on from there
xcaptureconnection square must contain enemy, which is captured; + move must go on from there
ddestroyconnection square must be occupied, friend or foe there + is destroyed; must go on
ysplitconnection square is one step before first obstacle; must + continue from there
+ +

Chaining implies continuation in the most similar direction. + Should you need to deviate from that, e.g. because the trajectory + doubles back on itself, directional modifiers must be used. The + continuation steps are to be described in a coordinate system + relative to the previous step, however. So W-rW-lW makes one + step, (say moving North), then turns right for another step + (moving East), and then turns left compared to that second step, + meaning it is moving North again! So in the end you arrive at + (1,2), over (0,1) and (1,1). This is a Knight move that can only + be made if both the intermediate squares are empty, even worse + than the Xiangqi Horse (which at least did not care about (1,1))! + The latter would be described by W-F. The F after '-' would by + default mean fF, and in the orientation of the preceding + orthogonal step this would imply a pair of outward moves, fl + + fr.

+ +

Some examples that use the other operators: Q+K is the + Grasshopper: it must move as Queen to an occupied square (the + 'support'), (the first one it encounters, as Queens do not + jump!), and then continue with a single K step in the same + direction (leaving the occupant of the square alone), to land on + the square directly behind the support. where it can capture or + just move. mRcR+R is the Xiangqi Cannon: the first mR specifies + its non-capture move, which is that of a normal Rook. The + concatenated cR+R is the capturing alternative; it moves as R to + an occupied square, and then continues as R in the same direction + for a capture. Note that the 'c' prefix applies to the complete + R+R path (a once jumping Rook); the operator priorities are such + that the binary operators t-+xdy couple more tightly than the + prefix modifiers mc. The latter are only allowed in front of a + complete path, to specify what you can do at the end of it, and + not on individual steps of the path, where the chaining operators + already specify this.

+ +

Weird captures

+ +

The x operator allows description of pieces with + unconventional capture, as it specifies moving away from the + capture square. Normal in Chess is of course that you only + captured what was on the square you end on. But even in orthodox + Chess e.p. capture exists as an exception to that. It could be + written as frmWxlW, which, as we have seen, means frm(WxlW) This + expreses capture through a W step, and then turning left for a + second W step, so that overall you make an F step in an L form. + The frm prefix to this F step means that it can not capture on + the final square (the Pawn in e.p. capture always goes to an + empty square), to your forward right. I.e. you started moving + right, then turned left to move forward. So the continuation + square you pass over to remove the Pawn is to your right. (There + is no way to express that you can only do this to Pawns, however, + let alone to Pawns that just made a double push.)

+ +

This shows the general encoding strategy: if you capture + pieces not on your destination square, as 'side effect' to the + move, you lay out a path that tramples all the pieces that are + captured, so that the sub-steps are all normal replacement + captures. E.g. a Checker would be fmFfmFxF. There the fmF part is + the non-capture move, but the interesting part is the capture: + one step diagonal (which must be to an occupied square, which we + capture), and then straight on (which is now 'forward' in the + local frame of reference set up by the first step) to the next + square, for an overall A step. This step must be fmA, i.e. in one + of the forward diagonal directions, not capturing anything on the + square where it lands. 'Rifle capture' by a Rook would be RxebR, + i.e. first capture something in the normal way, and then + manditorily withdraw in the direction from which you came (b) by + an R move of the same length. No overall move, but the victim is + gone! A Ultima Withdrawer, which destroys the adjacent piece from + which it moves away, would be written as mQmKxbK-Q. The capture + part, m(KxbK-Q) specifies capture to the adjacent piece, + reversing that step (b) to your square of origin, and then + mandatorily continuing in that direction with a Queen non-capture + move (the victim already in your pocket). The hit-and-run or + double capture of a Lion would be KxaK: capture the adjacent + piece, after which you must continue by another King step in any + direction relative to the first, capturing a second victim or + just moving. ven the rifle capture (igui) is included in this. + Its turn-passing move would be K-bK. Which is different from O, + because it can only be done if the Lion is adacent to an empty + square, while a piece that has an O atom can pass uncondiionally. + For definiteness, when directional modifiers apply to a path that + results in a return to the starting square, they will be + referenced to the direction of the first step of the path.

+ +

More about exponentiation

+ +

Exponentiation by default implies repeated application of the + 't' operator. But it can be used to indicate repeate application + of other operators too. We + define AmN, with A an atom or a group within parentheses, m a + string of modifiers, and N a number, to mean AmAmAm...mA with N + factors A and N-1 operators between them. If the modifier + string m does not contain one of the chaining operators, it is + prefixed with the default 't'. If it does not include any + directional modifiers, it is suffixed with 'f'. So W3 means + WtfWtfW, 1 to 3 orthogonal steps in the same direction (which is + what the 'f' specifies). But W-3 would mean W-fW-fW, which is + exactly 3 such steps. And Wx3 would be exactly 3 steps where the + first 2 mandatorily capture.

+ +

By including directonal indicators, you can describe curved + trajectories. Nrf8 would mean NtrfNtrfN..., upto 8 Knight moves, + each consecutive move bending ~45 degrees right from the previous + one (because that is what rf means; the first opportnity to the + right that is not straight ahead). This describes the Rose! + Circular riders fit into the system, and there is no need for a + separate prefix to describe them. With grouping you can do more: + (FtlF)r0 expands to FtlFtrFtlFtrFtl..., an arbitrary number of + diagonal steps, that alternately turn 90 degrees left or right. + In other words, the Crooked Bishop. There is also no real need + for the z prefix in this extended Betza notation. The + exponentiation can describe it much more precisely, specifying + exactly how Crooked it is.

+ + +