Difference between revisions of "User:Selinger"

From HexWiki
Jump to: navigation, search
(Proposed article: Flank)
(Blanked the page)
Line 1: Line 1:
= Proposed article: Flank =
 
  
A '''flank''' is a sequence of [[friendly]] [[stone]]s that are either adjacent or linked by [[bridge]]s in a certain way, and with a certain amount of space on one side, for example like this:
 
<hexboard size="6x11"
 
  edges="none"
 
  coords="none"
 
  visible="area(a6,d6,g5,k3,k1,i1,e3,d3,a4)"
 
  contents="R 1:a6 2:b6 3:c6 4:e5 5:f5 6:h4 7:j3 8:k3"
 
  />
 
Apart from [[ladder]]s, flanks are one of the most common "long-distance" patterns occuring in Hex. They are useful for [[climbing]], and they can be used to form large [[interior template|interior]] and [[edge template]]s.
 
 
What makes a flank useful is that its owner can use it for [[climbing]]. For example, consider the following situation, and assume the stones "B" and "J" are connected to opposite edges.
 
<hexboard size="6x11"
 
  edges="none"
 
  coords="none"
 
  visible="area(a6,d6,g5,k3,k1,i1,e3,d3,a4)"
 
  contents="R J:a4 A:a6 b6 c6 e5 f5 h4 j3 B:k3 E *:k1"
 
  />
 
