BAB 4 IMPLEMENTASI DAN EVALUASI RAM 953 MB DDR. Hard disk 160 GB. Mouse Logitech. Professional Service Pack 3. Development Kit 6 Update 2

dokumen-dokumen yang mirip
BAB 4 IMPLEMENTASI DAN EVALUASI. Processor Intel Pentium IV 2.41GHz RAM 512 MB DDR. Hard disk 40 GB. Monitor 15 Samsung SyncMaster 551v

BAB 4 ANALISIS DAN SIMULASI

PIRANTI LUNAK PENGUJIAN STRUKTUR MATEMATIKA GRUP, RING, FIELD BERBASIS OSP (Open Source Program)

BAB 4 IMPLEMENTASI DAN EVALUASI PROGRAM. pengujian struktur aljabar, yaitu implementasi sistem tersebut dan juga evaluasi dari

BAB 3 PERANCANGAN PROGRAM. Waterfall Model. Hasil analisis yang telah dilakukan adalah sebagai berikut : operasi yang paling banyak digunakan.

BAB 4 IMPLEMENTASI DAN HASIL PENELITIAN. Pada bab 4 ini akan dijelaskan hasil rancangan sistem aplikasi optimizer, yaitu

BAB 4 IMPLEMENTASI DAN EVALUASI Implementasi Program Simulasi. mengevaluasi program simulasi adalah sebagai berikut :

BAB 4 IMPLEMENTASI DAN EVALUASI

BAB 4 IMPLEMENTASI DAN EVALUASI

BAB 4 IMPLEMENTASI DAN EVALUASI. Untuk menjalankan alat bantu normalisasi ini dibutuhkan sarana perangkat keras

BAB 4 IMPLEMENTASI DAN EVALUASI. Untuk implementasi pada Oke Bakery ada spesifikasi-spesifikasi yang dibutuhkan

Processor Intel Pentium III 233MHz

BAB 2 LANDASAN TEORI

BAB 4 IMPLEMENTASI DAN EVALUASI PROGRAM. implementasi dari program aplikasi yang dibuat. Penulis akan menguraikan

BAB IV HASIL DAN UJI COBA

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM. Untuk membuat sistem perlu dilakukan analisa sistem tersebut sehingga dapat

PERANCANGAN PIRANTI LUNAK PENGUJIAN STRUKTUR ALJABAR GRUP KHUSUS (ABELIAN, SIKLIK & HOMOMORFISMA)

BAB V PENGUJIAN DAN IMPLEMENTASI SISTEM. perangkat lunak secara manual maupun otomatis untuk menguji apakah

BAB 4 IMPLEMENTASI DAN EVALUASI. Perangkat keras yang digunakan untuk membuat aplikasi ini yaitu: 1. Processor Intel(R) Core(TM) Duo 2.

BAB 4 IMPLEMENTASI DAN EVALUASI

BAB 4 PENGUJIAN PROGRAM DAN HASIL PENGUJIAN

BAB IV IMPLEMENTASI DAN PENGUJIAN

11. Tampilan Tambah Barang

BAB 4 IMPLEMENTASI DAN EVALUASI PROGRAM

BAB 2 LANDASAN TEORI. aljabar merupakan suatu himpunan beserta dengan operasi-operasi pada himpunan

BAB 4 IMPLEMENTASI DAN EVALUASI. menjadi dua, yaitu perangkat keras (hardware) dan perangkat lunak (software). 1. Processor Pentium III 1 Ghz

BAB IV IMPLEMENTASI DAN EVALUASI. pertama adalah spesifikasi dari perangkat keras dan yang kedua adalan

PERANCANGAN PIRANTI LUNAK PENGUJIAN STRUKTUR ALJABAR GRUP KHUSUS (ABELIAN, SIKLIK & HOMOMORFISMA)

BAB 4 IMPLEMENTASI DAN EVALUASI

BAB V IMPLEMENTASI DAN PEMBAHASAN

BAB 4 IMPLEMENTASI DAN EVALUASI PROGRAM. Processor : Intel Pentium IV 1.60 GHz RAM : 256 MB

BAB V IMPLEMENTASI SISTEM

BAB IV IMPLEMENTASI DAN PENGUJIAN

BAB 4 IMPLEMENTASI DAN EVALUASI

BAB IV IMPLEMENTASI DAN EVALUASI

BAB 4 IMPLEMENTASI DAN EVALUASI. terdapat pada bab sebelumnya dan juga evaluasi terhadap program tersebut.

BAB IV IMPLEMENTASI DAN EVALUASI. Pada bab empat ini akan dibahas mengenai hasil analisis dan

BAB V IMPLEMENTASI SISTEM

BAB 4 IMPLEMENTASI DAN EVALUASI. Perangkat keras yang digunakan untuk merancang sistem ini adalah: Processor : Intel Pentium IV 2,13 GHz

BAB 3 METODOLOGI. Metodologi penelitian yang digunakan dalam penulisan ini adalah studi

PENGEMBANGAN PROGRAM APLIKASI PENGUJIAN ALJABAR ABSTRAK (RING dan TURUNANNYA, FIELD, IDEAL) BERBASIS OPEN SOURCE

BAB IV IMPLEMENTASI DAN EVALUASI. Sebelum menjalankan program aplikasi ini ada elemen-elemen

BAB II TINJAUAN PUSTAKA

BAB III. Standard Kompetensi. 3. Mahasiswa dapat menjelaskan pengertian homomorfisma ring dan menggunakannya dalam kehidupan sehari-hari.

BAB 4 IMPLEMENTASI DAN EVALUASI

BAB V PENGUJIAN DAN IMPLEMENTASI SISTEM. Pengujian sistem dimaksudkan untuk menguji semua element element

BAB 4 IMPLEMENTASI DAN EVALUASI SISTEM. dari Sistem Informasi Geografi(SIG) ini adalah sebagai berikut:

BAB V IMPLEMENTASI DAN PEMBAHASAN

BAB 4 IMPLEMENTASI DAN EVALUASI

BAB 4 IMPLEMENTASI DAN EVALUASI

BAB IV IMPLEMENTASI. dan perangkat lunak adalah sebagai berikut.

BAB 4 IMPLEMENTASI DAN EVALUASI. 4.1 Spesifikasi Perangkat Keras dan Pera ngkat Lunak. program aplikasi dengan baik adalah sebagai berikut:

BAB V IMPLEMENTASI SISTEM

Manual Installation Perceptive Content Web

BAB IV IMPLEMENTASI DAN EVALUASI

BAB 4 IMPLEMENTASI DAN TESTING Perkiraan Kebutuhan Piranti Keras (Hardware) b. Memory DDR 512MB

BAB IV IMPLEMENTASI DAN EVALUASI. menghasilkan informasi-informasi yang sesuai dengan kebutuhan administrasi

(User Manual) Sistem Informasi Manajemen Kependudukan dan Aset Desa Desaku. Buku Petunjuk Penggunaan Aplikasi

PERANCANGAN PROGRAM. struktur/hirarki menu, State Transition Diagram (STD), modul dan pseudocode, serta

BAB V IMPLEMENTASI DAN PENGUJIAN SISTEM

BAB V IMPLEMENTASI SISTEM

BAB V IMPLEMENTASI DAN PEMBAHASAN. terbagi menjadi dua, yaitu perangkat keras dan perangkat lunak.

BAB 4 IMPLEMENTASI DAN EVALUASI

BAB IV IMPLEMENTASI DAN PENGUJIAN

Membuat File Database & Tabel

BAB IV DESKRIPSI PEKERJAAN. dapat mencatat debit tertinggi sungai. Aplikasi yang ada pada Balai Besar

tentang perubahan kondisi aplikasi dijalankan :

BAB 4 IMPLEMENTASI DAN EVALUASI. Berikut ini merupakan spesifikasi perangkat keras dan perangkat lunak yang

BAB III METODOLOGI PENELITIAN

BAB 4 IMPLEMENTASI DAN EVALUASI. menggunakan metode pendekatan mundur ini, dibuat dan diuji pada komputer dengan

Berikut merupakan prosedur penggunaan pada non-login :

BAB IV IMPLEMENTASI DAN PENGUJIAN. dan pengujian merupakan langkah yang dilakukan setelah melakukan

BAB IV IMPLEMENTASI DAN EVALUASI

BAB IV HASIL DAN UJI COBA

BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM

BAB IV IMPLEMENTASI DAN PENGUJIAN. dilanjutkan dengan pengujian terhadap aplikasi. Kebutuhan perangkat pendukung dalam sistem ini terdiri dari :

