Bridge mit Ferit

To get an opening 1C bid (NB most of the hands will provide a 1NT 12-14 opening as it is far more common than the 18-19 hand).

(clubs(north)>=1&&diamonds(north)<=3&&hearts(north)<=4&&spades(north)<=4&&((hcp(north)>=12&&hcp(north)<=14)||(hcp(north)>=18&&hcp(north)<=19)))|| (clubs(north)>=4&&diamonds(north)=12&&!(hcp(north)>=15||hcp(north)<=17))

To get an opening 1C bid that is NOT a weak 12-14 1NT

hcp(north)>11&&
((!shape(north, any 4333 + any 4432 + any 5332)&&
clubs(north)>=1&&diamonds(north)<=4&&hearts(north)<=4&&spades(north)<=4)|| (shape(north, any 4333 + any 4432 + any 5332)&&hcp(north)>17&&hcp(north)<20))

To get an opening 1C bid and a 4-4 major suit fit.

(clubs(north)>=1&&diamonds(north)<=3&&hearts(north)<=4&&spades(north)<=4&&((hcp(north)>=12&&hcp(north)<=14)||(hcp(north)>=18&&hcp(north)<=19)))|| (clubs(north)>=4&&diamonds(north)=12&&!(hcp(north)>=15||hcp(north)<=17))&& ((spades(south)>=4&&spades(north)==4)||(hearts(south)>=4&&hearts(north)==4))&&hcp(south)>=6

To get an opening 1C bid and a 4-4 major suit fit and opener is 18-19


(clubs(north)>=1&&diamonds(north)<=3&&hearts(north)<=4&&spades(north)<=4&&(hcp(north)>=18&&hcp(north)<=19))&& ((spades(south)>=4&&spades(north)==4)||(hearts(south)>=4&&hearts(north)==4))&&hcp(south)>=6

To get an opening 1C bid and inverted 2C response.

(clubs(south)>=4&&hearts(south)<=3&&spades(south)<=3&&hcp(south)>=10)&&(clubs(north)>=1&&diamonds(north)<=3&&hearts(north)<=4&&spades(north)<=4&&((hcp(north)>=12&&hcp(north)<=14)||(hcp(north)>=18&&hcp(north)<=19)))

To get a natural opening 1C bid that isn’t a strong NT:-

(clubs(north)>=4&&hearts(north)<=3&&spades(north)<=3&&diamonds(north)<=3&&hcp(north)>=12&&hcp(north)<=19&&!(hcp(north)>=15&&hcp(north)<=17))

INVERTED MINOR

To get an opening 1m and inverted response:-

(clubs(south)>=4&&diamonds(south)<=3&&hearts(south)<=3&&spades(south)<=3&&hcp(south)>=10)&&
(clubs(north)>=1&&diamonds(north)<=4&&hearts(north)<=4&&spades(north)<=4&& ((hcp(north)>=12&&hcp(north)<=14)||(hcp(north)>=18&&hcp(north)<=19))) || (diamonds(south)>=4&&hearts(south)<=3&&spades(south)<=3&&clubs(south)<=4&&hcp(south)>=10)&&
(diamonds(north)>=4&&clubs(north)<=3&&hearts(north)<=4&&spades(north)<=4&&((hcp(north)>=12&&hcp(north)<=14)||(hcp(north)>=18&&hcp(north)<=19)))

Test (Daisy)
spades(north)<=4&& ((hcp(north)>=12&&hcp(north)<=14)||(hcp(north)>=18&&hcp(north)<=19))) || (diamonds(south)>=1&&hearts(south)<=4&&spades(south)<=4&&clubs(south)<=4&&hcp(south)>=10)&&
(diamonds(north)>=3&&clubs(north)<=4&&hearts(north)<=4&&spades(north)<=4&&((hcp(north)>=12&&hcp(north)<=14)||(hcp(north)>=18&&hcp(north)<=19)))

MAJOR SUITS

To get an opening 1M bid:-

(hearts(north)>=5||spades(north)>=5)&&hcp(north)>=12&&hcp(north)<=19&&!(shape(north, any 5332)&&hcp(north)>=15&&hcp(north)<=17)

To get a responding hand to 1M with 7+ points:-

(hearts(north)>=5||spades(north)>=5)&&hcp(north)>=12&&hcp(north)<=19&&!(shape(north, any 5332)&&hcp(north)>=15&&hcp(north)<=17)&&hcp(south)>=7

