(adj_matrix, m)
| 116 | return T1, T2, adj_matrix |
| 117 | |
| 118 | def find_func_g(adj_matrix, m): |
| 119 | g = [0 for i in range(0, len(adj_matrix))] |
| 120 | visited = [False for i in range(0, len(adj_matrix))] |
| 121 | def visit_graph(v): |
| 122 | visited[v] = True |
| 123 | for adj in adj_matrix[v]: |
| 124 | if v == adj["hash1"] and not visited[adj["hash2"]]: |
| 125 | g[adj["hash2"]] = (adj["value"] - g[adj["hash1"]]) % m |
| 126 | visit_graph(adj["hash2"]) |
| 127 | elif v == adj["hash2"] and not visited[adj["hash1"]]: |
| 128 | g[adj["hash1"]] = (adj["value"] - g[adj["hash2"]]) % m |
| 129 | visit_graph(adj["hash1"]) |
| 130 | |
| 131 | print("*** Finding function 'g'...") |
| 132 | for vert in range(0, len(adj_matrix)): |
| 133 | if len(adj_matrix[vert]) != 0 and not visited[vert]: |
| 134 | g[vert] = 0 |
| 135 | visit_graph(vert) |
| 136 | print("*** Function 'g' generated") |
| 137 | return g |
| 138 | |
| 139 | def final_hash_func(key, idx_list, T1, T2, g_table, m): |
| 140 | n = len(g_table) |
no test coverage detected