cuadros - facultad de ciencias de la universidad...

28
cuadros February 28, 2019 Nuestro espacio Los lugares de la matriz son los puntos de (Z n ) 2 . La idea es aplicar una transformación lineal para reordenar los números 1, 2, n 2 que están origi- nalmente colocados ordenadamente en una matriz n × n. La matriz n × n es como nuestro espacio de n 2 puntos, los números que le colocamos se deben entender como objetos que están colocados en los puntos. En la siguiente quedan repartidos los puntos de 1, . . . 25. In [2]: AA=matrix(ZZ, 5, 5, lambda x, y: 5*x+y+1) print AA print AA.nrows() [1 2 3 4 5] [6 7 8 9 10] [11 12 13 14 15] [16 17 18 19 20] [21 22 23 24 25] 5 Ahora aplicamos una transformación a la matriz, la transformación realmente es una matriz 2 × 2 con coeficientes entre 1, . . . , n. £ Dónde quedará el punto marcado con el número 13? él está en la fila 2 columna 2 entonces aplicamos la transformación al vector (2, 2) y donde nos dé, colocamos el número 13. In [3]: def magn(nn,ta1,ta2): lote=[] rima=[] for ka in range(nn^2): lote.append(ka+1) rima.append(0) aa=matrix(nn,nn,lote) be=matrix([ta1,ta2]) #esta es la transformación for i in range(nn): for j in range(nn): #vamos a recorrer todos los i,j tu=vector(ZZ,[i,j]) # este vector columna indica el puesto en que vamos fu=be*tu xu=fu[0]%nn;yu=fu[1]%nn # a las componentes de fu les saca #residuo módulo nn 1

Upload: others

Post on 25-Sep-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: cuadros - Facultad de Ciencias de la Universidad ...ciencias.uis.edu.co/algebralineal2/doc/cuadros(1).pdf · cuadros February 28, 2019 Nuestro espacio Los lugares de la matriz son

cuadros

February 28, 2019

Nuestro espacioLos lugares de la matriz son los puntos de (Zn)2.La idea es aplicar una transformación lineal para reordenar los números 1, 2, n2 que están origi-

nalmente colocados ordenadamente en una matriz n × n. La matriz n × n es como nuestro espaciode n2 puntos, los números que le colocamos se deben entender como objetos que están colocadosen los puntos. En la siguiente quedan repartidos los puntos de 1, . . . 25.

In [2]: AA=matrix(ZZ, 5, 5, lambda x, y: 5*x+y+1)print AAprint AA.nrows()

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

Ahora aplicamos una transformación a la matriz, la transformación realmente es una matriz2 × 2 con coeficientes entre 1, . . . , n. £ Dónde quedará el punto marcado con el número 13? élestá en la fila 2 columna 2 entonces aplicamos la transformación al vector (2, 2) y donde nos dé,colocamos el número 13.

In [3]: def magn(nn,ta1,ta2):lote=[]rima=[]for ka in range(nn^2):

lote.append(ka+1)rima.append(0)

aa=matrix(nn,nn,lote)be=matrix([ta1,ta2]) #esta es la transformaciónfor i in range(nn):

for j in range(nn): #vamos a recorrer todos los i,jtu=vector(ZZ,[i,j]) # este vector columna indica el puesto en que vamosfu=be*tuxu=fu[0]%nn;yu=fu[1]%nn # a las componentes de fu les saca

#residuo módulo nn

1

Page 2: cuadros - Facultad de Ciencias de la Universidad ...ciencias.uis.edu.co/algebralineal2/doc/cuadros(1).pdf · cuadros February 28, 2019 Nuestro espacio Los lugares de la matriz son

rima[yu+nn*xu]=aa[i][j]#aquí el número que está en (i,j) pasa al puesto determinado por betona=matrix(ZZ,nn,nn,rima)return tona

In [4]: magn(6,[1,1],[5,5])

Out[4]: [32 0 0 0 0 0][ 0 0 0 0 0 33][ 0 0 0 0 34 0][ 0 0 0 35 0 0][ 0 0 36 0 0 0][ 0 31 0 0 0 0]

In [5]: def sumfi(aa,nn):for ii in range(nn):

lupita=0for jj in range(nn):

lupita+=aa[ii][jj]print lupita

def sumco(aa,nn):for ii in range(nn):

lupita=0for jj in range(nn):

lupita+=aa[ii][jj]print lupita