To get an opening 1M and responding hand with 10-12 HCP:-

(hearts(north)>=5||spades(north)>=5)&&hcp(north)>=12&&hcp(north)<=19&&!(shape(north, any 5332)&&hcp(north)>=15&&hcp(north)<=17)&&(hcp(south)>=10&&hcp(south)<=12)

To get a 1NT responding hand to 1M :-

((hearts(north)>=5&&hearts(south)<3&&spades(south)<4)||(spades(north)>=5&&spades(south)<3))&&hcp(north)>=12&&hcp(north)<=19&&!(shape(north, any 5332)&&hcp(north)>=15&&hcp(north)<=17)&&hcp(south)<13&&hcp(south)>4

To get a responding hand to 1M with 3+ card support and 4+ HCP

((hearts(north)>=5&&hearts(south)>=3)||(spades(north)>=5&&spades(south)>=3))&&hcp(north)>=12&&hcp(north)<=19&&!(shape(north, any 5332)&&hcp(north)>=15&&hcp(north)<=17)&&hcp(south)>4

(Zum üben für uns!!!) Nord 5er Pik od. 5er Coeur mit 53xx und Nord Punkte und Süd mehr als 11

((hearts(north)>=5&&hearts(south)>=3)||(spades(north)>=5&&spades(south)>=3))&&hcp(north)>=12&&hcp(north)<=20&&!(shape(north, any 53xx)&&hcp(north)>=15&&hcp(north)<=17)&&hcp(south)>11

Test (Ist OK)
((hearts(north)>=5&&hearts(south)>=3)||(spades(north)>=5&&spades(south)>=3))&&hcp(north)>=12&&hcp(north)<=20&&!(shape(north, any 53xx)&&hcp(north)>=15&&hcp(north)<=17)&&hcp(south)>11&&!(shape(north, any 54xx)&&hcp(north)>=15&&hcp(north)<=17)&&hcp(south)>11&&!(shape(north, any 55xx)&&hcp(north)>=15&&hcp(north)<=17)&&hcp(south)>11

(Auch zum Üben!) To get a responding hand to 1M with 3+ card support and 3+ HCP with intervention:-

((hearts(north)>=5&&hearts(south)>=3)||(spades(north)>=5&&spades(south)>=3))&&hcp(north)>=12&&hcp(north)<=19&&!(shape(north, any 5332)&&hcp(north)>=15&&hcp(north)<=17)&&hcp(south)>=3&&hcp(east)>=13&&shape(east, any 5xxx + any 4441)

To get a 5 card Major with shape 5422:-

hcp(north)>=12&&hcp(north)<=19&&shape(north, 5422 + 4522 + 5242 +5224 + 2542 + 2524)

1NT OPENING

To get an opening 1NT:-

strongNT =
(
shape(north, any 5332 + any 4432 + any 4333)&&
hcp(north)>=15&&hcp(north)<=18
)
condition strongNT

To get an opening 1NT with a 5 card Major with shape 5422 or 5332:-

hcp(north)>=15&&hcp(north)<=17 && ( (shape(north, 5422 + 4522) && hcp(north, clubs)>4 && hcp(north, diamonds)>4)||
(shape(north, 5242) && hcp(north, clubs)>4 && hcp(north, hearts)>4)||
(shape(north, 5224) && hcp(north, hearts)>4 && hcp(north, diamonds)>4)||
(shape(north, 2542) && hcp(north, clubs)>4 && hcp(north, spades)>4)||
(shape(north, 2524) && hcp(north, spades)>4 && hcp(north, diamonds)>4)||
(shape(north, 5332 + 5233 + 5323 + 3532 + 3523 + 2533))

)

To get an opening 1NT with the balance of points:-
strongNT =


(
shape(north, any 5332 + any 4432 + any 4333)&&
hcp(north)>=15&&hcp(north)<=18
)

condition strongNT&&hcp(south)>6

To get an opening 1NT with the balance of points and responder no more than 4 cards in majors:-


strongNT =
(
shape(north, any 5332 + any 4432 + any 4333)&&
hcp(north)>=15&&hcp(north)<=18 ) condition strongNT&&(shape(south,22xx + 31xx + 13xx + 21xx + 12xx + 30xx + 03xx))&&hcp(south)>6


