Combinatorial Algorithm for Sorting Adjacency Matrices in Polynomial Time

  • Thread starter secondprime
  • Start date
  • Tags
    Algorithm
In summary, the matrix A can be divided into 4 sub matrices based on adjacency of vertex. The sub matrices are C, E, D, and B. The sub matrices are obtained by swapping any two rows (or columns) of the matrix C. Any change in the matrix C or D or both C and D changes the sub matrix E. The sub matrix E can be used to solve a problem that has been discussed before in this thread.
  • #1
secondprime
49
0
Given a matrix A of a regular graph G. The matrix A can be divided into 4 sub matrices based on adjacency of vertex ##x \in G##.

## A_x## is the symmetric matrix of the graph ##(G-x)##, where ##C## is the symmetric matrix of the graph created by vertices of ##(G-x)## which are adjacent to ##x## and ##D## is the symmetric matrix of the graph created by vertices of ##(G-x)## which are not adjacent to ##x##.

http://i.stack.imgur.com/qL2rD.jpg

## A_x = \left( \begin{array}{cc}

C & E \\

E^{T} & D\\

\end{array} \right) ## It should be noted, that-
1. Interchanging/swapping any two rows (or columns) of ##C## does not affect matrix ##D## (and vice versa).
2. Any change in ##C## or ##D## or both ##C## and ##D## changes matrix ##E##.
**Problem:** If some vertices of ##G## is rearranged(i.e. permuted), ##A## will be different, say, this new matrix is ##B##. Again, matrix ##B## can be divided into 4 sub matrices based on adjacency of vertex ##x \in G## and ## B_x## can be obtained.Assume-

1. ##C## is always a regular graph’s matrix and bigger than ##D##.

2. There exists an algorithm that always order ##D##(for a vertex ##x \in G##) takes ##K## times(assumed to be polynomial).

3. Each row of E has different permutation, i.e. , rows might have same number of 1's but there is no two rows which can be permuted to each other. Say, ##r_x , r_y## are two rows, there is no permutation ##\sigma## so that, ## \sigma r_x=\sigma r_y##. *So, there is no way ##E## to be a zero matrix or matrix of all 1's or a matrix has some identical rows.* For ##n## vertices there will be total ##n## numbers of ##C,D##, each of them will take ##K##(assumed to be polynomial) time to sort. If Each ##C## takes ##f## time to sort, then the total complexity will be ##n\times K\times f##.
**according to above 3 assumptions, Does there exist a polynomial time algorithm to sort ##C## so that ##B=A##? i.e. Is there a polynomial##f## ?**
 
Physics news on Phys.org
  • #3
that discussion was incomplete and was the general case, this more specific. It would easier, if this thread is concluded.
 
  • #5
Consider ##G## as a strongly ##k## regular graph G(srg(##n,k,\lambda ,\mu##);##\lambda ,\mu >0##).
 

1. What is a combinatorial algorithm?

A combinatorial algorithm is a type of algorithm that deals with finding the optimal solution from a large number of possible options. Combinatorial algorithms are commonly used in optimization problems, such as finding the shortest path or the most efficient route.

2. How does a combinatorial algorithm work?

A combinatorial algorithm typically follows a step-by-step process to evaluate each possible combination of options and determine the best solution. This often involves breaking down the problem into smaller sub-problems and using mathematical techniques to find the optimal solution.

3. What are some real-world applications of combinatorial algorithms?

Combinatorial algorithms have a wide range of applications in various fields such as computer science, operations research, and engineering. Some common examples include scheduling tasks, route optimization, and network routing.

4. What is the difference between a combinatorial algorithm and a heuristic algorithm?

A combinatorial algorithm is a type of exact algorithm that guarantees to find the optimal solution, while a heuristic algorithm is an approximation algorithm that may not always find the best solution but can provide a good enough solution in a reasonable amount of time.

5. How are combinatorial algorithms used in machine learning?

Combinatorial algorithms are commonly used in machine learning for feature selection and dimensionality reduction. These algorithms help to identify the most important features or variables in a dataset, which can improve the performance and efficiency of machine learning models.

Similar threads

  • Set Theory, Logic, Probability, Statistics
Replies
11
Views
1K
  • Set Theory, Logic, Probability, Statistics
Replies
22
Views
1K
  • Set Theory, Logic, Probability, Statistics
Replies
5
Views
1K
  • Programming and Computer Science
Replies
9
Views
1K
  • Linear and Abstract Algebra
Replies
8
Views
1K
  • Precalculus Mathematics Homework Help
Replies
32
Views
852
Replies
2
Views
778
  • Engineering and Comp Sci Homework Help
Replies
4
Views
1K
  • Calculus and Beyond Homework Help
Replies
2
Views
1K
  • Math Proof Training and Practice
Replies
8
Views
1K
Back
Top