In [6]: sumfi(magn(6,[1,2],[1,3]),6)

931299312993129

In [7]: magn(3,[1,1],[2,1])

Out[7]: [1 6 8][9 2 4][5 7 3]

In [8]: magn(3,[1,1],[1,1])

Out[8]: [8 0 0][0 9 0][0 0 7]

In [9]: magn(6,[1,1],[0,1])

2

Page 3: cuadros - Facultad de Ciencias de la Universidad ...ciencias.uis.edu.co/algebralineal2/doc/cuadros(1).pdf · cuadros February 28, 2019 Nuestro espacio Los lugares de la matriz son

Out[9]: [ 1 32 27 22 17 12][ 7 2 33 28 23 18][13 8 3 34 29 24][19 14 9 4 35 30][25 20 15 10 5 36][31 26 21 16 11 6]

In [10]: magn(6,[1,1],[2,1])

Out[10]: [ 1 12 17 22 27 32][33 2 7 18 23 28][29 34 3 8 13 24][19 30 35 4 9 14][15 20 25 36 5 10][11 16 21 26 31 6]

In [11]: def modula(XX,nn):ss=XX.nrows()tt=XX.ncols()ruta=[]for ii in range(ss):

for jj in range(tt):ruta.append(XX[ii][jj]%nn)

rota=matrix(ss,tt,ruta)return rota

In [12]: def colorea(XX,nn):gg=Graphics()A=vector(QQ,[0,0]);B=vector(QQ,[1,0])C=vector(QQ,[1,1]);D=vector(QQ,[0,1])coll=['blue','red','yellow','green','orange','magenta','brown','gray','purple','white','black']ss=XX.nrows()tt=XX.ncols()for ii in range(ss):

for jj in range(tt):V=vector(QQ,[jj,ii])E=A+V;F=B+VG=C+V;H=D+Vlito=XX[ii][jj]%nnpp=polygon2d([E,F,G,H],color=coll[lito])gg+=pp

return gg

In [13]: colorea(magn(6,[1,1],[2,1]),6)

Out[13]:

3

Page 4: cuadros - Facultad de Ciencias de la Universidad ...ciencias.uis.edu.co/algebralineal2/doc/cuadros(1).pdf · cuadros February 28, 2019 Nuestro espacio Los lugares de la matriz son

In [14]: colorea(magn(7,[5,1],[2,1]),2).show(axes=False)

4

Page 5: cuadros - Facultad de Ciencias de la Universidad ...ciencias.uis.edu.co/algebralineal2/doc/cuadros(1).pdf · cuadros February 28, 2019 Nuestro espacio Los lugares de la matriz son

In [15]: magn(7,[2,1],[3,1])

Out[15]: [ 1 13 18 23 35 40 45][46 2 14 19 24 29 41][42 47 3 8 20 25 30][31 36 48 4 9 21 26][27 32 37 49 5 10 15][16 28 33 38 43 6 11][12 17 22 34 39 44 7]

In [16]: colorea(magn(7,[2,1],[3,1]),7)

Out[16]:

5

Page 6: cuadros - Facultad de Ciencias de la Universidad ...ciencias.uis.edu.co/algebralineal2/doc/cuadros(1).pdf · cuadros February 28, 2019 Nuestro espacio Los lugares de la matriz son

In [17]: colorea(magn(7,[2,1],[3,1]),3).show(axes=False)

6

Page 7: cuadros - Facultad de Ciencias de la Universidad ...ciencias.uis.edu.co/algebralineal2/doc/cuadros(1).pdf · cuadros February 28, 2019 Nuestro espacio Los lugares de la matriz son

In [18]: magn(7,[2,4],[3,1])

Out[18]: [ 1 47 37 34 24 21 11][16 13 3 49 39 29 26][31 28 18 8 5 44 41][46 36 33 23 20 10 7][12 2 48 38 35 25 15][27 17 14 4 43 40 30][42 32 22 19 9 6 45]

In [19]: sumfi(magn(7,[2,4],[3,1]),7)

175175

7

Page 8: cuadros - Facultad de Ciencias de la Universidad ...ciencias.uis.edu.co/algebralineal2/doc/cuadros(1).pdf · cuadros February 28, 2019 Nuestro espacio Los lugares de la matriz son

175175175175175

In [20]: sumco(magn(7,[2,4],[3,1]),7)

175175175175175175175