To get an opening 1NT with the balance of points and responder with several types of handa:


strongNT =
(
shape(north, any 5332 + any 4432 + any 4333)&&
hcp(north)>=15&&hcp(north)<=18 ) condition strongNT&&shape(south,xxx5 + xxx6 + any 22xx + any 12xx + any 21xx + any 54xx + any 55xx + any 64xx) &&hcp(south)>6


To get an opening 1NT with the balance of points and responder with any 5 card suit or 4441:-

strongNT =
(
shape(north, any 5332 + any 4432 + any 4333)&&
hcp(north)>=15&&hcp(north)<=18 ) condition strongNT&&shape(south, any 5xxx + any 4441 + any 4333 + any 4432 + any 6322) &&hcp(south)>6

To get an opening 1NT with a 2 suiter responding hand:-

condition strongNT&&shape(south, any 54xx + any 55xx + any 64xx)&&hcp(south)>=6


To get an opening 1NT with a 2S, 3x or 2NT response:-

strongNT =
(
shape(north, any 5332 + any 4432 + any 4333)&&
hcp(north)>=15&&hcp(north)<=18 ) condition strongNT&& ( ( shape(south, any 4333 + any 4432)&& hcp(south)>15
)||
(
shape(south, xx6x + xxx6 + xx7x + xxx7)&&
hcp(south)<7 )|| ( hcp(south)<9&& ((shape(south, xxx6)&&hcp(south,clubs)>4&&hascard(south,TC))||
(shape(south, xx6x)&&hcp(south,diamonds)>4&&hascard(south,TD))||
(shape(south, x6xx)&&hcp(south,hearts)>4&&hascard(south,TH))||
(shape(south, 6xxx)&&hcp(south,spades)>4&&hascard(south,TS)))
)
)


To get an opening 1NT with the balance of points and a Robot intervention:-

strongNT =
(
shape(north, any 5332 + any 4432 + any 4333)&&
hcp(north)>=15&&hcp(north)<=18 ) condition strongNT&& hcp(east)>6&&shape(east, any 6xxx + any 7xxx + any 5440 + any 55xx + any 5431)&&
(hcp(north)+hcp(south)>=21)


REVERSES

To get a reversing shape where the responding hand has GF values:-

(hcp(south)>=12)&&
( (hcp(north)>=16&&hcp(north)<=21) || (hcp(north)>=11&&hcp(north)<=15) ) && ( (hearts(north)>=5&&spades(north)==4&&(clubs(south)>=5||diamonds(south)>=5) )||
(diamonds(north)>=5&&hearts(north)==4&&spades(south)>=4)||
(clubs(north)>=5&&diamonds(north)==4&&(hearts(south)>=4||spades(south)>=4))||
(clubs(north)>=5&&hearts(north)==4&&spades(south)>=4)
)

To get a reversing shape where the responding hand has a 2/1 GF response:-

(hcp(south)>=13)&&
( (hcp(north)>=16&&hcp(north)<=21) || (hcp(north)>=11&&hcp(north)<=15) ) && ( (hearts(north)>=5&&spades(north)==4&&(clubs(south)>=5||diamonds(south)>=5) )||
(diamonds(north)>=5&&hearts(north)==4&&clubs(south)>=5)||
(diamonds(north)>=5&&spades(north)==4&&clubs(south)>=5)
)

NON-FORCING FREE-BIDS

To get an opening 1C bid and 1M overcall and responder have 5+ cards in a displaced suit with 6+ HCP

(clubs(north)>=1&&diamonds(north)<=3&&hearts(north)<=4&&spades(north)<=4&&((hcp(north)>=12&&hcp(north)<=14)||(hcp(north)>=18&&hcp(north)<=19))) && ( (hearts(east)>=5&&diamonds(south)>=5)||
(spades(east)>=5&&(diamonds(south)>=5||hearts(south)>=5))
)
&&hcp(east)>=12

&&hcp(south)>=6

To get an opening 1C or 1D bid and 1M overcall and responder have 5+ cards in a displaced suit with 6+ HCP

