【第144回】私家版カッシーノ! その2 -タイサイ必勝法

世の中には誰の目から見ても非合法なのに逮捕もされずに社会のしくみとして何十年も継続していることがある。
そのうちの一つに、企業の役員報酬に対する二重課税の問題がある。

二重課税とは、課税原因(課税対象の取引や事象)に関して、同種の課税が2回以上行われることを指す。
役員報酬は企業が法人税を支払って残った利益の一部を報酬として分配するものであるが、それに再び所得税がかけられるので完全な二重課税である。

年金型生命保険も所得税と相続税の二重課税が長年課せられて何十年も放置されていたが、2010年7月6日に最高裁が違憲判決を出し、10年前の2000年に遡及して還付することが決定し現在は大問題に発展している。(以下引用)


遺族が年金形式で受け取る生命保険金に対する所得税の課税の取消しについて

平成22年7月6日付最高裁判決において、年金の各支給額のうち相続税の課税対象となった部分については、所得税法9条1項15号(現行16号)により所 得税の課税対象とならないものというべきであると判示され、遺族が年金形式で受け取る生命保険金に対する所得税の課税が取り消されました。

この問題について、7月7日(水)に野田財務大臣から、以下の方針が発表されています。
 「まず、今般の最高裁判決については謙虚に受け止めて、そして適正に対処していきたいというふうに思います。
 そのうえで、これまでのいわゆる解釈を変更することになりますが、そういう変更をして、そして過去5年分の所得税については更正の請求を出していただい たうえで、それを経て減額の更正をするという形の対処をしていきたいというふうに思います。誠意を持って対応していきたいと思います。
 問題は5年を超える部分でございます。5年を超える部分の納税の救済については、これは制度上の対応が必要になると思います。法的な措置が必要なのか、 政令改正で済むのか、これはよく子細に検討させていただきたいと思いますけれども、関係者の皆様にご迷惑をかけないように、これも対応をしていきたいと思 います。
 さらにこれ以外の、生保年金以外に相続をした金融商品で、今回の判決を踏まえて対応しなければいけない、改善しなければいけないものもあるかもしれませ ん。それについては、改善すべきは改善をしていくということで、具体的には政府税調の中で議論をして来年度の税制改正で対応するということも視野に入れて いきたいと思います。」

国税庁においては、上記の方針を踏まえ、これまでの法令解釈を変更し、これにより所得税額が納めすぎとなっている方の過去5年分の所得税について は、更正の請求を経て、減額更正を行い、お返しすることとなります。現在、判決に基づき、課税の対象とならない部分の算定方法などの検討を進めていますの で、具体的な対応方法については、対応方法が確定しだい、国税庁ホームページや税務署の窓口などにおいて、適切に広報・周知を図っていくこととしていま す。
 また、過去5年分を超える納税分については、上記の方針に基づいた対応策が決まりしだい、適切に対処します。

(以上、2010年10月7日 国税庁ホームページより引用)


この他にも、ガソリン税配当等、日本には二重課税がまだ存在するが、いずれは最高裁で非合法認定になるであろう。

パチンコの換金も戦後から何十年も非合法行為であるにもかかわらず放置された問題である。
現在パチンコは事実上のギャンブル(賭博)であるにもかかわらず、警察の見解では風適法(風俗営業等の規制および業務の適正化に関する法律)のもとに遊技 場と位置付けられ、縁日の輪投げや温泉街の射的と同じ位置付けのビジネスとして解釈され、獲得した玉は景品とのみ交換できるとされている。
従って、外部の景品交換所で現金化するのは本来違法なのである。これを禁じている法律が刑法185条の賭博罪である。

ところが、この賭博罪はバクチの胴元がおかみ、すなわち国であれば合法なのである。これが公営ギャンブルである。
公営ギャンブルは実は省庁の利権の金城湯池となっているのである。天下りや分配による利権を貪ってきたのである。

公営ギャンブルは、競艇は国土交通省、競輪とオートレースは経済産業省、競馬は農林水産省、サッカーくじは文部科学省、宝くじは総務省が胴元となって利権 を独占している。それぞれがヤクザのシマのようになってシノギを叩き出していたのである。一般人には刑法でギャンブルを禁止しておいて官僚だけがヤクザ顔 負けの利権を独占し、パチンコ換金の非合法を戦後70年も黙認してきたのである。

