Permanent[m]
正方行列 m の永久式を与える.
Permanent
Permanent[m]
正方行列 m の永久式を与える.
例題
すべて開く すべて閉じる例 (2)
スコープ (2)
Permanent[(| | | |
| :---- | :---- | :---- |
| a1, 1 | a1, 2 | a1, 3 |
| a2, 1 | a2, 2 | a2, 3 |
| a3, 1 | a3, 2 | a3, 3 |)]m = HilbertMatrix[5];Permanent[m]Permanent[N[m]]Permanent[N[m, 40]]オプション (2)
Method (1)
Permanent[N[HilbertMatrix[10], 40]]Permanent[N[HilbertMatrix[10], 40], Method -> #]& /@ {"MemoizedExpansion", "MixedCoefficient", "Glynn", "Ryser"}AbsoluteTiming[Permanent[N[HilbertMatrix[10], 40], Method -> #];]& /@ {"MemoizedExpansion", "MixedCoefficient", "Glynn", "Ryser"}Modulus (1)
m = RandomInteger[46, {18, 18}];Permanent[m, Modulus -> 47]//AbsoluteTimingこれは,Mod[Permanent[m],47]を計算するより速い:
Mod[Permanent[m], 47]//AbsoluteTimingアプリケーション (6)
Table[Permanent[ConstantArray[1, {n, n}]], {n, 10}]Table[n!, {n, 10}]すべてが1の正方行列から恒等行列を引いたものの永久式は,対応する次元の撹乱を計算する:
Table[Permanent[ConstantArray[1, {n, n}] - IdentityMatrix[n]], {n, 10}]Table[Subfactorial[n], {n, 10}]各集合が部分集合(1 …n)を含む n 個の集合を与えられたとする.各部分集合から他とは異なる要素を選ぶ方法の数は,部分集合 i が j を含むときに(i,j)位置が厳密に1つの1を含む0‐1行列の永久式に等しい:
sets = {{3, 5, 6, 7}, {3, 7}, {1, 2, 4, 5, 7}, {3}, {1, 3, 6}, {1, 5, 7}, {1, 2, 3, 6}};m = Table[If[MemberQ[sets[[i]], j], 1, 0] , {i, 7}, {j, 7}];
m//MatrixForm各部分集合からの他とは違う要素の集合を作る方法は2通りある:
Permanent[m]Select[Tuples[sets], DuplicateFreeQ]永久式を使って,女王同士が互いに互いを攻撃しないようにして n×n のチェス盤上に n 個の女王を置く方法を計算する:
Table[Expand[Permanent[Array[[#1 - #2, 1][#1 + #2, 2]&, {n, n}]]] /. {[__] ^ _ :> 0, [__] :> 1}, {n, 1, 8}]グラフの永続多項式は id x-m の対称式として定義される.ここで,m は対応する隣接行列,id は適切な大きさの恒等行列である:
permanentalPolynomial[g_ ? GraphQ, x_] := With[{n = VertexCount[g]}, Permanent[x IdentityMatrix[n] - AdjacencyMatrix[g]]]頂点が n 個の道グラフの永続多項式はフィボナッチ多項式
と等価である:
Table[permanentalPolynomial[PathGraph[Range[n]], x] == Fibonacci[n + 1, x]//Simplify, {n, 2, 10}]巡回グラフの永続多項式もまた,フィボナッチ多項式で表すことができる:
Table[permanentalPolynomial[CycleGraph[n], x] == Fibonacci[n + 1, x] + Fibonacci[n - 1, x] + 2(-1)^n//Simplify, {n, 3, 10}]単位の正規化をおこなってフーリエ(Fourier)行列を計算する関数を定義する:
fmat[n_Integer] := FourierMatrix[n, FourierParameters -> {1, 1}]Table[Permanent[fmat[n]]//Simplify, {n, 2, 10, 2}]Table[Permanent[fmat[n]]//RootReduce, {n, 3, 11, 2}]p>3の偶素数について,p×p 行列の永久式は p3を法として p!と合同である:
With[{p = 13}, Mod[{RootReduce[Permanent[fmat[p]]], p!}, p^3]]特性と関係 (10)
permanent[m_ ? MatrixQ] :=
Module[{n = Length[m]}, Sum[Product[m[[i, σ[[i]]]], {i, n}], {σ, Permutations[Range[n]]}]]permanent[Array[Subscript[a, ##]&, {3, 3}]]Permanent[Array[Subscript[a, ##]&, {3, 3}]]Simplify[%% - %]Permanent[Array[Subscript[a, ##]&, {2, 2}]]Permanent[Array[Subscript[a, ##]&, {3, 3}]]行列式Detには,符号の変化は除いて,永久式と同じ項が含まれる:
Det[Array[Subscript[a, ##]&, {3, 3}]]Permanent[Array[Subscript[a, ##]&, {3, 3}]]永久式は任意の行に沿った余因子展開を介し再帰的に計算できる:
m = Array[a, {5, 5}];
Block[{n = Length[m], i = RandomInteger[{1, Length[m]}]},
Sum[m[[i, k]]Permanent[Drop[m, {i}, {k}]], {k, n}] == Permanent[m]//Simplify]Block[{n = Length[m], j = RandomInteger[{1, Length[m]}]},
Sum[m[[k, j]]Permanent[Drop[m, {k}, {j}]], {k, n}] == Permanent[m]//Simplify]永久式は,列の指標が繰り返されている項が除かれた,行列の行の外積である:
Plus@@Flatten[Outer[Times, Sequence@@Array[a, {3, 3}]] /. a[i_, k_] * a[j_, k_] -> 0]Permanent[Array[a, {3, 3}]]m = Array[a, {5, 5}];
Permanent[m] == Permanent[Transpose[m]]//Simplifyn = 5;
{permRow, permColumn} = {RandomSample[1 ;; n], RandomSample[1 ;; n]}m = Array[a, {n, n}];
Permanent[m] == Permanent[m[[permRow, permColumn]]]//Simplify行列に対角行列を掛けたものの永久式はもとの行列の永久式と対角行列の対角要素の積に等しい:
ma = Array[C, {5, 5}];
diag = DiagonalMatrix[Array[, 5]];Permanent[diag.ma] == Permanent[ma.diag] == Apply[Times, Diagonal[diag]]Permanent[ma]//SimplifyMatrixForm[m = UpperTriangularize[Array[C, {5, 5}]]]Permanent[m] == Apply[Times, Diagonal[m]]b1 = (| | | |
| ------- | ------- | ------- |
| [1, 1] | [1, 2] | [1, 3] |
| [2, 1] | [2, 2] | [2, 3] |
| [3, 1] | [3, 2] | [3, 3] |);
b2 = (| | |
| ------- | ------- |
| [1, 1] | [1, 2] |
| [2, 1] | [2, 2] |);
Permanent[BlockDiagonalMatrix[{b1, b2}]] == Permanent[b1]Permanent[b2]//Simplify関連項目
関連するガイド
-
▪
- 行列の操作
テキスト
Wolfram Research (2015), Permanent, Wolfram言語関数, https://reference.wolfram.com/language/ref/Permanent.html (2022年に更新).
CMS
Wolfram Language. 2015. "Permanent." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2022. https://reference.wolfram.com/language/ref/Permanent.html.
APA
Wolfram Language. (2015). Permanent. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/Permanent.html
BibTeX
@misc{reference.wolfram_2026_permanent, author="Wolfram Research", title="{Permanent}", year="2022", howpublished="\url{https://reference.wolfram.com/language/ref/Permanent.html}", note=[Accessed: 17-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_permanent, organization={Wolfram Research}, title={Permanent}, year={2022}, url={https://reference.wolfram.com/language/ref/Permanent.html}, note=[Accessed: 17-June-2026]}