(clubs(north)>=1&&diamonds(north)<=3&&hearts(north)<=4&&spades(north)<=4&&)||(diamonds>=4&&clubs<=4&&hearts(north)<=4&&spades(north)<=4&&(hcp(north)>=12&&hcp(north)<=14)((hcp(north)>=12&&hcp(north)<=14)||(hcp(north)>=18&&hcp(north)<=19))) && ( (hearts(east)>=5&&diamonds(south)>=5)||
(spades(east)>=5&&(diamonds(south)>=5||hearts(south)>=5))
)
&&hcp(east)>=12
&&hcp(south)>=6


4441 HANDS

To get a 4441 hand:-

(shape(north, 4441)||shape(north, 4414)||shape(north, 4144)||shape(north, 1444))&&
hcp(north)>=12&&hcp(south)>=6

TWO OVER ONE GAME FORCE

To get a 5 card major opening & a responding hand with a 2/1 GF response:-

(hcp(south)>=13)&&
( (hcp(north)>=16&&hcp(north)<=21) || (hcp(north)>=11&&hcp(north)<=14) ) && ( (hearts(north)>=5&&(clubs(south)>=5||diamonds(south)>=5) )||
(spades(north)>=5&&(clubs(south)>=5||diamonds(south)>=5||hearts(south)>=5) )
)

TWO SUITED OVERCALLS

To get a Michaels Cue bid or Unusual 2NT overcall (NB will also get ‘extremes’ e.g. (1C)-? D+S)

(
(hearts(west)>=5&&shape(north, 5x5x+5xx5+xx55))||
(spades(west)>=5&&shape(north, x55x+x5x5+xx55))||
(clubs(west)>=4&&hearts(west)<=4&&spades(west)<=4&&shape(north, 55xx+5x5x+x55x))|| (diamonds(west)>=4&&hearts(west)<=4&&spades(west)<=4&&shape(north, 55xx+5xx5+x5x5)) )&& hcp(west)>=12&&hcp(west)<=19&&!(shape(west, any 5332 + any 4432 + any 4333)&&hcp(west)>=15&&hcp(west)<=17) &&hcp(north)>=6

WIDE RANGE 1NT RESPONSE

To get a 1D/M opening with 1NT response

(
(hearts(north)>=5&&shape(south, 3244 + 3253 + 3235 + 31xx + 21xx))||
(spades(north)>=5&&shape(south, 2344 + 2353 + 2335 + 1xxx + 2xxx))||
((diamonds(north)>=5||shape(north, 3343))&&shape(south, 3235 + 2335 + 3325))
)&&
hcp(north)>=12&&hcp(north)<=19&& !(shape(north, any 5332)&&hcp(north)>=15&&hcp(north)<=17)&& hcp(south)>=6&&hcp(south)<=11

OPENING 2C

To get a 2C opening, either less than 5 loser hand & 19+ HCP or any 23+ HCP with specific distributional response

(
(
loser(south)<5&&hcp(south)>19
)||
hcp(south)>=23
)&&
shape(north, any 6xxx + any 7xxx)

To get distributional hands that qualify for a 2C opening – i.e. satisfy the ‘Rule of 25’ but are less than 22 HCP

loser(south)<5&&hcp(south)>16&&hcp(south)<22&&shape(south, any 6xxx + any 7xxx + any 55xx)

