[0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][8, 8, 8][0, 0, 0][0, 1, 3][0, 1, 4][0, 1, 5][0, 1, 6][0, 0, 0][0, 0, 0][0, 0, 0][8, 8, 8][0, 2, 3][0, 2, 4][0, 2, 5][0, 2, 6][0, 2, 7][0, 0, 0][0, 3, 1][0, 3, 2][8, 8, 8][0, 3, 4][0, 3, 5][0, 3, 6][0, 3, 7][0, 0, 0][0, 4, 1][0, 4, 2][0, 4, 3][8, 8, 8][0, 4, 5][0, 4, 6][0, 4, 7][0, 0, 0][0, 5, 1][0, 5, 2][0, 5, 3][0, 5, 4][8, 8, 8][0, 5, 6][0, 5, 7][0, 0, 0][0, 6, 1][0, 6, 2][0, 6, 3][0, 6, 4][0, 6, 5][8, 8, 8][0, 0, 0][0, 0, 0][0, 0, 0][0, 7, 2][0, 7, 3][0, 7, 4][0, 7, 5][0, 0, 0][8, 8, 8][0, 0, 0][8, 8, 8][0, 0, 0][1, 0, 3][1, 0, 4][1, 0, 5][1, 0, 6][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][8, 8, 8][0, 0, 0][8, 8, 8][1, 3, 4][1, 3, 5][1, 3, 6][0, 0, 0][0, 0, 0][8, 8, 8][0, 0, 0][1, 4, 3][8, 8, 8][1, 4, 5][1, 4, 6][0, 0, 0][0, 0, 0][8, 8, 8][0, 0, 0][1, 5, 3][1, 5, 4][8, 8, 8][1, 5, 6][0, 0, 0][0, 0, 0][8, 8, 8][0, 0, 0][1, 6, 3][1, 6, 4][1, 6, 5][8, 8, 8][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][8, 8, 8][2, 0, 3][2, 0, 4][2, 0, 5][2, 0, 6][2, 0, 7][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][8, 8, 8][8, 8, 8][2, 3, 4][2, 3, 5][2, 3, 6][2, 3, 7][0, 0, 0][0, 0, 0][8, 8, 8][2, 4, 3][8, 8, 8][2, 4, 5][2, 4, 6][2, 4, 7][0, 0, 0][0, 0, 0][8, 8, 8][2, 5, 3][2, 5, 4][8, 8, 8][2, 5, 6][2, 5, 7][0, 0, 0][0, 0, 0][8, 8, 8][2, 6, 3][2, 6, 4][2, 6, 5][8, 8, 8][0, 0, 0][0, 0, 0][0, 0, 0][8, 8, 8][2, 7, 3][2, 7, 4][2, 7, 5][0, 0, 0][8, 8, 8][0, 0, 0][3, 0, 1][3, 0, 2][8, 8, 8][3, 0, 4][3, 0, 5][3, 0, 6][3, 0, 7][0, 0, 0][8, 8, 8][0, 0, 0][8, 8, 8][3, 1, 4][3, 1, 5][3, 1, 6][0, 0, 0][0, 0, 0][0, 0, 0][8, 8, 8][8, 8, 8][3, 2, 4][3, 2, 5][3, 2, 6][3, 2, 7][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][3, 4, 1][3, 4, 2][8, 8, 8][8, 8, 8][3, 4, 5][3, 4, 6][3, 4, 7][0, 0, 0][3, 5, 1][3, 5, 2][8, 8, 8][3, 5, 4][8, 8, 8][3, 5, 6][3, 5, 7][0, 0, 0][3, 6, 1][3, 6, 2][8, 8, 8][3, 6, 4][3, 6, 5][8, 8, 8][0, 0, 0][0, 0, 0][0, 0, 0][3, 7, 2][8, 8, 8][3, 7, 4][3, 7, 5][0, 0, 0][8, 8, 8][0, 0, 0][4, 0, 1][4, 0, 2][4, 0, 3][8, 8, 8][4, 0, 5][4, 0, 6][4, 0, 7][0, 0, 0][8, 8, 8][0, 0, 0][4, 1, 3][8, 8, 8][4, 1, 5][4, 1, 6][0, 0, 0][0, 0, 0][0, 0, 0][8, 8, 8][4, 2, 3][8, 8, 8][4, 2, 5][4, 2, 6][4, 2, 7][0, 0, 0][4, 3, 1][4, 3, 2][8, 8, 8][8, 8, 8][4, 3, 5][4, 3, 6][4, 3, 7][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][4, 5, 1][4, 5, 2][4, 5, 3][8, 8, 8][8, 8, 8][4, 5, 6][4, 5, 7][0, 0, 0][4, 6, 1][4, 6, 2][4, 6, 3][8, 8, 8][4, 6, 5][8, 8, 8][0, 0, 0][0, 0, 0][0, 0, 0][4, 7, 2][4, 7, 3][8, 8, 8][4, 7, 5][0, 0, 0][8, 8, 8][0, 0, 0][5, 0, 1][5, 0, 2][5, 0, 3][5, 0, 4][8, 8, 8][5, 0, 6][5, 0, 7][0, 0, 0][8, 8, 8][0, 0, 0][5, 1, 3][5, 1, 4][8, 8, 8][5, 1, 6][0, 0, 0][0, 0, 0][0, 0, 0][8, 8, 8][5, 2, 3][5, 2, 4][8, 8, 8][5, 2, 6][5, 2, 7][0, 0, 0][5, 3, 1][5, 3, 2][8, 8, 8][5, 3, 4][8, 8, 8][5, 3, 6][5, 3, 7][0, 0, 0][5, 4, 1][5, 4, 2][5, 4, 3][8, 8, 8][8, 8, 8][5, 4, 6][5, 4, 7][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][5, 6, 1][5, 6, 2][5, 6, 3][5, 6, 4][8, 8, 8][8, 8, 8][0, 0, 0][0, 0, 0][0, 0, 0][5, 7, 2][5, 7, 3][5, 7, 4][8, 8, 8][0, 0, 0][8, 8, 8][0, 0, 0][6, 0, 1][6, 0, 2][6, 0, 3][6, 0, 4][6, 0, 5][8, 8, 8][0, 0, 0][0, 0, 0][8, 8, 8][0, 0, 0][6, 1, 3][6, 1, 4][6, 1, 5][8, 8, 8][0, 0, 0][0, 0, 0][0, 0, 0][8, 8, 8][6, 2, 3][6, 2, 4][6, 2, 5][8, 8, 8][0, 0, 0][0, 0, 0][6, 3, 1][6, 3, 2][8, 8, 8][6, 3, 4][6, 3, 5][8, 8, 8][0, 0, 0][0, 0, 0][6, 4, 1][6, 4, 2][6, 4, 3][8, 8, 8][6, 4, 5][8, 8, 8][0, 0, 0][0, 0, 0][6, 5, 1][6, 5, 2][6, 5, 3][6, 5, 4][8, 8, 8][8, 8, 8][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][7, 0, 2][7, 0, 3][7, 0, 4][7, 0, 5][0, 0, 0][8, 8, 8][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][8, 8, 8][7, 2, 3][7, 2, 4][7, 2, 5][0, 0, 0][8, 8, 8][0, 0, 0][0, 0, 0][7, 3, 2][8, 8, 8][7, 3, 4][7, 3, 5][0, 0, 0][8, 8, 8][0, 0, 0][0, 0, 0][7, 4, 2][7, 4, 3][8, 8, 8][7, 4, 5][0, 0, 0][8, 8, 8][0, 0, 0][0, 0, 0][7, 5, 2][7, 5, 3][7, 5, 4][8, 8, 8][0, 0, 0][8, 8, 8][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0]---------------------------
[0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][8, 8, 8][0, 0, 0][0, 1, 3][0, 1, 4][0, 1, 5][0, 1, 6][0, 0, 0][0, 0, 0][0, 0, 0][8, 8, 8][0, 2, 3][0, 2, 4][0, 2, 5][0, 2, 6][0, 2, 7][0, 0, 0][0, 3, 1][0, 3, 2][8, 8, 8][0, 3, 4][0, 3, 5][0, 3, 6][0, 3, 7][0, 0, 0][0, 4, 1][0, 4, 2][0, 4, 3][8, 8, 8][0, 4, 5][0, 4, 6][0, 4, 7][0, 0, 0][0, 5, 1][0, 5, 2][0, 5, 3][0, 5, 4][8, 8, 8][0, 5, 6][0, 5, 7][0, 0, 0][0, 6, 1][0, 6, 2][0, 6, 3][0, 6, 4][0, 6, 5][8, 8, 8][0, 0, 0][0, 0, 0][0, 0, 0][0, 7, 2][0, 7, 3][0, 7, 4][0, 7, 5][0, 0, 0][8, 8, 8][0, 0, 0][0, 0, 0][0, 0, 0][1, 0, 3][1, 0, 4][1, 0, 5][1, 0, 6][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][8, 8, 8][1, 3, 4][1, 3, 5][1, 3, 6][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][1, 4, 3][8, 8, 8][1, 4, 5][1, 4, 6][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][1, 5, 3][1, 5, 4][8, 8, 8][1, 5, 6][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][1, 6, 3][1, 6, 4][1, 6, 5][8, 8, 8][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][2, 0, 3][2, 0, 4][2, 0, 5][2, 0, 6][2, 0, 7][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][8, 8, 8][2, 3, 4][2, 3, 5][2, 3, 6][2, 3, 7][0, 0, 0][0, 0, 0][0, 0, 0][2, 4, 3][8, 8, 8][2, 4, 5][2, 4, 6][2, 4, 7][0, 0, 0][0, 0, 0][0, 0, 0][2, 5, 3][2, 5, 4][8, 8, 8][2, 5, 6][2, 5, 7][0, 0, 0][0, 0, 0][0, 0, 0][2, 6, 3][2, 6, 4][2, 6, 5][8, 8, 8][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][2, 7, 3][2, 7, 4][2, 7, 5][0, 0, 0][8, 8, 8][0, 0, 0][3, 0, 1][3, 0, 2][0, 0, 0][3, 0, 4][3, 0, 5][3, 0, 6][3, 0, 7][0, 0, 0][8, 8, 8][0, 0, 0][0, 0, 0][3, 1, 4][3, 1, 5][3, 1, 6][0, 0, 0][0, 0, 0][0, 0, 0][8, 8, 8][0, 0, 0][3, 2, 4][3, 2, 5][3, 2, 6][3, 2, 7][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][3, 4, 1][3, 4, 2][0, 0, 0][8, 8, 8][3, 4, 5][3, 4, 6][3, 4, 7][0, 0, 0][3, 5, 1][3, 5, 2][0, 0, 0][3, 5, 4][8, 8, 8][3, 5, 6][3, 5, 7][0, 0, 0][3, 6, 1][3, 6, 2][0, 0, 0][3, 6, 4][3, 6, 5][8, 8, 8][0, 0, 0][0, 0, 0][0, 0, 0][3, 7, 2][0, 0, 0][3, 7, 4][3, 7, 5][0, 0, 0][8, 8, 8][0, 0, 0][4, 0, 1][4, 0, 2][4, 0, 3][0, 0, 0][4, 0, 5][4, 0, 6][4, 0, 7][0, 0, 0][8, 8, 8][0, 0, 0][4, 1, 3][0, 0, 0][4, 1, 5][4, 1, 6][0, 0, 0][0, 0, 0][0, 0, 0][8, 8, 8][4, 2, 3][0, 0, 0][4, 2, 5][4, 2, 6][4, 2, 7][0, 0, 0][4, 3, 1][4, 3, 2][8, 8, 8][0, 0, 0][4, 3, 5][4, 3, 6][4, 3, 7][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][4, 5, 1][4, 5, 2][4, 5, 3][0, 0, 0][8, 8, 8][4, 5, 6][4, 5, 7][0, 0, 0][4, 6, 1][4, 6, 2][4, 6, 3][0, 0, 0][4, 6, 5][8, 8, 8][0, 0, 0][0, 0, 0][0, 0, 0][4, 7, 2][4, 7, 3][0, 0, 0][4, 7, 5][0, 0, 0][8, 8, 8][0, 0, 0][5, 0, 1][5, 0, 2][5, 0, 3][5, 0, 4][0, 0, 0][5, 0, 6][5, 0, 7][0, 0, 0][8, 8, 8][0, 0, 0][5, 1, 3][5, 1, 4][0, 0, 0][5, 1, 6][0, 0, 0][0, 0, 0][0, 0, 0][8, 8, 8][5, 2, 3][5, 2, 4][0, 0, 0][5, 2, 6][5, 2, 7][0, 0, 0][5, 3, 1][5, 3, 2][8, 8, 8][5, 3, 4][0, 0, 0][5, 3, 6][5, 3, 7][0, 0, 0][5, 4, 1][5, 4, 2][5, 4, 3][8, 8, 8][0, 0, 0][5, 4, 6][5, 4, 7][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][5, 6, 1][5, 6, 2][5, 6, 3][5, 6, 4][0, 0, 0][8, 8, 8][0, 0, 0][0, 0, 0][0, 0, 0][5, 7, 2][5, 7, 3][5, 7, 4][0, 0, 0][0, 0, 0][8, 8, 8][0, 0, 0][6, 0, 1][6, 0, 2][6, 0, 3][6, 0, 4][6, 0, 5][0, 0, 0][0, 0, 0][0, 0, 0][8, 8, 8][0, 0, 0][6, 1, 3][6, 1, 4][6, 1, 5][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][8, 8, 8][6, 2, 3][6, 2, 4][6, 2, 5][0, 0, 0][0, 0, 0][0, 0, 0][6, 3, 1][6, 3, 2][8, 8, 8][6, 3, 4][6, 3, 5][0, 0, 0][0, 0, 0][0, 0, 0][6, 4, 1][6, 4, 2][6, 4, 3][8, 8, 8][6, 4, 5][0, 0, 0][0, 0, 0][0, 0, 0][6, 5, 1][6, 5, 2][6, 5, 3][6, 5, 4][8, 8, 8][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][7, 0, 2][7, 0, 3][7, 0, 4][7, 0, 5][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][8, 8, 8][7, 2, 3][7, 2, 4][7, 2, 5][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][7, 3, 2][8, 8, 8][7, 3, 4][7, 3, 5][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][7, 4, 2][7, 4, 3][8, 8, 8][7, 4, 5][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][7, 5, 2][7, 5, 3][7, 5, 4][8, 8, 8][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0][0, 0, 0]
import numpy as np
v=np.mat([[0,0,0,0],[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1],[2,-1,-1,-1],[1,1,0,0],[-1,0,0,0]]);
A=np.mat([[1,7],[1,2],[6,7]]);
C=np.mat([[2,3,4,5],[3,4,5,6]]);
z=7;
def f(x,y,z):
if x==y or y==z:
return 0
else:
return x
def g(x,y,z):
if x==y:
return z
else:
return y
def h(x,y,z,k):
if x==y:
return [z,k]
elif x==z:
return [y,k]
else:
return [y,z]
def K(w,i,j):
t=v[g(w,i,j)]
# print(t)
# print(v[w])
# print(np.dot(v[w],np.transpose(t))*t)
return v[w]-np.dot(v[w],np.transpose(t))*t/np.dot(t,np.transpose(t))
def F(i,j):
import numpy as np
A=np.mat([[1,7],[1,2],[6,7]]);
aa=False;
a=[0]*3;
b=[0]*3;
for u in range(3):
a[u]=np.array_equal(np.mat([i,j]),np.array(A[u,:])) ;
b[u]=np.array_equal(np.mat([j,i]),np.array(A[u,:])) ;
aa=aa or a[u];
aa=aa or b[u];
if aa==True or i==j:
return [0,0,0]
else:
return [i,j,0]
#for i in range(8):
# for j in range(8) :
# print(F(i,j));
def V(i,j,w):
a=i==j or j==w or w==i ;
b=F(i,j)==[0,0,0] or F(j,w)==[0,0,0] or F(i,w)==[0,0,0];
if a or b==True:
return [0,0,0]
else:
return [i,j,w]
#for i in range(8):
# for j in range(8) :
# for w in range(8):
# print(V(i,j,w),end=""),
#
def Q(w,i,j):
if w==0:
return [0,0,0]
elif w!=i and w!=j or F(i,j)==[0,0,0]:
return V(i,j,w)
else:
return [8,8,8]
#for i in range(8):
# for j in range(8) :
# for w in range(8):
# print(Q(w,i,j),end="");
print("---------------------------")
for i in range(8):
for j in range(8) :
for k in range(8):
# print(Q(f(k,i,j),i,j),end="");
if Q(f(k,i,j),i,j)==[8,8,8]:
print([i,j,k])
---------------------------
[0, 1, 1]
[0, 2, 2]
[0, 3, 3]
[0, 4, 4]
[0, 5, 5]
[0, 6, 6]
[0, 7, 7]
[1, 3, 3]
[1, 4, 4]
[1, 5, 5]
[1, 6, 6]
[2, 3, 3]
[2, 4, 4]
[2, 5, 5]
[2, 6, 6]
[2, 7, 7]
[3, 1, 1]
[3, 2, 2]
[3, 4, 4]
[3, 5, 5]
[3, 6, 6]
[3, 7, 7]
[4, 1, 1]
[4, 2, 2]
[4, 3, 3]
[4, 5, 5]
[4, 6, 6]
[4, 7, 7]
[5, 1, 1]
[5, 2, 2]
[5, 3, 3]
[5, 4, 4]
[5, 6, 6]
[5, 7, 7]
[6, 1, 1]
[6, 2, 2]
[6, 3, 3]
[6, 4, 4]
[6, 5, 5]
[7, 2, 2]
[7, 3, 3]
[7, 4, 4]
[7, 5, 5]
def q(w,i,j):
if Q(w,i,j)!=[8,8,8]:
return Q(w,i,j)
else:
return [Q(f(1,i,j),i,j),Q(f(2,i,j),i,j),Q(f(3,i,j),i,j),Q(f(4,i,j),i,j),Q(f(5,i,j),i,j),Q(f(6,i,j),i,j),Q(f(7,i,j),i,j)]
import numpy as np
v=np.mat([[0,0,0,0],[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1],[2,-1,-1,-1],[1,1,0,0],[-1,0,0,0]]);
A=np.mat([[1,7],[1,2],[6,7]]);
C=np.mat([[2,3,4,5],[3,4,5,6]]);
z=7;
def f(x,y,z):
if x==y or y==z:
return 0
else:
return x
def g(x,y,z):
if x==y:
return z
else:
return y
def h(x,y,z,k):
if x==y:
return [z,k]
elif x==z:
return [y,k]
else:
return [y,z]
def K(w,i,j):
t=v[g(w,i,j)]
# print(t)
# print(v[w])
# print(np.dot(v[w],np.transpose(t))*t)
return v[w]-np.dot(v[w],np.transpose(t))*t/np.dot(t,np.transpose(t))
def F(i,j):
import numpy as np
A=np.mat([[1,7],[1,2],[6,7]]);
aa=False;
a=[0]*3;
b=[0]*3;
for u in range(3):
a[u]=np.array_equal(np.mat([i,j]),np.array(A[u,:])) ;
b[u]=np.array_equal(np.mat([j,i]),np.array(A[u,:])) ;
aa=aa or a[u];
aa=aa or b[u];
if aa==True or i==j:
return [0,0,0]
else:
return [i,j,0]
#for i in range(8):
# for j in range(8) :
# print(F(i,j));
def V(i,j,w):
a=i==j or j==w or w==i ;
b=F(i,j)==[0,0,0] or F(j,w)==[0,0,0] or F(i,w)==[0,0,0];
if a or b==True:
return [0,0,0]
else:
return [i,j,w]
#for i in range(8):
# for j in range(8) :
# for w in range(8):
# print(V(i,j,w),end=""),
#
def Q(w,i,j):
if w==0:
return [0,0,0]
elif w!=i and w!=j or F(i,j)==[0,0,0]:
return V(i,j,w)
else:
return [8,8,8]
#for i in range(8):
# for j in range(8) :
# for w in range(8):
# print(Q(w,i,j),end="");
#print("---------------------------")
#for i in range(8):
# for j in range(8) :
# for k in range(8):
## print(Q(f(k,i,j),i,j),end="");
# if Q(f(k,i,j),i,j)==[8,8,8]:
# print([i,j,k])
def q(w,i,j):
if Q(w,i,j)!=[8,8,8]:
return Q(w,i,j)
else:
return [Q(f(1,i,j),i,j),Q(f(2,i,j),i,j),Q(f(3,i,j),i,j),Q(f(4,i,j),i,j),Q(f(5,i,j),i,j),Q(f(6,i,j),i,j),Q(f(7,i,j),i,j)]
q(5,7,5)
Out[16]: [[0, 0, 0], [7, 5, 2], [7, 5, 3], [7, 5, 4], [8, 8, 8], [0, 0, 0], [0, 0, 0]]
import numpy as np
v=np.mat([[0,0,0,0],[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1],[2,-1,-1,-1],[1,1,0,0],[-1,0,0,0]]);
A=np.mat([[1,7],[1,2],[6,7]]);
C=np.mat([[2,3,4,5],[3,4,5,6]]);
z=7;
def f(x,y,z):
if x==y or y==z:
return 0
else:
return x
def g(x,y,z):
if x==y:
return z
else:
return y
def h(x,y,z,k):
if x==y:
return [z,k]
elif x==z:
return [y,k]
else:
return [y,z]
def K(w,i,j):
t=v[g(w,i,j)]
# print(t)
# print(v[w])
# print(np.dot(v[w],np.transpose(t))*t)
return v[w]-np.dot(v[w],np.transpose(t))*t/np.dot(t,np.transpose(t))
def F(i,j):
import numpy as np
A=np.mat([[1,7],[1,2],[6,7]]);
aa=False;
a=[0]*3;
b=[0]*3;
for u in range(3):
a[u]=np.array_equal(np.mat([i,j]),np.array(A[u,:])) ;
b[u]=np.array_equal(np.mat([j,i]),np.array(A[u,:])) ;
aa=aa or a[u];
aa=aa or b[u];
if aa==True or i==j:
return [0,0,0]
else:
return [i,j,0]
#for i in range(8):
# for j in range(8) :
# print(F(i,j));
def V(i,j,w):
a=i==j or j==w or w==i ;
b=F(i,j)==[0,0,0] or F(j,w)==[0,0,0] or F(i,w)==[0,0,0];
if a or b==True:
return [0,0,0]
else:
return [i,j,w]
#for i in range(8):
# for j in range(8) :
# for w in range(8):
# print(V(i,j,w),end=""),
#
def Q(w,i,j):
if w==0:
return [0,0,0]
elif w!=i and w!=j or F(i,j)==[0,0,0]:
return V(i,j,w)
else:
return [8,8,8]
#for i in range(8):
# for j in range(8) :
# for w in range(8):
# print(Q(w,i,j),end="");
#print("---------------------------")
#for i in range(8):
# for j in range(8) :
# for k in range(8):
## print(Q(f(k,i,j),i,j),end="");
# if Q(f(k,i,j),i,j)==[8,8,8]:
# print([i,j,k])
def q(w,i,j):
if Q(w,i,j)!=[8,8,8]:
return Q(w,i,j)
else:
return [Q(f(1,i,j),i,j),Q(f(2,i,j),i,j),Q(f(3,i,j),i,j),Q(f(4,i,j),i,j),Q(f(5,i,j),i,j),Q(f(6,i,j),i,j),Q(f(7,i,j),i,j)]
q(5,7,5)
q(7,5,5)
q(5,5,7)
Out[17]: [[0, 0, 0], [5, 7, 2], [5, 7, 3], [5, 7, 4], [0, 0, 0], [0, 0, 0], [8, 8, 8]]
q(5,5,7)
Out[18]: [[0, 0, 0], [5, 7, 2], [5, 7, 3], [5, 7, 4], [0, 0, 0], [0, 0, 0], [8, 8, 8]]
q(7,5,5)
Out[19]: [0, 0, 0]
q(5,7,5)
Out[20]: [[0, 0, 0], [7, 5, 2], [7, 5, 3], [7, 5, 4], [8, 8, 8], [0, 0, 0], [0, 0, 0]]