Có ai biết một ví dụ ngược với thuật toán đẳng cấu đồ thị Dharwadker-Tevet không?


10

Tại http://www.dharwadker.org/tevet/isomorphism/ , có một bài trình bày về thuật toán để xác định xem hai biểu đồ có phải là đẳng cấu không. Đưa ra một số điều chúng ta sẽ nói, những tuyên bố "thú vị" của A Dharwadker, tôi không có xu hướng tin vào điều đó.

Trong nghiên cứu của tôi, tôi thấy rằng thuật toán chắc chắn sẽ tạo ra câu trả lời đúng và cho bạn biết rằng hai biểu đồ không phải là đẳng cấu khi thực tế là đúng. Tuy nhiên, không rõ ràng rằng thuật toán sẽ liên tục cho bạn biết nếu hai biểu đồ là đẳng cấu khi chúng thực sự là. "Bằng chứng" về kết quả của họ để lại điều gì đó mong muốn.

Tuy nhiên, tôi không biết về một ví dụ phản tác dụng. Trước khi tôi bắt đầu viết phần mềm để kiểm tra thuật toán, tôi nghĩ tôi sẽ xem liệu có ai biết về một ví dụ phản tác dụng không.

Có người yêu cầu tóm tắt thuật toán. Tôi sẽ làm những gì tôi có thể ở đây, nhưng để thực sự hiểu nó, bạn nên truy cập http://www.dharwadker.org/tevet/isomorphism/ .

Có hai giai đoạn của thuật toán: giai đoạn "chữ ký" và giai đoạn sắp xếp. Giai đoạn "chữ ký" đầu tiên (đây là thuật ngữ của tôi cho quy trình của họ; họ gọi nó là tạo ra "ma trận ký hiệu") sắp xếp hiệu quả các đỉnh thành các lớp tương đương khác nhau. Giai đoạn thứ hai đầu tiên sắp xếp các đỉnh theo lớp tương đương của chúng, và sau đó áp dụng một quy trình sắp xếp trong các lớp tương đương để thiết lập một đẳng cấu giữa hai biểu đồ. Thật thú vị, họ không yêu cầu thiết lập một hình thức chính tắc cho các biểu đồ - thay vào đó, một biểu đồ được sử dụng như một loại mẫu cho biểu đồ thứ hai.

Giai đoạn chữ ký thực sự khá thú vị và tôi sẽ không thực hiện công lý ở đây bằng cách cố gắng diễn giải nó. Nếu bạn muốn biết thêm chi tiết, tôi khuyên bạn nên theo liên kết để kiểm tra giai đoạn chữ ký của anh ấy. "Ma trận ký hiệu" được tạo chắc chắn giữ lại tất cả thông tin về biểu đồ ban đầu và sau đó thiết lập thêm một chút thông tin. Sau khi thu thập chữ ký, họ bỏ qua ma trận gốc vì chữ ký chứa toàn bộ thông tin về ma trận gốc. Đủ để nói rằng chữ ký thực hiện một số thao tác áp dụng cho từng cạnh liên quan đến đỉnh và sau đó chúng thu thập nhiều phần tử cho một đỉnh để thiết lập một lớp tương đương cho đỉnh.

