Nói một cách đơn giản, với sự nhúng sâu vào logic, bạn (1) xác định một kiểu dữ liệu biểu thị cú pháp cho logic của bạn và (2) đưa ra một mô hình cú pháp và (3) chứng minh rằng các tiên đề về cú pháp của bạn là âm thanh đối với đến mô hình. Với cách nhúng nông, bạn bỏ qua các bước (1) và (2), và chỉ bắt đầu với một mô hình và chứng minh sự ràng buộc giữa các công thức. Điều này có nghĩa là các nhúng nhúng thường ít hoạt động hơn để lên khỏi mặt đất, vì chúng đại diện cho công việc mà bạn thường kết thúc bằng cách nhúng sâu.
Tuy nhiên, nếu có một sự nhúng sâu, thường sẽ dễ dàng hơn để viết các thủ tục quyết định phản ánh, vì bạn đang làm việc với các công thức thực sự có cú pháp mà bạn có thể lặp lại. Ngoài ra, nếu mô hình của bạn lạ hoặc phức tạp, thì bạn thường không muốn làm việc trực tiếp với ngữ nghĩa. (Ví dụ: nếu bạn sử dụng tính đa dạng sinh học để buộc đóng cửa có thể chấp nhận được hoặc sử dụng các mô hình kiểu Kripke để buộc các thuộc tính khung trong logic tách biệt hoặc các trò chơi tương tự.) Tuy nhiên, việc nhúng sâu gần như chắc chắn sẽ khiến bạn phải suy nghĩ rất nhiều về sự ràng buộc và thay thế thay đổi , điều này sẽ lấp đầy trái tim bạn bằng cơn thịnh nộ, vì đây là (a) tầm thường, và (b) là nguồn phiền toái không bao giờ kết thúc.
Trình tự chính xác bạn nên thực hiện là: (1) cố gắng thực hiện bằng cách nhúng nông. (2) Khi hết hơi, hãy thử sử dụng chiến thuật và báo giá để chạy các quy trình quyết định bạn muốn chạy. (3) Nếu điều đó cũng hết hơi, hãy từ bỏ và sử dụng cú pháp gõ phụ thuộc để nhúng sâu.
- Lên kế hoạch mất vài tháng vào (3) nếu đây là lần đầu tiên bạn ra ngoài. Bạn sẽ cần phải làm quen với các tính năng ưa thích của trợ lý bằng chứng của bạn để tỉnh táo. (Nhưng đây là một khoản đầu tư sẽ trả hết nói chung.)
- Nếu trợ lý chứng minh của bạn không có loại phụ thuộc, hãy ở cấp 2.
- Nếu ngôn ngữ đối tượng của bạn được gõ một cách phụ thuộc, hãy ở cấp 2.
Ngoài ra, đừng cố gắng đi dần lên thang. Khi bạn quyết định đi lên thang phức tạp, hãy thực hiện một bước đầy đủ tại một thời điểm. Nếu bạn làm từng chút một, thì bạn sẽ nhận được rất nhiều định lý kỳ lạ và không thể sử dụng được (ví dụ: bạn sẽ nhận được nhiều cú pháp nửa khẳng định và các định lý pha trộn cú pháp và ngữ nghĩa theo những cách lạ), mà bạn sẽ cuối cùng phải vứt đi.
EDIT: Đây là một nhận xét giải thích lý do tại sao đi lên thang dần dần rất hấp dẫn và tại sao nó dẫn (nói chung) dẫn đến đau khổ.
A⋆BIA⋆B⟺B⋆A(A⋆B)⋆C⟺A⋆(B⋆C)(I⋆A)⋆(B⋆C)A⋆(B⋆(C⋆I))
⋆
Đây là sự thật, và hoạt động! Tuy nhiên, lưu ý rằng sự kết hợp cũng là ACUI và sự khác biệt cũng vậy. Vì vậy, bạn sẽ trải qua quá trình tương tự trong các bằng chứng khác, với các kiểu dữ liệu danh sách khác nhau và sau đó bạn sẽ có ba cú pháp cho các đoạn logic phân tách khác nhau và chắc chắn bạn sẽ có các tiện ích cho mỗi trong số chúng, chắc chắn sẽ khác nhau, và bạn sẽ thấy mình muốn có một meteditorem mà bạn đã chứng minh để tách kết hợp cho sự khác biệt, và sau đó bạn sẽ muốn trộn các cú pháp, và sau đó bạn sẽ phát điên.
Tốt hơn là nhắm mục tiêu mảnh lớn nhất mà bạn có thể xử lý với một nỗ lực hợp lý và chỉ cần làm điều đó.