shopkeeper/korean_wiki_content_only_120125 huggingface dataset:
국제 시장에서 성공적인 검색 엔진 최적화(SEO)는 단순히 웹 페이지를 번역하는 것 이상을 필요로 한다. 또한 대상 시장에 적합한 국가 코드 최상위 도메인(ccTLD) 또는 관련 최상위 도메인(TLD)으로 도메인 이름을 등록하고, 현지 IP 주소 또는 서버가 있는 웹 호스팅을 선택하며, 전 세계적으로 웹사이트 속도 및 성능을 향상시키기 위해 콘텐츠 전송 네트워크(CDN)를 사용하는 것을 포함할 수 있다. 또한 콘텐츠가 대상 고객에게 관련성 있게 느껴지도록 현지 문화를 이해하는 것도 중요하다. 여기에는 각 시장에 대한 키워드 조사를 수행하고, 올바른 언어를 대상으로 hreflang 태그를 사용하며, 현지 백링크를 구축하는 것이 포함된다. 그러나 고품질 콘텐츠 생성, 사용자 경험 개선, 링크 구축과 같은 핵심 SEO 원칙은 언어나 지역에 관계없이 동일하게 유지된다.
지역 검색 엔진은 특정 시장에서 강력한 존재감을 나타낸다:
국제 SEO의 진화.
2000년대 초, 기업들은 웹과 검색 엔진이 전 세계 잠재 고객에게 도달하는 데 도움이 될 수 있음을 인식했다. 그 결과 다국어 SEO의 필요성이 부상했다. 국제 SEO 개발 초기에는 단순 번역으로 충분하다고 여겨졌다. 그러나 시간이 지남에 따라 현지화 및 트랜스크리에이션(콘텐츠를 현지 언어, 문화, 감성적 공명에 맞게 조정하는 것)이 단순 번역보다 훨씬 더 효과적이라는 것이 분명해졌다.
법적 선례.
2002년 10월 17일, 서치킹은 미국 연방지방법원, 오클라호마 서부지방법원에 검색 엔진 구글을 상대로 소송을 제기했다. 서치킹의 주장은 구글의 스팸덱싱 방지 전술이 계약 관계에 대한 불법적 간섭을 구성한다는 것이었다. 2003년 5월 27일, 법원은 서치킹이 "구제될 수 있는 청구를 제시하지 못했다"는 이유로 구글의 소송 기각 신청을 인용했다.
2006년 3월, 킨더스타트는 검색 엔진 순위에 대해 구글을 상대로 소송을 제기했다. 소송 이전에 킨더스타트 웹사이트는 구글 색인에서 제거되었고, 사이트 트래픽은 70% 감소했다. 2007년 3월 16일, 미국 캘리포니아 북부지방 법원 (산호세 지부)은 킨더스타트의 소송을 수정할 여지 없이 기각하고, 킨더스타트 변호사에 대해 제11조 규칙에 따른 제재 조치를 부분적으로 허용하여, 구글의 법률 비용 일부를 지불하도록 명령했다.
최적성 이론 (Optimality Theory , 줄여서 OT)은 1993년 언어학자 알란 프린스와 폴 스몰렌스키가 제안한 언어학적 모델이다. 이 이론은 나중에 존 매카시와 알란 프린스에 의해 확장되어 왔다. 주로 음운론(OT와 처음 연결된 분야)에서 이 이론에 대한 관심이 많지만, 또한 다른 하위 분야의 언어학에 적용될 수 있다. (이를테면 통사론, 의미론) 최적성 이론은 보통 보편의 원칙, 언어 유형학, 언어 인지에 대한 탐구의 관심을 서로 나누는 생성문법의 개발로 여겨지기도 한다.
이 이론은 인공 신경망 연구에 기반을 두고 있기 때문에 종종 언어의 연결주의 이론이라고 불린다. 이 이론은 1990년에 제기된 조화문법의 이론을 계승한다.
세 가지 요소.
최적성 이론은 이러한 위의 세 가지 요소들이 보편적이라고 가정한다. 문법에서의 차이는 보편적인 제약(CON)의 다른 순위를 나타낸다. 언어 습득은 이러한 제약의 순위 조절 체계로 설명될 수 있다.
생성부(입력형): 후보 집단.
최적성 이론은 입력형에서 언어의 특정한 제한은 없다고 제안한다. 이것을 어기의 풍부성이라고 한다. 모든 문법은 모든 가능한 입력을 다룰 수 있다. 예를 들면, 자음군이 없는 언어는 /flask/같은 입력을 다룰 수 있어야 한다. 자음군이 없는 언어는 이러한 문제를 어떻게 해결하느냐에 따라 다르다. 어떤 경우는 삽입현상이 나타나고 또 다른 경우는 삭제현상이 나타나기 때문이다. 어떠한 입력이 주어진다면, 생성부는 무수한 수의 후보들이나 그 입력의 가능한 결과를 나타낸다. 언어의 문법(제약 등급)은 무수한 후보들이 평가부에 의한 최적의 평가가 되는 것을 결정한다.
제약: 제약 집단.
최적성 이론에서, 모든 제약은 광범위하다. 이러한 제약은 모든 언어에 통용된다. 제약에는 두 가지 종류가 있는데, 충실성 제약(Faithfulness Constraint)과 유표적 제약(Markedness Constraint)이다. 충실성 제약은 관찰된 표면형(출력)은 몇 가지 특정한 방법으로 기저형 또는 어형(입력)과 조화한다고 규정한다. 그것은, 이러한 제역은 입력과 출력의 동일함을 규정한다는 것을 말한다. 유표적 제약은 출력의 구조적인 적정 형식에서 필요조건을 부과한다. 둘 다 이 이론의 결정적인 역할을 맡는다. 충실성 제약은 몇몇 무표적인 형태(예를 들면 [ba]같은)에서 현실화 된 것에서 모든 입력을 회피하며, 유표적인 제약은 변화의 동기를 부여한다.
제약의 보편적인 성질은 언어 유형학에 관한 중간 예측으로 발전한다. 만일 문법이 오직 제약의 다른 순위를 가지기 때문에 다르다면, 가능한 인간 언어는 존재하는 제약에 의해 결정된다. 최적성 이론은 제약 순위의 변경이 있는 것보다는 문법으로 될 수 없다고 예측한다. 가능한 순위의 수는 일정한 조건을 일으키는 "계승 유형론"의 한 예로서 제약의 총 수의 계승 (수학)과 동등하다. 그러나 모든 제약이 모든 언어에서 주목할만한 영향을 보증되지는 않기 때문에 모든 잠재적인 문법을 구분하는 것은 불가능할 것이다. 두 개의 언어는 입출력 사상의 같은 범위를 생성하는 것은 가능했지만, 가장 낮게 책정된 두 개의 제약과 관련된 순위에서는 달리한다.
평가부: 최적 정의.
후보 A와 B가 있을 때, A가 B보다 위반이 적으면 제약에서 A는 B보다 우수하다. A와 B를 구분하여, A가 가장 높게 집계된 제약의 위반이 적다면 전체 제약 계층에서 A는 B보다 낫다. 제약 계층에서 다른 모든 후보들보다 우수하면, A는 후보 집단에서 최적이다.
예를 들어 제약 C1과 C2, 그리고 C3가 주어졌다. 제약 순위를 말하자면, C2가 C3보다 순위가 높고, C2는 C1보다 더 순위가 높다(C1 » C2 » C3)고 가정해 본다. 이 경우 위반의 다른 수를 선정하는 높은 제약 순위에서 후보 A가 B보다 높은 경우 A는 최적이다. 만일 후보 A가 제약 C2에서 B보다 위반하는 수가 적지만, 제약 C1에서 B와 위반하는 수가 같을 경우, A가 제약 C3에서 B보다 수백 개의 위반이 있더라도, A가 최적이다. 이러한 비교는 tableau라고 불리는 도표에서 나타난다. 가리키는 손가락(☞)은 최적의 후보를 표시하고, 각각의 칸은 주어진 후보와 제약의 위반의 수를 표시한다. 한 후보가 순위가 높은 제약에서 다른 후보보다 위반이 많다면, 결정적인 위반(도표에 느낌표(!)를 표시한다.)을 초래한다. 이 경우, 그 후보는 다른 후보들 중에서 뛰어나더라도, 최적으로 표시할 방법이 없다.
제약은 엄격 지배(strict domination)의 위계에서 등급이 매겨진다. "엄격 지배의 엄격함(strictness of strict domination)"은 높은 순위의 제약에서만 위반하는 후보는, 그 다음 후보가 다른 낮은 순위의 후보보다 더 안좋게 되더라도, 높은 순위의 제약에서만 위반하지 않은 다른 후보들보다 위계에서 더 나빠진다는 것을 의미한다. 또한 "엄격 지배의 엄격함(strictness of strict domination)"이라는 말은, 제약은 깨질 수 있다는 것을 의미하기도 한다. 왜냐하면, 최적의 후보는 모든 제약을 만족시킬 필요가 없기 때문이다. 언어의 범위내에서, 제약은 항상 준수할 정도로 높게, 아니면 중간 정도로 집계될 것이다. ""무표적 출현"(the emergence of the unmarked)" 기간은 유표적 제약은 중간 집계로 되어 있고 몇몇 형태에서 위반을 하나, 그래도 높게 집계된 제약이 무의미할 때 주목할만한 영향이 있다는 상황을 설명한다.
초기의 예는 존 매카시와 알란 프린스의 1994년에 행했던 연구에서 언급되는 "자음에서 끝나는 것에서 온 음절을 금지하는 "말음이 없는(NoCoda)" 제약"에 의해 제안되었다. 바랑가오어에서, 음절말음이 없는 것은 codice_1 (말음 /n/의 삭제를 방지하는 입력으로서의 충실성)과 같이 핵심인증으로서 항상 준수할 정도로 높은 순위에 책정되지 않는다. 그러나 첩어 형태인 '여러차례 뒤로 남겨지는(repeatedly be left behind)'codice_2에서, 말음 /n/ 복제되지 않는다. 매카시와 프린스의 분석에서, 이것은 왜냐하면 입력에서의 충실성은 첩어 요소로 적용되지 않고, "말음이 없는"(NoCoda) 경우는 따라서 codice_3(말음이 없는 것을 위반하는 추가적인 요소)을 넘어서 codice_2를 제기하는 데서 자유롭다. 제약은 또한 깨뜨릴 수 있다. 최적의 후보는 어떠한 제약에서 그보다 더 나은 다른 경쟁 후보에게 만큼 제약을 만족시킬 필요가 없기 때문에 최적의 제약이 다른 것보다 더 높게 책정되는 경우가 있다.
프린스 같은 몇몇 최적성 이론을 연구하는 사람들은 비교 도표(comparative tableaux)를 사용할 것을 제기한다. 비교 도표는 기존의 것이나 '결점(flyspeck)'도표 로서의 같은 정보를 보여주나 정보는 가장 결정적인 것을 두드러지게 표시될 수 있다. 그러한 도표는 아래와 같다.
비교 도표에서 각각의 열은 각각의 후보보다는 승자와 패자의 쌍(the winner-loser pairs)을 표시한다. 제약이 승자와 패자의 쌍을 평가하는 칸에서, 종렬에서의 제약이 승자가 유리한 경우는 W를, 패자가 유리한 경우를 나타낼 때는 L로 표기한다. 또한, e는 제약이 한 쌍간에 차이가 없을 때에 표기한다. 이런 방법으로 자료를 나태내는 것은 일반화를 만드는 것을 쉽게 되게 한다. 예를 들어, 일관된 집계를 위해서 몇몇 W는 모든 L을 반드시 지배해야 한다. 브라소보누와 프린스의 2005년 연구에서는 융합과 비교 도표에서의 주어진 논쟁에서 필요충분조건을 성취하기 위한 자료를 나타내는 다양한 방법으로서 알려진 체계를 기술한다.
/cat + z/ → [cats] (smirks, hits, crepes 같은 것도 해당.)
/dog + z/ → [dogz] (wugs, clubs, moms 같은 것도 해당.)
/dish + z/ → [dishiz] (classes, glasses, bushes 같은 것도 해당.)
제약이 아무리 다시 정리가 되더라도, 'is'라는 이형태는 항상 'iz'로 될 것이다. 예를 들면, 'dogis'가 최적이 되는 제약을 다시 정렬을 할 방법이 없다. 이것을 '조화적 경계(harmonic bounding)'라고 한다. 위반은 후보 'dogiz'가 'dogis'에 의해 초래된 위반의 부분집합이라는 것에 의해 초래된다. 엄밀히 말하면, 모음을 삽입하면, 형태소의 유성음을 변화하는 것은 제약의 불필요한 위반이다. "dog + z"도표에는, 어떠한 위반도 전혀 초래하지 않은 후보 'dogz'가 있다. 문제의 제약 집단의 범위내에서, 'dogz'는 조화적으로 모든 다른 가능한 후보들을 나타낸다. 이는, 후보는 다른 후보를 조화적으로 나타내기 위해 최적이 되는 것이 필요없다는 것을 보여준다.
위의 "dog + z" 도표에서, 이러한 제약의 어떠한 순위라도 관찰된 출력형 "dogz"로 생성된다는 것을 관찰할 수 있다. 패자로 선호된(loser-preferring) 어떠한 비교도 없기 때문에, 이러한 제약들의 어떠한 순위에서도 "dogz"는 최적으로 된다. 이는 어떠한 순위도 입력형에 기초해서 평가될 수 없다는 것을 의미한다.
"cat + z" 도표는 하나의 W와 하나의 L을 가진 열을 포함한다. 이는 제약 Agree, 제약 Max, 그리고 제약 Dep 모두 반드시 제약 Ident를 지배한다는 것을 보여준다. 그러나, 어떤 서열도 입력형에 기인한 이러한 제약에서 평가될 수 수 없다. 이 도표에 기인하여, 다음이 같은 서열이 집계되었다.:
Agree, Max, Dep » Ident
이 도표는 상당수의 서열은 원하는 출력형을 예상하기 위해 없어서는 안된다는 것을 보여준다. 첫 번째 열은 아무것도 말을 하지 않는다. 즉, 첫 번째 열에는 패자로 선호된(loser-preferring) 어떠한 비교도 없다는 것이다. 두 번째 열은 후보 "fishiz" 와 후보 "fishz"와의 비교에 기인하여, 제약 *SS나 제약 Agree나 반드시 제약 Dep를 지배한 다는 것을 드러낸다. 세 번째 열은 제약 Max는 반드시 제약 Dep를 지배한다는 것을 보여준다. 마지막 열은 제약 *SS나 제약 Ident는 반드시 제약 Dep를 지배한다는 것을 보여준다. "cat + z" 도표에서, 제약 Dep은 제약 Ident를 지배한다는 것이 평가되었다. 즉, 제약 *SS는 제약 Dep을 반드시 지배한다.
*SS, Max » Dep » Ident
제약 Agree가 제약 Dep을 지배한다는 것이 가능하다는 것을 하더라도 필연적이다. 즉, 위의 서열은 나타나기 위한 후보 "fishiz"에서 관찰되는데 충분하다.
*SS, Max » Agree, Dep » Ident
*SS, Max, Agree » Dep » Ident
선형적으로 서열을 적을 때 제약 Agree를 놓을 두 가지의 가능한 공간이 있다. 즉, 진짜 한치의 오차가 없는 것은 아니다. 첫 번째는 제약 *SS와 제약 Max는 제약 Agree를 반드시 지배하고 두 번째는 제약 Agree가 제약 Dep를 반드시 지배한다는 것을 포함한다. 이러한 것들이 선형 방식에서 서열을 상세히 쓰는 것에서의 하강에서 사실적인 것은 아니다. 이 문제의 요소들은 대부분의 언어학자들이 필요하고 충분한 서열을 나타내는 데 격자 그래프를 이용하는 이유이다. 그 그래프는 하세 도표 형식으로 제약의 필요한 서열을 나타낸다.
최적성 이론을 제안한 이들에 따르면, 많은 비판론자들은 이 이론이 어떻게 일으키는지에 대한 기본적인 오해에서 기초한다. 잘 알려진 예는 촘스키가 1995년에 주장한 것인데, 최적성 이론은 하나의 최상 음절로 줄어드는 모든 어휘적 입력형을 예상 할 것이라는 주장이다. 사실상, 이러한 종류의 보편적인 중화(neutralization)는 충실성 제약이 없다면 단지 예상되는 것이었다. 어떤 점에서는, 아주 비판적인 반대 성질은 "모든 언어에서의 음운론적인 존재는 충실성은 잘하지 않고도 할 수 있는 효과가 없는 원리라는 것을 보여준다." 라고 말하는 할레의 1995년 연구에서 온 것이다. '음운론'으로, 할레는 입력형과 출력형에서 불일치를 명확하게 의미하였다. 프린스의 2007년도 연구에 의하면, 최적성 이론은 유표성 제약이 없다면 이러한 불일치를 예상을 하지 못할 것이라고 하였다. 입출력형 불일치는 정상적으로 유표성 제약의 결과는 충실성 제약을 넘어서는 서열(M » F)로 집계될 것이라고 하였다.
최적성 이론에서의 다른 반대 이론은 반증 가능성이 있는 예상을 이루지 못한다는 점에서 전문적인 이론은 아니라는 문제 제기이다. 이 논쟁의 근원은 용어학이다. 즉, '이론(theory)'이라는 용어는 물리학이나 화학, 아니면 다른 과학에서보다 용어학에서 다르게 사용되었다. 최적성 이론에서의 특정한 증명은 다른 언어 틀이 할 수 있는 범위에서의 특정한 제안과 같은 방법으로 반증 가능성이 있는 예상을 만들 것이다. 예상이 만들어지고, 분석 가능한 것은 개별 제안의 특성에 달려 있다. 따라서 최적성 이론은 과학적인 페러다임으로서 틀이 잘 설명된 것이다.
윌리엄 이드살디의 2000년 연구에 의하면, 최적성 이론에서의 더욱 중요한 반대 의견은 음운론적 불투명에서 묘사할 수 없다는 문제 제기이다. 파생적인 음운론 영향은 표면 단계가 아닌 '불투명(opaque)' 규칙순에서 해석될 수 있는 것에서 설명될 수 없다고 보인다. 그러나 작용하는 규칙에서 중간 단계가 없는 최적성 이론에서 이러한 영향은 설명하기 어렵다.
캐나다의 퀘벡에서 사용되는 프랑스어를 예로 들면, 전설고모음은 /t/의 파찰음을 유발하나, 표면 단계에서 확인할 수 있는 고모음 상실 현상은 식별할 수 있는 근원이 없이 파찰 현상을 남긴다. 파생적인 음운론에서는 이러한 현상을 모음 소실(vowel syncope)이 된 역출혈(counterbleeding) 파찰음 현상으로 인한 것이라고 설명할 수 있다. 이것은, 모음 소실 발생과 출혈(bleeding)을 대신하여, 파찰음은 모음 소실현상 전에 적용되며, 그러므로 고모음은 제거되고 파찰음을 유발하는 환경은 없어질 수 있다고 말할 수 있다. 그러한 역출혈(counterbleeding)규칙순은 표면 단계에서 영향을 보이지 않기 때문에 불투명 조건이다.
이러한 현상의 불투명은 중간 단계가 접근할 수 없기 때문에 최적성 이론에서의 직접적인 설명이 없다는 것을 발견한다. 몇몇 제안은 그러한 것을 설명하는 목적을 품지만, 대부분의 제안은 최적성 이론의 기초적인 양식을 두드러지게 변경하고, 따라서 높게 논쟁하기 쉽다. 종종, 그같은 변경은 새로운 제약의 형태를 추가하거나 생성부나 평가부의 고유의 특징을 변경한다. 잘 알려진 그러한 예들 중 몇몇은 존 매카시의 공감 이론과 후보 연쇄 이론을 포함하고 다른 것들도 많이 있다.
관련된 논쟁은 순환적인 연쇄 체계(chain shift)의 존재이다. 예를 들면, 입력형 /X/는 출력형 [Y]로 측정되나, 입력형 /Y/는 출력형 [X]로 측정된다. 엘리엇 모어톤의 2004년 연구나 알란 프린스의 2007년 연구에서 나온 것처럼, 최적성 이론의 많은 설명은 이러한 것이 불가능하다고 예측한다. 이러한 종류의 형태가 자연 언어를 발생하는지 않는지에 대해서는 확실하지가 않다.
최적성 이론은 언어 생산이나 인지에서 불가능한 방식이 되는 것에서도 비판받았다. 가능한 후보의 무한한 수를 평가하고 비교하는 것은 처리하는 데에 끝도 없이 긴 시간이 소요될 것이다. 윌리엄 이드살디의 2006년 연구에서는, 안드레아 코르나이나 제프리 헤인즈, 그레그 코벨, 그리고 제이슨 리글과 같은 다른 언어학자들이 이러한 문제 제기에 대해 그가 제약 집단과 후보에 관한 이유없는 가설을 만들어 내고 최적성 이론에서의 적당한 증명이 표시하지 않는다고 바로 논쟁을 걸었음에도 불구, 이러한 처리에 대해 논쟁하였다. 최적성 이론에서 또 다른 반박은 틀이 단순히 구상적이라는 것이다. 이러한 관점에서, 최적성 이론은 언어능력(linguistic competence)의 표본으로 간주되지, 언어수행(linguistic performance)의 특징으로 설명되지는 않는다.
실제로, 최적성 이론의 완성은 종종 음절이론(Syllable theory)이나, 운율 이론(Moraic theory), 아니면 자질 기하학(Feature Geometry)과 같은 관련된 이론에서 나타낸다. 이러한 이론들과 대조적으로, 잠재적 충실성 이론(positional faithfulness theory)이나 조화 이론(Correspondence Theory), 그리고 공감 이론(Sympathy Theory)과 같은 최적성 이론 범위내에서 완전히 제안된 보조 이론과 배우기 쉬운 몇몇 이론이 있다. 또한 최적성 이론에 관한 명확한 이론의 범위가 있다. 이러한 것은 제약의 가능한 공식화와 정밀한 지배와 다른 제약 상호작용과 같은 논쟁과 관련이 있다.
에이다(Ada)는 구조화되고, 정적인 형태를 가지고, 명령적이며, 객체 지향적인 고급 컴퓨터 프로그래밍 언어이다. 처음에는 1977년에서 1983년까지 수백 개의 프로그래밍 언어를 대신할 목적으로 CII 허니웰 벌의 진 이히비아가 주도한 팀에서 고안된 것이다. 에이다는 C나 C++와 몇 가지 작업이 같지만, 매우 강력한 유형 시스템의 언어이다.
에이다는 컴퓨터 프로그래밍을 발명하는 데 공헌한 에이다 러브레이스(1815~1852년)의 이름을 딴 것이다.
1970년대에 에이다(Ada)는 미국 국방성(Department of Defence: DoD)을 위해서 개발되었고, DoD의 컴퓨터 응용 분야의 대부분이 임베디드 프로그램이었다. 하드웨어에 의존성 때문에 각기 다른 언어를 설계해서 사용되었다. 소프트웨어의 재사용성은 거의 없었다. 소프트웨어의 복잡성의 증가와 표준화되지 않은 언어들로 인하여 소프트웨어 개발 비용이 급증한다. 이러한 이유 때문에 1974년에 미국의 육, 해, 공군은 각기 독립적으로 운영되던 내장 시스템을 단일한 언어로 개발하기 위해 고급언어의 개발을 제안한다.
Ada.Text_IO.Put_Line("Hello, world!");
type Day is range 1 .. 31;
type Month is range 1 .. 12;
type Year is range 1800 .. 2100;
type Date is
Day : Day;
Month : Month;
Year : Year;
while a /= b loop
Ada.Text_IO.Put_Line ("Waiting");
Ada.Text_IO.Put_Line ("Condition met");
Ada.Text_IO.Put_Line ("Condition not met");
for i in 1 .. 10 loop
Ada.Text_IO.Put ("Iteration: ");
Ada.Text_IO.Put (i);
Ada.Text_IO.Put_Line;
exit when a = 10;
case i is
when 0 =&gt; Ada.Text_IO.Put("zero");
when 1 =&gt; Ada.Text_IO.Put("one");
when 2 =&gt; Ada.Text_IO.Put("two");
패키지, 프로시저, 함수.
package Mine is
type Integer is range 1 .. 11;
i : Integer := Integer'First;
procedure Print (j: in out Integer) is
function Next (k: in Integer) return Integer is
return k + 1;
end Next;
Ada.Text_IO.Put_Line ('The total is: ', j);
j := Next (j);
end Print;
while i &lt; Integer'Last loop
Print (i);
end Mine;
컴퓨터 과학에서 자료형 체계()는 값, 표현식, 함수, 모듈 등을 분류하는 규칙의 집합이다. 보다 형식적으로는 “계산될 값을 분류하여 특정한 종류의 프로그램 오류가 일어나지 않음을 증명하는 계산 가능한 방법”으로 정의된다.
자료형 체계에서 각각의 계산된 값은 자료형을 갖는다. 자료형 체계는 프로그램 안에서 값의 흐름을 검토하여 자료형에 맞지 않는 값이 할당되는 것을 막는다. 자료형에 맞지 않는 값이 할당되는 것을 자료형 오류라고 부른다. 논리적으로 맞지 않는 자료형 사이의 연산이나 잘못된 메모리에 접근하는 경우가 이에 해당한다. 구체적으로 어떤 연산이 자료형 오류인지는 자료형 체계에 따라 다르다.
컴파일러는 정적 자료형을 통해 각 변수에 필요한 저장 용량과 연산 알고리즘을 최적화할 수 있다. 예를 들어 다수의 C 컴파일러의 "부동소수점" 자료형은, 단일 정밀도 부동소수점 숫자에 대한 IEEE 표준에 따라 64 비트로 표시된다. 따라서 C 컴파일러는 부동소수점 자료형을 갖는 변수의 연산에는 그에 맞는 기계어 명령을 사용할 수 있다.
형식 제약의 깊이와 그 평가의 방법은 언어의 정형(typing)에 영향을 미친다. 프로그래밍 언어 추가 자료형 다형성의 경우 각 자료형에 대한 다양한 구체적인 알고리즘과 함께 작업을 연결할 수 있다. 유형 이론은 컴퓨터 아키텍처, 컴파일러 구현 및 언어 디자인의 실용적인 문제에서 발생하는 자료형 체계의 연구이다.
값에 자료형을 할당하는 것을 정형(typing)이라고 한다. 정형은 메모리 상의 비트의 나열에 의미를 부여한다. 컴퓨터 상에서 모든 값은 단순히 비트 나열로 구성되어 있기 때문에 하드웨어는 메모리 주소, 명령어 코드, 문자, 정수, 부동소수점을 서로 구분할 수 없다. 나열된 비트들과 형을 연결해줌으로써 프로그래머는 프로그램이 어떻게 이 비트의 순서를 이해해야 하는지 알려준다.
자료형 검사.
프로그램이 자료형의 제약 조건을 지키는지 검증하는 것을 자료형 검사라고 한다. 자료형 검사는 컴파일 타임(정적 검사) 또는 런타임(동적 검사)에 실행될 수 있다. 만약 언어 명세가 엄격한 분류 규칙을 요구할 경우(즉, 더 많거나 적은 정보를 잃지 않는 것만 자동 자료형 전환을 허용한다.) 강력한 정형으로, 그렇지 않다면 약한 정형으로 분류할 수 있다. 그러나 이 분류는 학술적으로 엄격한 분류는 아니다.
정적 정형.
자료형 검사가 실행 시간이 아닌 컴파일 타임 동안 수행될 경우, 이를 정적 정형이라고 한다. 정적으로 정형된 언어는 액션스크립트 3, 에이다, C, C++, C#, D, Eiffel, F#, 포트란, Go, 하스켈, JADE, 자바, ML, 오브젝티브-C, OCaml, 파스칼, 펄(스칼라, 배열, 해시 및 서브루틴의 구별에 대하여) 그리고 스칼라 등이 있다.
정적 정형은 프로그램 검증의 제한된 형태이다.(형 안전 참조) 따라서 많은 자료형 오류가 개발주기의 초기에 잡힐 수 있다. 정적 형 검사기는 오직 컴파일 타임에 결정될 수 있는 자료형 정보만을 평가하지만 프로그램의 가능한 모든 입력에 대해 검사 조건을 확인할 수 있고 프로그램이 실행될 때마다 매번 자료형 검사를 반복할 필요가 없다. 또한 정적 형 검사가 이루어질 경우 실행 자료형 검사를 생략하고 다른 최적화를 수행할 수 있어, 프로그램 실행도 보다 효율적으로 (즉, 빠르게 또는 감소된 메모리를 사용) 만들 수 있다.
어떤 자료형 정보는 오직 실행 시간에만 정해지기 때문에 정적 형 검사기는 보수적이다. 실행 시간에는 자료형 오류가 일어나지 않는 일부 프로그램이 정적 형 검사기에서는 거부될 수 있다. 예를 들어 표현식 codice_2가 항상 실행 시간에서 codice_3를 평가한다고 할 경우:
는 자료형 오류를 일으키며 거부될 것이다. 왜냐하면 정적 분석은 codice_5 분기가 실행되지 않는다는 사실을 확인할 수 없기 때문이다. 반면 정적 형 검사기의 보수적인 동작은 가끔씩 codice_2를 codice_7로 평가할 때 유익하다. 정적 자료형 검사기는 드물게 사용되는 코드 경로에서 자료형 오류를 감지할 수 있다. 정적 형 검사를 하지 않을 경우 코드 범위 테스트는 100% 범위에서도 이러한 자료형 오류를 발견하지 못할 수 있다.
동적 정형.
자료형 검사의 대부분이 컴파일 타임이 아닌 실행 시간에 수행될 경우 "동적 정형"이라고 한다. 동적 정형에서, 값은 자료형을 가지고 있지만 변수는 그렇지 않다. 즉, 변수는 모든 자료형의 값을 가질 수 있다. 동적으로 정형된 언어로는 APL, 얼랭, 그루비, 자바스크립트, 리스프, 루아, MATLAB/GNU 옥타브, 펄 (사용자 정의를 위한 자료형이지만 기본이 아닌 자료형), PHP, 프롤로그, 파이썬, 자이썬, 루비, 스몰토크, 클로저 그리고 Tcl 등이 있다.
동적으로 정형된 언어는 일반적으로 모든 런타임 개체가 자료형 정보를 함께 갖고 있다. 이런 런타임 자료형 정보는 함수 오버로드, 동적 디스패치, 게으른 바인딩, 다운캐스팅 등에도 사용될 수 있다.
더 넓게, 아래에서 설명한 것처럼, 동적 정형은 동적 프로그래밍 언어 기능에 대한 지원을 향상시킬 수 있고, 런타임 데이터를 기반으로 한 기능과 자료형을 창출하는 것 등이 있다. (그럼에도 불구하고, 동적으로 정형된 언어는 일부 또는 전부 같은 기능을 지원하지 않아도, 일부 "동적 프로그래밍 언어"는 정적으로 정형되어 있다.) 한편, 동적 정형은 적은 "선천적" 보장을 제공한다: 동적으로 정형된 언어는 정적 자료형 검사기에 의해 무효로 지배될 일부 프로그램을 실행하려고 허용 및 시도하는데, 프로그램의 오류 때문이거나 정적 자료형 검사가 너무 보수적으로 되기 때문이다. 동적 정형은 런타임 자료형 오류가 발생할 수 있다—즉, 런타임에서, 값은 예상치 못한 유형이 있을 수 있고, 그 자료형에 대한 무의미한 작업이 적용된다. 이런 오류가 프로그래밍 실수 구문에서 오랜 시간 후에 발생할 수 있다—즉, 데이터의 잘못된 자료형의 장소로 전달되는 구문은 작성하지 않아야 한다. 이것은 버그를 찾기 어려울 수도 있다.
동적 정형 언어 체계들의 런타임 검사는 잠재적으로 정적으로 정형된 언어의 경우보다 더 정교할 수 있고, 그들은 동적인 정보뿐만 아니라 소스 코드로부터 정보를 사용할 수 있다. 한편, 런타임 검사는 오직 프로그램의 특정 실행에서 조건을 잡는 것을 주장하고, 검사는 매번 프로그램을 실행하는 동안 반복된다.
동적으로 정형된 언어의 개발은 자주 단위 테스트와 같은 프로그래밍 정책에 의해 지원된다. 테스트는 전문 소프트웨어 개발에서 핵심 방법이고, 동적으로 정형된 언어의 경우에 특히 중요하다. 실제로, 올바른 프로그램이 작동을 보장하기 위해 했던 테스트는 정적 자료형 검사보다 훨씬 넓은 오류 범위를 감지할 수 있지만, 반대로 정적 자료형 검사가 감지할 수 있는 오류를 종합적으로 검색할 수 없다.
프로그래밍 언어의 정적 정형의 존재는 반드시 모든 동적 정형 구조가 없는 상태를 의미하는 것은 아니다. 예를 들어, 자바와 다른 표면에서 정적으로 정형된 언어의 경우, 하위 형변환 및 런타임 자료형 검사에 따라 다른 종류의 작업을, 동적 정형의 형태로 지원한다. 더 일반적으로, 대부분의 프로그래밍 언어는 데이터를 서로 다른 '종류'를 통해, 서로소 합집합과, 변형 자료형 및 다형성 개체와 같은 파견에 대한 방식을 포함한다: 자료형 주석 또는 자료형 검사와 상호 작용조차 하지 않을 때 이러한 방식은 동적 정형 구현에서 실질적으로 유사하다. 정적 및 동적 정형 사이의 상호 작용에 대한 자세한 내용을 보려면 프로그래밍 언어를 참조한다.
특정 언어, 예를 들어 클로슈어는, 기본적으로는 동적으로 정하지만, 이 동작을 허용하는 것은 정적 정형에서의 결과로 명시적인 자료형의 사용 힌트를 통해 무시한다. 이러한 힌트를 사용하는 이유 중 하나는 코드의 성능에 민감한 부분에서 정적 정형의 성능 이점을 달성하는 것이다.
정적 정형은 컴파일 타임에 안정적으로 자료형 오류를 찾을 수 있다. 이것은 제공되는 프로그램의 신뢰성이 증가할 것이다. 그러나, 프로그래머는 일반적으로 자료형 오류가 발생하는 방법을 통해 반대하고, 따라서 적절하게 코드에서 설계된 자료형을 대표해서 잡은 것으로 코딩한 이 버그의 비율을 통해 반대한다. 정적 정형 지지자들은 자료형 검사가 잘 되어있을 때 프로그램이 더 신뢰할 수 있다고 믿고, 동적 정형 지지자들은 안정적이고 작은 데이터베이스 버그가 증명된 배포 코드를 가리킨다. 자료형 체계의 강도가 증가된 다음에 정적 정형의 값은 아마도 증가할 것이다. 만약 프로그램에 사용되는 자료형이 프로그래머에 의해 제대로 선언되거나 정확하게 컴파일러에 유추되는 경우, 이러한 종속 ML과 에피그램으로 의존적으로 정형된 언어의 지지자들은 거의 모든 버그가 자료형 오류로 간주될 수 있는 제안을 한다.
정적 정형은 보통 더 빠르게 실행하는 컴파일된 코드에서 발생한다. 컴파일러가 사용하는 정확한 자료형을 알고있을 때, 그것은 최적화된 기계 코드를 생성할 수 있다. 더 나아가, 정적으로 정형된 언어를 위한 컴파일러는 어셈블러보다 쉽게 단축키를 찾을 수 있다. 일부 동적으로 정형된 언어와 같은 커먼 리스프는 매우 합리적인 최적화를 위한 옵션 정형을 허용한다. 정적 정형은 이것을 보급한다. 최적화를 참조한다.
반대로, 동적 정형은 컴파일러가 더 빠르게 실행할 것과 인터프리터가 동적으로 새로운 코드를 불러오는 것을 허용할 수 있고, 동적으로 정형된 언어에서의 소스 코드에 대한 변경 사항 때문에 수행하기 위해 덜 검사한 것과 코드를 되짚는 것에서 발생할 수 있다. 이것도 편집 - 컴파일 - 테스트 - 디버그 주기를 줄일 수 있다.
정적으로 정형된 언어의 경우 부족한 자료형 추론 (예: C와 Java 등)은 프로그래머들이 메서드나 함수를 사용하고자 하는 자료형을 선언할 것을 요구한다. 이것은 어느 컴파일러가 프로그래머가 동기화 중에 표류할 것을 무시하거나 허용하도록 허가하지 않을 것을 프로그램을 위한 추가 문서로 검색할 수 있다. 그러나, 언어는 정적으로 자료형 선언 없이 정형될 수 있다 (예시는 하스켈, 스칼라 그리고 낮은 정도의 C#를 포함한다), 그래서 명시적인 자료형 선언은 모든 언어에서 정적 정형을 위한 요구 사항을 필요로 하지 않는다.
동적 정형은 몇몇 정적 자료형 검사가 불법으로 거부할 것이라는 구조를 허용한다. 예를 들어, 코드로 임의의 데이터를 실행하는 "eval" 함수가 가능하게 된다. "eval" 함수는 정적 자료형으로 가능하지만, 고급 대수적 데이터 자료형의 사용이 필요하다. 또한, 동적 정형이 자리 표시자 데이터 구조 본격적인 자료 구조 (보통 실험 및 시험의 목적) 대신에 투명하게 사용된 (모의 객체)를 허용하는 등의 방법들이 전환 코드와 프로토 타입을 수용하는 것보다 낫다.
컴퓨터 과학에서 값은 더 이상 평가될 수 없는 하나의 식이다. 한 형의 멤버들은 그 형의 값들이다. 예를 들어, 식 "1 + 2"는 표현 "3"으로 축약될 수 있기 때문에 값이 아니다. "3"은 더 이상 축약될 수 없으므로 하나의 값이다.
"한 변수의 값"은 그 환경에서의 상응되는 매핑에 의해 주어진다. 할당 가능한 변수들을 갖는 언어들에서, 이는 R-값(내용)과 L-값(위치)을 구분하기 위해 중요해진다.
선언형 (고수준) 언어에서, 값들은 참조적으로 투명해야 한다. 이것은 그 결과값이 그 값을 계산하기 위해 필요한 (하위)식이 저장되는 위치와 독립적이라는 것을 의미하며, 오직 그 위치의 내용들 (0 또는 1의 bit들)과 해석만이 중요하다.
또한 "값"은 일부 자료형에 따라 해석되는 비트의 연속이다. 뜻을 해석하는 데에 쓰이는 형에 따라 같은 연속의 비트들이 다른 값을 가질 가능성이 있다. 이를테면, 값은 정수나, 부동소수점 값, 또는 문자열이 될 수 있다.
식(式, )은 프로그래밍 언어에서 값, 변수, 연산자, 함수의 모임이다. 값을 결정하기 위해 평가될 수 있는 프로그래밍 언어의 구문 엔티티이다. 식은 부작용이 있을 수도 있고 없을 수도 있다. 보통 부작용이 있는 식은 참조 투명성의 속성을 가지지 않는다.
결과 타입으로서의 Void.
C와 대부분의 C 파생 언어들에서 void 반환 타입이 있는 함수에 대한 호출은 void 타입의 유효한 식이다. void 타입의 값들은 사용할 수 없기 때문에 이러한 식의 값은 무조건 버려진다.
노드 형제단()은 종종 노드(Nod)나 형제단으로 불리며, 웨스트우드 스튜디오의 커맨드 앤 컨커 시리즈에 등장하는 비밀결사 집단이다. 노드 형제단은 설립된 연대는 정확하지 않지만(일부에서는 기원전 1800년에 설립되었다고 함) 그들이 문명의 역사가 시작된 이래로 가장 오래된 비밀 집단이라 주장하고 있다. 노드 형제단은 타이베리움이 유독하면서도 가치가 있으며 지구 방위 기구가 유일한 악이라고 주장하는 케인이라는 수수께끼의 사나이를 따르고 있다. 노드 형제단의 상징은 모서리가 깎인 삼각형 안에 전갈 꼬리가 웅크리고 있는 것으로, 검은색과 붉은색이 주가 된다.
자료형은 컴퓨터 기억 장치에 저장된 값, 객체의 표현, 해석, 구조를 설명하면서 자료형 체계 안의 데이터의 해석에 사용된다. 여러 종류의 자료형 체계들은 다양한 범위의 자료형 안전을 보증하며, 자료형 정보를 사용하여 데이터에 접근하고 데이터를 이용하는 컴퓨터 프로그램의 유효성을 확인한다. 자료형은 "프로그램을 실행하지 않고도 결정할 수 있는 프로그램의 특성"으로 정의할 수 있다.
거의 모든 프로그래밍 언어들은 명시적으로 자료형의 개념을 포함하지만 다른 언어들은 다른 용어를 사용할 수도 있다. 일반적으로 다음을 포함한다.
자료형은 자료의 한 속성으로써 컴퓨터와 프로그래머에게 어떤 종류의 자료를 다루고 있는지 알려준다. 이는 그 자료가 어떤 값을 가질 수 있는지 또는 그 자료에 어떤 연산을 할 수 있는지를 제한한다. 이를테면, 자바 프로그래밍 언어에서 "int" 형은 값 -2,147,483,648에서 2,147,483,647 까지의 32 비트 정수 범위와, 정수를 가지고 수행할 수 있는 더하기, 빼기, 나누기, 곱하기와 같은 연산들을 표현한다. 또 다른 예로 "Colors"는 각각 빨간색, 녹색, 파란색의 양을 표시하는 세 바이트, 색깔의 이름을 가지고 있는 문자열 하나, 그리고 덧셈, 뺄셈(하지만 곱셈은 없음) 등을 포함하는 여러 연산들로 표현된다.
프로그래밍 언어마다 저마다 다른 용어를 사용하지만 거의 모든 프로그래밍 언어는 자료형의 개념을 가지고 있다. 일반 자료형은 프로그래밍 언어에서 정수, 부동소수점 숫자, 문자를 표현하는 것들을 포함하고 있으며 언어는 이에 대해 더 많은 것들을 지원할 수 있다. 대부분의 프로그래밍 언어들은 또한 프로그래머가 추가적인 자료형을 정의할 수 있도록 한다. (여러 개의 다른 형 요소를 합치고 새로운 자료형의 올바른 연산을 정의하는 식으로) 이를테면, 프로그래머는 "사람이 탄생일과 이름을 포함하고 있다"라고 해석되는 데이터를 지정한 새로운 자료형 "사람"을 만들 수 있다.
물리 주소 확장(物理住所擴張, )은 컴퓨팅에서 4 기비바이트 이상의 물리 메모리를 32 비트 시스템에서 사용할 수 있도록 만들어 주는 x86, x86-64 프로세서의 기능이다. 이 기능을 사용하려면, 먼저 운영 체제에서도 지원되는지 확인해 보아야 한다. PAE는 인텔 펜티엄 프로 이후의 CPU에서 제공하는 기능이다. (400 MHz 버스의 펜티엄 M을 제외한 펜티엄 이후 계열의 프로세서를 모두 가리킨다. AMD 호환 프로세서에서도 마찬가지이다.)
FreeBSD는 4.x 시리즈의 경우 4.9부터, 5.x 시리즈의 경우 5.1부터, 또 6.x 이후의 버전에서 PAE를 지원한다. 커널 PAE 구성 옵션이 요구된다. 로더블 커널 모듈은 모듈이 "PAE 사용" 옵션을 켜 둔 상태에서 빌드된 경우에만 PAE를 커널로 불러들일 수 있다. FreeBSD 배포판의 이진 모듈들은 PAE와 더불어 빌드되지는 않으며, 이러한 까닭에 PAE 커널로 불러들이지 못한다. 모든 드라이버가 4 기비바이트 이상의 물리 메모리를 지원하는 것이 아니다. 이러한 드라이버들은 PAE를 사용하는 시스템에서 정상 동작을 보장하지 않는다.
리눅스 커널은 2.6부터 PAE를 지원하기 시작한다. PAE를 완전하게 지원하는데, 다시 말해 32비트 컴퓨터에서 최대 64기비바이트 메모리에 접근할 수 있다. PAE를 사용하는 리눅스 커널은 PAE 기능이 없는 CPU에서 동작하지 않는다.
솔라리스.
솔라리스 운영 체제는 솔라리스 7부터 PAE를 지원한다. 모든 서드파티 드라이버가 4기비바이트 이상의 물리 메모리를 지원하는 것은 아니다. 이러한 드라이버들은 PAE를 사용하는 시스템에서 정상 동작을 보장하지 않는다.
PAE는 다음의 32비트 버전의 윈도우에서 지원된다:
NX 기능이 있는 프로세서를 사용하는 경우, 윈도우 XP 서비스팩 2 이후에서는 기본적으로 PAE를 사용하여 NX를 활성화시키지만, 드라이버 호환 문제로 인해 물리 메모리 공간을 32비트로 제한한다. PAE가 정상적으로 동작하지 않는다면 윈도 서버에서 다음의 호환성 핵을 사용하지 않게 하여 해결할 수도 있다. 를 참조하라.
미래에셋그룹은 금융업 중심으로 구성된 글로벌 투자전문 그룹이다.
혁신.
2017년 대한민국의 대표적인 금융 혁신사례로 미래에셋 케이스가 세계적 학술 기관인 더 케이스 센터에 등재되었다. 미래에셋은 2010년 하버드 대학교 비즈니스스쿨에서도 케이스 스터디로 채택되었다.
"미래에셋은 젊은이의 희망이 되겠습니다"라는 비전으로 2000년 3월 28일 박현주 회장이 설립하였다. 현재 장학사업, 사회복지사업, 나눔문화사업 등 사회공헌사업을 전개하고 있다.
구문 강조(構文強調, syntax highlighting)는 문자열(특히 소스 코드)을 형식의 틀에 따라 여러 가지 색과 글꼴로 다르게 보여 주는 문서 편집기의 기능이다. 이러한 기능은 프로그래밍 언어나 마크업 언어와 같은 구조화 언어로 프로그램을 짜기 쉽게 해 주며, 구문 오류와 구조가 눈에 더 잘 들어오게 만든다. 일부 편집기들은 또한 구문 강조 외에 다른 기능들을 포함하고 있는데, 이를테면 코드 폴딩과 맞춤법 검사기가 있다.
문법 강조의 개념은 구조 편집기의 개념과 상당 부분 겹친다. 코드를 위한 최초의 편집기 가운데 하나는 Wilfred Hansen의 1969년 코드 편집기 에밀리(Emily)이다. 고급 언어 독립 코드 완성 기능을 제공하였지만, 문법 강조 기능이 있는 현대의 편집기들과는 다르게 문법적으로 유효하지 않은 프로그램들을 작성하는 것은 불가능했다.
문법 요소.
// Create "window_count" Window objects:
const auto window_count = int{10};
auto windows = std::array&lt;std::shared_ptr&lt;Window&gt;, max_window_count&gt;{};
for (auto i = int{0}; i &lt; window_count; ++i) {
windows[i] = std::make_shared&lt;Window&gt;();
컴퓨터 프로그래밍에서 문(文, )은 명령형 프로그래밍 언어의 가장 작은 독립 요소이다. 프로그램은 하나 이상의 문이 연결되어 형성된다. 문은 식()과 같은 내부 요소를 포함할 수 있다.
C를 포함한 많은 프로그래밍 언어는 실행 코드와 정의를 포함하는 문과 더불어 문과 정의 사이에 구별을 둔다. 단순 문과 복합 문 사이에 구별을 둘 수 있다. 뒤에 나오는 것은 구성 요소로서의 문을 포함한다.
서비스 팩(Service pack, SP)은 단일 설치본 형식의 소프트웨어 프로그램에 대한 업데이트, 수정 사항, 개선 사항의 모임이다. 마이크로소프트, 오토데스크와 같은 많은 회사들이 개별 패치의 수에 어느 정도 제한이 있다고 판단될 때 보통 서비스 팩을 공개한다. 서비스 팩을 설치하는 것은 쉽고 수많은 패치를 개별적으로 설치하는 것보다 오류가 일어날 가능성이 더 낮다.
서비스 팩은 보통 SP1, SP2와 같이 짧게 줄여서 숫자가 붙는다. 이를테면 윈도우 XP의 서비스팩 2도 마찬가지이다. 대한민국의 인터넷 문화에서는 "서팩"으로 줄여 말하기도 한다.
추상대수학에서 갈루아 이론(Galois理論, )은 체의 확대를 그 자기동형군을 통해 연구하는 이론이다. 체의 확대 가운데 갈루아 확대들은 그 자기동형군에 의하여 완전히 결정되며, 이 경우 자기동형군을 갈루아 군이라고 한다.
갈루아 이론은 체 formula_1의 갈루아 확대를 다룬다. 가장 큰 갈루아 확대는 분해 가능 폐포 formula_2이며, 모든 갈루아 확대는 formula_2의 부분 확대이다.
갈루아 확대 formula_4에 대하여, 그 부분 확대들의 격자 formula_5 및 갈루아 부분 확대들의 격자
를 정의할 수 있다. 또한, 갈루아 군 formula_7는 사유한군
이므로, 사유한 위상을 주어 위상군으로 만들 수 있다. 갈루아 군의 사유한 위상을 크룰 위상()이라고 한다. 그렇다면, formula_7의 닫힌 부분군들의 격자
또한, 둘째 동형사상은 첫째 동형사상의 국한이다. 이 동형사상을 갈루아 접속()이라고 하며, 구체적으로
에 의하여 주어진다. 또한, 모든 formula_16에 대하여
절대 갈루아 이론.
의 부분군이다. 이를 절대 갈루아 군()이라고 한다.
아벨 갈루아 군의 예.
유리수체의 갈루아 확대 formula_20을 생각해 보자. 이 확대의 갈루아 군은 클라인 4원군이다.
이 경우, 두 생성원 formula_22는 formula_20에 다음과 같이 작용한다.
이 경우, 부분 확대들의 격자와 갈루아 군의 부분군의 반대 격자는 다음과 같다. 두 격자가 서로 동형인 것을 알 수 있다.
비아벨 갈루아 군의 예.
갈루아 군이 아벨 군이 아닌 가장 단순한 경우는 다음과 같다. formula_26이며 formula_27이라고 하자. 그렇다면 갈루아 확대 formula_28의 갈루아 군은 3차 대칭군과 동형이며, 다음과 같다.
여기서 갈루아 확대들은 formula_32, formula_33, formula_28이며, 이들은 갈루아 군의 정규 부분군에 대응한다. 나머지 확대들은 분해 가능 확대이지만 정규 확대가 아니므로 갈루아 확대가 아니며, 이에 대응하는 부분군들은 정규 부분군이 아닌 부분군이다.
갈루아 이론을 통해, 방정식을 거듭 제곱근만을 사용하여 풀 수 있는지 결정할 수 있다. 역사적으로, 갈루아 이론은 이 문제를 해결하기 위해 도입되었다.
유리수체에 대한 다항식 formula_35을 풀 수 있는지 여부는 그 분해체 formula_36의 구조를 분석하여 알 수 있다. 체 formula_1에 거듭 제곱근 formula_38를 추가하여 확장시키는 경우, 그 갈루아 군은 순환군 formula_39이다. 즉, 거듭 제곱근을 계속하여 추가하여 얻는 체의 확대는 그 갈루아 군을 일련의 아벨 군들로 분해할 수 있는 경우다. 이렇게, 아벨 군들로 분해할 수 있는 군을 가해군이라고 하며, 다항식의 근을 거듭 제곱근으로 나타낼 수 있는지 여부는 그 다항식이 가해군인지와 동치이다.
유리수체에 대하여, 일반적인 (즉, 해가 겹치지 않는) formula_40차 다항식의 분해체의 갈루아 군은 formula_40차 대칭군 formula_42이다. formula_43일 경우 formula_42은 가해군이지만, formula_45일 경우 formula_42은 가해군이 아니다. 즉, 일반적인 5차 이상의 방정식의 근은 거듭제곱근만으로 나타낼 수 없다. 이를 아벨-루피니 정리()라고 한다. 그러나 특수한 5차 이상 방정식의 경우 그 분해체의 갈루아 군이 가해군일 수 있으며, 이 경우 거듭제곱근으로 풀 수 있다.
작도 가능성.
고전 기하학의 작도는 오직 직선과 원만을 사용한다. 원은 이차 곡선이므로, 이는 이차 방정식을 푸는 것과 같다. 기약 이차 방정식의 근을 추가하는 확대는 차수가 2인 확대이므로, 고전적 작도로서 작도할 수 있는 두 선분의 길이의 비는 항상 유리수체의 이차 확대들
가운데 하나에 속해야 한다. 이러한 수를 작도 가능한 수라고 한다.
이를 사용하여, 여러 고전적 작도 문제의 (불)가능성을 쉽게 보일 수 있다. 예를 들어, 입방 배적 문제는 formula_49가 작도 가능한지 여부인데,
이며, 따라서 formula_49는 작도할 수 없다.
마찬가지로, 원적 문제는 formula_53가 작도 가능한지 여부를 묻는다. 원주율은 초월수이므로, formula_53 역시 초월수이다. (이는 두 대수적 수의 곱은 대수적 수이기 때문이다.) 따라서 원적 문제는 풀 수 없다.
각의 3등분 문제 역시 3차 방정식의 근이 필요하므로 풀 수 없다. 구체적으로, 60도 각은 작도 가능하지만, 그 3등분인 20도 각은 작도 가능하지 않다. 이는 formula_55가 작도 가능한 수가 아니라고 말하는 것과 같다. 구체적으로, 삼각 함수의 세배각 공식
을 생각하자. 여기에 formula_57를 대입하면
을 얻는다. 즉, formula_55는 3차 방정식 formula_60의 해이다. 이는 기약 3차 방정식이다. 실제로, formula_61와 같이 치환하면 이는 formula_62이 되는데, 아이젠슈타인 판정법에 의하여 좌변은 기약 다항식이다. 즉,
프랑스의 수학자 에바리스트 갈루아가 제창하였다. 갈루아는 유한 차수 갈루아 확대의 경우, 치환군을 이용해서 주어진 방정식의 다양한 해들이 서로 어떻게 대응되는가를 기술하였고, 이 과정에서 군의 개념을 도입하였다.
이후 갈루아 이론은 리하르트 데데킨트, 레오폴트 크로네커, 에밀 아르틴 등에 의해 추상화되었고, 무한한 차수의 갈루아 확대의 경우가 사유한군 이론의 도입으로 완성되었다. 알렉산더 그로텐디크는 갈루아 이론을 대수기하학을 사용하여 임의의 스킴의 에탈 기본군에 대한 이론으로 일반화시켰다.
하이브리드 드라이브(hybrid drive)는 버퍼가 큰 컴퓨터 디스크 드라이브의 한 형태이다. 솔리드 스테이트 하이브리드 드라이브(solid state hybrid drive, SSHD)라고도 한다. 표준 드라이브와의 차이점은 용량이 큰 비휘발성 플래시 메모리를 이용하고 있다는 것에 있다. 이로써 일반 용도에서 데이터를 캐시로 처리할 수 있다. 일반 하드 드라이브의 플래터는 계속 회전하는 반면 비휘발성 데이터 기억 장치의 대용량 버퍼를 사용함으로써 하드 드라이브의 플래터는 대부분의 시간에 유휴 상태에 있을 수 있다. 수많은 이익이 있는데, 주로 빠른 속도를 들 수 있고, 전력 소비를 낮추며, 신뢰성을 개선하고 더 빠른 시동 과정을 거칠 수 있게 한다.
하이브리드 드라이브는 2007년 초에 노트북 컴퓨터를 중심으로 처음 개발되었다. 삼성이 처음 새로운 드라이브를 시장에 내 놓았고 최초의 하이브리드 드라이브를 2007년 3월에 OEM에 공개하였다.
반도체 메모리(semiconductor memory, )는 컴퓨터 메모리와 같이 디지털 데이터 저장에 사용되는 디지털 전자 반도체 소자이다. 일반적으로 규소 집적 회로 메모리 칩의 금속 산화물 반도체 (MOS) 메모리 셀 내에 데이터가 저장되는 소자를 지칭한다. 다양한 반도체 기술을 사용하는 수많은 종류가 존재한다. 랜덤 액세스 메모리 (RAM)의 두 가지 주요 유형은 메모리 셀당 여러 트랜지스터를 사용하는 정적 램 (SRAM)과 셀당 트랜지스터 하나와 MOS 캐패시터를 사용하는 동적 램 (DRAM)이다. 비휘발성 메모리 (EPROM, EEPROM, 플래시 메모리 등)는 셀당 단일 플로팅 게이트 트랜지스터로 구성된 플로팅 게이트 메모리 셀을 사용한다.