In [21]: sumfi(magn(8,[2,4],[3,1]),7)

302037903200361

In [22]: magn(8,[2,1],[1,3])

Out[22]: [ 1 27 53 15 33 59 21 47][60 22 48 2 28 54 16 34][55 9 35 61 23 41 3 29][42 4 30 56 10 36 62 24][37 63 17 43 5 31 49 11][32 50 12 38 64 18 44 6][19 45 7 25 51 13 39 57][14 40 58 20 46 8 26 52]

In [23]: KK.<u>=GF(9)

In [24]: for ii in KK:print ii,

0 u u + 1 2*u + 1 2 2*u 2*u + 2 u + 2 1

In [25]: u^3

8

Page 9: cuadros - Facultad de Ciencias de la Universidad ...ciencias.uis.edu.co/algebralineal2/doc/cuadros(1).pdf · cuadros February 28, 2019 Nuestro espacio Los lugares de la matriz son

Out[25]: 2*u + 1

In [26]: u^2==u+1

Out[26]: True

In [27]: magn(9,[2,1],[1,1])

Out[27]: [ 1 75 68 61 54 38 31 24 17][18 2 76 69 62 46 39 32 25][26 10 3 77 70 63 47 40 33][34 27 11 4 78 71 55 48 41][42 35 19 12 5 79 72 56 49][50 43 36 20 13 6 80 64 57][58 51 44 28 21 14 7 81 65][66 59 52 45 29 22 15 8 73][74 67 60 53 37 30 23 16 9]

In [28]: KK.<u>=GF(9) #aquí se presentan los datos módulo 9 y se trabaja en GF(9)def mag9s(ta1,ta2):

lote=[]rima=[]for ka in range(9^2):

lote.append(ka+1)rima.append(0)

aa=matrix(9,9,lote)be=matrix(KK,[ta1,ta2])te=[]for ru in KK:

te.append(ru)for i in range(9):

for j in range(9):tu=vector(KK,[te[i],te[j]])fu=be*tux=fu[0];y=fu[1]#print x,yfor kk in range(9):

if x==te[kk]:xu=kk

for jj in range(9):if y==te[jj]:

yu=jjrima[xu+9*yu]=mod(aa[i][j],9)

tona=matrix(ZZ,9,9,rima)return tona

In [29]: mag9s([u,u+1],[u,u+2])

Out[29]: [1 6 7 8 0 2 3 4 5][2 1 5 7 3 6 4 0 8]

9

Page 10: cuadros - Facultad de Ciencias de la Universidad ...ciencias.uis.edu.co/algebralineal2/doc/cuadros(1).pdf · cuadros February 28, 2019 Nuestro espacio Los lugares de la matriz son

[3 0 1 6 8 4 7 5 2][4 3 2 1 7 0 5 8 6][5 7 4 3 1 8 2 6 0][6 2 8 5 4 1 0 3 7][7 8 3 0 6 5 1 2 4][8 5 0 4 2 7 6 1 3][0 4 6 2 5 3 8 7 1]

In [30]: colorea(mag9s([u,u+1],[u,u+2]),9)

Out[30]:

In [31]: KK.<u>=GF(9)def magicls9(ta1,ta2):

10

Page 11: cuadros - Facultad de Ciencias de la Universidad ...ciencias.uis.edu.co/algebralineal2/doc/cuadros(1).pdf · cuadros February 28, 2019 Nuestro espacio Los lugares de la matriz son

lote=[]rima=[]for ka in range(9^2):

lote.append(ka+1)rima.append(0)

aa=matrix(9,9,lote)be=matrix(KK,[ta1,ta2])te=[0,1,2,u,u+1,u+2,2*u,2*u+1,2*u+2]for i in range(9):

for j in range(9):tu=matrix(KK,[[te[i]],[te[j]]])fu=be*tux=fu[0];y=fu[1]#print x,yfor kk in range(9):

if x[0]==te[kk]:xu=kk

for jj in range(9):if y[0]==te[jj]:

yu=jjrima[xu+9*yu]=mod(aa[i][j],9)

tona=matrix(ZZ,9,9,rima)return tona

In [32]: colorea(magicls9([u,u+1],[u,u+2]),9)

Out[32]:

11

Page 12: cuadros - Facultad de Ciencias de la Universidad ...ciencias.uis.edu.co/algebralineal2/doc/cuadros(1).pdf · cuadros February 28, 2019 Nuestro espacio Los lugares de la matriz son

