Tugas Akhir ini membahas suatu algoritma untuk mencari key suatu Multivalued Dependency. Dalam algoritma ini digunakan sebuah priority queue yang dinamakan CANDIDATE untuk menempatkan semua kandidat key. Elemen pertama dalam queue tersebut diambil sebagai key X dan dibandingkan dengan kandidat-kandidat key X' > X yang lain dalam queue tersebut. Jika CDEP(X') = Φ untuk sembarang kandidat key X', maka X' dihapus dari queue. Selanjutnya dilakukan penyisipan sembarang kandidat key Z > X ke dalam priority queue CANDIDATE. Kemudian dibandingkan kembali dengan kandidat-kandidat key yang lain, dan dihapus dan queue jika CDEF(Z) = Φ. Demikianlah sebuah nonkey dalam himpunan kandidat key dapat dihapus dari dalam priority queue CANDIDATE. Proses perbandingan dan penghapusan ini dilakukan berulang-ulang. Sementara sebuah key tidak dihapus sampai key tersebut diambil sebagai elemen yang paling atas dalam quenue tersebut. Akhirnya akan didapatkan sebauah himpunan key dari suatu himpunan Multivalued Dependency.