BAB V IMPLEMENTASI SISTEM. tersebut siap diterapkan atau diimplementasikan. Tahap Implementasi Sistem

BAB III METODOLOGI PENELITIAN. Penelitian ini dilakukan di Jurusan Ilmu Komputer, Fakultas Matematika dan

BAB V IMPLEMENTASI DAN PEMBAHASAN. menggunakan Aplikasi Penerimaan dan Pembayaran Siswa/Siswi Baru yaitu: Software yang mendukung aplikasi ini, yaitu:

BAB V IMPLEMENTASI DAN PEMBAHASAN. menggunakan program Aplikasi Pemesanan untuk Jasa Amal pada Yayasan Dana

BAB V IMPLEMENTASI DAN PENGUJIAN

RANCANGAN PEMBUATAN PROGRAM PENGUJIAN STRUKTUR MATEMATIKA RING DAN FIELD

BAB II KERANGKA TEORITIS. komposisi biner atau lebih dan bersifat tertutup. A = {x / x bilangan asli} dengan operasi +

BAB V IMPLEMENTASI SISTEM

19. Form Surat Jalan (FrmSuratJalan.frm)

IMPLEMENTASI DAN EVALUASI

BAB III METODOLOGI Analisis Kebutuhan Fungsi dan Kinerja Fungsi dan kinerja yang dibutuhkan dalam aplikasi ini adalah sebagai berikut:

BAB 3 METODOLOGI PENELITIAN. Desain penelitian untuk Sistem Optimalisasi Produksi ini menggunakan

BAB 4 IMPLEMENTASI DAN EVALUASI

BAB V IMPLEMENTASI DAN PEMBAHASAN. menggunakan Aplikasi Pengelolaan Data Anak Tuna Grahita yaitu:

BAB 4 IMPLEMENTASI DAN EVALUASI. telah di identifikasi pada bab 3, saatnya untuk melakukan implementasi dan Kebutuhan Sumberdaya Aplikasi

BAB 4 IMPLEMENTASI DAN EVALUASI

BAB V TESTING DAN IMPLEMENTASI SISTEM

BAB IV IMPLEMENTASI DAN PENGUJIAN

BAB IV IMPLEMENTASI DAN PENGUJIAN. melakukan coding, pengujian juga dilakukan untuk memastikan aplikasi dapat

BAB 4 IMPLEMENTASI DAN EVALUASI. aplikasi sistem informasi geografis ini adalah : a. Spesifikasi perangkat keras minimum : memori 64 MB.

BAB 4 IMPLEMENTASI DAN EVALUASI SISTEM

BAB IV IMPLEMENTASI DAN PENGUJIAN

BAB IV IMPLEMENTASI DAN EVALUASI. perancangan sistem yang telah dibuat sebelumnya. Implementasi terdiri dari:

BAB IV IMPLEMENTASI DAN PENGUJIAN. lingkungan implementasi, pengkodean, dan interface dari aplikasi sistem tersebut.

Transkripsi:

BAB 4 IMPLEMENTASI DAN EVALUASI 4.1 Spesifikasi Perangkat Keras Spesifikasi dari perangkat keras yang digunakan dalam perancangan program adalah sebagai berikut. Processor Intel Pentium Dual-Core CPU T4400 @ 2.20GHz RAM 953 MB DDR Hard disk 160 GB Mouse Logitech 4.2 Spesifikasi Perangkat Lunak Spesifikasi dari perangkat lunak yang digunakan dalam perancangan program adalah sebagai berikut. Sistem operasi yang digunakan adalah Microsoft Windows XP Professional Service Pack 3 Library Java, dengan meng-install Java Standard Edition Development Kit 6 Update 2 Untuk perancangan program, penulis menggunakan Eclipse SDK versi 3.7.1 untuk perancangan modul logika maupun antarmuka program.

42 4.3 Pengoperasian dan Antarmuka Program Pengoperasian program ini adalah sebagai berikut. 1. Penggunaan bahasa Java memungkinkan aplikasi ini berjalan pada semua jenis platform. 2. Jalankan file UjiSA.jar. 3. Tampilan awal yang menyapa pengguna adalah layar tampilan utama. Pada tampilan utama ini tertulis judul aplikasi Testing Algebra Structure Program Apllication, rincian hal apa saja yang dapat diuji, identitas singkat penulis, beserta nama kedua dosen pembimbing. Penjelasan singkat tersebut diakhiri dengan JButton OK. Pengguna tidak memiliki pilihan lain selain memilih tombol OK ini. Gambar 4.1 Layar Tampilan Utama

43 4. Setelah JButton OK dipilih, akan tampil tampilan menu utama program. Pengguna memiliki 4 pilihan tab menu di sebelah kiri. Masing-masing tab menu memiliki tiga sampai empat sub-tab yang masing-masing memuat tampilan antar muka yang memiliki fungsi masing-masing. Gambar 4.2 Tampilan menu pengujian Ring, Commutative Ring, Division Ring dan Field tab Input Data 5. Pada tampilan ini, terdapat sebuah JTextField yang dapat digunakan pengguna untuk memasukkan elemen dari struktur al;jabar yang ingin diuji, JButton Add untuk melakukan fungsi menambahkan elemen di JtextField ke dalam JList, JButton Delete untuk menghapus elemen, JButton Delete All untuk mengosongkan JList, JButton New untuk menyediakan form baru bagi proses pengujian, dan JButton Process yang menandakan pengguna telah selesai memasukkan elemen struktur aljabar, dan siap untuk mengisi tabel Cayley. Ada 2 validasi yang berkaitan JButton Add. Yang pertama, pengguna tidak dapat

44 memasukkan elemen kosong ke dalam JList. Jika pengguna tidak sengaja menekan JButton Add sebelum diisi elemennys, pengguna akan diberi pesan berikut. Gambar 4.3 Tampilan jika pengguna memasukkan himpunan kosong. Validasi kedua ialah, sebelum sebuah elemen ditambahkan kedalam JList, terlebih dulu dilakukan pengecekan apakah elemen tersebut sudah berada pada JList. Jika elemen yang bersangkutan sudah ada di JList, maka akan diberikan pesan Gambar 4.4 Tampilan pesan jika terdapat redudansi elemen pada JList Pengguna juga harus memilih salah satu elemen jika ingin melakukan penghapusan salah satu elemen dengan JButton Delete. Jika pengguna telah menekan JButton Delete sebelum memilih elemen, akan ditampilkan pesan berikut.

45 Gambar 4.5 Tampilan pesan jika pengguna telah menekan JButton Delete sebelum memilih elemen 6. Setelah pengguna selesai memasukkan elemen dengan jumlah minimal 2 elemen dalam satu himpunan, pengguna dapat memasukkan isi tabel Cayley. Gambar 4.6 Tampilan untuk pengisian tabel Cayley 7. Di antara kedua tabel, terdapat 3 JButton, JButton Reset Op. + untuk membersihkan tabel dengan operasi (+), JButton Reset Op. x untuk membersihkan tabel dengan operasi (*), dan JButton Analysis untuk melakukan proses pengujian terhadap tabel Cayley. JButton Analysis memiliki validasi berupa pengujian kelengkapan tabel (telah terisi

46 semua). Jika salah satu cell belum terisi, maka pengguna akan menemukan pesan berikut. Gambar 4.7 Tampilan jika ada cell di tabel dengan operasi (+) yang belum terisi Gambar 4.8 Tampilan jika ada cell di tabel dengan operasi (*) yang belum terisi Jika semua cell telah terisi, terlihat seperti pada Gambar 4.9, Gambar 4.9 Tampilan yang menunjukkan bahwa semua cell telah terisi dan akan dilakukan proses pengujian

47 8. Pengguna dapat melihat hasil pengujian pada sub-tab Analysis of Cayley Table Gambar 4.10 Tampilan jika JButton Commutative againts operation x yang terdapat pada tabel diklik Hasil pengujian merupakan JButton yang jika diklik akan menampilkan keterangan yang bersangkutan pada JTextArea di bawah tabel. Sebagai contoh, jika JButton Commutative againts operation x diklik, maka akan muncul tampilan seperti Gambar 4.10. 9. Selain hasil pengujian, kesimpulan terhadap hasil pengujian juga telah dapat dilihat pada sub-tab Analysis s Result

