Bằng chứng sử dụng trợ lý trong nghiên cứu lý thuyết phức tạp?


14

Xem xét các chủ đề được đề cập tại một hội nghị như STOC, có bất kỳ nhà nghiên cứu thuật toán hoặc độ phức tạp nào tích cực sử dụng COQ hoặc Isabelle không? Nếu vậy, làm thế nào họ sử dụng nó trong nghiên cứu của họ? Tôi cho rằng hầu hết mọi người sẽ không sử dụng các công cụ như vậy bởi vì bằng chứng sẽ ở mức quá thấp. Có ai sử dụng các trợ lý chứng minh này theo cách quan trọng đối với nghiên cứu của họ, trái ngược với một bổ sung tốt đẹp không?

Tôi thích thú vì tôi có thể bắt đầu học một trong những công cụ đó và thật vui khi tìm hiểu về chúng trong bối cảnh chứng minh giảm, chính xác hoặc thời gian chạy.


1
Bạn có muốn loại trừ "Lý thuyết B" và lý thuyết cụ thể về ngôn ngữ lập trình không? Hiểu biết của tôi là các trợ lý chứng minh được sử dụng thường xuyên hơn trong PL ...
Joshua Grochow

1
Tôi đã tra cứu thuật ngữ này, tôi đoán rằng tôi đang tập trung vào các ứng dụng trong "Lý thuyết A"
nish2575

1
Theo như tôi biết, hầu hết các lý thuyết A đều thuộc cùng loại với hầu hết các phần còn lại của toán học: rất ít nền tảng đã được thêm vào cho các hệ thống này, vì vậy hầu hết các định lý thú vị sẽ phải nỗ lực đáng kể để phát triển đầu tiên cơ sở hạ tầng để thực hiện các định nghĩa cần thiết. Có một vài điều thú vị của lý thuyết automata đã được chính thức hóa, vì vậy đó có thể là một nơi để xem xét.
András Salamon

1
Kết quả trong lý thuyết phức tạp có xu hướng có thể chứng minh được trong các hệ thống yếu hơn nhiều, thông thường bạn thậm chí không cần PA. Coq và Isabeller không phù hợp lắm với lý thuyết phức tạp mà tôi muốn nói. Có những bản phác thảo bằng chứng gần như chính thức như trong sách của Cook và Nguyễn, nhưng mối quan tâm chính là chứng minh chúng trong hệ thống bằng chứng liên quan đến các lớp phức tạp. Tại sao người ta muốn chứng minh chúng khi nói Chuyển đổi bổ đề trong Coq khi nó có thể được chứng minh trong các hệ thống yếu hơn nhiều?
Kaveh

2
@Kaveh Điểm yếu / sức mạnh của các hệ thống bằng chứng khác nhau không phải là vấn đề ở đó: chúng tôi muốn chính thức xác minh bằng chứng trong lý thuyết phức tạp vì cùng lý do chúng tôi muốn xác minh các chương trình: có độ tin cậy cao hơn. Ngoài ra, đây cũng là một thách thức thú vị để mở rộng lý thuyết tục ngữ để họ có thể xử lý các bằng chứng lý thuyết phức tạp thuận tiện hơn.
Martin Berger

Câu trả lời:


15

Một nguyên tắc chung là toán học càng muốn trừu tượng hóa / kỳ lạ, bạn càng dễ dàng hơn. Ngược lại, toán học càng cụ thể / quen thuộc thì càng khó. Vì vậy, (ví dụ) các động vật quý hiếm như cấu trúc liên kết không có điểm dự đoán rất dễ cơ giới hóa hơn so với cấu trúc liên kết số liệu thông thường.

Điều này ban đầu có vẻ hơi ngạc nhiên, nhưng về cơ bản là do các vật thể cụ thể như số thực tham gia vào một loạt các cấu trúc đại số hoang dã, và bằng chứng liên quan đến chúng có thể sử dụng bất kỳ tài sản nào từ bất kỳ góc nhìn nào của chúng. Vì vậy, để có thể lý luận thông thường mà các nhà toán học đã quen, bạn phải cơ giới hóa tất cả những điều này. Ngược lại, các cấu trúc trừu tượng cao có một tập các thuộc tính nhỏ (có chủ ý) và bị hạn chế, do đó bạn phải cơ giới hóa ít hơn nhiều trước khi bạn có thể có được các bit tốt.

Bằng chứng về lý thuyết phức tạp và thuật toán / cấu trúc dữ liệu có xu hướng (như một quy tắc) để sử dụng các thuộc tính tinh vi của các tiện ích đơn giản như số, cây hoặc danh sách. Ví dụ, các đối số tổ hợp, xác suất và lý thuyết số thường xuyên xuất hiện tất cả cùng một lúc trong các định lý trong lý thuyết phức tạp. Nhận trợ lý thư viện trợ lý đến mức mà điều này là tốt để làm là khá nhiều công việc!

Một bối cảnh mà mọi người sẵn sàng đưa vào công việc là trong các thuật toán mật mã. Có những ràng buộc thuật toán rất tinh vi được đặt ra vì những lý do toán học phức tạp và bởi vì mã tiền điện tử chạy trong môi trường đối nghịch, ngay cả một lỗi nhỏ nhất cũng có thể là thảm họa. Vì vậy, ví dụ, dự án Certicrypt đã xây dựng rất nhiều cơ sở hạ tầng xác minh cho mục đích xây dựng các bằng chứng được kiểm tra bằng máy về tính chính xác của các thuật toán mã hóa.


6

Tất nhiên, một ví dụ rất nổi bật là Gonthiers Coq chính thức hóa định lý 4 màu trong Coq sử dụng rất nhiều tổ hợp.

Đồng nghiệp của tôi, Uli Schöpp, đã sử dụng thư viện ssreflect do Gonthier phát triển cho mục đích này để xác minh (và mở rộng một chút) trong Coq một kết quả của Cook và Rackoff trên biểu đồ automata. https://scholar.google.at/scholar?oi=bibs&cluster=4944920843669159892&btnI=1&hl=de (Schöpp, U. (2008). trang 621-635). Springer Berlin / Heidelberg.)

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.