Độ phức tạp của việc giảm thiểu kích thước công thức đa thức


28

Đặt là một đa thức d độ trong n biến trên F 2 , trong đó d là hằng số (giả sử 2 hoặc 3). Tôi muốn tìm công thức nhỏ nhất cho f , trong đó "công thức" và "kích thước công thức" được xác định theo cách rõ ràng (ví dụ: công thức nhỏ nhất cho đa thức x 1 x 2 + x 1 x 3x 1 ( x 2 + x 3 ) ).f(x1,,xn)dnF2dfx1x2+x1x3x1(x2+x3)

Sự phức tạp của vấn đề này là gì - nó có phải là NP-hard không? Sự phức tạp phụ thuộc vào ?d

[Chính thức hơn, một công thức (còn gọi là "công thức số học") là một cây nhị phân có gốc, mỗi lá của nó được gắn nhãn với một biến đầu vào hoặc hằng số 1. Tất cả các đỉnh khác của cây đều được gắn nhãn hoặc × . Kích thước của công thức là số lượng lá được sử dụng. Công thức tính toán một đa thức đệ quy: + các đỉnh tính tổng của con cái của chúng trên các đỉnh F 2 , × tính toán sản phẩm. ]+×+F2×


1
chúng ta có thể giảm kiểm tra nhận dạng đa thức cho vấn đề này không?
Kaveh

4
Tôi đoán có thể có một kết nối, nhưng tôi không thấy ngay lập tức - đặc biệt là do sự hạn chế về bằng cấp. Bên cạnh đó, nếu vấn đề khó khăn hơn so với kiểm tra nhận dạng đa thức, sẽ rất thú vị khi biết mức độ khó khăn hơn nhiều.
Ashley Montanaro

Trong trường hợp của bạn, số cổng ( s và × s) trong công thức liên quan đến kích thước công thức thực tế như thế nào? Với d = 2 , việc xây dựng trong Ehrenfeucht và Karpinki 90 dường như có liên quan (xem đoạn 2XOR) cho kích thước "cổng" -formula, nhưng tôi phải suy nghĩ về nó lâu hơn. +×d=2
Alessandro Cosentino

Vì công thức là cây nhị phân, định nghĩa về kích thước công thức tôi đã sử dụng ở đây (số lượng lá) bằng với số cổng (đỉnh bên trong) cộng với một. Nhưng tôi cũng quan tâm đến bất kỳ kết quả nào cho bất kỳ định nghĩa hợp lý nào khác về kích thước công thức. Tôi không chắc chắn tôi thấy mối liên hệ với kết quả của Ehrenfeucht và Karpinki, vì đây là về sự phức tạp của các giải pháp đếm, thay vì giảm thiểu kích thước công thức ...
Ashley Montanaro

Để đếm số lượng không, trước tiên, họ chuyển đổi công thức thành một công thức tương đương, mà tôi nhớ là tối thiểu về phép nhân và phép cộng. Tuy nhiên, tôi không có bằng chứng về sự tối thiểu này. Một lần nữa, điều này sẽ chỉ trả lời trường hợp . d=2
Alessandro Cosentino

Câu trả lời:


7

Bạn có thể giảm bài toán TO-NP-Complete TAUTologyY (được đưa ra một công thức Boolean, có phải là tautology không?) Cho vấn đề giảm thiểu kích thước công thức (vì công thức là một tautology nếu nó tương đương với TRUE). Hơn nữa, TƯƠNG LAI cho 3DNF (tương tự SAT cho 3CNF) là đồng NP-Complete.


1
Theo tôi hiểu câu hỏi, nên được tính là một đa thức không phải là một hàm. Có lẽ một số làm rõ là cần thiết. f
Markus Bläser

3
Có sự giảm xác suất từ ​​3SAT để kiểm tra, đưa ra đa thức deg-3 so với GF (2), cho dù nó có số không [bằng cách nhìn vào các kết hợp tuyến tính ngẫu nhiên của các mệnh đề], và sau đó từ kiểm tra này, đưa ra một giá trị 3 poly trên GF (2), cho dù đó là 0 hoàn toàn [bằng cách trừ poly từ 1].
Dana Moshkovitz

1
Cảm ơn! Bạn có biết tình huống nào cho đa thức bậc 2 không? Ngoài ra (mặc dù điều này có lẽ rất dày đặc) Tôi đang vật lộn để xem làm thế nào một đa thức bậc 3 so với GF (2), được viết ở dạng chuẩn, có thể là số không mà không phải là đa thức số 0. Để rõ ràng, tôi đang tưởng tượng rằng đầu vào cho vấn đề của tôi là một mô tả về chính đa thức, chứ không phải là một mô tả về một mạch điện toán cho đa thức.
Ashley Montanaro

2
Cảm ơn một lần nữa cho câu trả lời của bạn. Mặc dù vậy, tôi vẫn không bị thuyết phục về điều hoàn toàn không; Đối với tôi, dường như bất kỳ đa thức n biến thiên nào so với GF (2) với các số hạng poly (n) đều có thể dễ dàng chuyển thành dạng chuẩn trong đó rõ ràng là đa thức có bằng 0 hay không, chỉ bằng cách thay thế và thu thập các điều khoản. xkx
Ashley Montanaro

