Yang lain telah menjelaskan kerangka kerja umum untuk desain (finive projective plane) dan menunjukkan bagaimana menghasilkan pesawat projektif terbatas orde utama. Saya hanya ingin mengisi beberapa celah.
Pesawat proyektif yang terbatas dapat dihasilkan untuk banyak pesanan yang berbeda, tetapi mereka paling mudah dalam hal pesanan utama p
. Kemudian bilangan bulat modulo p
membentuk bidang terbatas yang dapat digunakan untuk menggambarkan koordinat untuk titik dan garis dalam pesawat. Ada 3 jenis koordinat untuk titik-titik: (1,x,y)
, (0,1,x)
, dan (0,0,1)
, di mana x
dan y
dapat mengambil nilai-nilai dari 0
ke p-1
. 3 jenis poin menjelaskan rumus p^2+p+1
untuk jumlah poin dalam sistem. Kami juga bisa menggambarkan garis dengan 3 jenis yang sama dari koordinat: [1,x,y]
, [0,1,x]
, dan [0,0,1]
.
Kami menghitung apakah suatu titik dan garis adalah insiden dengan apakah produk titik dari koordinatnya sama dengan 0 mod p
. Jadi misalnya titik (1,2,5)
dan garis [0,1,1]
adalah kejadian p=7
sejak saat itu 1*0+2*1+5*1 = 7 == 0 mod 7
, tetapi titik (1,3,3)
dan garis [1,2,6]
bukan kejadian sejak itu 1*1+3*2+3*6 = 25 != 0 mod 7
.
Menerjemahkan ke dalam bahasa kartu dan gambar, itu berarti kartu dengan koordinat (1,2,5)
berisi gambar dengan koordinat [0,1,1]
, tetapi kartu dengan koordinat (1,3,3)
tidak berisi gambar dengan koordinat [1,2,6]
. Kita dapat menggunakan prosedur ini untuk mengembangkan daftar kartu lengkap dan gambar-gambar yang dikandungnya.
Ngomong-ngomong, saya pikir lebih mudah untuk menganggap gambar sebagai titik dan kartu sebagai garis, tetapi ada dualitas dalam geometri projektif antara titik dan garis sehingga benar-benar tidak masalah. Namun, pada bagian selanjutnya saya akan menggunakan poin untuk gambar dan garis untuk kartu.
Konstruksi yang sama berfungsi untuk bidang terbatas apa pun. Kita tahu bahwa ada bidang keteraturan terbatas q
jika dan hanya jika q=p^k
, kekuatan utama. Bidang ini disebut GF(p^k)
yang merupakan singkatan dari "bidang Galois". Ladang tidak mudah dibangun dalam wadah listrik utama seperti pada wadah listrik utama.
Untungnya, kerja keras telah dilakukan dan diimplementasikan dalam perangkat lunak bebas, yaitu Sage . Untuk mendapatkan desain bidang proyektif pesanan 4, misalnya, ketikkan saja
print designs.ProjectiveGeometryDesign(2,1,GF(4,'z'))
dan Anda akan mendapatkan output yang mirip
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]]>
Saya menafsirkan di atas sebagai berikut: ada 21 gambar berlabel 0 hingga 20. Setiap blok (garis dalam geometri projektif) memberi tahu saya gambar mana yang muncul pada kartu. Misalnya, kartu pertama memiliki gambar 0, 1, 2, 3, dan 20; kartu kedua akan memiliki gambar 0, 4, 8, 12, dan 16; dan seterusnya.
Sistem pesanan 7 dapat dihasilkan oleh
print designs.ProjectiveGeometryDesign(2,1,GF(7))
yang menghasilkan output
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]]>