[BACK]Return to gtt_ekn-ja.texi CVS log [TXT][DIR] Up to [local] / OpenXM / src / asir-contrib / packages / doc / gtt_ekn

File: [local] / OpenXM / src / asir-contrib / packages / doc / gtt_ekn / gtt_ekn-ja.texi (download)

Revision 1.1, Mon Mar 21 00:16:10 2016 UTC (8 years, 5 months ago) by takayama
Branch: MAIN

This initial version of the manual of gtt_ekn.rr

%% $OpenXM: OpenXM/src/asir-contrib/packages/doc/gtt_ekn/gtt_ekn-ja.texi,v 1.1 2016/03/21 00:16:10 takayama Exp $
%% ptex gtt_ekn.texi   (.texi $B$^$G$D$1$k(B. platex $B$G$J$/(B ptex) 
%% $B0J2<%3%a%s%H$O(B @comment $B$G;O$a$k(B.  \input texinfo $B0J9_$OIaDL$N(B tex $BL?Na$O;H$($J$$(B.
\input texinfo
@iftex
@catcode`@#=6
@def@fref#1{@xrefX[#1,,@code{#1},,,]}
@def@b#1{{@bf@gt #1}}
@catcode`@#=@other
@end iftex
@overfullrule=0pt
@c -*-texinfo-*-
@comment %**start of header
@comment --- $B$*$^$8$J$$=*$j(B ---

@comment --- GNU info $B%U%!%$%k$NL>A0(B ---
@setfilename xyzman

@comment --- $B%?%$%H%k(B ---
@settitle 2$B85J,3dI=(BHGM

@comment %**end of header
@comment %@setchapternewpage odd

@comment --- $B$*$^$8$J$$(B ---
@ifinfo
@macro fref{name}
@ref{\name\,,@code{\name\}}
@end macro
@end ifinfo

@iftex
@comment @finalout
@end iftex

@titlepage
@comment --- $B$*$^$8$J$$=*$j(B ---

@comment --- $B%?%$%H%k(B, $B%P!<%8%g%s(B, $BCx<TL>(B, $BCx:n8"I=<((B ---
@title 2$B85J,3dI=(BHGM$B4X?t(B
@subtitle Risa/Asir 2$B85J,3dI=(BHGM$B4X?t@bL@=q(B
@subtitle 1.0 $BHG(B
@subtitle 2016 $BG/(B 3 $B7n(B 21 $BF|(B

@author  by Y.Goto, Y.Tachibana, N.Takayama
@page
@vskip 0pt plus 1filll
Copyright @copyright{} Risa/Asir committers
2004--2010. All rights reserved.
@end titlepage

@comment --- $B$*$^$8$J$$(B ---
@synindex vr fn
@comment --- $B$*$^$8$J$$=*$j(B ---

@comment --- @node $B$O(B GNU info, HTML $BMQ(B ---
@comment --- @node  $B$N0z?t$O(B node-name,  next,  previous,  up ---
@node Top,, (dir), (dir)

@comment --- @menu $B$O(B GNU info, HTML $BMQ(B ---
@comment --- chapter $BL>$r@53N$KJB$Y$k(B ---
@comment --- $B$3$NJ8=q$G$O(B chapter XYZ, Chapter Index $B$,$"$k(B.
@comment ---  Chapter XYZ $B$K$O(B section XYZ$B$K$D$$$F(B, section XYZ$B$K4X$9$k4X?t$,$"$k(B.
@menu
* 2$B85J,3dI=(BHGM$B$N4X?t@bL@=q$K$D$$$F(B::
* 2$B85J,3dI=(BHGM$B$N4X?t(B::
* Index::
@end menu

@comment --- chapter $B$N3+;O(B ---
@comment --- $B?F(B chapter $BL>$r@53N$K(B. $B?F$,$J$$>l9g$O(B Top ---
@node 2$B85J,3dI=(BHGM$B$N4X?t@bL@=q$K$D$$$F(B,,, Top
@chapter 2$B85J,3dI=(BHGM$B$N4X?t@bL@=q$K$D$$$F(B

$B$3$N@bL@=q$G$O(B
HGM(holonomic gradient method) $B$rMQ$$$?(B2$B85J,3dI=$N4X?t$K$D$$$F@bL@$9$k(B.
ChangeLog $B$N9`L\$O(B www.openxm.org $B$N(B cvsweb $B$G(B
$B%=!<%9%3!<%I$rFI$`;~$N=u$1$K$J$k>pJs$,=q$+$l$F$$$k(B.

$BK\J8Cf$G0zMQ$7$F$$$kJ88%$rNs5s$9$k(B.
@itemize @bullet
@item [GM2016] 
Y.Goto, K.Matsumoto, Pfaffian equations and contiguity relations of the hypergeometric function of type (k+1,k+n+2) and their applications, arxiv:1602.01637 (version 1)
@item [T2016] 
Y.Tachibana, $B:9J,%[%m%N%_%C%/8{G[K!$N%b%8%e%i!<%a%=%C%I$K$h$k7W;;$N9bB.2=(B,
2016, $B?@8MBg3X=$;NO@J8(B.
@item [GTT2016]
Y.Goto, Y.Tachibana, N.Takayama, 2$B85J,3dI=$KBP$9$k:9J,%[%m%N%_%C%/8{G[K!$N<BAu(B,
$B?tM}8&9V5fO?(B($B7G:\M=Dj(B).
@item [TKT2015]
N.Takayama, S.Kuriki, A.Takemura, 
         $A$-hypergeometric distributions and Newton polytopes.
         arxiv:1510.02269
@end itemize

$B$3$N%^%K%e%"%k$G@bL@$9$k4X?t$rMQ$$$?%W%m%0%i%`Nc$O(B
gtt_ekn/test-t1.rr 
$B$J$I(B.

@node 2$B85J,3dI=(BHGM$B$N4X?t(B,,, Top
@chapter 2$B85J,3dI=(BHGM$B$N4X?t(B

@comment --- section ``$B<B83E*4X?t(B'' $B$N(B subsection xyz_abc
@comment --- subsection xyz_pqr xyz_stu $B$,$"$k(B.
@menu
* gtt_ekn.gmvector::
* gtt_ekn.nc::
* gtt_ekn.lognc::
* gtt_ekn.expectation::
* gtt_ekn.setup::
* gtt_ekn.upAlpha::
@end menu

@node $BD64v2?4X?t(BE(k,n),,, 2$B85J,3dI=(BHGM$B$N4X?t(B
@section $BD64v2?4X?t(BE(k,n)

@comment **********************************************************
@comment --- $B"~"~"~"~(B  $B$N@bL@(B 
@comment --- $B8D!9$N4X?t$N@bL@$N3+;O(B ---
@comment --- section $BL>$r@53N$K(B ---
@node gtt_ekn.gmvector,,, $BD64v2?4X?t(BE(k,n)
@subsection @code{gtt_ekn.gmvector}
@comment --- $B:w0zMQ%-!<%o!<%I(B
@findex gtt_ekn.gmvector

@table @t
@item gtt_ekn.gmvector(@var{beta},@var{p})
:: $B<~JUOB(B @var{beta}, $B%;%k$N3NN((B @var{p} $B$NFs85J,3dI=$KIU?o$9$kD64v2?4X?t(B
E(k,n) $B$NCM$*$h$S$=$NHyJ,$NCM$rLa$9(B.
@item gtt_ekn.ekn_cBasis_2(@var{beta},@var{p}) 
$B$NJLL>$G$"$k(B.
@end table

@comment --- $B0z?t$N4JC1$J@bL@(B ---  $B0J2<$^$@=q$$$F$J$$(B.
@table @var
@item return
$B%Y%/%H%k(B, $BD64v2?4X?t$NCM$H$=$NHyJ,(B. $B>\$7$/$O2<5-(B.
@item beta
$B9TOB(B, $BNsOB$N%j%9%H(B. $B@.J,$O$9$Y$F@5$G$"$k$3$H(B. 
@item p
$BFs85J,3dI=$N%;%k$N3NN($N%j%9%H(B
@end table

@comment --- $B$3$3$G4X?t$N>\$7$$@bL@(B ---
@comment --- @itemize$B!A(B@end itemize $B$O2U>r=q$-(B ---
@comment --- @bullet $B$O9uE@IU$-(B ---
@itemize @bullet
@item 
gmvector $B$O(B Gauss-Manin vector $B$NN,$G$"$k(B [GM2016].
@item 
gmvector $B$NLa$jCM$O(B [GM2016] $B$N#4>O$GDj5A$5$l$F$$$k%Y%/%H%k(B F $B$G$"$k(B.
$B$?$@$7Bh0l@.J,$,(B [GM2016] $B$N#6>O$GDj5A$5$l$F$$$k5i?t(B S $B$NCM$HEy$7$/(B
$B$J$k$h$&$K%9%+%i!<G\$5$l$F$$$k(B.
@item 
 r1 x r2 $BJ,3dI=$r9M$($k(B.
 m+1=r1, n+1=r2 $B$H$*$/(B. 
 $B@55,2=Dj?t(B Z $B$OJ,3dI=(B u $B$r(B (m+1) $B!_(B (n+1) $B9TNs$H$9$k$H$-(B p^u/u! $B$NOB$G$"$k(B.
 $B$3$3$GOB$O9TOBNsOB$,(B @var{beta} $B$G$"$k$h$&$J(B u $BA4BN$G$H$k(B
 [TKT2015], [GM2016].
 S $B$O$3$N5i?t$N(B p $B$r(B
@verbatim
  [[1,y11,...,y1n],
   [1,y21,...,y2n],...,
   [1,ym1, ...,ymn],
   [1,1, ..., 1]]
@end verbatim
$B!!(B(1 $B$,(B L $B;z7?$KJB$V(B),
$B$H@55,2=$7$?5i?t$G$"$k(B.
@item
2x(n+1)$BJ,3dI=$G(B, gmvector $B$NLa$jCM$r(B Lauricella  F_D $B$G=q$/$3$H$,(B
$B0J2<$N$h$&$K$G$-$k(B
(b[2][1]-b[1][1] >= 0 $B$N>l9g(B). 
$B$3$3$G(B b[1][1], b[1][2] $B$O(B, $B$=$l$>$l(B 1 $B9TL\$N9TOB(B, 2 $B9TL\$N9TOB(B,
b[2][i] $B$O(B i $BNsL\$NNsOB$G$"$k(B.
@comment ekn/Talks/2015-12-3-goto.tex
@verbatim
S=F_D(-b[1,1], [-b[2,2],...,-b[2,n+1]], b[2,1]-b[1,1]+1 ; y)/C,
@end verbatim
C=b[1,1]! b[2,2]! ... b[2][n+1]! (b[2,1]-b[1,1])!
$B$H$*$/(B. 
1/C $B$O(B L $B;z7?$NJ,3dI=(B 
@verbatim
[[b[1,1],       0,      ..., 0       ],
 [b[2,1]-b[1,1],b[2,2], ..., b[2,n+1]]]
@end verbatim
$B$KBP1~(B.
gmvector $B$O(B
@verbatim
[S,(y11/a2) d_11 S,(y12/a3) d_12 S, ..., (y1n/a_(n+1)) d_1n S]
@end verbatim
$B$G$"$k(B.
$B$3$3$G(B d_ij $B$O(B yij $B$K$D$$$F$NHyJ,(B,
@verbatim
  [a0,     a1, ...                      ,a_(n+2)] 
= [-b[1,2],-b[1,1],b[2,2], ..., b[2,n+1],b[2,1]]
@end verbatim
$B$G$"$k(B.
@item 
$B<~JUOB(B @var{beta}$B$N;~$N@55,2=Dj?t$N%;%k3NN((B @var{p} $B$KBP$9$kCM$O(B $BB?9`<0$KB`2=$7$?(B E(k,n) $B$NCM$GI=8=$G$-$k(B. $BJ88%(B [TKT2015], [GM2016] $B;2>H(B.
@item 
option crt=1 (crt = Chinese remainder theorem) $B$rM?$($k$H(B, $BJ,;67W;;$r$*$3$J$&(B
[T2016]. 
$BJ,;67W;;MQ$N3F<o%Q%i%a!<%?$N@_Dj$O(B
gtt_ekn.setup $B$G9T$J$&(B.
@end itemize

@comment --- @example$B!A(B@end example $B$O<B9TNc$NI=<((B ---
$BNc(B: $B<!$O(B2 x 2 $BJ,3dI=$G9TOB$,(B [5,1],  $BNsOB$,(B [3,3], $B3F%;%k$N3NN($,(B
[[1/2,1/3],[1/7,1/5]] $B$N>l9g$N(B gmvector $B$NCM$G$"$k(B.  
@example
[3000] load("gtt_ekn.rr");
[3001] ekn_gtt.gmvector([[5,1],[3,3]],[[1/2,1/3],[1/7,1/5]])
[775/27783]
[200/9261]
@end example

$B;29M(B: 2 x m $BJ,3dI=(B(Lauricella FD)$B$K$D$$$F$O%Q%C%1!<%8(B tk_fd $B$G$b2<5-$N$h$&$KF1Ey$J(B
$B7W;;$,$G$-$k(B.
$B<iHwHO0O$N0[$J$k%W%m%0%i%`F1;N$NHf3S(B, debug $BMQ;29M(B.
@example
[3080] import("tk_fd.rr");
[3081] A=tk_fd.marginal2abc([4,5],[2,4,3]);
[-4,[-4,-3],-1]  // 2$BJQ?t(B FD $B$N%Q%i%a!<%?(B. a,[b1,b2],c
[3082] tk_fd.fd_hessian2(A[0],A[1],A[2],[1/2,1/3]);
Computing Dmat(ca) for parameters B=[-4,-3],X=[ 1/2 1/3 ]
[4483/124416,[ 1961/15552 185/1728 ],
 [ 79/288 259/864 ]
 [ 259/864 47/288 ]]
// $BLaCM$O(B [F=F_D, gradient(F), Hessian(F)]

// ekn_gt $B$G$NNc$HF1$8%Q%i%a!<%?(B.
[3543] A=tk_fd.marginal2abc([5,1],[3,3]);
[-5,[-3],-1]
[3544] tk_fd.fd_hessian2(A[0],A[1],A[2],[(1/3)*(1/7)/((1/2)*(1/5))]);
Computing Dmat(ca) for parameters B=[-3],X=[ 10/21 ]
[775/27783,[ 20/147 ],[ 17/42 ]]
@end example

$B;29M(B: $B0lHL$N(B A $BJ,I[$N@55,2=Dj?t$K$D$$$F$N(B Hessian $B$N7W;;$O<B83E*(B package ot_hessian_ahg.rr
$B$G<BAu$N%F%9%H$,$5$l$F$$$k(B. ($B$3$l$O$^$@L$40@.$N%F%9%HHG$J$N$G=PNO7A<0Ey$b>-MhE*$K$OJQ99$5$l$k(B.)
@example
import("ot_hgm_ahg.rr");
import("ot_hessian_ahg.rr");
def  htest4() @{
  extern C11_A;
  extern C11_Beta;
  Hess=newmat(7,7);
  A =C11_A;
  Beta0= [b0,b1,b2,b3];
  BaseIdx=[4,5,6];
  X=[x0,x1,x2,x3,x4,x5,x6];
  for (I=0; I<7; I++) for (J=0; J<7; J++) @{
    Idx = [I,J];
    H=hessian_simplify(A,Beta0,X,BaseIdx,Idx);
    Hess[I][J]=H;
    printf("[I,J]=%a, Hessian_ij=%a\n",Idx,H);
  @} 
  return(Hess);
@}
[2917] C11_A;
[[0,0,0,1,1,1,1],[1,0,0,1,0,1,0],[0,1,1,0,1,0,1],[1,1,0,1,1,0,0]]
[2918] C11_Beta;
[166,36,290,214]
[2919] Ans=htest4$
[2920] Ans[0][0];
[[((b1-b0-1)*x4)/(x0^2),[4]],[((b1-b0-1)*x6)/(x0^2),[6]],
 [(b1^2+(-2*b0-1)*b1+b0^2+b0)/(x0^2),[]],[(x6)/(x0),[6,0]],[(x4)/(x0),[4,0]]]
@end example

@comment --- $B;2>H(B($B%j%s%/(B)$B$r=q$/(B ---
@table @t
@item $B;2>H(B
@ref{gtt_ekn.setup}
@ref{gtt_ekn.pfaffian_basis}
@end table

@comment --- ChangeLog $B$r=q$/(B. $B%=!<%9%3!<%I$N0LCV(B. $BJQ99F|;~(B $B$J$I(B CVS$B%5!<%P$r8+$k$?$a(B
@noindent
ChangeLog
@itemize @bullet
@item
 $B$3$N4X?t$O(B 
[GM2016] $B$N%"%k%4%j%:%`$*$h$S(B 
[T2016] $B$K$h$k(B modular method $B$rMQ$$$?9bB.2=$r<BAu$7$?$b$N$G$"$k(B.  
@item
 $BJQ99$r<u$1$?%U%!%$%k$O(B 
 OpenXM/src/asir-contrib/packages/src/gtt_ekn.rr 1.1, gtt_ekn/ekn_pfaffian_8.rr
@end itemize


@comment **********************************************************
@node gtt_ekn.nc,,, $BD64v2?4X?t(BE(k,n)
@subsection @code{gtt_ekn.nc}
@comment --- $B:w0zMQ%-!<%o!<%I(B
@findex gtt_ekn.nc

@table @t
@item gtt_ekn.nc(@var{beta},@var{p})
:: $B<~JUOB(B @var{beta}, $B%;%k$N3NN((B @var{p} $B$NFs85J,3dI=$N>r7oIU$-3NN($N@55,2=Dj?t(B Z
$B$*$h$S$=$NHyJ,$NCM$rLa$9(B.
@end table

@comment --- $B0z?t$N4JC1$J@bL@(B ---  $B0J2<$^$@=q$$$F$J$$(B.
@table @var
@item return
$B%Y%/%H%k(B [Z,[[d_11 Z, d_12 Z, ...], ..., [d_m1 Z, d_m2 Z, ...., d_mn Z]]]
@item beta
$B9TOB(B, $BNsOB$N%j%9%H(B. $B@.J,$O$9$Y$F@5$G$"$k$3$H(B. 
@item p
$BFs85J,3dI=$N%;%k$N3NN($N%j%9%H(B
@end table

@comment --- $B$3$3$G4X?t$N>\$7$$@bL@(B ---
@comment --- @itemize$B!A(B@end itemize $B$O2U>r=q$-(B ---
@comment --- @bullet $B$O9uE@IU$-(B ---
@itemize @bullet
@item 
 r1 x r2 $BJ,3dI=$r9M$($k(B.
 m=r1, n=r2 $B$H$*$/(B. 
 $B@55,2=Dj?t(B Z $B$OJ,3dI=(B u $B$r(B m $B!_(B n $B9TNs$H$9$k$H$-(B p^u/u! $B$NOB$G$"$k(B.
 $B$3$3$GOB$O9TOBNsOB$,(B @var{beta} $B$G$"$k$h$&$J(B u $BA4BN$G$H$k(B
 [TKT2015], [GM2016].
 p^u $B$O(B p_ij^u_ij $B$N@Q(B, u! $B$O(B u_ij! $B$N@Q$G$"$k(B.
 d_ij Z $B$G(B Z $B$NJQ?t(B p_ij $B$K$D$$$F$NJPHyJ,$rI=$9(B.
@item
nc $B$O(B gmvector $B$NCM$r85$K(B, [GM2016] $B$N(B Prop
 7.1 $B$K4p$E$$$F(B Z $B$NCM$r7W;;$9$k(B.
@item 
option crt=1 (crt = Chinese remainder theorem) $B$rM?$($k$H(B, $BJ,;67W;;$r$*$3$J$&(B. 
$BJ,;67W;;MQ$N3F<o%Q%i%a!<%?$N@_Dj$O(B
gtt_ekn.setup $B$G9T$J$&(B.
@end itemize

@comment --- @example$B!A(B@end example $B$O<B9TNc$NI=<((B ---
$BNc(B: 2x3 $BJ,3dI=$G$N(B Z $B$H$=$NHyJ,$N7W;;(B.
@example
[2237] gtt_ekn.nc([[4,5],[2,4,3]],[[1,1/2,1/3],[1,1,1]]);
[4483/124416,[ 353/7776 1961/15552 185/1728 ]
[ 553/20736 1261/15552 1001/13824 ]]
@end example

$B;29M(B: 2 x m $BJ,3dI=(B(Lauricella FD)$B$K$D$$$F$O%Q%C%1!<%8(B tk_fd $B$G$b2<5-$N$h$&$KF1Ey$J(B
$B7W;;$,$G$-$k(B.
@example
[3076] import("tk_fd.rr");
[3077] A=tk_fd.marginal2abc([4,5],[2,4,3]);
[-4,[-4,-3],-1]
[3078] tk_fd.ahmat_abc(A[0],A[1],A[2],[[1,1/2,1/3],[1,1,1]]);
RS=[ 4 5 ], CSnew=[ 2 4 3 ], Ynew=[ 1 1/2 1/3 ]
[ 1 1 1 ]
Computing Dmat(ca) for parameters B=[-4,-3],X=[ 1/2 1/3 ]
[4483/124416,[[353/7776,1961/15552,185/1728],
              [553/20736,1261/15552,1001/13824]]]
// $BLaCM$O(B [Z, [[d_11 Z, d_12 Z, d_13 Z],
//             [d_21 Z, d_22 Z, d_23 Z]]] $B$NCM(B. 
//           $B$3$3$G(B d_ij $B$O(B i,j $B@.J,$K$D$$$F$NHyJ,$rI=$9(B.
@end example

@comment --- $B;2>H(B($B%j%s%/(B)$B$r=q$/(B ---
@table @t
@item $B;2>H(B
@ref{gtt_ekn.setup}
@ref{gtt_ekn.lognc}
@end table

@comment --- ChangeLog $B$r=q$/(B. $B%=!<%9%3!<%I$N0LCV(B. $BJQ99F|;~(B $B$J$I(B CVS$B%5!<%P$r8+$k$?$a(B
@noindent
ChangeLog
@itemize @bullet
@item
 $BJQ99$r<u$1$?%U%!%$%k$O(B 
 OpenXM/src/asir-contrib/packages/src/gtt_ekn.rr 1.1, gtt_ekn/ekn_eval.rr
@end itemize


@comment **********************************************************
@node gtt_ekn.lognc,,, $BD64v2?4X?t(BE(k,n)
@subsection @code{gtt_ekn.lognc}
@comment --- $B:w0zMQ%-!<%o!<%I(B
@findex gtt_ekn.lognc

@table @t
@item gtt_ekn.lognc(@var{beta},@var{p})
:: $B<~JUOB(B @var{beta}, $B%;%k$N3NN((B @var{p} $B$NFs85J,3dI=$N>r7oIU$-3NN($N@55,2=Dj?t(B Z
$B$N(B log $B$N6a;wCM$*$h$S$=$NHyJ,$N6a;wCM$rLa$9(B.
@end table

@comment --- $B0z?t$N4JC1$J@bL@(B ---  $B0J2<$^$@=q$$$F$J$$(B.
@table @var
@item return
$B%Y%/%H%k(B [log(Z), [[d_11 log(Z), d_12 log(Z), ...], [d_21 log(Z),...], ... ]
@item beta
$B9TOB(B, $BNsOB$N%j%9%H(B. $B@.J,$O$9$Y$F@5$G$"$k$3$H(B.  
@item p
$BFs85J,3dI=$N%;%k$N3NN($N%j%9%H(B
@end table

@comment --- $B$3$3$G4X?t$N>\$7$$@bL@(B ---
@comment --- @itemize$B!A(B@end itemize $B$O2U>r=q$-(B ---
@comment --- @bullet $B$O9uE@IU$-(B ---
@itemize @bullet
@item 
$B>r7oIU$-:GL`?dDj$KMxMQ$9$k(B [TKT2015].
@item option crt=1 (crt = Chinese remainder theorem) $B$rM?$($k$H(B, $BJ,;67W;;$r$*$3$J$&(B. 
$BJ,;67W;;MQ$N3F<o%Q%i%a!<%?$N@_Dj$O(B
gtt_ekn.setup $B$G9T$J$&(B.
@end itemize

@comment --- @example$B!A(B@end example $B$O<B9TNc$NI=<((B ---
$BNc(B: 2 $B!_(B 3 $BJ,3dI=$G$NNc(B. $BBh0l@.J,$N$_6a;wCM(B.
@example
[2238] gtt_ekn.lognc([[4,5],[2,4,3]],[[1,1/2,1/3],[1,1,1]]);
[-3.32333832422461674630,[ 5648/4483 15688/4483 13320/4483 ]
[ 3318/4483 10088/4483 9009/4483 ]]
@end example

$B;29M(B: 2 x m $BJ,3dI=(B(Lauricella FD)$B$K$D$$$F$O%Q%C%1!<%8(B tk_fd $B$G$b2<5-$N$h$&$KF1Ey$J(B
$B7W;;$,$G$-$k(B.
@example
[3076] import("tk_fd.rr");
[3077] A=tk_fd.marginal2abc([4,5],[2,4,3]);
[-4,[-4,-3],-1]
[3078] tk_fd.log_ahmat_abc(A[0],A[1],A[2],[[1,1/2,1/3],[1,1,1]]);
RS=[ 4 5 ], CSnew=[ 2 4 3 ], Ynew=[ 1 1/2 1/3 ]
[ 1 1 1 ]
Computing Dmat(ca) for parameters B=[-4,-3],X=[ 1/2 1/3 ]
[-3.32333832422461674639485797719209322217260539267246045320,
 [[1.2598706, 3.499442, 2.971224],
  [0.7401293, 2.250278, 2.009591]]]
// $BLaCM$O(B [log(Z), 
//          [[d_11 log(Z), d_12 log(Z), d_13 log(Z)],
//           [d_21 log(Z), d_22 log(Z), d_23 log(Z)]]] 
// $B$N6a;wCM(B.
@end example

@comment --- $B;2>H(B($B%j%s%/(B)$B$r=q$/(B ---
@table @t
@item $B;2>H(B
@ref{gtt_ekn.setup}
@ref{gtt_ekn.nc}
@end table

@comment --- ChangeLog $B$r=q$/(B. $B%=!<%9%3!<%I$N0LCV(B. $BJQ99F|;~(B $B$J$I(B CVS$B%5!<%P$r8+$k$?$a(B
@noindent
ChangeLog
@itemize @bullet
@item
 $BJQ99$r<u$1$?%U%!%$%k$O(B 
 OpenXM/src/asir-contrib/packages/src/gtt_ekn.rr 1.1.
@end itemize

@comment **********************************************************
@node gtt_ekn.expectation,,, $BD64v2?4X?t(BE(k,n)
@subsection @code{gtt_ekn.expectation}
@comment --- $B:w0zMQ%-!<%o!<%I(B
@findex gtt_ekn.expectation

@table @t
@item gtt_ekn.expectation(@var{beta},@var{p})
:: $B<~JUOB(B @var{beta}, $B%;%k$N3NN((B @var{p} $B$NFs85J,3dI=$N4|BTCM$r7W;;$9$k(B.
@end table

@comment --- $B0z?t$N4JC1$J@bL@(B ---  $B0J2<$^$@=q$$$F$J$$(B.
@table @var
@item return
$BFs85J,3dI=$N3F%;%k$N4|BTCM$N%j%9%H(B.
@item beta
$B9TOB(B, $BNsOB$N%j%9%H(B. $B@.J,$O$9$Y$F@5$G$"$k$3$H(B.  
@item p
$BFs85J,3dI=$N%;%k$N3NN($N%j%9%H(B
@end table

@comment --- $B$3$3$G4X?t$N>\$7$$@bL@(B ---
@comment --- @itemize$B!A(B@end itemize $B$O2U>r=q$-(B ---
@comment --- @bullet $B$O9uE@IU$-(B ---
@itemize @bullet
@item
[GM2016] $B$N(B Algorithm 7.8 $B$N<BAu(B.
@item option crt=1 (crt = Chinese remainder theorem) $B$rM?$($k$H(B, $BJ,;67W;;$r$*$3$J$&(B. 
$BJ,;67W;;MQ$N3F<o%Q%i%a!<%?$N@_Dj$O(B
gtt_ekn.setup $B$G9T$J$&(B.
@item option index $B$rM?$($k$H(B, $B;XDj$5$l$?@.J,$N4|BTCM$N$_7W;;$9$k(B.
$B$?$H$($P(B 2 x 2 $BJ,3dI=$G(B index=[[0,0],[1,1]] $B$H;XDj$9$k$H(B, 1 $B$N$"$k@.J,$N4|BTCM$N$_7W;;$9$k(B.
@end itemize

@comment --- @example$B!A(B@end example $B$O<B9TNc$NI=<((B ---

2$B!_(B2, 3$B!_(B3 $B$NJ,3dI=$N4|BTCM7W;;Nc(B. 
@example
[2235] gtt_ekn.expectation([[1,4],[2,3]],[[1,1/3],[1,1]]);
[ 2/3 1/3 ]
[ 4/3 8/3 ]
[2236] gtt_ekn.expectation([[4,5],[2,4,3]],[[1,1/2,1/3],[1,1,1]]);
[ 5648/4483 7844/4483 4440/4483 ]
[ 3318/4483 10088/4483 9009/4483 ]

[2442] gtt_ekn.expectation([[4,14,9],[11,6,10]],[[1,1/2,1/3],[1,1/5,1/7],[1,1,1]]);
[ 207017568232262040/147000422096729819 163140751505489940/147000422096729819 
                                        217843368649167296/147000422096729819 ]
[ 1185482401011137878/147000422096729819 358095302885438604/147000422096729819 
                                         514428205457640984/147000422096729819 ]
[ 224504673820628091/147000422096729819 360766478189450370/147000422096729819 
                                        737732646860489910/147000422096729819 ]
@end example

$B;29M(B: 2 x m $BJ,3dI=(B(Lauricella FD)$B$K$D$$$F$O%Q%C%1!<%8(B tk_fd $B$G$b2<5-$N$h$&$KF1Ey$J(B
$B7W;;$,$G$-$k(B.
@example
[3076] import("tk_fd.rr");
[3077] A=tk_fd.marginal2abc([4,5],[2,4,3]);
[-4,[-4,-3],-1]
[3078] tk_fd.expectation_abc(A[0],A[1],A[2],[[1,1/2,1/3],[1,1,1]]);
RS=[ 4 5 ], CSnew=[ 2 4 3 ], Ynew=[ 1 1/2 1/3 ]
[ 1 1 1 ]
Computing Dmat(ca) for parameters B=[-4,-3],X=[ 1/2 1/3 ]
[[5648/4483,7844/4483,4440/4483],
 [3318/4483,10088/4483,9009/4483]]
// $B3F%;%k$N4|BTCM(B.
@end example

$B;29M(B: $B0lHL$N(B A $BJ,I[$N7W;;$O(B ot_hgm_ahg.rr. $B$^$@<B83E*$J$?$a(B, module $B2=$5$l$F$$$J$$(B.
ot_hgm_ahg.rr $B$K$D$$$F$N;29MJ88%(B:
K.Ohara, N.Takayama, Pfaffian Systems of A-Hypergeometric Systems II --- Holonomic Gradient Method, arxiv:1505.02947
@example
[3237] import("ot_hgm_ahg.rr");
// 2 x 2 $BJ,3dI=(B.
[3238] hgm_ahg_expected_values_contiguity([[0,0,1,1],[1,0,1,0],[0,1,0,1]],
        [9,6,8],[1/2,1/3,1/5,1/7],[x1,x2,x3,x4]|geometric=1);
oohg_native=0, oohg_curl=1
[1376777025/625400597,1750225960/625400597,
 2375626557/625400597,3252978816/625400597]
// 2 x 2 $BJ,3dI=$N4|BTCM(B.

// 2 x 3 $BJ,3dI=(B.
[3238] hgm_ahg_expected_values_contiguity(
 [[0,0,0,1,1,1],[1,0,0,1,0,0],[0,1,0,0,1,0],[0,0,1,0,0,1]],
 [5,2,4,3],[1,1/2,1/3,1,1,1],[x1,x2,x3,x4,x5,x6]|geometric=1);
[5648/4483,7844/4483,4440/4483,3318/4483,10088/4483,9009/4483]
// 2 x 3 $BJ,3dI=$N4|BTCM(B. $B>e$HF1$8LdBj(B.
@end example

3 x 3 $BJ,3dI=(B. $B9=B$E*(B0$B$,0l$D(B.
@example
/*
  dojo, p.221 $B$N%G!<%?(B.  $B@.@S(B3$B0J2<$N@8EL$O=8$a$F$R$H$D$K(B.
  2 1 1
  8 3 3
  0 2 6

  row sum: 4,14,8
  column sum: 10,6,10
  0 $B$r0l$D4^$`$N$G(B, (3,6) $B7?$N(B A $B$+$i(B 7 $BNsL\$rH4$/(B.
*/

A=[[0,0,0,1,1,1, 0,0],
   [0,0,0,0,0,0, 1,1],
   [1,0,0,1,0,0, 0,0],
   [0,1,0,0,1,0, 1,0],
   [0,0,1,0,0,1, 0,1]];
B=[14,8,10,6,10];
hgm_ahg_expected_values_contiguity(A,B,[1,1/2,1/3,1,1/5,1/7,1,1],
$B!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!(B[x1,x2,x3,x4,x5,x6,x7,x8]|geometric=1);

// $BEz(B.
[14449864949304/9556267369631,
 10262588586540/9556267369631, 13512615942680/9556267369631,
 81112808747006/9556267369631,
 21816297744346/9556267369631, 30858636683482/9556267369631,
                              
 25258717886900/9556267369631,51191421070148/9556267369631]
@end example

3 x 3 $BJ,3dI=(B.
@example
/*
 $B>e$N%G!<%?$G(B 0 $B$r(B 1 $B$KJQ99(B.
  2 1 1
  8 3 3
  1 2 6

  row sum: 4,14,9
  column sum: 11,6,10
*/
A=[[0,0,0,1,1,1,0,0,0],
   [0,0,0,0,0,0,1,1,1],
   [1,0,0,1,0,0,1,0,0],
   [0,1,0,0,1,0,0,1,0],
   [0,0,1,0,0,1,0,0,1]];
B=[14,9,11,6,10];
hgm_ahg_expected_values_contiguity(A,B,[1,1/2,1/3,1,1/5,1/7,1,1,1],
                              [x1,x2,x3,x4,x5,x6,x7,x8]|geometric=1);

// $B4|BTCM(B, $BEz(B.   x9 $B$r;XDj$7$F$$$J$$$N$G(B, 9$BHVL\$N4|BTCM$O=PNO$7$F$J$$(B.
[207017568232262040/147000422096729819,
 163140751505489940/147000422096729819,217843368649167296/147000422096729819,
 1185482401011137878/147000422096729819,
 358095302885438604/147000422096729819,514428205457640984/147000422096729819,
 224504673820628091/147000422096729819,360766478189450370/147000422096729819]

// Z $B$d$=$NHyJ,$N7W;;$O(B hgm_ahg_contiguity $B4X?t$,$*$3$J$&$,(B, $B$3$l$N4J0W%$%s%?!<%U%'!<%9$O(B
// $B$^$@=q$$$F$J$$(B.
@end example



@comment --- $B;2>H(B($B%j%s%/(B)$B$r=q$/(B ---
@table @t
@item $B;2>H(B
@ref{gtt_ekn.setup}
@ref{gtt_ekn.nc}
@end table

@comment --- ChangeLog $B$r=q$/(B. $B%=!<%9%3!<%I$N0LCV(B. $BJQ99F|;~(B $B$J$I(B CVS$B%5!<%P$r8+$k$?$a(B
@noindent
ChangeLog
@itemize @bullet
@item
 $BJQ99$r<u$1$?%U%!%$%k$O(B 
 OpenXM/src/asir-contrib/packages/src/gtt_ekn.rr 1.1.
@end itemize


@comment **********************************************************
@comment --- $B"~"~"~"~(B  $B$N@bL@(B 
@comment --- $B8D!9$N4X?t$N@bL@$N3+;O(B ---
@comment --- section $BL>$r@53N$K(B ---
@node gtt_ekn.setup,,, $BD64v2?4X?t(BE(k,n)
@subsection @code{gtt_ekn.setup}
@comment --- $B:w0zMQ%-!<%o!<%I(B
@findex gtt_ekn.setup

@table @t
@item gtt_ekn.setup()
:: $BJ,;67W;;MQ$N4D6-@_Dj$r$*$3$J$&(B. $B8=:_$N4D6-$rJs9p$9$k(B.
@end table

@comment --- $B0z?t$N4JC1$J@bL@(B ---  $B0J2<$^$@=q$$$F$J$$(B.
@table @var
@item return

@end table

@comment --- $B$3$3$G4X?t$N>\$7$$@bL@(B ---
@comment --- @itemize$B!A(B@end itemize $B$O2U>r=q$-(B ---
@comment --- @bullet $B$O9uE@IU$-(B ---
@itemize @bullet
@item $B;HMQ$9$k%W%m%;%9$HAG?t$N8D?t(B, $B:G>.$NAG?t$rI=<($9$k(B. $B=`Hw$5$l$F$$$J$$>l9g$O$=$N;]$rI=<((B.
@item option nid (nid = Number of process ID)$B$rM?$($k$H;XDj$7$??t$@$1%W%m%;%9$rMQ0U$9$k(B.
@item option npl (npl = Prime List or Number of Prime List)$B$rM?$($k$H(Bnpl$B$,J8;zNs$N>l9g;XDj$5$l$?AG?t%j%9%H$N%U%!%$%k$rFI$_9~$`(B. npl$B$,<+A3?t$N>l9g$5$i$K(Boption minp (minp =MINimum Prime)$B$rM?$($k$H(Bminp$B$h$jBg$-$JAG?t$r(Bnpl$B8D@8@.$9$k(B. $B$=$N:](Boption fname (fname = File NAME)$B$rM?$($k$H@8@.$7$?AG?t%j%9%H$r(Bfname$B$H$7$FJ]B8$9$k(B.
@end itemize

@comment --- @example$B!A(B@end example $B$O<B9TNc$NI=<((B ---
$BNc(B: $BAG?t$N%j%9%H$r@8@.$7$F%U%!%$%k(B p.txt $B$X=q$-=P$9(B.
@example
gtt_ekn.setup(|nps=2,nprm=20,minp=10^10,fgp="p.txt")$
@end example


@comment --- $B;2>H(B($B%j%s%/(B)$B$r=q$/(B ---
@table @t
@item $B;2>H(B
@ref{gtt_ekn.nc}
@ref{gtt_ekn.gmvector}
@end table

@comment --- ChangeLog $B$r=q$/(B. $B%=!<%9%3!<%I$N0LCV(B. $BJQ99F|;~(B $B$J$I(B CVS$B%5!<%P$r8+$k$?$a(B
@noindent
ChangeLog
@itemize @bullet
@item
 $BJQ99$r<u$1$?%U%!%$%k$O(B 
 OpenXM/src/asir-contrib/packages/src/gtt_ekn.rr 1.1,
 gtt_ekn/g_mat_fac.rr

@end itemize

@comment **********************************************************
@comment --- $B"~"~"~"~(B  $B$N@bL@(B 
@comment --- $B8D!9$N4X?t$N@bL@$N3+;O(B ---
@comment --- section $BL>$r@53N$K(B ---
@node gtt_ekn.upAlpha,,, $BD64v2?4X?t(BE(k,n)
@subsection @code{gtt_ekn.upAlpha}
@comment --- $B:w0zMQ%-!<%o!<%I(B
@findex gtt_ekn.upAlpha

@table @t
@item gtt_ekn.upAlpha(@var{i},@var{k},@var{n})
:: 
@end table

@comment --- $B0z?t$N4JC1$J@bL@(B ---  $B0J2<$^$@=q$$$F$J$$(B.
@table @var
@item i  a_i $B$r(B a_i+1 $B$HJQ2=$5$;$k(B contiguity relation.
@item k  E(k+1,n+k+2)$B7?$ND64v2?4X?t$N(B k. $BJ,3dI=$G$O(B (k+1)$B!_(B(n+1). 
@item n  E(k+1,n+k+2)$B7?$ND64v2?4X?t$N(B n. $BJ,3dI=$G$O(B (k+1)$B!_(B(n+1). 
@item return  contiguity relation $B$N(B pfaffian_basis $B$K$D$$$F$N9TNsI=8=$rLa$9(B. [GM2016] $B$N(B Cor 6.3.
@end table

@comment --- $B$3$3$G4X?t$N>\$7$$@bL@(B ---
@comment --- @itemize$B!A(B@end itemize $B$O2U>r=q$-(B ---
@comment --- @bullet $B$O9uE@IU$-(B ---
@itemize @bullet
@item 
 upAlpha $B$O!!(B[GM2016] $B$N(B Cor 6.3 $B$N9TNs(B U_i $B$rLa$9(B.
@item $B4XO"$9$k3F4X?t$N4J7i$J@bL@$HNc$b2C$($k(B.
@item a_i $B$r(B a_i-1 $B$HJQ2=$5$;$?$$>l9g$O4X?t(B downAlpha $B$rMQ$$$k(B.
@item a_i $B$HJ,3dI=$N<~JUOB$r8+$k$K$O(B, $B4X?t(B marginaltoAlpha([$B9TOB(B,$BNsOB(B]) $B$rMQ$$$k(B.
@item
   pfaffian_basis $B$O(B [GM2016] $B$N#4>O$N%Y%/%H%k(B F $B$KBP1~$9$kJPHyJ,$rLa$9(B.
@end itemize

@comment --- @example$B!A(B@end example $B$O<B9TNc$NI=<((B ---
$BNc(B: $B0J2<$NNc$O(B 2$B!_(B2$BJ,3dI=(B(E(2,4)), 2$B!_(B3$BJ,3dI=(B(E(2,5))$B$N>l9g$G$"$k(B.
[2225] $B$^$G$O=PNO$rN,$7$F$$$k(B.
@example
[2221] gtt_ekn.marginaltoAlpha([[1,4],[2,3]]);
[[a_0,-4],[a_1,-1],[a_2,3],[a_3,2]]
[2222] gtt_ekn.upAlpha(1,1,1);  // E(2,4) $B$N(B a_1 $BJ}8~$N(B 
                                //     contiguity $B$rI=8=$9$k9TNs(B
[2223] gtt_ekn.upAlpha(2,1,1);  // E(2,4) $B$N(B a_2 $BJ}8~(B
[2224] gtt_ekn.upAlpha(3,1,1);  // E(2,4) $B$N(B a_3 $BJ}8~(B
[2225] function f(x_1_1);
[2232] gtt_ekn.pfaffian_basis(f(x_1_1),1,1);
[ f(x_1_1) ]
[ (f{1}(x_1_1)*x_1_1)/(a_2) ]
[2233] function f(x_1_1,x_1_2);
f() redefined.
[2234] gtt_ekn.pfaffian_basis(f(x_1_1,x_1_2),1,2); // E(2,5), 2*3 $BJ,3dI=(B
[ f(x_1_1,x_1_2) ]
[ (f{1,0}(x_1_1,x_1_2)*x_1_1)/(a_2) ]
[ (f{0,1}(x_1_1,x_1_2)*x_1_2)/(a_3) ]
@end example


@comment --- $B;2>H(B($B%j%s%/(B)$B$r=q$/(B ---
@table @t
@item $B;2>H(B
@ref{gtt_ekn.nc}
@ref{gtt_ekn.gmvector}
@end table

@comment --- ChangeLog $B$r=q$/(B. $B%=!<%9%3!<%I$N0LCV(B. $BJQ99F|;~(B $B$J$I(B CVS$B%5!<%P$r8+$k$?$a(B
@noindent
ChangeLog
@itemize @bullet
@item
 $B$3$N4X?t$O(B [GM2016]
$B$GM?$($i$l$?%"%k%4%j%:%`$K=>$$(B contiguity relation $B$rF3=P$9$k(B.
@item
 $BJQ99$r<u$1$?%U%!%$%k$O(B 
 OpenXM/src/asir-contrib/packages/src/gtt_ekn/ekn_pfaffian_8.rr 1.1.
@end itemize



@comment --- $B$*$^$8$J$$(B ---
@node Index,,, Top
@unnumbered Index
@printindex fn
@printindex cp
@iftex
@vfill @eject
@end iftex
@summarycontents
@contents
@bye
@comment --- $B$*$^$8$J$$=*$j(B ---


// 2 x m $BJ,3dI=$K$*$$$F;w$?5!G=$rM-$9$k4X?t$NMxMQNc$r;29M$^$G$K5-:\$9$k(B;
// $B@55,2=Dj?t$H$=$NHyJ,4XO"(B.
// $B$=$N(B1.
[3077] A=tk_fd.marginal2abc([4,5],[2,4,3]);
[-4,[-4,-3],-1]
[3078] tk_fd.ahmat_abc(A[0],A[1],A[2],[[1,1/2,1/3],[1,1,1]]);
RS=[ 4 5 ], CSnew=[ 2 4 3 ], Ynew=[ 1 1/2 1/3 ]
[ 1 1 1 ]
Computing Dmat(ca) for parameters B=[-4,-3],X=[ 1/2 1/3 ]
[4483/124416,[[353/7776,1961/15552,185/1728],[553/20736,1261/15552,1001/13824]]]
// $BLaCM$O(B [Z, [[d_11 Z, d_12 Z, d_13 Z],[d_21 Z, d_22 Z, d_23 Z]]] $B$NCM(B.

// $B$=$N(B2.
[3079] tk_fd.log_ahmat_abc(A[0],A[1],A[2],[[1,1/2,1/3],[1,1,1]]);
RS=[ 4 5 ], CSnew=[ 2 4 3 ], Ynew=[ 1 1/2 1/3 ]
[ 1 1 1 ]
Computing Dmat(ca) for parameters B=[-4,-3],X=[ 1/2 1/3 ]
[-3.32333832422461674639485797719209322217260539267246045320,
 [[1.25987062235110417131385233102832924380994869507026544724,3.49944233772027660049074280615659156814633058219942003122,2.97122462636627258532232879768012491635065804149007361142],
  [0.740129377648895828686147668971670756190051304929734552754,2.25027883113986169975462859692170421592683470890028998438,2.00959179121124247155922373410662502788311398616997546285]]]
// $BLaCM$O(B [log(Z), 
//          [[d_11 log(Z), d_12 log(Z), d_13 log(Z)],
//           [d_21 log(Z), d_22 log(Z), d_23 log(Z)]]] 
// $B$N6a;wCM(B.

// $B$=$N(B3.
[3082] fd_hessian2(A[0],A[1],A[2],[1/2,1/3]);
Computing Dmat(ca) for parameters B=[-4,-3],X=[ 1/2 1/3 ]
[4483/124416,[ 1961/15552 185/1728 ],
 [ 79/288 259/864 ]
 [ 259/864 47/288 ]]
// $BLaCM$O(B [F=F_D, gradient(F), Hessian(F)]

// $B;29M(B.
// ygahvec $B$G6R4X?tJ,$ND4@0(B. $BFHN)$7$?4X?t$O$J$$$h$&$@(B.

//-----------------------------------------------------------------------
// 2 x m $BJ,3dI=$K$*$$$F;w$?5!G=$rM-$9$k4X?t$NMxMQNc$r;29M$^$G$K5-:\$9$k(B;
// $B4|BTCM4XO"(B.
[3079] A=tk_fd.marginal2abc([4,5],[2,4,3]);
[-4,[-4,-3],-1]
[3080] tk_fd.expectation_abc(A[0],A[1],A[2],[[1,1/2,1/3],[1,1,1]]);
RS=[ 4 5 ], CSnew=[ 2 4 3 ], Ynew=[ 1 1/2 1/3 ]
[ 1 1 1 ]
Computing Dmat(ca) for parameters B=[-4,-3],X=[ 1/2 1/3 ]
[[5648/4483,7844/4483,4440/4483],
 [3318/4483,10088/4483,9009/4483]]
// $B3F%;%k$N4|BTCM(B.

//-----------------------------------------------------------------------
// ot_hgm_ahg.rr $B$NNc(B.  $B<B83E*$J$?$a(B module $B2=$5$l$F$$$J$$(B.
[3237] import("ot_hgm_ahg.rr");
// 2 x 2 $BJ,3dI=(B.
[3238] hgm_ahg_expected_values_contiguity([[0,0,1,1],[1,0,1,0],[0,1,0,1]],
        [9,6,8],[1/2,1/3,1/5,1/7],[x1,x2,x3,x4]|geometric=1);
oohg_native=0, oohg_curl=1
[1376777025/625400597,1750225960/625400597,2375626557/625400597,3252978816/625400597]
// 2 x 2 $BJ,3dI=$N4|BTCM(B.

// 2 x 3 $BJ,3dI=(B.
[3238] hgm_ahg_expected_values_contiguity(
 [[0,0,0,1,1,1],[1,0,0,1,0,0],[0,1,0,0,1,0],[0,0,1,0,0,1]],
 [5,2,4,3],[1,1/2,1/3,1,1,1],[x1,x2,x3,x4,x5,x6]|geometric=1);
[5648/4483,7844/4483,4440/4483,3318/4483,10088/4483,9009/4483]
// 2 x 3 $BJ,3dI=$N4|BTCM(B. $B>e$HF1$8LdBj(B.

/*
  dojo, p.221.  $B@.@S(B3$B0J2<$N@8EL$O=8$a$F$R$H$D$K(B.
  2 1 1
  8 3 3
  0 2 6

  row sum: 4,14,8
  column sum: 10,6,10
  0 $B$r0l$D4^$`$N$G(B, (3,6) $B7?$N(B A $B$+$i(B 7 $BNsL\$rH4$/(B.
*/
// 3 x 3 $BJ,3dI=(B. $B9=B$E*(B0$B$,0l$D(B.

A=[[0,0,0,1,1,1, 0,0],
   [0,0,0,0,0,0, 1,1],
   [1,0,0,1,0,0, 0,0],
   [0,1,0,0,1,0, 1,0],
   [0,0,1,0,0,1, 0,1]];
B=[14,8,10,6,10];
hgm_ahg_expected_values_contiguity(A,B,[1,1/2,1/3,1,1/5,1/7,1,1],[x1,x2,x3,x4,x5,x6,x7,x8]|geometric=1);

// $BEz(B.
[14449864949304/9556267369631,10262588586540/9556267369631,13512615942680/9556267369631,
 81112808747006/9556267369631,21816297744346/9556267369631,30858636683482/9556267369631,
                              25258717886900/9556267369631,51191421070148/9556267369631]


/*
 $B>e$N%G!<%?$G(B 0 $B$r(B 1 $B$KJQ99(B.
  2 1 1
  8 3 3
  1 2 6

  row sum: 4,14,9
  column sum: 11,6,10
*/
// 3 x 3 $BJ,3dI=(B.
A=[[0,0,0,1,1,1,0,0,0],
   [0,0,0,0,0,0,1,1,1],
   [1,0,0,1,0,0,1,0,0],
   [0,1,0,0,1,0,0,1,0],
   [0,0,1,0,0,1,0,0,1]];
B=[14,9,11,6,10];
hgm_ahg_expected_values_contiguity(A,B,[1,1/2,1/3,1,1/5,1/7,1,1,1],[x1,x2,x3,x4,x5,x6,x7,x8]|geometric=1);

// $B4|BTCM(B, $BEz(B.
[207017568232262040/147000422096729819,163140751505489940/147000422096729819,217843368649167296/147000422096729819,
 1185482401011137878/147000422096729819,358095302885438604/147000422096729819,514428205457640984/147000422096729819,
 224504673820628091/147000422096729819,360766478189450370/147000422096729819]

// Z $B$d$=$NHyJ,$N7W;;$O(B hgm_ahg_contiguity $B4X?t$,$*$3$J$&$,(B, $B$3$l$N4J0W%$%s%?!<%U%'!<%9$O(B
// $B$^$@=q$$$F$J$$(B.


4. x_ij $B$O(B [GM2016] $B$N#1>O$G(B,
 $B$?$H$($P(B 3x3 $B$N;~(B [[1,1,1],[x_11,x_12,1],[x_21,x_22,1]]
$B$H$J$C$F$$$k$,(B, [GM2016] $B$N(B Prop 7.1 $B$NBP1~$G$O(B,
   p = [[1,x_11,x_12],[1,x_21,x_22],[1,1,1]] $B$H$J$C$F$$$k$N$GCm0U(B.