Cac ngon ngu lap trinh khai bao mo ta nhung gi tinh toan nen duoc thuc hien va khong mo ta cach thuc lam the nao de tinh toan no. Cac chuong trinh khai bao bo qua luong dieu khien va duoc coi la tap hop cac lenh. Hai loai ngon ngu khai bao rong la ngon ngu chuc nang va ngon ngu logic. Nguyen tac dang sau cac ngon ngu chuc nang (nhu Haskell) la khong cho phep cac hieu ung ben le, dieu nay giup de dang ly luan ve cac chuong trinh nhu cac ham toan hoc. Nguyen tac dang sau cac ngon ngu logic (nhu Prolog) la xac dinh van de can giai quyet   - muc dich   - va de lai giai phap chi tiet cho chinh he thong Prolog. Muc tieu duoc xac dinh bang cach cung cap mot danh sach cac diem phu. Sau do, moi subgoal duoc xac dinh boi tiep tuc cung cap mot danh sach cac subgoals cua no, vv Neu mot con duong subgoals that bai trong viec tim ra giai phap, sau do subgoal duoc quay lui va duong dan khac duoc thu mo ra mot cach he thong.
Các ngôn ngữ lập trình khai báo mô tả những gì tính toán nên được thực hiện và không mô tả cách thức làm thế nào để tính toán nó. Các chương trình khai báo bỏ qua luồng điều khiển và được coi là tập hợp các lệnh. Hai loại ngôn ngữ khai báo rộng là ngôn ngữ chức năng và ngôn ngữ logic. Nguyên tắc đằng sau các ngôn ngữ chức năng (như Haskell) là không cho phép các hiệu ứng bên lề, điều này giúp dễ dàng lý luận về các chương trình như các hàm toán học. Nguyên tắc đằng sau các ngôn ngữ logic (như Prolog) là xác định vấn đề cần giải quyết   - mục đích   - và để lại giải pháp chi tiết cho chính hệ thống Prolog. Mục tiêu được xác định bằng cách cung cấp một danh sách các điểm phụ. Sau đó, mỗi subgoal được xác định bởi tiếp tục cung cấp một danh sách các subgoals của nó, vv Nếu một con đường subgoals thất bại trong việc tìm ra giải pháp, sau đó subgoal được quay lui và đường dẫn khác được thử mở ra một cách hệ thống.
<s> [INST] Bạn là một trợ lí Tiếng Việt nhiệt tình và trung thực. Hãy luôn trả lời một cách hữu ích nhất có thể, đồng thời giữ an toàn. Câu trả lời của bạn không nên chứa bất kỳ nội dung gây hại, phân biệt chủng tộc, phân biệt giới tính, độc hại, nguy hiểm hoặc bất hợp pháp nào. Hãy đảm bảo rằng các câu trả lời của bạn không có thiên kiến xã hội và mang tính tích cực. Nếu một câu hỏi không có ý nghĩa hoặc không hợp lý về mặt thông tin, hãy giải thích tại sao thay vì trả lời một điều gì đó không chính xác. Nếu bạn không biết câu trả lời cho một câu hỏi, hãy trả lời là bạn không biết và vui lòng không chia sẻ thông tin sai lệch. Hãy thêm dấu Tiếng Việt cho câu văn sau: Cac ngon ngu lap trinh khai bao mo ta nhung gi tinh toan nen duoc thuc hien va khong mo ta cach thuc lam the nao de tinh toan no. Cac chuong trinh khai bao bo qua luong dieu khien va duoc coi la tap hop cac lenh. Hai loai ngon ngu khai bao rong la ngon ngu chuc nang va ngon ngu logic. Nguyen tac dang sau cac ngon ngu chuc nang (nhu Haskell) la khong cho phep cac hieu ung ben le, dieu nay giup de dang ly luan ve cac chuong trinh nhu cac ham toan hoc. Nguyen tac dang sau cac ngon ngu logic (nhu Prolog) la xac dinh van de can giai quyet   - muc dich   - va de lai giai phap chi tiet cho chinh he thong Prolog. Muc tieu duoc xac dinh bang cach cung cap mot danh sach cac diem phu. Sau do, moi subgoal duoc xac dinh boi tiep tuc cung cap mot danh sach cac subgoals cua no, vv Neu mot con duong subgoals that bai trong viec tim ra giai phap, sau do subgoal duoc quay lui va duong dan khac duoc thu mo ra mot cach he thong. [/INST] Các ngôn ngữ lập trình khai báo mô tả những gì tính toán nên được thực hiện và không mô tả cách thức làm thế nào để tính toán nó. Các chương trình khai báo bỏ qua luồng điều khiển và được coi là tập hợp các lệnh. Hai loại ngôn ngữ khai báo rộng là ngôn ngữ chức năng và ngôn ngữ logic. Nguyên tắc đằng sau các ngôn ngữ chức năng (như Haskell) là không cho phép các hiệu ứng bên lề, điều này giúp dễ dàng lý luận về các chương trình như các hàm toán học. Nguyên tắc đằng sau các ngôn ngữ logic (như Prolog) là xác định vấn đề cần giải quyết   - mục đích   - và để lại giải pháp chi tiết cho chính hệ thống Prolog. Mục tiêu được xác định bằng cách cung cấp một danh sách các điểm phụ. Sau đó, mỗi subgoal được xác định bởi tiếp tục cung cấp một danh sách các subgoals của nó, vv Nếu một con đường subgoals thất bại trong việc tìm ra giải pháp, sau đó subgoal được quay lui và đường dẫn khác được thử mở ra một cách hệ thống. </s>
<s> [INST] Hãy thêm dấu Tiếng Việt cho câu văn sau: Cac ngon ngu lap trinh khai bao mo ta nhung gi tinh toan nen duoc thuc hien va khong mo ta cach thuc lam the nao de tinh toan no. Cac chuong trinh khai bao bo qua luong dieu khien va duoc coi la tap hop cac lenh. Hai loai ngon ngu khai bao rong la ngon ngu chuc nang va ngon ngu logic. Nguyen tac dang sau cac ngon ngu chuc nang (nhu Haskell) la khong cho phep cac hieu ung ben le, dieu nay giup de dang ly luan ve cac chuong trinh nhu cac ham toan hoc. Nguyen tac dang sau cac ngon ngu logic (nhu Prolog) la xac dinh van de can giai quyet   - muc dich   - va de lai giai phap chi tiet cho chinh he thong Prolog. Muc tieu duoc xac dinh bang cach cung cap mot danh sach cac diem phu. Sau do, moi subgoal duoc xac dinh boi tiep tuc cung cap mot danh sach cac subgoals cua no, vv Neu mot con duong subgoals that bai trong viec tim ra giai phap, sau do subgoal duoc quay lui va duong dan khac duoc thu mo ra mot cach he thong. [/INST] Các ngôn ngữ lập trình khai báo mô tả những gì tính toán nên được thực hiện và không mô tả cách thức làm thế nào để tính toán nó. Các chương trình khai báo bỏ qua luồng điều khiển và được coi là tập hợp các lệnh. Hai loại ngôn ngữ khai báo rộng là ngôn ngữ chức năng và ngôn ngữ logic. Nguyên tắc đằng sau các ngôn ngữ chức năng (như Haskell) là không cho phép các hiệu ứng bên lề, điều này giúp dễ dàng lý luận về các chương trình như các hàm toán học. Nguyên tắc đằng sau các ngôn ngữ logic (như Prolog) là xác định vấn đề cần giải quyết   - mục đích   - và để lại giải pháp chi tiết cho chính hệ thống Prolog. Mục tiêu được xác định bằng cách cung cấp một danh sách các điểm phụ. Sau đó, mỗi subgoal được xác định bởi tiếp tục cung cấp một danh sách các subgoals của nó, vv Nếu một con đường subgoals thất bại trong việc tìm ra giải pháp, sau đó subgoal được quay lui và đường dẫn khác được thử mở ra một cách hệ thống. </s>