48 Gambar 4.11 Tampilan pada sub-tab Analysis s Result Seperti pada sub-tab Analysis of Cayley Table, pada tampilan ini juga mengandung 4 JButton yang jika diklik akan menampilkan keterangan mengenai masing-masing kesimpulan pada JTextArea yang terletak di bawah tabel kesimpulan. 10. Jika tab Sub Ring - Ideal yang dipilih, maka akan terdapat tampilan yang siap menerima masukan berupa elemen struktur aljabar untuk pengujian sub-ring dan/atau ideal.

49 Gambar 4.12 Tampilan layar untuk tab Sub Ring Ideal Layar sebelah kiri untuk memasukkan elemen dari ring(r,+,*) yang telah diuji, sedangkan layar sebelah kanan untuk memasukkan elemen yang akan diuji. Telah divalidasikan, agar elemen yang dapat dimasukkan sebagai elemen sub-ring haruslah merupakan elemen ring pula. Validasi yang lain, seperti tidak boleh ada elemen yang ganda, dan tidak boleh merupakan himpunan kosong, sama seperti dengan pengujian ring. Setelah pengguna memasukkan minimum dua elemen, barulah JButton Input the Member of Sub-Ring dapat diakses untuk untuk memasukkan elemen dari sub ring yang ingin diuji. 11. Setelah elemen untuk kedua struktur aljabar telah dimasukkan seperti terlihat gambar 4.13, maka pengguna dapat menekan JButton Process untuk mulai mengisi tabel Cayley.

50 Gambar 4.13 Tampilan program setelah kedua struktur aljabar telah dimasukkan elemennya 12. Setelah JButton Process ditekan, maka pada sub-tab Fill in the Cayley Table akan ditampilkan dua tabel untuk pengisian tabel Cayley dari struktur aljabar (S,+,*) Gambar 4.14 Tampilan sub-tab Fill in the Cayley Table setelah diisi

51 13. Setelah kedua tabel terisi semua, maka JButton Analysis dapat dipilih untuk melakukan operasi pengujian terhadap tabel Cayley. Hasil pengujiannya terlihat pada sub-tab Sub Ring Testing Result Gambar 4.15 Tampilan pada sub tab Sub Ring Testing Result Seperti pada tab untuk pengujian ring, hasil pengujian sub-ring ini pun terangkum dalam beberapa JButton yang jika diklik akan menampilkan hasil pengujian yang bersangkutan pada JTextArea di bawah tabel. 14. Dengan sub-ring yang sama, pengguna dapat sekaligus melakukan pengujian ideal. Pengujian ideal ini terdapat pada menu sub ring ideal, sub-tab Ideal Testing. Setelah kedua tabel terisi, pengguna dapat menekan JButton Analysis untuk menampilkan hasil pengujian sub-

52 ring tersebut. Hasil pengujian terpampang pada JTextArea yang terletak di bawah tabel. Gambar 4.16 Tampilan layar pengujian Ideal 15. Jika pengguna memilih tab ke tiga, tab untuk pengujian homomorfisma dan homomorfisma khusus, maka akan terdapat tampilan seperti gambar 4.17 Gambar 4.17 Tampilan tab Homomorphism

53 Pada tab ini, tidak terdapat validasi yang mengatur bahwa elemen anggota ring (S,<+>,<*>) haruslah merupakan elemen anggota ring (R,+,*). 16. Setelah selesai memasukkan elemen, pengguna dapat mengklik JButton Process. Pada sub-tab Fill in the Cayley Table akan terlihat tabel Cayley untuk kedua ring. Gambar 4.18 Tampilan tab Homomorphism pada sub-tab Fill In the Cayley Table 17. Setelah pengguna selesai memasukkan isi tabel Cayley, pengguna dapat menekan JButton Analysis. Hasil analisis dari kedua tabel Cayley terdapat pada sub-tab Testing Result. Seperti kedua tab sebelumnya, pada tab ini pun pengguna dapat mengakses keterangan dari masingmasing kesimpulan dengan menekan tombol yang bersangkutan.

54 Gambar 4.19 Tampilan tab Homomorphism pada sub-tab Testing Result 18. Bagi pengguna yang ingin mencetak hasil pengujian ke kertas, tersedia JButton untuk mengakses operasi penyimpanan hasil pengujian ke file.txt yang dapat dicetak melalui program Notepad. JButton tersebut terdapat pada tab keempat, Save the Result About Us Gambar 4.20 Tampilan tab Save the Result About Us

55 Sebelum dilakukan proses pencetakan ke Notepad, terlebih dahulu dilakukan pemeriksaan, apakah tab yang bersangkutan telah dilakukan pengujian. Jika belum dilakukan pengujian, maka pengguna akan mendapatkan pesan seperti di bawah ini. Gambar 4.21 Tampilan pesan simpan hasil uji tab pertama. Gambar 4.22 Tampilan pesan simpan hasil uji tab kedua Gambar 4.23 Tampilan pesan simpan hasil uji tab ketiga Gambar 4.21 merupakan tampilan pesan yang dilihat pengguna jika mengakses JButton penyimpanan hasil pengujian tab pertama sebelum melakukan pengujian. Gambar 4.22 merupakan tampilan pesan

56 yang dilihat pengguna jika mengakses JButton penyimpanan hasil pengujian tab kedua sebelum melakukan pengujian. Gambar 4.23 merupakan tampilan pesan yang dilihat pengguna jika mengakses JButton penyimpanan hasil pengujian tab ketiga sebelum melakukan pengujian. Setelah pengguna melakukan pengujian, maka akan tampil jendela yang dapat digunakan pengguna untuk menentukan lokasi penyimpanan hasil pengujian beserta nama filenya. Pengguna tidak perlu mengetikkan ekstensi file, karena otomatis akan disimpan ke file berekstensi.txt. Gambar 4.24 Tampilan jendela simpan hasil pengujian Setelah pengguna selesai menentukan lokasi dan nama file tempat penyimpanan hasil pengujian, program akan melakukan pengecekan mengenai keberadaan file bersangkutan. Jika telah ada file bernama sama,

57 maka akan muncul pesan yang memberitahukan hal ini sekaligus menanyakan pengguna apakah tetap ingin menyimpan dengan path sebelumnya atau mengganti path. Gambar 4.25 Tampilan pesan path ganda Setelah dipastikan path unik, maka program akan menyimpan hasil pengujian ke path tersebut, dan menampilkan pesan bahwa file telah tersimpan di path tersebut. Gambar 4.26 Tampilan pesan file berhasil disimpan 19. Untuk menutup program, pengguna dapat mengklik ikon X yang teletak di pojok kanan atas layar.

58 4.4 Analisis Hasil Perancangan Program Untuk memastikan kemampuan program dalam melakukan pengujian, maka perlu dilakukan pembandingan antara hasil manual dengan output dari program. Akan dilakukan pengujian dengan menggunakan tabel Cayley yang ditampilkan di bawah ini. Tabel 4.1 Pengujian Ring, Ring Komutatif, Ring Pembagian, Field (Penjumlahan Modulo 4) + 0 1 2 3 0 0 1 2 3 1 1 2 3 0 2 2 3 0 1 3 3 0 1 2 Tabel 4.2 Pengujian Ring, Ring Komutatif, Ring Pembagian, Field (Perkalian Modulo 4) * 0 1 2 3 0 0 0 0 0 1 0 1 2 3 2 0 2 0 2 3 0 3 2 1 Tabel 4.3 Pengujian Sub Ring (Penjumlahan Modulo 4) + 0 2 0 0 2 2 2 0 Tabel 4.4 Pengujian Sub Ring (Perkalian Modulo 4) * 0 2 0 0 0 2 0 0 Tabel 4.5 Pengujian Ideal Kiri (Perkalian Modulo 4) * 0 1 2 3 0 0 0 0 0 2 0 2 0 2

59 Tabel 4.6 Pengujian Ideal Kanan(Perkalian Modulo 4) * 0 2 0 0 0 1 0 2 2 0 0 3 0 2 Tabel 4.7 Pengujian Ring, Ring Komutatif, Ring Pembagian Field (Penjumlahan Sembarang) + 1 2 1 1 2 2 3 4 Tabel 4.8 Pengujian Ring, Ring Komutatif, Ring Pembagian, Field (Perkalian Sembarang) * 1 2 1 2 1 2 4 3 Kesimpulan yang diperoleh dari hasil pengujian manual dan program memberikan hasil yang sama, sebagai berikut. Tabel 4.1 dan tabel 4.2 merupakan ring, ring komutatif, tetapi bukan ring pembagian dan bukan field. Tabel 4.3 dan tabel 4.4 merupakan sub ring. Tabel 4.5 dan tabel 4.6 merupakan ideal. Tabel 4.7 dan tabel 4.8 bukan ring, bukan ring komutatif, bukan ring pembagian, bukan field Hasil pemetaan tabel 4.3 dan 4.4 terhadap tabel 4.1 dan tabel 4.2 menghasilkan bahwa pemetaan bukan homomorfisma, bukan epimorfisma, bukan monomorfisma, dan bukan isomorfisma