4
Thật vậy, nếu bạn làm cho nó đa tuyến tính như bạn mô tả, một đa thức ước tính bằng 0 trên mỗi đầu vào nếu đó là đa thức bằng không. Một bằng chứng: Chọn một M đơn thức khác không ở mức độ tối thiểu. Đặt thành không tất cả các biến khác. Đơn thức duy nhất còn sót lại là M. Bằng cách đặt các vars trong M thành 1, bạn sẽ có được đầu ra khác không.
Manu

4

Không chính xác câu trả lời nhưng hy vọng sẽ giúp:

Câu hỏi này phải là NP khó cho d = 2 nếu bạn muốn biết công thức tối thiểu cho đa thức và không chỉ cho một. Bằng chứng như sau: Tồn tại một tương ứng giữa n công thức hai tuyến tính (công thức loại a i j x i y j ) và ma trận 3 ma trận tức là các phần tử trong F n 2F n 2F n 2 . Như vậy, thứ hạng tenor của ma trận chính xác là độ phức của phép nhân của n công thức tuyến tính.naijxiyjF2nF2nF2n

Được biết, tensor cấp bậc là vấn đề NP-khó (có lẽ gần giống tensor cấp bậc cũng là NP-hard). Do đó, độ phức tạp nhân của n công thức tuyến tính là vấn đề NP-hard3n


2
Cảm ơn! Đây là một quan điểm thú vị về vấn đề này.
Ashley Montanaro

f1,f2,,fnz1f1+z2f2znfn

d=2

2

Bất kỳ câu trả lời cho điều này phụ thuộc rất nhiều vào từ vựng bạn cho phép trong câu trả lời. Nếu bạn muốn câu trả lời của mình có cùng ngôn ngữ với đầu vào (nghĩa là đa thức), điều đó dẫn đến một bộ câu trả lời, đó là điều mà các áp phích khác đang phải vật lộn.

Nhưng nếu bạn cho phép từ vựng câu trả lời của bạn được mở rộng, những điều tuyệt vời có thể xảy ra. Bạn có thể thấy một ví dụ về phân biệt biểu tượng và tự động: trong phân biệt biểu tượng, người ta chỉ cho phép 'biểu thức', có xu hướng nổ tung khá tệ; trong phân biệt tự động, người ta cho phép các chương trình đường thẳng trong câu trả lời (ngay cả khi đầu vào là một biểu thức), điều này giúp rất nhiều để kiểm soát sự phình ra của biểu thức. Đối với đa thức đơn biến, James Davenport và tôi đã trầm ngâm rằng bạn cũng cần phải sử dụng các đa thức cyclotomic như là một phần của từ vựng cơ bản của bạn (xem các tài liệu tham khảo về lý do tại sao các đa thức này dường như là nguồn thực sự duy nhất, cũng như các bài báo cho thấy kết quả giảm thiểu khác nhau giữa các vấn đề đa thức và 3SAT).

Nói cách khác, nếu bạn cho phép bản thân thay đổi những gì bạn cho là một câu trả lời một chút so với câu trả lời cổ điển, bạn có thể nhận được một câu trả lời khá khác biệt, tức là một câu có độ phức tạp tốt hơn nhiều. Nó phụ thuộc vào động lực ban đầu của bạn để đặt câu hỏi, cho dù hoàn toàn là lý thuyết hay với một ứng dụng trong đầu, để quyết định xem sự thay đổi trong từ vựng này có được bạn chấp nhận hay không. Trong bối cảnh mà James và tôi đã suy nghĩ về điều này (tính toán tượng trưng), việc điều chỉnh từ vựng để làm giảm độ phức tạp là hoàn toàn chấp nhận được (mặc dù hiếm khi được thực hiện).


Câu hỏi yêu cầu công thức số học nhỏ nhất, sau đó nó xác định rõ ràng. Do đó tôi không chắc câu trả lời này có liên quan trực tiếp. Ngoài ra, câu trả lời trên của Dana Moshkovitz và các bình luận liên quan không trả lời đúng câu hỏi như đã được thừa nhận trong các bình luận.
Raphael

Quan điểm của câu trả lời của tôi là OP có thể không nhận ra rằng họ không nhất thiết phải hỏi câu hỏi hay nhất. Câu hỏi của OP được hỏi theo thuật ngữ rất cổ điển, nhưng nếu bạn cho phép một sai lệch nhỏ từ đó, bạn sẽ nhận được những câu trả lời khá khác nhau, điều này có thể khá bất ngờ. Tôi hiểu nhận xét của bạn, nhưng cảm thấy downvote là một chút khắc nghiệt.
Jacques Carette

Bạn có thể sửa đoạn đầu tiên trong câu trả lời của mình để làm rõ câu hỏi chưa được trả lời đúng không? Tôi đã lo lắng mọi người có thể bị đánh lừa.
Raphael

1
@Raphael: xong. Và làm rõ mọi thứ hơn nữa là tốt.
Jacques Carette

0

Việc tối thiểu hóa mạch / công thức chung chắc chắn khó hơn kiểm tra định danh, vì kích thước công thức tối thiểu của bất kỳ danh tính nào chỉ đơn giản là bằng không. Về phần khó hơn, tôi không có câu trả lời dứt khoát nhưng có lẽ "thuật toán tái tạo" được nghiên cứu trong các mạch / công thức số học có thể là một cái gì đó dọc theo các dòng này.

C3C

d

d=2x1x2+x3x4+..+x2k1x2k+


Cảm ơn ý kiến ​​của bạn. Đáng buồn thay, tôi không thấy làm thế nào để sử dụng những ý tưởng này để giải quyết vấn đề ban đầu.
Ashley Montanaro
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.