この実態に反旗をひるがえしたのが、2010年4月に超党派議員(自民、民主、公明、社民、国民新、みんなの各党)100人が立ち上げた「国際観光産業振興議員連盟」通称“カジノ議連”である。
今まで官僚が独占していた賭博利権を開放して、日本でもカジノを合法化しようという議員立法のグループである。

思えば、競艇もオートレースも競輪も競馬も暗かった。アル中のオジサンが焼鳥とスポーツ新聞を片手に焼酎をあおりながらサラ金から借りた全財産をを賭けてスッテンテンになるという陰惨なイメージしかない。
とてもジェームスボンドがタキシードで顔を出すような場所ではない。

こうした公営ギャンブルは今となっては時代遅れも甚だしく、若い連中からは完全にそっぽを向かれている状態である。
しかも、こうした公営ギャンブルは控除率(テラ銭)が異様に高く(20~25%)、完全に胴元が損しない仕組みになっている。25%を胴元が初めから持ってゆくと、客に勝ち目はほとんどない。

ちなみに、カジノの控除率は以下のようになっている。

アメリカンルーレット 5%
ヨーロピアンルーレット 2.7%
バカラ 1~4%
スロットマシン 3~15%
ブラックジャック -1%~1%

日本の公営ギャンブルがいかに過大なテラ銭を客から巻き上げているということがわかっただろう。

この秋の臨時国会でカジノ議連はカジノ法を議員立法で提出することになっている。
観光立国日本を実現するためである。
筆者はソウルやマカオに行かなくても日本でカジノができればいいとは思うが、沖縄とか北海道にできるのであれば、多分コストの面で相不変ソウルに行くことになるであろう。ここのところは赤坂、銀座、六本木辺りに一軒所望したいところである。

さて、筆者コラム「第139回 私家版カッシーノ!~How to カジノ」では、ルーレットについて書いたが、今回は中国人に大人気のサイコロゲーム“タイサイ”について考察してみたい。
考察と書いたのは、この必勝法は筆者による検証実験がまだ不十分なためにシミュレーション上はOKなのだが、実践での検証が不十分だからである。皆さんか らの実践レポートをお待ちしたいところである。よって“必勝”と言い切れるエビデンスはまだない(そこのとこよろしく)。

まず、タイサイのテーブルレイアウトを見ていただきたい。

taisai

タイサイは3つのサイコロの目によっていろいろなパターンの賭け方がある(出る目とか総和とか)。
それぞれに倍率が設定してあり、賭け方も何千通りとあるのだが、今回の戦略はタイサイの語源となった大(タイ)と小(サイ)の2つのエリアのみで勝負するシンプルな方法である。

大のエリアは、3つのサイコロのΣ(総和)が11~17、小のエリアは、3つのサイコロのΣが4~10に来れば1倍(すなわち、200円賭ければ400円になる)という基本的なエリアである。ルールはいたって簡単である。

flow chart for taisai

【解説】
タイサイはサイコロを3つ使用するので、2つのサイコロを使用するのに比べ大小のどちらかに連続して偏る偏差が少ない。
したがって、回数をこなせば必ずこの方法で勝つことができる。連続した目が9回以上という、9回は以下に作ったコンピュータによるシミュレーションの結果 割り出した最適数である。このシミュレーションをするにあたって、Javaのクラスでランダム係数によるサイコロを3つ作り、その数を100回、1000 回、10000回、100000回と繰返し実行することによってこの賭け方の妥当性を計算したのである。
所持金は4~7倍の間で機械的勝率は65%で、やめるルールを導入すれば90%になる。

下記の結果は、5勝負500回のシュミュレーション結果の一例である。

所持金1000ドルが100回×5戦の勝負後の結果

現在の手持ち金=6400 (6.4倍)
当り回数=54はずれ回数=46

現在の手持ち金=6600 (6.6倍)
当り回数=56はずれ回数=44

現在の手持ち金=4700 (4.7倍)
当り回数=44はずれ回数=56

現在の手持ち金=5800 (5.8倍)
当り回数=48はずれ回数=52

現在の手持ち金=6400 (6.4倍)
当り回数=55はずれ回数=45

———————————————————————————-

public class Dice {
  java.util.Random r = new java.util.Random();
 public int roll(){
  return r.nextInt(6) + 1;
 }
———————————————————————————-
 

public class TaiSai {