60 Hasil analisis dan pengujian dari program adalah sebagai berikut. Tabel 4.1 dan tabel 4.2 Testing Result for : Ring, Commutative Ring, Division Ring, and Field ANALYSIS RESULT FROM CAYLEY TABLE ================================= 1. Closed to the operation of (+) --> For all a, b of R, the result of a + b is also a member of R Hasil pengujian diatas menyatakan bahwa berdasarkan tabel Cayley operasi + dan pseudocode di hal 32, subbab 3.3.2.3, memenuhi sifat tertutup terhadap operasi + 2. Elements that generate the left and right sides together : 0+(0+0) = 0 <-- is equal to --> 0 = (0+0)+0 0+(0+1) = 1 <-- is equal to --> 1 = (0+0)+1 0+(0+2) = 2 <-- is equal to --> 2 = (0+0)+2 0+(0+3) = 3 <-- is equal to --> 3 = (0+0)+3 0+(1+0) = 1 <-- is equal to --> 1 = (0+1)+0 0+(1+1) = 2 <-- is equal to --> 2 = (0+1)+1 0+(1+2) = 3 <-- is equal to --> 3 = (0+1)+2 0+(1+3) = 0 <-- is equal to --> 0 = (0+1)+3 0+(2+0) = 2 <-- is equal to --> 2 = (0+2)+0 0+(2+1) = 3 <-- is equal to --> 3 = (0+2)+1 0+(2+2) = 0 <-- is equal to --> 0 = (0+2)+2 0+(2+3) = 1 <-- is equal to --> 1 = (0+2)+3 0+(3+0) = 3 <-- is equal to --> 3 = (0+3)+0 0+(3+1) = 0 <-- is equal to --> 0 = (0+3)+1 0+(3+2) = 1 <-- is equal to --> 1 = (0+3)+2 0+(3+3) = 2 <-- is equal to --> 2 = (0+3)+3 1+(0+0) = 1 <-- is equal to --> 1 = (1+0)+0 1+(0+1) = 2 <-- is equal to --> 2 = (1+0)+1 1+(0+2) = 3 <-- is equal to --> 3 = (1+0)+2 1+(0+3) = 0 <-- is equal to --> 0 = (1+0)+3 1+(1+0) = 2 <-- is equal to --> 2 = (1+1)+0 1+(1+1) = 3 <-- is equal to --> 3 = (1+1)+1 1+(1+2) = 0 <-- is equal to --> 0 = (1+1)+2 1+(1+3) = 1 <-- is equal to --> 1 = (1+1)+3 1+(2+0) = 3 <-- is equal to --> 3 = (1+2)+0 1+(2+1) = 0 <-- is equal to --> 0 = (1+2)+1 1+(2+2) = 1 <-- is equal to --> 1 = (1+2)+2 1+(2+3) = 2 <-- is equal to --> 2 = (1+2)+3 1+(3+0) = 0 <-- is equal to --> 0 = (1+3)+0 1+(3+1) = 1 <-- is equal to --> 1 = (1+3)+1 1+(3+2) = 2 <-- is equal to --> 2 = (1+3)+2 1+(3+3) = 3 <-- is equal to --> 3 = (1+3)+3 2+(0+0) = 2 <-- is equal to --> 2 = (2+0)+0

61 2+(0+1) = 3 <-- is equal to --> 3 = (2+0)+1 2+(0+2) = 0 <-- is equal to --> 0 = (2+0)+2 2+(0+3) = 1 <-- is equal to --> 1 = (2+0)+3 2+(1+0) = 3 <-- is equal to --> 3 = (2+1)+0 2+(1+1) = 0 <-- is equal to --> 0 = (2+1)+1 2+(1+2) = 1 <-- is equal to --> 1 = (2+1)+2 2+(1+3) = 2 <-- is equal to --> 2 = (2+1)+3 2+(2+0) = 0 <-- is equal to --> 0 = (2+2)+0 2+(2+1) = 1 <-- is equal to --> 1 = (2+2)+1 2+(2+2) = 2 <-- is equal to --> 2 = (2+2)+2 2+(2+3) = 3 <-- is equal to --> 3 = (2+2)+3 2+(3+0) = 1 <-- is equal to --> 1 = (2+3)+0 2+(3+1) = 2 <-- is equal to --> 2 = (2+3)+1 2+(3+2) = 3 <-- is equal to --> 3 = (2+3)+2 2+(3+3) = 0 <-- is equal to --> 0 = (2+3)+3 3+(0+0) = 3 <-- is equal to --> 3 = (3+0)+0 3+(0+1) = 0 <-- is equal to --> 0 = (3+0)+1 3+(0+2) = 1 <-- is equal to --> 1 = (3+0)+2 3+(0+3) = 2 <-- is equal to --> 2 = (3+0)+3 3+(1+0) = 0 <-- is equal to --> 0 = (3+1)+0 3+(1+1) = 1 <-- is equal to --> 1 = (3+1)+1 3+(1+2) = 2 <-- is equal to --> 2 = (3+1)+2 3+(1+3) = 3 <-- is equal to --> 3 = (3+1)+3 3+(2+0) = 1 <-- is equal to --> 1 = (3+2)+0 3+(2+1) = 2 <-- is equal to --> 2 = (3+2)+1 3+(2+2) = 3 <-- is equal to --> 3 = (3+2)+2 3+(2+3) = 0 <-- is equal to --> 0 = (3+2)+3 3+(3+0) = 2 <-- is equal to --> 2 = (3+3)+0 3+(3+1) = 3 <-- is equal to --> 3 = (3+3)+1 3+(3+2) = 0 <-- is equal to --> 0 = (3+3)+2 3+(3+3) = 1 <-- is equal to --> 1 = (3+3)+3 Associative to the operation of (+) --> For all a, b, c of R, apply a + (b + c) = (a + b) + c Hasil pengujian diatas menyatakan bahwa berdasarkan tabel Cayley operasi + dan pseudocode di hal 32, subbab 3.2.2.4, memenuhi sifat asosiatif terhadap operasi + 3. Comutative to the operation of (+) --> For all a, b of R, apply a + b = b + a Hasil pengujian diatas menyatakan bahwa berdasarkan tabel Cayley operasi + dan pseudocode di hal 33, subbab 3.2.2.5, memenuhi sifat komutatif terhadap operasi + 4. Has an element of unity for the operation (+), that is 0

62 Hasil pengujian diatas menyatakan bahwa berdasarkan tabel Cayley operasi + dan pseudocode di hal 34, subbab 3.2.2.6, memiliki unsur kesatuan terhadap operasi + 5. Inverse of each element contained in the operation (+) : Inverse of 0 is 0 Inverse of 1 is 3 Inverse of 2 is 2 Inverse of 3 is 1 Hasil pengujian diatas menyatakan bahwa berdasarkan tabel Cayley operasi + dan pseudocode di hal 34, subbab 3.2.2.7, setiap unsur memiliki invers terhadap operasi + 6. Closed to the operation of (*) --> For all a, b of R, the result of a * b is also a member of R Hasil pengujian diatas menyatakan bahwa berdasarkan tabel Cayley operasi * dan pseudocode di hal 34, subbab 3.2.2.8, memenuhi sifat tertutup terhadap operasi * 7. Elements that generate the left and right sides together : 0*(0*0) = 0 <-- is equal to --> 0 = (0*0)*0 0*(0*1) = 0 <-- is equal to --> 0 = (0*0)*1 0*(0*2) = 0 <-- is equal to --> 0 = (0*0)*2 0*(0*3) = 0 <-- is equal to --> 0 = (0*0)*3 0*(1*0) = 0 <-- is equal to --> 0 = (0*1)*0 0*(1*1) = 0 <-- is equal to --> 0 = (0*1)*1 0*(1*2) = 0 <-- is equal to --> 0 = (0*1)*2 0*(1*3) = 0 <-- is equal to --> 0 = (0*1)*3 0*(2*0) = 0 <-- is equal to --> 0 = (0*2)*0 0*(2*1) = 0 <-- is equal to --> 0 = (0*2)*1 0*(2*2) = 0 <-- is equal to --> 0 = (0*2)*2 0*(2*3) = 0 <-- is equal to --> 0 = (0*2)*3 0*(3*0) = 0 <-- is equal to --> 0 = (0*3)*0 0*(3*1) = 0 <-- is equal to --> 0 = (0*3)*1 0*(3*2) = 0 <-- is equal to --> 0 = (0*3)*2 0*(3*3) = 0 <-- is equal to --> 0 = (0*3)*3 1*(0*0) = 0 <-- is equal to --> 0 = (1*0)*0 1*(0*1) = 0 <-- is equal to --> 0 = (1*0)*1 1*(0*2) = 0 <-- is equal to --> 0 = (1*0)*2 1*(0*3) = 0 <-- is equal to --> 0 = (1*0)*3 1*(1*0) = 0 <-- is equal to --> 0 = (1*1)*0 1*(1*1) = 1 <-- is equal to --> 1 = (1*1)*1 1*(1*2) = 2 <-- is equal to --> 2 = (1*1)*2 1*(1*3) = 3 <-- is equal to --> 3 = (1*1)*3 1*(2*0) = 0 <-- is equal to --> 0 = (1*2)*0 1*(2*1) = 2 <-- is equal to --> 2 = (1*2)*1 1*(2*2) = 0 <-- is equal to --> 0 = (1*2)*2

