Phiên bản nhân của 3-SUM


22

Những gì được biết về độ phức tạp thời gian của vấn đề sau đây, mà chúng ta gọi là 3-MUL?

Cho một tập S của n số nguyên, ở đó các yếu tố a,b,cSab=c ?

Bài toán này tương tự như bài toán 3-SUM, hỏi xem có ba phần tử a,b,cS sao cho a+b+c=0 (hoặc tương đương a+b=c ). 3-SUM được phỏng đoán yêu cầu thời gian bậc hai xấp xỉ bằng n . Có một phỏng đoán tương tự cho 3-MUL không? Cụ thể là 3-MUL được biết là 3-SUM khó?

Lưu ý, độ phức tạp thời gian nên áp dụng trong mô hình tính toán "hợp lý". Ví dụ, chúng ta có thể giảm từ 3-SUM trên một tập hợp S 3-MUL trên thiết lập S , nơi mà S={2xxS} . Sau đó, một giải pháp cho 3-Mul, 2a2b=2c , tồn tại khi và chỉ khi a+b=c . Tuy nhiên, sự bùng nổ theo cấp số nhân của các con số có tỷ lệ rất tệ với các mô hình khác nhau, như mô hình RAM chẳng hạn.


Việc giảm của bạn không cho thấy 3-MULT khó 3-SUM nếu các số đầu vào có thể được biểu thị bằng cách sử dụng ký hiệu số mũ (còn gọi là khoa học).
Warren Schudy

4
Bất kỳ thuật toán nào cho 3-SUM chỉ dựa vào thực tế là phép cộng là một nhóm có thể được dịch thành thuật toán cho 3-MULT và ngược lại. Do đó, bất kỳ thuật toán nào tách hai phần này sẽ cần phải làm điều gì đó bất thường với các số.
Warren Schudy

1
để trở thành nhà mô phạm khủng khiếp, chúng ta có thể chỉ cần một nhóm bán kết.
Suresh Venkat

Câu trả lời:


11

Việc bạn giảm từ 3 SUM xuống còn 3 MUL hoạt động với một sửa đổi tiêu chuẩn nhỏ. Giả sử số nguyên ban đầu của bạn là trong { 1,,M }. Sau khi biến đổi x2x các số nguyên mới nằm trong { 2,,2M }. Chúng tôi sẽ giảm phạm vi.

Xem xét bất kỳ ba của số nguyên trong tập mới S ' . Số lượng các ước nguyên tố của bất kỳ khác không một b - c< 2 M . Số lượng bộ ba như vậy là n 3 . Do đó số lượng các số nguyên tố q mà chia ít nhất một trong những một b - c khác không số là tại hầu hết 2 M n 3 .a,b,cSabc<2Mn3qabc2Mn3

Hãy là tập hợp những người đầu tiên 2 M n 4 số nguyên tố. Số nguyên tố lớn nhất có kích thước nhiều nhất là O ( M n 4 log M n ) . Chọn một số nguyên tố ngẫu nhiên p P . Với xác suất cao p sẽ không chia bất kỳ khác không một b - c , vì vậy chúng tôi có thể đại diện cho mỗi một S ' bởi dư lượng của nó, mod p , và nếu 3 MUL tìm thấy một số một b = c trong SP2Mn4O(Mn4logMn)pPpabcaSp3ab=c , Với khả năng cao nó sẽ đúng cho bản gốc 3 SUM dụ. Chúng tôi đã giảm phạm vi của các con số xuống { 0 , Mạnh , O ( M n 4 log M n ) }.S30,,O(Mn4logMn)

(Đây là một kích thước tiêu chuẩn giảm Bạn có thể có thể làm tốt hơn bằng cách xem xét thực tế là. luôn khác biệt của hai cường quốc của 2 .)abc2


1
Bạn đã không giảm xuống mod 3MUL một nguyên tố chứ không phải 3MUL? Có thể là nhưng . a b cab=c(mod()p)abc
Warren Schudy

1
Vâng, như là, đây là một giảm xuống 3MUL mod p. Điểm tốt.
virgi

Đây là một cách tiếp cận rất thú vị. Tuy nhiên, chúng tôi đặc biệt quan tâm đến việc giảm xác định từ 3-SUM xuống 3-MUL. Có lẽ sẽ có thể derandomise kỹ thuật giảm kích thước?
Markus Jalsenius

3

Bạn đã thử giảm trong đó ? Kết quả là số thực, do đó bạn phải làm tròn đến một số chữ số. Để đảm bảo rằng các số thêm chính xác mặc dù làm tròn bạn có thể cần thêm một chút nhiễu ngẫu nhiên.M = max S - phút SS={2x/M|xS}M=maxSminS


Rất tiếc, tiếng ồn ngẫu nhiên dường như không đủ để sửa lỗi làm tròn. Tuy nhiên, những ý tưởng này có vẻ hứa hẹn cho việc giảm cách khác để hiển thị 3-MULT không khó hơn 3-SUM, vì ví dụ . (x+1)+y=x+y+1
Warren Schudy

1
Phương trình không có vẻ đúng (thử x và y = 2.1). Bạn có thể làm rõ những gì bạn có ý nghĩa?
Raphael
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.