F가 field,V가 F에서 정의된 Vector Space라고 할 때
Vector Space의 정의에 나오는 공리들은
Field의 공리와는 다르게
Commutative 공리
를 Addition에 대해서만 서술하고 있습니다.
( x,yㅌV일때 x+y=y+x)
Field의 공리에서는 multiplication에 대해서도 공리로 제시를 해주엇는데 (a,bㅌF일때 a*b=b*a)
Vector space의 공리에서는 Scalar multiplication에 대한 commutative, 즉
aㅌF,xㅌV일때
a*x=x*a 가 성립함이 따로 서술이 전혀 적혀있지 않아서
교수님께 이거에 관해 메일을 보냈는데
Commutativity는 binary operation에 대해서만 의미가 있기 때문이라고 얘기해주심
근데 왜 commutativity가 binary operation즉
S*S -> S 연산에서만 의미가 있는 성질인 지가 궁금해짐
T*S -> S 연산
S*T -> S 연산 을 정의했을때 결과값이 같은 거도 신기한 결과같은데 이거는 왜 별로 의미가 없는 건지 궁금합니다
- dc official App
교수님이 말씀하신걸 좀 더 정확하게 말씀드리면, binary operation(한글로 이항연산) 이라는 것은 서로 다른 두 집합에서 정의되는 것이 아니기 때문에 그렇습니다.
binary가 아닌 operation 2개에서 적용되는 결과가 교환성을 만족하는 것은 왜 의미가 없는 건지가 궁금합니다. "하나의집합"에서 정의된연산에서의 교환성만이 갖는 특별한의미가 있어서그런건가싶고.. - dc App
두 집합이 애초에 하나의 연산을 통해서 엮이는 경우 자체가 신기한 일이라서 그렇습니다. F는 그 자체 내에서 덧셈과 곱셈이 있고, V는 그 자체 내에서 덧셈이 있습니다. (곱셈은 아마 지금 단계에서는 배우지 않을 겁니다) 하지만 F와 V가 애초에 'scalar multiplication' 에 의해서 엮이는 발상 자체를 한다는 것이 신기한 일이기 때문에 그렇습니다.
조금만 자세히 적어보겠습니다. 메모장에 적고 댓글로 옮겨 적을테니 조금만 기다려주세요.
수능에서 벡터 부분을 설명할 때 화살표로 설명했을 겁니다. 사실 이건 물리학에서 벡터라고 말할 때 자주 쓰는 방식이고 수학에서는 좀 더 엄밀하게 지금 배우시는 과정을 통해서 '위에 만족한 성질을 만족하면 설령 엄청 이상한 거라고 하더라도 벡터공간 이라고 할꺼야!' 라고 하긴 합니다만, 이해를 돕기 위한 것이므로 그냥 당장은 화살표로 봅시다.
그럼 이 '화살표' 형태의 벡터를 토대로 생각해봅시다 가령 3차원 유클리드 공간의 벡터 (R^3라고 쓰는 그겁니다) 중 하나인 v = (3,4,5)를 봅시다. v = (3,4,5)에 숫자 3을 곱한다는게 무슨 의미죠?
선생님께서는 이걸 보고 '곱하면 당연히 3v = (9,12,15)죠!' 라고 말할 수 있을겁니다. 물론 이게 자연스러운 발상이긴 합니다. 근데, 애초에 '벡터랑 숫자랑 곱한다' 라는 것 자체가 말이 안되는 겁니다. '주어진 벡터의 길이를 3배로 하면서, 방향도 원래 벡터랑 똑같은 새로운 벡터를 생각한다' 는 것이 정확한 표현이지, 애초에 '벡터랑 숫자랑 곱한다' 라는 말 자체가 잘못된 표현이라는 겁니다.
그래서 우리는 '화살표를 스칼라와 곱한 것의 정의란 무엇인가?' 라고 생각을 해봐야 하는 겁니다. 단순히 화살표로 나타낼 경우 (그리고 이 화살표를 시작점을 원점으로 고정했을 경우), 화살표에 있는 성질은 오로지 2가지 밖에 없습니다. 그것이 바로 '방향' 과 '크기' 입니다. 다시 말해서, 벡터를 화살표로 표현했을 경우는 3v = (9,12,15)라는 표현이 화살표에 있는 2가지 성질 (방향과 크기)를 잘 반영했으니 무리가 없다는 겁니다.
헌데 이건 그냥 벡터를 '화살표'로 표현했을 경우를 말하는 거고, 우리는 물리학이 아닌 수학을 공부해야하기 때문에 '벡터랑 스칼라랑 곱한 것이 대체 무엇인가?'를 정의할 필요가 있습니다. 가령 물리학이 아닌 컴퓨터공학 분야를 보면, 행렬(matrix라고 말하는 것으로, 요즘 수능에서 나오지는 않습니다. 2011년도까지는 포함되었지만요)의 경우도 벡터공간으로 보고 있습니다. 이 행렬의 경우는 여러 개의 숫자를 직사각형 형태로 배열한 것 이외의 의미가 없는데, 이런 것 조차도 벡터공간으로 본단 말입니다. 그럼 이런 것의 경우는 '스칼라곱'을 어떻게 정의해야할지가 화살표와는 또 다른 발상을 요구합니다. (사족이지만, 지금 배우는 선형대수과목의 목표 중 하나가 행렬을 이해하는 거긴 합니다)
그래서 수학자들이 이렇게 고민을 하던 차에, 결국 답을 내놓습니다. '애초에 벡터공간을 정의 할 때, 그 정의 안에 스칼라곱을 집어넣자!' 라는 것입니다. 그래서 우리는 스칼라공간을 따로 정의하고 (그것을 field라고 했습니다), 그것과 연결된 벡터공간 V를 정의를 할 때 F와 V의 곱을 어떻게 할지를 함께 '정의'한 것에 불과하다는 겁니다.
그럼 이제 결론을 내려야겠군요. 스칼라공간 (field라고 부르고, F라고 씁니다)과 연결된 벡터공간 V에서는 오로지 F의 원소 f와 V의 원소를 f*v라고 하고, 글쓴분이 교수님께 'commutative는 왜 f*v에서만 성립하나요?' 물어봤다고 했습니다. 답은 이렇습니다. 애초에 그런 것을 벡터공간에서는 정의하지 않습니다. 만약 누군가 v*f라고 썼다면, 그건 f*v를 잘못 쓴 것에 불과한 겁니다.
만약에 이 답안으로 만족스럽지가 않다면, 다음 두 가지를 좀 더 생각해보시기 바랍니다. 1) 글쓴분이 보고 있는 텍스트가 정말로 좋은 텍스트라면, 애초에 스칼라곱을 정의할 때 분명히 다음 조건이 들어가 있을 겁니다. "F의 곱셈에 대한 항등원 1_{F}와 벡터공간 V의 임의의 원소 v에 대하여, 1_{F}와 v의 곱은 v로 정의한다' 이 조건은 너무 당연한 말 일텐데, 왜 이것을 굳이 '정의'에 넣었을까요? 답은 간단합니다. 이것이 정의에 들어가 있지 않으면 문제가 생기기 때문입니다.
2) 제가 앞에서 벡터를 화살표로 표현을 했을 텐데, 벡터를 화살표로 표현할 경우와, 벡터를 수학적으로 엄밀하게 정의할 경우는 다음과 같은 차이가 있습니다. 화살표로 정의할 경우는, 수능에서 야매스킬로 '외적(cross product)'라고 부르는 것이 있을 겁니다. 다시 3차원 유클리드공간을 생각하고 거기서 두 개의 벡터 v_{1} = (1,0,0)와 v_{2} = (0.1.0)을 생각합시다. 만약에 벡터공간이 오로지 이런 것들만 고려한다면, 우리는 '외적'을 통해서 '두 벡터의 곱'을 생각할 수 있습니다. (그리고 그 결과는 v_{3} = (0,0,1) 이겠죠)
V*a 이렇게 ring action 을 줘도 상관없음 commutative ring 위라서 left R module 이랑 right R module 이랑 일치하잖음
2-1)헌데, 수학에서는 벡터공간을 배울 때는 벡터의 곱을 아예 생각하지 않습니다. 두 개의 벡터 v_{1}과 v_{2} 사이의 덧셈과 뺄셈, 그리고 덧셈에 대한 항등원과 역원을 고려할 뿐이죠. 이 사실은 적어도 지금 배우고 있는 부분에서는, '벡터의 곱셈'은 관심 밖의 영역이라는 것을 알 수 있습니다. (물론 벡터의 곱셈도 나중에 고려해야하긴 하지만, 그건 진짜로 수학과, 특히 대수학에서 배우는 내용입니다. 이건 F-algebra 라고 부르는 내용인데, 위키에서 algebra over a field)를 검색하시면 됩니다.
고졸무직 // 맞는 말씀입니다만, 글쓴 분의 궁금증에 맞게 답을 하려면 '왜 commutative가 의미가 없는가'를 설명해야하기 때문에, 벡터공간의 기원에 대해 설명하는 것이므로 지금은 오히려 그 진술이 혼란을 가져올 수 있다고 생각했습니다. 추상대수학에서 ring 등을 설명하지 않고 저 궁금증을 이해시켜야 하니까요.
정말 길게 썼는데, 요약하자면 '지금 우리가 탐구하려고 하는 vector space 에서는 그건 특수한 때에만 나타나고, 우리의 관심사는 현재 일반적인 vector space이기 때문에 조금 다르다!'정도가 되겠습니다.
field를 알고있으니 ring도 알고있지 않을까
어떤 느낌인지 이해하였습니다. 긴 답변 감사합니다. - dc App
그런데 중간에 답변해주신 1*x=x 부분은, 이 공리가 주어져있지 않을때, 저 공리가 주어졌을때 만족하는 여러가지 좋은 성질들이 깨지기때문에 문제가 생긴다는 의도로 말씀하신것이 맞나요? 이 공리가 주어져있지 않다해도 정의에 모순은 발생하지 않아서 이렇게 이해하였습니다. - dc App
고무졸직 / 제가 배웠던 교재에서는 ring에 대한 정의 없이 field에 대한 정의를 소개했습니다. Gockenbach의 finite dimensional linear algebra입니다.
글쓴이 / 오랜만에 생각해보는거라 오류는 있을 수 있습니다만, 현재까지는 저도 1*x = x가 아닐 경우 '모순'은 찾지 못 하겠습니다. 다만, 모순은 아니되 당황스러운 경우가 있긴 해서 여기에 소개를 할까 합니다. 만약 1*v 가 v가 아닌 어떤 벡터 v가 존재한다고 합시다. 이 때 우리가 1*v = w 이라고 써봅시다. 그러면 다른 공리들에 의해서 1*v = (1x1)*v = 1*(1*v) = 1*w 가 성립하기 때문에, 1*v = w 와 1*w = w라는 두 가지 식을 얻습니다. 따라서, 1*(v-w) = w - w = 0 이 됩니다. 그런데 v와 w는 다르므로, 결국 1*x = 0이 되는 벡터가 영벡터 ( = 벡터공간의 덧셈에 대한 항등원) 말고도 x라고 존재하게 됩니다.
이 결과를 보건데, 만약 "1*v = v가 늘 성립한다"라는 조건이 공리에서 빠지게 된다면, 아마 우리가 지금부터 탐구하려는 벡터공간과는 매우 다른 수학적 공간을을 보여줄 것입니다. 이는 현재 우리의 관심사가 아닙니다. 그래서 공리에 1*v = v라는 것을 넣어놓고 하는 겁니다. 그래서 공리에 일단 1*v = v를 넣어놓고 시작하는 겁니다.
아마도...책에서 있는 내용 중에서는 "임의의 스칼라 k와 임의의 벡터 v의 스칼라곱 kv가 0벡터라고 하자, 그럼 k = 0 이거나 v가 0벡터이다' 라는 것에 대한 증명이 있을 겁니다. 하지만, 1*v = v가 아닌 경우가 단 하나라도 존재하면, 이건 틀린 주장이 되겠죠.
혹시 addition, scalar multiplication이 모두 정의돼있고 벡터공간의 공리중 "1*v=v"를 제외한 모든 공리가 만족되는 공간이 구체적으로 있을까요? 존재성이 - dc App
만약 다른 공리들로부터 "1*v=1"이 "증명"되는 것이라면 애초부터 공리로채택하지도않았을테니,이러한 반례가 되는 공간이 무조건 존재하는것맞으려나요? - dc App
a(x,y)=(ax,ax)
글쓴이 / 아주 간단한 예시가 있습니다. 스칼라곱을 아래처럼 정의합니다. 어떤 스칼라와 어떤 벡터를 곱해서 나오는 벡터는 무조건 영벡터이다. 그러면 이건 1*v = v 라는 공리 빼고는 모든 조건을 만족하겟죠. 즉, 1*v = v 이면 최소한 이런 경우는 제외할 수 있습니다.
글쓴이 / 쓰다 보니 한가지 더 생각이 났습니다. field를 실수의 집합 R로, , 그리고 vector space V를 변수가 x 하나이고 계수가 실수인 모든 유한차수 다항식의 집합이라고 합시다 (0차도 되고, 100차도 됩니다) 이 때, field의 임의의 원소 r과 V의 임의의 원소 v 의 곱 f*v를 v의 상수항만 r배 해주고 나머지 모든 항을 없애버리는 함수라고 합시다. 예를들어서, Field의 원소 pi(=3.14159...)로 잡고, V의 원소 v 를 (2 + 3x + 3xx + xxx)라고 합시다. 그러면 pi와 v의 스칼라곱은 2pi (=6.2831....)이 됩니다. 이렇게 스칼라곱을 이상하게 정의를 해놔도, 벡터공간이 될 것 같습니다. 한 번 체크해보세요!
글쓴이 / 정확히는 벡터공간이 아니라, 벡터공간에서 1*v = v라는 공리 하나만 없어진 공간이 되겠죠.
left ring action으로 쓰길 원해서?
S×T->S 연산을 va=av로 정해버리면 되니까 전혀 의미가 없지. 정사각행렬만 대칭행렬이라고 이름을 따로 붙여서 부르는 이유를 생각해 보셈. 본문의 질문은 마치 "m×n 행렬 M의 전치행렬이 어떤 행렬과 동일하다"에 의미를 부여하는 것과 같음 (물론 이건 모든 행렬이 해당함).
v*a 연산을.. v*1=v로 정의한다, v*(a*b)=(v*a)*b로 정의한다. 등 a*v를 정의할때 썻던 성질들만 사용하여 정의해줬을때, a*v=v*a가 성립한다는 것은 꽤 좋은 사실이 아닌가? 싶어서 그 의도로 질문한 것이엇습니다. (즉,동일하게 카피해서정의해도 교환성이성립한다는성질) - dc App
정의와 성질을 혼동하고 있는 것 같은데, 본문에서 언급한 field의 교환법칙은 정의를 위한 공리로서 제시된 거잖음.
v*a 연산을 새로 정의한다고 했는데, 어떻게 그 공리만으로 우측 스칼라곱을 '정의'할 건데? 그 조건을 만족하도록 하는 함수가 하나로 결정되지 않잖아. 공리를 이용한 추상적인 정의에 익숙하지 않아서 생긴 문제인 것 같은데, '특정 공리들을 만족하는 대상'을 무엇이라 부르겠다고 약속하는 식의 정의이지, 무엇이 '특정 공리들을 만족한다'를 정리해 둔 게 아니라는 말임. 그러니까 '체의 공리를 만족하도록 연산이 주어진 집합'을 체라고 부르는 것이지 체의 공리가 어떤 집합에 연산을 부여해 주는 게 아님.
vector space의 기존공리에서도 a*v를 정의하진 않지않나요? a*v가 어떻게든 정의돼잇고, 그 정의가 vs공리를 만족하면 된다고 받아들였는데, 그러면 vs공리를 우측 스칼라곱 v*a에 대헤서도 서술해주면 되지않나? 라는 의도로 서술한거였습니다. 그리고 그 공리들을 모두 만족하는 a*v,v*a에 대해 a*v=v*a가 성립함을 끌어낼 수 잇다면 좋은 property가 아닐까 싶어서 생각한것이었습니다. 우측스칼라곱과 좌측스칼라곱의 정의가 우측스칼라곱공리가 추가된 vs 공리를 모두 만족시켜도 a*v=v*a가 성립하지 않는 예가 혹시 존재할까요? - dc App
잘 생각해 보면 그 의문점이 "벡터공간의 스칼라곱은 하나만 존재하나요?"를 의미한다는 걸 알 수 있음. 왜냐, (덧셈이 이미 정의되어 있는 집합에 대해) 스칼라곱 ×와 *이 벡터공간의 공리를 만족한다 가정하면, 좌측 스칼라곱을 ×로 두고 우측 스칼라곱을 v*a:=a*v로 정의해 버리면 되니까. 간단한 반례는 C^2을 벡터공간으로 볼 때 (C는 복소수 집합), 하나는 일반적인 스칼라곱 c(x,y)=(cx,cy)으로 두고, 다른 하나는 스칼라의 켤레를 곱하는 것으로 두는 것, 그러니까 d가 c의 켤레일 때 c(x,y)=(dx,dy) 정도가 있겠네.
그게 그룹액션이라는게 있는데...
체 F와, F를 스칼라로 하는 벡터공간 V 가 있을 때, F가 V의 왼쪽에 작용 ( F acting on V by left ) 한다고 보시면 돼요. 왜 굳이 왼쪽이냐? 오른쪽은 안되냐? 오른쪽으로 해도됨 (v1,v2,...,vn)c = (v1c, v2c, ..., vnc) 이런식으로 하시면 됨.
그럼 left action도 right action도 존재하는데 "commutativity" 는 확인 안하냐?? 실제로 F가 비가환이면 left action 과 right action은 다른거거든요...
옳은 생각임. 벡터공간은 모듈의 특수한 종류인데 모듈은 left 모듈 과 right 모듈이 따로 있음. 단지 벡터공간은 레프트 라이트 똑같은(즉 님 의미에서 교환적인) 좋은 성질을 가진 모듈을 다루려고 하는 것일뿐임