63 1*(2*3) = 2 <-- is equal to --> 2 = (1*2)*3 1*(3*0) = 0 <-- is equal to --> 0 = (1*3)*0 1*(3*1) = 3 <-- is equal to --> 3 = (1*3)*1 1*(3*2) = 2 <-- is equal to --> 2 = (1*3)*2 1*(3*3) = 1 <-- is equal to --> 1 = (1*3)*3 2*(0*0) = 0 <-- is equal to --> 0 = (2*0)*0 2*(0*1) = 0 <-- is equal to --> 0 = (2*0)*1 2*(0*2) = 0 <-- is equal to --> 0 = (2*0)*2 2*(0*3) = 0 <-- is equal to --> 0 = (2*0)*3 2*(1*0) = 0 <-- is equal to --> 0 = (2*1)*0 2*(1*1) = 2 <-- is equal to --> 2 = (2*1)*1 2*(1*2) = 0 <-- is equal to --> 0 = (2*1)*2 2*(1*3) = 2 <-- is equal to --> 2 = (2*1)*3 2*(2*0) = 0 <-- is equal to --> 0 = (2*2)*0 2*(2*1) = 0 <-- is equal to --> 0 = (2*2)*1 2*(2*2) = 0 <-- is equal to --> 0 = (2*2)*2 2*(2*3) = 0 <-- is equal to --> 0 = (2*2)*3 2*(3*0) = 0 <-- is equal to --> 0 = (2*3)*0 2*(3*1) = 2 <-- is equal to --> 2 = (2*3)*1 2*(3*2) = 0 <-- is equal to --> 0 = (2*3)*2 2*(3*3) = 2 <-- is equal to --> 2 = (2*3)*3 3*(0*0) = 0 <-- is equal to --> 0 = (3*0)*0 3*(0*1) = 0 <-- is equal to --> 0 = (3*0)*1 3*(0*2) = 0 <-- is equal to --> 0 = (3*0)*2 3*(0*3) = 0 <-- is equal to --> 0 = (3*0)*3 3*(1*0) = 0 <-- is equal to --> 0 = (3*1)*0 3*(1*1) = 3 <-- is equal to --> 3 = (3*1)*1 3*(1*2) = 2 <-- is equal to --> 2 = (3*1)*2 3*(1*3) = 1 <-- is equal to --> 1 = (3*1)*3 3*(2*0) = 0 <-- is equal to --> 0 = (3*2)*0 3*(2*1) = 2 <-- is equal to --> 2 = (3*2)*1 3*(2*2) = 0 <-- is equal to --> 0 = (3*2)*2 3*(2*3) = 2 <-- is equal to --> 2 = (3*2)*3 3*(3*0) = 0 <-- is equal to --> 0 = (3*3)*0 3*(3*1) = 1 <-- is equal to --> 1 = (3*3)*1 3*(3*2) = 2 <-- is equal to --> 2 = (3*3)*2 3*(3*3) = 3 <-- is equal to --> 3 = (3*3)*3 Associative to the operation of (*) --> For all a, b, c of R, apply a * (b * c) = (a * b) * c Hasil pengujian diatas menyatakan bahwa berdasarkan tabel Cayley operasi * dan pseudocode di hal 35, subbab 3.2.2.9, memenuhi sifat asosiatif terhadap operasi * 8. Comutative to the operation of (*) --> For all a, b of R, apply a * b = b * a

64 Hasil pengujian diatas menyatakan bahwa berdasarkan tabel Cayley operasi * dan pseudocode di hal 36, subbab 3.2.2.10, memenuhi sifat komutatif terhadap operasi * 9. Has an element of unity for the operation (*), that is 1 Hasil pengujian diatas menyatakan bahwa berdasarkan tabel Cayley operasi * dan pseudocode di hal 36, subbab 3.2.2.11, memiliki unsur kesatuan terhadap operasi * 10. Inverse of each nonzero element contained in the operation (*) : Inverse of 1 is 1 Element 2 has no inverse Inverse of 3 is 3 Hasil pengujian diatas menyatakan bahwa berdasarkan tabel Cayley operasi * dan pseudocode di hal 36, subbab 3.2.2.12, tidak setiap unsur memiliki invers terhadap operasi *. Elemen 2 tidak memiliki invers karena tidak ada kolom yang mencantumkan unsur kesatuan operasi *, yaitu 1 pada baris 2. 11. Checking the left distributive : 0*(0+0) = 0 <-- is equal to --> 0 = (0*0)+(0*0) 0*(0+1) = 0 <-- is equal to --> 0 = (0*0)+(0*1) 0*(0+2) = 0 <-- is equal to --> 0 = (0*0)+(0*2) 0*(0+3) = 0 <-- is equal to --> 0 = (0*0)+(0*3) 0*(1+0) = 0 <-- is equal to --> 0 = (0*1)+(0*0) 0*(1+1) = 0 <-- is equal to --> 0 = (0*1)+(0*1) 0*(1+2) = 0 <-- is equal to --> 0 = (0*1)+(0*2) 0*(1+3) = 0 <-- is equal to --> 0 = (0*1)+(0*3) 0*(2+0) = 0 <-- is equal to --> 0 = (0*2)+(0*0) 0*(2+1) = 0 <-- is equal to --> 0 = (0*2)+(0*1) 0*(2+2) = 0 <-- is equal to --> 0 = (0*2)+(0*2) 0*(2+3) = 0 <-- is equal to --> 0 = (0*2)+(0*3) 0*(3+0) = 0 <-- is equal to --> 0 = (0*3)+(0*0) 0*(3+1) = 0 <-- is equal to --> 0 = (0*3)+(0*1) 0*(3+2) = 0 <-- is equal to --> 0 = (0*3)+(0*2) 0*(3+3) = 0 <-- is equal to --> 0 = (0*3)+(0*3) 1*(0+0) = 0 <-- is equal to --> 0 = (1*0)+(1*0) 1*(0+1) = 1 <-- is equal to --> 1 = (1*0)+(1*1) 1*(0+2) = 2 <-- is equal to --> 2 = (1*0)+(1*2) 1*(0+3) = 3 <-- is equal to --> 3 = (1*0)+(1*3) 1*(1+0) = 1 <-- is equal to --> 1 = (1*1)+(1*0) 1*(1+1) = 2 <-- is equal to --> 2 = (1*1)+(1*1) 1*(1+2) = 3 <-- is equal to --> 3 = (1*1)+(1*2) 1*(1+3) = 0 <-- is equal to --> 0 = (1*1)+(1*3) 1*(2+0) = 2 <-- is equal to --> 2 = (1*2)+(1*0) 1*(2+1) = 3 <-- is equal to --> 3 = (1*2)+(1*1) 1*(2+2) = 0 <-- is equal to --> 0 = (1*2)+(1*2) 1*(2+3) = 1 <-- is equal to --> 1 = (1*2)+(1*3)