In [33]: colorea(magicls9([2*u,u+1],[u+1,u]),9)

Out[33]:

12

Page 13: cuadros - Facultad de Ciencias de la Universidad ...ciencias.uis.edu.co/algebralineal2/doc/cuadros(1).pdf · cuadros February 28, 2019 Nuestro espacio Los lugares de la matriz son

In [34]: colorea(magicls9([2*u,u+1],[u,2*u]),9)

Out[34]:

13

Page 14: cuadros - Facultad de Ciencias de la Universidad ...ciencias.uis.edu.co/algebralineal2/doc/cuadros(1).pdf · cuadros February 28, 2019 Nuestro espacio Los lugares de la matriz son

In [35]: colorea(magicls9([u,u+2],[u+1,u]),9)

Out[35]:

14

Page 15: cuadros - Facultad de Ciencias de la Universidad ...ciencias.uis.edu.co/algebralineal2/doc/cuadros(1).pdf · cuadros February 28, 2019 Nuestro espacio Los lugares de la matriz son

In [36]: colorea(magn(7,[2,1],[3,1]),2).show(axes=False)

15

Page 16: cuadros - Facultad de Ciencias de la Universidad ...ciencias.uis.edu.co/algebralineal2/doc/cuadros(1).pdf · cuadros February 28, 2019 Nuestro espacio Los lugares de la matriz son

In [37]: colorea(magn(7,[2,2],[3,1]),2).show(axes=False)

16

Page 17: cuadros - Facultad de Ciencias de la Universidad ...ciencias.uis.edu.co/algebralineal2/doc/cuadros(1).pdf · cuadros February 28, 2019 Nuestro espacio Los lugares de la matriz son

In [38]: colorea(magn(7,[2,4],[3,1]),2).show(axes=False)

17

Page 18: cuadros - Facultad de Ciencias de la Universidad ...ciencias.uis.edu.co/algebralineal2/doc/cuadros(1).pdf · cuadros February 28, 2019 Nuestro espacio Los lugares de la matriz son

In [39]: colorea(magn(7,[2,3],[3,4]),2).show(axes=False)

18

Page 19: cuadros - Facultad de Ciencias de la Universidad ...ciencias.uis.edu.co/algebralineal2/doc/cuadros(1).pdf · cuadros February 28, 2019 Nuestro espacio Los lugares de la matriz son

In [40]: colorea(magn(7,[2,1],[3,6]),2).show(axes=False)

19

Page 20: cuadros - Facultad de Ciencias de la Universidad ...ciencias.uis.edu.co/algebralineal2/doc/cuadros(1).pdf · cuadros February 28, 2019 Nuestro espacio Los lugares de la matriz son

In [41]: colorea(magn(7,[2,1],[5,1]),2).show(axes=False)

20

Page 21: cuadros - Facultad de Ciencias de la Universidad ...ciencias.uis.edu.co/algebralineal2/doc/cuadros(1).pdf · cuadros February 28, 2019 Nuestro espacio Los lugares de la matriz son

In [42]: colorea(magn(7,[2,6],[6,1]),2).show(axes=False)

21

Page 22: cuadros - Facultad de Ciencias de la Universidad ...ciencias.uis.edu.co/algebralineal2/doc/cuadros(1).pdf · cuadros February 28, 2019 Nuestro espacio Los lugares de la matriz son

In [43]: V=vector([1,1])P=vector([0,0])@interactdef subespacios(n=input_box(default=7),W=vector([1,1]),P=vector([0,0])):

gg=Graphics()A=vector(QQ,[0,0]);B=vector(QQ,[1,0])C=vector(QQ,[1,1]);D=vector(QQ,[0,1])coll=['blue','red','yellow','green','orange','magenta','brown','gray','purple','white','black']for ii in range(n):

for jj in range(n):V=vector(QQ,[jj,ii])E=A+V;F=B+VG=C+V;H=D+V

22

Page 23: cuadros - Facultad de Ciencias de la Universidad ...ciencias.uis.edu.co/algebralineal2/doc/cuadros(1).pdf · cuadros February 28, 2019 Nuestro espacio Los lugares de la matriz son

pp=polygon2d([E,F,G,H],color='red',edgecolor="black")gg+=pp

v0=W[0]; v1=W[1]p0=P[0];p1=P[1]for ii in range(n):

