The Complexity of Theorem-Proving Procedures
This paper is under a licence that does not allow it to be reproduced, so what is here is its front matter and a short abstract. Read it at the publisher's page.
Độ phức tạp của các thủ tục chứng minh định lý
Stephen A. Cook University of Toronto
Tóm tắt
Summary
Chỉ ra rằng mọi bài toán nhận dạng được giải bởi một máy Turing không tất định bị giới hạn thời gian đa thức đều có thể được "rút gọn" về bài toán xác định liệu một công thức mệnh đề đã cho có phải là một hằng đúng hay không. Ở đây "rút gọn" có nghĩa, một cách đại khái, là bài toán thứ nhất có thể được giải một cách tất định trong thời gian đa thức với điều kiện có sẵn một oracle để giải bài toán thứ hai. Từ khái niệm về khả năng rút gọn này, các bậc đa thức về độ khó được định nghĩa, và chỉ ra rằng bài toán xác định tính hằng đúng có cùng bậc đa thức với bài toán xác định liệu đồ thị thứ nhất trong hai đồ thị đã cho có đẳng cấu với một đồ thị con của đồ thị thứ hai hay không. Các ví dụ khác được thảo luận. Một phương pháp đo độ phức tạp của các thủ tục chứng minh cho phép tính vị từ được đưa ra và thảo luận.
It is shown that any recognition problem solved by a polynomial time-bounded nondeterministic Turing machine can be "reduced" to the problem of determining whether a given propositional formula is a tautology. Here "reduced" means, roughly speaking, that the first problem can be solved deterministically in polynomial time provided an oracle is available for solving the second. From this notion of reducible, polynomial degrees of difficulty are defined, and it is shown that the problem of determining tautologyhood has the same polynomial degree as the problem of determining whether the first of two given graphs is isomorphic to a subgraph of the second. Other examples are discussed. A method of measuring the complexity of proof procedures for the predicate calculus is introduced and discussed.
Trong toàn bộ bài báo này, một tập các chuỗi có nghĩa là một tập các chuỗi trên một bảng chữ cái cố định, lớn, hữu hạn nào đó. Bảng chữ cái này đủ lớn để bao gồm các ký hiệu cho tất cả các tập được mô tả ở đây. Tất cả các máy Turing đều là các thiết bị nhận dạng tất định, trừ khi điều ngược lại được nêu rõ.
Throughout this paper, a set of strings means a set of strings on some fixed, large, finite alphabet . This alphabet is large enough to include symbols for all sets described here. All Turing machines are deterministic recognition devices, unless the contrary is explicitly stated.
1 Các phép đồng nhất và khả quy đa thức
1 Tautologies and Polynomial Reducibility
Ta cố định một hình thức hóa cho phép tính mệnh đề trong đó các công thức được viết dưới dạng các chuỗi trên . Vì ta sẽ cần vô hạn ký hiệu mệnh đề (nguyên tử), mỗi ký hiệu như vậy sẽ gồm một phần tử của theo sau bởi một số ở dạng ký hiệu nhị phân để phân biệt ký hiệu đó. Do đó một công thức có độ dài n chỉ có thể có khoảng ký hiệu hàm và vị từ phân biệt. Các liên kết logic là (và), (hoặc), và (không).
Let us fix a formalism for the propositional calculus in which formulas are written as strings on . Since we will require infinitely many proposition symbols (atoms), each such symbol will consist of a member of followed by a number in binary notation to distinguish that symbol. Thus a formula of length n can only have about distinct function and predicate symbols. The logical connectives are (and), (or), and (not).
Tập các phép đồng nhất (được ký hiệu bởi {tautologies}) là một tập đệ quy nào đó của các chuỗi trên bảng chữ cái này, và ta quan tâm đến bài toán tìm một cận dưới tốt cho thời gian nhận dạng có thể có của nó. Ở đây ta không đưa ra cận dưới như vậy, nhưng định lý 1 sẽ cung cấp bằng chứng rằng {tautologies} là một tập khó nhận dạng, vì nhiều bài toán có vẻ khó có thể được rút gọn về việc xác định tính đồng nhất. Khi nói rút gọn, ta có ý gần đúng rằng nếu tính đồng nhất có thể được quyết định tức thời (bởi một "tiên tri") thì các bài toán này có thể được quyết định trong thời gian đa thức. Để làm chính xác khái niệm này, ta đưa vào các máy truy vấn, giống như các máy Turing với tiên tri trong [1].
The set of tautologies (denoted by {tautologies}) is a certain recursive set of strings on this alphabet, and we are interested in the problem of finding a good lower bound on its possible recognition times. We provide no such lower bound here, but theorem 1 will give evidence that {tautologies} is a difficult set to recognize, since many apparently difficult problems can be reduced to determining tautologyhood. By reduced we mean, roughly speaking, that if tautologyhood could be decided instantly (by an "oracle") then these problems could be decided in polynomial time. In order to make this notion precise, we introduce query machines, which are like Turing machines with oracles in [1].
Một máy truy vấn là một máy Turing nhiều băng với một băng đặc biệt được gọi là băng truy vấn, và ba trạng thái đặc biệt lần lượt được gọi là trạng thái truy vấn, trạng thái yes, và trạng thái no. Nếu M là một máy truy vấn và T là một tập các chuỗi, thì một T-tính toán của M là một tính toán của M trong đó ban đầu M ở trạng thái ban đầu và có một chuỗi đầu vào w trên băng đầu vào, và mỗi lần M đạt đến trạng thái truy vấn thì có một chuỗi u trên băng truy vấn, và trạng thái tiếp theo mà M đạt đến là trạng thái yes nếu và là trạng thái no nếu . Ta hình dung một "tiên tri", biết T, đặt M vào trạng thái yes hoặc no.
A query machine is a multitape Turing machine with a distinguished tape called the query tape, and three distinguished states called the query state, yes state, and no state, respectively. If M is a query machine and T is a set of strings, then a T-computation of M is a computation of M in which initially M is in the initial state and has an input string w on its input tape, and each time M assumes the query state there is a string u on the query tape, and the next state M assumes is the yes state if and the no state if . We think of an "oracle", which knows T, placing M in the yes state or no state.
Định nghĩa
Definition
Một tập S các chuỗi là P-khả quy (P là đa thức) về một tập T các chuỗi khi và chỉ khi tồn tại một máy truy vấn M nào đó và một đa thức Q(n) sao cho với mỗi chuỗi đầu vào w, T-tính toán của M với đầu vào w dừng trong vòng bước ( là độ dài của w), và kết thúc ở một trạng thái chấp nhận khi và chỉ khi .
A set S of strings is P-reducible (P for polynomial) to a set T of strings iff there is some query machine M and a polynomial Q(n) such that for each input string w, the T-computation of M with input w halts within steps ( is the length of w), and ends in an accepting state iff .
Không khó để thấy rằng P-khả quy là một quan hệ bắc cầu. Vì vậy quan hệ E trên các tập chuỗi, được cho bởi khi và chỉ khi mỗi tập và đều P-khả quy về tập kia, là một quan hệ tương đương. Lớp tương đương chứa một tập sẽ được ký hiệu bởi (bậc đa thức về độ khó của ).
It is not hard to see that P-reducibility is a transitive relation. Thus the relation E on sets of strings, given by iff each of and is P-reducible to the other, is an equivalence relation. The equivalence class containing a set will be denoted by (the polynomial degree of difficulty of ).
Định nghĩa: Ta sẽ ký hiệu bởi , trong đó biểu thị hàm không.
Definition: We will denote by , where denotes the zero function.
Bây giờ ta định nghĩa các tập chuỗi đặc biệt sau đây.
We now define the following special sets of strings.
- Bài toán đồ thị con là bài toán cho hai đồ thị vô hướng hữu hạn, xác định xem đồ thị thứ nhất có đẳng cấu với một đồ thị con của đồ thị thứ hai hay không. Một đồ thị có thể được biểu diễn bởi một chuỗi trên bảng chữ cái bằng cách liệt kê các hàng liên tiếp của ma trận kề của nó, được phân cách bởi các dấu * . Ta ký hiệu {subgraph pairs} là tập các chuỗi sao cho đẳng cấu với một đồ thị con của .
- The subgraph problem is the problem given two finite undirected graphs, determine whether the first is isomorphic to a subgraph of the second. A graph can be represented by a string on the alphabet by listing the successive rows of its adjacency matrix, separated by *'s. We let {subgraph pairs} denote the set of strings such that is isomorphic to a subgraph of .
- Bài toán đẳng cấu đồ thị sẽ được biểu diễn bởi tập, được ký hiệu là {isomorphic graphpairs}, gồm tất cả các chuỗi sao cho đẳng cấu với .
- The graph isomorphism problem will be represented by the set, denoted by {isomorphic graphpairs}, of all strings such that is isomorphic to .
- Tập {Primes} là tập tất cả các biểu diễn nhị phân của các số nguyên tố.
- The set {Primes} is the set of all binary notations for prime numbers.
- Tập {DNF tautologies} là tập các chuỗi biểu diễn các phép đồng nhất ở dạng chuẩn tách rời.
- The set {DNF tautologies} is the set of strings representing tautologies in disjunctive normal form.
- Tập gồm các phép đồng nhất ở dạng chuẩn tách rời trong đó mỗi tuyển thức có nhiều nhất ba hội thức (mỗi hội thức là một nguyên tử hoặc phủ định của một nguyên tử).
- The set consists of those tautologies in disjunctive normal form in which each disjunct has at most three conjuncts (each of which is an atom or negation of an atom).
Định lý 1: Nếu một tập các chuỗi được chấp nhận bởi một máy Turing không tất định trong thời gian đa thức, thì là P-khả quy về {DNF tautologies}.
Theorem 1: If a set of strings is accepted by some nondeterministic Turing machine within polynomial time, then is P-reducible to {DNF tautologies}.
Hệ quả: Mỗi tập trong các định nghĩa 1)-5) đều là P-khả quy về {DNF tautologies}.
Corollary: Each of the sets in definitions 1)-5) is P-reducible to {DNF tautologies}.
Điều này là vì mỗi tập, hoặc phần bù của nó, được chấp nhận trong thời gian đa thức bởi một máy Turing không tất định nào đó.
This is because each set, or its complement, is accepted in polynomial time by some nondeterministic Turing machine.
Chứng minh định lý: Giả sử một máy Turing không tất định chấp nhận một tập các chuỗi trong thời gian , trong đó là một đa thức. Với một đầu vào cho , ta sẽ xây dựng một công thức mệnh đề ở dạng chuẩn hội sao cho thỏa được khi và chỉ khi chấp nhận . Do đó dễ dàng được đưa về dạng chuẩn tách rời (sử dụng các luật De Morgan), và là một phép đồng nhất khi và chỉ khi . Vì toàn bộ phép xây dựng có thể được thực hiện trong thời gian bị chặn bởi một đa thức theo (độ dài của ), định lý được chứng minh.
Proof of the theorem: Suppose a nondeterministic Turing machine accepts a set of strings within time , where is a polynomial. Given an input for , we will construct a proposition formula in conjunctive normal form such that is satisfiable iff accepts . Thus is easily put in disjunctive normal form (using De Morgan's laws), and is a tautology if and only if . Since the whole construction can be carried out in time bounded by a polynomial in (the length of ), the theorem will be proved.
Chúng ta có thể giả sử rằng máy Turing chỉ có một băng, vô hạn về phía bên phải nhưng có một ô ngoài cùng bên trái. Ta đánh số các ô từ trái sang phải . Ta cố định một đầu vào cho có độ dài , và giả sử . Khi đó có một phép tính của với đầu vào kết thúc ở một trạng thái chấp nhận trong vòng bước. Công thức sẽ được xây dựng từ nhiều ký hiệu mệnh đề khác nhau, có ý nghĩa dự định, được liệt kê dưới đây, đề cập đến một phép tính như vậy.
We may as well assume the Turing machine has only one tape, which is infinite to the right but has a left-most square. Let us number the squares from left to right . Let us fix an input to of length , and suppose . Then there is a computation of with input that ends in an accepting state within steps. The formula will be built from many different proposition symbols, whose intended meanings, listed below, refer to such a computation.
Giả sử bảng chữ cái băng của là , và tập các trạng thái là . Lưu ý rằng vì phép tính có nhiều nhất bước, không có ô băng nào vượt quá số được quét.
Suppose the tape alphabet for is , and the set of states is . Notice that since the computation has at most steps, no tape square beyond number is scanned.
Các ký hiệu mệnh đề:
Proposition symbols:
đúng khi và chỉ khi ô băng số tại bước chứa ký hiệu .
is true iff tape square number at step contains the symbol .
Công thức là một liên kết hội B\&C\&D\&E\&F\&G\&H\&I được tạo thành như sau. Lưu ý ở dạng chuẩn hội.
The formula is a conjunctive B\&C\&D\&E\&F\&G\&H\&I formed as follows. Notice is in conjunctive normal form.
B sẽ khẳng định rằng ở mỗi bước t, một và chỉ một ô được quét. B là một phép hội , trong đó khẳng định rằng tại thời điểm t một và chỉ một ô được quét:
B will assert that at each step t, one and only one square is scanned. B is a conjunction , where asserts that at time t one and only one square is scanned:
Với và , khẳng định rằng tại ô s và thời điểm t có một và chỉ một ký hiệu. C là phép hội của tất cả các .
For and , asserts that at square s and time t there is one and only one symbol. C is the conjunction of all the .
D khẳng định rằng với mỗi t có một và chỉ một trạng thái.
D asserts that for each t there is one and only one state.
E khẳng định rằng các điều kiện ban đầu được thỏa mãn:
E asserts the initial conditions are satisfied:
trong đó , là trạng thái ban đầu và là ký hiệu trống.
where , is the initial state and is the blank symbol.
F, G, và H khẳng định rằng với mỗi thời điểm t các giá trị của các P, Q và S được cập nhật đúng. Ví dụ, G là phép hội theo mọi t, i, j của , trong đó khẳng định rằng nếu tại thời điểm t máy ở trạng thái đang quét ký hiệu , thì tại thời điểm máy ở trạng thái , trong đó là trạng thái được cho bởi hàm chuyển của M.
F, G, and H assert that for each time t the values of the P's, Q's and S's are updated properly. For example, G is the conjunction over all t, i, j of , where asserts that if at time t the machine is in state scanning symbol , then at time the machine is in state , where is the state given by the transition function for M.
Cuối cùng, công thức I khẳng định rằng máy đạt đến trạng thái chấp nhận tại một thời điểm nào đó. Máy M nên được sửa đổi để nó tiếp tục tính toán theo một cách tầm thường sau khi đạt đến trạng thái chấp nhận, sao cho sẽ được thỏa mãn.
Finally, the formula I asserts that the machine reaches an accepting state at some time. The machine M should be modified so that it continues to compute in some trivial fashion after reaching an accepting state, so that will be satisfied.
Bây giờ có thể dễ dàng kiểm chứng rằng có tất cả các tính chất được khẳng định trong đoạn đầu tiên của chứng minh.
It is now straightforward to verify that has all the properties asserted in the first paragraph of the proof.
Định lý 2: Các tập sau đây P-giảm được lẫn nhau theo từng cặp (và do đó mỗi tập có cùng bậc khó khăn đa thức): {tautologies}, {DNF tautologies}, , {subgraph pairs}.
Theorem 2: The following sets are P-reducible to each other in pairs (and hence each has the same polynomial degree of difficulty): {tautologies}, {DNF tautologies}, , {subgraph pairs}.
Nhận xét: Chúng tôi chưa thể thêm {primes} hoặc {isomorphic graph pairs} vào danh sách trên. Việc chỉ ra rằng {tautologies} là P-giảm được về {primes} dường như đòi hỏi một số kết quả sâu sắc trong lý thuyết số, trong khi việc chỉ ra rằng {tautologies} là P-giảm được về {isomorphic graph pairs} có lẽ sẽ bác bỏ một phỏng đoán của Corneil [4] mà từ đó ông suy ra rằng bài toán đẳng cấu đồ thị có thể được giải trong thời gian đa thức.
Remark: We have not been able to add either {primes} or {isomorphic graph pairs} to the above list. To show {tautologies} is P-reducible to {primes} would seem to require some deep results in number theory, while showing {tautologies} is P-reducible to {isomorphic graph pairs} would probably upset a conjecture of Corneil's [4] from which he deduces that the graph isomorphism problem can be solved in polynomial time.
Tình cờ, không khó để thấy từ thủ tục Davis-Putnam [5] rằng tập , bao gồm tất cả các hằng đúng DNF với nhiều nhất hai hội tử trong mỗi tuyển tử, nằm trong . Do đó không thể được thêm vào danh sách trong định lý 2 (trừ khi tất cả các tập trong danh sách đều nằm trong ).
Incidently, it not hard to see from the Davis-Putnam procedure [5] that the set , consisting of all DNF tautologies with at most two conjuncts per disjunct, is in . Hence cannot be added to the list in theorem 2 (unless all sets in the list are in ).
Chứng minh định lý 2: Theo hệ quả của định lý 1, mỗi tập đều P-giảm được về {DNF tautologies}. Vì hiển nhiên {DNF tautologies} là P-giảm được về {tautologies}, còn lại cần chỉ ra rằng {DNF tautologies} là P-giảm được về và là P-giảm được về {subgraph pairs}.
Proof of theorem 2: By the corollary to theorem 1, each of the sets is P-reducible to {DNF tautologies}. Since obviously {DNF tautologies} is P-reducible to {tautologies}, it remains to show {DNF tautologies} is P-reducible to and is P-reducible to {subgraph pairs}.
Để chỉ ra rằng {các hằng đúng DNF} là P-rút gọn được về , cho A là một công thức mệnh đề ở dạng chuẩn tuyển. Giả sử , trong đó , và mỗi là một nguyên tử hoặc phủ định của một nguyên tử, và . Khi đó A là một hằng đúng khi và chỉ khi là một hằng đúng, trong đó
To show {DNF tautologies} is P-reducible to , let A be a proposition formula in disjunctive normal form. Say , where , and each is an atom or negation of an atom, and . Then A is a tautology if and only if is a tautology where
trong đó P là một nguyên tử mới. Vì chúng ta đã giảm số hạng liên hợp trong , quá trình này có thể được lặp lại cho đến khi cuối cùng tìm được một công thức có nhiều nhất ba hạng liên hợp trên mỗi hạng tuyển. Rõ ràng toàn bộ quá trình bị chặn về thời gian bởi một đa thức theo độ dài của A.
where P is a new atom. Since we have reduced the number of conjuncts in , this process may be repeated until eventually a formula is found with at most three conjuncts per disjunct. Clearly the entire process is bounded in time by a polynomial in the length of A.
Còn lại cần chỉ ra rằng là P-rút gọn được về {các cặp đồ thị con}. Giả sử A là một công thức ở dạng chuẩn tuyển với ba hạng liên hợp trên mỗi hạng tuyển. Do đó , trong đó
It remains to show is P-reducible to {subgraph pairs}. Suppose A is a formula in disjunctive normal form with three conjuncts per disjunct. Thus , where
C_i = R_{i1} \& R_{i2} \& R_{i3}, và mỗi R_{ij} là một nguyên tử hoặc một phủ định của một nguyên tử. Bây giờ cho G_1 là đồ thị đầy đủ với các đỉnh {v_1, v_2, ..., v_k}, và cho G_2 là đồ thị với các đỉnh {u_{ij}}, 1 \leq i \leq k, 1 \leq j \leq 3, sao cho u_{ij} được nối bằng một cạnh với u_{rs} khi và chỉ khi i \neq r và hai literal (R_{ij}, R_{rs}) không tạo thành một cặp đối nhau (nghĩa là chúng không có dạng (P, \neg P) cũng không có dạng (\neg P, P)). Do đó tồn tại một phép gán chân trị làm sai công thức A khi và chỉ khi tồn tại một đồng cấu đồ thị sao cho với mỗi i, với một j nào đó. (Đồng cấu cho biết với mỗi i, phần tử nào trong R_{i1}, R_{i2}, R_{i3} cần bị làm sai, và việc thiếu cạnh có chọn lọc trong G_2 đảm bảo rằng phép gán chân trị thu được được xác định nhất quán).
C_i = R_{i1} \& R_{i2} \& R_{i3}, and each R_{ij} is an atom or a negation of an atom. Now let G_1 be the complete graph with vertices {v_1, v_2, ..., v_k}, and let G_2 be the graph with vertices {u_{ij}}, 1 \leq i \leq k, 1 \leq j \leq 3, such that u_{ij} is connected by an edge to u_{rs} if and only if i \neq r and the two literals (R_{ij}, R_{rs}) do not form an opposite pair (that is they are neither of the form (P, \neg P) nor of the form (\neg P, P)). Thus there is a falsifying truth assignment to the formula A iff there is a graph homomorphism such that for each i, for some j. (The homomorphism tells for each i which of R_{i1}, R_{i2}, R_{i3} should be falsified, and the selective lack of edges in G_2 guarantees that the resulting truth assignment is consistently specified).
Để đảm bảo rằng một đồng cấu một-một có tính chất rằng với mỗi i, với một j nào đó, chúng ta sửa đổi G_1 và G_2 như sau. Chúng ta chọn các đồ thị H_1, H_2, ..., H_k đủ khác biệt với nhau sao cho nếu G'_1 được tạo thành từ G_1 bằng cách gắn H_i vào v_i, 1 \leq i \leq k, và G'_2 được tạo thành từ G_2 bằng cách gắn H_i vào mỗi u_{i1} và u_{i2} và u_{i3}, 1 \leq i \leq k, thì mọi đồng cấu một-một đều có tính chất vừa nêu. Không khó để thấy rằng một cấu tạo như vậy có thể được thực hiện trong thời gian đa thức. Khi đó G'_1 có thể được nhúng vào G'_2 khi và chỉ khi A \notin D_3. Điều này hoàn thành chứng minh của định lý 2.
In order to guarantee that a one-one homomorphism has the property that for each i, for some j, we modify G_1 and G_2 as follows. We select graphs H_1, H_2, ..., H_k which are sufficiently distinct from each other that if G'_1 is formed from G_1 by attaching H_i to v_i, 1 \leq i \leq k, and G'_2 is formed from G_2 by attaching H_i to each of u_{i1} and u_{i2} and u_{i3}, 1 \leq i \leq k, then every one-one homomorphism has the property just stated. It is not hard to see such a construction can be carried out in polynomial time. Then G'_1 can be embedded in G'_2 if and only if A \notin D_3. This completes the proof of theorem 2.
2 Thảo luận
2 Discussion
Định lý 1 và hệ quả của nó cung cấp bằng chứng mạnh mẽ rằng không dễ xác định liệu một công thức mệnh đề đã cho có phải là một hằng đúng hay không, ngay cả khi công thức đó ở dạng tuyển chuẩn tắc. Định lý 1 và 2 cùng nhau gợi ý rằng việc tìm kiếm một thủ tục quyết định đa thức cho bài toán đồ thị con là vô ích, vì thành công sẽ đưa các thủ tục quyết định đa thức đến nhiều bài toán khác có vẻ không khả thi. Dĩ nhiên nhận xét tương tự áp dụng cho bất kỳ bài toán tổ hợp nào mà {tautologies} là P-reducible.
Theorem 1 and its corollary give strong evidence that it is not easy to determine whether a given proposition formula is a tautology, even if the formula is in normal disjunctive form. Theorems 1 and 2 together suggest that it is fruitless to search for a polynomial decision procedure for the subgraph problem, since success would bring polynomial decision procedures to many other apparently intractible problems. Of course the same remark applies to any combinatorial problem to which {tautologies} is P-reducible.
Hơn nữa, các định lý gợi ý rằng {tautologies} là một ứng viên tốt cho một tập thú vị không thuộc , và tôi cảm thấy đáng để dành nỗ lực đáng kể nhằm chứng minh phỏng đoán này. Một chứng minh như vậy sẽ là một đột phá lớn trong lý thuyết độ phức tạp.
Furthermore, the theorems suggest that {tautologies} is a good candidate for an interesting set not in , and I feel it is worth spending considerable effort trying to prove this conjecture. Such a proof would be a major breakthrough in complexity theory.
Xét đến độ phức tạp rõ ràng của {DNF tautologies}, việc khảo sát thủ tục Davis-Putnam [5] là điều thú vị. Thủ tục này được thiết kế để xác định liệu một công thức đã cho ở dạng hội chuẩn tắc có thỏa được hay không, nhưng dĩ nhiên thủ tục "đối ngẫu" xác định liệu một công thức đã cho ở dạng tuyển chuẩn tắc có phải là một hằng đúng hay không. Cho đến nay tôi vẫn chưa thể tìm được một dãy ví dụ cho thấy thủ tục này (được xử lý một cách thích hợp để tránh một số cạm bẫy nhất định) phải cần nhiều hơn thời gian đa thức. Tôi cũng chưa tìm thấy một cận trên thú vị cho thời gian cần thiết.
In view of the apparent complexity of {DNF tautologies}, it is interesting to examine the Davis-Putnam procedure [5]. This procedure was designed to determine whether a given formula in conjunctive normal form is satisfiable, but of course the "dual" procedure determines whether a given formula in disjunctive normal form is a tautology. I have not yet been able to find a series of examples showing the procedure (treated sympathetically to avoid certain pitfalls) must require more than polynomial time. Nor have I found an interesting upper bound for the time required.
Nếu ta cho phép các chuỗi biểu diễn các số tự nhiên, (hoặc các bộ k của các số tự nhiên) sử dụng ký hiệu m-adic hoặc ký hiệu thích hợp khác, thì các khái niệm trong các phần trước có thể được áp dụng cho các tập số (hoặc các quan hệ k-vị trí trên các số). Không khó để thấy rằng tập các quan hệ được chấp nhận trong thời gian đa thức bởi một máy Turing không tất định chính là tập gồm các quan hệ có dạng
If we let strings represent natural numbers, (or k-tuples of natural numbers) using m-adic or other suitable notation, then the notions in the preceding sections can be made to apply to sets of numbers (or k-place relations on numbers). It is not hard to see that the set of relations accepted in polynomial time by some nondeterministic Turing machine is precisely the set of relations of the form
(1) trong đó , là độ dài dyadic của z, và là một quan hệ , ( là lớp các quan hệ sơ đẳng dương mở rộng của Bennett [6]). Nếu ta loại bỏ cận trên của lượng từ trong công thức (1), lớp sẽ trở thành lớp các tập đệ quy đếm được. Vì vậy nếu là tương tự của lớp các tập r.e., thì việc xác định tautologyhood là tương tự của bài toán dừng; vì, theo định lý 1, {tautologies} có bậc đầy đủ giống như bài toán dừng có bậc r.e. đầy đủ. Đáng tiếc, lập luận đường chéo cho thấy bài toán dừng không đệ quy dường như không thể được điều chỉnh để chứng minh {tautologies} không thuộc .
(1) where , is the dyadic length of z, and is an relation, ( is the class of extended positive rudimentary relations of Bennett [6]). If we remove the bound on the quantifier in formula (1), the class would become the class of recursively enumerable sets. Thus if is the analog of the class of r.e. sets, then determining tautologyhood is the analog of the halting problem; since, according to theorem 1, {tautologies} has the complete degree just as the halting problem has the complete r.e. degree. Unfortunately, the diagonal argument which shows the halting problem is not recursive apparently cannot be adapted to show {tautologies} is not in .
3 Phép tính vị từ
3 The Predicate Calculus
Các công thức trong phép tính vị từ được biểu diễn bằng các chuỗi theo cách tương tự như phép tính mệnh đề. Ngoài các ký hiệu của phép tính mệnh đề, chúng ta cần các ký hiệu lượng từ và , cùng các ký hiệu để tạo thành danh sách vô hạn các biến cá thể, và các danh sách vô hạn các ký hiệu hàm và vị từ của mỗi cấp (tất nhiên bảng chữ cái cơ sở vẫn là hữu hạn).
Formulas in the predicate calculus are represented by strings in a manner similar to the propositional calculus. In addition to the symbols for the latter, we need the quantifier symbols and , and symbols for forming an infinite list of individual variables, and infinite lists of function and predicate symbols of each order (of course the underlying alphabet is still finite).
Giả sử Q là một thủ tục hoạt động trên các công thức trên và kết thúc trên một công thức đầu vào đã cho A khi và chỉ khi A không thỏa được. Vì không có thủ tục quyết định cho tính thỏa được trong phép tính vị từ, suy ra không có hàm đệ quy T sao cho nếu A không thỏa được, thì Q sẽ kết thúc trong vòng T(n) bước, với n là độ dài của A. Vậy làm thế nào để đánh giá hiệu quả của thủ tục?
Suppose Q is a procedure which operates on the above formulas and which terminates on a given input formula A iff A is unsatisfiable. Since there is no decision procedure for satisfiability in the predicate calculus, it follows that there is no recursive function T such that if A is unsatisfiable, then Q will terminate within T(n) steps, where n is the length of A. How then does one appraise the efficiency of the procedure?
Chúng ta sẽ sử dụng cách tiếp cận sau. Hầu hết các bộ chứng minh định lý tự động phụ thuộc vào định lý Herbrand, phát biểu ngắn gọn rằng một công thức A không thỏa được khi và chỉ khi một số phép hội của các thể hiện thay thế của dạng hàm fn(A) của A là không nhất quán theo hàm chân trị. Giả sử chúng ta sắp thứ tự các hạng trong vũ trụ Herbrand của fn(A) theo hạng, rồi sắp xếp theo một cách tự nhiên các thể hiện thay thế của fn(A) từ vũ trụ Herbrand. Thứ tự này nên sao cho nói chung các thể hiện thay thế sử dụng các hạng có hạng lớn hơn sẽ theo sau các thể hiện thay thế sử dụng các hạng nhỏ hơn. Gọi là các thể hiện thay thế này theo thứ tự.
We will take the following approach. Most automatic theorem provers depend on the Herbrand theorem, which states briefly that a formula A is unsatisfiable if and only if some conjunction of substitution instances of the functional form fn(A) of A is truth functionally inconsistent. Suppose we order the terms in the Herbrand universe of fn(A) according to rank, and then order in a natural way the substitution instances of fn(A) from the Herbrand universe. The ordering should be such that in general substitution instances which use terms with greater rank follow substitution instances which use terms of lesser rank. Let be these substitution instances in order.
Định nghĩa: Nếu A không thỏa được, thì là k nhỏ nhất sao cho là không nhất quán theo hàm chân trị. Nếu A thỏa được, thì không được định nghĩa.
Definition: If A is unsatisfiable, then is the least k such that is truth-functionally inconsistent. If A is satisfiable, then is undefined.
Bây giờ gọi Q là thủ tục, với đầu vào A, tính chuỗi và với mỗi i, kiểm tra xem có nhất quán theo hàm chân trị hay không. Nếu câu trả lời là không tại bất kỳ thời điểm nào, thủ tục kết thúc thành công. Khi đó rõ ràng tồn tại một T(k) đệ quy sao cho với mọi k và mọi công thức A, nếu độ dài của và , thì Q sẽ kết thúc trong vòng T(k) bước. Chúng tôi đề xuất rằng hàm T(k) là một thước đo hiệu quả của Q.
Now let Q be the procedure which, given A, computes the sequence and for each i, tests whether is truth-functionally consistent. If the answer is ever no, the procedure terminates successfully. Then clearly there is a recursive T(k) such that for all k and all formulas A, if the length of and , then Q will terminate within T(k) steps. We suggest that the function T(k) is a measure of the efficiency of Q.
Để thuận tiện, tất cả các thủ tục trong phần này sẽ được thực hiện trên các máy Turing một băng, mà chúng tôi sẽ gọi đơn giản là máy.
For convenience, all procedures in this section will be realized on single tape Turing machines, which we shall call simply machines.
Định nghĩa: Cho một máy và hàm đệ quy , chúng tôi nói rằng thuộc kiểu Q và chạy trong thời gian nếu khi bắt đầu với một công thức vị từ A được ghi trên băng của nó, thì dừng khi và chỉ khi A không thỏa được, và với mọi k, nếu và , thì dừng trong vòng bước. Trong trường hợp này chúng tôi cũng nói rằng thuộc kiểu Q. Ở đây là độ dài của A.
Definition: Given a machine and recursive function , we will say is of type Q and runs within time provided that when starts with a predicate formula A written on its tape, then halts if and only if A is unsatisfiable, and for all k, if and , then halts within steps. In this case we will also say that is of type Q. Here is the length of A.
Lý do cho điều kiện thay vì , là vì với điều kiện sau, việc tìm một cận dưới cho sẽ gần tương đương với việc tìm một cận dưới cho bài toán quyết định của phép tính mệnh đề. Đặc biệt, định lý 3A sẽ trở nên hiển nhiên và tầm thường.
The reason for the condition instead of , is that with the latter condition, finding a lower bound for would be nearly equivalent to finding a lower bound for the decision problem for the propositional calculus. In particular, theorem 3A would become obvious and trivial.
Định lý 3: A) Với mọi thuộc kiểu Q,
Theorem 3: A) For any of type Q,
là không bị chặn.
is unbounded.
B) Tồn tại một thuộc kiểu Q sao cho
B) There is a of type Q such that
Phác thảo chứng minh: A). Với bất kỳ máy M nào, có thể xây dựng một công thức vị từ thỏa được khi và chỉ khi M không bao giờ dừng khi bắt đầu trên một băng trống. Điều này được thực hiện theo hướng được mô tả trong Wang [7] trong chứng minh giảm bài toán dừng về bài toán quyết định của phép tính vị từ. Hơn nữa, nếu M dừng sau s bước, thì
Outline of proof: A). Given any machine M, one can construct a predicate formula which is satisfiable if and only if M never halts when starting on a blank tape. This is done along the lines described in Wang [7] in the proof which reduces the halting problem to the decision problem for the predicate calculus. Further, if M halts in s steps, then
Do đó, nếu trái với (2), , thì một sửa đổi của có thể xác minh chỉ trong
Thus, if, contrary to (2), , then a modification of could verify in only
bước rằng M đã dừng sau s bước (với điều kiện , trong đó m là độ dài của ). Một lập luận đường chéo (xem [8] p. 153) cho thấy điều này nói chung là không thể.
steps that M halted in s steps (provided , where m is the length of ). A diagonal argument (see [8] p. 153) shows that this is impossible in general.
B) Máy hoạt động trong thời gian bằng cách tuân theo thủ tục được nêu ở đầu phần này. Lưu ý rằng công thức có độ dài , vì chúng ta có thể giả sử .
B) The machine operates in time by following the procedure outlined at the beginning of this section. Note that the formula has length , since we can assume .
Định lý 4: Nếu tập S các chuỗi được một máy không tất định chấp nhận trong thời gian , và nếu là một hàm trung thực (nghĩa là đếm được theo thời gian thực) thuộc kiểu Q, thì tồn tại một hằng số K sao cho S có thể được nhận dạng bởi một máy tất định trong thời gian .
Theorem 4: If the set S of strings is accepted by a nondeterministic machine within time , and if is an honest (i.e. real-time countable) function of type Q, then there is a constant K so S can be recognized by a deterministic machine within time .
Chứng minh: Giả sử là một máy không tất định chấp nhận S trong thời gian . Gọi là một máy không tất định mô phỏng đúng bước rồi dừng, trừ khi chấp nhận đầu vào, trong trường hợp đó tính toán mãi mãi. Do đó với mọi chuỗi w, nếu thì tồn tại một phép tính mà trong đó với đầu vào w không dừng, và nếu , thì với đầu vào w dừng trong vòng bước đối với mọi phép tính. Bây giờ với w có độ dài n, ta có thể xây dựng một công thức có độ dài sao cho thỏa được khi và chỉ khi chấp nhận w. ( được xây dựng theo cách tương tự như trong chứng minh của 1A). Hơn nữa, nếu dừng trong vòng bước đối với mọi phép tính có thể có, thì
Proof: Suppose is a nondeterministic machine which accepts S in time . Let be a nondeterministic machine which simulates for exactly steps and then halts, unless accepts the input, in which case computes forever. Thus for all strings w, if then there is a computation for which with input w fails to halt, and if , then with input w halts within steps for all computations. Now given w of length n, we may construct a formula of length such that is satisfiable if and only if accepts w. ( is constructed in a way similar to in the proof of 1A). Further, if halts within steps for all possible computations, then
Do đó, có thể xây dựng một máy tất định M để xác định liệu hay không bằng cách cung cấp với đầu vào . Nếu không có kết quả nào xuất hiện trong vòng bước, thì , và ngược lại .
Thus, a deterministic machine M can be constructed to determine whether by presenting with input . If no result appears within steps, then , and otherwise .
4 Thảo luận thêm:
4 More Discussion:
Có một khoảng cách lớn giữa cận dưới đối với các hàm thời gian được đưa ra trong định lý 3A và một
There is a large gap between the lower bound of for time functions given in theorem 3A and a possible
có thể có được trong 3B. Tuy nhiên, có những lý do cho khoảng cách này. Chẳng hạn, nếu chúng ta có thể cải thiện kết quả trong 3B và tìm được một bị chặn bởi một đa thức theo k, thì theo định lý 4 chúng ta có thể mô phỏng một máy bị chặn thời gian không tất định một cách tất định trong thời gian với một đa thức p nào đó. Điều này trái với kinh nghiệm cho thấy mô phỏng tất định một máy bị chặn thời gian không tất định nói chung đòi hỏi thời gian .
given in 3B. However, there are reasons for the gap. For example, if we could improve the result in 3B and find a bounded by a polynomial in k, then by theorem 4 we could simulate a nondeterministic time bounded machine deterministically in time for some polynomial p. This is contrary to experience which indicates deterministic simulation of a nondeterministic time bounded machine requires time in general.
Mặt khác, nếu chúng ta có thể nâng cận dưới được đưa ra trong định lý 3A và chứng minh rằng
On the other hand, if we could push up the lower bound given in theorem 3A and show
là không bị chặn, thì chúng ta có thể kết luận {Tautologies} , vì nếu không thì thủ tục chứng minh Herbrand tổng quát sẽ cung cấp một nhỏ hơn . Do đó, một cải thiện như vậy trong 3A sẽ đòi hỏi một bước đột phá lớn trong lý thuyết độ phức tạp.
is unbounded, then we could conclude {Tautologies} , since otherwise the general Herbrand proof procedure would provide a smaller than . Thus such an improvement in 3A would require a major breakthrough in complexity theory.
Lĩnh vực chứng minh định lý cơ học rất cần một cơ sở để so sánh và đánh giá hàng chục thủ tục xuất hiện trong tài liệu. Hiệu năng của một thủ tục trên các ví dụ bằng máy tính là một tiêu chí tốt, nhưng không đủ (trừ khi thủ tục chứng minh được tính hữu dụng theo một cách thực tiễn nào đó). Cần có một tiêu chí độ phức tạp lý thuyết để làm nổi bật các giới hạn cơ bản và đề xuất những mục tiêu mới cần theo đuổi.
The field of mechanical theorem proving badly needs a basis for comparing and evaluating the dozens of procedures which appear in the literature. Performance of a procedure on examples by computer is a good criterion, but not sufficient (unless the procedure proves useful in some practical way). A theoretical complexity criterion is needed which will bring out fundamental limitations and suggest new goals to pursue.
Tiêu chí được đề xuất ở đây (hàm ) có lẽ là quá thô. Chẳng hạn, có thể tốt hơn nếu biến thành một hàm của nhiều biến, trong đó một biến là , và một biến khác có thể là số tối thiểu các thể hiện phép thế của cần thiết để tạo thành một mâu thuẫn (lưu ý rằng nói chung không phải tất cả các đều cần thiết.)
The criterion suggested here (the function ) is probably too crude. For example, it might be better to make a function of several variables, of which one is , and another might be the minimum number of substitution instances of needed to form a contradiction (note that in general not all of are needed.)
có thể là một phép đo thô, nhưng nó cung cấp một cơ sở cho thảo luận, và tôi hy vọng sẽ kích thích tiến bộ hướng tới việc tìm ra các phép đo độ phức tạp tốt hơn cho các hệ chứng minh định lý.
may be a crude measure, but it does provide a basis for discussion, and, I hope, will stimulate progress toward finding better complexity measures for theorem provers.
References
- D. L. Kreider and R. W. Ritchie: Predictably Computable Functionals and Definitions by Recursion. Zeitschrift für math. Logik und Grundlagen der Math., Vol. 10, 65-80 (1964).
- S. A. Cook: Characterizations of Pushdown Machines in terms of Time-Bounded Computers. J. Assoc. Computing Machinery, Vol. 18, No. 1, Jan. 1971, pp 4-18.
- Cobham, Alan: The intrinsic computational difficulty of functions. Proc. of the 1964 International Congress for Logic, Methodology, and the Philosophy of Science, North Holland Publishing Co., Amsterdam, pp. 24-30.
- D. G. Corneil and C. C. Gotlieb: An Efficient Algorithm for Graph Isomorphism. J. Assoc Computing Machinery Vol. 17, No. 1, Jan. 1970, pp 51-64.
- M. Davis and H. Putnam: A Computing Procedure for Quantification Theory. J. Assoc. Computing Machinery, 1960, pp. 201-215.
- J. H. Bennett: On Spectra. Doctoral Dissertation, Princeton University, 1962.
- Hao Wang: Dominoes and the AEA case of the decision problems. Proc. of the Symposium on Mathematical Theory of Automata, at Polytechnic Institute of Brooklyn, 1962. pp. 23-55.
- John Hopcroft and Jeffrey Ullman: Formal Languages and their Relation to Automata. Addison-Wesley, 1969.
Read off the page by a vision model reading the page images using olmOCR-2-7B-1025-FP8. Translated into Tiếng Việt by gpt-5, against glossary version 7. Translated from the English.
Read off the page by a vision model reading the page images using olmOCR-2-7B-1025-FP8.