65 1*(3+0) = 3 <-- is equal to --> 3 = (1*3)+(1*0) 1*(3+1) = 0 <-- is equal to --> 0 = (1*3)+(1*1) 1*(3+2) = 1 <-- is equal to --> 1 = (1*3)+(1*2) 1*(3+3) = 2 <-- is equal to --> 2 = (1*3)+(1*3) 2*(0+0) = 0 <-- is equal to --> 0 = (2*0)+(2*0) 2*(0+1) = 2 <-- is equal to --> 2 = (2*0)+(2*1) 2*(0+2) = 0 <-- is equal to --> 0 = (2*0)+(2*2) 2*(0+3) = 2 <-- is equal to --> 2 = (2*0)+(2*3) 2*(1+0) = 2 <-- is equal to --> 2 = (2*1)+(2*0) 2*(1+1) = 0 <-- is equal to --> 0 = (2*1)+(2*1) 2*(1+2) = 2 <-- is equal to --> 2 = (2*1)+(2*2) 2*(1+3) = 0 <-- is equal to --> 0 = (2*1)+(2*3) 2*(2+0) = 0 <-- is equal to --> 0 = (2*2)+(2*0) 2*(2+1) = 2 <-- is equal to --> 2 = (2*2)+(2*1) 2*(2+2) = 0 <-- is equal to --> 0 = (2*2)+(2*2) 2*(2+3) = 2 <-- is equal to --> 2 = (2*2)+(2*3) 2*(3+0) = 2 <-- is equal to --> 2 = (2*3)+(2*0) 2*(3+1) = 0 <-- is equal to --> 0 = (2*3)+(2*1) 2*(3+2) = 2 <-- is equal to --> 2 = (2*3)+(2*2) 2*(3+3) = 0 <-- is equal to --> 0 = (2*3)+(2*3) 3*(0+0) = 0 <-- is equal to --> 0 = (3*0)+(3*0) 3*(0+1) = 3 <-- is equal to --> 3 = (3*0)+(3*1) 3*(0+2) = 2 <-- is equal to --> 2 = (3*0)+(3*2) 3*(0+3) = 1 <-- is equal to --> 1 = (3*0)+(3*3) 3*(1+0) = 3 <-- is equal to --> 3 = (3*1)+(3*0) 3*(1+1) = 2 <-- is equal to --> 2 = (3*1)+(3*1) 3*(1+2) = 1 <-- is equal to --> 1 = (3*1)+(3*2) 3*(1+3) = 0 <-- is equal to --> 0 = (3*1)+(3*3) 3*(2+0) = 2 <-- is equal to --> 2 = (3*2)+(3*0) 3*(2+1) = 1 <-- is equal to --> 1 = (3*2)+(3*1) 3*(2+2) = 0 <-- is equal to --> 0 = (3*2)+(3*2) 3*(2+3) = 3 <-- is equal to --> 3 = (3*2)+(3*3) 3*(3+0) = 1 <-- is equal to --> 1 = (3*3)+(3*0) 3*(3+1) = 0 <-- is equal to --> 0 = (3*3)+(3*1) 3*(3+2) = 3 <-- is equal to --> 3 = (3*3)+(3*2) 3*(3+3) = 2 <-- is equal to --> 2 = (3*3)+(3*3) ~~~~~ LEFT DISTRIBUTIVE FULFILLED ~~~~~ Checking the right distributive : (0+0)*0 = 0 <-- is equal to --> 0 = (0*0)+(0*0) (0+0)*1 = 0 <-- is equal to --> 0 = (0*1)+(0*1) (0+0)*2 = 0 <-- is equal to --> 0 = (0*2)+(0*2) (0+0)*3 = 0 <-- is equal to --> 0 = (0*3)+(0*3) (0+1)*0 = 0 <-- is equal to --> 0 = (0*0)+(1*0) (0+1)*1 = 1 <-- is equal to --> 1 = (0*1)+(1*1) (0+1)*2 = 2 <-- is equal to --> 2 = (0*2)+(1*2)

(0+1)*3 = 3 <-- is equal to --> 3 = (0*3)+(1*3) (0+2)*0 = 0 <-- is equal to --> 0 = (0*0)+(2*0) (0+2)*1 = 2 <-- is equal to --> 2 = (0*1)+(2*1) (0+2)*2 = 0 <-- is equal to --> 0 = (0*2)+(2*2) (0+2)*3 = 2 <-- is equal to --> 2 = (0*3)+(2*3) (0+3)*0 = 0 <-- is equal to --> 0 = (0*0)+(3*0) (0+3)*1 = 3 <-- is equal to --> 3 = (0*1)+(3*1) (0+3)*2 = 2 <-- is equal to --> 2 = (0*2)+(3*2) (0+3)*3 = 1 <-- is equal to --> 1 = (0*3)+(3*3) (1+0)*0 = 0 <-- is equal to --> 0 = (1*0)+(0*0) (1+0)*1 = 1 <-- is equal to --> 1 = (1*1)+(0*1) (1+0)*2 = 2 <-- is equal to --> 2 = (1*2)+(0*2) (1+0)*3 = 3 <-- is equal to --> 3 = (1*3)+(0*3) (1+1)*0 = 0 <-- is equal to --> 0 = (1*0)+(1*0) (1+1)*1 = 2 <-- is equal to --> 2 = (1*1)+(1*1) (1+1)*2 = 0 <-- is equal to --> 0 = (1*2)+(1*2) (1+1)*3 = 2 <-- is equal to --> 2 = (1*3)+(1*3) (1+2)*0 = 0 <-- is equal to --> 0 = (1*0)+(2*0) (1+2)*1 = 3 <-- is equal to --> 3 = (1*1)+(2*1) (1+2)*2 = 2 <-- is equal to --> 2 = (1*2)+(2*2) (1+2)*3 = 1 <-- is equal to --> 1 = (1*3)+(2*3) (1+3)*0 = 0 <-- is equal to --> 0 = (1*0)+(3*0) (1+3)*1 = 0 <-- is equal to --> 0 = (1*1)+(3*1) (1+3)*2 = 0 <-- is equal to --> 0 = (1*2)+(3*2) (1+3)*3 = 0 <-- is equal to --> 0 = (1*3)+(3*3) (2+0)*0 = 0 <-- is equal to --> 0 = (2*0)+(0*0) (2+0)*1 = 2 <-- is equal to --> 2 = (2*1)+(0*1) (2+0)*2 = 0 <-- is equal to --> 0 = (2*2)+(0*2) (2+0)*3 = 2 <-- is equal to --> 2 = (2*3)+(0*3) (2+1)*0 = 0 <-- is equal to --> 0 = (2*0)+(1*0) (2+1)*1 = 3 <-- is equal to --> 3 = (2*1)+(1*1) (2+1)*2 = 2 <-- is equal to --> 2 = (2*2)+(1*2) (2+1)*3 = 1 <-- is equal to --> 1 = (2*3)+(1*3) (2+2)*0 = 0 <-- is equal to --> 0 = (2*0)+(2*0) (2+2)*1 = 0 <-- is equal to --> 0 = (2*1)+(2*1) (2+2)*2 = 0 <-- is equal to --> 0 = (2*2)+(2*2) (2+2)*3 = 0 <-- is equal to --> 0 = (2*3)+(2*3) (2+3)*0 = 0 <-- is equal to --> 0 = (2*0)+(3*0) (2+3)*1 = 1 <-- is equal to --> 1 = (2*1)+(3*1) (2+3)*2 = 2 <-- is equal to --> 2 = (2*2)+(3*2) (2+3)*3 = 3 <-- is equal to --> 3 = (2*3)+(3*3) (3+0)*0 = 0 <-- is equal to --> 0 = (3*0)+(0*0) (3+0)*1 = 3 <-- is equal to --> 3 = (3*1)+(0*1) (3+0)*2 = 2 <-- is equal to --> 2 = (3*2)+(0*2) (3+0)*3 = 1 <-- is equal to --> 1 = (3*3)+(0*3) (3+1)*0 = 0 <-- is equal to --> 0 = (3*0)+(1*0) (3+1)*1 = 0 <-- is equal to --> 0 = (3*1)+(1*1) 66