lu=(v0*ii+p0)%nla=(v1*ii+p1)%nV=vector(QQ,[lu,la])E=A+V;F=B+VG=C+V;H=D+Vqq=polygon2d([E,F,G,H],color='blue')gg+=qq

gg.show(axes=False)

SW50ZXJhY3RpdmUgZnVuY3Rpb24gPGZ1bmN0aW9uIHN1YmVzcGFjaW9zIGF0IDB4N2Y4MDk0NDQ4NDg4PiB3aXRoIDMgd2lkZ2V0cwogIG46IEV2YWxUZXh0KHZhbHVlPXUnNycsIGRlc2NyaXDigKY=

In [44]: input_box?

In [45]: KK.<u>=GF(9)@interactdef subespacios(W=vector([1,1]),P=vector([0,0])):

qu=[]gg=Graphics()A=vector(QQ,[0,0]);B=vector(QQ,[1,0])C=vector(QQ,[1,1]);D=vector(QQ,[0,1])coll=['blue','red','yellow','green','orange','magenta','brown','gray','purple','white','black']te=[0,1,2,u,u+1,u+2,2*u,2*u+1,2*u+2]for ii in range(9):

for jj in range(9):V=vector(QQ,[jj,ii])E=A+V;F=B+VG=C+V;H=D+Vpp=polygon2d([E,F,G,H],color='red',edgecolor="black")gg+=pp

v0=W[0]; v1=W[1]p0=P[0];p1=P[1]for ii in KK:

#iy=te[ii]lu=v0*ii+p0la=v1*ii+p1qu.append([lu,la])for TT in qu:

xx=TT[0]yy=TT[1]for jj in range(9):

if xx==te[jj]:

23

Page 24: cuadros - Facultad de Ciencias de la Universidad ...ciencias.uis.edu.co/algebralineal2/doc/cuadros(1).pdf · cuadros February 28, 2019 Nuestro espacio Los lugares de la matriz son

tu=jjif yy==te[jj]:

ta=jjV=vector(QQ,[tu,ta])E=A+V;F=B+VG=C+V;H=D+Vqq=polygon2d([E,F,G,H],color='blue')gg+=qq

print qugg.show(axes=False)

SW50ZXJhY3RpdmUgZnVuY3Rpb24gPGZ1bmN0aW9uIHN1YmVzcGFjaW9zIGF0IDB4N2Y4MDhlMTE5NDg4PiB3aXRoIDIgd2lkZ2V0cwogIFc6IEV2YWxUZXh0KHZhbHVlPXUnKDEsIDEpJywgZGXigKY=

In [46]: for ii in KK:print 2*ii,

0 2*u 2*u + 2 u + 2 1 u u + 1 2*u + 1 2

In [47]: U=vector([1,1,0,0])W=vector([0,0,1,1])@interactdef subespa4(U=vector([1,1,0,0]),W=vector([0,0,1,1])):

qu=[]gg=Graphics()A=vector(QQ,[0,0]);B=vector(QQ,[1,0])C=vector(QQ,[1,1]);D=vector(QQ,[0,1])coll=['blue','red','yellow','green','orange','magenta','brown','gray','purple','white','black']te=[0,1,2,u,u+1,u+2,2*u,2*u+1,2*u+2]for ii in range(9):

for jj in range(9):V=vector(QQ,[jj,ii])E=A+V;F=B+VG=C+V;H=D+Vpp=polygon2d([E,F,G,H],color='red',edgecolor="black")gg+=pp

v0=W[0]; v1=W[1]p0=P[0];p1=P[1]for ii in range(3):

for jj in range(3):la=(ii*U[0]+jj*W[0])%3le=(ii*U[1]+jj*W[1])%3li=(ii*U[2]+jj*W[2])%3lo=(ii*U[3]+jj*W[3])%3qu.append([la,le,li,lo])

for TT in qu:xx=TT[0]

24

Page 25: cuadros - Facultad de Ciencias de la Universidad ...ciencias.uis.edu.co/algebralineal2/doc/cuadros(1).pdf · cuadros February 28, 2019 Nuestro espacio Los lugares de la matriz son

yy=TT[1]zz=TT[2]ww=TT[3]tu=xx*3+yyta=zz*3+wwV=vector(QQ,[tu,ta])#print V,E=A+V;F=B+VG=C+V;H=D+Vqq=polygon2d([E,F,G,H],color='blue',edgecolor="black")gg+=qq