Giai đoạn thứ hai - giai đoạn sắp xếp - là phần đáng ngờ. Cụ thể, tôi hy vọng rằng nếu quy trình của họ hoạt động, thì thuật toán do Anna Lubiw phát triển để cung cấp "Thứ tự ma trận nghi ngờ" (Xem: http://dl.acm.org/citation.cfm?id=22189 ) cũng sẽ làm việc để xác định một hình thức chính tắc cho một biểu đồ.

Công bằng mà nói, tôi hoàn toàn không hiểu quy trình sắp xếp của họ, mặc dù tôi nghĩ họ làm một công việc hợp lý để mô tả nó. (Tôi chỉ chưa làm việc qua tất cả các chi tiết). Nói cách khác, tôi có thể đang thiếu một cái gì đó. Tuy nhiên, không rõ làm thế nào quá trình này có thể làm nhiều hơn là vô tình tìm thấy một đẳng cấu. Chắc chắn, họ có thể sẽ tìm thấy nó với xác suất cao, nhưng không phải với một sự đảm bảo. Nếu hai biểu đồ không phải là đẳng cấu, quá trình sắp xếp sẽ không bao giờ tìm thấy nó và quá trình từ chối chính xác các biểu đồ.


Bạn có thể đưa ra một bản tóm tắt về ý tưởng của thuật toán?
Mohammad Al-Turkistany

1
xem thêm math.stackexchange.com/questions/333633/ . Điều này chỉ cho thấy rằng có một cơ hội tốt để tìm một ví dụ cho chương trình được cung cấp, nhưng người ta vẫn phải tìm một ...
Thomas Klimpel

Các biểu đồ đều đặn trông giống như một vụ cá cược tốt, nhưng tôi không gặp may mắn với các hoán vị được chọn ngẫu nhiên của biểu đồ của Petersen, biểu đồ của Clebsch hoặc biểu đồ của tân binh 4x4.
Peter Taylor

Tương tự, tôi đã thử biểu đồ Shrikhande, nhưng tôi không thử tất cả các hoán vị. Tôi đã gửi thư điện tử cho Anna Lubiw để hỏi cô ấy về các ví dụ phản biện cho "Thứ tự ma trận nghi ngờ của cô ấy", nhưng cô ấy đã không trả lời (ít nhất là chưa). Tôi nghi ngờ rằng tôi sẽ cần phải thực hiện một tìm kiếm có hệ thống hơn.
Tỉnh Bill

1
không cảm thấy bạn đang làm một dịch vụ bằng cách bỏ qua các tuyên bố ngông cuồng của bài viết mặc dù nó chắc chắn sẽ có thể tăng cờ trên trang web này. những tuyên bố ngông cuồng của họ khiến bạn hoài nghi là gì? có thể họ cho rằng nó hoạt động nhanh, nhưng điều đó không thể bị bác bỏ với một ví dụ đơn lẻ. tức là / ví dụ có thể thuật toán của nó là chính xác (havent look) nhưng phân tích độ phức tạp bị tắt. dù sao cũng mời thảo luận thêm / phân tích sâu hơn trong Trò chuyện khoa học máy tính lý thuyết , trong đó một số khách truy cập đã bày tỏ sự quan tâm đáng kể đến GI trong quá khứ và có một cuộc thảo luận mở rộng gần đây.
vzn

Câu trả lời:


18

Dành cho graphA.txt:

25
 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
 1 0 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0
 1 1 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1
 1 1 1 0 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0
 1 1 1 0 0 0 0 1 0 0 1 1 0 1 0 0 1 1 0 1 0 0 1 1 0
 1 1 1 0 0 0 0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
 1 1 1 0 0 0 0 0 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 1 1
 1 0 0 1 1 0 0 0 1 1 1 0 0 1 0 1 0 0 1 0 0 0 1 1 1
 1 0 0 1 0 1 0 1 0 1 0 0 1 0 0 0 1 1 1 1 0 1 1 0 0
 1 0 0 1 0 0 1 1 1 0 0 1 0 0 1 0 1 1 0 0 1 0 0 1 1
 1 0 0 0 1 1 0 1 0 0 0 1 1 0 1 1 0 0 1 1 1 0 0 1 0
 1 0 0 0 1 0 1 0 0 1 1 0 1 1 1 0 0 1 0 0 1 1 1 0 0
 1 0 0 0 0 1 1 0 1 0 1 1 0 1 0 1 1 0 0 1 0 1 0 0 1
 0 1 0 1 1 0 0 1 0 0 0 1 1 0 1 1 1 0 0 0 0 1 1 0 1
 0 1 0 1 0 1 0 0 0 1 1 1 0 1 0 0 1 0 1 0 1 1 0 1 0
 0 1 0 1 0 0 1 1 0 0 1 0 1 1 0 0 0 1 1 1 1 0 0 0 1
 0 1 0 0 1 1 0 0 1 1 0 0 1 1 1 0 0 1 0 1 0 0 0 1 1
 0 1 0 0 1 0 1 0 1 1 0 1 0 0 0 1 1 0 1 1 1 0 1 0 0
 0 1 0 0 0 1 1 1 1 0 1 0 0 0 1 1 0 1 0 0 0 1 1 1 0
 0 0 1 1 1 0 0 0 1 0 1 0 1 0 0 1 1 1 0 0 1 1 0 1 0
 0 0 1 1 0 1 0 0 0 1 1 1 0 0 1 1 0 1 0 1 0 0 1 0 1
 0 0 1 1 0 0 1 0 1 0 0 1 1 1 1 0 0 0 1 1 0 0 1 1 0
 0 0 1 0 1 1 0 1 1 0 0 1 0 1 0 0 0 1 1 0 1 1 0 0 1
 0 0 1 0 1 0 1 1 0 1 1 0 0 0 1 0 1 0 1 1 0 1 0 0 1
 0 0 1 0 0 1 1 1 0 1 0 0 1 1 0 1 1 0 0 0 1 0 1 1 0

graphB.txt:

25
 0 0 0 1 1 0 0 0 0 1 1 1 1 0 0 1 0 1 1 0 1 1 0 1 0
 0 0 1 1 1 1 1 0 0 0 0 0 0 0 1 1 0 0 1 1 1 1 0 0 1
 0 1 0 1 0 0 1 1 1 0 1 0 0 0 0 1 0 1 1 1 0 0 1 1 0
 1 1 1 0 1 0 1 1 1 1 1 1 0 0 1 0 0 0 0 0 0 1 0 0 0
 1 1 0 1 0 0 0 0 1 1 0 0 0 1 1 1 1 0 0 1 1 0 0 1 0
 0 1 0 0 0 0 1 0 0 1 1 0 0 0 1 0 1 1 0 0 1 1 1 1 1
 0 1 1 1 0 1 0 0 1 1 0 0 1 1 0 0 1 1 1 0 0 1 0 0 0
 0 0 1 1 0 0 0 0 1 0 1 1 1 0 1 0 1 1 0 1 1 0 0 0 1
 0 0 1 1 1 0 1 1 0 1 0 0 1 1 0 0 0 0 0 0 1 0 1 1 1
 1 0 0 1 1 1 1 0 1 0 0 1 0 0 0 1 1 1 0 0 0 0 1 0 1
 1 0 1 1 0 1 0 1 0 0 0 0 1 0 1 1 1 0 0 0 0 1 1 1 0
 1 0 0 1 0 0 0 1 0 1 0 0 0 1 1 0 0 1 1 1 0 1 1 0 1
 1 0 0 0 0 0 1 1 1 0 1 0 0 1 0 1 1 0 1 0 1 1 0 0 1
 0 0 0 0 1 0 1 0 1 0 0 1 1 0 1 0 1 0 1 1 0 1 1 1 0
 0 1 0 1 1 1 0 1 0 0 1 1 0 1 0 0 1 0 1 0 1 0 1 0 0
 1 1 1 0 1 0 0 0 0 1 1 0 1 0 0 0 1 0 1 1 0 0 1 0 1
 0 0 0 0 1 1 1 1 0 1 1 0 1 1 1 1 0 1 0 1 0 0 0 0 0
 1 0 1 0 0 1 1 1 0 1 0 1 0 0 0 0 1 0 1 1 1 0 0 1 0
 1 1 1 0 0 0 1 0 0 0 0 1 1 1 1 1 0 1 0 0 1 0 1 0 0
 0 1 1 0 1 0 0 1 0 0 0 1 0 1 0 1 1 1 0 0 0 1 0 1 1
 1 1 0 0 1 1 0 1 1 0 0 0 1 0 1 0 0 1 1 0 0 0 0 1 1
 1 1 0 1 0 1 1 0 0 0 1 1 1 1 0 0 0 0 0 1 0 0 0 1 1
 0 0 1 0 0 1 0 0 1 1 1 1 0 1 1 1 0 0 1 0 0 0 0 1 1
 1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0 0 1 0 1 1 1 1 0 0
 0 1 0 0 0 1 0 1 1 1 0 1 1 0 0 1 0 0 0 1 1 1 1 0 0

được lấy từ graphA.txtviệc áp dụng hoán vị (ngẫu nhiên)

 22 9 24 11 15 8 5 18 13 14 2 10 23 0 3 17 4 16 6 19 7 21 12 1 20

chương trình C ++ isororphism.cpptừ Hình 6.3. Một chương trình C ++ cho thuật toán đẳng cấu đồ thị trong http://www.dharwadker.org/tevet/isomorphism/ cung cấp đầu ra sau:

The Graph Isomorphism Algorithm
by Ashay Dharwadker and John-Tagore Tevet
http://www.dharwadker.org/tevet/isomorphism/
Copyright (c) 2009
Computing the Sign Matrix of Graph A...
Computing the Sign Matrix of Graph B...
Graph A and Graph B have the same sign frequency vectors in lexicographic order but cannot be isomorphic.
See result.txt for details.

Vì vậy, chúng tôi có thể giả định rằng đây là một ví dụ ngược với thuật toán đẳng cấu đồ thị Dharwadker-Tevet.

Theo đề xuất của Bill Province, vấn đề là

GAGB

Sự phản đối của Bill Province là bằng chứng của Dự luật 4.1. không sử dụng bất kỳ thuộc tính đặc biệt nào của ma trận ký hiệu cũng sẽ không áp dụng cho ma trận kề. Chính xác hơn, bước sau đây trong bằng chứng là sai:

1,...,tAB1,...,tAv1,...,vt1,...,tBφ(v1)=v1,...,φ(vt)=vt tương ứng.

vì ngay cả khi hàng đã được xuất hiện một cách hoàn hảo, nó không làm theo các nhãn đỉnh phù hợp với nhãn do bất kỳ đẳng cấu .φ

Bởi vì một lỗ hổng trong chứng minh tính chính xác đã được xác định, ví dụ phản biện trên phải đủ để bác bỏ tính chính xác được yêu cầu của thuật toán đề xuất.


Lời cảm ơn Ví dụ phản biện là lần đầu tiên trong số các cặp đồ thị thứ 8 từ

http://funkybee.narod.ru/graphs.htm

Để thao tác với biểu đồ, tôi đã sử dụng và sửa đổi mã nguồn từ VítBoxR1160.tar được tìm thấy tại

https://people.mpi-inf.mpg.de/~pascal/software/

Để hiểu lỗ hổng trong bằng chứng chính xác, András Salamon nhận xét về Weisfeiler-Lehman là rất hữu ích, cũng như những lời giải thích từ

http://users.cecs.anu.edu.au/~pascal/docs/thesis_pascal_schweitzer.pdf

Động lực để sử dụng câu hỏi này như một cơ hội để làm quen với nauty / Dấu vết và các khía cạnh thực tế của đẳng cấu đồ thị được cung cấp bởi vzn. Lợi ích của việc học cách sử dụng trạng thái của các chương trình nghệ thuật cho các đẳng cấu đồ thị khiến nó đáng để chìm xuống một thời gian để tìm một ví dụ ngược (mà tôi tin rằng nó tồn tại).


Cảm ơn bạn đã phản hồi rất chi tiết. Có tiêu chí lựa chọn nào bạn sử dụng cho biểu đồ để tìm ví dụ phản biện không? Khi ví dụ ngược được chọn, bình luận của bạn dường như gợi ý rằng hoán vị được chọn ngẫu nhiên. Điều này có đúng không? Hoặc có nhiều hơn để lựa chọn hoán vị?
Tỉnh Bill

@BillProvince Tiêu chí lựa chọn dựa trên nhận xét của András Salamon, bởi vì nó chỉ ra rằng một công trình Cai, Fürer và Immerman có thể thành công. Lần đầu tiên tôi đã thử một ví dụ n = 546 từ Pascal Schweitzer, nhưng chương trình C ++ gốc isororphism.cpp hiện đang tính toán từ> 1566 phút. Tôi đã sử dụng các cấu trúc dữ liệu tốt hơn và học được sau> 2h rằng ví dụ phản tác dụng lớn hoạt động. Tôi biết rằng trg787 / funkybee có một số công trình Cai, Fürer và Immerman trong số các cặp biểu đồ của anh ấy, vì vậy tôi đã thử vận ​​may của mình. Tôi đã thử nhiều hoán vị ngẫu nhiên (ví dụ n = 25), cái thứ hai hoạt động.
Thomas Klimpel

cái nào tiết kiệm thời gian, 1. tìm ví dụ phản biện 2. chứng minh 4.1 là sai.
Jim

Tôi đã dừng chương trình C ++ ban đầu isoromorphism.cpp cho ví dụ n = 546 bây giờ, sau khi chạy hơn 6200 phút mà không có kết thúc trước mắt.
Thomas Klimpel

@ThomasKlimpel Tôi dự định viết một bài báo đề cập đến kết quả này. Nếu bạn có một thuộc tính chuyên nghiệp ưa thích, bạn có thể gửi email cho tôi thuộc tính đó tại billprovince @ gmail. Bất kể, tôi dự định làm theo các yêu cầu phân bổ được đăng tại blog.stackexchange.com/2009/06/attribution-required .
Tỉnh Bill
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.