군론 에서, 부분군 (部分群, 영어 : subgroup )은 스스로 군 을 이루는, 주어진 군의 부분 집합 이다. 즉, 군의 부분 집합이 부분군이 되려면, 항등원 을 원소로 하며, 임의의 원소들의 곱을 원소로 하며, 임의의 원소의 역원 을 원소로 하여야 한다. 부분군은 보편대수학 에서의 부분 대수 구조 의 특수한 경우이다. 모든 부분군은 부분 모노이드이지만, 군의 부분 모노이드는 부분군이 아닐 수 있다.
부분군 은 군 의 대수 구조 다양체 에서의 부분 대수 구조 이다. 구체적으로, 군
G
{\displaystyle G}
의 부분군 은 다음 세 조건을 만족시키는 부분 집합
H
⊆
G
{\displaystyle H\subseteq G}
이다.
1
∈
H
{\displaystyle 1\in H}
. 즉, 항등원 은
H
{\displaystyle H}
에 속한다.
임의의
g
,
h
∈
H
{\displaystyle g,h\in H}
에 대하여,
g
h
∈
H
{\displaystyle gh\in H}
. 즉,
H
{\displaystyle H}
의 두 원소의 곱은
H
{\displaystyle H}
에 속한다.
임의의
g
∈
H
{\displaystyle g\in H}
에 대하여,
g
−
1
∈
H
{\displaystyle g^{-1}\in H}
. 즉,
H
{\displaystyle H}
의 원소의 역원 은
H
{\displaystyle H}
에 속한다.
항등원 을 유일한 원소로 하는 부분 집합
{
1
}
⊆
G
{\displaystyle \{1\}\subseteq G}
는
G
{\displaystyle G}
의 부분군을 이룬다. 이를
G
{\displaystyle G}
의 자명 부분군 (自明~, 영어 : trivial ~ )이라고 한다. 군 전체
G
⊆
G
{\displaystyle G\subseteq G}
는
G
{\displaystyle G}
의 부분군이다.
G
{\displaystyle G}
가 아닌
G
{\displaystyle G}
의 부분군을
G
{\displaystyle G}
의 진부분군 (眞~, 영어 : proper ~ )이라고 한다.
만약
H
{\displaystyle H}
가
G
{\displaystyle G}
의 부분군이라면, 흔히
H
≤
G
{\displaystyle H\leq G}
라고 쓴다. 만약
H
{\displaystyle H}
가
G
{\displaystyle G}
의 부분군이며,
H
≠
G
{\displaystyle H\neq G}
라면, 흔히
H
⪇
G
{\displaystyle H\lneq G}
라고 쓴다.
부분군
H
≤
G
{\displaystyle H\leq G}
은
G
{\displaystyle G}
의 연산을 물려받아 스스로 군을 이룬다.
G
{\displaystyle G}
의 이항 연산을
⋅
:
G
×
G
→
G
{\displaystyle \cdot \colon G\times G\to G}
라고 하였을 때, 이를
H
{\displaystyle H}
위로 제한한 이항 연산
⋅
|
H
×
H
:
H
×
H
→
H
{\displaystyle \cdot |_{H\times H}\colon H\times H\to H}
을 정의할 수 있다. (일반적인 부분 집합의 경우, 공역 을
H
{\displaystyle H}
로 제한하지 못할 수 있다.) 또한,
H
{\displaystyle H}
와 이 이항 연산은 군의 공리를 만족시킨다.
H
{\displaystyle H}
위의 결합 법칙 은
G
{\displaystyle G}
위의 결합 법칙 의 특수한 경우이다.
G
{\displaystyle G}
의 항등원 은
H
{\displaystyle H}
에 속하며, 이는
H
{\displaystyle H}
의 항등원을 이룬다. 임의의
a
∈
H
{\displaystyle a\in H}
에 대하여,
a
{\displaystyle a}
의
G
{\displaystyle G}
에서의 역원 은
H
{\displaystyle H}
에 속하며, 이는
a
{\displaystyle a}
의
H
{\displaystyle H}
에서의 역원이다.
군
G
{\displaystyle G}
및 부분 집합
H
⊆
G
{\displaystyle H\subseteq G}
에 대하여, 다음 세 조건이 서로 동치 이다.
H
≤
G
{\displaystyle H\leq G}
H
≠
∅
{\displaystyle H\neq \varnothing }
이며, 임의의
a
,
b
∈
H
{\displaystyle a,b\in H}
에 대하여
a
b
∈
H
{\displaystyle ab\in H}
이며, 임의의
a
∈
H
{\displaystyle a\in H}
에 대하여
a
−
1
∈
H
{\displaystyle a^{-1}\in H}
이다.
H
≠
∅
{\displaystyle H\neq \varnothing }
이며, 임의의
a
,
b
∈
H
{\displaystyle a,b\in H}
에 대하여
a
b
−
1
∈
H
{\displaystyle ab^{-1}\in H}
이다.
유한군 의 (공집합 이 아닌) 부분 집합의 경우, 연산에 대하여 닫혀 있는 것으로 부분군이 되기에 충분하다. 구체적으로, 군
G
{\displaystyle G}
및 유한 부분 집합
H
⊆
G
{\displaystyle H\subseteq G}
에 대하여, 다음 두 조건이 서로 동치 이다.
H
≤
G
{\displaystyle H\leq G}
H
≠
∅
{\displaystyle H\neq \varnothing }
이며, 임의의
a
,
b
∈
H
{\displaystyle a,b\in H}
에 대하여
a
b
∈
H
{\displaystyle ab\in H}
이다.
첫째 조건은 자명하게 둘째 조건을 함의한다. 이제, 둘째 조건을 가정하고,
H
{\displaystyle H}
가
G
{\displaystyle G}
의 부분군임을 보이자. 임의의
a
∈
H
{\displaystyle a\in H}
의 역원이
H
{\displaystyle H}
에 속함을 보이면 충분하다. 만약
a
=
1
{\displaystyle a=1}
이라면,
a
−
1
=
1
=
a
∈
H
{\displaystyle a^{-1}=1=a\in H}
이다. 이제,
a
≠
1
{\displaystyle a\neq 1}
이라고 하자. 가정에 따라,
{
a
,
a
2
,
a
3
,
…
}
{\displaystyle \{a,a^{2},a^{3},\dots \}}
는
H
{\displaystyle H}
의 부분 집합이다.
H
{\displaystyle H}
가 유한 집합 이므로,
{
a
,
a
2
,
a
3
,
…
}
{\displaystyle \{a,a^{2},a^{3},\dots \}}
역시 유한 집합이다. 즉,
a
i
=
a
j
{\displaystyle a^{i}=a^{j}}
인 양의 정수
i
≠
j
{\displaystyle i\neq j}
가 존재한다. 편의상
i
<
j
{\displaystyle i<j}
라고 하자. 양변에
a
−
i
{\displaystyle a^{-i}}
를 곱하면
a
j
−
i
=
1
{\displaystyle a^{j-i}=1}
을 얻는다. 즉,
a
−
1
=
a
j
−
i
−
1
{\displaystyle a^{-1}=a^{j-i-1}}
이다.
a
≠
1
{\displaystyle a\neq 1}
이므로,
j
−
i
≥
2
{\displaystyle j-i\geq 2}
이며,
j
−
i
−
1
{\displaystyle j-i-1}
은 양의 정수이다. 즉,
a
−
1
=
a
j
−
i
−
1
{\displaystyle a^{-1}=a^{j-i-1}}
은
a
{\displaystyle a}
의 양의 정수 번 거듭제곱이다. 가정에 따라,
a
−
1
∈
H
{\displaystyle a^{-1}\in H}
이다.
주어진 군의 임의의 수의 부분군들의 교집합 은 부분군이다. 특히, 군
G
{\displaystyle G}
및 부분 집합
S
⊆
G
{\displaystyle S\subseteq G}
에 대하여,
S
{\displaystyle S}
를 포함하는
G
{\displaystyle G}
의 모든 부분군들의 교집합은
G
{\displaystyle G}
의 부분군을 이룬다. 이는
S
{\displaystyle S}
를 포함하는
G
{\displaystyle G}
의 최소의 부분군이다. 구체적으로, 이 부분군은 다음과 같다.
⟨
S
⟩
=
{
g
1
g
2
⋯
g
n
:
n
∈
N
,
g
1
,
…
,
g
n
∈
S
∪
S
−
1
}
{\displaystyle \langle S\rangle =\{g_{1}g_{2}\cdots g_{n}\colon n\in \mathbb {N} ,\;g_{1},\dots ,g_{n}\in S\cup S^{-1}\}}
여기서
S
−
1
=
{
s
−
1
:
s
∈
S
}
{\displaystyle S^{-1}=\{s^{-1}\colon s\in S\}}
이다.
S
{\displaystyle S}
가 한원소 집합 인 경우,
⟨
S
⟩
{\displaystyle \langle S\rangle }
는 순환군 이다.
S
{\displaystyle S}
가 유한 집합 인 경우,
⟨
S
⟩
{\displaystyle \langle S\rangle }
는 유한 생성 군 이다.
S
{\displaystyle S}
가 부분군일 필요충분조건 은
S
=
⟨
S
⟩
{\displaystyle S=\langle S\rangle }
이다.
주어진 군의 부분군들의 합집합 은 부분군이 아닐 수 있다. 예를 들어, 두 부분군
H
,
K
≤
G
{\displaystyle H,K\leq G}
에 대하여,
H
∪
K
≤
G
{\displaystyle H\cup K\leq G}
일 필요충분조건 은
H
⊆
K
{\displaystyle H\subseteq K}
이거나
K
⊆
H
{\displaystyle K\subseteq H}
인 것이다.
2
Z
{\displaystyle 2\mathbb {Z} }
와
3
Z
{\displaystyle 3\mathbb {Z} }
는
(
Z
,
+
)
{\displaystyle (\mathbb {Z} ,+)}
의 부분군이지만,
⟨
2
Z
∪
3
Z
⟩
=
Z
{\displaystyle \langle 2\mathbb {Z} \cup 3\mathbb {Z} \rangle =\mathbb {Z} }
이다. x측과 y축은
(
R
2
,
+
)
{\displaystyle (\mathbb {R} ^{2},+)}
의 부분군이지만, 그 합집합을 포함하는 최소의 부분군은
R
2
{\displaystyle \mathbb {R} ^{2}}
이다. 그러나, 부분군들의 족이 포함 관계에 의하여 상향 집합 을 이룬다면, 그 합집합은 부분군이다. 특히, 군
G
{\displaystyle G}
의 부분군 들의 열
H
0
,
H
1
,
H
2
,
⋯
≤
G
{\displaystyle H_{0},H_{1},H_{2},\dots \leq G}
에 대하여, 만약
H
0
≤
H
1
≤
H
2
≤
⋯
{\displaystyle H_{0}\leq H_{1}\leq H_{2}\leq \cdots }
라면,
⋃
i
∈
I
H
i
{\displaystyle \textstyle \bigcup _{i\in I}H_{i}}
는
G
{\displaystyle G}
의 부분군이다.
임의의 주어진 군
G
{\displaystyle G}
의 부분군들은 포함 관계 아래 대수적 완비 격자
Sub
(
G
)
{\displaystyle \operatorname {Sub} (G)}
를 이룬다. 부분군 격자에서, 부분군의 집합
(
H
i
)
i
∈
I
{\displaystyle (H_{i})_{i\in I}}
의 하한 은 교집합
⋂
i
∈
I
H
i
{\displaystyle \textstyle \bigcap _{i\in I}H_{i}}
이며, 상한 은 부분군들의 합집합을 포함하는 최소의 부분군
⟨
⋃
i
∈
I
H
i
⟩
=
{
h
1
⋯
h
n
:
h
1
∈
n
∈
N
,
H
i
1
,
⋯
,
h
n
∈
H
i
n
,
i
1
,
…
,
i
n
∈
I
}
{\displaystyle {\biggl \langle }\bigcup _{i\in I}H_{i}{\biggr \rangle }=\{h_{1}\cdots h_{n}\colon h_{1}\in n\in \mathbb {N} ,\;H_{i_{1}},\cdots ,h_{n}\in H_{i_{n}},\;i_{1},\dots ,i_{n}\in I\}}
이다. 최소 원소 는 자명 부분군
{
1
}
≤
G
{\displaystyle \{1\}\leq G}
이며, 최대 원소 는
G
≤
G
{\displaystyle G\leq G}
이다. 콤팩트 원소는 유한 생성 부분군들이다.
이 부분의 본문은
잉여류 입니다.
아벨 군
G
=
Z
/
8
Z
=
{
0
,
…
,
7
}
{\displaystyle G=\mathbb {Z} /8\mathbb {Z} =\{0,\dots ,7\}}
와 부분군
H
=
4
Z
/
8
Z
=
{
0
,
4
}
{\displaystyle H=4\mathbb {Z} /8\mathbb {Z} =\{0,4\}}
에 대한 4개의 잉여류.
H
{\displaystyle H}
는
Z
/
2
Z
{\displaystyle \mathbb {Z} /2\mathbb {Z} }
와 동형이다. 4개의 잉여류
H
{\displaystyle H}
,
1
+
H
{\displaystyle 1+H}
,
2
+
H
{\displaystyle 2+H}
,
3
+
H
{\displaystyle 3+H}
는 같은 크기의 겹치지 않는 집합으로
G
{\displaystyle G}
를 분할한다. 몫군
G
/
H
{\displaystyle G/H}
는
Z
/
4
Z
{\displaystyle \mathbb {Z} /4\mathbb {Z} }
와 동형이다.
부분군
H
≤
G
{\displaystyle H\leq G}
가 주어졌을 때,
G
{\displaystyle G}
위에 다음과 같은 두 개의 동치 관계 를 정의할 수 있다.
g
∼
left
k
⟺
k
−
1
g
∈
H
{\displaystyle g\sim _{\operatorname {left} }k\iff k^{-1}g\in H}
g
∼
right
k
⟺
g
k
−
1
∈
H
{\displaystyle g\sim _{\operatorname {right} }k\iff gk^{-1}\in H}
두 동치 관계에 대한
g
∈
G
{\displaystyle g\in G}
의 동치류 는 각각 왼쪽·오른쪽 잉여류
g
H
=
{
g
h
:
h
∈
H
}
{\displaystyle gH=\{gh\colon h\in H\}}
H
g
=
{
h
g
:
h
∈
H
}
{\displaystyle Hg=\{hg\colon h\in H\}}
이다. (
h
∈
H
{\displaystyle h\in H}
에 대하여
h
H
=
H
h
=
H
{\displaystyle hH=Hh=H}
이므로,
H
{\displaystyle H}
역시 왼쪽 잉여류이자 오른쪽 잉여류이다.) 따라서, 임의의 군은 서로 다른 왼쪽 잉여류들로 분할되며, 또한 서로 다른 오른쪽 잉여류들로 분할된다. 모든 왼쪽·오른쪽 잉여류의 크기는 일치하며, 이는 부분군의 크기
|
H
|
{\displaystyle |H|}
와 같다. 왼쪽 잉여류들과 오른쪽 잉여류들 사이에는 다음과 같은 일대일 대응 이 존재한다.
g
H
↦
H
g
−
1
{\displaystyle gH\mapsto Hg^{-1}}
따라서, 왼쪽·오른쪽 잉여류의 수는 일치하며, 이를
H
{\displaystyle H}
의
G
{\displaystyle G}
에서의 지표 라고 한다.
G
{\displaystyle G}
를 왼쪽 또는 오른쪽 잉여류로 분할하여 세면
G
{\displaystyle G}
의 크기가
H
{\displaystyle H}
의 크기와 지표의 곱임을 알 수 있다. 특히,
G
{\displaystyle G}
가 유한군 인 경우
|
H
|
{\displaystyle |H|}
는
|
G
|
{\displaystyle |G|}
의 약수 이다.:90 이를 라그랑주 정리 라고 한다.
이 부분의 본문은
몫군 입니다.
만약
G
{\displaystyle G}
가 아벨 군 이라면, 교환 법칙 에 의하여 왼쪽·오른쪽 잉여류를 구분할 필요가 사라진다. 보다 일반적으로,
H
{\displaystyle H}
가
G
{\displaystyle G}
의 정규 부분군 인 경우, 항상
g
H
=
H
g
{\displaystyle gH=Hg}
이며, 모든 잉여류의 집합
G
/
H
=
{
g
H
:
g
∈
G
}
{\displaystyle G/H=\{gH\colon g\in G\}}
위에 이항 연산
(
g
H
)
(
g
′
H
)
=
g
g
′
H
{\displaystyle (gH)(g'H)=gg'H}
을 정의할 수 있다. (일반적인 부분군의 경우,
g
H
=
k
H
{\displaystyle gH=kH}
,
g
′
H
=
k
′
H
{\displaystyle g'H=k'H}
이더라도
g
g
′
H
≠
k
k
′
H
{\displaystyle gg'H\neq kk'H}
일 수 있으므로 위 정의는 유효하지 않다.) 또한, 이 이항 연산은 군의 공리들을 만족시킨다. 이렇게 정의한 군
G
/
H
{\displaystyle G/H}
를
G
{\displaystyle G}
의
H
{\displaystyle H}
에 대한 몫군 이라고 한다.
유한군의 부분군의 지표가 군의 크기의 최소 소인수라면, 이 부분군은 정규 부분군이다. 특히, 지표 2의 부분군은 항상 정규 부분군이다.
짝수 정수들은 정수의 덧셈군의 부분군이다: 두 개의 짝수를 더하면 짝수를 얻는다.
환
R
{\displaystyle R}
의 이데알 은 덧셈군
R
{\displaystyle R}
의 부분군이다.
벡터공간 의 선형 부분공간 은 벡터의 덧셈군의 부분군이다.
A
{\displaystyle A}
를 아벨군 이라 하자; 유한 주기 를 갖는
A
{\displaystyle A}
의 원소들은
A
{\displaystyle A}
의 부분군을 형성하는데, 이를
A
{\displaystyle A}
의 꼬임 부분군 이라 한다.
순환군 의 부분군은 항상 순환군이다. 유한
n
{\displaystyle n}
차 순환군
Cyc
(
n
)
=
⟨
g
|
g
n
=
1
⟩
{\displaystyle \operatorname {Cyc} (n)=\langle g|g^{n}=1\rangle }
의 부분군은
n
{\displaystyle n}
의 양의 약수와 일대일 대응 한다. 구체적으로,
d
∣
n
{\displaystyle d\mid n}
에 대하여,
⟨
g
d
⟩
≅
Cyc
(
n
/
d
)
{\displaystyle \langle g^{d}\rangle \cong \operatorname {Cyc} (n/d)}
는 크기
n
/
d
{\displaystyle n/d}
의 유일한 부분군이며, 이는
n
/
d
{\displaystyle n/d}
차 순환군이다.
무한 순환군
Cyc
(
∞
)
=
⟨
g
|
⟩
{\displaystyle \operatorname {Cyc} (\infty )=\langle g|\rangle }
의 부분군은 음이 아닌 정수와 일대일 대응 한다. 구체적으로,
n
≥
0
{\displaystyle n\geq 0}
에 대하여,
⟨
g
n
⟩
≅
Cyc
(
∞
)
{\displaystyle \langle g^{n}\rangle \cong \operatorname {Cyc} (\infty )}
은 지표
n
{\displaystyle n}
(
n
=
0
{\displaystyle n=0}
인 경우
ℵ
0
{\displaystyle \aleph _{0}}
)의 유일한 부분군이며, 무한 순환군이다. 특히, 무한군은 스스로와 동형 인 진부분군을 가질 수 있다.
순환군은 아벨 군 이므로, 모든 부분군이 정규 부분군 이며, 몫군 역시 순환군이다.
정이면체군 의 부분군은 순환군이거나 정이면체군이다.
n
{\displaystyle n}
차 정이면체군
Dih
(
n
)
=
⟨
r
,
s
|
r
n
=
s
2
=
(
r
s
)
2
=
1
⟩
{\displaystyle \operatorname {Dih} (n)=\langle r,s|r^{n}=s^{2}=(rs)^{2}=1\rangle }
의 부분군들은
{
d
:
d
∣
n
}
∪
{
(
d
,
i
)
:
d
∣
n
,
0
≤
i
≤
d
−
1
}
{\displaystyle \{d\colon d\mid n\}\cup \{(d,i)\colon d\mid n,\;0\leq i\leq d-1\}}
의 원소들과 일대일 대응 한다. 구체적으로,
d
∣
n
{\displaystyle d\mid n}
에 대하여,
⟨
r
d
⟩
≅
Cyc
(
n
/
d
)
{\displaystyle \langle r^{d}\rangle \cong \operatorname {Cyc} (n/d)}
는
n
/
d
{\displaystyle n/d}
차 순환 부분군이다. 마찬가지로,
d
∣
n
{\displaystyle d\mid n}
및
0
≤
i
≤
d
−
1
{\displaystyle 0\leq i\leq d-1}
에 대하여,
⟨
r
d
,
s
r
i
⟩
≅
Dih
(
n
/
d
)
{\displaystyle \langle r^{d},sr^{i}\rangle \cong \operatorname {Dih} (n/d)}
는 부분군이며,
n
/
d
{\displaystyle n/d}
차 정이면체군과 동형 이다. 또한, 이 목록은 겹치지 않는다.
n
{\displaystyle n}
이 홀수 인 경우,
Dih
n
{\displaystyle \operatorname {Dih} _{n}}
의 부분군들의 켤레류 의 목록은 다음과 같다.
d
∣
n
{\displaystyle d\mid n}
에 대하여,
{
⟨
r
d
⟩
}
{\displaystyle \{\langle r^{d}\rangle \}}
d
∣
n
{\displaystyle d\mid n}
에 대하여,
{
⟨
r
d
,
r
i
s
⟩
:
0
≤
i
≤
d
−
1
}
{\displaystyle \{\langle r^{d},r^{i}s\rangle \colon 0\leq i\leq d-1\}}
n
{\displaystyle n}
이 짝수 인 경우, 다음과 같다.
d
∣
n
{\displaystyle d\mid n}
에 대하여,
{
⟨
r
d
⟩
}
{\displaystyle \{\langle r^{d}\rangle \}}
홀수
d
∣
n
{\displaystyle d\mid n}
에 대하여,
{
⟨
r
d
,
r
i
s
⟩
:
0
≤
i
≤
d
−
1
}
{\displaystyle \{\langle r^{d},r^{i}s\rangle \colon 0\leq i\leq d-1\}}
짝수
d
∣
n
{\displaystyle d\mid n}
에 대하여,
{
⟨
r
d
,
r
i
s
⟩
:
0
≤
i
≤
d
−
1
,
i
≡
0
(
mod
2
)
}
{\displaystyle \{\langle r^{d},r^{i}s\rangle \colon 0\leq i\leq d-1,\;i\equiv 0{\pmod {2}}\}}
짝수
d
∣
n
{\displaystyle d\mid n}
에 대하여,
{
⟨
r
d
,
r
i
s
⟩
:
0
≤
i
≤
d
−
1
,
i
≡
1
(
mod
2
)
}
{\displaystyle \{\langle r^{d},r^{i}s\rangle \colon 0\leq i\leq d-1,\;i\equiv 1{\pmod {2}}\}}
특히,
Dih
n
{\displaystyle \operatorname {Dih} _{n}}
의 정규 부분군 의 목록은 다음과 같다.
n
{\displaystyle n}
이 홀수인 경우,
d
∣
n
{\displaystyle d\mid n}
에 대하여,
⟨
r
d
⟩
{\displaystyle \langle r^{d}\rangle }
Dih
n
{\displaystyle \operatorname {Dih} _{n}}
n
{\displaystyle n}
이 짝수인 경우,
d
∣
n
{\displaystyle d\mid n}
에 대하여,
⟨
r
d
⟩
{\displaystyle \langle r^{d}\rangle }
⟨
r
2
,
s
⟩
{\displaystyle \langle r^{2},s\rangle }
⟨
r
2
,
r
s
⟩
{\displaystyle \langle r^{2},rs\rangle }
Dih
n
{\displaystyle \operatorname {Dih} _{n}}
또한, 정이면체군의 임의의 몫군 은 정이면체군이다.
4차 대칭군
Sym
(
4
)
{\displaystyle \operatorname {Sym} (4)}
의 부분군은 총 30개이며, 이는 11개의 켤레류 를 갖는다.
Sym
(
4
)
{\displaystyle \operatorname {Sym} (4)}
의 부분군 격자를 나타내는 하세 도형 은 다음과 같다.
Jacobson, Nathan (2009), Basic algebra, 1 (2nd ed.), Dover, ISBN 978-0-486-47189-1 .
Hungerford, Thomas (1974), Algebra (1st ed.), Springer-Verlag, ISBN 9780387905181 .
Artin, Michael (2011), Algebra (2nd ed.), Prentice Hall, ISBN 9780132413770 .
S., Dummit, David (2004). 《Abstract algebra》 . Foote, Richard M., 1950- 3.판. Hoboken, NJ: Wiley. ISBN 9780471452348 . OCLC 248917264 .