print qugg.show(axes=False)

SW50ZXJhY3RpdmUgZnVuY3Rpb24gPGZ1bmN0aW9uIHN1YmVzcGE0IGF0IDB4N2Y4MDhlMDJlYjkwPiB3aXRoIDIgd2lkZ2V0cwogIFU6IEV2YWxUZXh0KHZhbHVlPXUnKDEsIDEsIDAsIDApJyzigKY=

In [48]: W=matrix([[1,1,0,0],[0,0,1,1]])1+W[0][1]*2+W[1][3]

Out[48]: 4

In [49]: U=vector([1,1,0,0])W=vector([0,0,1,1])Z=vector([0,1,0,1])@interactdef subespa4(U=vector([1,1,0,0]),W=vector([0,0,1,1]),Z=vector([0,1,0,1])):

qu=[]gg=Graphics()A=vector(QQ,[0,0]);B=vector(QQ,[1,0])C=vector(QQ,[1,1]);D=vector(QQ,[0,1])coll=['blue','red','yellow','green','orange','magenta','brown','gray','purple','white','black']te=[0,1,2,u,u+1,u+2,2*u,2*u+1,2*u+2]for ii in range(9):

for jj in range(9):V=vector(QQ,[jj,ii])E=A+V;F=B+VG=C+V;H=D+Vpp=polygon2d([E,F,G,H],color='red')gg+=pp

v0=W[0]; v1=W[1]p0=P[0];p1=P[1]for ii in range(3):

for jj in range(3):for kk in range(3):

la=(ii*U[0]+jj*W[0]+kk*Z[0])%3le=(ii*U[1]+jj*W[1]+kk*Z[1])%3li=(ii*U[2]+jj*W[2]+kk*Z[2])%3

25

Page 26: cuadros - Facultad de Ciencias de la Universidad ...ciencias.uis.edu.co/algebralineal2/doc/cuadros(1).pdf · cuadros February 28, 2019 Nuestro espacio Los lugares de la matriz son

lo=(ii*U[3]+jj*W[3]+kk*Z[3])%3qu.append([la,le,li,lo])

for TT in qu:xx=TT[0]yy=TT[1]zz=TT[2]ww=TT[3]tu=xx*3+yyta=zz*3+wwV=vector(QQ,[tu,ta])#print V,E=A+V;F=B+VG=C+V;H=D+Vqq=polygon2d([E,F,G,H],color='blue')gg+=qq

print qugg.show(axes=False)

SW50ZXJhY3RpdmUgZnVuY3Rpb24gPGZ1bmN0aW9uIHN1YmVzcGE0IGF0IDB4N2Y4MDhkZmE1YTI4PiB3aXRoIDMgd2lkZ2V0cwogIFU6IEV2YWxUZXh0KHZhbHVlPXUnKDEsIDEsIDAsIDApJyzigKY=

A continuación se dibujará el subespacio de (Z3)4 definido por un vector u es decir se dibuja{u}⊥ y sus dos coclases, cada uno tiene 27 elementos.

In [1]: def productint(U,V):re=(U[0]*V[0]+U[1]*V[1]+U[2]*V[2]+U[3]*V[3])%3return re

U=vector([1,1,0,0])@interactdef subespar(U=vector([1,1,0,0])): #se trabajará con (Z_3)^2

ruru=range(3)tt=cartesian_product([ruru,ruru,ruru,ruru])qu=[uu for uu in tt if productint(uu,U)==0]qv=[uu for uu in tt if productint(uu,U)==1]gg=Graphics()A=vector(QQ,[0,0]);B=vector(QQ,[1,0])C=vector(QQ,[1,1]);D=vector(QQ,[0,1])coll=['blue','red','yellow','green','orange','magenta','brown','gray','purple','white','black']for ii in range(9):

for jj in range(9):V=vector(QQ,[jj,ii])E=A+V;F=B+VG=C+V;H=D+Vpp=polygon2d([E,F,G,H],color='red',edgecolor="red")gg+=pp

for TT in qu:xx=TT[0]

26

Page 27: cuadros - Facultad de Ciencias de la Universidad ...ciencias.uis.edu.co/algebralineal2/doc/cuadros(1).pdf · cuadros February 28, 2019 Nuestro espacio Los lugares de la matriz son

