Jumat, 20 November 2015

Mengganti Repo Ubuntu Lokal

Assalaamu'alaikum wa rahmatullaah wa barakaatuh.
Lebih dekat dan cepat, Sahabat.
Begini, ganti isi file /etc/apt/sources.list menjadi begini:

Tapi sebelumnya harus dibackup dulu filenya. Copy paste dulu file sources.list menjadi sources.listlama atau apapun terserah kita. Itu kalau reponya lokal di server. Bisa juga kalau reponya sudah dicopy ke hardisk (baik itu internal ataupun eksternal kita), kita ubah saja isinya jadi begini:

Ganti alamatnya sesuai dengan alamat repo kita..
Sengaja aku nulis ini, soalnya sering nyoba2 ubuntu baru. Kalau mesti nyari2 tutorialnya di gugel ya nanti lama.. Mending tak tulis di sini aja, muktyas.blogspot.com.
Semoga bermanfaat.

Sebagai catatan, jangan nuliskan pakai enter setelah tulisan restricted, (Tulisan main restricted universe multiverse itu satu baris ya..) tinggal kopi paste saja tulisan di kotakan di atas itu.. Itu karena kalau tak perpanjang kotaknya, nanti keliatan ndak sesuai dengan ukuran blognya, jadi kurang manis. :)

Jumat, 13 November 2015

Invers Matriks Modulo

Kongruensi modulo

Assalaamu'alaikum, Sahabat.
Sekarang kita akan memasuki dunia yang berbeda. Kita akan sering berganti-ganti dunia. Dunia kita, dan dunia modulo. Contohnya adalah modulo 5. Kalau di dunia kita ada bilangan genap, ganjil, positif, negatif, bulat, rasional, irasional, real, kompleks, dan macem-macem lainnya. Nah, kalau di dunia modulo 5 adanya cuman 0, 1, 2, 3, dan 4 saja. Ada beberapa hal menarik dari dunia kita dan dunia modulo 5. Cuma bilangan rasional saja yang bisa bertransformasi ke dunia modulo 5 (tadinya setauku cuma bilangan bulat saja, tapi ternyata dapat masukan dari Bu Tami dan Pak PJ, ternyata keseluruhan bilangan rasional bisa juga.. Canggih!). Kita liat dulu transformasinya di tabel ini:

Dunia kita Dunia modulo 5
0 0
1 1
2 2
3 3
4 4
5 0
6 1
7 2
8 3
9 4
10 0

Apa yang bisa kita liat dari tabel itu?
\[ 0 \equiv 0 (mod\ 5) \\ 1 \equiv 1 (mod\ 5) \\ 2 \equiv 2 (mod\ 5) \\ 3 \equiv 3 (mod\ 5) \\ 4 \equiv 4 (mod\ 5) \\ 5 \equiv 0 (mod\ 5) \\ 6 \equiv 1 (mod\ 5) \\ 7 \equiv 2 (mod\ 5) \\ 8 \equiv 3 (mod\ 5) \\ \vdots \]
Mudahnya untuk mengetahui 13 itu ekivalen dengan berapa di dunia modulo 5, caranya tinggal bagi 13 dengan 5, sisanya itu adalah hasil transformasi di dunia modulo 5. Kayak gini, $13:5=2\ sisa\ 3$. Jadi $13\equiv 3\ (mod\ 5)$. Terus $28\equiv 3 (mod\ 5)$. Sehingga $13\equiv 28 (mod\ 5)$ (artinya di dunia modulo 5, $13$ dan $28$ itu kongruen, Sahabat..).


Invers modulo

Sekarang, kalau di dunia kita, $3^{-1}$ itu sama dengan $\tfrac{1}{3}$ karena $3\cdot 3^{-1} = 3\cdot \tfrac{1}{3}=1$. Nah, kalau inversnya 3 di dunia modulo 5 apa ya? Kan di sana hanya ada bilangan 0, 1, 2, 3, dan 4 saja. Kita coba saja satu per satu.
\[ 3\cdot 0\equiv 0 (mod\ 5) \\ 3\cdot 1\equiv 3 (mod\ 5) \\ 3\cdot 2=6\equiv 1 (mod\ 5) \\ 3\cdot 3=9\equiv 4 (mod\ 5) \\ 3\cdot 4=12\equiv 2 (mod\ 5). \]
Ternyata $3\cdot x \equiv 1 (mod\ 5)$ itu $x$ nya adalah 2 karena $3\cdot 2 = 6\equiv 1 (mod\ 5)$. Jadi invers dari 3 di modulo 5 adalah 2. Ini juga jadi terbukanya misteri hubungan bilangan rasional (yang bentuknya $\tfrac{a}{b}, b\ne 0$ yang a dan b nya bilangan bulat) dengan bilangan di dunia modulo 5. Contoh lainnya itu ini,
\[ \frac{2}{3}=2\cdot \tfrac{1}{3}=2\cdot 3^{-1}\\ \equiv 2\cdot 2 =4 (mod\ 5)\]


