[ < ] | [ > ] | [ << ] | [上] | [ >> ] | [冒頭] | [目次] | [見出し] | [ ? ] |
63.1 Introduction to linearalgebra | ||
63.2 Functions and Variables for linearalgebra |
[ < ] | [ > ] | [ << ] | [上] | [ >> ] | [冒頭] | [目次] | [見出し] | [ ? ] |
linearalgebra
は線形代数に関する関数のコレクションです。
例:
(%i1) M : matrix ([1, 2], [1, 2]); [ 1 2 ] (%o1) [ ] [ 1 2 ] (%i2) nullspace (M); [ 1 ] [ ] (%o2) span([ 1 ]) [ - - ] [ 2 ] (%i3) columnspace (M); [ 1 ] (%o3) span([ ]) [ 1 ] (%i4) ptriangularize (M - z*ident(2), z); [ 1 2 - z ] (%o4) [ ] [ 2 ] [ 0 3 z - z ] (%i5) M : matrix ([1, 2, 3], [4, 5, 6], [7, 8, 9]) - z*ident(3); [ 1 - z 2 3 ] [ ] (%o5) [ 4 5 - z 6 ] [ ] [ 7 8 9 - z ] (%i6) MM : ptriangularize (M, z); [ 4 5 - z 6 ] [ ] [ 2 ] [ 66 z 102 z 132 ] [ 0 -- - -- + ----- + --- ] (%o6) [ 49 7 49 49 ] [ ] [ 3 2 ] [ 49 z 245 z 147 z ] [ 0 0 ----- - ------ - ----- ] [ 264 88 44 ] (%i7) algebraic : true; (%o7) true (%i8) tellrat (MM [3, 3]); 3 2 (%o8) [z - 15 z - 18 z] (%i9) MM : ratsimp (MM); [ 4 5 - z 6 ] [ ] [ 2 ] (%o9) [ 66 7 z - 102 z - 132 ] [ 0 -- - ------------------ ] [ 49 49 ] [ ] [ 0 0 0 ] (%i10) nullspace (MM); [ 1 ] [ ] [ 2 ] [ z - 14 z - 16 ] [ -------------- ] (%o10) span([ 8 ]) [ ] [ 2 ] [ z - 18 z - 12 ] [ - -------------- ] [ 12 ] (%i11) M : matrix ([1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], [13, 14, 15, 16]); [ 1 2 3 4 ] [ ] [ 5 6 7 8 ] (%o11) [ ] [ 9 10 11 12 ] [ ] [ 13 14 15 16 ] (%i12) columnspace (M); [ 1 ] [ 2 ] [ ] [ ] [ 5 ] [ 6 ] (%o12) span([ ], [ ]) [ 9 ] [ 10 ] [ ] [ ] [ 13 ] [ 14 ] (%i13) apply ('orthogonal_complement, args (nullspace (transpose (M)))); [ 0 ] [ 1 ] [ ] [ ] [ 1 ] [ 0 ] (%o13) span([ ], [ ]) [ 2 ] [ - 1 ] [ ] [ ] [ 3 ] [ - 2 ] |
Categories: Linear algebra ·Share packages ·Package linearalgebra
[ < ] | [ > ] | [ << ] | [上] | [ >> ] | [冒頭] | [目次] | [見出し] | [ ? ] |
関数fを加算関数として使い、 行列M_1, …, M_nの和を返します。 関数fは任意の数の引数を受け付けなければいけません(Maxima n項関数)。
例:
(%i1) m1 : matrix([1,2],[3,4])$ (%i2) m2 : matrix([7,8],[9,10])$ (%i3) addmatrices('max,m1,m2); (%o3) matrix([7,8],[9,10]) (%i4) addmatrices('max,m1,m2,5*m1); (%o4) matrix([7,10],[15,20]) |
Categories: Package linearalgebra
Mのエントリがすべて行列なら、その時に限って、 trueを返します。
Categories: Package linearalgebra ·Predicate functions
もしMが行列なら、
列演算C_i <- C_i - theta * C_j
を施すことで生じる行列を返します。
もしMが行iか行jを持たないなら
エラーをシグナルします。
Categories: Package linearalgebra
もし Mが行列なら、列 iと jを交換します。 もし Mに列 iか jがないなら、 エラーをシグナルします。
Categories: Package linearalgebra
もし Mが行列なら、
span (v_1, ..., v_n)
を返します。
ここで、集合 {v_1, ..., v_n}
は
Mの列空間の基底です。
空集合の包は {0}
です。
従って、列空間が1員だけ持つ時、
span ()
を返します。
Categories: Package linearalgebra
Maxima式 eのコピーを返します。 eは任意のMaxima式であり得ますが、 eがリストか行列の時、 コピー関数はもっとも役立ちます; 以下を考えてください:
(%i1) m : [1,[2,3]]$ (%i2) mm : m$ (%i3) mm[2][1] : x$ (%i4) m; (%o4) [1,[x,3]] (%i5) mm; (%o5) [1,[x,3]] |
同じ実験を試みましょう。 しかし、今回 mmを mのコピーとします。
(%i6) m : [1,[2,3]]$ (%i7) mm : copy(m)$ (%i8) mm[2][1] : x$ (%i9) m; (%o9) [1,[2,3]] (%i10) mm; (%o10) [1,[x,3]] |
今回、 mmへの割り当てはmの値を変えません。
Categories: Package linearalgebra
自己共役(すなわちHermite)行列のCholesky分解を返します。
二番目の引数はデフォルトでは’generalring’です。
fieldの取り得る値の説明については lu_factor
を参照してください。
Categories: Matrix decompositions ·Package linearalgebra
行列 Mの複素共役転置を返します。
関数 ctranspose
は
それぞれの行列要素を転置するのに
matrix_element_transpose
を使います。
Categories: Package linearalgebra
対角成分 d_1, d_2,...,d_nを持つ対角行列を返します。 対角成分が行列の時、 戻り値行列の零成分は 適切なサイズの零行列です; 例えば:
(%i1) diag_matrix(diag_matrix(1,2),diag_matrix(3,4)); [ [ 1 0 ] [ 0 0 ] ] [ [ ] [ ] ] [ [ 0 2 ] [ 0 0 ] ] (%o1) [ ] [ [ 0 0 ] [ 3 0 ] ] [ [ ] [ ] ] [ [ 0 0 ] [ 0 4 ] ] (%i2) diag_matrix(p,q); [ p 0 ] (%o2) [ ] [ 0 q ] |
Categories: Package linearalgebra
ベクトル uと vの内積を返します。
これはconjugate (transpose (u)) . v
と同じです。
引数 uと vは列ベクトルでなければいけません。
Categories: Package linearalgebra
Aの固有値と固有ベクトルを
Jacobi回転法で計算します。
Aは対称行列でなければいけません。
(しかし、正定値である必要も半正定値である必要もありません。)
field_typeは計算上の体を示し、floatfield
か bigfloatfield
です。
もし field_typeが指定されないなら、
デフォルトは floatfield
です。
Aの要素は、数か、
(field_typeに依存して)float
か bfloat
を介して
数に評価される式でなければいけません。
例:
(%i1) S: matrix([1/sqrt(2), 1/sqrt(2)],[-1/sqrt(2), 1/sqrt(2)]); [ 1 1 ] [ ------- ------- ] [ sqrt(2) sqrt(2) ] (%o1) [ ] [ 1 1 ] [ - ------- ------- ] [ sqrt(2) sqrt(2) ] (%i2) L : matrix ([sqrt(3), 0], [0, sqrt(5)]); [ sqrt(3) 0 ] (%o2) [ ] [ 0 sqrt(5) ] (%i3) M : S . L . transpose (S); [ sqrt(5) sqrt(3) sqrt(5) sqrt(3) ] [ ------- + ------- ------- - ------- ] [ 2 2 2 2 ] (%o3) [ ] [ sqrt(5) sqrt(3) sqrt(5) sqrt(3) ] [ ------- - ------- ------- + ------- ] [ 2 2 2 2 ] (%i4) eigens_by_jacobi (M); The largest percent change was 0.1454972243679 The largest percent change was 0.0 number of sweeps: 2 number of rotations: 1 (%o4) [[1.732050807568877, 2.23606797749979], [ 0.70710678118655 0.70710678118655 ] [ ]] [ - 0.70710678118655 0.70710678118655 ] (%i5) float ([[sqrt(3), sqrt(5)], S]); (%o5) [[1.732050807568877, 2.23606797749979], [ 0.70710678118655 0.70710678118655 ] [ ]] [ - 0.70710678118655 0.70710678118655 ] (%i6) eigens_by_jacobi (M, bigfloatfield); The largest percent change was 1.454972243679028b-1 The largest percent change was 0.0b0 number of sweeps: 2 number of rotations: 1 (%o6) [[1.732050807568877b0, 2.23606797749979b0], [ 7.071067811865475b-1 7.071067811865475b-1 ] [ ]] [ - 7.071067811865475b-1 7.071067811865475b-1 ] |
Categories: Matrix decompositions ·Package linearalgebra
x = lu_factor (A)
の時、
get_lu_factors
は
形式 [P, L, U]
のリストを返します。
ここで、 Pは置換行列、 Lは対角成分を含む下三角行列、
Uは上三角行列であり、
A = P L U
が成り立ちます。
Categories: Package linearalgebra
Hankel行列 Hを返します。 Hの最初の列は colです; 最初の成分を除いて、 Hの最後の行は rowです。 rowのデフォルトは colと同じ長さを持つ零ベクトルです。
Categories: Package linearalgebra
変数 xのリストに関する fのHessian行列を返します。
Hessian行列の (i, j)
成分は
diff(f, x[i], 1, x[j], 1)
です。
例:
(%i1) hessian (x * sin (y), [x, y]); [ 0 cos(y) ] (%o1) [ ] [ cos(y) - x sin(y) ] (%i2) depends (F, [a, b]); (%o2) [F(a, b)] (%i3) hessian (F, [a, b]); [ 2 2 ] [ d F d F ] [ --- ----- ] [ 2 da db ] [ da ] (%o3) [ ] [ 2 2 ] [ d F d F ] [ ----- --- ] [ da db 2 ] [ db ] |
Categories: Differential calculus ·Package linearalgebra
n掛けnのHilbert行列を返します。 nが正の整数でない時、エラーをシグナルします。
Categories: Package linearalgebra
行列 Mと同じ形を持つ単位行列を返します。 単位行列の対角成分は体 fldの乗算単位元です; fldのデフォルトは generalringです。
一番目の引数 Mは平方行列か非行列でなければいけません。 Mが行列の時、 Mのそれぞれの成分は平方行列であり得ます。 – 従って、 Mは区分されたMaxima行列であり得ます。 行列は、任意の(有限の)深さに区分できます。
zerofor
も参照してください。
Categories: Package linearalgebra
LU分解を使って、 行列 Mの逆行列を返します。 LU分解は環 rngを使って実行されます。
Categories: Package linearalgebra
変数のリスト xに関する
関数のリスト fのJacobi行列を返します。
Jacobi行列の (i, j)
成分は
diff(f[i], x[j])
です。
例:
(%i1) jacobian ([sin (u - v), sin (u * v)], [u, v]); [ cos(v - u) - cos(v - u) ] (%o1) [ ] [ v cos(u v) u cos(u v) ] (%i2) depends ([F, G], [y, z]); (%o2) [F(y, z), G(y, z)] (%i3) jacobian ([F, G], [y, z]); [ dF dF ] [ -- -- ] [ dy dz ] (%o3) [ ] [ dG dG ] [ -- -- ] [ dy dz ] |
Categories: Differential calculus ·Package linearalgebra
行列 Aと BのKronecker積を返します。
Categories: Package linearalgebra
オプションの引数 pが与えられたとして、
もし eがMaximaリストで、 pがすべてのリストの要素で
true
に評価されるなら、 true
を返します。
listp
がオプションの引数を与えられない時、
もし eがMaximaリストなら、 true
を返します。
他のすべての場合、 false
を返します。
Categories: Package linearalgebra ·Predicate functions
一番目の引数は行列でなければいけません; 引数 r_1から c_2は 行 r_1から r_2と列 c_1から c_2から成る Mの部分行列を決定します。
ある性質を満たす部分行列 Mの中の成分を見つけます。 3つのケース:
(1) rel = 'bool
で fが述語論理:
左から右へ、そして上から下へ部分行列をスキャンし、
述語論理 fを満たす最初の成分のインデックスを返します。
もし fを満たす行列成分がないなら、 false
を返します。
(2) rel = 'max
で fが実関数:
fを最大にする成分を探して部分行列をスキャンします。 最大化の成分のインデックスを返します。
(3) rel = 'min
で fが実関数:
fを最小にする成分を探して部分行列をスキャンします。 最小化の成分のインデックスを返します。
Categories: Package linearalgebra
M = lu_factor (A, field)
の時、
lu_backsub (M, b)
は
線形系 A x = b
を解きます。
Categories: Package linearalgebra
形式 [LU, perm, fld]
か
[LU, perm, fld, lower-cnd upper-cnd]
のリストを返します。
ここで、
(1) 行列 LUはMの分解をパックされた形式で含みます。
パックされた形式は3つのことを意味します;
第一に LUの行はリスト permに従って置換されます。
もし、例えば、 permがリスト [3,2,1]
なら、
LU分解の実際の一番目の行は行列 LUの三番目の行です。
第二に、mの下三角因子はすべて1で置き換えられた対角成分を持つ LUの下三角部です。
第三に、 Mの上三角因子は LUの上三角部です。
(2) 体が floatfield
か complexfield
の時、
数 lower-cndと upper-cndは
Mの無限ノルム条件数の下限と上限です。
すべての体に対して条件数を見積ることができるわけではありません;
そんな体に対しては lu_factor
は2項目リストを返します。
下限と上限どちらも真の値から任意に大きな因子だけ異なる可能性があります。
(mat_cond
も参照してください。)
引数 Mは平方行列でなければいけません。
オプション引数 fldは環か体かを決めるシンボルでなければいけません。 予め定義された体と環は以下のものがあります:
(a) generalring
– Maxima式の環,
(b) floatfield
– 倍精度浮動小数点数体,
(c) complexfield
– 倍精度浮動小数点複素数体,
(d) crering
– Maxima CRE式の環,
(e) rationalfield
– 有理数体,
(f) runningerror
– 浮動小数点の丸め誤差をトラック,
(g) noncommutingring
– 乗算が非可換ドット演算子のMaxima式の環
体が floatfield
か complexfield
、runningerror
のいずれかの時、
アルゴリズムは部分ピボットを使います;
他のすべての体に対しては、
零ピボットを避ける必要があるときだけ、行がスイッチされます。
浮動小数点加算算術は結合的でなく、 ’体’の意味は数学的定義と異なります。
体 runningerror
の要素は
形式 [x,n]
の2つの要素のMaximaリストです。
ここで、 xは浮動小数点数で、
n
は整数です。
x
の’真’の値と x
の相対差は
計算機イプシロンに n
をかけたもので近似的に抑えられます。
The running error bound drops some terms that of the order the square of the machine epsilon.
新しい体を定義するユーザーインターフェースはありません。
Common Lispに精通しているユーザーは新しい体を定義することができるはずです。
これをするには、ユーザーは算術演算のための関数と
体表現とMaximaの相互変換のための関数を定義しなければいけません。
さらに、(部分ピボットが使われる)順序体に関しては、
ユーザーは大きさの関数と体の元の比較関数を定義しなければいけません。
あとは、Common Lisp 構造体 mring
を定義することだけです。
ファイル mring
に多くの例があります。
分解を計算するために、
最初の仕事は
行列成分それぞれを指定された体の元に変換することです。
変換が不可能な時は、分解はエラーメッセージとともに停止します。
体の元はMaxima式である必要はありません。
例えば、complexfield
の元はCommon Lisp複素数です。
そして、分解を計算した後には、行列成分はMaxima式に変換されなければいけません。
get_lu_factors
も参照してください。
例:
(%i1) w[i,j] := random (1.0) + %i * random (1.0); (%o1) w := random(1.) + %i random(1.) i, j (%i2) showtime : true$ Evaluation took 0.00 seconds (0.00 elapsed) (%i3) M : genmatrix (w, 100, 100)$ Evaluation took 7.40 seconds (8.23 elapsed) (%i4) lu_factor (M, complexfield)$ Evaluation took 28.71 seconds (35.00 elapsed) (%i5) lu_factor (M, generalring)$ Evaluation took 109.24 seconds (152.10 elapsed) (%i6) showtime : false$ (%i7) M : matrix ([1 - z, 3], [3, 8 - z]); [ 1 - z 3 ] (%o7) [ ] [ 3 8 - z ] (%i8) lu_factor (M, generalring); [ 1 - z 3 ] [ ] (%o8) [[ 3 9 ], [1, 2], generalring] [ ----- - z - ----- + 8 ] [ 1 - z 1 - z ] (%i9) get_lu_factors (%); [ 1 0 ] [ 1 - z 3 ] [ 1 0 ] [ ] [ ] (%o9) [[ ], [ 3 ], [ 9 ]] [ 0 1 ] [ ----- 1 ] [ 0 - z - ----- + 8 ] [ 1 - z ] [ 1 - z ] (%i10) %[1] . %[2] . %[3]; [ 1 - z 3 ] (%o10) [ ] [ 3 8 - z ] |
Categories: Matrix decompositions ·Package linearalgebra
行列 mのp-ノルムの行列条件数を返します。
pに許される値は1と infです。
この関数は、行列 mの逆元を計算するのにLU分解を使います。
このため、mat_cond
の実行時間は行列サイズの三乗に比例します;
lu_factor
は、
行列サイズの二乗に比例する時間内に
無限大ノルム条件数の下限と上限を決定します。
Categories: Package linearalgebra
行列 Mの行列 p-ノルムを返します。
. The allowed values for
pに許される値は1か inf
か frobenius
(Frobenius行列ノルム)です。
行列 Mは区分されない行列でなければいけません。
Categories: Package linearalgebra
オプション引数 pが与えられたとして、
もし eが行列で、 pが行列成分すべてに対して
true
に評価されるなら、
true
を返します。
matrixp
がオプション引数を与えられない時は、
もし e
が行列なら、
true
を返します。
他のすべての場合には、 false
を返します。
blockmatrixp
も参照してください。
Categories: Package linearalgebra ·Predicate functions
行列 Mの行数と列数をそれぞれ与える2要素リストを返します。
Categories: Package linearalgebra
もし Mが区分行列なら、 行列をすべてのレベルで区分解除します。 もし Mが行列なら、 Mを返します; それ以外ではエラーをシグナルします。
Categories: Package linearalgebra
行列 Mの跡を返します。
もし Mが行列でないなら、名詞形を返します。
Mが区分行列の時、
mat_trace(M)
は
mat_trace(mat_unblocker(m))
するのと同じ値を返します。
Categories: Package linearalgebra
もし Mが区分行列なら、
Mを1レベル区分解除します。
もし Mが行列なら、
mat_unblocker (M)
は Mを返します;
それ以外ではエラーをシグナルします。
このように、
もし Mの成分それぞれが行列なら、
mat_unblocker (M)
は区分されていない行列を返しますが、
もし Mの成分それぞれが区分行列なら、
mat_unblocker (M)
は
区分が1レベル少ない区分行列を返します。
もし区分行列を使うなら、
おそらく、
matrix_element_mult
を "."
に、
matrix_element_transpose
を 'transpose
に設定したくなるでしょう。
mat_fullunblocker
も参照してください。
例:
(%i1) A : matrix ([1, 2], [3, 4]); [ 1 2 ] (%o1) [ ] [ 3 4 ] (%i2) B : matrix ([7, 8], [9, 10]); [ 7 8 ] (%o2) [ ] [ 9 10 ] (%i3) matrix ([A, B]); [ [ 1 2 ] [ 7 8 ] ] (%o3) [ [ ] [ ] ] [ [ 3 4 ] [ 9 10 ] ] (%i4) mat_unblocker (%); [ 1 2 7 8 ] (%o4) [ ] [ 3 4 9 10 ] |
Categories: Package linearalgebra
もし Mが行列なら、
span (v_1, ..., v_n)
を返します。
ここで、, where the set
集合 {v_1, ..., v_n}
は
Mの零空間の基底です。
空集合のスパンは {0}
です。
なので、零空間が要素を1つだけ持つときは、span ()
を返します。
Categories: Package linearalgebra
もし Mが行列なら、 Mの零空間の次元を返します。
Categories: Package linearalgebra
span (u_1, ..., u_m)
を返します。
ここで、, where the se
集合 {u_1, ..., u_m}
は
集合 (v_1, ..., v_n)
の直交補空間の基底です。
ベクトル v_1から v_nそれぞれは列ベクトルでなければいけません。
Categories: Package linearalgebra
もし pがリスト Lの中の変数に関して多項式なら、
true
を返します。
述語論理 coeffpは係数それぞれに対して true
に評価されなければいけなく、
述語論理 exponpは
Lの中の変数の指数すべてに対して true
に評価されなければいけません。
もし
exponpに対してデフォルトでない値を使いたいなら、
たとえcoeffpに関してデフォルトを使いたくても
coeffpを値とともに供給しなければいけません。
polynomialp (p, L, coeffp)
は
polynomialp (p, L, coeffp, 'nonnegintegerp)
に同値です。
polynomialp (p, L)
は
polynomialp (p, L, 'constantp, 'nonnegintegerp)
に同値です。
多項式は展開される必要はありません:
(%i1) polynomialp ((x + 1)*(x + 2), [x]); (%o1) true (%i2) polynomialp ((x + 1)*(x + 2)^a, [x]); (%o2) false |
coeffpとexponpにデフォルトでない値を使う例:
(%i1) polynomialp ((x + 1)*(x + 2)^(3/2), [x], numberp, numberp); (%o1) true (%i2) polynomialp ((x^(1/2) + 1)*(x + 2)^(3/2), [x], numberp, numberp); (%o2) true |
2変数多項式:
(%i1) polynomialp (x^2 + 5*x*y + y^2, [x]); (%o1) false (%i2) polynomialp (x^2 + 5*x*y + y^2, [x, y]); (%o2) true |
Categories: Package linearalgebra ·Predicate functions
もし pが
xの多項式なら、
pのコンパニオン行列を返します。
次数 nのモニック多項式(最高次数の係数が1の多項式)に対しては、
p = (-1)^n charpoly (polytocompanion (p, x))
.
があります。
pが xの多項式でないなら、エラーをシグナルします。
Categories: Package linearalgebra
もし Mがそれぞれの成分がvの多項式の行列なら、 以下のような行列 M2を返します。
(1) M2は上三角で、
(2) M2 = E_n ... E_1 M
,
ここで、 E_1から E_nは成分がvの多項式の基本行列です。
(3) |det (M)| = |det (M2)|
,
注意: この関数はすべての成分がvの多項式かチェックしません。
Categories: Package linearalgebra
もし Mが行列なら、
行演算 R_i <- R_i - theta * R_j
をすることで生じる
行列を返します。
もし Mに行iか jがないなら、
エラーをシグナルします。
Categories: Package linearalgebra
行列 Mの階数を返します。 階数は列空間の次元です。
例:
(%i1) rank(matrix([1,2],[2,4])); (%o1) 1 (%i2) rank(matrix([1,b],[c,d])); Proviso: {d - b c # 0} (%o2) 2 |
Categories: Package linearalgebra
もし Mが行列なら、行 iと jを入れ替えます。 もし Mに行iか jがないなら、エラーをシグナルします。
Categories: Package linearalgebra
Toeplitz行列 Tを返します。 Tの一番目の列は colです; 一番目の成分を除いて、 Tの最初の行は rowです。 rowのデフォルトは colの複素共役です。
例:
(%i1) toeplitz([1,2,3],[x,y,z]); [ 1 y z ] [ ] (%o1) [ 2 1 y ] [ ] [ 3 2 1 ] (%i2) toeplitz([1,1+%i]); [ 1 1 - %I ] (%o2) [ ] [ %I + 1 1 ] |
Categories: Package linearalgebra
i番目の行が[1, x_i, x_i^2, ... x_i^(n-1)]
の
n掛けn行列を返します。
Categories: Package linearalgebra
行列 Mと同じ形の零行列を返します。 零行列の成分すべては体 fldの加算の単位元です; fldのデフォルトは generalringです。
一番目の引数 Mは 平方行列か行列以外でなければいけません。 Mが行列の時、 Mの成分それぞれは平方行列であり得ます。 – 従って Mは区分Maxima行列であり得ます。 行列は任意の(有限の)深さに区分できます。
identfor
も参照してください。
Categories: Package linearalgebra
Mが区分行列でない時、
もし行列 Mのそれぞれの要素 eに対して
is (equal (e, 0))
が真なら、
true
を返します。
Mが区分行列の時、
もしeの要素それぞれに対して zeromatrixp
が
true
に評価されるなら、
true
を返します。
Categories: Package linearalgebra ·Predicate functions
[ << ] | [ >> ] | [冒頭] | [目次] | [見出し] | [ ? ] |
この文書は市川 雄二によって2012年1月月5日にtexi2html 1.82を用いて生成されました。