Pertanyaan yang diberi tag «software-verification»

Pertanyaan tentang metode dan teknik untuk membuktikan kebenaran program.


6
Algoritma untuk memecahkan "masalah terputus-" Turing
Pertanyaan ini dimigrasikan dari Theoretical Computer Science Stack Exchange karena dapat dijawab di Computer Science Stack Exchange. Bermigrasi 7 tahun yang lalu . "Alan Turing membuktikan pada tahun 1936 bahwa algoritma umum untuk memecahkan masalah penghentian untuk semua pasangan input-program yang mungkin tidak ada" Dapatkah saya menemukan algoritma umum untuk …

2
Kebenaran Program, Spesifikasi
Dari Wikipedia: Dalam ilmu komputer teoretis, kebenaran suatu algoritma dinyatakan ketika dikatakan bahwa algoritma tersebut benar sehubungan dengan spesifikasi. Tetapi masalahnya adalah bahwa untuk mendapatkan spesifikasi "yang sesuai" bukanlah tugas yang sepele, dan tidak ada metode yang 100% benar (sejauh yang saya tahu) untuk mendapatkan yang benar, itu hanya perkiraan, …

4
Bagaimana Anda memeriksa apakah dua algoritma mengembalikan hasil yang sama untuk input apa pun?
Bagaimana Anda memeriksa jika dua algoritma (katakanlah, Urutkan gabungan dan Urutkan naif) mengembalikan hasil yang sama untuk input apa pun, ketika set semua input tidak terbatas? Pembaruan: Terima kasih, Ben, karena telah menjelaskan bagaimana ini tidak mungkin dilakukan secara algoritmik dalam kasus umum. Jawaban Dave adalah ringkasan yang bagus dari …



4
Apa teknik formal umum untuk membuktikan kode fungsional yang benar?
Saya ingin memberikan bukti untuk bagian dari program Haskell yang saya tulis sebagai bagian dari tesis saya. Namun sejauh ini, saya gagal menemukan referensi yang bagus. Buku pengantar Graham Hutton, Programming in Haskell ( Google Books ) —yang saya baca sambil mempelajari Haskell — menyentuh beberapa teknik untuk alasan tentang …

6
Bisakah teknik verifikasi program mencegah bug dari genre Heartbleed terjadi?
Mengenai masalah Heartbleed bug, Bruce Schneier menulis dalam Crypto-Gram-nya tanggal 15 April: 'Bencana "adalah kata yang tepat. Pada skala 1 hingga 10, ini adalah 11. ' Saya membaca beberapa tahun yang lalu bahwa kernel dari sistem operasi tertentu telah diverifikasi secara ketat dengan sistem verifikasi program modern. Maka dapatkah bug …

2
Pengantar verifikasi logika urutan pertama
Saya mencoba mengajari diri saya berbagai pendekatan untuk verifikasi perangkat lunak. Saya sudah membaca beberapa artikel. Sejauh yang saya pelajari, logika proposisional dengan temporal umumnya menggunakan pengecekan model dengan pemecah SAT (dalam sistem yang sedang berlangsung - reaktif), tetapi bagaimana dengan Logika orde pertama dengan temporal? Apakah ini menggunakan pembuktian …

1
Analisis Aliran Data dengan pengecualian
Analisis aliran data bekerja di atas grafik aliran kontrol. Ketika bahasa yang dipertimbangkan mendukung pengecualian, grafik aliran kontrol dapat meledak. Apa teknik standar untuk menghadapi ledakan ini? Bisakah kita mengabaikan tepi yang dipicu oleh pengecualian? Bagaimanapun juga, aliran data menganalisis perhitungan perkiraan yang berlebihan, sehingga kami akan berakhir dengan solusi …

2
Apa sebenarnya Memeriksa Model Simbolik?
Saya tahu bahwa Symbolic Model Checking adalah state space traversal berdasarkan representasi set negara dan hubungan transisi sebagai rumus seperti dalam CTL menggunakan model seperti Kripke Model. Saya tahu teorinya. Tetapi saya merasa sulit untuk memahami aplikasi yang sebenarnya. Di mana tepatnya itu digunakan? Apa sebenarnya yang dilakukannya dan bagaimana …

1
Verifikasi kebenaran penghapusan kuantifier, menggunakan SAT
Membiarkan x=(x1,…,xn)x=(x1,…,xn)x=(x_1,\dots,x_n) dan y=(y1,…,yn)y=(y1,…,yn)y=(y_1,\dots,y_n) menjadi nnn-vektor variabel boolean. Saya memiliki predikat booleanQ(x,y)Q(x,y)Q(x,y) di x,yx,yx,y. Saya memberi teman saya PriscillaQ(x,y)Q(x,y)Q(x,y). Sebagai tanggapan, dia memberi sayaP(x)P(x)P(x), predikat boolean pada xxx, dan dia mengklaim itu P(x)≡∃y.Q(x,y),P(x)≡∃y.Q(x,y),P(x) \equiv \exists y . Q(x,y), atau dengan kata lain, itu ∀x.[P(x)⇔∃y.Q(x,y)].∀x.[P(x)⇔∃y.Q(x,y)].\forall x . [P(x) \Leftrightarrow \exists y …
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.