version 1.1, 2003/12/05 07:53:10 |
version 1.2, 2003/12/08 05:35:32 |
|
|
%%$OpenXM$ |
%%$OpenXM: OpenXM/src/kan96xx/Doc/oxshell.oxw,v 1.1 2003/12/05 07:53:10 takayama Exp $ |
%% "make oxshell-ja.tex" to get the platex source. |
%% "make oxshell-ja.tex" to get the platex source. |
//&ja \documentclass{jarticle} |
//&ja \documentclass{jarticle} |
//&en \documentclass{article} |
//&en \documentclass{article} |
|
|
//&ja \title{Oxshell $B$N@_7W$H<BAu(B} |
//&ja \title{Oxshell $B$N@_7W$H<BAu(B} |
//&en \title{The design and implementation of oxshell} |
//&en \title{The design and implementation of oxshell} |
//&C \author{Nobuki Takayama} |
//&C \author{Nobuki Takayama} |
//&C \date{December 5, 2003} |
//&C \date{December 8, 2003} |
//&C \newtheorem{example}{Example} |
//&C \newtheorem{example}{Example} |
\usepackage{html} |
\usepackage{html} |
|
|
|
|
|
|
//&ja \section{doPolymake $B$N=hM}$NN.$l(B} |
//&ja \section{doPolymake $B$N=hM}$NN.$l(B} |
|
|
//&ja {\bf $B0J2<$O$H$j$"$($:MWE@$N$_(B.} |
|
|
|
/*&ja |
/*&ja |
\begin{enumerate} |
\begin{enumerate} |
\item (CMO tree $B$r(B tfb/2 $B7A<0$X(B.) |
\item (CMO tree $B$r(B tfb/2 $B7A<0$X(B.) |
\item tfb/2 $BI=8=$N%G!<%?$r(B polymake $B$NF~NO7A<0$X(B. |
\item tfb/2 $BI=8=$N%G!<%?$r(B polymake $B$NF~NO7A<0$X(B. |
|
({\tt OpenXM/src/k097/k0} $B$N(B {\tt QuoteMode} $B$rMxMQ$7$F(B CMO tree $B7A<0$X(B. |
|
$B$=$l$+$i(B sm1 $B$N(B treeToPolymake extension $B$rMQ$$$k(B. |
|
$B%=!<%9$O(B, {\tt OpenXM/src/kan96xx/trans/tree2polymake.c}) |
\item polymake $B$r(B {\tt oxshell} $B$G8F$S=P$9(B. |
\item polymake $B$r(B {\tt oxshell} $B$G8F$S=P$9(B. |
\item $B$&$1$H$C$?(B polymake $B7A<0$N%G!<%?$r(B tfb/2 $B7A<0$X(B (polymake2tfb). |
({\tt OpenXM/src/kan96xx/trans/polymake.sm1}). |
|
\item $B$&$1$H$C$?(B polymake $B7A<0$N%G!<%?$r(B tfb/2 $B7A<0$X(B |
|
({\tt OpenXM/src/kan96xx/trans} $B$N(B {\tt yy\_polymake.y} $B$G%Q!<%9(B. |
|
polymake2tfb $B$,JQ49MQ$N%P%$%J%j(B.) |
\item (tfb/2 $B7A<0$r(B CMO tree $B$X(B.) |
\item (tfb/2 $B7A<0$r(B CMO tree $B$X(B.) |
\end{enumerate} |
\end{enumerate} |
|
|
{\tt doPolymake} $B$N%=!<%9$O(B {\tt kan96xx/trans/polymake.sm1} $B$K$"$k(B. |
{\tt doPolymake} $B$N%=!<%9$O(B \\ {\tt kan96xx/trans/polymake.sm1} $B$K$"$k(B. |
*/ |
*/ |
|
|
//&ja \section{{\tt Oxshell} $B$NFCD'(B} |
//&ja \section{{\tt Oxshell} $B$NFCD'(B} |
|
|
//&ja {\bf $B0J2<$O$H$j$"$($:MWE@$N$_(B.} |
|
|
|
/*&ja |
/*&ja |
\noindent OX RFC 100 $B$K$O%U%!%$%k$N35G0$,$J$$(B. $B$7$?$,$C$F(B, \\ |
\noindent OX RFC 100 $B$K$O%U%!%$%k$N35G0$,$J$$(B. $B$7$?$,$C$F(B, \\ |
\verb@ polymake $B%U%!%$%kL>(B $BF0:n(B @ \\ |
\verb@ polymake $B%U%!%$%kL>(B $BF0:n(B @ \\ |
|
|
/bin/sh $B$NB8:_$r2>Dj$G$-$k(B unix $B$H(B /bin/sh $B$NB8:_$r2>Dj$G$-$J$$(B windows |
/bin/sh $B$NB8:_$r2>Dj$G$-$k(B unix $B$H(B /bin/sh $B$NB8:_$r2>Dj$G$-$J$$(B windows |
$B$H$+$$$m$s$JMWAG$,$"$j(B, $B%W%m%0%i%`$,BgJQFI$_$K$/$/J]<i$b$7$K$/$$(B |
$B$H$+$$$m$s$JMWAG$,$"$j(B, $B%W%m%0%i%`$,BgJQFI$_$K$/$/J]<i$b$7$K$/$$(B |
( phc $B$G$N7P83(B). ZPG $B$N6KCW$G$"$k(B. |
( phc $B$G$N7P83(B). ZPG $B$N6KCW$G$"$k(B. |
|
|
{\tt oxshell} $B$G$O$3$N;E;v$O<!$N(B 1 $B9T$G=q$/(B. \\ |
{\tt oxshell} $B$G$O$3$N;E;v$O<!$N(B 1 $B9T$G=q$/(B. \\ |
\verb@ [(polymake) (stringInOut://$B%9%?%C%/%^%7%sJQ?tL>(B.poly) $BF0:n(B] oxshell @ \\ |
\verb@[(polymake) (stringInOut://$B%9%?%C%/%^%7%sJQ?tL>(B.poly) $BF0:n(B] oxshell@\\ |
$B%9%?%C%/%^%7%s$NJQ?t$r%U%!%$%k$r$_$J$7$F$$$k(B. |
$B%9%?%C%/%^%7%s$NJQ?t$r%U%!%$%k$r$_$J$7$F$$$k(B. |
$BJQ?t$r(B input output stream $B$H$_$J$9$H$$$&$N$O(B Java $B$N(B class $BEy$G(B |
|
$B$9$G$K$D$+$o$l$F$$$k$h$/CN$i$l$F$$$k9)IW$@$,$3$l$r:N$jF~$l$k$3$H$K$h$j(B, |
$B$3$N$h$&$J9M$(J}$O(B, $B$J$K$b?7$7$$$b$N$G$O$J$$(B. |
|
$BJ8;zNsJQ?t$r%U%!%$%k$N$h$&$K(B input output stream $B$H$_$J$9$H$$$&$N$O(B Java $B$N(B |
|
io.StringReader ( io.InputStreamReader $B$NBe$o$j(B) $BEy$G;H$o$l$F$$$k(B. |
|
$B$^$?%3%^%s%I$N<B9T7k2L$rJ8;zNs$H$7$FJQ?t$KBeF~$9$kF0:n$O(B, |
|
$B$?$H$($P%9%/%j%W%H8@8l$G$"$k(B Python $B$G$O(B \verb@ x=os.popen("abc","r").read(); @ |
|
$B$H$7$F4JC1$K<B9T$G$-$k(B. |
|
$B$7$+$7$J$,$i$3$l$i$N9M$($r?t3X%=%U%H%&%(%"$NE}9g2=$N$?$a$K;H$&$?$a$N<BAu$OB8:_$7$F$$$J$+$C$?(B. |
|
$B$3$l$,(B oxshell $B%3%^%s%I$NF3F~$K$h$C$F2r7h$5$l$kE@$N0l$D$G$"$k(B. |
|
$B$3$l$i$O$h$/CN$i$l$F$$$k9)IW$@$,$3$l$r?t3X%=%U%H%&%(%"E}9g:n6H$K:N$jF~$l$k$3$H$K$h$j(B, |
$B9M$(J}$,@0M}$5$l%W%m%0%i%`$NJ]<i@-$,BgJQ$h$/$J$j(B, $B$^$??7$7$$%P%C%A7?%"%W%j%1!<%7%g%s$N(B |
$B9M$(J}$,@0M}$5$l%W%m%0%i%`$NJ]<i@-$,BgJQ$h$/$J$j(B, $B$^$??7$7$$%P%C%A7?%"%W%j%1!<%7%g%s$N(B |
OX $B%5!<%P2=$,3Z$K$J$C$?(B. |
OX $B%5!<%P2=$,3Z$K$J$C$?(B. |
|
|
|
|
{\tt oxshell} $B$N$=$NB>$N%3%^%s%I$K$D$$$F$O(B, sm1 $B$G(B {\tt (oxshell) usage} |
{\tt oxshell} $B$N$=$NB>$N%3%^%s%I$K$D$$$F$O(B, sm1 $B$G(B {\tt (oxshell) usage} |
$B$N2r@b$r8+$h(B. |
$B$N2r@b$r8+$h(B. |
|
{\tt oxshell} $B$N%=!<%9%3!<%I$O(B {\tt OpenXM/src/kan96xx/Kan/shell.c}. |
$B>-MhE*$K$O(B /bin/sh $B$N3HD%8@8l$H$9$kM=Dj(B. |
$B>-MhE*$K$O(B /bin/sh $B$N3HD%8@8l$H$9$kM=Dj(B. |
|
|
OX RFC 100 $B$K%U%!%$%k$N35G0$r2C$($k:n6H$O(B OX RFC 103 (100, 101 $B$NJd$$(B) $B$G$d$kM=Dj(B. |
OX RFC 100 $B$K%U%!%$%k$N35G0$r2C$($k:n6H$O(B OX RFC 103 (100, 101 $B$NJd$$(B) $B$G$d$kM=Dj(B. |
|
*/ |
|
|
|
//&ja \section{Asir $B$h$j;H$&(B oxshell } |
|
//&en \section{Oxshell on asir} |
|
|
|
/*&ja |
|
Asir $B$+$i(B sm1/oxshell $B$rMxMQ$9$k$?$a$N4X?t$O(B \\ |
|
{\tt OpenXM/src/asir-contrib/packages/src/oxshell.rr} |
|
$B$K$^$H$a$i$l$F$$$k(B. $B<!$N%3%^%s%I$G%m!<%I$9$k(B. |
|
*/ |
|
/*&C |
|
\begin{verbatim} |
|
[1163]:= load("oxshell.rr"); |
|
\end{verbatim} |
|
*/ |
|
|
|
//&ja $B4v$D$+Nc$r$_$F$_$h$&(B. |
|
//&en Let us see some examples. |
|
|
|
/*&ja unix $B>e$G<!$N%3%^%s%I$N<B9T$K$h$j(B {\tt ls} $B$N(B stdout $B$X$N=PNO$,J8;zNs$H$7$F(B {\tt S} $B$N(B |
|
$BBh0lMWAG$H$7$F(B, stderr $B$X$N=PNO$,J8;zNs$H$7$F(B {\tt S} $B$NBh(B2$BMWAG$H$7$F3JG<$5$l$k(B. |
|
*/ |
|
/*&C |
|
\begin{verbatim} |
|
[1164]:= S = oxshell.oxshell(["ls"]); |
|
\end{verbatim} |
|
*/ |
|
|
|
/*&ja |
|
$BJ8;zNs(B {\tt S} $B$K3JG<$5$l$?C18l(B dog, cat, lion $B$r(B unix $B$N%D!<%k(B sort $B$G(B |
|
$BJB$YJQ$($k$K$O<!$N$h$&$K=q$/(B. |
|
$BF~NO$O(B oxshell $B$r<B9T$7$F$$$k%9%?%C%/%^%7%s$NJQ?t(B {\tt S} $B$K3JG<$5$l$F$$$k(B. |
|
*/ |
|
/*&C |
|
\begin{verbatim} |
|
[1163]:= S="dog\ncat\nlion\n"; |
|
[1164]:= oxshell.set_value("S",S); |
|
[1165]:= T=oxshell.oxshell(["sort","stringIn://S"]); |
|
[cat |
|
dog |
|
lion |
|
,] |
|
\end{verbatim} |
|
*/ |
|
|
|
/*&ja |
|
{\tt OpenXM/src/asir-contrib/packages/src/taka\_ahg.rr} $B$N(B |
|
$B4X?t(B {\tt taka\_ahg.b(A,Idx)} $B$O(B oxshell $B$K$h$k(B polymake $B8F$S=P$75!G=$r(B |
|
$BMQ$$$??t3X4X?t$N<BAuNc$G$"$k(B. |
|
$B$3$N4X?t$O(B $B9TNs(B {\tt A} $B$KIU?o$7$?(B $BJ}8~(B {\tt Idx} $B$N$"$k(B $b$ $B4X?t$r7W;;$9$k(B. |
|
$B$3$l$O(B {\tt A} $B$NDj5A$9$k(B cone $B$N%U%!%;%C%H$r$"$i$o$90l<!<0$N@Q$GI=8=$5$l$k$3$H$,(B, |
|
$BCN$i$l$F$$$k(B |
|
(Saito, Mutsumi; Sturmfels, Bernd; Takayama, Nobuki; Hypergeometric polynomials and integer programming. Compositio Math. 115 (1999), no. 2, 185--204 |
|
$B$*$h$S(B |
|
Saito, Mutsumi; Parameter shift in normal generalized hypergeometric systems. Tohoku Math. J. (2) 44 (1992), no. 4, 523--534 |
|
$B$r$_$h(B.) |
|
*/ |
|
|
|
/*&C |
|
\begin{verbatim} |
|
[1163]:= load("oxshell.rr"); |
|
[1164]:= load("taka_ahg.rr"); |
|
[1165]:= A=[[1,0,0],[1,1,0],[1,0,1],[1,1,1],[1,2,0]]; |
|
[1166]:= fctr(taka_ahg.b(A,4,[s1,s2,s3])); |
|
[[1,1],[s1+2*s2,2],[s1+2*s2-1,1]] |
|
\end{verbatim} |
|
*/ |
|
|
|
/*&C |
|
\begin{verbatim} |
|
def b(A,Idx,V) { |
|
F = oxshell.facets(A); /* Computing all the facets by polymake server.*/ |
|
F = F[1]; /* F is the set of the facets */ |
|
P = A[Idx]; |
|
Nfacets = length(F); |
|
F = toPrimitive(A,F); /* Translate into primitive supporting function */ |
|
Bf = 1; |
|
for (I=0; I<Nfacets; I++) { |
|
H = matrix_inner_product(P,F[I]); |
|
if (H != 0) { |
|
B = matrix_inner_product(P,V); |
|
for (J=0; J<H; J++) { |
|
Bf = Bf*(B-J); /* See the papers above. */ |
|
} |
|
} |
|
} |
|
return(Bf); |
|
} |
|
\end{verbatim} |
|
*/ |
|
|
|
//&ja \section{$B$^$H$a(B} |
|
//&en \section{Conclusion} |
|
/*&ja |
|
OX RFC 100 $B$K$O%U%!%$%k$N35G0$,$J$$(B. |
|
$B$7$?$,$C$F(B, $B%P%C%A7?%"%W%j%1!<%7%g%s$r(B OX $B%5!<%P$H$7$F8F$V$?$a$K$O(B, |
|
OX $B%9%?%C%/%^%7%s$N>e$N%G!<%?$r%U%!%$%k$K=q$-=P$7$F$+$i(B |
|
$B<B9T$7$F(B, $B$=$l$+$i$^$?%9%?%C%/%^%7%s$N>e$N%G!<%?$KJQ49$7$J$$$H$$$1$J$$(B. |
|
$B$3$NA`:n$rC;$/8+DL$7$h$/=q$1$k$h$&$K(B sh $B$NI=8=J}K!$r3HD%$7$?(B. |
|
$B$3$N$h$&$J9M$(J}$O(B, $B$J$K$b?7$7$$$b$N$G$O$J$/(B, |
|
$B$?$H$($P%9%/%j%W%H8@8l$G$"$k(B Python $B$G$O;w$?I=8=$,$G$-$k(B. |
|
$B$7$+$7$J$,$i$3$l$i$N9M$($r?t3X%=%U%H%&%(%"$NE}9g2=$N$?$a$K;H$&$?$a$N<BAu$OB8:_$7$F$$$J$+$C$?(B. |
|
$B$3$l$,(B oxshell $B%3%^%s%I$NF3F~$K$h$C$F2r7h$5$l$kE@$N0l$D$G$"$k(B. |
|
$B$3$l$i$O$h$/CN$i$l$F$$$k9)IW$@$,$3$l$r?t3X%=%U%H%&%(%"E}9g:n6H$K:N$jF~$l$k$3$H$K$h$j(B, |
|
$B9M$(J}$,@0M}$5$l%W%m%0%i%`$NJ]<i@-$,BgJQ$h$/$J$j(B, $B$^$??7$7$$%P%C%A7?%"%W%j%1!<%7%g%s$N(B |
|
OX $B%5!<%P2=$,3Z$K$J$C$?(B. |
|
|
|
OpenXM $B$O8@8l:.:_7?4D6-$G$"$j(B, $B$=$N%/%i%$%"%s%H$G$b$"$k(B asir $B$d(B kan/sm1 $B$O$3$N$h$&$K(B |
|
$B%9%/%j%W%H8@8lIw$N5!G=$,DI2C$5$lB3$1$F$$$k$,(B, $B$3$N;n$_$O$=$N0l4D$G$"$k(B. |
*/ |
*/ |
|
|
\end{document} |
\end{document} |