Then Red can [[climbing#Zipper|zipper]] all the way from J to the cell marked "*", by a sequence of forcing moves as follows:
 
<hexboard size="6x12"
 
  edges="none"
 
  coords="none"
 
  visible="area(a6,d6,g5,k3,k1,i1,e3,d3,a4)"
 
  contents="R A:a6 b6 c6 e5 f5 h4 j3 B:k3
 
            R J:a4 2:b4 4:c4 6:d6 8:e3 10:f3 12:g5 14:h2 16:i4 18:j1 20:k1
 
            B 1:a5 3:b5 5:d5 7:c5 9:e4 11:g4 13:f4 15:i3 17:h3 19:j2 21:k2"
 
  />
 
It is not actually necessary for Red to play moves 6, 12, and 16; Red could also skip these moves. However, they usually do not hurt and may be useful to Red by solidifying Red's position below the flank.
 
 
Intruding into the flank's bridges does not help the opponent. The flank still works even if all the bridges have been filled in:
 
<hexboard size="6x12"
 
  edges="none"
 
  coords="none"
 
  visible="area(a6,d6,g5,k3,k1,i1,e3,d3,a4)"
 
  contents="R J:a4 A:a6 b6 c6 e5 f5 h4 j3 B:k3 E *:k1
 
            B d5 R d6 B g4 R g5 B i3 R i4"
 
  />
 
 
== Definition ==
 
 
A flank can belong to Red or to Blue, and it can be oriented in any of the 6 cardinal directions of the Hex board (a cardinal direction is parallel to an edge or to the short diagonal). In addition, it can be facing up or down (the side it is facing is the side where the empty space is). For simplicity, the following definition refers to red flanks that are oriented left-to-right and facing upward.
 
 
Each flank has three distinguished points: a starting point, which we usually mark "A", an endpoint, which we usually mark "B", and a jumping-off point, which we mark "J". We can define flanks inductively as follows:
 
 
* Base case: A single red stone, together with the indicated space, is a flank. In this case, the stone marked "B" is both the starting point and the endpoint. The jumping-off point "J" is also shown. <br>F0: <hexboard size="3x1"
 
  float="inline"
 
  edges="none"
 
  coords="none"
 
  contents="R B:a3 E J:a1"
 
  />
 
 
* Induction step: A flank can be extended with any of the following patterns:<br>F1: <hexboard size="3x2"
 
  float="inline"
 
  edges="none"
 
  coords="none"
 
  contents="R -:a3 B:b3"
 
/> F2: <hexboard size="4x3"
 
  float="inline"
 
  edges="none"
 
  coords="none"
 
  visible="area(a2,a4,b4,c1,c3,b1)"
 
  contents="R -:a4 B:c3"
 
/> F3: <hexboard size="4x3"
 
  float="inline"
 
  edges="none"
 
  coords="none"
 
  visible="area(a2,a4,b4,c1,c3,b1)"
 
  contents="R -:a4 B:c3 B b3 R b4"
 
/><br>Here, "−" denotes the previous endpoint, and "B" denotes the new endpoint. The orientation of these patterns matters, i.e., they cannot be rotated.
 
 
Here is an example of the flank obtained by starting with F0 and then extending with F1, F1, F3, F1, F2, F3, and F1. We always use "A" to denote the starting point and "B" to denote the endpoint of the flank:
 
<hexboard size="6x11"
 
  edges="none"
 
  coords="none"
 
  visible="area(a4,a6,d6,g5,k3,k1,i1,e3,d3)"
 
  contents="E J:a4 R A:a6 b6 c6 B d5 R d6 e5 f5 h4 B i3 R i4 j3 B:k3"
 
  />
 
We can also use algebraic notation to denote flanks. For example, we write F0+F1+F1+F3+F1+F2+F3+F1 for the above flank.
 
 
== Capped flank ==
 
 
A flank is '''capped''' if it has been extended past its endpoint "B" with one of the following patterns:
 
C1: <hexboard size="3x2"
 
  float="inline"
 
  edges="none"
 
  coords="none"
 
  visible="area(a1,a3,b2,b1)"
 
  contents="R B:a3 b2"
 
/> C2: <hexboard size="3x2"
 
  float="inline"
 
  edges="none"
 
  coords="none"
 
  visible="area(a1,a3,b2,b1)"
 
  contents="R B:a3 b1"
 
/> C3: <hexboard size="3x2"
 
  float="inline"
 
  edges="none"
 
  coords="none"
 
  visible="area(a1,a3,b2,b1)"
 
  contents="R B:a3 b1 B a2 R b2"
 
/> C4: <hexboard size="3x3"
 
  float="inline"
 
  edges="none"
 
  coords="none"
 
  visible="-c3"
 
  contents="R B:a3 c2 c1"
 
/>
 
Here, "B" denotes the original endpoint of the flank. Other cap patterns are also possible; the above C1&ndash;C4 are just some common examples of caps.
 
 
Here are some examples of capped flanks. In each case, the flank's starting point "A" and original endpoint "B" are shown.
 
 
F0+F1+C1:
 
<hexboard size="3x3"
 
  edges="none"
 
  coords="none"
 
  visible="-c3"
 
  contents="E J:a1 R A:a3 B:b3 c2"
 
  />
 
F0+F2+C2:
 
<hexboard size="4x4"
 
  edges="none"
 
  coords="none"
 
  visible="area(a2,a4,b4,d2,d1,b1)"
 
  contents="E J:a2 R A:a4 B:c3 d1"
 
  />
 
F0+F2+F2+F3+F2+C1:
 
<hexboard size="6x9"
 
  edges="none"
 
  coords="none"
 
  visible="area(a6,b6,g4,i2,i1,g1,d2,b3,a4)"
 
  contents="E J:a4 R A:a6 c5 e4 f4 B:h3 i2"
 
  />
 
 
The point of capped flanks is that if Red plays at the jumping-off point "J" of any capped flank, Red can [[strong connection|connect]]:
 
 
<hexboard size="6x9"
 
  edges="none"
 
  coords="none"
 
  visible="area(a6,b6,g4,i2,i1,g1,d2,b3,a4)"
 
  contents="R A:a6 c5 e4 f4 B:h3 i2
 
            R 1:a4 3:b6 5:c3 7:d5 9:e2  11:f2 13:g4 15:h1
 
            B 2:b5 4:a5 6:d4 8:c4 10:e3 12:g3 14:f3"
 
  />
 
 
Note that climbing along a flank is a generalization of 2nd row ladders, with the cap acting as a ladder escape. Indeed, a board edge can be regarded as a straight row of stones, and is therefore a special kind of flank only made up of F1 pieces:
 
 
<hexboard size="3x9"
 
  edges="none"
 
  coords="none"
 
  visible="-i3"
 
  contents="R A:a3 b3--g3 B:h3 i2 E J:a1"
 
/>
 
 
== Interior templates from capped flanks ==
 
 
There are several ways of constructing [[interior template]]s from capped flanks.
 
 
=== Method 1 ===
 
 
The simplest method is to add a Red piece to the jumping-off point "J". Since this [[strong connection|connects]] to the rest of the flank, such a group can be viewed as a (potentially very large) interior template.
 
 
Many of the named interior templates are of this form. This is the case for the [[crescent]], [[trapezoid]] (in more than one way), [[Interior_template#Unnamed templates|scooter]], [[Interior_template#Unnamed templates|bicycle]], as well as the [[Interior_template#The long crescent|long crescent]] and various [[Interior_template#The long trapezoid|long trapezoid]]s.
 
<hexboard size="3x3"
 
  float="inline"
 
  coords="hide"
 
  edges="none"
 
  visible="-c3"
 
  contents="R J:a1 A:a3 B:b3 c2"
 
/> <hexboard size="3x3"
 
  float="inline"
 
  coords="hide"
 
  edges="none"
 
  visible="-c3"
 
  contents="R J:a1 A:a3 B:b3 c1"
 
/> <hexboard size="3x3"
 
  float="inline"
 
  coords="hide"
 
  edges="none"
 
  visible="-c3"
 
  contents="R J:a1 A:a3 c2 c1"
 
/> <hexboard size="4x4"
 
  float="inline"
 
  coords="hide"
 
  edges="none"
 
  visible="area(b1,a2,a4,b4,d2,d1)"
 
  contents="R J:a2 A:a4 B:c3 d2"
 
/> <hexboard size="4x4"
 
  float="inline"
 
  coords="hide"
 
  edges="none"
 
  visible="area(b1,a2,a4,b4,d2,d1)"
 
  contents="R J:a2 A:a4 B:c3 d1"
 
/> <hexboard size="3x6"
 
  float="inline"
 
  coords="hide"
 
  edges="none"
 
  visible="-f3"
 
  contents="R J:a1 A:a3 b3 c3 d3 B:e3 f2"
 
/> <hexboard size="3x6"
 
  float="inline"
 
  coords="hide"
 
  edges="none"
 
  visible="-f3"
 
  contents="R J:a1 A:a3 b3 c3 d3 B:e3 f1"
 
/> <hexboard size="3x6"
 
  float="inline"
 
  coords="hide"
 
  edges="none"
 
  visible="-f3"
 
  contents="R J:a1 A:a3 b3 c3 B:d3 f1 f2"
 
/>
 
Here is a larger template constructed by the same method.
 
<hexboard size="6x9"
 
  edges="none"
 
  coords="none"
 
  visible="area(a6,b6,e5,g4,i2,i1,g1,b3,a4)"
 
  contents="R J:a4 A:a6 c5 d5 f4 B:h3 i2"
 
  />
 
 
=== Method 2 ===
 
 
Another way to construct interior templates from flanks is to combine a capped flank and the mirror image of a capped flank so that they overlap at the point "J", schematically like this:
 
<hexboard size="3x4"
 
  float="inline"
 
  edges="none"
 
  coords="none"
 
  visible="area(c1,a3,b3,d1)"
 
  contents="E *:(c1--a3) J:d1 R A:b3"
 
/> + <hexboard size="3x2"
 
  float="inline"
 
  edges="none"
 
  coords="none"
 
  contents="E *:(b1--b3) J:a1 R A:a3"
 
/> = <hexboard size="3x5"
 
  float="inline"
 
  edges="none"
 
  coords="none"
 
  visible="area(c1,a3,e3,e1)"
 
  contents="E *:(c1--a3) *:(e1--e3) J:d1 x:c3 R A:b3 A:d3"
 
/>
 
Here, the hex "J" remains empty. The point is that if Blue plays at "x", Red plays at "J", and vice versa.
 
 
Several of the named interior templates are of this form. This is the case for the [[Interior template#The span|span]], the [[box]], the [[Interior template#Unnamed templates|shopping cart]], and the [[Interior template#The long span|long span]]:
 
 
<hexboard size="3x4"
 
  float="inline"
 
  coords="hide"
 
  edges="none"
 
  visible="-a1 d3"
 
  contents="R a2 R A:a3 R A:c3 R d2 E J:c1 x:b3"
 
/> <hexboard size="3x4"
 
  float="inline"
 
  coords="hide"
 
  edges="none"
 
  visible="-a1 d3"
 
  contents="R b1 R A:a3 R A:c3 R d1 E J:c1 x:b3"
 
/> <hexboard size="3x4"
 
  float="inline"
 
  coords="hide"
 
  edges="none"
 
  visible="-a1 d3"
 
  contents="R b1 R A:a3 R A:c3 R d2 E J:c1 x:b3"
 
/> <hexboard size="3x6"
 
  float="inline"
 
  coords="hide"
 
  edges="none"
 
  visible="-a1 f3"
 
  contents="R a2 A:a3 A:c3 d3 B:e3 f2 E J:c1 x:b3"
 
/>
 
Here is a larger example:
 
<hexboard size="6x15"
 
  coords="none"
 
  edges="none"
 
  visible="area(c4,c6,i6,m4,n3,n2,k2,g4,f3,d3)"
 
  contents="R c4 B:c5 d6 A:e6 A:g6 h6 j5 l4 B:m4 n3 E x:f6 J:g4"
 
/>
 
 
=== Method 3 ===
 
 
A third way to construct interior templates from flanks is to combine a capped flank with a capped flank rotated by 180 degrees,  schematically like this:
 
<hexboard size="3x2"
 
  float="inline"
 
  edges="none"
 
  coords="none"
 
  contents="E *:(a1--a3) J:b3 R A:b1"
 
/> + <hexboard size="3x2"
 
  float="inline"
 
  edges="none"
 
  coords="none"
 
  contents="E *:(b1--b3) J:a1 R A:a3"
 
/> = <hexboard size="3x4"
 
  float="inline"
 
  edges="none"
 
  coords="none"
 
  contents="E *:(a1--a3,d1--d3) J:b3 R A:b1 E J:c1 R A:c3"
 
/>
 
or like this:
 
<hexboard size="3x2"
 
  float="inline"
 
  edges="none"
 
  coords="none"
 
  contents="E *:(a1--a3) J:b3 R A:b1"
 
/> + <hexboard size="3x2"
 
  float="inline"
 
  edges="none"
 
  coords="none"
 
  contents="E *:(b1--b3) J:a1 R A:a3"
 
/> = <hexboard size="4x5"
 
  float="inline"
 
  edges="none"
 
  coords="none"
 
  visible="area(a2,a4,c4,e3,e1,c1)"
 
  contents="E *:(a2--a4,e1--e3) J:b4 R A:b2 E J:d1 R A:d3"
 
/>
 
If Blue plays at one of the hexes marked "J", Red can play at the other to keep the group connected.
 
 
Of the named interior templates, the [[Interior_template#The_parallelogram|parallelogram]] and the [[Interior_template#Unnamed templates|wide parallelogram]] are of this form:
 
 
<hexboard size="3x4"
 
  float="inline"
 
  coords="hide"
 
  edges="none"
 
  visible="-a1 d3"
 
  contents="R a2 A:b1 A:c3 d2 E J:c1 J:b3"
 
/> <hexboard size="4x5"
 
  float="inline"
 
  coords="hide"
 
  edges="none"
 
  visible="area(c1,a3,a4,c4,e2,e1)"
 
  contents="R A:b2 a3 A:d3 e2 E J:d1 J:b4"
 
/>
 
 
But of course, it is again possible to constuct infinitely many examples. Here is a larger example:
 
 
<hexboard size="6x10"
 
  coords="none"
 
  edges="none"
 
  visible="area(b4,b5,d5,h4,j2,j1,h1,d2,c3)"
 
  contents="R A:f4 g4 B:i3 j2 A:e2 B:c3 b4 E J:e4 J:f2"
 
/>
 
 
== Edge templates from capped flanks ==
 
 
Not surprisingly, capped flanks (appropriately rotated and positioned) can also be used to construct edge templates. There are various schemas for doing so. We give three examples. In each schema, we show the starting point "A" and the jumping-off point "J" of the capped flank, and we indicate by "*" the direction in which the flank continues.
 
E1: <hexboard size="3x3"
 
  float="inline"
 
  coords="none"
 
  edges="bottom"
 
  contents="R A:a2 E J:c2 *:(a1--c1)"
 
/> E2: <hexboard size="4x5"
 
  float="inline"
 
  coords="none"
 
  edges="bottom"
 
  visible="area(b1,a4,e4,e2,d1)"
 
  contents="R A:b2 E J:d2 *:(b1--d1)"
 
/> E3: <hexboard size="5x4"
 
  float="inline"
 
  coords="none"
 
  edges="bottom"
 
  visible="area(b1,b4,a5,d5,d1)"
 
  contents="R A:b2 b4 E J:d2 *:(b1--d1)"
 
/>
 
 
Here is an example using schema E3 and (an appropriately rotated and mirrored version of) the capped flank F0+F2+F1+F1+F2+C1:
 
<hexboard size="11x6"
 
  coords="none"
 
  edges="bottom"
 
  visible="area(e1,c3,b7,a11,d11,e7,f3,f1)"
 
  contents="R b10 A:b8 c6 c5 c4 B:d2 e1 E J:d8"
 
/>
 
 
== Usage example ==
 
 
The following example is from an actual game. Blue to move and win.
 
<hexboard size="11x11"
 
  coords="show"
 
  edges="all"
 
  contents="R a2 i5 g6 e7 c9 c8 d7 e6 g5 f7 g4 e4 c6 b5 i3
 
            B f6 h7 f8 d9 d8 d6 h3 e5 f5 h2 f3 f4 c4 b4"
 
/>
 
 
Note that Blue's central group is already connected to the left edge by double threat at e3 and c7. But how will Blue connect to the right edge? The problem is that h7 does not normally act as a 2nd row ladder escape. Blue starts at j1, then pushes the 2nd row ladder to j5 and pivots at j7. This forces Red to respond at j6.
 
<hexboard size="11x11"
 
  coords="show"
 
  edges="all"
 
  contents="R a2 i5 g6 e7 c9 c8 d7 e6 g5 f7 g4 e4 c6 b5 i3  2:k1 4:k2 6:k3 8:k4 10:k5 12:j6
 
            B f6 h7 f8 d9 d8 d6 h3 e5 f5 h2 f3 f4 c4 b4 1:j1 3:j2 5:j3 7:j4 9:j5 11:j7"
 
/>
 
 
Now the killer move is c10. This caps the blue flank, and the entire shaded area becomes an edge template. Blue is now connected by double threat at i6 and b10.
 
 
<hexboard size="11x11"
 
  coords="show"
 
  edges="all"
 
  contents="R a2 i5 g6 e7 c9 c8 d7 e6 g5 f7 g4 e4 c6 b5 i3 k1 k2 k3 k4 k5 j6
 
            B f6 h7 f8 d9 d8 d6 h3 e5 f5 h2 f3 f4 c4 b4 j1 j2 j3 j4 j5 j7 13:c10
 
            E *:i6 *:b10
 
            S area(c11,c10,e8,g7,k6,k9,g10,e11)"
 
/>
 

Revision as of 14:55, 8 March 2021