Check out Grant Acedrex, our featured variant for April, 2024.


[ Help | Earliest Comments | Latest Comments ]
[ List All Subjects of Discussion | Create New Subject of Discussion ]
[ List Latest Comments Only For Pages | Games | Rated Pages | Rated Games | Subjects of Discussion ]

Comments/Ratings for a Single Item

Later Reverse Order EarlierEarliest
Betza notation (extended). The powerful XBetza extension to Betza's funny notation.[All Comments] [Add Comment or Rating]
💡📝H. G. Muller wrote on Sat, Apr 13 07:59 PM UTC in reply to Jean-Louis Cazaux from 04:49 PM:

Well, the bracket notation is simpler. This is why I would like to switch to it.

But when chaining moves into a single path it cannot be avoided that you would have to specify the bending angle at each point where two legs connect with the aid of directional modifiers (if f is assumed to be default).

And there is the more fundamental problem that oblique paths occur as pairs of mirror images, and that this mirroring swaps the meaning of l and r. To avoid having to specify complex oblique paths twice, there must be a way to encode sideway deflections not as an absolute direction, but in a relative way. And this is what z and q do.


Jean-Louis Cazaux wrote on Sat, Apr 13 04:49 PM UTC in reply to Daniel Zacharias from 01:13 PM:

@Daniel, HG. Thank you for your kind explanations. I start to see better. I had not caught the fact that the "a" could link with a "none" modifier.

I understand the logic. I don't like it much though. It is strange that nothing more natural could have been imagined, without ambiguity, to chain simple moves. You guys have been thinking on it for a long time, so I guess it is not so easy.


💡📝H. G. Muller wrote on Sat, Apr 13 01:33 PM UTC in reply to Daniel Zacharias from 01:13 PM:

It would probably have been clearer if I had used a hyphen or slash instead of an a. But it all started as aaK for the area move of Tenjiku Shogi, and caK for the Chu-Shogi Lion. But the hyphens seem to group the atoms in the wrong way, when you don't also use brackets around the individual moves.

In (not-yet-implemented) bracket notation the Betza Rhino would be [W(?fzK)], shorthand for [W?fzK?fzK?fzK?fzK?fzK?fzK?fzK...], a W leg followed by any number of alternating fl and fr K steps.


Daniel Zacharias wrote on Sat, Apr 13 01:13 PM UTC in reply to Jean-Louis Cazaux from 11:52 AM:

Indeed I belong to those not digesting the "a" at all.

Think of a as a separator between two legs of the move, like an "and". In aW, the a implies that there are 2 legs and the W tells you what those legs are.


💡📝H. G. Muller wrote on Sat, Apr 13 01:02 PM UTC in reply to Jean-Louis Cazaux from 11:52 AM:

You should consider the a as a chaining symbol, separating the modifiers for the legs of a multi-leg move. So in afsafzafzW you see 3 a, which means the move has 4 legs. The modifiers for these legs are none, fs, fz and fz, respectively. So the first leg is a W move in all directions (no modifier). From there it continues forward-left or forward-right (because s = l or r), i.e. a diagonal step in the second leg. Then for the third leg it again deflects 45 degrees, but in the opposit direction as in the second leg, as this is what z means. Etc. So afsafzafzW is a shorthand for aflafraflWafraflafrW, two crooked trajectories that are each other's mirror image.

Haru's notation (afz)W is shorthand for WafzWafzafzWafzafzafzW..., a set of ever longer crooked trajectories. Every additional afz adds a new leg, which deflects in the opposite fl or fr (relative) direction as the previous leg did. (Which is the hallmark of a crooked move; if they would all deflect in the same direction, which you could do with fq, you would get a circular piece.)

The second leg in every sequence should really have been specified as fs, however, to indicate it can deflect in both directions, rather than only in one that is specified relative to the previous one. The first z or q occurring in such a sequence (i.e. before it is clear what 'opposit' or 'the same' direction means for the deflection, because there was no previous deflection) is always interpreted as s. You could see this as a special rule for expanding the parentheses into paths with different lengths.


Jean-Louis Cazaux wrote on Sat, Apr 13 11:52 AM UTC in reply to H. G. Muller from 08:51 AM:

@HG: somewhat it gives me some explanation, somewhat I'm more confused than before. So, HG, taking this "The meaning of z in a multi-leg move has also changed; it now means l or r, but the opposit of what the previous leg did. (So that it can be used to specify crooked paths)"; how would you write that Betza's Rhino and Mirror-Rhino?

@Haru N Y: your notations do work but I can't understand why. Indeed I belong to those not digesting the "a" at all. And why do you call the Mirror-Rhino a Snake? That confuses me even more too.


💡📝H. G. Muller wrote on Sat, Apr 13 08:51 AM UTC in reply to Jean-Louis Cazaux from 07:26 AM:

I did know about Betza's t[FR] proposal for Griffon, but I had never seen this z(FW) notation. XBetza is only upward compatible with the Betza notation for simple ('single leg') moves, and has its own system for combining these to multi-leg moves, which is more general than any of the suggestions that Betza coined in various scattered places.

The z modifier applied to a slider atom is original Betza notation for a crooked version of the piece, and is still supported in XBetza. On a leaper, such as zW, it never had any meaning.

The role of parentheses has completely changed; in XBeza these indicate zero or more repetitions of the enclosed group. So z(FW) would mean zzFWzFWFWzFWFWFW..., which doesn't really mean anything.

Brackets originally were not used in XBetza, but legs of a move were 'chained' by using an a as separator between the modifiers of each leg. This does the job of unambiguously defining very complex moves, but often leads to a very obfuscated description unsuitable for human digestion. A much clearer notation is possible by using brackets (but in a way that somewhat is different from Betza's t[...] construct). The brackets still enclose a sequence of simple Betza moves, which are supposed to be played in that order. But there is no t prefix (which was redundant, because the brackets are never used for any other purpose than chaining the contained moves), and separates the enclosed moves by hyphens (if continuation is mandatory) or question marks (if the move could also end there). This notation is already supported in the Interactive Diagram for simple cases like the Griffon ([F?R]). Supporting it in its full glory is a desire for the future.

The meaning of z in a multi-leg move has also changed; it now means l or r, but the opposit of what the previous leg did. (So that it can be used to specify crooked paths, while q means l or r in the same direction, and can be used to define curved paths.)


HaruN Y wrote on Sat, Apr 13 07:59 AM UTC in reply to Jean-Louis Cazaux from 07:26 AM:Excellent ★★★★★
Rhino: (afz)W
Snake: (afz)F
z stands for zigzag & it's repetition depend on the board size. This page is about XBetza notation, not Betza notation.

Jean-Louis Cazaux wrote on Sat, Apr 13 07:26 AM UTC:

@HG: I thought I had understood, but finally I'm confused and lost. I try to describe Rhino (TwiKnight) (and Mirror-Rhino (KnightTwi)) in Betza's notation. I found z(FW) in an old page (made by Betza) but it doesn't work on the diagram. Maybe the role of the () has changed.

Also I don't understand why when I test zW and zR, I get the same result. Is z meaning an infinite repetition?

Is all this consistent?


Bob Greenwade wrote on Sat, Apr 6 03:55 PM UTC in reply to H. G. Muller from 03:39 PM:

You would forbid the capture of all non-pawns by pawns in the captureMatrix, and then exempt the pawn's normal captures from this restriction by suffixing it with an apostrophe.

Wouldn't this mess up Pawn promotion?


💡📝H. G. Muller wrote on Sat, Apr 6 03:39 PM UTC in reply to Bob Greenwade from 01:48 PM:

You would forbid the capture of all non-pawns by pawns in the captureMatrix, and then exempt the pawn's normal captures from this restriction by suffixing it with an apostrophe.

What would not be possible is having some moves that can only capture pawns and others that can capture only knights. (So you cannot implement an Ultima Chamelion with this method.)


Bob Greenwade wrote on Sat, Apr 6 01:48 PM UTC in reply to H. G. Muller from 05:00 AM:

Type selectivity is provided by means of the captureMatrix, possibly in combination with the apostrophy in the XBetza to restrict it to a subset of the moves. I haven't encountered any case yet that could not be handled this way.

But what if the qualification only affects one of a group of possible moves? In this case, the opening move of a Pawn, which could capture anything with its conventional capture but has a special initial move only for capturing nearby enemy Pawns.


💡📝H. G. Muller wrote on Sat, Apr 6 05:00 AM UTC in reply to Bob Greenwade from 01:06 AM:

Type selectivity is provided by means of the captureMatrix, possibly in combination with the apostrophy in the XBetza to restrict it to a subset of the moves. I haven't encountered any case yet that could not be handled this way.


Bob Greenwade wrote on Sat, Apr 6 01:06 AM UTC:

Since "Ideas for the future" no longer mentions ways to allow/disallow capture of certain pieces the way k does for the King, I take it that this has been abandoned? (I'd been kind of hoping for at least some way of affecting at least Pawns this way, and while I can see where the logistics would be difficult to figure out I'd be interested in helping brainstorm it.)


Bob Greenwade wrote on Fri, Mar 15 06:28 PM UTC in reply to Fergus Duniho from 04:44 PM:

Fair enough. :)


🕸Fergus Duniho wrote on Fri, Mar 15 04:44 PM UTC in reply to Bob Greenwade from 04:32 PM:

if you could take a glance at that when you have a moment and pick out any problem symbols (the Berolina would be a leading candidate), and hopefully suggest alternatives, I'd appreciate it.

No, I don't have the character sets memorized, and I don't think it is a good idea to go beyond ASCII for piece notation.


Bob Greenwade wrote on Fri, Mar 15 04:32 PM UTC in reply to Fergus Duniho from 04:02 PM:

Since this site uses Literata, Noto Sans, and Courier Prime, you may want to limit yourself to a subset that is supported by all three of these fonts. Of these, Courier Prime has the most limited support for character sets. Besides ASCII, it supports only Latin Lowercase, Latin Uppercase, Numbers, Common Latin, and Punctuation. Literata and Noto Sans both support all of these, as well as others.

That still leaves me a bit uncertain. I just edited Short Sliders with some Unicode symbols; if you could take a glance at that when you have a moment and pick out any problem symbols (the Berolina would be a leading candidate), and hopefully suggest alternatives, I'd appreciate it.


🕸Fergus Duniho wrote on Fri, Mar 15 04:02 PM UTC in reply to Bob Greenwade from 02:38 PM:

If that means that, essentially, all of Unicode would be open for use on all systems, then that opens up many more possibilities (for the "special custom codes").

In theory, but it's a rare font that fully supports all of Unicode. Since this site uses Literata, Noto Sans, and Courier Prime, you may want to limit yourself to a subset that is supported by all three of these fonts. Of these, Courier Prime has the most limited support for character sets. Besides ASCII, it supports only Latin Lowercase, Latin Uppercase, Numbers, Common Latin, and Punctuation. Literata and Noto Sans both support all of these, as well as others.

My concern was support on people's systems at home; I expect that there's still a small (but, admittedly, rapidly shrinking) percentage of systems that support ANSI but not Unicode.

Those would have to be very old computers. According to the Wikipedia article on UTF-8, "UTF-8 is the dominant encoding for the World Wide Web (and internet technologies), accounting for 98.2% of all web pages, 99.0% of the top 10,000 pages, and up to 100% for many languages, as of 2024." According to the same article, Windows Notepad only supports UTF-8.


Bob Greenwade wrote on Fri, Mar 15 02:38 PM UTC in reply to Fergus Duniho from 12:07 PM:

Note that this site uses UTF-8. So there is no point in sticking to Windows-1252 in the mistaken notion that it may be better supported. That said, ASCII has the advantage of being on most keyboards and of being most familiar to people. It’s also a subset of UTF-8 that can be written as single 8-bit characters.

If that means that, essentially, all of Unicode would be open for use on all systems, then that opens up many more possibilities (for the "special custom codes").

My concern was support on people's systems at home; I expect that there's still a small (but, admittedly, rapidly shrinking) percentage of systems that support ANSI but not Unicode.


🕸Fergus Duniho wrote on Fri, Mar 15 12:07 PM UTC in reply to Bob Greenwade from 04:21 AM:

the Windows-1252 character set that I'm suggesting to use as the basis (because even a system without Unicode installed should have at least that much

Note that this site uses UTF-8. So there is no point in sticking to Windows-1252 in the mistaken notion that it may be better supported. That said, ASCII has the advantage of being on most keyboards and of being most familiar to people. It’s also a subset of UTF-8 that can be written as single 8-bit characters.


💡📝H. G. Muller wrote on Fri, Mar 15 08:26 AM UTC in reply to Bn Em from Thu Mar 14 11:52 PM:

And while hexagonal boards may be in scope for the ID, I imagine 3D and hyperbolic boards are far from it ;‌)

Representation of 3D and 4D 'boards' is mostly problematic for the human player. One often resorts to displaying 2D slices of the board next to each other, which basically maps it to a larger 2D board. Chess programs in fact use the very same technique to map 2D boards to their 1D memory, storing them row by row. In all these cases separators between the slices would be needed to prevent 'wrapping' from one slice to the other. Usually this is done by separating the slices by enough inaccessible cells of the 2D representation that the leaper with the longest range cannot jump over it.

E.g. for a 5x5x5 variant with range-2 leapers ('Knights') you would map it to a 33x5 (or 5x33) board, with five 5x5 playing areas separated by four 2x5 'guard bands'. On this board an orthogonal step perpendicular to the slices would be a (7,0) leap, and is representable in XBetza as WXX. So the Raumschach Rook would be RWXX4, a Raumschach Bishop BHX4DXX4FXX4.