yy=TT[1]zz=TT[2]ww=TT[3]tu=xx*3+yyta=zz*3+wwV=vector(QQ,[tu,ta])#print V,E=A+V;F=B+VG=C+V;H=D+Vqq=polygon2d([E,F,G,H],color='blue')gg+=qq

for TT in qv:xx=TT[0]yy=TT[1]zz=TT[2]ww=TT[3]tu=xx*3+yyta=zz*3+wwV=vector(QQ,[tu,ta])#print V,E=A+V;F=B+VG=C+V;H=D+Vqq=polygon2d([E,F,G,H],color='magenta',edgecolor="magenta")gg+=qq

print qugg.show(axes=False)

SW50ZXJhY3RpdmUgZnVuY3Rpb24gPGZ1bmN0aW9uIHN1YmVzcGFyIGF0IDB4N2YyMGZlMmY0YWEwPiB3aXRoIDEgd2lkZ2V0CiAgVTogRXZhbFRleHQodmFsdWU9dScoMSwgMSwgMCwgMCknLCDigKY=

In [51]: ruru=range(3)tt=cartesian_product([ruru,ruru,ruru,ruru])nulis=Set([uu for uu in tt if (uu[0]^2+uu[1]^2+uu[2]^2+uu[3]^2)%3==0])las=Set([uu for uu in tt if (uu[0]+uu[1]+uu[2])%3==0])rojis=las.intersection(nulis)

In [52]: rojis

Out[52]: {(2, 0, 1, 2), (1, 1, 1, 0), (0, 1, 2, 2), (0, 1, 2, 1), (1, 0, 2, 2), (1, 0, 2, 1), (2, 1, 0, 2), (0, 2, 1, 1), (0, 0, 0, 0), (2, 2, 2, 0), (0, 2, 1, 2), (1, 2, 0, 1), (2, 1, 0, 1), (1, 2, 0, 2), (2, 0, 1, 1)}

In [53]: def productint8(U,V):#ahora con 8^2 o sea (Z_2) ^6re=0for ii in range(6):

re+=(U[ii]*V[ii])%2return re%2

U=vector([1,1,0,0,1,0])@interact

27

Page 28: cuadros - Facultad de Ciencias de la Universidad ...ciencias.uis.edu.co/algebralineal2/doc/cuadros(1).pdf · cuadros February 28, 2019 Nuestro espacio Los lugares de la matriz son

def subespar8(U=vector([1,1,0,0,1,0])):ruru=range(2)tt=cartesian_product([ruru,ruru,ruru,ruru,ruru,ruru])qu=[uu for uu in tt if productint8(uu,U)==0]qv=[uu for uu in tt if productint8(uu,U)==1]gg=Graphics()A=vector(QQ,[0,0]);B=vector(QQ,[1,0])C=vector(QQ,[1,1]);D=vector(QQ,[0,1])coll=['blue','red','yellow','green','orange','magenta','brown','gray','purple','white','black']for ii in range(8):

for jj in range(8):V=vector(QQ,[jj,ii])E=A+V;F=B+VG=C+V;H=D+Vpp=polygon2d([E,F,G,H],color='red',edgecolor="red")gg+=pp

for TT in qu:tu=TT[0]*2^2+TT[1]*2+TT[2]ta=TT[3]*2^2+TT[4]*2+TT[5]V=vector(QQ,[tu,ta])#print V,E=A+V;F=B+VG=C+V;H=D+Vqq=polygon2d([E,F,G,H],color='blue')gg+=qq

for TT in qv:tu=TT[0]*2^2+TT[1]*2+TT[2]ta=TT[3]*2^2+TT[4]*2+TT[5]V=vector(QQ,[tu,ta])#print V,E=A+V;F=B+VG=C+V;H=D+Vqq=polygon2d([E,F,G,H],color='magenta',edgecolor="magenta")gg+=qq

print len(qu),qugg.show(axes=False)

SW50ZXJhY3RpdmUgZnVuY3Rpb24gPGZ1bmN0aW9uIHN1YmVzcGFyOCBhdCAweDdmODA4Zjg1YTIzMD4gd2l0aCAxIHdpZGdldAogIFU6IEV2YWxUZXh0KHZhbHVlPXUnKDEsIDEsIDAsIDAsIDHigKY=

In [54]: productint8([0,0,0,0,0,1],[1,0,1,0,1,1])

Out[54]: 1

In [55]: binomial(4,2)

Out[55]: 6

28