Invers matriks modulo

Sekarang kalau matriks di dunia kita, kalau di dunia modulo 5 itu jadinya gimana ya? Bisa juga ndak ya kita nyari invers modulonya? Alhamdulillah bisa lho, Sahabat.. Contohnya ini.
\[ \begin{pmatrix}
2 &1 \\
3 &0
\end{pmatrix}^{-1}(mod\ 5)=? \]
Itu sama saja dengan kita nyari matriks yang jika dikalikan dengan $\begin{pmatrix} 2 &1 \\ 3 &0 \end{pmatrix}$ hasil kalinya itu matriks identitas $\begin{pmatrix} 1 &0 \\ 0 &1 \end{pmatrix}$. Adakah?
Kita selesaikan dengan OBE (Operasi Baris Elementer). Begini tahapan-tahapannya.
\[ \begin{pmatrix} 2 &1 &| &1 &0 \\ 3 &0 &| &0 &1 \end{pmatrix}\\R_1(\tfrac{1}{2})\equiv R_1(3) \begin{pmatrix} 6 &3 &| &3 &0 \\ 3 &0 &| &0 &1 \end{pmatrix}\equiv \begin{pmatrix} 1 &3 &| &3 &0 \\ 3 &0 &| &0 &1 \end{pmatrix} (mod\ 5)\\R_2-3R_1 \begin{pmatrix} 1 &3 &| &3 &0 \\ 0 &-9 &| &-9 &1 \end{pmatrix}\equiv \begin{pmatrix} 1 &3 &| &3 &0 \\ 0 &1 &| &1 &1 \end{pmatrix} (mod\ 5)\\R_1-3R_2 \begin{pmatrix} 1 &0 &| &0 &-3 \\ 0 &1 &| &1 &1 \end{pmatrix}\equiv \begin{pmatrix} 1 &0 &| &0 &2 \\ 0 &1 &| &1 &1 \end{pmatrix} (mod\ 5)\\ \]
Jadi $ \begin{pmatrix}
2 &1 \\
3 &0
\end{pmatrix}^{-1} \equiv \begin{pmatrix}
0 &2 \\
1 &1
\end{pmatrix}(mod\ 5)$. Kalau kita cek,
\[ \begin{pmatrix} 2&1\\ 3&0 \end{pmatrix} \begin{pmatrix} 0&2\\ 1&1 \end{pmatrix}= \begin{pmatrix} 1&5\\ 0&6 \end{pmatrix}\equiv \begin{pmatrix} 1&0\\ 0&1 \end{pmatrix}(mod\ 5). \]
:)

Kamis, 05 November 2015

Tutorial Matriks dengan Python Numpy (Operasi Baris Elementer)

Assalaamu'alaikum, Sahabat.
Python itu canggih ternyata. Selain cepat, data besar juga mumpuni lho. Nah, kali ini aku ingin nge share pengalamanku tentang matriks. Paket tambahan yang kita perlukan hanyalah numpy. Ya. Itu saja. Kalau kita pecinta ubuntu, dan ada koneksi internet, cukup kita ketikkan di terminal:

Lha kalau kita masih pakai windows, ya cukup download dan instal file ini saja: http://sourceforge.net/projects/numpy/files/. Langsung saja, yuk kita pelajari di terminalku ini, Sahabat.. :)


Ini juga bisa:


Aku juga sempat ngoprek dan mbuat sebuah file yang isinya fungsi-fungsi dari OBE. Ada tiga kalau ndak salah, yaitu tukar baris, tambahkan baris dengan berapa kalinya baris lain, dan kalikan baris dengan suatu nilai. Aku mbuat file obe.py kayak gini:


Okay. Selanjutnya ini contoh penggunaannya, Sahabat. Kita buka terminal di lokasi yang sama dengan kita nyimpan obe.py itu. Lihat lagi, ya.

Update:
Sahabat, aku mbuat updatetan dari file obe.py biar lebih manusiawi. Maksudnya baris pertama dari matriks M ya nanti kita masukkannya tetep 1, bukan nol. Kayak gini file obe2.py ku:

Dengan pakai file obe2.py, kalau mau melakukan operasi baris 3 + 2 * baris 1 pada matriks M dengan kode seperti ini.


Nah, begitu.
Belajar dengan langsung praktek itu enak kok.
Semoga bermanfaat, Sahabat.
Kalau kotak kodenya kekecilan, bisa diubah ukurannya. Klik dan drag di pojok kanan bawah aja.
Assalaamu'alaikum wa rahmatullaah wa barakaatuh.