1.2.5 `sm1.deRham'
------------------

sm1.deRham([F,V]|proc=P)
     ::  空間 C^n - (the zero set of F=0)
     のドラームコホモロジ群の次元を計算してくれるようにサーバに頼む.

RETURN
     リスト

P
     数

F
     文字列 または 多項式

V
     リスト

   * この函数は空間 X = C^n \ V(F)
     のドラームコホモロジ群の次元を計算する.     すなわち,    [dim
     H^0(X,C), dim H^1(X,C), dim H^2(X,C), ..., dim H^n(X,C)]    を戻す.

   * V は変数のリスト. n = `length(V)' である.

   *    `sm1.deRham' は計算機の資源を大量に使用する.      たとえば
     `sm1.deRham(0,[x*y*z*(x+y+z-1)*(x-y),[x,y,z]])'
     の計算すらすでに非常に大変である.

   *   b-関数の根を効率よく解析するには, `ox_asir' が `ox_sm1_forAsir'
     より使用されるべきである.  コマンド
     `sm1(0,"[(parse) (oxasir.sm1) pushfile] extension");'    を用いて,
     `ox_asir' との通信モジュールをあらかじめロードしておくとよい.
     このコマンドは `ox_asir_forAsir'
     のスタート時に自動的に実行されている.

   *   `sm1.deRham' を `ox_reset(sm1.get_Sm1_proc());' で中断すると,
     以後 sm1 サーバが非標準モードに入り予期しない動作をする場合
     があるので, コマンド `ox_shutdown(sm1.get_Sm1_proc());' で,
     `ox_sm1_forAsir'   を一時 shutdown
     してリスタートした方が安全である.

     [332] sm1.deRham([x^3-y^2,[x,y]]);
     [1,1,0]
     [333] sm1.deRham([x*(x-1),[x]]);
     [1,2]

参照
     `sm1.start', `deRham' (sm1 command)

Algorithm:
     Oaku, Takayama, An algorithm for de Rham cohomology groups of the
       complement of an affine variety via D-module computation,
     Journal of pure and applied algebra 139 (1999), 201-233.