67 (3+1)*2 = 0 <-- is equal to --> 0 = (3*2)+(1*2) (3+1)*3 = 0 <-- is equal to --> 0 = (3*3)+(1*3) (3+2)*0 = 0 <-- is equal to --> 0 = (3*0)+(2*0) (3+2)*1 = 1 <-- is equal to --> 1 = (3*1)+(2*1) (3+2)*2 = 2 <-- is equal to --> 2 = (3*2)+(2*2) (3+2)*3 = 3 <-- is equal to --> 3 = (3*3)+(2*3) (3+3)*0 = 0 <-- is equal to --> 0 = (3*0)+(3*0) (3+3)*1 = 2 <-- is equal to --> 2 = (3*1)+(3*1) (3+3)*2 = 0 <-- is equal to --> 0 = (3*2)+(3*2) (3+3)*3 = 2 <-- is equal to --> 2 = (3*3)+(3*3) ~~~~~ RIGHT DISTRIBUTIVE FULFILLED ~~~~~ All the elements satisfy the distributive properties of operations (*) on the operations of (+) as the fulfillment of left distributive and right distributive Hasil pengujian diatas menyatakan bahwa berdasarkan tabel Cayley operasi + dan tabel Cayley operasi *, serta pseudocode di hal 37, subbab 3.2.2.13, memenuhi sifat distributive operasi * terhadap operasi + CONCLUSION ========== With members : 0, 1, 2, 3 Algebraic structure (R,+,*) is a ring, because it qualifies : --> (R,+) : closed, associative, commutative, has an element of unity, all elements have inverse --> (R,*) : closed, associative --> Operations (*) is distributive to the operation of (+) Hasil pengujian diatas menyatakan bahwa berdasarkan hasil pengujian dan pseudocode di hal 38, subbab 3.2.2.14, merupakan sebuah ring Algebraic structure (R,+,*) is a commutative ring, because it qualifies : --> (R,+) : closed, associative, commutative, has an element of unity, all elements have inverse --> (R,*) : closed, associative, commutative --> Operations (*) is distributive to the operation of (+) Hasil pengujian diatas menyatakan bahwa berdasarkan hasil pengujian dan pseudocode di hal 38, subbab 3.2.2.14, merupakan sebuah ring komutatif Algebraic structure (R,+,*) is not a division ring, because not every element has an inverse in operation (*) Hasil pengujian diatas menyatakan bahwa berdasarkan hasil pengujian dan pseudocode di hal 38, subbab 3.2.2.14, bukan merupakan sebuah ring pembagian Algebraic structure (R,+,*) is not a field, because not every element has an inverse in operation (*) Hasil pengujian diatas menyatakan bahwa berdasarkan hasil pengujian dan pseudocode di hal 38, subbab 3.2.2.14, bukan merupakan sebuah field

68 Tabel 4.3 dan tabel 4.4 beserta tabel 4.5 dan 4.6 Testing Result for : Sub Ring, and Ideal ANALYSIS RESULT FROM CAYLEY TABLE ================================= 1. Closed to the operation of (+) --> For all a, b of R, the result of a + b is also a member of R Hasil pengujian diatas menyatakan bahwa berdasarkan tabel Cayley operasi + dan pseudocode di hal 32, subbab 3.3.2.3, memenuhi sifat tertutup terhadap operasi + 2. Elements that generate the left and right sides together : 0+(0+0) = 0 <-- is equal to --> 0 = (0+0)+0 0+(0+2) = 2 <-- is equal to --> 2 = (0+0)+2 0+(2+0) = 2 <-- is equal to --> 2 = (0+2)+0 0+(2+2) = 0 <-- is equal to --> 0 = (0+2)+2 2+(0+0) = 2 <-- is equal to --> 2 = (2+0)+0 2+(0+2) = 0 <-- is equal to --> 0 = (2+0)+2 2+(2+0) = 0 <-- is equal to --> 0 = (2+2)+0 2+(2+2) = 2 <-- is equal to --> 2 = (2+2)+2 Associative to the operation of (+) --> For all a, b, c of R, apply a + (b + c) = (a + b) + c Hasil pengujian diatas menyatakan bahwa berdasarkan tabel Cayley operasi + dan pseudocode di hal 32, subbab 3.2.2.4, memenuhi sifat asosiatif terhadap operasi + 3. Comutative to the operation of (+) --> For all a, b of R, apply a + b = b + a Hasil pengujian diatas menyatakan bahwa berdasarkan tabel Cayley operasi + dan pseudocode di hal 33, subbab 3.2.2.5, memenuhi sifat komutatif terhadap operasi + 4. Has an element of unity for the operation (+), that is 0 Hasil pengujian diatas menyatakan bahwa berdasarkan tabel Cayley operasi + dan pseudocode di hal 34, subbab 3.2.2.6, memiliki unsur kesatuan terhadap operasi + 5. Inverse of each element contained in the operation (+) : Inverse of 0 is 0 Inverse of 2 is 2 Hasil pengujian diatas menyatakan bahwa berdasarkan tabel Cayley operasi + dan pseudocode di hal 34, subbab 3.2.2.7, setiap unsur memiliki invers terhadap operasi + 6. Closed to the operation of (*) --> For all a, b of R, the result of a * b is also a member of R

69 Hasil pengujian diatas menyatakan bahwa berdasarkan tabel Cayley operasi * dan pseudocode di hal 34, subbab 3.2.2.8, memenuhi sifat tertutup terhadap operasi * 7. Elements that generate the left and right sides together : 0*(0*0) = 0 <-- is equal to --> 0 = (0*0)*0 0*(0*2) = 0 <-- is equal to --> 0 = (0*0)*2 0*(2*0) = 0 <-- is equal to --> 0 = (0*2)*0 0*(2*2) = 0 <-- is equal to --> 0 = (0*2)*2 2*(0*0) = 0 <-- is equal to --> 0 = (2*0)*0 2*(0*2) = 0 <-- is equal to --> 0 = (2*0)*2 2*(2*0) = 0 <-- is equal to --> 0 = (2*2)*0 2*(2*2) = 0 <-- is equal to --> 0 = (2*2)*2 Associative to the operation of (*) --> For all a, b, c of R, apply a * (b * c) = (a * b) * c Hasil pengujian diatas menyatakan bahwa berdasarkan tabel Cayley operasi * dan pseudocode di hal 35, subbab 3.2.2.9, memenuhi sifat asosiatif terhadap operasi * 8. Checking the left distributive : 0*(0+0) = 0 <-- is equal to --> 0 = (0*0)+(0*0) 0*(0+2) = 0 <-- is equal to --> 0 = (0*0)+(0*2) 0*(2+0) = 0 <-- is equal to --> 0 = (0*2)+(0*0) 0*(2+2) = 0 <-- is equal to --> 0 = (0*2)+(0*2) 2*(0+0) = 0 <-- is equal to --> 0 = (2*0)+(2*0) 2*(0+2) = 0 <-- is equal to --> 0 = (2*0)+(2*2) 2*(2+0) = 0 <-- is equal to --> 0 = (2*2)+(2*0) 2*(2+2) = 0 <-- is equal to --> 0 = (2*2)+(2*2) ~~~~~ LEFT DISTRIBUTIVE FULFILLED ~~~~~ Checking the right distributive : (0+0)*0 = 0 <-- is equal to --> 0 = (0*0)+(0*0) (0+0)*2 = 0 <-- is equal to --> 0 = (0*2)+(0*2) (0+2)*0 = 0 <-- is equal to --> 0 = (0*0)+(2*0) (0+2)*2 = 0 <-- is equal to --> 0 = (0*2)+(2*2) (2+0)*0 = 0 <-- is equal to --> 0 = (2*0)+(0*0) (2+0)*2 = 0 <-- is equal to --> 0 = (2*2)+(0*2) (2+2)*0 = 0 <-- is equal to --> 0 = (2*0)+(2*0) (2+2)*2 = 0 <-- is equal to --> 0 = (2*2)+(2*2) ~~~~~ RIGHT DISTRIBUTIVE FULFILLED ~~~~~ All the elements satisfy the distributive properties of operations (*) on the operations of (+) as the fulfillment of left distributive and right distributive

70 Hasil pengujian diatas menyatakan bahwa berdasarkan tabel Cayley operasi + dan tabel Cayley operasi *, serta pseudocode di hal 37, subbab 3.2.2.13, memenuhi sifat distributif operasi * terhadap operasi + CONCLUSION ========== With members : 0, 2 Algebraic structure (S,+,*) is a sub ring of ring (R,+,*), because (S,+,*) is eligible : --> (S,+) : closed, associative, commutative, has an element of unity, all elements have inverse --> (S,*) : closed, associative --> Operations (*) is distributive to the operation of (+) Hasil pengujian diatas menyatakan bahwa berdasarkan hasil pengujian dan pseudocode di hal 38, subbab 3.2.2.14, merupakan sebuah ring. Karena (S,+,*) sebuah ring dan merupakan himpunan bagian dari (R,+,*), maka (S,+,*) merupakan subring dari (R,+,*). ~~Checking the Ideal Left and the Right Ideal~~ 0*0=0 >> is a member of (S,+,*) 0*2=0 >> is a member of (S,+,*) 1*0=0 >> is a member of (S,+,*) 1*2=2 >> is a member of (S,+,*) 2*0=0 >> is a member of (S,+,*) 2*2=0 >> is a member of (S,+,*) 3*0=0 >> is a member of (S,+,*) 3*2=2 >> is a member of (S,+,*) --> Sub ring(s,+,*) is eligible the left ideal : For all a member of the Sub-Ring and r member of Ring, the (r * a) is also member of the Sub-Ring 0*0=0 >> is a member of (S,+,*) 0*1=0 >> is a member of (S,+,*) 0*2=0 >> is a member of (S,+,*) 0*3=0 >> is a member of (S,+,*) 2*0=0 >> is a member of (S,+,*) 2*1=2 >> is a member of (S,+,*) 2*2=0 >> is a member of (S,+,*) 2*3=2 >> is a member of (S,+,*) --> Sub ring(s,+,*) is eligible the right ideal : For all a member of the Sub- Ring and r member of Ring, the (a * r) is also member of the Sub-Ring --> Conclusion : Sub ring (S,+,*) is an Ideal