 /**
  * @param args
  */
 public static void main(String[] args) {
  // TODO 自動生成されたメソッド・スタブ
  Dice dice1 = new Dice();
  Dice dice2 = new Dice();
  Dice dice3 = new Dice();
  int cnt = 0;
  int cnt2 = 0;
  int cnt3 = 0;
  int box = 0;
  int box2 = 0;
  int box3 = 0;
  
  int samecnt = 0;
  int samecnt2 = 0;
  int bvalue = 0;  /*前回サイコロの数*/ 
  int betcnt = 100; /*ミニマム掛金100ドル*/
  int money = 1000; /*スタート1000ドルの所持金*/
  int nowbet = 0;
  int bet = 0;
  int hit =0;
  int loss = 0;
  for(int i=1;i<=100;i++){
   /*System.out.println(“—————————“);*/
   box = dice1.roll(); 
  /*System.out.println(“dice1 =” + box);*/
  
  box2=  dice2.roll();
  /*System.out.println(“dice2 =” + box2);*/
  /*System.out.println(dice3.roll());*/
  box3=  dice3.roll();
  /*System.out.println(“dice3 =” + box3);*/
  /*System.out.println(dice3.roll());*/
  /*System.out.println(“—————————“);*/
  
  /*cnt = dice1.roll() + dice2.roll() +dice3.roll();*/
  cnt = box;
  /*System.out.println(“cnt=” + cnt);*/
  cnt = cnt + box2;
  /*System.out.println(“cnt=” + cnt);*/
  cnt =  cnt + box3;
  /*System.out.println(“サイコロの目=” + cnt);*/
  
  if (cnt >= 11 ) {
   cnt2++;
   /*System.out.println(“大 の回数=” + cnt2);*/
   nowbet = 0;
   
    samecnt++;
    samecnt2= 0;
    System.out.println( “サイコロの目=” + cnt+” 大  “+”の連続回数=” + samecnt);
        
    bvalue = cnt; 
    /*System.out.println( “今回保持数=” + bvalue);*/
   
   }
  else {
   cnt3++;
   /*System.out.println(“小 の回数=” + cnt3); */
   /*System.out.println( cnt3); */
   nowbet = 1;
   
    samecnt2++;
    samecnt= 0;
   System.out.println( “サイコロの目=” + cnt+” 小  “+”の連続回数=” + samecnt2);
   
   bvalue = cnt; 
   /*System.out.println( “今回保持数=” + bvalue);*/
   /*System.out.println( samecnt2);*/}
     
   
  /*nowbet &=  bet;*/
  /*System.out.println( “現在の賭け金=” + betcnt);*/
  /*あたり判定プロセス*/
  if(nowbet==0 && bet==0 && cnt != 18){
   /*System.out.println( “当たり=” + nowbet+ bet);*/
   money = money + betcnt;
   bet = 1;
   betcnt = 100;
   hit = hit +1;
   
  }
   else if (nowbet==1 && bet==1 && cnt != 3){
    /*System.out.println( “当たり=” + nowbet+ bet); */
    money = money + betcnt;
    bet = 0;
    betcnt = 100;
    
    hit = hit +1;}
    else {
     System.out.println( “はずれ=” + nowbet+ bet); 
     money = money – betcnt;
     betcnt=betcnt *2;
     loss = loss +1;}
  
  System.out.println(“現在の掛け金=” + betcnt+ “現在の手持ち金=” + money);
  System.out.println( “——————————–” );
  if (cnt == 3){
   System.out.println( “一が3つ=” + cnt); 
  }  if (cnt == 18){
   System.out.println( “六が3つ=” + cnt); 
  }
  
  
  if (samecnt >=9 )
  {
  bet = 0;
  samecnt = 0;/*大の連続カウント変数の初期化*/
  betcnt = 100;
   System.out.println( “9回以上の大の連続回数がでたので次回の賭けを大に変えます=” + samecnt+”現在の掛け
金=” + betcnt);
  }
  if (samecnt2 >=9 )
  {
  bet = 1;
  samecnt2= 0;/*小の連続カウント変数の初期化*/
  betcnt = 100;
  System.out.println( “9回以上の小の連続回数がでたので次回の賭けを小に変えます=” + samecnt2+”現在の掛け
金=” + betcnt);
 }
 } 
   
  
  System.out.println( “あたり回数=” + hit + “はずれ回数=” + loss);
  
 }
 }