files=5 ranks=33 graphicsDir=/graphics.dir/alfaeriePNG35/ squareSize=35 lightShade=#FFFFCC darkShade=#FFCC00 holeColor=#000000 rimColor=#000000 coordColor=#FFFFFF useMarkers=1 borders=0 maxPromote=0 promoChoice=QUNRB firstRank=1 symmetry=mirror hole::::a6-e7,a13-e14 pawn::fmWfmWXXfcFfcFXX::a2-e2,a9-e9 morph=/////////////////////*///////* knight:N:NDXYDXHXXWXXXXHXXXXNXXXX::b1,d1 bishop::BHX4DXX4FXX4::a8,d8 unicorn::CX4NXX4::b8,e8 rook::RWXX4::a1,e1 queen::QWXX4HX4DXX4FXX4CX4NXX4::c8 king::KWXXHXDXXFXXCXNXX::c1

💡📝H. G. Muller wrote on Fri, Mar 15 07:00 AM UTC in reply to Bob Greenwade from Thu Mar 14 10:44 PM:

It's trying to get caib[qN] to work that would be the challenge.

Well, now that generalized burning is been written with the aid of legs behind a semicolon, another punctuation (say comma), could be used for generalized rifle capture. Burning and rifle capture are related: there is a set of captures, burning automatically does all of those that are possible, rifle capture has to select one of those. Pure rifle capture is a null move followed by the capture option. Suppose O without range would mean null move, then [O,cqN] would be a rifle-capturing Rose. There still is the issue of whether the rifle part can be optional. I would say no, as the entire moves in a Betza description are already optional. So by making it mandatory to do at least one of the rifle captures, you can still allow the move without capture by specifying it separately. Like for Odin's Forest Ox: N[N,cK].


Bob Greenwade wrote on Fri, Mar 15 04:21 AM UTC in reply to Bn Em from Thu Mar 14 11:52 PM:

you'd (apparently) lean toward using ß for Sexton, while I'd use it for Switchback

We're technically not contradicting each other; I was using capital ⟨⟩, as is usual for atoms, whereas Switchback, whilst really something that XBetza would tend to spell out explicitly, is definitely small ⟨ß⟩ material

That depends; the Windows-1252 character set that I'm suggesting to use as the basis (because even a system without Unicode installed should have at least that much) only has ß. That, I believe is the lower-case letter -- which would rather spoil my use.

By the way, the full XBetza for the Switchback would be afq(afzafq)K(afqafz)K, which I think would be quite rarely used and only needed to be "atomized" for a rifle capture, bent slider, or something similarly strange. So not having it wouldn't necessarily be a big loss, and one of the other letters in the set (like maybe Ï? Or Ş, if all of Unicode is opened up) could still work if I really want it.


Bob Greenwade wrote on Fri, Mar 15 12:59 AM UTC in reply to Bn Em from Thu Mar 14 11:52 PM:

I may be wrong, but trying to get XBetza to manipulate a Rose path in that way once it's been defined might be more convoluted than it appears

You may also be right, at least when using a simple qN definition. If that turns out to be the case, then I'd have to find a way to program it using whatever custom-move system that H.G. (and/or Fergus) come up with.


Bn Em wrote on Thu, Mar 14 11:52 PM UTC in reply to Fergus Duniho from 03:34 PM:

why you want to expand xBetza

As with Bob, really my answer is (at the moment) that I don't; it works well enough for what it does (as H.G. has elaborated on). More that we were discussing a previous commenter's proposal to extend it using non‐ASCII.

I'd still be tempted to hold out a degree of openness for exactly the purpose I mentioned: 3D (let alone 4D) or unusual (hyperbolic, say — I've been musing over an actual Regular Octagonal Chess to match Frolov's approximation) boards where the existing letters would all apply but more would be necessary to cover the extra moves. Though one might equally argue that at that point it's far enough from the familiar that Betza is somewhat out of its depth anyway.

And while hexagonal boards may be in scope for the ID, I imagine 3D and hyperbolic boards are far from it ;‌)

you'd (apparently) lean toward using ß for Sexton, while I'd use it for Switchback

We're technically not contradicting each other; I was using capital ⟨⟩, as is usual for atoms, whereas Switchback, whilst really something that XBetza would tend to spell out explicitly, is definitely small ⟨ß⟩ material

under my suggestion, I could define Þ to represent the Rose's movement path (possibly with a line something like def Þ = qN -- not just a character replacement, but a definition of a movement path).

Strictly speaking a path‐and‐mode model is not quite what XBetza does; rather it decribes moves in stages.

Which is, to be fair, in line with how Betza thought; the ‘Ferz‐then‐Cannon’ of his Bent Riders article comes easily to XBetza whereas a path‐and‐mode description thereof is cumbersome at best. Conversely path‐and‐mode describes the contrasted ‘Bent Cannon’ much more naturally.

I may be wrong, but trying to get XBetza to manipulate a Rose path in that way once it's been defined might be more convoluted than it appears


25 comments displayed

Later Reverse Order EarlierEarliest

Permalink to the exact comments currently displayed.