[BACK]Return to toric0.txt CVS log [TXT][DIR] Up to [local] / OpenXM / src / k097 / debug

Annotation of OpenXM/src/k097/debug/toric0.txt, Revision 1.1

1.1     ! maekawa     1: (yacc/debug/toric0.k,  1997, 4/8)
        !             2:
        !             3: << 以下で yacc/debug/toric0.k の使い方を説明します. >>
        !             4:
        !             5:
        !             6: Q. 行列 A で定義される affine toric variety の生成元を計算したい.
        !             7:
        !             8: A. [1] A = \matrix{1&1&1&1\cr
        !             9:                    0&1&0&1\cr
        !            10:                    0&0&1&1\cr} の時の例を示します.
        !            11:        次のような内容のファイルを作ります.
        !            12:        名前を, a24.k としましょう.
        !            13:
        !            14:        load("debug/toric0.k");
        !            15:        A = [[1,1,1,1],[0,1,0,1],[0,0,1,1]];
        !            16:        ans = toric(A);
        !            17:
        !            18:    [2]  k0 を起動します.
        !            19:
        !            20:       k0
        !            21:
        !            22:    [3] いくつかメッセージが表示されて, k0 のプロンプト In[??]=
        !            23:
        !            24:              省略
        !            25:        Overloaded on pushVariables and popVariables.
        !            26:        ctrl-C signal is caught in KSexecuteString() and <<Warning>>
        !            27:        is regarded as an error.
        !            28:        In[3]=debug/asir0.k    you need to start k0 with -f option.
        !            29:        In[4]=In[5]=
        !            30:
        !            31:        がこのようにでたら,
        !            32:
        !            33:        load("a24.k");
        !            34:
        !            35:        とします.  a24.k がロードされ, 関数 toric が実行されて
        !            36:        結果が表示されます.
        !            37:
        !            38:    [4] 画面に, いくつかメッセージが表示された後に,
        !            39:
        !            40:         ---------- generators of the toric ideal are -----
        !            41:         [    -z[2]*z[1]+z[3]*z[0] ]
        !            42:
        !            43:        と表示されたら計算が終了です.  上の元が, affine toric variety の
        !            44:        (イデアルの)生成元です.  この場合には一つしかありません.
        !            45:
        !            46:    [5] 計算結果は変数 ans にもはいっています.
        !            47:       (ans = toric(A) と代入しているから.)
        !            48:
        !            49:        ans :
        !            50:
        !            51:       と入力すれば次のように ans の内容を表示してくれます.
        !            52:
        !            53:       In[7]=ans :
        !            54:       [    -z[2]*z[1]+z[3]*z[0] ]
        !            55:       In[8]=
        !            56:
        !            57:   [6] ans の中身を ファイルにセーブしたい場合は,
        !            58:
        !            59:       Save(ans);
        !            60:
        !            61:       と入力して下さい. sm1out.txt にセーブされます.
        !            62:       すでに, sm1out.txt が存在する場合は,  ans が追加してかきこまれます.
        !            63:
        !            64:   [7] quit();  と入力すると k0 を終了します.
        !            65:
        !            66:   [注意事項] 行列 A の要素は, 負のものを含んではいけません.
        !            67:   [注意事項] 環を定義したときの変数の最大個数は, 100 です.
        !            68:              作業用の変数もありますので, 行列 A の縦と横のサイズの和が
        !            69:              100 に近付いたらもう計算できません.
        !            70:
        !            71:
        !            72: Q. A-超幾何方程式の Fourier 変換の計算法.
        !            73:
        !            74: A.
        !            75:  [1] A = \matrix{1&1&1&1\cr
        !            76:                    0&1&0&1\cr
        !            77:                    0&0&1&1\cr} の時の例を示します.
        !            78:        次のような内容のファイルを作ります.
        !            79:        名前を, i24.k としましょう.
        !            80:
        !            81:        load("debug/toric0.k");
        !            82:        fff = ["z[0]*Dz[0]+z[1]*Dz[1]+z[2]*Dz[2]+z[3]*Dz[3]-z[5]",
        !            83:               "           z[1]*Dz[1]           +z[3]*Dz[3]-z[6]",
        !            84:               "                      z[2]*Dz[2]+z[3]*Dz[3]+z[7]",
        !            85:               "z[0]*z[3]-z[1]*z[2]"];
        !            86:        ans = zindicial(fff,4,3);
        !            87:
        !            88:
        !            89:        A-超幾何方程式 の toric part
        !            90:               "z[0]*z[3]-z[1]*z[2]"
        !            91:        は, 関数 toric で計算しておいたものを使います.
        !            92:
        !            93:        方程式の変数は必ず, z[i], Dz[i] (i は 0 から) を使います.
        !            94:        z[i] が空間変数, Dz[i] が, 微分変数です.
        !            95:        式を "  でかこむことを忘れないで下さい.
        !            96:
        !            97:        ans = zindicial(fff,4,3);
        !            98:
        !            99:        4 は Dz[i] の現れる最大 index +1 です.  今の場合, Dz[3] が最後の
        !           100:        微分変数ですから, 4 な訳です.
        !           101:        n = Dz[i] の現れる最大 index +1
        !           102:        とおくとパラメータはかならず,
        !           103:        z[n+1], ..., z[n+m] で与えます.
        !           104:        ここで, m はパラメータの個数です.
        !           105:        今の場合, z[5],z[6],z[7] がパラメータです.
        !           106:        この m,n を用いると, zindicial は
        !           107:        ans = zindicial(fff,n,m);
        !           108:        とよぶことになります.
        !           109:
        !           110:
        !           111:    [2]  k0 を起動します.
        !           112:
        !           113:       k0
        !           114:
        !           115:    [3] いくつかメッセージが表示されて, k0 のプロンプト In[??]=
        !           116:
        !           117:              省略
        !           118:        Overloaded on pushVariables and popVariables.
        !           119:        ctrl-C signal is caught in KSexecuteString() and <<Warning>>
        !           120:        is regarded as an error.
        !           121:        In[3]=debug/asir0.k    you need to start k0 with -f option.
        !           122:        In[4]=In[5]=
        !           123:
        !           124:        がこのようにでたら,
        !           125:
        !           126:        load("i24.k");
        !           127:
        !           128:        とします.  a24.k がロードされ, 関数 zindicial が実行されて
        !           129:        結果が表示されます.
        !           130:
        !           131:
        !           132: Q. 結果を因数分解したい.
        !           133:
        !           134: A.  save してから, 他の数式処理システムで因数分解して下さい.
        !           135:
        !           136:   もし, asir がインストールしてあれば,
        !           137:    k0 -f
        !           138:   と -f オプションをつけて k0 を起動しておくことにより,  関数
        !           139:      Factor
        !           140:   で因数分解ができます.
        !           141:
        !           142:
        !           143:

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>