71 Hasil pengujian diatas menyatakan bahwa berdasarkan tabel Cayley yang berisi operasi perkalian dalam kiri dan kanan antara subring dan ring-nya, dan pseudocode di hal 39, subbab 3.2.2.15, terbukti bahwa subring tersebut juga merupakan ideal dari ringnya. Tabel 4.7 dan tabel 4.8 Testing Result for : Ring, Commutative Ring, Division Ring, and Field ANALYSIS RESULT FROM CAYLEY TABLE ================================= 1. Not closed under the operation (+) Hasil pengujian diatas menyatakan bahwa berdasarkan tabel Cayley operasi + dan pseudocode di hal 32, subbab 3.2.2.3, memenuhi tidak memnuhi sifat tertutup terhadap operasi + 2. Checking the associative properties of the operation (+) is not performed Tidak dilakukan operasi pengujian asosiatif terhadap operasi + terhadap himpunan ini, dikarenakan syarat untuk melakukan pengujian asosiatif adalah tertutup terhadap operasi yang bersangkutan 3. Checking the commutative properties of the operation (+) is not performed Tidak dilakukan operasi pengujian komutatif terhadap operasi + terhadap himpunan ini, dikarenakan syarat untuk melakukan pengujian komutatif adalah tertutup terhadap operasi yang bersangkutan 4. Checking the element of unity of the operation (+) is not performed Tidak dilakukan operasi pengujian pencarian elemen kesatuan terhadap operasi + terhadap himpunan ini, dikarenakan syarat untuk melakukan pengujian pencarian elemen kesatuan adalah tertutup terhadap operasi yang bersangkutan 5. Checking the inverse of the operation (+) is not performed Tidak dilakukan operasi pengujian pencarian invers terhadap operasi + terhadap himpunan ini, dikarenakan syarat untuk melakukan pengujian pencarian invers adalah tertutup terhadap operasi yang bersangkutan 6. Not closed under the operation (*) Hasil pengujian diatas menyatakan bahwa berdasarkan tabel Cayley operasi * dan pseudocode di hal 34, subbab 3.2.2.8, tidak memenuhi sifat tertutup terhadap operasi * 7. Checking the associative properties of the operation (*) is not performed Tidak dilakukan operasi pengujian asosiatif terhadap operasi * terhadap himpunan ini, dikarenakan syarat untuk melakukan pengujian asosiatif adalah tertutup terhadap operasi yang bersangkutan 8. Checking the commutative properties of the operation (*) is not performed

72 Tidak dilakukan operasi pengujian komutatif terhadap operasi * terhadap himpunan ini, dikarenakan syarat untuk melakukan pengujian komutatif adalah tertutup terhadap operasi yang bersangkutan 9. Checking the element of unity of the operation (*) is not performed Tidak dilakukan operasi pengujian pencarian unsur kesatuan terhadap operasi * terhadap himpunan ini, dikarenakan syarat untuk melakukan pengujian pencarian unsur kesatuan adalah tertutup terhadap operasi yang bersangkutan 10. Checking the inverse of the operation (*) is not performed Tidak dilakukan operasi pengujian pencarian invers terhadap operasi * terhadap himpunan ini, dikarenakan syarat untuk melakukan pengujian pencarian invers adalah tertutup terhadap operasi yang bersangkutan 11. Checking distributive properties is not performed Tidak dilakukan operasi pengujian distributif operasi * terhadap operasi + terhadap himpunan ini, dikarenakan syarat untuk melakukan pengujian distributif operasi * terhadap operasi + adalah tertutup terhadap kedua operasi CONCLUSION ========== With members : 1, 2 Algebraic structure (R,+,*) is not a ring, because it does not qualifies : --> (R,+) : closed, associative, commutative, has an element of unity, all elements have inverse --> (R,*) : closed, associative --> Operations (*) is distributive to the operation of (+) Hasil pengujian diatas menyatakan bahwa berdasarkan hasil pengujian dan pseudocode di hal 38, subbab 3.2.2.14, merupakan sebuah ring Algebraic structure (R,+,*) is not commutative ring, because (R,+,*) is not a ring Hasil pengujian diatas menyatakan bahwa berdasarkan hasil pengujian dan pseudocode di hal 38, subbab 3.2.2.14, bukan merupakan ring komutatif karena bukan merupakan ring Algebraic structure (R,+,*) is not division ring, because (R,+,*) is not a ring Hasil pengujian diatas menyatakan bahwa berdasarkan hasil pengujian dan pseudocode di hal 38, subbab 3.2.2.14, bukan merupakan ring pembagian karena bukan merupakan ring Algebraic structure (R,+,*) is not a field, because (R,+,*) is not a ring Hasil pengujian diatas menyatakan bahwa berdasarkan hasil pengujian dan pseudocode di hal 38, subbab 3.2.2.14, bukan merupakan field karena bukan merupakan ring

73 Pemetaan tabel 4.3 dan 4.4 terhadap tabel 4.1 dan tabel 4.2 Testing Result for : Homomorphism Ring, Epimorphism Ring, Monomorphism Ring, Isomorphism Ring CONCLUSION ========== The mapping f:ring(r,+,*)->ring(s,<+>,<*>) is not a homomorphism mapping because not for all a,b of (R,+,*) and c,d of (S,<+>,<*>) apply f(a+b)=f(c)<+>f(d) and f(a*b)=f(c)<*>f(d) Hasil pengujian diatas menyatakan bahwa berdasarkan tabel Cayley kedua struktur aljabar dan pseudocode di hal 39, subbab 3.2.2.16, tidak memenuhi syarat pemetaan homomorfisma ring. The mapping f:ring(r,+,*)->ring(s,<+>,<*>) is not an epimorphism mapping because mapping f doesn't a homomorphism mapping Hasil pengujian diatas menyatakan bahwa berdasarkan tabel Cayley kedua struktur aljabar dan pseudocode di hal 39, subbab 3.2.2.16, tidak memenuhi syarat pemetaan epimorfisma ring karena bukan merupakan homomorfisma ring The mapping f:ring(r,+,*)->ring(s,<+>,<*>) is not a monomorphism mapping because mapping f doesn't a homomorphism mapping Hasil pengujian diatas menyatakan bahwa berdasarkan tabel Cayley kedua struktur aljabar dan pseudocode di hal 39, subbab 3.2.2.16, tidak memenuhi syarat pemetaan monomorfisma ring karena bukan merupakan homomorfisma ring The mapping f:ring(r,+,*)->ring(s,<+>,<*>) is not an isomorphism mapping because mapping f doesn't a homomorphism mapping Hasil pengujian diatas menyatakan bahwa berdasarkan tabel Cayley kedua struktur aljabar dan pseudocode di hal 39, subbab 3.2.2.16, tidak memenuhi syarat pemetaan isomorfisma ring karena bukan merupakan homomorfisma ring

74 4.5 Evaluasi Dari hasil analisis terhadap beberapa tabel Cayley diatas, diperoleh beberapa kesimpulan mengenai hasil perancangan program. 1. Program memberi hasil yang sama dengan hasil yang diperoleh dengan secara manual. Terlihat dalam penjelasan pada tiap-tiap hasil pengujian, dan pseudocode di bab 3. 2. Hasil pengujian program dapat disimpan dalam bentuk sebuah file *.txt. 3. Program bergantung pada ketelitian pengguna dalam melakukan proses memasukkan data dalam tabel Cayley, sehingga jika pengguna kurang teliti memasukkan data di tabel Cayley, maka secara otomatis hasil pengujian pun menjadi tidak sama dengan hasil pengujian manual.