다른 사람들은 디자인의 일반적인 프레임 워크 (유한 투영 평면)를 설명하고 소수의 유한 투영 평면을 생성하는 방법을 보여주었습니다. 나는 약간의 차이를 채우고 싶습니다.
유한 투영면은 여러 가지 다른 순서로 생성 될 수 있지만, 소수의 경우 가장 간단합니다 p
. 그런 다음 정수 모듈러스 p
는 유한 필드를 형성하여 평면의 점과 선에 대한 좌표를 설명하는 데 사용할 수 있습니다. 이 점에 대한 좌표의 3 가지 종류가 있습니다 (1,x,y)
, (0,1,x)
그리고 (0,0,1)
여기서 x
과 y
에서 값을 취할 수 0
에 p-1
. 3 가지 종류의 포인트는 p^2+p+1
시스템의 포인트 수에 대한 공식 을 설명합니다 . : 우리는 또한 좌표의 같은 3 가지 종류의 라인을 설명 할 수 있습니다 [1,x,y]
, [0,1,x]
하고 [0,0,1]
.
좌표의 내적이 0 mod인지에 따라 점과 선의 입사 여부를 계산합니다 p
. 예를 들어 그 이후 에는 점 (1,2,5)
과 선 [0,1,1]
이 입사 하지만 그 p=7
이후 1*0+2*1+5*1 = 7 == 0 mod 7
에는 점 (1,3,3)
과 선 [1,2,6]
이 입사되지 않습니다 1*1+3*2+3*6 = 25 != 0 mod 7
.
카드와 그림의 언어로 번역하면 좌표 (1,2,5)
가있는 카드에는 좌표 가있는 그림이 포함 [0,1,1]
되지만 좌표 (1,3,3)
가 있는 카드에는 좌표 가있는 그림이 포함되지 않습니다 [1,2,6]
. 이 절차를 사용하여 전체 카드 목록과 그 안에 들어있는 그림을 개발할 수 있습니다.
그건 그렇고, 그림을 점과 카드로 선으로 생각하는 것이 더 쉽다고 생각하지만 점과 선 사이의 투영 지오메트리에는 이중성이 있으므로 실제로 중요하지 않습니다. 그러나 다음에 나는 그림에 포인트를 사용하고 카드에 라인을 사용할 것입니다.
유한 필드에도 동일한 구성이 적용됩니다. 우리는 q
단지 q=p^k
주된 힘 이라면 유한 한 순서의 필드가 있다는 것을 알고 있습니다. 필드가 호출됩니다 GF(p^k)
"갈루아 필드"를 의미한다. 필드는 프라임 케이스에서와 같이 프라임 전원 케이스에서 구성하기가 쉽지 않습니다.
다행스럽게도이 노력은 이미 자유 소프트웨어 인 Sage 에서 수행되고 구현되었습니다 . 예를 들어, 순서 4의 투영 평면 설계를 얻으려면
print designs.ProjectiveGeometryDesign(2,1,GF(4,'z'))
그리고 당신은 다음과 같은 출력을 얻을 것입니다
ProjectiveGeometryDesign<points=[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
11, 12, 13, 14, 15, 16, 17, 18, 19, 20], blocks=[[0, 1, 2, 3, 20], [0,
4, 8, 12, 16], [0, 5, 10, 15, 19], [0, 6, 11, 13, 17], [0, 7, 9, 14,
18], [1, 4, 11, 14, 19], [1, 5, 9, 13, 16], [1, 6, 8, 15, 18], [1, 7,
10, 12, 17], [2, 4, 9, 15, 17], [2, 5, 11, 12, 18], [2, 6, 10, 14, 16],
[2, 7, 8, 13, 19], [3, 4, 10, 13, 18], [3, 5, 8, 14, 17], [3, 6, 9, 12,
19], [3, 7, 11, 15, 16], [4, 5, 6, 7, 20], [8, 9, 10, 11, 20], [12, 13,
14, 15, 20], [16, 17, 18, 19, 20]]>
위의 내용을 다음과 같이 해석합니다. 0에서 20까지 레이블이 지정된 21 개의 그림이 있습니다. 각 블록 (투영 형상의 선)은 카드에 어떤 그림이 나타나는지 알려줍니다. 예를 들어, 첫 번째 카드에는 사진 0, 1, 2, 3 및 20이 있습니다. 두 번째 카드에는 사진 0, 4, 8, 12 및 16이 있습니다. 등등.
주문 7의 시스템은
print designs.ProjectiveGeometryDesign(2,1,GF(7))
출력을 생성하는
ProjectiveGeometryDesign<points=[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
47, 48, 49, 50, 51, 52, 53, 54, 55, 56], blocks=[[0, 1, 2, 3, 4, 5, 6,
56], [0, 7, 14, 21, 28, 35, 42, 49], [0, 8, 16, 24, 32, 40, 48, 50], [0,
9, 18, 27, 29, 38, 47, 51], [0, 10, 20, 23, 33, 36, 46, 52], [0, 11, 15,
26, 30, 41, 45, 53], [0, 12, 17, 22, 34, 39, 44, 54], [0, 13, 19, 25,
31, 37, 43, 55], [1, 7, 20, 26, 32, 38, 44, 55], [1, 8, 15, 22, 29, 36,
43, 49], [1, 9, 17, 25, 33, 41, 42, 50], [1, 10, 19, 21, 30, 39, 48,
51], [1, 11, 14, 24, 34, 37, 47, 52], [1, 12, 16, 27, 31, 35, 46, 53],
[1, 13, 18, 23, 28, 40, 45, 54], [2, 7, 19, 24, 29, 41, 46, 54], [2, 8,
14, 27, 33, 39, 45, 55], [2, 9, 16, 23, 30, 37, 44, 49], [2, 10, 18, 26,
34, 35, 43, 50], [2, 11, 20, 22, 31, 40, 42, 51], [2, 12, 15, 25, 28,
38, 48, 52], [2, 13, 17, 21, 32, 36, 47, 53], [3, 7, 18, 22, 33, 37, 48,
53], [3, 8, 20, 25, 30, 35, 47, 54], [3, 9, 15, 21, 34, 40, 46, 55], [3,
10, 17, 24, 31, 38, 45, 49], [3, 11, 19, 27, 28, 36, 44, 50], [3, 12,
14, 23, 32, 41, 43, 51], [3, 13, 16, 26, 29, 39, 42, 52], [4, 7, 17, 27,
30, 40, 43, 52], [4, 8, 19, 23, 34, 38, 42, 53], [4, 9, 14, 26, 31, 36,
48, 54], [4, 10, 16, 22, 28, 41, 47, 55], [4, 11, 18, 25, 32, 39, 46,
49], [4, 12, 20, 21, 29, 37, 45, 50], [4, 13, 15, 24, 33, 35, 44, 51],
[5, 7, 16, 25, 34, 36, 45, 51], [5, 8, 18, 21, 31, 41, 44, 52], [5, 9,
20, 24, 28, 39, 43, 53], [5, 10, 15, 27, 32, 37, 42, 54], [5, 11, 17,
23, 29, 35, 48, 55], [5, 12, 19, 26, 33, 40, 47, 49], [5, 13, 14, 22,
30, 38, 46, 50], [6, 7, 15, 23, 31, 39, 47, 50], [6, 8, 17, 26, 28, 37,
46, 51], [6, 9, 19, 22, 32, 35, 45, 52], [6, 10, 14, 25, 29, 40, 44,
53], [6, 11, 16, 21, 33, 38, 43, 54], [6, 12, 18, 24, 30, 36, 42, 55],
[6, 13, 20, 27, 34, 41, 48, 49], [7, 8, 9, 10, 11, 12, 13, 56], [14, 15,
16, 17, 18, 19, 20, 56], [21, 22, 23, 24, 25, 26, 27, 56], [28, 29, 30,
31, 32, 33, 34, 56], [35, 36, 37, 38, 39, 40, 41, 56], [42, 43, 44, 45,
46, 47, 48, 56], [49, 50, 51, 52, 53, 54, 55, 56]]>