Thuật toán Vương Hạo:
Bước 1: Phát biểu lại giả thiết và kết luận của vấn đề dưới dạng chuẩn như sau:
GT1, GT2, …, GTn ® KL1, KL2, … KLm
Trong đó các GTi và KLj được xây dựng từ các biến mệnh đề và các phép toán Ù, Ú, Ø.
Bước 2: Chuyển vế các GTi và KLj có dạng phủ định.
Ví dụ:
p Ú q, Ø(r Ùs), Øq, pÚr ® s, Øp
Þp Ú q, pÚr, p ® s, r Ùs, q
Bước 3: Thay dấu “Ù” ở trong GTi và dấu “Ú” ở trong KLj bằng dấu “,” (phẩy).
Ví dụ:
p Ù q, r Ù (Øp Ú s) ® Øq Ú Ør
Þ p, q, r, Øp Ús ® Øq, Ør
Bước 4: Nếu GTi còn dấu “Ú” và KLj còn dấu “Ù” thì dòng đó được tách thành hai dòng con.
Ví dụ: p, Ø p Ú q ® q
p, Ø p ® q p, q ® q
Bước 5: Nếu một dòng được chứng minh: nếu tồn tại chung một mệnh đề ở cả 2 vế thì coi như đúng.
Ví dụ: p, q ® p: mệnh đề đúng
Bước 6:
+ Nếu một dòng không còn dấu liên kết tuyển và hội mà cả ở hai vế đều không có chung biến mệnh đề nào thì dòng đó không được chứng minh.
Ví dụ: p, Øq ® q
+ Một vấn đề được giải quyết một cách trọn vẹn nếu mọi dòng dẫn xuất từ dạng chuẩn được chứng minh.
Lưu ý:
Từ bước 2 đến bước 4 không cần làm theo thứ tự.