
                       Copyright(C) 1997  $B@PDM(B $BK~!"J!EDLP5*!"Bg_79,@8(B
                                        ($BEl5~Bg3X9)3XItEE;R>pJs9)3X2J(B)

**********************************************************************
*********  $B%M%C%H%o!<%/2=%P%V%kEAGEK!$K$h$k9bB.2>@b%7%9%F%`(B  *********
*********      $B=R8lO@M}HG(B(ver.2a)  NBP2a                     *********
**********************************************************************

$B35MW!'(B
$B!!%3%9%H$K4p$E$/2>@b?dO@$N=`:GE,2r$r8zN(E*$K5a$a$k%7%9%F%`$N=R8lO@M}HG!#(B
$B!J@53N$K$O4X?t$J$7NN0h@)8B=R8l%[!<%s@aI=8=$r07$&!#!K(B

$BL\E*!'(B
$B!!2>@b?dO@!J@8@.2DG=$J2>@b$rDj5A$7$F$$$k%"%V%@%/%7%g%s!K$O!"CN<1=hM}$N(B
$BM-MQ$JOHAH$G$"$k$,!"87L)2r$N7W;;$K$OLdBj%5%$%:$KBP$7$F;X?t%*!<%@$N?dO@(B
$B;~4V$rMW$9$k!#K\%=%U%H%&%'%"$O!"%3%9%H$K4p$E$/L?BjO@M}I=8=2>@b?dO@$N=`(B
$B:GE,2r!J2r%3%9%H$O2r$K4^$^$l$kMWAG2>@b$N=E$_$NOB$G$"$j!":GE,2r$H$O2r$N(B
$B%3%9%H$,:G>.$J$b$N!K$rDc<!B?9`<0;~4V$G5a$a$k%M%C%H%o!<%/2=%P%V%kEAGEK!(B
$B!J(BNBP$BK!(B: Networked Bubble Propagation method$B!K$r<BAu$7$?(BNBP1$B$r2<It?dO@(B
$B%a%+%K%:%`$H$7$FMxMQ$7!"=R8lO@M}I=8=$N2>@b?dO@$r<B9T$9$k$b$N$G$"$k!#(B
$B!J$^$@==J,$J8zN($,C#@.$5$l$F$$$kLu$G$O$J$$$,!K!"%3%9%H$K4p$E$/=R8lO@M}(B
$BHG2>@b?dO@$N=`:GE,2r$r5a$a$k;v$,$G$-$k!#(B

$BMQES!'(B
$B!!%b%G%k!J@)Ls!K$K4p$E$/?GCG!"%b%G%k!J@)Ls!K$K4p$E$/@_7W$J$I$N$h$&$J9=(B
$BB$E*!J?<$$!KCN<1$K4p$E$/LdBj2r7h$K!"2>@b?dO@K!$rE,MQ$7$F$_$h$&$H$9$k8&(B
$B5f<T!"5;=Q<T$K$h$k;HMQ$rA[Dj!#(B

$B5!G=!'(B
$B!!ElBg@PDM8&5f<<$G9M0F!"3+H/$5$l$?(BNBP$BK!$O!"(B0-1$B@0?t7W2h$NBgJQNI$$6a;w2r(B
$BK!$G$"$kA]=P$7Jd?tK!(B(pivot and compliment method)$B$NF0:n$r%M%C%H%o!<%/(B
$B>e$G<B8=$7!"$+$DCN<19=B$$rMxMQ$7$??dO@8zN($N8~>e$rC#@.$7$?$b$N$G$"$k!#(B
$B$=$NL?BjHG2>@b?dO@$NB.EY$OMWAG2>@b?t$NLs(B1.5$B>h$NB?9`<0%*!<%@;~4V$rC#@.(B
$B$9$k!#(B
$B!!=R8lO@M}It$N=hM}$K$O;29MJ88%#3!K$K5-$5$l$?J}K!$b$"$k$,!"$3$3$G$O$h$j(B
$B9=B$$r4JAG$K$9$k$?$aJLK!$N<B8=K!$r$H$C$F$$$k!#$9$J$o$A!";29MJ88%#4!K$G(B
$B$bMxMQ$7$?1ieh%G!<%?%Y!<%9$N8zN(E*<jK!$G$"$k(BQSQR$BK!!JJ88%#5!K$N(B5.2.3$B;2(B
$B>H!K$rCJ3,E*?<2=$K$h$jMQ$$$F!"=R8lO@M}I=8=$N2>@b?dO@LdBj$rL?BjI=8=$N2>(B
$B@b?dO@LdBj$KJQ49$9$k!#$3$l$K$h$C$F(BNBP$BK!$NE,MQ$r2DG=$K$7$F$$$k!#(B

$B9=@.!'(B
$B!!0J2<$N%=%U%H%&%'%"$+$i@.$k!#(B

        nbp1b.c : $B%3%9%H$K4p$E$/L?BjHG2>@b?dO@$r2r$/(BNBP$BK!$N(BC$B8@8l%W%m%0(B
                  $B%i%`(B
                 $B!J@h$K8x3+$7$F$$$k(Bnbp1a$B$N%P!<%8%g%s$H$O0[$J$j!"G$0U$N(B
                   $B=E$_$N2>@b$r07$&5!G=$r;}$D!#(BX-window$B$K$h$k(BGUI$B$N5!G=(B
$B!!!!!!!!!!!!!!!!!!(B $B$b;}$C$F$$$k$,!"$3$3$G$N=R8lHG2>@b?dO@%=%U%H$N2<It(B
$B!!!!!!!!!!!!!!!!!!(B $B5!9=$H$7$FMxMQ$9$k$H$-$O;H$o$J$$!#!K(B
        {nbp    : nbp1b.c$B$r(BC$B$G%3%s%Q%$%k$7$F:n@.$9$k<B9T7A<0%W%m%0%i%`(B}

        qsqr.plg: $B=R8lO@M}I=8=2>@b?dO@$rCJ3,E*?<2=$N(BQSQR$BK!$K$h$jL?BjO@(B
                  $BM}2>@b?dO@$KJQ49$9$k(BSicstus Prolog$B%W%m%0%i%`(B

        runqsqr : qsqr.plg$B$H(Bnbp$B!JL?BjHG2>@b?dO@!K$H$N4V$N1_3j$J%G!<%?(B
                  $B$N$d$j<h$j$r<B8=$9$k(BPerl$B%W%m%0%i%`(B

   qsqr.plg$B$N<B9T$K$O(BSicstus Prolog$B$,I,MW!#(B
   runqsqr$B!JJLL>$H$7$F(Bnbp2$B$G$b2D!K$N<B9T$K$O(BPerl$B%$%s%?%W%j%?$,I,MW!#(B

$B;29MJ88%!'(B
1) $BBg_7!"@PDM!'2>@b?dO@$K$*$1$k=`:GE,2r$rB?9`<0;~4V$G7W;;$9$k%M%C%H%o!<%/(B
   $B2=%P%V%kEAGEK!!"?.3XO@(BD-II$B!"(BVol.J77-D-II, No.9, pp.1817-1829 (1994.9)
2) $BBg_7!"@PDM!'2~NI7?%M%C%H%o!<%/2=%P%V%kEAGEK!$K$h$kDc<!B?9`<0;~4V2>@b?d(B
   $BO@K!!"?M9)CNG=3X2q;o!"(BVol.10, No.1, pp.123-130 (1995.1)
3) $BBg_7!"@PDM!'B?9`<0;~4V2>@b?dO@$rC#@.$9$k%M%C%H%o!<%/2=%P%V%kEAGEK!$N=R(B
   $B8lO@M}$X$N3HD%!"?M9)CNG=3X2q;o!"(BVol.10, No.5, pp.731-740 (1995.9)
4) $B6aF#!"KRLn!"@PDM!'=R8lO@M}CN<1$r07$&9bB.2>@b?dO@%7%9%F%`!"?M9)CNG=3X2q(B
   $B;o!"(BVol.8, No.6, pp.819-827 (1993)
5) $B@PDM(B $BK~!'CN<1$NI=8=$H9bB.?dO@!"4]A1(B(1996)$B!"FC$K$3$N(B6.9$B@a!#(B

$B;HMQK!!'(B
$B!!0J2<$K5-$9>e0L%W%m%0%i%`$G$"$k(Brunqsqr$B!JJLL>$N(Bnbp2$B$H$7$F$b5/F02D!K$K4X(B
$B$9$k@bL@$r;2>H2<$5$$!#(B

$B%W%m%0%i%`<B9T4D6-!'(B
$B!!0J2<$rI,MW$H$7$^$9!#(B
        $BI8=`E*(BC$B%3%s%Q%$%i$H(BX-window$B%D!<%k!J(Bnbp1b.c$B$r%3%s%Q%$%k$7$F<B9T%W(B
          $B%m%0%i%`(Bnbp$B$r:n@.$9$k!K(B
        Sicstus Prolog$B$N<B9T7O!J(Bqsqr.plg$B$N<B9T!K(B
        Perl$B%$%s%?%W%j%?(B

$B%$%s%9%H!<%kK!!'(B
$B!!(Bqsqr.plg$B$K$D$$$F$OFC$K@_Dj$rI,MW$H$7$^$;$s!#(BSicstus Prolog$B<B9T7O$+$i(B
$B%m!<%I!"<B9T$7!"0J8e$N%G!<%?$N%U%!%$%kL>$r;XDj$7$F2<$5$$!#(B
$B!!(Brunqsqr$B$K$D$$$F$O!"(BProlog$B<B9T7O$N0LCV!"(BPerl$B<B9T7O$N0LCV$K$h$C$F$OB?>/(B
$B$NJQ99$,I,MW$K$J$j$^$9!#(B
$B!!(BPerl$B<B9T7O$N0LCV$,(B'/usr/local/bin/perl'$B$G$J$$>l9g$O!"(Brunqsqr$B$N#19TL\(B
$B$rE,59JQ99$7$F2<$5$$!#(B
$B!!$^$?!"(BProlog$B<B9T7O$,(B'/usr/local/bin/sicstus'$B$G$J$$>l9g$K$O!"#69TL\$N(B
$BJQ?t(B$PROLOG$B$NCM$rE,59JQ99$7$F2<$5$$!#(B

  $BL?BjHG2>@b?dO@%7%9%F%`(BNBP1[$B%=!<%9%W%m%0%i%`L>!'(Bnbp1b.c]$B$rC1FH$G$b;HMQ(B
$B$9$k>l9g$N$?$a$K!"$3$N@bL@$bE:IU$7$^$9!#(B

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

$B=R8lHG9bB.2>@b?dO@%7%9%F%`(BNBP2$B$rF0:n$5$;$k>e0L%W%m%0%i%`$N@bL@(B

    $B!ZL>>N![(B runqsqr(ver 2.01)
        $B!!!!(B Copyright 1997 by Shigeki Fukuta$B!JJ!EDLP5*!K(B
             programmed in Perl Ver.4


$B!Z(B0. runqsqr $B%W%m%0%i%`$NL\E*$H5!G=![(B

  $B$3$N%W%m%0%i%`$O!"(BProlog$B$K$h$C$F5-=R$5$l$?(Bqsqr.plg$B$H!"0lHLE*$J!J(Bnbp
$B$r4p=`$H$7$F$$$^$9!KL?BjO@M}HG$N2>@b?dO@%W%m%0%i%`$H$N1_3j$J%G!<%?$d$j(B
$B$H$j$rL\E*$H$7$F:n@.$7$^$7$?!#=>$C$F!"$3$N%W%m%0%i%`$O?dO@$O$7$^$;$s!#(B
  $B$3$N%W%m%0%i%`$,9T$J$&$3$H$O!"(B
$B!!(B  $B!V(Brunqsqr$B$NMW5a$9$k=q<0!W"*!V(Bqsqr.plg$B$NMW5a$9$k=q<0!W(B
  $B!!!V(Bqsqr.plg$B$N=PNO$9$k=q<0!W"*!VL?BjO@M}2>@b?dO@$NMW5a$9$k=q<0!W(B
$B$N=q49$($H!"L?BjO@M}HG2>@b?dO@%W%m%0%i%`(B nbp $B$N8F$S=P$7$G$9!#(B
  $B3F<o%W%m%0%i%`$NMW5a$9$k%U%)!<%^%C%H$KBP1~$9$k$N$,L\E*$G$"$k$?$a!"?7(B
$B$?$J%W%m%0%i%`$KBP1~$9$k:]$K$b!"Hf3SE*MF0W$K3HD%$,$G$-$k$h$&!"9)IW$5$l(B
$B$F$$$^$9!#(B


$B!Z(B1. $BF~NO%U%!%$%k$N=q<0$N4JC1$J@bL@![(B

$B!!:G=i$KNc$r=q<0$NNc$r<($7$^$9!#(B

  ####### $B%G!<%?(B/$BCN<1%U%!%$%kNc(B  #################################
  ?- anc(tarao,namihei).    #Is 'namihei' an ancester of 'tarao'?
  
  par(tarao,sazae).         #fact
  par(tarao,masuo).         #fact
  par(sazae,fune)/1.        #hypothesis with weight 1
  par(sazae,namihei)/2.     #hypothesis with weight 2
  par(katsuo,namihei)/3.    #hypothesis with weight 3
  par(katsuo,fune)/1.       #hypothesis with weight 1
  par(wakame,namihei)/2.    #hypothesis with weight 2
  par(wakame,fune)/1.       #hypothesis with weight 1
  par(ikura,norisuke)/3.    #hypothesis with weight 3
  par(ikura,taiko)/2.       #hypothesis with weight 2
                           
  anc(X1,Y1) :- par(X1,Z2),anc(Z2,Y1).  #rule
  anc(X0,Y0) :- par(X0,Y0).             #rule
  
  inc :- par(katsuo,namihei),par(ikura,norisuke).
                            #inconsistent combination
  ################################################################

  $B%U%!%$%kCf$N!V(B#$B!W$h$j2~9TJ8;z$^$G$O!"L@<(E*$J%3%a%s%H$G$9!#(B

$B!!2>@b?dO@$N%4!<%k$H$J$kLd$$9g$o$;$O!"!V(B?-pred(var1,var2).$B!W$H$$$C$?7A(B
$B$G5-=R$7$^$9!#(B
  $B;v<B$O!"$=$N$^$^!V(Bfact(a,b,c).$B!W$H$$$C$?7A$G5-=R$7$^$9!#(B
  $B2>@b$O!";v<B$N@k8@$HF1MM$K9T$J$$!"8e$m$K%9%i%C%7%e$r$D$1$F!"=E$_$r;X(B
$BDj$7$^$9!#(B
$B!!$=$NB>$N%k!<%k$O!"0lHLE*$J(BProlog$BMM<0$K$7$?$,$C$F5-=R$9$l$PG'<1$7$^$9!#(B
$B$D$^$j!"!V(Bhead(A,B) :- body1(A),body2(B).$B!W$N$h$&$J7A$G$9!#(B

  $B2~9T$r=|$/6uGrN`J8;z$O!"$^$C$?$/0UL#$r$J$5$J$$$N$G$$$/$iA^F~$7$F$bF0(B
$B:n$K;Y>c$O$"$j$^$;$s!#6KC<$JOC!"%H!<%/%sCf$K6uGr$,F~$j9~$s$G$bF0:n$7$^$9!#(B
  $B;EMME*$K$O!V(B.$B!W$h$j8e$m$K2?$r=q$$$F$bF0:n$OJQ$o$i$J$$$O$:$G$9$,!"$3(B
$B$l$OJ]>Z$5$l$^$;$s!#(B
  $B$J$*!"0l$D$N%[!<%s@a$O!"(B*$BI,$:(B*$B!"(B1$B9T$KG<$a$F2<$5$$!#J#?t9T$KEO$k%[!<%s(B
$B@a$O7h$7$FG'<1$7$^$;$s!#(B
  $B>\$7$$;EMM$O!"F~NO%U%!%$%k;EMM$N9`$K5-$7$^$9!#(B
  $BNc$H$7$F<!$N%U%!%$%k$rE:IU$7$^$9!#(B
      --- data11, data12, data13, data14, data15,
          data204, data205, data206, data207


$B!Z(B2. $B5/F0K!![(B

  $B!&%3%^%s%I%i%$%s!"%7%'%k$J$I$+$i!"(BPerl$B$G=q$+$l$?(B runqsqr $B$r0J2<$N$h$&(B
$B!!!!$K5/F0$7$F$/$@$5$$!#(B
        >runqsqr [options] <file_list>
$B!!!!JLL>$H$7$F%j%s%/$7$F$$$k$N$G!"0J2<$G$bF1MM$KF0:n$7$^$9!#(B
        >nbp2 [options] <file_list>

  $B!&(BPerl Ver.5$B$G$bF0:n$9$k$H;W$$$^$9$,!"L$3NG'$G$9!#(B
  $B!&$J$*!"<B9T3NG'$7$?(BPerl$B%$%s%?%W%j%?$O0J2<$NDL$j$G$9!#(B
        perl(in SunOS)
        jperl.exe(in MS-DOS)


$B!Z(B3. $B%*%W%7%g%s$N@bL@![(B

  $B0J2<$K!";HMQ$G$-$k%*%W%7%g%s$N@bL@$r9T$J$$$^$9!#(B
    -n            $B2<0L$NL?BjO@M}2>@b?dO@%W%m%0%i%`$r5/F0$7$^$;$s!#(B
                  $B=PNO%U%!%$%k$r:n$k$H!"=*N;$7$^$9!#(B
    -i            $B=PNO%U%!%$%k$K$*$1$kL7=b$N=q<0$O!"!V(B0 :- body1,body2.$B!W(B
                  $B$H$J$C$F$$$^$9$,!"$3$N%*%W%7%g%s$r;XDj$9$k$H!"(B
                  $B!V(Binc :- body1,body2.$B!W$H$J$j$^$9!#(B
    -d[numbers]   qsqr.plg$B$K$h$k2rC5:w$N?<$5$r7hDj$7$^$9!#(B
                  $B%G%U%)%k%H$G$O(B6$BCJ$G$9!#(B
    -l[numbers]   $B=PNO%U%!%$%k$N!";v<B!"2>@b$N@k8@$r(B1$B9T$K$$$/$D9T$J$&$+(B
                  $B$r7hDj$7$^$9!#(B
                  $B0lHL$KF0:n$K4X78$O$7$^$;$s$N$G!"8+0W$$?t$K$9$k$3$H$r$*(B
                  $B4+$a$7$^$9!#(B


$B!Z(B4. $BF~NO%U%!%$%k;EMM![(B

  $BF~NO%U%!%$%k$N;EMM$O!"4pK\E*>e5-$K=q$$$?DL$j$G$9$,!"$3$N%W%m%0%i%`(B
$B$NF0:n$H$7$F!"0J2<$N$h$&$JG'<1J}K!$r<h$C$F$$$^$9!#(B

$B!&6uGr$NL5;k(B
  $B2~9T$r=|$/6uGrN`J8;z$O!"$^$C$?$/0UL#$r$J$7$^$;$s!#(B
  $BF0:nE*$K$O!"%U%!%$%k$rFI$_9~$`:]$K6uGrN`J8;z$r>C5n$7$F$+$iG'<1$r;O$a(B
$B$^$9!#=>$C$F!"6uGr$r(Bqsqr.plg$B$KG'<1$5$;$k$3$H$O(B*$B7h$7$F(B*$B$"$j$^$;$s!#(B

$B!&%4!<%k$NG'<1(B
  $B!V(B1:-$B!W$^$?$O!"!V(B?-$B!W$G;O$^$j!"!V(B.$B!W$G=*$kJ8;zNs!#(B
  $B$3$l$i$K64$^$l$?J8;zNs$r!"%4!<%k$H$7$FG'<1$7$^$9!#(B
  $B!V(B1-$B!W$d!"!V(B?:-$B!W$G$b!"F1MM$KG'<1$7$^$9!#(B
        $B!ZNc![(B?- anc(tarao,X).

$B!&L7=b(B(inconsistent)$B$NG'<1(B
  $B!V(Binc:-$B!W$^$?$O!"!V(B0:-$B!W$G;O$^$j!"!V(B.$B!W$G=*$kJ8;zNs!#(B
  $B$3$l$i$K64$^$l$?J8;zNs$r!"L7=b$NAH9g$;$H$7$FG'<1$7$^$9!#(B
  $B!V(Binc-$B!W$d!"!V(B0-$B!W$G$b!"F1MM$KG'<1$7$^$9!#(B
        $B!ZNc![(Binc:- par(katsuo,namihei),par(tarao,namihei).

$B!&%k!<%k$NG'<1(B
  $B!V(B:-$B!W$r4^$_!"!V(B.$B!W$G=*$kFs$D$NJ8;zNs!#(B
  $B$3$NFs$D$NJ8;zNs$NFb!"!V(B:-$B!W0JA0$r(BHead$B!"0J8e$r(BBody$B$H$7$FG'<1$7$^$9!#(B
  $B!V(B-$B!W$G$bF1MM$KG'<1$7$^$9!#(B
        $B!ZNc![(Banc(X1,Y1) :- par(X1,Z2),anc(Z2,Y1).

$B!&2>@b$NG'<1(B
  $B!V(B/$B!W$N8e$K?t;z$r(B1$B8D0J>e;}$A!"$=$N8e$K!V(B.$B!W$G=*$kFs$D$NJ8;zNs!#(B
  $B9TF,$+$i!V(B/$B!W$^$G$r2>@b!"!V(B/$B!W0J9_$N?t;z$r=E$_$H$7$FG'<1$7$^$9!#(B
  $B$3$N;~!"9TF,$N!V(B$$B!W$rL5;k$9$k$N$G!"2>@b$rL@<(E*$K<($9$3$H$,$G$-$^$9!#(B
  $B!J(B*$B$J$I$N5-9f$r@hF,$K$b$D(Bnbp1$B5lHG$N;EMM$rJq3g$9$k$?$a!#!K(B
        $B!ZNc![(Bdistance(20)/5.

$B!&;v<B$NG'<1(B
  $B0J>e$N$9$Y$F$K0lCW$;$:!"!V(B.$B!W$G=*$kJ8;zNs!#(B
  $B9TF,$+$i!V(B.$B!W$K64$^$l$kJ8;zNs$r!";v<B$HG'<1$7$^$9!#(B
  $B$3$N;~!"9TF,$N!V(B>$B!W$^$?$O!V(B!$B!W$rL5;k$9$k$N$G!";v<B$rL@<(E*$K<($9$3$H(B
  $B$,$G$-$^$9!#!J(B>,!,*$B$J$I$N5-9f$r@hF,$K$b$D(Bnbp1$B5lHG$N;EMM$rJq3g$9$k$?$a!#!K(B
        $B!ZNc![(Bpar(tarao,masuo).

  $B0J>e$N$$$:$l$K$bEv$F$O$^$i$J$$9T$O!"L5;k$5$l$^$9!#(B

  $B$J$*!"(Bnbp1$B5lHG$K$*$$$FM-8z$@$C$?!"%k!<%kCf$N;v<B$K%9%i%C%7%e$r$D$1$F(B
$B2>@b$N=E$_$r@k8@$9$kJ}K!$K$OBP1~$7$F$$$^$;$s!#(B
        $B!Z0cH?Nc![(Binc :- magnitude(8)/9,distance(200)/2.
$B$3$N=q<0$O!"I,$:(Bqsqr.plg$B$G8mF0:n$r5/$3$9$N$G!";HMQ$7$J$$$G2<$5$$!#(B


$B!Z(B5. $BCf4V%U%!%$%k;EMM![(B

  $B$3$N%W%m%0%i%`$O!"(Bqsqr.plg$B$KFI$_9~$^$;$k$?$a$NCf4V%U%!%$%k$r%+%l%s%H(B
$B%G%#%l%/%H%j$K:n@.$7$^$9!#(B
  $BCf4V%U%!%$%kL>$O%W%m%0%i%`@hF,$NJQ?tDj5A$N(B$DATAFILE$B$GDj5A$5$l$F$$$^(B
$B$9$N$G!"ITET9g$N$"$k:]$O!"E,59JQ99$7$F2<$5$$!#(B

$B!&%k!<%k!?L7=b(B
  rule/2$B$GDj5A$7$^$9!#(B
  $BBh(B1$B0z?t$O(Bhead$B$G$9!#Bh(B2$B0z?t$O(Bbody$B0l$D0l$D$rMWAG$H$9$k%j%9%H$G$9!#(B
        $B!ZNc![(Brule(ordinary(Y,Z),[near(Y),deep(Z)]).
              rule(inc,[magnitude(8),distance(20)]).

$B!&;v<B!?2>@b(B
  fact/1$B$GDj5A$7$^$9!#(B
  $BBh(B1$B0z?t$,;v<B$d2>@b$=$N$b$N$G$9!#(B
        $B!ZNc![(Bfact(par(tarao,sazae)).
  qsqr.plg$B$K$H$C$F$O2>@b$O;v<B$HEy2A$K8+$($^$9!#(B
  $B2>@b$H;v<B$N6hJL!"2>@b$N=E$_$O!!(Bqsqr.plg$B$N30It$G=hM}$5$l$^$9!#(B


$B!Z(B6. $B=PNO%U%!%$%k;EMM![(B

  $B4pK\E*$K$3$l$^$G$N(Bnbp1$B$N;EMM$K9g$o$;$F$$$^$9!#(B
  $B=PNO%U%!%$%kL>$O%W%m%0%i%`@hF,$NJQ?tDj5A$N(B$DATAFILE3$B$GDj5A$5$l$F$$$^(B
$B$9$N$G!"ITET9g$N$"$k:]$O!"E,59JQ99$7$F2<$5$$!#(B $B$3$N=q<0$r7hDj$7$F$$$k$N(B
$B$O4X?t(Bconvfornbp$B$N8eH>$G$9!#(B #write $DATAFILE3.$B0J2<$,$=$NItJ,$G$9!#(B
  $BB>$NL?BjO@M}2>@b?dO@$N;EMM$K9g$o$;$k:]$K$O!"$3$NItJ,$NJQ99$r9T$J$&$N(B
$B$_$GBP1~$G$-$k$G$7$g$&!#(B

$B!&%4!<%k$N=PNO(B
  $BC1=c$K!V(B1 :- goal.$B!W$r%W%j%s%H$7$^$9!#(B
  qsqr.plg$B$O!"I,$:%4!<%k$r(Bgoal$B$H$$$&L>A0$N%N!<%I$K$7$^$9$N$G!"(B
  $B%4!<%k$N;XDjJ}K!$,0c$&>l9g$K$O!"E,59=$@5$7$F2<$5$$!#(B

$B!&%k!<%k$N=PNO(B
  runqsqr(nbp2) $B$O%k!<%k$r!"%W%j%s%HD>A0$G(B @line $B$H$$$&G[Ns$N3FMWAG$K(B
  "head :- body1,body2.\n"$B$H$$$C$?6q9g$KG<$a$i$l$F$$$^$9!#(B
  $B%k!<%k$N;XDjJ}K!$,0c$&>l9g$K$O!"(Bs$B1i;;;R$J$I$rMQ$$$F!"E,59=$@5$7$F2<(B
  $B$5$$!#(B

$B!&L7=b$N=PNO(B
  runqsqr$B$OL7=b$r!"%W%j%s%HD>A0$G(B@inc$B$H$$$&G[Ns$N3FMWAG$K(B
  "0 :- body1,body2.\n"$B$H$$$C$?6q9g$KG<$a$i$l$F$$$^$9!#(B
  i$B%*%W%7%g%s$r$D$1$k$+!"@hF,$N(B$INC$B$r(B0$B$K$9$k$H!"(B
  "inc :- body1,body2.\n"$B$KJQ$o$j$^$9!#(B
  $B$^$@L7=b$N;XDjJ}K!$,0c$&>l9g$K$O!"(Bs$B1i;;;R$J$I$rMQ$$$F!"E,59=$@5$7$F(B
  $B2<$5$$!#(B

$B!&;v<B$N=PNO(B
  runqsqr$B$O;v<B$r!"%W%j%s%HD>A0$G(B @fact $B$H$$$&G[Ns$N3FMWAG$K$=$N$^$^3JG<(B
$B!!$7$F$$$^$9!#!V(B,.$B!W$J$I$O=PNO$9$k:]$K2C$($F$$$^$9!#(B
  $B$5$i$K!"L?Bj$H$7$F2r<a$5$;$k$?$a!"!V(B)$B!W$N8e$m$K$J$$!V(B,$B!W$r!V(B_$B!W$K!"(B
$B!!!V(B)$B!W$N8e$m$K$J$$!V(B.$B!W$r!V(B@$B!W$K!"CV$-49$($F=PNO$7$^$9!#(B
  $B$^$?!"(B$NEWLINE$B$GDj5A$5$l$k?t$@$1$^$H$a$F=PNO$7$^$9$N$G!"<c43=PNO$N;E(B
$B!!J}$,FC<l$G$9!#(B
  $BI,$:0l$D$:$D=PNO$9$k$3$H$K$9$l$P!"$b$C$H4JC1$J5-=R$G:Q$`$G$7$g$&!#(B
  $B8=:_$N=PNONc$O!"0J2<$NDL$j$G$9!#(B
        $B!ZNc![(B>soft(funabashi),soft(ikebukuro),soft(yokohama).

$B!&2>@b$N=PNO(B
  runqsqr$B$O2>@b$r%W%j%s%HD>A0$G(B %hyp $B$H$$$&O"A[G[Ns$K!"2>@bA4BN$r%-!<(B
$B!!$K!"=E$_$rCM$K$7$F3JG<$7$F$$$^$9!#(B
  $B=E$_$d!"!V(B,.$B!W$J$I$O=PNO$9$k:]$K2C$($F$$$^$9!#(B
  $B$5$i$K!"L?Bj$H$7$F2r<a$5$;$k$?$a!"!V(B)$B!W$N8e$m$K$J$$!V(B,$B!W$r!V(B_$B!W$K!"(B
$B!!!V(B)$B!W$N8e$m$K$J$$!V(B.$B!W$r!V(B@$B!W$K!"CV$-49$($F=PNO$7$^$9!#(B
  $B$^$?!"(B$NEWLINE$B$GDj5A$5$l$k?t$@$1$^$H$a$F=PNO$7$^$9$N$G!"<c43=PNO$N;E(B
$B!!J}$,FC<l$G$9!#(B
  $BI,$:0l$D$:$D=PNO$9$k$3$H$K$9$l$P!"$b$C$H4JC1$J5-=R$G:Q$`$G$7$g$&!#(B
  $B8=:_$N=PNONc$O!"0J2<$NDL$j$G$9!#(B
        $B!ZNc![(B$magnitude(5)/3,depth_(50)/3.


$B!Z(B7. $B;HMQ>e$NCm0U![(B

  $B$3$N(Brunqsqr$B$K$O!"$$$/$i$+;HMQ$N:]$K5$$r$D$1$J$1$l$P$J$i$J$$E@$,$"$j(B
$B$^$9!#0J2<$NE@$K$4Cm0U2<$5$$!#(B

$B!&;H$($J$$J8;z!?(B-.,$B$J$I$N!V(B_$B!W0J30$N5-9fN`(B
  runqsqr$B$,;HMQ$9$k$?$a$d!"(Bqsqr.plg$B$r(BProlog$B2r<a7O$G<B9T$9$k$?$a$K!"F~(B
$B!!NO$9$kJ8;z$H$7$F;H$($kJ8;z$K$O@)8B$,$"$j$^$9!#(B
  $B!V(B-$B!W$O(Brunqsqr$B$K$*$1$kFC<lJ8;z$J$N$G!"$9$Y$F$N>l=j$K;H$&$3$H$,$G$-$^(B
$B!!$;$s!#(BProlog$B$H$OL54X78$K(Brunqsqr$B$,8mG'<1$7$^$9!#(B
  $B!V(B,$B!W$O!"(BProlog$B$d(Bnbp$B$J$I$K$*$1$kFC<lJ8;z$J$N$G!"0z?t!"=R8l$N6h@Z$j0J(B
$B!!30$K;H$&$3$H$,$G$-$^$;$s!#(B
  $B!V(B.$B!W$O!"(BProlog$B$d(Bnbp$B$J$I$K$*$1$kFC<lJ8;z$J$N$G!"0z?t!"=R8l$N=*C<$H!"(B
$B!!<B?t$N>.?tE@$H$7$F0J30$K;H$&$3$H$,$G$-$^$;$s!#(B
  $B$=$NB>!"!V(B_$B!W$H1Q?t;z0J30$NJ8;z$b!"(BProlog$B$NJQ?t!"Dj?t$H$7$FMQ$$$k$3(B
$B!!$H$,$G$-$J$$$N$G!"(Brunqsqr$B$G$b$=$l$K=`$8$^$9!#(B

$B!&;H$C$FM_$7$/$J$$J8;z!?!V(B_$B!W(B
  runqsqr$B$G$O!"0z?tF1;N$N6h@Z$j$N!V(B,$B!W$r!V(B_$B!W$HCV49$7$F(Bnbp$B$J$I$NL?BjO@(B
$B!!M}2>@b?dO@$KEO$7$^$9!#$=$l$f$(!"0z?t$N6qBNCM$K!V(B_$B!W$,;H$o$l$F$$$k$H!"(B
$B!!8mF0:n$N$*$=$l$,$"$j$^$9!#$J$k$Y$/;HMQ$7$J$$$G2<$5$$!#(B
  $BF1MM$K!"<B?t$N>.?tE@$H$7$FMQ$$$i$l$k!V(B.$B!W$b!V(B@$B!W$HCV49$5$l$^$9$N$G!"(B
$B!!;H$o$J$$$G2<$5$$!#(B($B$3$A$i$O!"(BProlog$B<B9T7O$K5qH]$5$l$k$O$:$G$9$,(B)

$B!&M=Ls$5$l$?%N!<%I$NL>A0(B
  qsqr.plg$B$O!"I,$::G=*E*%4!<%k$r(Bgoal/0$B$H$$$&%N!<%I$K$7$^$9$N$G!"$3$NL>(B
$B!!A0$O;HMQ$7$J$$$G2<$5$$!#(B

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

$B!!!!!!!!(BCopyright(C) 1996   $BBg_79,@8!"@PDM(B $BK~!"EZHn(B $B9@!"0KF#@/9((B
  $B!!(B  $B!!!!(B                $B!JEl5~Bg3X9)3XItEE;R>pJs9)3X2J!!@PDM8&5f<<!K(B
 
********************************************************************** 
*******  $B%M%C%H%o!<%/2=%P%V%kEAGEK!$K$h$k9bB.2>@b?dO@%7%9%F%`(B  *******
*******   -- $BL?BjO@M}HG(B(ver.2)   NBP1                          *******
**********************************************************************


$B35(B $BMW!'(B
$B!!%3%9%H$K4p$E$/2>@b?dO@$N=`:GE,2r$rDc<!B?9`<0;~4V$G5a$a$k%7%9%F%`$NL?(B
$BBjO@M}HG!#(B

$BL\(B $BE*!'(B
  $B2>@b?dO@!J@8@.2DG=$J2>@b$rDj5A$7$F$"$k%"%V%@%/%7%g%s!K$O!"CN<1=hM}$N(B
$BM-MQ$JOHAH$_$G$"$k$,!"87L)2r$N7W;;$K$OLdBj%5%$%:$KBP$7$F;X?t%*!<%@$N?d(B
$BO@;~4V$rMW$9$k!#K\%=%U%H%&%'%"$O!"%3%9%H$K4p$E$/2>@b?dO@$N=`:GE,2r!J2r(B
$B$N%3%9%H$O2r$K4^$^$l$k2>@b$N=E$_$NOB$G$"$j!":GE,2r$H$O2r$N%3%9%H$,:G>.(B
$B$J$b$N!K$rDc<!$NB?9`<0;~4V$G5a$a$k%M%C%H%o!<%/2=%P%V%kEAGEK!!J(BNBP$BK!!'(B
Networked Bubble Propagation method$B!K$r<BAu$7$?$b$N$G$"$k!#(BX-window$B$K(B
$B$h$k%0%i%U%#%+%k$J%f!<%6%$%s%?%U%'!<%9$bDs6!$7$F$$$k!#(B

$BMQES!'(B
  $B%b%G%k!J@)Ls!K$K4p$E$/?GCG!"%b%G%k!J@)Ls!K$K4p$E$/@_7W$J$I$N$h$&$J9=(B
$BB$E*!J?<$$!KCN<1$K4p$E$/LdBj2r7h$K!"9bB.2>@b?dO@K!$rE,MQ$7$F$_$h$&$H$9(B
$B$k8&5f<T!"5;=Q<T$K$h$k;HMQ$rA[Dj!#(B

$B5!(B $BG=!'(B
  $BElBg@PDM8&5f<<$G9M0F!"3+H/$5$l$?(BNBP$BK!$O!"(B0-1$B@0?t7W2h$NBgJQNI$$6a;w2r(B
$BK!$G$"$kA]=P$7Jd?tK!(B(pivot and compliment method)$B$NF0:n$r%M%C%H%o!<%/(B
$B>e$G<B8=$7!"$+$DCN<19=B$$rMxMQ$7$??dO@8zN($N8~>e$rC#@.$7$?$b$N$G$"$k!#(B
$B?dO@B.EY$OMWAG2>@b?t$NLs(B1.5$B>h$NB?9`<0%*!<%@;~4V$rC#@.$9$k!#(B
  NBP1$B$OL?Bj%[!<%s@aI=8=$NCN<1$r07$&%P!<%8%g%s$G$"$j!"$3$l$rFbIt$GMxMQ(B
$B$9$k=R8l%[!<%s@aI=8=$NCN<1$r07$&%P!<%8%g%s$OJLESDs6!$5$l$kM=Dj$G$"$k!#(B

$B9=(B $B@.!'(B
  $B%=!<%9%W%m%0%i%`!JL>>N!'(Bnbp1b.c$B!K0l$D$N$_!#;n83MQ$NNcBjCN<1%Y!<%9%U%!(B
$B%$%k!JL>>N!'(Bkb**.dat$B!K$,E:IU$5$l$F$$$k!#(B
  nbp1b.c $B$N5-=R8@8l$O(B C $B$G!"(B82KB $B$G$"$k!#(B

$B;HMQ%^%7%s$H4D6-!'(B
$B!!(BUNIX$B%^%7%s!"(BOS $B$O(B UNIX $B$G!"(BX-window$BMQ%i%$%V%i%j$rI,MW$H$9$k!#(B

$B;29MJ88%!'(B
1) $BBg_7!"@PDM!'2>@b?dO@$K$*$1$k=`:GE,2r$rB?9`<0;~4V$G7W;;$9$k%M%C%H%o!<(B
   $B%/2=%P%V%kEAGEK!!"?.3XO@(BD-II, Vol.J77-D-II, No.9, pp.1817-1829(1994.9)
2) $BBg_7!"@PDM!'2~NI7?%M%C%H%o!<%/2=%P%V%kEAGEK!$K$h$kDc<!B?9`<0;~4V2>@b(B
   $B?dO@K!(B, $B?M9)CNG=3X2q;o(B, Vol.10, No.1, pp.123-130(1995.1)
3) $BBg_7!"@PDM!'B?9`<0;~4V2>@b?dO@$rC#@.$9$k%M%C%H%o!<%/2=%P%V%kEAGEK!$N(B
   $B=R8lO@M}$X$N3HD%(B, $B?M9)CNG=3X2q;o(B, Vol.10, No.5, pp.731-740(1995.9)

-----------------------------------------------------------------------

$B%=%U%H%&%'%"$N%$%s%9%H!<%kK!!'(B
  $B!!(BUNIX$B$N(BX-window$B$,;HMQ$G$-$k4D6-$G<!$N$h$&$K$7$F%=!<%9%W%m%0%i%`(B
    (nbp1b.c)$B$r%3%s%Q%$%k$7$F!"<B9T7A<0$N%W%m%0%i%`$r:n@.$9$k!#(B
$B!!(B $B!J(BSUN-OS, Linux, Irix$B$GF0:n3NG':Q$_!#!K(B

     gcc nbp1b.c  -lX11 -lm -o nbp

    $B$G<B9T%W%m%0%i%`L>$r(Bnbp$B$H$9$k>l9g!$(B
     >nbp [$BLdBj$NCN<1%Y!<%9L>(B]
    $B$H%3%^%s%I$rM?$($k$H<B9T3+;O!%(B

    Segmentation Fault $B$,H/@8$9$k$h$&$J$i!"%=!<%9%W%m%0%i%`(B nbp1b.c
    $B$N(B STRUCT, SLACK $B$NCM$rJQ99$7$F$_$F$/$@$5$$!#!J=i4|@_DjCM$O(B 1000$B!K(B
    $B;HMQ%3%s%T%e!<%?$N%a%b%j4D6-$K0MB8$7$^$9!#(B

$BA`:nK!!'(B

$B!J#1!K<B9T3+;O(B

$B!!(B  $B%W%m%0%i%`$r<B9T$9$k$H!"(B
    *******************************************************
    *******************************************************
            NBP (Networked Bubble Propagation)             
    ***          A High-speed Abduction System         ***
    *******************************************************
    *       CopyRighted by Y.Ohsawa and M.Ishizuka (1996)   *
    *******************************************************
    The input data :  [$BLdBj$NCN<1%Y!<%9L>(B]

$B$HI=<($5$l$k!%CN<1%Y!<%9$H$O!$(B
    1:- a1.
    a1:-a2,a3,b1.
    a2:-b3,c2,a4.
    .....

$B$N7A$N!$%[!<%s@a=89g$G$"$k!J#39TL\$N%[!<%s@a$O!$(Bb3,c2,a4$B$,A4$F??$J$i$P(B
a2$B$b??$H$J$k$3$H$rI=$o$9!K!%(B"1:-"$B$ND>8e$N%"%H%`$O%4!<%k!J@bL@$"$k$$$O>Z(B
$BL@$7$?$$$3$H!K$rI=$o$9!%Kt!$(B"0:-x,y,z."$B$G(Bx,y,z$B$,L7=b$9$k2>@b$G$"$k$3$H(B
$B$rI=$o$7!$(Bx,y,z $B$,F1;~$K??$H$J$k$3$H$,$J$$$3$H$r0UL#$9$k!%CN<1%Y!<%9=q(B
$B<0$N>\:Y$OKvHx$K<($9$,!$(Bmule$B$J$I$N%(%G%#%?$GJL$K:n@.$9$k!%(B

$B!J#2!K(BBPN$B!J%P%V%kEAGE%M%C%H%o!<%/!K9=@.2aDx$NI=<((B

  $B!J#1!K$N8e!$(B
   Do you see the process of reading the input file (Yes:1 / No:0)?
   $B$HJ9$$$F$/$k!%$3$3$G(B

$B!&(B1$B$r;XDj!'<!$NMM$K!$CN<1$rFI$_9~$`2aDx$G$N%N!<%I@8@.$,I=<($5$l$k!%(B()$BFb(B
           $B$N?t;z$O(BBPN$B!J%P%V%kEAGE%M%C%H%o!<%/!KCf$KH/@8$5$;$?9=B$%N!<(B
           $B%I!$(B[]$BFb$N?t;z$O%9%i%C%/%N!<%I$NHV9f!%(B
           1:-(1)a1.
           a1:-a2,a3,(2)(3)b1.(4)
           [5][6][7][8]a2:-b3,c2,(9)(10)a4.(11)

$B!&(B0$B$r;XDj!'CN<1$rFI$_9~$`2aDx$G$N%N!<%I@8@.$rI=<($7$J$$!%(B

$B!J#3!K(BBPN$B$NI=<(MM<0$N@_Dj(B

   $B<!$K!$(B
   You see the inference graph of NBP, nodes denoted by (Node:0 / Atom:1).
   (If you do not see the graph, type 2.)
   $B$H8@$C$F$/$k!%(B

$B!&(B0$B$r;XDj!'%N!<%I$K%N!<%IHV9f!J>e5-$N%N!<%I(B11$B$KBP$7$F$O%"%H%`(Ba4$B!K$rIU$7(B
           $B$?(BBPN$B!J%P%V%kEAGE%M%C%H%o!<%/!K$rI=<(!%(B
$B!&(B1$B$r;XDj!'%N!<%I$KBP1~$9$k%"%H%`L>!J>e$NNc$G$O!$%N!<%I(B11$B$KBP$9$k(Ba4$B!K$r(B
           $BIU$7$?(BBPN$B$rI=<(!%(B
$B!&(B2$B$r;XDj!'(BBPN$B$rI=<($7$J$$!%(B $B%j%?!<%s%-!<$r2!$9$H2r$^$G0l5$$KE~C#$9$k!%(B
           BPN$BI=<($NI,MW$,$J$+$C$?$j!$2r$rF@$k$^$G$N;~4V$r@aLs$9$kL\E*$K(B
           $BE,$7$F$$$k!%(B

   $B>0!$$$$:$l$rA*Br;XDj$7$F$b!$%3%^%s%I%i%$%s$K$O:G=*E*$K0J2<$NMM$K2r2>(B
$B@b$rI=<($9$k!%(B
      <$B=PNONc!JIUO?$NCN<1%Y!<%9$N>l9g!K(B>
      END AS SUCCESS
      runtime=     0.03[s]
      SOLUTION SET
      1,a1,a2,a3,b1,b3,c2,a5,c1,c3,

$B!J#4!K(BX-Window$B$G$NA`:n(B

   $B!J#3!K$G(B0$B$+(B1$B$r;XDj$7$?>l9g$K$O!$(BX-Window$B$G(BBPN$B$,I=<($5$l$k!%$3$N>l9g(B
$B$O!$8e$N=hM}$b(BX-Window$B>e$G2DG=$G$"$k!%%9%/%m!<%k%\%?%s!$%9%F%C%W%\%?%s!$(B
$B=*N;%\%?%s$,(BX-Window$B>e$GMxMQ$G$-$k!%(B

$B!&%9%/%m!<%k%\%?%s!'2!$7$?%\%?%s$K=q$+$l$?8~$-!J(B"UP"$B$J$i>e8~$-!K$K(BBPN$B$,(B
        $B0\F0$9$k!%(BBPN$B$,Bg$-$9$.$F!$2hLL$KF~$i$J$$$?$a8+$($J$$ItJ,$r8+$k(B
        $B$N$KMxMQ$9$k!%(B
$B!&%9%F%C%W%\%?%s!'(BStep$B$H=q$+$l$?%\%?%s!%2!$9$H(BNBP$B$N%P%V%kEAGE$,#1%9%F%C(B
        $B%W$:$D8+$i$l$k!%(B
$B!&=*N;%\%?%s!'(BExit$B$H=q$+$l$?%\%?%s!%2!$9$H%W%m%0%i%`$N<B9T$r=*N;$9$k!%(B

      <$BIUO?!'CN<1%Y!<%9$H(BNBP$B$N<B9TNc(B>
        $B??(B(true)$B$O#1!"56(B(false)$B$O#0$GI=$9$N$G<!$N$h$&$K$J$k!#(B
         $B!P2>@b?dO@$N%4!<%k$N5-=RNc!Q(B
                1:-g,
         $B!P%k!<%k7?L?BjCN<1$N5-=RNc!Q(B
                a:-b,h1,
         $B!PL7=b@)LsCN<1$N5-=RNc!Q(B
                0:-h1,h2,
         $B!PF~NO$9$kCN<1%U%!%$%k$NNc(B -- kb2.dat $B!Q(B
              1:-g,
              g:-ma0,md0,
              ma0:-mb0,
              ma0:-mc0,
              ma0:-hc0,
              md0:-ha0,
              md0:-hb0,
              mb0:-he0,
              mc0:-me0,
              me0:-hd0,
              0:-ha0,he0,
              0:-hb0,he0,
              0:-ha0,hd0,
              0:-hb0,hd0,
              0:-ha0,hc0,
          {$BB>$K0J2<$NCN<1%U%!%$%k$rE:IU(B
              -- kb8.dat  kb20.dat  kb22.dat  kb23.dat  kb24.dat }

$B!Z$=$NB>$N%*%W%7%g%s![(B
  $   $B2>@b$N=E$_!J%3%9%H$K4p$E$/2>@b?dO@$K$*$1$k=E$_!K@_Dj(B
        $B=q<0!'(B$ [$B%"%H%`L>(B1]/[$B=E$_(B1$B!J@0?tCM!K(B], [$B%"%H%`L>(B2]/[$B=E$_(B2
             $B!J@0?tCM!K(B], ...$B2~9T(B
        $B0UL#!'%"%H%`(B1$B$K=E$_(B1$B!$%"%H%`(B2$B$K=E$_(B2$B$J$I$rM?$($k!%$3$3$G=E$_$r(B
              $B;XDj!#$7$J$$>l9g!$=E$_$O<+F0E*$K%G%U%)%k%HCM(B1$B$r$H$k!%(B
        $BNc!'(B  $BCN<1%Y!<%9$NKvHx$N2~9T8e$K(B
              $ha0/5,hc0/2,
              $B$H5-$7$F(Bha0$B$K(B 5, hc0$B$K(B2$B$N=E$_$rM?$($k!%(B

  >   $B2>@b$N6/D4(B
        $B=q<0!'(B$ [$B%"%H%`L>(B1],  [$B%"%H%`L>(B2],....$B2~9T(B
        $B0UL#!'%"%H%`(B1$B!$%"%H%`(B2...$B$N=E$_$r(B0$B$H$9$k$3$H$K$h$C$F!"$3$l$i$N(B
              $B2>@b%"%H%`$,;H$o$l0W$/$9$k!#(B
        $BNc!'(B
              >b5,b3.
              b5,b3$B$r6/D4$9$k!%(B

  !   $B6/D4$7$?$$2>@b$HL7=b$9$k2>@b$NM^@)(B
        $B=q<0!'(B! [$B%"%H%`L>(B1],  [$B%"%H%`L>(B2],....$B2~9T(B
        $B0UL#!'2>@b(B1$B!$2>@b(B2...$B$KL7=b$9$k2>@b$N=E$_$r(B1000000.0 $B$H$9$k$3(B
              $B$H$K$h$C$F!$2>@b(B1,$B2>@b(B2...$B$r??$H$J$j$d$9$/$9$k!%(B
        $BNc!'(B
              !b3,b5.
              b3, b5$B$HL7=b$9$k2>@b$rM^@)$9$k!%>e=R$N(B">"$B$HJ;$;$F!$(B
              >b3,b5.
              !b3.
              $B$H$9$l$P!$(Bb3$B$O0lAX6/D4$5$l$k!%(B
                                
================================ end ====================================


