Sử dụng kết quả âm tính để chứng minh kết quả tích cực trong lý thuyết tính toán


8

Nhiều kết quả trong mật mã phụ thuộc vào kết quả / phỏng đoán bất khả thi trong lý thuyết phức tạp. Ví dụ, mật mã khóa công khai sử dụng RSA được cho là có thể do phỏng đoán về tính không khả thi của bao thanh toán (và các vấn đề tìm kiếm gốc mô-đun).

Câu hỏi của tôi là :

chúng ta có kết quả tương tự trong lý thuyết tính toán? Có xây dựng tích cực thú vị bằng cách sử dụng kết quả không thể tiêu cực?

Ví dụ, tính không ổn định của vấn đề tạm dừng cho phép chúng tôi thực hiện các nhiệm vụ mà chúng tôi sẽ không thể thực hiện nếu vấn đề tạm dừng là có thể quyết định?


1
Hai cách sử dụng chính của kết quả phủ định trong lý thuyết phức tạp là (1) mật mã học và (2) derandomization. Cả hai điều này đều không áp dụng trong khung tính toán. Giải mã một hệ thống mật mã có thể tính toán chắc chắn là một nhiệm vụ có thể tính toán được và bất kỳ chức năng nào có thể tính toán được trên máy Turing ngẫu nhiên cũng có thể tính toán được trên máy Turing xác định (theo cách xây dựng).
David Harris

1
đây dường như là một câu hỏi về từ ngữ "Mật mã khóa công khai sử dụng RSA là có thể" chỉ là cách nói nửa vời hoàn toàn bằng kính "bẻ khóa RSA trong nhiều thời gian là không thể". Tôi không thấy RSA là một công trình tích cực như thế nào ... nó chỉ là một công trình và bằng chứng bảo mật của nó là kết quả tiêu cực về các thuật toán bất lợi có thể có.
Artem Kaznatcheev

@Artem, vấn đề ở đây là chúng tôi đang xây dựng một giao thức có thể được sử dụng và điều kiện là giao thức này hữu ích là kết quả tiêu cực rằng không có đối thủ nào có thể phá vỡ nó. Theo trực giác những gì tôi muốn nói bởi một kết quả tiêu cực là một định lý nói rằng một cái gì đó không thể được thực hiện. Theo một kết quả tích cực, tôi có nghĩa là một công trình cho phép thực hiện một số nhiệm vụ (ví dụ: giao tiếp an toàn). Một kết quả tích cực có thể có một kết quả tiêu cực bên trong nó. Tôi sẽ suy nghĩ về việc thể hiện điều này chính thức hơn.
Kaveh

@David, vâng, tôi biết về hai điều này. Bạn có biết sử dụng kết quả âm tính nào khác cho kết quả dương tính trong lý thuyết phức tạp / tiền điện tử không?
Kaveh

5
Tôi cũng nghĩ đó là một câu hỏi về từ ngữ. Ví dụ: bạn có thể lấy định lý Rice và nói "đối với mỗi phần mềm chống vi-rút, bạn có thể tạo vi-rút không được nhận dạng". Trong mọi định lý không hoàn chỉnh, bạn có thể chuyển đổi nó thành "bạn có thể xây dựng một ví dụ mẫu".
Ludovic Patey

Câu trả lời:


7

Trong một số ý nghĩa, đây là những gì lý thuyết về tham số là tất cả về.

Trừu tượng hóa dữ liệu là cách chúng tôi đảm bảo rằng không có máy khách nào của mô-đun có thể truy cập vào các thành phần của mô-đun ngoại trừ theo giao diện được hiển thị bởi mô-đun. Chúng tôi dựa vào điều này để đảm bảo rằng các bất biến bên trong của cấu trúc dữ liệu không thể bị phá vỡ bởi các máy khách của mô-đun - ví dụ: nếu bạn truy cập vào một cây cân bằng chỉ qua giao diện được xuất bản, thì nó sẽ theo đó cây sẽ luôn được cân bằng.

Vì vậy, chúng tôi sử dụng một thuộc tính phủ định - rằng không khách hàng nào có thể phá vỡ ranh giới trừu tượng - để suy ra một giá trị dương - mà bất biến đại diện dữ liệu luôn giữ.


Dữ liệu được truy cập thông qua một nhà tiên tri thích hợp, nhưng điều đó không nhất thiết ngụ ý rằng không thể truy cập trực tiếp
David Harris

1
Sự trừu tượng hóa dữ liệu về cơ bản là một kết quả có thể xác định : nó nói rằng không có chương trình nào trong ngôn ngữ lập trình có thể phá vỡ các ranh giới trừu tượng hóa. Nếu bạn sử dụng một cơ chế ngoại ngữ (ví dụ: bạn kích hoạt trình gỡ lỗi của mình), tất nhiên bạn có thể thấy các trường riêng mà bảng băm có.
Neel Krishnaswami

6

Sự phức tạp Kolmogorov có thể thuộc loại này.

Người ta có thể chỉ ra rằng có một số chuỗi nhất định, không thể được nén bởi bất kỳ máy Turing nào. Các chuỗi này hoạt động "một cách tổng quát" để bạn có thể nghiên cứu các thuộc tính ngẫu nhiên của thông tin nhất định và các tác vụ tính toán bằng cách nghiên cứu hành vi liên quan đến chuỗi không thể nén (không ngẫu nhiên).


Cảm ơn, một người khác cũng đề xuất điều này trong một cuộc thảo luận ngoại tuyến. (Tôi không hoàn toàn bị thuyết phục vì chúng tôi không thực sự sử dụng chuỗi ngẫu nhiên tính toán để thực hiện các nhiệm vụ trong thế giới thực, nó mang nhiều hương vị hiện sinh hơn là xây dựng một cái gì đó, tôi có lẽ nên suy nghĩ thêm một chút về ý nghĩa chính xác của kết quả tích cực . ps: động lực ban đầu của tôi là cho sinh viên đại học học lý thuyết tính toán một ví dụ về tính hữu ích của kết quả tiêu cực trong việc xây dựng mọi thứ để thực hiện các nhiệm vụ trong thế giới thực.)
Kaveh

Mặc dù người ta không (và không thể) xây dựng các chuỗi không thể nén trong thực tế, nhưng việc xây dựng một chuỗi ngẫu nhiên là rất phổ biến. Sau đó, với xác suất cao, nó sẽ không thể nén được.
David Harris
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.