To get a 2C opening, either less than 5 loser hand & 19+ HCP or any 23+ HCP with a potential overcall (NB BBO robots don’t overcall, so you need to rebid considering the auction if they had

((loser(south)<5&&hcp(south)>19)||hcp(south)>=23)&&
(
(shape(east,xxx6)&&hcp(east,clubs)>=5)||
(shape(east,xx6x)&&hcp(east,diamonds)>=5)||
(shape(east,x6xx)&&hcp(east,hearts)>=5)||
(shape(east,6xxx)&&hcp(east,spades)>=5)
)

OPENING 2D – EKREN

To get an Ekren opening with a responding 15 HCP opposite.

(
hearts(north)>=4&&spades(north)>=4&&
hcp(north)>=5&&hcp(north)<=9 )&& hcp(south)>=15

OPENING 2D/2M – ‘MULTI-STYLE’

To get an opening 2D ‘weak’ Weak 2M (showing 5+ cards + another suit or 6 card suit <8 HCP) OR opening 2M ‘intermediate’ 2M (showing 8-11 HCP with a 6 card suit)

(
(shape(north, 6xxx + x6xx)&&hcp(north)<12)||
(shape(north, 55xx + 54xx + 45xx + 5x4x + 5xx4 + x54x + x5x4 + 5x5x + 5xx5 + x55x + x5x5)&&hcp(north)<8)
)

OPENING 2NT:-

To get an opening 2NT

opening2NT =
(
shape(north, any 5332 + any 4432 + any 4333)&&
hcp(north)>=20&&hcp(north)<=22
)
condition opening2NT

To get an opening 2NT and responder has both minors

condition opening2NT&&
(
(shape(south, xx54 + xx45 + xx55 + xx65 + xx56)&&hcp(south)>3)||
(shape(south, 2344 + 3244)&&hcp(south)>10)
)


To get an opening 1NT or 2NT with a 2/3C, 2/3S or 2N response:-

(
shape(north, any 5332 + any 4432 + any 4333)&&
((hcp(north)>=15&&hcp(north)<=17)||(hcp(north)>=20&&hcp(north)<=22)) )&& ( ( shape(south, any 4333 + any 4432 + any 4441)&& hcp(south)>7
)||
(
shape(south, xx6x + xxx6 + xx7x + xxx7)&&
hcp(south)<8 )|| ( shape(south, xx54 + xx45 + xx55 + xx65 + xx56)&& hcp(south)>7
)

)

Practicing against a weak-only Multi 2D

They (West) open a weak only Multi 2D – 5-9pts, 6 card suit, 3+pts in suit, no outside 4 card major or 5 card suit.

East has a maximum of 8pts

Max EW total pts =9+8=17pts. Min EW pts =5+0=5pts.

condition (shape(west, 6x4x + 6xx4 -64xx +63xx +6x3x +6xx3) and hcp(west)>=5 and hcp(west)<=9 and hcp(west, spades)>=3 and hcp(east)<=8) or (shape(west, x64x + x6x4 -46xx +36xx +x63x +x6x3) and hcp(west)>=5 and hcp(west)<=9 and hcp(west, hearts)>=3 and hcp(east)<=8)

To get a 1NT or 2NT opening with balanced hands and minor suit 2 suiters :

shape(north, any 5332 + any 4432 + any 4333)&&
(
hcp(north)>=20&&hcp(north)<=22&& ( (shape(south, any 4333 + any 2344)&&hcp(south)>11)||
(shape(south, 2344 + 3244 + 1354 + 3154 + 2254)&&hcp(south)>10)
)
)||
(
hcp(north)>=15&&hcp(north)<=17&& ( (shape(south, any 4333 + any 2344)&&hcp(south)>16)||
(shape(south, 2344 + 3244 + 1354 + 3154 + 2254)&&hcp(south)>15)
)
)

PRE-EMPTIVE OPENINGS

To get a Weak 2M opening

hcp(south)>3&&hcp(south)<=9&& ( (shape(south,x6xx)&&hcp(south, hearts)>2)||(shape(south,6xxx)&&hcp(south, spades)>2)
)

To get a Weak 2M or 2 suited opening

hcp(south)>4&&hcp(south)<=9&& ( ((shape(south,x6xx)&&hcp(south, hearts)>2)||(shape(south,6xxx)&&hcp(south, spades)>2))||
(shape(south, any 55xx)||shape(south, any 54xx)||shape(south, 44xx))

)

To get a Weak 2 opening with a takeout double and Lebensohl opposite double

(
hcp(east)>5&&hcp(east)<=10&& ( ((shape(east,xx6x)&&spades(east)<4&&hearts(east)<4)&&hcp(east,diamonds)>4&&shape(south, 4414+4504+5404+4405+4513+5413+3415+4315))||
(shape(east,26xx)&&hcp(east,hearts)>4&&shape(south, 4144+5044+4054+4045+4153+4135+5143+5134))||
(shape(east,62xx)&&hcp(east,spades)>4&&shape(south, 1444+0544+0454+0445+1453+1435+1543+1534))
)&&
hcp(south)>13&&
shape(north, any 5xxx + any 4333 + any 4432 + any 54xx + any 6331)
)

To get a Weak 2 opening with a Leaping Michaels overall

(
hcp(east)>5&&hcp(east)<=9&& ( ((shape(east,xx6x)&&spades(east)<4&&hearts(east)<4)&&hcp(east,diamonds)>4&&shape(south, 55xx+5xx5+x5x5+65xx+56xx+5xx6+6xx5+x5x6+x6x5))||
(shape(east,26xx)&&hcp(east,hearts)>4&&shape(south, 5x5x+5xx5+xx55+6x5x+5x6x+5xx6+6xx5+xx56+xx65))||
(shape(east,62xx)&&hcp(east,spades)>4&&shape(south, x55x+x5x5+xx55+x65x+x56x+x5x6+x6x5+xx56+xx65))
)&&
hcp(south)>17
)

To get a Weak 3 opening with a takeout double

(
hcp(east)>5&&hcp(east)<=9&& ( ((shape(east,xxx7)&&spades(east)<4&&hearts(east)<4)&&hcp(east,clubs)>4&&shape(south, 4441+4540+5440+4450+4531+5431+3451+4351))||
((shape(east,xx7x)&&spades(east)<4&&hearts(east)<4)&&hcp(east,diamonds)>4&&shape(south, 4414+4504+5404+4405+4513+5413+3415+4315))||
(shape(east,27xx)&&hcp(east,hearts)>4&&shape(south, 4144+5044+4054+4045+4153+4135+5143+5134))||
(shape(east,72xx)&&hcp(east,spades)>4&&shape(south, 1444+0544+0454+0445+1453+1435+1543+1534))
)&&
hcp(south)>13
)

To get a Weak 3 opening with a Non-Leaping Michaels overcall

(
hcp(east)>5&&hcp(east)<=9&& ( ((shape(east,xxx7)&&spades(east)<4&&hearts(east)<4)&&hcp(east,clubs)>4&&shape(south, 55xx+5x5x+x55x+65xx+56xx+5x6x+6x5x+x56x+x65x))||
((shape(east,xx7x)&&spades(east)<4&&hearts(east)<4)&&hcp(east,diamonds)>4&&shape(south, 55xx+5xx5+x5x5+65xx+56xx+5xx6+6xx5+x5x6+x6x5))||
(shape(east,27xx)&&hcp(east,hearts)>4&&shape(south, 5x5x+5xx5+xx55+6x5x+5x6x+5xx6+6xx5+xx56+xx65))||
(shape(east,72xx)&&hcp(east,spades)>4&&shape(south, x55x+x5x5+xx55+x65x+x56x+x5x6+x6x5+xx56+xx65))
)&&
hcp(south)>17
)

2-level opening bids:

( hcp(north)>=22 or
(( hcp(north)>=6 and hcp(north)<=10) and ( (spades(north)==6 and hcp(north,spades)>=5) or
(hearts(north)==6 and hcp(north,hearts)>=5) or
(diamonds(north)==6 and hcp(north,diamonds)>=5 ))))

1m opening bid + simple overcall

(( hcp(north)>=11 and clubs(north)>=5 and spades(north)<=4 and hearts(north)<=4 ) or ( hcp(north)>=11 and diamonds(north)>=5 and spades(north)<=4 and hearts(north)<=4 ) or ( hcp(north)>=12 and hcp(north)<=14 and spades(north)<=4 and hearts(north)<=4 ) or ( hcp(north)>=18 and hcp(north)<=19 and spades(north)<=4 and hearts(north)<=4 ) ) and (( hcp(east)>=9 and spades(east)>=5 ) or
( hcp(east)>=9 and hearts(east)>=5 ) or
( hcp(east)>=11 and clubs(east)>=6) or
( hcp(east)>=11 and diamonds(east)>=6))

To get BBO to deal specific cards and force an auction

predeal north SA83, HAT, DQJ9754, C74
predeal west SQT742, HKQJ6, DT, CQJ6
west1s = hcp(west)>10 && spades(west)>= 5
north3d = hcp(north)>6 && diamonds(north)>= 6
condition west1s && north3d

It would be nice if BBO forced West to open 1S and North overcall 3D, but the keywords do not refer to the bids, only to force the distributions set by the keyword criteria. In the above example therefore the west1s and north3d have no use since they have already been assigned their cards.

So, to get North to overcall 3D you have to sit in that seat and do it, then let the robots take the other polarities.

Other specific card holding conditions:-

aces(south) == 1 && kings(south) == 1 (also able to specify queens, jacks and tens)
clubs(south)==7 and hascard(south,AC) and hascard(south,KC) and hascard(south,QC)

You can get GIB to analyse a hand by using this as input to the Dealer Source:-

predeal north S63, HK52, DQJ7, CAK543
predeal south SA, HA874, DK53, CQT762
predeal east SJT9852, HJ63, DT2, CJ9

————————————————-Aus dem Netz
Practicing against a weak-only Multi 2D

They (West) open a weak only Multi 2D – 5-9pts, 6 card suit, 3+pts in suit, no outside 4 card major or 5 card suit.

East has a maximum of 8pts

Max EW total pts =9+8=17pts. Min EW pts =5+0=5pts.

condition (shape(west, 6x4x + 6xx4 -64xx +63xx +6x3x +6xx3) and hcp(west)>=5 and hcp(west)<=9 and hcp(west, spades)>=3 and hcp(east)<=8) or

(shape(west, x64x + x6x4 -46xx +36xx +x63x +x6x3) and hcp(west)>=5 and hcp(west)<=9 and hcp(west, hearts)>=3 and hcp(east)<=8)

I’m trying to create a bidding table to practice the 4♦ relay after Gambling 3NT.

I need South to hold AKQxxxx in Clubs and 9-11 HCP, and North to hold 14+ HCP.

What would be the script to accomplish this?

clubs(south)==7 and

hascard(south,AC) and hascard(south,KC) and hascard(south,QC) and

hcp(north)>=14

You also need to set the dealer to south.

If your gambling no trump has other conditions then you might need some other constraint on the hcp or other honours.

You can also accomplish the constraint on the club suit with

hcp(south,clubs)>=9

You may also be interested in longer minor suits.

With a solid minor suit and no side honours (ace or king):

(
(clubs(south)>=7 and hcp(south,clubs)>=9 and
hcp(south,diamonds)<=3 and not hascard(south,KD)) or

(diamonds(south)>=7 and hcp(south,diamonds)>=9 and
hcp(south,clubs)<=3 and not hascard(south,KC))

) and

hcp(south,spades)<=3 and not hascard(south,KS) and
hcp(south,hearts)<=3 and not hascard(south,KH) and

hcp(north)>=14

Whoops just noticed you have 9-11 hcp.

So

(

(clubs(south)>=7 and hcp(south,clubs)>=9) or

(diamonds(south)>=7 and hcp(south,diamonds)>=9)

) and

hcp(south)<=11 and

hcp(north)>=14

is simpler and should work.

generate 10000
produce 1000
vulnerable NS
dealer north
north2h=((hearts(north)>=5 && hcp(north)>=8 && hcp(north)<=13 && not shape(north, any 5422, any 5332) ) north2d=(diamonds(north)>=5 && hcp(north)>=8 && hcp(north)<=13 && not shape(north, any 5422, any 5332) ) north2s=(spades(north)>=5 && hcp(north)>=8 && hcp(north)<=13) && not shape(north, any 5422, any 5332) )
condition north2h || north2d || north2s

action printall

To get an opening 1NT with the balance of points and a Robot intervention:
strongNT =
(
shape(north, any 5332 + any 4432 + any 4333)&&
hcp(north)>=15&&hcp(north)<=17 ) condition strongNT&& hcp(east)>12&&shape(east, any 6xxx + any 5440 + any 55xx)&&

(hcp(north)+hcp(south)>=21)

To get a Weak 2 opening with a takeout double and Lebensohl opposite double


(
hcp(east)>5&&hcp(east)<=9&& ( ((shape(east,xx6x)&&spades(east)<4&&hearts(east)<4)&&hcp(east,diamonds)>4&&shape(south,
4414+4504+5404+4405+4513+5413+3415+4315))||
(shape(east,26xx)&&hcp(east,hearts)>4&&shape(south, 4144+5044+4054+4045+4153+4135+5143+5134))||
(shape(east,62xx)&&hcp(east,spades)>4&&shape(south, 1444+0544+0454+0445+1453+1435+1543+1534))
)&&
hcp(south)>13&&
shape(north, any 5xxx)
)

=Possible Slam and GS

r1 = hascard(west,2C)
r2 = hascard(east,3D)
h = hcp(north) + hcp(south)
c = 16 <= hcp(north) || 16 <= hcp(south)
Hi = c && (31 <= h) && (h <= 32)
Me = c && (29 == h) && (r1 || r2)
Lo = c && (25 == h) && (r1)
condition Hi || Me || Lo

===================================================