Nếu bạn có hai hàm thực hiện một thuật toán sắp xếp khác nhau, thì có thể suy ra bằng mã nguồn mà cả hai đều có cùng thuộc tính bên ngoài không? Có nghĩa là cả hai sẽ có một chuỗi chưa được sắp xếp có thể là đầu vào của chúng và có một chuỗi được sắp xếp là đầu ra của chúng? Bằng cách nào các thuộc tính bên ngoài có thể được xác định bởi mã nguồn? Và làm thế nào bạn sẽ mô tả các thuộc tính bên ngoài? Ký hiệu nào sẽ được sử dụng?
Các thuộc tính bên ngoài có thể được biết bằng cách xác định chúng rõ ràng, ví dụ trong một hệ thống loại, nhưng tôi tự hỏi liệu điều này có thể được thực hiện ngầm hay không. Hoặc về mặt lý thuyết là không thể suy ra loại ngữ nghĩa này? Tôi quan tâm đến việc liệu điều này có khả thi đối với các hàm tùy ý không chỉ cho việc sắp xếp các thuật toán, giả sử những thứ như hàm sẽ luôn dừng lại và không có tác dụng phụ.
Tôi nên xem xét ngữ nghĩa học biểu thị, hoặc không liên quan?
Tôi quan tâm đến con trỏ để nghiên cứu trong lĩnh vực này và các thuật ngữ khác nhau được sử dụng để mô tả chủ đề có thể giúp tìm kiếm tài liệu của tôi.